Commit graph

1,710 commits

Author SHA1 Message Date
Jeff Parsons
7beaf7ca7b More README updates 2016-10-20 15:32:37 -07:00
Jeff Parsons
21d91cbcfa Fixed the components.xsl for PDPjs machines, and added more instructions, resource links, etc, for the PDP-11 demo machines 2016-10-20 15:16:22 -07:00
Jeff Parsons
8e2b50afe1 pdp11-device layout hack 2016-10-19 17:33:02 -07:00
Jeff Parsons
d83bfcda4c More XML layout tweaks 2016-10-19 17:16:42 -07:00
Jeff Parsons
80741b98d0 XML layout tweaks 2016-10-19 15:45:33 -07:00
Jeff Parsons
5e9891292c Added progress bar control (for the PC11 paper tape reader) 2016-10-19 14:16:14 -07:00
Jeff Parsons
bff199ee7f Fixed the PC11 component to deliver bytes at (roughly) the same rate as a physical "high speed" paper tape reader would (TODO: Add a paper tape status display) 2016-10-19 11:31:43 -07:00
Jeff Parsons
13a1dedbc7 Supoprt for tape images in the Absolute Loader format has been moved to the RAM component, so that those images can be preloaded into RAM in the same way that raw bootstrap images can; the RAM component now provides Absolute Loader image parsing as a service to other components that need it (specifically, the PC11 tape reader) 2016-10-19 11:10:38 -07:00
Jeff Parsons
69b7a682d8 Added code to parse tape data and load it directly into memory if the LOAD button is used instead of the ATTACH button 2016-10-18 20:53:26 -07:00
Jeff Parsons
6c4f8f4bb3 Code in place for parsing tape data when "load" (as opposed to "attach") is requested 2016-10-18 16:53:20 -07:00
Jeff Parsons
16b8b59f12 PDP-11/20 test machine can load BASIC from paper tape, but still has some trouble running it 2016-10-18 15:44:26 -07:00
Jeff Parsons
fbb36c1d1b Updated PDP-11 READMEs 2016-10-18 12:03:23 -07:00
Jeff Parsons
6683c81299 Created dedicated getOpcode() function, replaced getPCWord() 2016-10-18 10:50:05 -07:00
Jeff Parsons
599228db46 Assorted PC11 tape loading fixes 2016-10-18 10:30:34 -07:00
Jeff Parsons
961dce8f78 Added PC11 support for loading tapes remotely 2016-10-17 18:22:42 -07:00
Jeff Parsons
aa131d5413 Changed name of tape demo configuration 2016-10-17 15:29:59 -07:00
Jeff Parsons
e3b165431b Changed BOOTTEST to simply TEST 2016-10-17 15:25:15 -07:00
Jeff Parsons
ed24094683 Lots of tweaks in advance of PDPjs support for loading tape files 2016-10-17 15:19:01 -07:00
Jeff Parsons
5f3694133a Updated READMEs regarding RAM image support 2016-10-17 11:18:18 -07:00
Jeff Parsons
980c2ac5ab Updated PC8080 and PDPjs to support RAM images, eliminating the need for the old "writable ROM" kludge; RAM images can include their own load and exec addresses as part of the JSON file, but the RAM component can provide explicit overrides (if no load address is specified either way, the default load address is the starting RAM address) 2016-10-17 11:01:32 -07:00
Jeff Parsons
4cfaa5ef6e Picked up the fixes from the Jekyll smoke test 2016-10-15 18:19:23 -07:00
Jeff Parsons
e44bd4acec Register PC11 I/O handlers 2016-10-15 17:55:16 -07:00
Jeff Parsons
d928bef562 Register PC11 I/O handlers 2016-10-15 17:54:45 -07:00
Jeff Parsons
6bec38acb4 Updated READMEs 2016-10-15 17:13:43 -07:00
Jeff Parsons
0f4cbd6e7b Added my first PDP-11 add-on device component (PC11) 2016-10-15 16:32:59 -07:00
Jeff Parsons
b79146880d Debugger now restricts opcodes to the current CPU model 2016-10-15 15:01:39 -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
342746f2bc Added a PDP-11 "server array" test page 2016-10-14 11:06:33 -07:00
Jeff Parsons
a0f7b85bdd Removed an HTML template hack (should only affect the Node environment) 2016-10-14 09:41: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
d68d1aa9bc README updates 2016-10-13 16:47:30 -07:00
Jeff Parsons
b3c7d4e361 Added current speed control to PDP-11 control panels 2016-10-13 16:39:40 -07:00
Jeff Parsons
854b40c419 Cleaned up PDP-11/70 configs 2016-10-13 16:35:10 -07:00
Jeff Parsons
2a1be67727 In the spirit of the PCx86 Debugger, the PDP11 Debugger can now distinguish between virtual and physical addresses; physical addresses are specified with a leading '%'; this necessitated special CPU memory interfaces that mirror the Bus memory interfaces, which perform mapVirtualToPhysical() as needed, with traps disabled. 2016-10-13 13:11:11 -07:00
Jeff Parsons
686396d726 Switched interrupt management to a new set of Trigger functions and static Trigger objects, eliminating the old InterruptQueue of constantly created/destroyed InterruptEvents 2016-10-13 10:20:11 -07:00
Jeff Parsons
8bb978d7a9 Resolved a problem with the original timer implementation, where a call to setTimer() made in the middle of a CPU burst would not properly account for cycles already executed as part of the current burst 2016-10-12 22:08:45 -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
30e67a015b Fixed some idiosyncrasies involving the versioned folder names for the various emulators. Any compiled pdp*.js script (eg, pdp11.js) will be stored in the /versions/pdpjs folder, just as any compiled c1p*.js script will be stored in the /versions/c1pjs folder. Other emulators that don't use a "js" suffix in their name (eg, PCx86 and PC8080) are stored in /versions folders that mirror their names. 2016-10-11 12:19:54 -07:00
Jeff Parsons
4567e9f6c6 Changed both PDP-11 test machines to use the new LED control panel 2016-10-11 11:42:18 -07:00
Jeff Parsons
4c63c8a97f Quick change (perhaps temporary) to update LEDs on every WAIT transition (similar to the behavior of the original pdp11.js) 2016-10-11 10:47:09 -07:00
Jeff Parsons
eac2f56296 Provided clearer separation between LED triplets 2016-10-11 10:28:37 -07:00
Jeff Parsons
47767416a1 Added preliminary LED support 2016-10-11 10:20:39 -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