Closed GoogleCodeExporter closed 9 years ago
Indeed, i never noticed this before so i am not sure if this was introduced
recently or was always the case (if you could test it with old releases, this
could help).
It does not happen when the console is started in PAL mode which seems to
indicate an issue with VBLANK timings (probably DMA during VBLANK), I will
investigate it.
Original comment by ekeeke31@gmail.com
on 19 Jan 2013 at 10:06
for the record, it is caused by a VRAM cleanup operations being interrupted by
vdp interrupt, which cause all later VRAM writes to be ignored after the
interrupt callback returns
depending on when the VRAM write operation was initiated in the frame you got
more or less garbage on screen.
the problem is that the game is kinda bugged and works on real hardware by
luck, because it does not sync itself with anything related to vdp before
starting the operation, so having instructions or memory access timings just a
bit off or delayed can cause the issue to appear or disappear, which is why it
doesn't happen the same in all emulators
i can make it work by hacking the timings but i would prefer not and instead
find what is off or delayed in the emulator and what 100% accurate timings
should be
Original comment by ekeeke31@gmail.com
on 21 Feb 2013 at 8:14
Took me some time but it was actually fixed by handling FIFO timings properly
in the case of invalid write access.
fixed in r762
Original comment by ekeeke31@gmail.com
on 22 Feb 2013 at 10:44
Original issue reported on code.google.com by
csatec...@gmail.com
on 19 Jan 2013 at 3:01