Commit graph pcjs/modules/pdp11/lib/bus.js
Author SHA1 Message Date
Jeff
97de321daa Fixed zeroMemory() to properly zero any block(s) that originally underlaid the IOPAGE block(s), rather than trying to zero the IOPAGE block itself (which would be a bad idea) 2016-11-03 15:36:37 -07:00
Jeff
d67e848973 Changed 11/70 machines to allocate RAM as a single chunk, and updated the 11/70 page on toggle-ins (/devices/pdp11/machine/1170/panel/debugger/README.md) 2016-11-03 14:42:35 -07:00
Jeff
0afab359ad The memory management toggle-in passes (see /devices/pdp11/machine/1170/panel/debugger) 2016-11-02 21:20:04 -07:00
Jeff
d5c7bf0b5d More Front Panel improvements 2016-11-02 13:35:50 -07:00
Jeff
daefc2992c Attempted to clean up mapUnibus() and bus-related faults; how well or ill-advised these changes are remains to be seen 2016-10-31 12:44:29 -07:00
Jeff
96ad4ec37e Lots of work to try to bring the new RL11 component up to snuff 2016-10-29 11:32:31 -07:00
Jeff Parsons
5f05913036 Fixed fault generation on invalid memory accesses; PDP-11 BASIC now starts up! 2016-10-21 17:06:41 -07:00
Jeff Parsons
3db1439b40 Improved Debugger focus handling, added a new zeroMemory() Bus interface, and updated the RAM component's reset() function to re-zero RAM and then restore any predefined contents 2016-10-21 12:15:02 -07:00
Jeff Parsons
2ce661e141 Refer to all 11/45+ instructions as 11/45, rather than 11/70, since the 11/70 doesn't appear to have added any instructions to the 11/45's set 2016-10-15 13:34:02 -07:00
Jeff Parsons
1e080e720e Debugger now actually prevents an undefined opcode from executing (until/unless you single-step it) 2016-10-15 11:59:48 -07:00
Jeff Parsons
c14f919f4f Debugger now stops on undefined opcodes, as well as on unknown I/O accesses 2016-10-15 11:32:51 -07:00
Jeff Parsons
3a7b769fa3 Added support to FileDump for generating binary dumps from MACRO11 listing (.lst) files, since I wasn't having much success with dumpobj or obj2hex.pl; note that this assumes a listing file produced by the macro11 cross-assembler written by Richard Krehbiel in 2001, updated in 2009, and maintained here: https://github.com/shattered/macro11. There are other versions of macro11 floating around, like the one in the simtools project that accompanies simh, and the one built for the Windows-based PDP11GUI app. 2016-10-15 11:05:38 -07:00
Jeff Parsons
b1f8fca2d9 Re-enabled source maps, at least for the PDP-11 emulators (for now) 2016-10-14 09:30:17 -07:00
Jeff Parsons
854b40c419 Cleaned up PDP-11/70 configs 2016-10-13 16:35:10 -07:00
Jeff Parsons
58d358b51e Switching to new interrupt triggers 2016-10-12 16:40:47 -07:00
Jeff Parsons
8315774b1d Implemented a fallback fix for UNIBUS addresses where a byte write is expected to modify the entire word 2016-10-11 16:08:32 -07:00
Jeff Parsons
05626a33cb Version number update 2016-10-10 18:19:17 -07:00
Jeff Parsons
ef2420f585 Handled BYTE register accesses in the IOPAGE more consistently 2016-10-10 18:16:36 -07:00
Jeff Parsons
6514836098 Cleaned up how memory and IOPAGE traps are triggered, how ODD byte-level IOPAGE accesses are handled, and how memory is dumped by the Debugger 2016-10-10 17:09:29 -07:00
Jeff Parsons
ae4fbeb489 Improved IOPAGE management 2016-10-08 11:09:14 -07:00
Jeff Parsons
0ee3a091b4 More device refactoring 2016-10-07 17:37:13 -07:00
Jeff
e24d507aa2 Removed useless version numbers and dates from .js file headers 2016-10-06 16:22:24 -07:00
Jeff
1a1614a648 Simplify the Bus and Memory interfaces slightly, by enabling WORDBUS, which treats all word accesses as aligned; the CPU is has sole responsibility for detecting unaligned word addresses and trapping appropriatelu 2016-10-06 14:17:29 -07:00
Jeff
ebfcd5133b PDP-11 console output works (first baby step) 2016-10-04 15:24:22 -07:00
Jeff
d90d10ea52 Moved PDP-11 console I/O to SerialPort component 2016-10-04 14:02:39 -07:00
Jeff
7923529aee Improved debugger messages for bus and memory accesses 2016-10-04 10:45:18 -07:00
Jeff
c7dbfc02be Fixed CPU start/stop control; runCPU is now strictly a worker function, not a control interface (PDP-11 only; other CPUs still need to be updated to match) 2016-09-28 22:21:52 -07:00
Jeff
c858fd0699 Codify reasons for assorted traps 2016-09-28 15:35:22 -07:00
Jeff
a4613082f8 Converted all "short" references to "word", since word meant 16-bit in the PDP-11 world, and no one said short back then 2016-09-26 08:53:35 -07:00
Jeff
da617d454d Laid groundwork for MMU-specific functions, to avoid address mapping work when unnecessary 2016-09-25 12:12:26 -07:00
Jeff
a13bb9348a Bus-related defines moved to the Bus component 2016-09-22 08:21:28 -07:00
Jeff
122ca78fd5 Internal PSW getter/setter are now getPSW/setPSW 2016-09-22 08:03:43 -07:00
Jeff
0e38c6dbc7 Changed the primary means updating the PSW to setPSW(), and put some handcuffs on writePSW() 2016-09-21 19:02:36 -07:00
Jeff
7b3a2cb676 Migrated old PDP11 IOPAGE code to Device component 2016-09-21 16:00:40 -07:00
Jeff
52665168a9 Fixed I/O handler parameter order 2016-09-21 12:48:05 -07:00
Jeff
dfe367f53d New improved I/O handler functions for the PDP-11 2016-09-21 12:44:25 -07:00
Jeff Parsons
1c9ea6445b New PDP11 Device component can now register read/write handlers for selected I/O addresses 2016-09-20 14:53:09 -07:00
Jeff Parsons
614fc11aca Restored support for custom memory controllers in the PDP11 emulator (to be used for UNIBUS I/O) 2016-09-20 11:19:42 -07:00
Jeff Parsons
1df54a338f Assorted PDP-11 debugger changes 2016-09-19 16:30:08 -07:00
Jeff Parsons
100779e30a First batch of pdp11.js code adapted but totally untested 2016-09-05 11:05:40 -07:00
Jeff Parsons
4b778b281d Groundwork for a PDP-11 emulator (starting with a gutted copy of PC8080) 2016-09-03 17:43:06 -07:00