Jeff Parsons
|
ba7de38fbf
|
Created PDP-10 skeleton
|
2017-02-19 15:22:58 -08:00 |
|
Jeff Parsons
|
822ab39cbe
|
Unforked the shared modules -- ES6 is now the default
|
2017-01-31 13:50:55 -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
|
94fd473b0a
|
Tidied up some status messages
|
2017-01-25 14:18:19 -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
|
ee45dbd8cf
|
Started working on save/restore support for the PDP-11; still a lot of state left to capture, but the basics seem to be working
|
2016-12-31 16:07:33 -08:00 |
|
Jeff Parsons
|
f87161f5d6
|
v1.32.0: The New Year Release
|
2016-12-30 15:56:01 -08:00 |
|
Jeff Parsons
|
4b345bb3d2
|
PDP-11 command-line (Node-based) operation is finally working
|
2016-12-30 14:51:32 -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
|
cb61219e22
|
Added support for virtual read/write breakpoints; physical read/write breakpoints are still used if the specified address is physical (preceded by %) or is outside the virtual 16-bit address range
|
2016-12-06 15:00:19 -08:00 |
|
Jeff Parsons
|
fa3be9eda9
|
Another minor autoStart tweak
|
2016-12-04 11:34:46 -08:00 |
|
Jeff Parsons
|
d8f0e64329
|
Merge the last set of changes from the gh-pages branch
|
2016-12-04 11:31:03 -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
|
63348edabe
|
Added some RK11 improvements, and a new Debugger command ("da") to dump information about a virtual address
|
2016-12-02 16:06:23 -08:00 |
|
Jeff Parsons
|
6bea7fd0e9
|
Added SerialPort interface to support the passing of flow control signals between machines (only PDP-11 and VT100 for now; PCx86 will come later, after I study how well, or not-so-well, this works with the VT100)
|
2016-12-01 11:15:27 -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
|
77897275eb
|
Limit CPU display updates to a reasonable number (ie, twice per second)
|
2016-11-14 20:10:18 -08:00 |
|
Jeff
|
eb6bf8a5a5
|
Fixed ASRB and RORB instructions, added a new dump command ("ds"), and fixed timer function initialization
|
2016-11-10 06:10:54 -08:00 |
|
Jeff
|
f43d1c1745
|
Revert back to propagating R0 to the Front Panel data path on a WAIT instruction (per PDP-11 lore)
|
2016-11-08 14:21:07 -08:00 |
|
Jeff
|
a7a44a8288
|
Cleaned up the PDP-11 updateDisplay(s) code, and removed the update hack inside the WAIT instruction; display updates now occur in sync with the machine's 60Hz clock
|
2016-11-04 13:35:20 -07:00 |
|
Jeff
|
57bceb4da9
|
Fixed the LED (lamp) test, fixed Front Panel update on a machine RESET, and cleaned up the status update code a bit
|
2016-11-03 10:28:54 -07:00 |
|
Jeff
|
d5c7bf0b5d
|
More Front Panel improvements
|
2016-11-02 13:35:50 -07:00 |
|
Jeff
|
caf0a728f8
|
More PDP-11 front panel functionality
|
2016-11-01 19:02:06 -07:00 |
|
Jeff Parsons
|
de916981f3
|
It is now possible to re-attach or re-load the current paper tape; re-attaching means repositioning it at the beginning, and re-loading means loading it into RAM again. Note that whenever you reload a tape, it's HIGHLY recommended that you reset the machine first, too.
|
2016-10-23 13:44:31 -07:00 |
|
Jeff Parsons
|
9ecb9e948f
|
More tweaks to the on-going tension between giving machine elements focus (especially problematic when there are multiple machines) and preventing the page from being yanked around
|
2016-10-23 09:24:26 -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
|
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
|
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
|
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
|
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
|
e24d507aa2
|
Removed useless version numbers and dates from .js file headers
|
2016-10-06 16:22:24 -07:00 |
|
Jeff
|
a731313215
|
Updated default PDP-11 speed
|
2016-09-29 22:43:55 -07:00 |
|
Jeff
|
1d395b7bd5
|
Added some comments on cycle times
|
2016-09-29 15:36:34 -07:00 |
|
Jeff
|
98d3700fa4
|
Cleaned up OPFLAG handling
|
2016-09-29 14:02:37 -07:00 |
|
Jeff
|
b3ba03d0a5
|
Got rid of runState, implemented a solution for WAIT
|
2016-09-29 11:04:33 -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
|
b2294e2293
|
Use CPU timer functions (instead of browser timeout/interval functions) to control device interrupts/timeouts
|
2016-09-26 20:34:31 -07:00 |
|
Jeff
|
3497466113
|
Cleaned up interrupt handling, register initialization, MMU initialization, etc
|
2016-09-26 16:53:37 -07:00 |
|
Jeff
|
f82d6f1bfa
|
Assorted improvements to new opcode decoders
|
2016-09-24 15:12:02 -07:00 |
|
Jeff
|
7f0b6a091d
|
Started work on new decoding functions
|
2016-09-22 18:47:32 -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 |
|