Commit graph pcjs/modules/pdp11/lib/rl11.js
Author SHA1 Message Date
Jeff Parsons
cacc2f7dad Support for RX11 diskette drives has been added, but is still untested 2017-02-02 15:14:13 -08:00
Jeff Parsons
822ab39cbe Unforked the shared modules -- ES6 is now the default 2017-01-31 13:50:55 -08:00
Jeff Parsons
e7329fc277 Updated DriveController to save/restore the currently mounted disk (which may differ from the pre-configured disk if the user mounted a different disk), and cleaned the interfaces up a little 2017-01-28 17:31:46 -08:00
Jeff Parsons
a70ab3dcc8 The RL11 controller subclasses the new DriveController class now, too 2017-01-28 14:10:43 -08:00
Jeff Parsons
5edbdcdce2 Factored PDP-11 drive controller logic into a device-independent superclass (drive.js) and a device-dependent subclass (rk11.js); the RL11 controller is ready to be factored next 2017-01-28 13:39:19 -08:00
Jeff Parsons
6f83ee8beb Fixed the autoStart state of the PDP-11 test machine used for resume testing 2017-01-25 20:59:27 -08:00
Jeff Parsons
bb24ccaca6 Added resume support for saving/restoring all active timers and IRQs, along with the run/stop state of the CPU 2017-01-25 20:31:05 -08:00
Jeff Parsons
2c5d7c9066 Fixed RL11 type errors 2017-01-08 23:33:32 -08:00
Jeff Parsons
edf22928b9 Added command to select RL11 drive 2017-01-08 23:16:38 -08:00
Jeff Parsons
67e1e66cb1 More Node-related module tidying (but still doesn't solve ES6 browser issues with uncompiled code) 2017-01-02 16:51:09 -08:00
Jeff Parsons
b5d6afd210 Protect all Node-specific code with NODE checks 2017-01-02 15:16:18 -08:00
Jeff Parsons
7c7473f86e Documented the MTPS (11/34A), MFPS (11/34A), and MFPT (11/44+) instructions, even though our basic model support (11/20, 11/40, 11/45, and 11/70) doesn't use them 2017-01-02 12:21:04 -08:00
Jeff Parsons
cdabaafaf1 Simplified access to controller definitions using class constants 2017-01-01 22:20:42 -08:00
Jeff Parsons
f87161f5d6 v1.32.0: The New Year Release 2016-12-30 15:56:01 -08:00
Jeff Parsons
d930b31c53 Some minor changes to make it easier to load a machine in the Node environment 2016-12-27 22:05:59 -08:00
Jeff Parsons
5e2073f3ac Let's switch from import back to require, to simplify future Node support 2016-12-27 17:16:18 -08:00
Jeff Parsons
f4f6181923 v1.31.0 marks our first transition to ES6 classes, but only for PDPjs initially (which is why there must be both /lib and /es6 files in the shared folder for now) 2016-12-18 11:31:55 -08:00
Jeff Parsons
ba8771adf1 Added some RK11 fixes for the 11/70 CPU EXERCISER, and some Debugger improvements for dumping address info ("da") 2016-12-08 17:05:03 -08:00
Jeff Parsons
66ffe17659 Fixed some breakpoint issues, and honored the RK11 IBA bit 2016-12-06 10:47:36 -08:00
Jeff Parsons
2b8ea8ddee Fixed conditions required for RSTS/E boot code to work 2016-12-03 16:12:25 -08:00
Jeff Parsons
b54253acf9 Numerous changes to make paper tape configurations more consistent with disk configurations. This allows all devices to share the machine-wide "autoMount" configuration object, now that the PC11 has a proper device name ("PTR"), making its properties distinguishable from those for RK11 and RL11 drives (eg, "RK0", "RL0", etc). And all the tape/disk components now use "Load" functions to connect a tape or disk to a device ("Attach" is deprecated). And finally, all tape/disk components now support operations to deposit their media directly into memory -- although in this case, the names of the operations are necessarily different: "Read" for tape images, "Boot" for disk images. The difference is partly historical convention but also reflects the fact that a "Boot" operation is more limited: paper tapes were designed to be completely loaded into memory, whereas bootable disks are designed for only the first sector to be loaded and executed. Also, paper tape images are now flagged as non-auto-starting, because they often require some user action (eg, loading another tape, setting some switches, etc), whereas disk boot sectors are flagged as auto-starting (see the fStart parameter of the loadImage() interface in the RAM component). 2016-12-03 14:49:51 -08:00
Jeff Parsons
6a18abda51 Refactored RL11 register names (weird that it affected the compiled version, but that's the Closure Compiler for you...) 2016-11-30 12:50:16 -08:00
Jeff Parsons
3a8322838d RSTS/E boots now 2016-11-30 12:32:32 -08:00
Jeff Parsons
aaf46034ca Cleaned up DEBUG code in the disk controllers 2016-11-30 10:19:47 -08:00
Jeff Parsons
a06a4c9324 Fixed RL11 disk memory access (addresses are always mapped, apparently) 2016-11-29 17:10:37 -08:00
Jeff Parsons
cacff66983 Lots of memory interface cleanup; still can't boot RSTS/E though.... 2016-11-29 14:48:26 -08:00
Jeff Parsons
375146f6bb Hacked the Bus component to permit devices to access the actual memory map (better solution will be maintain two separate maps: one for the CPU and a separate map for device access) 2016-11-28 13:27:06 -08:00
Jeff Parsons
47a65f043f Cleaned up IRQ handling, added support for DL11 overrun errors, and fixed buffered message output (although a better solution is needed longer term) 2016-11-26 11:38:03 -08:00
Jeff Parsons
708869815d Fixed DL11 for RT-11, and added more message capabilities 2016-11-22 16:54:45 -08:00
Jeff Parsons
871b22c779 Fixed autoMount processing when multiple disk controllers are loaded 2016-11-22 11:14:57 -08:00
Jeff Parsons
dcea4fb905 First stab at RK11 support 2016-11-21 18:10:20 -08:00
Jeff
7ac9bfe282 Fixed spurious faults in RL11 2016-11-18 13:51:53 -08:00
Jeff
5bc0c8cca9 Simplified the I/O registration function, added support for Panel debugger messages, and added some new Panel behavior on the RESET instruction 2016-11-15 10:05:25 -08:00
Jeff
297be4e92d Used finish instead of done for "finishing" methods 2016-11-14 16:48:49 -08:00
Jeff
2c1191ce6e DEC's "TRAP TEST" finally passes (and I learned a lot about PDP-11 opcode idiosyncrasies in the process) 2016-11-12 12:54:13 -08:00
Jeff
a88e2d7b39 Fixed the frequency of PDP-11 display updates 2016-11-07 18:30:33 -08:00
Jeff
eb3b38a5ad Fixed XXDP disk boot (haven't tried any tests yet, but it's still good progress) 2016-11-07 17:20:53 -08: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
04be27b47b Added some RL11 register definitions 2016-10-25 14:40:33 -07:00
Jeff Parsons
9e480d7574 Added new RL11 component (work-in-progress) 2016-10-24 16:28:48 -07:00