diff options
author | Michael Pavone <pavone@retrodev.com> | 2020-04-13 20:43:25 -0700 |
---|---|---|
committer | Michael Pavone <pavone@retrodev.com> | 2020-04-13 20:43:25 -0700 |
commit | 1fa2143c1aee80784f4a9aca1e9a544fc71584c0 (patch) | |
tree | 6c8824934620aa4df9f6855b74683f9c623ccc5a /vdp.h | |
parent | 325475eb93f8b0ec9eaa1bc75344325b6f30dcd4 (diff) |
Don't apply address and cd register changes to the 'live' registers until pending flag is cleared, but do preserve the upper address bits in the latch. Fixes regression in Overdrive 2 while preserving fix to Mona in 344 bytes
Diffstat (limited to 'vdp.h')
-rw-r--r-- | vdp.h | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -174,6 +174,7 @@ typedef struct { int32_t fifo_write; int32_t fifo_read; uint32_t address; + uint32_t address_latch; uint32_t serial_address; uint32_t colors[CRAM_SIZE*4]; uint32_t debugcolors[1 << (3 + 1 + 1 + 1)];//3 bits for source, 1 bit for priority, 1 bit for shadow, 1 bit for hilight @@ -181,6 +182,7 @@ typedef struct { uint32_t frame; uint32_t vsram_size; uint8_t cd; + uint8_t cd_latch; uint8_t flags; uint8_t regs[VDP_REGS]; //cycle count in MCLKs |