Commit graph pcjs/modules
Author SHA1 Message Date
Jeff
b3ba03d0a5 Got rid of runState, implemented a solution for WAIT 2016-09-29 11:04:33 -07:00
Jeff
98081c6a6d Allow the PDP-11 debugger to use parentheses for sub-expressions 2016-09-29 09:38:17 -07:00
Jeff
44a2ec9f03 Fixed Debugger memory editing and register handling, tidied up some flag operations, and removed more now-unnecessary address checks in cpustate 2016-09-29 09:11:25 -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
0ad98dc68b All PDP-11 opcode decoders implemented now 2016-09-28 13:45:36 -07:00
Jeff
ed189527d0 Optimized branch() 2016-09-27 21:51:24 -07:00
Jeff
b2c66b5374 Implemented more opcode decoders 2016-09-27 16:21:55 -07:00
Jeff
eb5aaa5d66 Strip leading zeros from selected debugger constants (typically immediate values) 2016-09-27 12:53:36 -07:00
Jeff
15fe831fc7 Sanpshot the bootcode used for initial PDP-11 testing 2016-09-27 11:40:47 -07:00
Jeff
9727a2d4df Across-the-board debugger fix 2016-09-27 09:34:56 -07:00
Jeff
e322c5f912 Implemented INC/DEC opcodes 2016-09-27 09:28: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
1e1388b9ca Added KW11 interface (and LKS register) definitions 2016-09-26 12:36:36 -07:00
Jeff
4b4098a5c9 Cleaned up ACCESS defines 2016-09-26 11:57:21 -07:00
Jeff
6af956b8f0 Implemented branches and RTS 2016-09-26 11:27:32 -07:00
Jeff
5b25dc91ae Let's stop on any un(re)implemented opcode for now 2016-09-26 10:02:21 -07:00
Jeff
1ec60573d5 Implemented opJSR, removed more "negative address" tests (eg, in pushWord); bad addresses should result in special exceptions, not negative return values 2016-09-26 09:43:05 -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
a451bbc5bc Added another example of an I/O address handler (XCSR) 2016-09-25 15:15:06 -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
56c305ca64 Added more register documentation 2016-09-24 21:32:00 -07:00
Jeff
c9647a859d Link to Google's Closure Compiler ES6 wiki: https://github.com/google/closure-compiler/wiki/ECMAScript6 2016-09-24 16:45:55 -07:00
Jeff
63b0c9c02c Started centralizing the set of UNIBUS addresses, and adopted my first ES6 feature: octal constants (not the old-fashioned unofficial leading-zero kind, but the new "0o" kind); I will still use hex instead of octal whenever I can, but UNIBUS addresses are ALWAYS documented as octal, so I'm giving in.... 2016-09-24 16:44:42 -07:00
Jeff
b28166f493 Updated Closure Compiler to v20160911, so now we have a version that supports ECMAScript 6, but I'm not going to go bonkers on ES6 features just yet; the first feature I'm going to use is support for octal and binary constants (of the form 0onnnn and 0bnnnn) 2016-09-24 16:03:57 -07:00
Jeff
f82d6f1bfa Assorted improvements to new opcode decoders 2016-09-24 15:12:02 -07:00
Jeff
a7148a6eb3 Finished creating the new PDP-11 decoding skeleton 2016-09-23 17:59:18 -07:00
Jeff
b5a7525ad2 Fixed some sloppy coding (my bad) 2016-09-23 13:45:01 -07:00
Jeff
9d045008a3 More decoding functions 2016-09-23 13:16:12 -07:00
Jeff
7f0b6a091d Started work on new decoding functions 2016-09-22 18:47:32 -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
c61876a568 Added PSW to Debugger register dump 2016-09-20 14:56:05 -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
e865857c4b PC8080's Debugger8080 wasn't properly subclassing Debugger 2016-09-20 08:39:03 -07:00
Jeff Parsons
8984cbc2ed PDP-11 debugger disassembly fixes 2016-09-19 21:31:18 -07:00
Jeff Parsons
a15e222076 Added support for a Debugger "base" option that presets the default base (eg, 8, 10, 16) for most numeric input/output 2016-09-19 16:43:07 -07:00
Jeff Parsons
1df54a338f Assorted PDP-11 debugger changes 2016-09-19 16:30:08 -07:00
Jeff Parsons
6984a97512 Typo 2016-09-17 18:19:46 -07:00
Jeff Parsons
cc70c05c07 More PDP-11 debugger work 2016-09-17 18:16:58 -07:00
Jeff Parsons
75918a6edc More PDP-11 debugger work 2016-09-16 16:04:28 -07:00
Jeff Parsons
d8856ac8bd Making some headway on the PDP-11 debugger (finally) 2016-09-16 14:53:05 -07:00
Jeff Parsons
1265104e6d Added support for converting numbers to/from octal, along with improved support for binary numbers 2016-09-15 18:23:09 -07:00
Jeff Parsons
375ddc12f3 Factored parseAddrReference() 2016-09-15 09:15:43 -07:00