Commit Graph

329 Commits

Author SHA1 Message Date
transistor
1518ffbc60 Refactored ym7101 to store state unpacked
Previously it was storing data in the registers, which was an array
of u8, but now it's storing eg. full addresses for the scroll tables
so that they don't need to be fetched from the register values and
converted every rendering.  I was thinking this would maybe make
DMA debugging easier, in particular.
2021-12-04 13:55:58 -08:00
transistor
b540e53ea1 Fixed issues with Genesis controllers and sprite rendering
The controller th count was starting at 1 instead of 0 which caused
inputs to be read incorrectly, as well as the fact that inputs are
inverted.

The sprite fix now draws them in the right order so that ComradeOj's
sprite test renders correctly, but games still render them broken
because of some other bug yet to be found
2021-12-03 15:32:59 -08:00
transistor
75e4a760eb Added ABCD, SBCD, and TAS instructions to m68k 2021-12-03 15:32:17 -08:00
transistor
d33a3c160b Added test roms for Sega Genesis 2021-12-02 15:05:00 -08:00
transistor
9464e4c75a Renamed joystick to controller in host traits 2021-12-02 15:04:41 -08:00
transistor
b165e18fac Added ADDX/SUBX instructions to m68k 2021-12-01 15:40:41 -08:00
transistor
0f2f989775 Fixed bug in m68k with Extend flag in shift instructions 2021-12-01 10:45:24 -08:00
transistor
364c51524f Fixed bug in m68k decode with MUL 2021-11-29 11:12:20 -08:00
transistor
31ff828f15 Added Inspectable trait for getting debug data from peripherals 2021-11-29 11:11:32 -08:00
transistor
7fe83ad4a3 Fixed capitalization 2021-11-28 10:36:51 -08:00
transistor
c1e8863a9e Updated readme 2021-11-28 10:32:03 -08:00
transistor
1a94fca86a Minor fix 2021-11-28 09:48:31 -08:00
transistor
9ab12229c0 Renamed post 2021-11-27 21:52:37 -08:00
transistor
87fffde9c9 Added post 2021-11-27 09:39:38 -08:00
transistor
ac8e9c968c Fixed minor issue preventing the TRS-80 from working 2021-11-24 14:38:38 -08:00
transistor
b4a80c6969 Updated readme 2021-11-24 14:37:09 -08:00
transistor
cb47d23233 Fixed issue with colour 0 being the mask colour
For systems that legitimately use 0 for black, this causes a
problem, so I instead use 0xFFFFFFFF for the mask colour which
corresponds to transparent white in ARGB format, which minifb
doesn't support anyways
2021-11-23 11:45:44 -08:00
transistor
03f23da544 Added A and F instructions to m68k 2021-11-23 11:45:11 -08:00
transistor
f601290771 Fixed bug in MOVEM and added tests for it
It was previously decrementing addresses if the direction was from
registers to memory, but that's incorrect.  It should increment the
address always when using an addressing mode other than the ARecDec
mode.  I also added a memory location to the test cases to test the
MOVEM instruction by comparing what memory was read/written (but it's
only one u32 because that's the minimum we need)
2021-11-19 09:55:31 -08:00
transistor
02b10c5b32 Changed msp to ssp to match docs 2021-11-18 12:13:36 -08:00
transistor
812f6800a8 Minor fixes 2021-11-18 08:46:41 -08:00
transistor
a342ef3b86 Added MOVEP and more tests to m68k and IM to z80 2021-11-15 20:52:19 -08:00
transistor
1d8065026d Minor fixes 2021-11-15 20:51:33 -08:00
transistor
a00d7b2f26 Fixed warnings 2021-11-13 11:39:20 -08:00
transistor
674f03c3b8 Refactored m68k tests to use data for test cases 2021-11-13 10:55:58 -08:00
transistor
e0d863a845 Fixed overflow bug in m68k 2021-11-13 10:54:59 -08:00
transistor
d472b95d9d Fixed compile errors in moa-console frontend 2021-11-13 10:54:19 -08:00
transistor
9d799e308d Added command line options for minifb and TRS-80 2021-11-11 09:52:18 -08:00
transistor
6cc9e98e35 Rearranged minifb frontend to reduce the binary-specific code 2021-11-10 20:10:46 -08:00
transistor
1938fcc78c Added Z80 test with verified flag values 2021-11-10 16:05:16 -08:00
transistor
f6105de939 Fixed decode and excute issues with Z80 2021-11-10 13:28:31 -08:00
transistor
0836b6de8b Added decoding of most Z80 instructions, and additional bugfixes 2021-11-09 11:03:57 -08:00
transistor
d3efa072c2 TRS-80 Model 1 Basic is now working 2021-11-07 22:44:40 -08:00
transistor
6cb9b985ad Reworked Z80 flags 2021-11-07 16:28:44 -08:00
transistor
5bfde2bff0 Added TRS-80 simulation to test Z80 impl 2021-11-06 21:46:17 -07:00
transistor
7e999d4c3a Changed the way frontend works and added keyboard support 2021-11-06 21:44:25 -07:00
transistor
2c6a1a1b3a Added debugging and shift instructions to Z80 2021-11-06 21:18:45 -07:00
transistor
3da58c8d17 Added decoding of more of the DD/FD instructions 2021-11-06 15:08:03 -07:00
transistor
1a28208784 Added more Z80 instructions 2021-11-04 21:30:33 -07:00
transistor
7d2a4e4b44 Fixed m68k overflow flags (almost) 2021-11-04 21:29:52 -07:00
transistor
8ba506cc11 Added tracing mode to debugger 2021-11-04 13:32:51 -07:00
transistor
2cb21d7b8d Fixed a number of instruction bugs with m68k 2021-11-03 23:55:50 -07:00
transistor
b6cccea437 Added read only memory and debugger numbered continuations
There is also a breakpoint error, so that if a read-only memory
location is written to, it will escape to the debugger rather than
exiting the program.
2021-11-03 15:33:22 -07:00
transistor
bd5a798fa1 Fixed bug in ADDA/SUBA instructions 2021-11-03 15:30:38 -07:00
transistor
dc25a9f171 Started filling in Z80 execution 2021-11-02 20:58:03 -07:00
transistor
418bf2f141 Added image scaling for minifb 2021-11-02 20:57:19 -07:00
transistor
a87aab9b70 Modified write_beu*() functions and added little endian versions 2021-11-02 20:33:27 -07:00
transistor
e0ef1d8fd9 Added start of Z80 decoder 2021-11-01 22:06:40 -07:00
transistor
58fc9ac827 Moved the debugger out of m68k 2021-11-01 16:51:45 -07:00
transistor
a3a11f7459 Fixed some sprites issues 2021-10-31 23:01:56 -07:00