Commit graph

82 commits

Author SHA1 Message Date
folkert van heusden
e123d6d55f
fix for BKTCB0.BIC 2024-04-07 22:26:35 +02:00
folkert van heusden
00ec6af6cd
Revert "clean-up & "instruction_aborted" flag for MTFPDI"
This reverts commit ecbe3f5f84.
2024-04-01 22:45:25 +02:00
folkert van heusden
ecbe3f5f84
clean-up & "instruction_aborted" flag for MTFPDI 2024-04-01 22:03:15 +02:00
folkert van heusden
5bf293a639
"stats" debugger command 2024-03-29 22:40:01 +01:00
folkert van heusden
42c57f1c3a
SP verification 2024-03-29 21:21:44 +01:00
folkert van heusden
43134223ae
Merge branch 'master' into json_validation 2024-03-29 10:30:15 +01:00
folkert van heusden
661d94f8f6
MIPS calculation: compensate for idle waits 2024-03-29 10:29:09 +01:00
folkert van heusden
1e91bb9814
testing tweaks 2024-03-28 22:00:12 +01:00
folkert van heusden
0bc17c628a
reason 2024-03-28 18:24:13 +01:00
folkert van heusden
a0630fd485
fixes 2024-03-28 15:41:44 +01:00
folkert van heusden
c62aadd318
basic framework for json validation 2024-03-28 00:51:06 +01:00
folkert van heusden
1d87ecc570
debugger runs 2023-04-08 15:08:13 +02:00
folkert van heusden
2b6de27c35
compiles 2023-04-07 23:10:26 +02:00
folkert van heusden
2008635261
compile fixes 2023-03-27 19:40:51 +02:00
folkert van heusden
2563bbac57
locking and iterating through queues is expensive so added flag that indicates if there is any interrupt pending 2023-03-27 09:26:10 +02:00
Folkert van Heusden
4c7fcb4854 license 2023-03-26 21:47:42 +02:00
folkert van heusden
ebbcbee78f
initialize stack limit register with something saner 2023-03-26 15:28:31 +02:00
folkert van heusden
9bba033dbc
implemented real WAIT (really wait for interrupts) 2023-03-26 13:19:30 +02:00
folkert van heusden
b5f9d62f55
Methods for run-mode retrieval 2023-03-25 15:48:50 +01:00
folkert van heusden
d66650b5b2
prev_mode: rm_cur/rm_prev 2023-03-25 13:57:47 +01:00
folkert van heusden
b2f3fdb0e9
made word_mode into an enum 2023-03-25 09:56:52 +01:00
folkert van heusden
3dddae94c3
not sure if a union of an int and an std::opional is guaranteed to work 2023-03-24 21:23:11 +01:00
folkert van heusden
ba5916f750
SP is not selectable via bit 11 of PSW
R0...R5 are not selectable via run-mode
2023-03-24 19:59:52 +01:00
folkert van heusden
8a47015a93
replaced schedule_trap by trap() + throw 2023-03-22 13:48:55 +01:00
folkert van heusden
cfc819630e
Revert "MMR2 tracking"
This reverts commit 2afa705209.

=> breaks EKBA (from XXDP)
2023-03-22 13:08:23 +01:00
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