Commit Graph

405 Commits

Author SHA1 Message Date
Adrian Conlon
6d84c3a41f Get SCF/CCF X/Y flags working correctly. 10 problems reported now. 2025-05-04 16:00:08 +01:00
Adrian Conlon
93e09c192f Share instruction fetch and halt implementations 2025-05-04 11:41:28 +01:00
Adrian Conlon
2336222c97 Push more core processor handling into base classes. 2025-05-04 10:53:23 +01:00
Adrian Conlon
47374e591d With my correct implementation of HALT, I need the fetch to take place during a halted state 2025-05-04 08:56:22 +01:00
Adrian Conlon
e4494e943a PC only proceeds when HALT pin is raised 2025-05-04 00:36:01 +01:00
Adrian Conlon
853569b2ca Isolate REFRESH pin functionality 2025-05-04 00:35:14 +01:00
Adrian Conlon
cbe871d365 Isolate program counter increment/decrement (to be used for HALT processing) 2025-05-03 23:25:06 +01:00
Adrian Conlon
2501bdfd28 More block timing issues corrected. 16 issues remaining 2025-05-03 22:46:02 +01:00
Adrian Conlon
6d8a00876f Fix a bunch of "block" instruction timings. 16 problems remaining. 2025-05-03 19:51:36 +01:00
Adrian Conlon
a0d45eace1 Fix display of registers (from alternate set) when viewing z80 problems 2025-05-03 19:18:03 +01:00
Adrian Conlon
26457b4a77 Correct timing for 16-bit arithmetic tests. 26 failures remaining 2025-05-03 15:03:04 +01:00
Adrian Conlon
68328d92fb Fix displaced timing on arithmetic operations for z80. 34 failures now 2025-05-03 14:40:38 +01:00
Adrian Conlon
506e2b9eda Fix some displaced memory load timing issues. 50 issues remaining. 2025-05-03 14:10:18 +01:00
Adrian Conlon
f9754dd62f Fix some z80 eight-bit load timing issues. 58 issues remaining 2025-05-03 13:54:18 +01:00
Adrian Conlon
9f2079efae More z80 timing issues fixed. 70 issues remain 2025-05-03 13:21:36 +01:00
Adrian Conlon
080f203a55 Unify Intel style JR CC code and fix SM83 timing issues. 2025-05-03 12:09:34 +01:00
Adrian Conlon
0679b95b77 Correct LR35902 HALT test. Whatever problems this has, won't be solved by a hack 2025-05-03 11:58:57 +01:00
Adrian Conlon
94b8da456b Fix loads of z80 timing issues. 84 timing issues remain. 2025-05-03 11:45:55 +01:00
Adrian Conlon
898a2bc7ea Try to bring the Z80 fusetest back to life 2025-05-03 02:09:31 +01:00
Adrian Conlon
946121defb Fix HALT instruction 2025-05-03 02:08:52 +01:00
Adrian Conlon
561483d65d More timing fixes. 255 timing errors 2025-05-03 01:31:44 +01:00
Adrian Conlon
f4f4357a3e More z80 timing fixes, 261 errors 2025-05-03 00:51:20 +01:00
Adrian Conlon
e1aa220409 Further Z80 timing fixes: 290 failures 2025-05-03 00:09:19 +01:00
Adrian Conlon
175069d6bf More Z80 timing fixes 2025-05-02 20:18:04 +01:00
Adrian Conlon
3617608e8c Fix a number of write timing issues 2025-05-02 17:46:33 +01:00
Adrian Conlon
fda52af260 Only DJNZ has the extra tick (presumably to decrement the B register) 2025-05-02 14:07:15 +01:00
Adrian Conlon
935466ad6f Correct timing issues both conditional and unconditional relative jumpson Z80 2025-05-02 14:03:15 +01:00
Adrian Conlon
9670c3fd21 Start correcting timing issues in my Z80 implementation 2025-05-02 12:11:54 +01:00
Adrian Conlon
07330cc9c8 Move a routine into a slightly better place 2025-05-02 10:52:06 +01:00
Adrian Conlon
5bae07ff8d Add single stepping Z80 testing code 2025-05-02 10:50:49 +01:00
Adrian Conlon
dd1d141f15 Simplify conditional flag handling in intel processors 2025-04-29 12:27:39 +01:00
Adrian Conlon
973590690c Fix a bunch of analysis issues 2025-04-01 09:32:29 +01:00
Adrian Conlon
820fb707b9 Update to latest EightBit library 2025-03-29 14:38:36 +00:00
Adrian Conlon
1b1b92ac2c More event handling simplification 2025-03-29 13:18:54 +00:00
Adrian Conlon
b461eb97d6 Prefer to use events directly, rather than through "On" methods 2025-03-29 11:31:47 +00:00
Adrian Conlon
87abbaa75e Tidy IO page access 2025-03-28 14:50:53 +00:00
Adrian Conlon
fa48a64cac Take advantage of some simplifications 2025-03-28 09:17:09 +00:00
Adrian Conlon
3a9e89f009 Tidy a couple of IO effects in the LR35902 core 2025-03-28 09:03:32 +00:00
Adrian Conlon
4d0059ad94 Only 7 failing instructions now 2025-03-27 14:34:54 +00:00
Adrian Conlon
4db203de48 All interrupt handling state tests to work 2025-03-27 11:13:41 +00:00
Adrian Conlon
e3258846a8 Whoops: missed addition of SM83 tests to solution. 2025-03-27 10:19:59 +00:00
Adrian Conlon
3ca3d60caf Correct some timing issues in GB core 2025-03-27 10:19:18 +00:00
Adrian Conlon
08089823c2 First stab at getting LR35902 HarteTests running. Not bad, so far! 2025-03-26 21:16:37 +00:00
Adrian Conlon
3d6b549c76 Turns out using lambdas to control pins is lovely and correct, but terribly slow. Back to a more traditional method. 2025-03-24 20:18:04 +00:00
Adrian Conlon
d4dc99b454 Use lambda functions to simplify CPU pin control 2025-03-23 11:08:36 +00:00
Adrian Conlon
8a68fc5856 Library fixes 2025-03-18 21:32:44 +00:00
Adrian Conlon
a9db2f58bd miscellaneous fixes, especiall flags 2025-03-18 18:38:47 +00:00
Adrian Conlon
21770b2460 Take some analysis suggestions 2025-02-23 12:14:30 +00:00
Adrian Conlon
4676ea669a Simplification, but no fixes 2025-02-13 12:35:49 +00:00
Adrian Conlon
e8d770c6bb Simplify i/o port handling in Z80 implementation 2025-01-27 21:23:47 +00:00