transistor
83289d6b8e
Modified Z80 to use a custom error type
2024-03-02 10:57:16 -08:00
transistor
55efc4f406
Split some parts of moa-core into libraries/
2024-03-01 21:17:09 -08:00
transistor
a161dcda8a
Renamed modules to use kebab case
2024-02-24 19:26:28 -08:00
transistor
671517aab7
Modified to use crates.io version of femtos
2024-02-24 19:16:46 -08:00
transistor
9ff431ebc6
Split clocks into femtos
crate
2024-02-24 13:02:09 -08:00
transistor
f9d613b3b9
Fixed some Z80 instruction timings
2023-06-10 21:55:25 -07:00
transistor
be91118bac
Added function to create the CPU BusPorts based on the CPU type
2023-06-10 20:28:40 -07:00
transistor
83307d5b33
Changed Error type into an enum
2023-06-10 19:29:54 -07:00
transistor
e3861f33b5
Fixed tests and clippy warnings
2023-06-10 17:39:20 -07:00
transistor
3bd4c24ea8
Modified debugger so the input is in the frontend
...
The debug loop that reads a command and does something is part of the
frontend's main loop, so that it can potentially update, even though
it doesn't actually work for minifb because the command input is a
blocking call. It's also not implemented in the pixels frontend.
At some point I'll make a web frontend.
2023-06-10 15:28:21 -07:00
transistor
708e7706f3
Fixed many of the undocumented tests
...
Now it's up to 99% tests passing, 15362 are still failing, but many
of those are the unimplemented IN/OUT instructions, which the Genesis
doesn't seem to use
2023-05-22 21:12:05 -07:00
transistor
64b18662d5
Added Z80 timings, and enabled check in rad tests
2023-05-15 21:13:52 -07:00
transistor
f205e231b6
Fixed tests failing due to wrapping into past the end of memory
2023-05-14 21:12:38 -07:00
transistor
aaa7952dd0
Split the Z80 instructions into individual functions like the m68k
2023-05-14 15:49:38 -07:00
transistor
7e62a2691c
Started implementing INI instruction for Z80
2023-05-14 10:29:41 -07:00
transistor
6390a207a6
Attempted to implement DAA but still have a lot of failures
2023-05-13 21:35:50 -07:00
transistor
5ec2fe4157
Implemented RLD and RRD instructions for Z80
2023-05-13 21:06:00 -07:00
transistor
f3d1fd0ae2
Added IM, IFF1, and IFF2 checking to Z80 tests, and fixed issues with Z80 impl
2023-05-13 19:41:20 -07:00
transistor
e61e0cfe8f
Fixed flags for BIT instruction in Z80
2023-05-13 17:36:32 -07:00
transistor
f0cbf5f2ca
Fixed some IY instructions, and a few minor fixes
2023-05-13 16:17:14 -07:00
transistor
57f9f93cc9
Fixed the basic IN/OUT instructions on Z80, and basic RETI/RETN
2023-05-13 14:47:27 -07:00
transistor
c97b3b8aca
Fixed half carry in Z80
2023-05-13 11:55:13 -07:00
transistor
cf4e31454b
Fixed some Z80 tests related to the overflow flag
2023-05-13 10:36:50 -07:00
transistor
9694036e33
Fixed Z80 to pass the rad tests
2023-05-09 22:58:56 -07:00
transistor
f8083db181
Added raddad772/jsmoo's Z80 test runner
...
Special thanks to raddad772 https://github.com/raddad772
Also added some fixes to the Z80 for panicking math operations, but
it still won't complete due to an unimplemented instruction
2023-05-09 21:50:42 -07:00
transistor
5e228c377e
Fixed tests after ClockTime and Frequency changes
...
And also removed HostData
2023-05-07 20:42:55 -07:00
transistor
86eb73f78a
Added clock argument to addressable operations
2023-04-23 18:49:40 -07:00
transistor
07a675fab5
Added new clock types similar to Duration
2023-04-23 15:46:47 -07:00
transistor
4dc4b6ad22
Reorganized z80 tests
2023-03-25 21:31:44 -07:00
transistor
7bdd63bc76
Fixed all clippy warnings
2023-03-05 20:19:49 -08:00
transistor
083f3607ba
Major reorganization into crates
...
I wanted to make this a bit more modular, so it's easier in theory to
write external crates that can reuse bits, and selectively compile in
bits, such as adding new systems or new cpu implementations
2022-09-24 23:14:03 -07:00