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 |
|
Jeff
|
07ee5497bc
|
Added some polyfills for old browsers
|
2016-10-01 14:37:02 -07:00 |
|
Jeff
|
0b78b2885e
|
Fixed MOV cycle calculation
|
2016-09-30 15:43:00 -07:00 |
|
Jeff
|
0e0dcb29ec
|
Added some PDP-11 opcodes I missed (JMP and SWAB)
|
2016-09-30 15:27:53 -07:00 |
|
Jeff
|
af6b66d2a3
|
Laying the groundwork for an attempt at PDP-11 cycle counting (it won't be exact, but it should be close)
|
2016-09-30 12:00:07 -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
|
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
|
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
|
6af956b8f0
|
Implemented branches and RTS
|
2016-09-26 11:27:32 -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
|
ff6d15a622
|
Updated the build process to formally declare that we're compiling from ES6 to ES5 (although for now, 99.99% of the code is already and will remain ES5.1-compatible)
|
2016-09-24 17:00:57 -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 |
|