Jeff Parsons
|
35f931f492
|
Fixed stepCPU() so that, if a Debugger is present, it always calls checkInstruction() on at least the first instruction of a run, so that Debugger features like skipping over an initial HALT opcode works properly
|
2016-10-21 23:24:27 -07:00 |
|
Jeff Parsons
|
5808778351
|
Added getTrapStatus() so that the Debugger can display trap information whenever a trap has just occurred, updated FileDump to store 'load' and 'exec' properties in MACRO-11 listing dumps (so that the individual machine files don't have to specify hard-coded 'load' and 'exec' values themselves), and added a new SerialPort parameter (upperCase) that can be used to force all received data to upper-case
|
2016-10-21 21:07:26 -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
|
22e24697fe
|
Fixed read/write breakpoints for instructions that snapshot the cycle count, and improved the disassembly of PC-relative operands
|
2016-10-21 13:45:01 -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
|
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
|
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
|
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
|
ed24094683
|
Lots of tweaks in advance of PDPjs support for loading tape files
|
2016-10-17 15:19:01 -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
|
e44bd4acec
|
Register PC11 I/O handlers
|
2016-10-15 17:55:16 -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
|
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
|
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
|
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
|
47767416a1
|
Added preliminary LED support
|
2016-10-11 10:20:39 -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 Parsons
|
cd8b6464a3
|
Added more MMU handlers
|
2016-10-07 10:58:15 -07:00 |
|
Jeff Parsons
|
c69ebb7bcb
|
Factored out mapVirtualToPhysical() calls when MMU not enabled, and fixed HALT (it actually halts the CPU now)
|
2016-10-07 09:49:02 -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
|
f7659f9f34
|
Commencing work on v1.30.1
|
2016-10-06 12:48:48 -07:00 |
|
Jeff
|
4e8d4e95d8
|
Picked up fixes from the gh-pages rollout
|
2016-10-06 10:09:41 -07:00 |
|
Jeff
|
21b4fe4942
|
Renamed PDP11js to PDPjs (mostly a cosmetic change, except for the versions directory, and less of a mouthful)
|
2016-10-05 17:43:46 -07:00 |
|
Jeff
|
85b05ac7a9
|
Typos
|
2016-10-05 16:18:30 -07:00 |
|
Jeff
|
086ef51588
|
Cleaned up the SerialPort (formerly tty) logic a bit
|
2016-10-05 12:41:14 -07:00 |
|
Jeff
|
795d57839b
|
Cleaned up the decoding SRCMODE and DSTMODE operands, should be less confusing now
|
2016-10-04 17:22:25 -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
|
a254abc7dc
|
SRC operands must be fetched before DST operands
|
2016-10-03 16:50:39 -07:00 |
|
Jeff
|
9dd582eda8
|
Fixed PDP-11 Debugger display of alternate target addresses
|
2016-10-03 15:45:05 -07:00 |
|
Jeff
|
2a065f4efc
|
First stab at PDP-11 cycle times (11/70 to be precise) is more or less complete now
|
2016-10-03 14:27:14 -07:00 |
|