Allow pasted text in the virtual SerialPort window to be processed as received data, and tidy up the MMR0 updates
This commit is contained in:
parent
9d67f243ef
commit
00d6fb6c59
7 changed files with 541 additions and 512 deletions
|
|
@ -311,38 +311,40 @@ var PDP11 = {
|
|||
BYTE: 0xff, // write byte normally
|
||||
SBYTE: 0xffff // sign-extend byte to word
|
||||
},
|
||||
CPUERR: {
|
||||
RED: 0x0004, // red zone stack limit
|
||||
YELLOW: 0x0008, // yellow zone stack limit
|
||||
TIMEOUT: 0x0010, // UNIBUS timeout error
|
||||
NOMEMORY: 0x0020, // non-existent memory error
|
||||
ODDADDR: 0x0040, // odd word address error (as in non-even, not strange)
|
||||
BADHALT: 0x0080 // HALT attempted in USER or SUPER modes
|
||||
CPUERR: { // 177766
|
||||
RED: 0x0004, // 000004 red zone stack limit
|
||||
YELLOW: 0x0008, // 000010 yellow zone stack limit
|
||||
TIMEOUT: 0x0010, // 000020 UNIBUS timeout error
|
||||
NOMEMORY: 0x0020, // 000040 non-existent memory error
|
||||
ODDADDR: 0x0040, // 000100 odd word address error (as in non-even, not strange)
|
||||
BADHALT: 0x0080 // 000200 HALT attempted in USER or SUPER modes
|
||||
},
|
||||
MMR0: {
|
||||
ENABLED: 0x0001, // address relocation enabled
|
||||
PAGE_NUM: 0x000E, // page number of last fault
|
||||
PAGE_D: 0x0010, // last fault occurred in D space
|
||||
PAGE_MODE: 0x0060, // processor mode as of last fault
|
||||
COMPLETED: 0x0080, // last instruction completed
|
||||
DSTMODE: 0x0100, // only destination mode references will be relocated (aka MAINT bit)
|
||||
MMU_TRAPS: 0x0200, // enable MMU traps
|
||||
UNUSED: 0x0C00,
|
||||
TRAP_MMU: 0x1000, // trap: MMU
|
||||
ABORT_RO: 0x2000, // abort: read-only
|
||||
ABORT_PL: 0x4000, // abort: page length
|
||||
ABORT_NR: 0x8000, // abort: non-resident
|
||||
ABORT: 0xE000
|
||||
MMR0: { // 177572
|
||||
ENABLED: 0x0001, // 000001 address relocation enabled
|
||||
PAGE_NUM: 0x000E, // 000016 page number of last fault
|
||||
PAGE_D: 0x0010, // 000020 last fault occurred in D space
|
||||
PAGE: 0x001E, // 000176 all of the PAGE bits
|
||||
MODE: 0x0060, // 000140 processor mode as of last fault
|
||||
COMPLETED: 0x0080, // 000200 last instruction completed (R/O)
|
||||
DSTMODE: 0x0100, // 000400 only destination mode references will be relocated (aka MAINT bit)
|
||||
MMU_TRAPS: 0x0200, // 001000 enable MMU traps
|
||||
UNUSED: 0x0C00, // 006000
|
||||
TRAP_MMU: 0x1000, // 010000 trap: MMU
|
||||
ABORT_RO: 0x2000, // 020000 abort: read-only
|
||||
ABORT_PL: 0x4000, // 040000 abort: page length
|
||||
ABORT_NR: 0x8000, // 100000 abort: non-resident
|
||||
ABORT: 0xE000, // 160000
|
||||
UPDATE: 0xF0FE // Includes all of: ABORT, TRAP, COMPLETED, MODE, and PAGE bits
|
||||
},
|
||||
MMR1: { // general purpose auto-inc/auto-dec register
|
||||
REG1_NUM: 0x0007,
|
||||
REG1_DELTA: 0x00F8,
|
||||
REG2_NUM: 0x0700,
|
||||
REG2_DELTA: 0xF800
|
||||
MMR1: { // 177574: general purpose auto-inc/auto-dec register
|
||||
REG1_NUM: 0x0007, //
|
||||
REG1_DELTA: 0x00F8, //
|
||||
REG2_NUM: 0x0700, //
|
||||
REG2_DELTA: 0xF800 //
|
||||
},
|
||||
MMR2: { // virtual program counter register
|
||||
MMR2: { // 177576: virtual program counter register
|
||||
},
|
||||
MMR3: { // mapping register
|
||||
MMR3: { // 172516: mapping register
|
||||
USER_D: 0x0001,
|
||||
SUPER_D: 0x0002,
|
||||
KERNEL_D: 0x0004,
|
||||
|
|
|
|||
Loading…
Reference in a new issue