Closed GoogleCodeExporter closed 9 years ago
Indeed, just tested on real hardware and it does not flicker like that (well,
for me, only the bottom text is flickering in genesis plus, the rest is fine).
Original comment by ekeeke31@gmail.com
on 6 Nov 2010 at 10:49
yeah, only the bottom text is flickering for me as well, not the whole screen.
Original comment by gora.pat...@gmail.com
on 6 Nov 2010 at 11:06
Ok, I figured this one.
This is a little bit technical so it's only for those interested in Genesis
emulation, really.
It happens in any emulators that does not handle DMA access line-by-line (as on
real hardware). When a DMA is triggered, most emulators perform all the writes
immediately then lock the CPU during the DMA access time. On real hardware,
only a fixed number of writes is allowed per line of display so the writes are
not done "immediately".
This works fine as most games does not do DMA during active display and when
they do, they do not try to modify the active display with the DMA writes.
This game however does this: every 10-12 frames, it clears the plane that holds
the text bottom area then fill it again, using two consecutive DMA operation.
This is their method used for displaying the blinking "Press START" text.
However, the first DMA is triggered during active display and if you process
all the writes immediately, the bottom text will not be displayed. On real
hardware, the writes that clears the bottom area are delayed and would actually
be processed AFTER this area has been displayed, so you don't get any
flickering.
I knew I was not emulated it accurately but as now game seemed to require igt,
I left that for later. I guess it's time to improve the accuracy level again,
let's hope it does not break any games.
Original comment by ekeeke31@gmail.com
on 6 Nov 2010 at 5:09
Original comment by ekeeke31@gmail.com
on 4 Dec 2010 at 5:24
Original issue reported on code.google.com by
gora.pat...@gmail.com
on 6 Nov 2010 at 7:10