Commit graph

57 commits

Author SHA1 Message Date
folkert van heusden
2afa705209
MMR2 tracking 2023-03-21 14:26:58 +01:00
folkert van heusden
ff40cdc82c
11/34 mode removed 2023-03-21 10:32:46 +01:00
folkert van heusden
5bc706d979
11/70 has no MFPT instruction 2023-03-20 19:07:52 +01:00
folkert van heusden
020764b22c
write-back in correct space 2023-03-18 14:48:17 +01:00
folkert van heusden
be68ad2357
code cleanup: unify getGAM/getGAMAddress/putGAM (first step) 2023-03-18 14:35:31 +01:00
folkert van heusden
57c7a23bd5
setPSW_flags_nzv 2023-03-18 12:50:14 +01:00
folkert van heusden
b88efb312f
getGAMAddress does not require the prev_mode flag 2023-03-18 12:32:58 +01:00
folkert van heusden
050b0f7ea5 clean-up 2023-03-13 13:33:57 +01:00
folkert van heusden
4618c86ffa Revert "RTI/RTT shall not change the PSW in user/supervisor mode"
This reverts commit 31edf022cc.

Seems to break at least XXDP EKBAD0.BIC
2023-03-13 10:10:13 +01:00
folkert van heusden
08d8c75d58 - readPhysical
- initialize psw to 0 to match pypdp (for diff)
- SUB instruction V-flag may have been incorrect
- MFPI/MTPI flags
- MFPI readPhysical
- bootloader from pypdp (for diff)
2023-03-12 22:32:53 +01:00
folkert van heusden
d68a5af55e writePhysical 2023-03-11 21:54:18 +01:00
folkert van heusden
42fc44b206 page written bit only when written
double trap: use stack from 000004
2022-06-24 20:03:32 +02:00
folkert van heusden
ad44232120 double trap handling (work in progress) 2022-06-19 15:31:26 +02:00
folkert van heusden
31edf022cc RTI/RTT shall not change the PSW in user/supervisor mode 2022-06-18 18:05:31 +02:00
folkert van heusden
4b788bb620 Set bit 12 to 1 if trap 2022-06-17 20:48:16 +02:00
folkert van heusden
a9090e0acd show instruction count together with the mips-count 2022-06-16 22:35:28 +02:00
folkert van heusden
6eeb65eeb3 PAR/PDR fixes
(FKTH??)
2022-06-13 15:19:28 +02:00
folkert van heusden
c20b9554d8 streamlined get/set_Register 2022-06-11 16:02:55 +02:00
folkert van heusden
dd3b1d9d66 Renamed 'FIXME' to 'TODO' for a few cases: they're really TODOs and
lgtm.com complains about them.
2022-06-11 08:59:07 +02:00
folkert van heusden
8d8af7153b Event handling (stop/interrupt) clean-up 2022-06-10 20:59:36 +02:00
folkert van heusden
94181e94bd KW11-L 2022-06-09 19:10:22 +02:00
folkert van heusden
1e748d3d37 All write-access to 0177776 should not affect the flag registers 2022-06-02 22:22:05 +02:00
folkert van heusden
3df8aea12c Split 'step()' into _a and _b so to prevent confusing disassembly of an
instruction that won't be executed anyway due to an interrupt/trap.
2022-04-30 12:16:19 +02:00
folkert van heusden
1673548c37 MMR1/2 2022-04-13 23:38:46 +02:00
folkert van heusden
a90547c3d1 micro-opt 2022-04-13 20:53:54 +02:00
folkert van heusden
841d0d9720 RESET clears the interrupt-queue 2022-04-13 17:48:49 +02:00
folkert van heusden
5390e54107 tracing: make sure a trap is logged 2022-04-12 12:31:22 +02:00
folkert van heusden
44ad6a5912 emulation speed 2022-04-12 11:17:30 +02:00
folkert van heusden
9462e2a72b debugger commands 2022-04-12 10:42:39 +02:00
folkert van heusden
9c7632fb1c breakpoints 2022-04-11 21:00:42 +02:00
folkert van heusden
9d367e02ae -d is now debugger and -t is now tracing to stderr 2022-04-11 20:55:59 +02:00
folkert van heusden
437ac02bce disassembler in ncurses mode 2022-04-11 15:20:22 +02:00
folkert van heusden
517f2afb9b changes to make it compile on ESP32 (does currently not support "std::optional") 2022-04-11 14:06:35 +02:00
folkert van heusden
f5bea4b5dc const 2022-04-11 13:31:22 +02:00
folkert van heusden
8920cb8313 extend debug logging with values worked with 2022-04-11 12:30:43 +02:00
folkert van heusden
9a18221229 RTI/RTT cannot set all PSW bits (the upper 5) 2022-03-31 23:46:43 +02:00
folkert van heusden
07cd3100d1 show (M)IPS in ncurses 2022-03-31 19:30:06 +02:00
folkert van heusden
ebaf6393c3 allow bus to trap for an invalid address 2022-03-26 12:20:18 +01:00
folkert van heusden
8612d99d36 code clean-up 2022-03-25 22:35:26 +01:00
folkert van heusden
3248df3e87 RESET 2022-03-25 09:59:40 +01:00
folkert van heusden
1443b62fcc Some 8bit commands *do* only update the lower 8 bit while not changing
the 8 upper bits.
2022-03-24 21:43:14 +01:00
folkert van heusden
4d98f6557e interrupt priority levels 2022-03-23 09:50:03 +01:00
folkert van heusden
27703ad706 Handle "HALT" correctly 2022-03-20 14:05:05 +01:00
folkert van heusden
28958a9945 Compile fixes for ESP32 2022-03-20 13:49:45 +01:00
folkert van heusden
b6b8f38fdc restructured 2022-03-20 13:12:44 +01:00
folkert van heusden
4367cbe489 -d switch 2022-03-20 12:30:08 +01:00
folkert van heusden
cf64216ecd need to use kernel stack in trap 2022-03-19 18:25:50 +01:00
folkert van heusden
b44c6ffa31 wip 2022-03-18 19:28:13 +01:00
folkert van heusden
5ac576a0ac calculate_full_address for leds 2022-03-18 14:28:27 +01:00
folkert van heusden
a8d62a5426 led color now depends on run-mode 2022-03-17 23:23:53 +01:00