jsgroth / jgenesis

Sega Genesis / Sega CD / SNES / Master System / Game Gear emulator
MIT License
56 stars 3 forks source link

Color Panel Demo (PD) [C].gbc not displaying it correctly #33

Open benderscruffy opened 5 months ago

jsgroth commented 5 months ago

This demo seems to depend on precise timing for PPU mode 3 and CGB palette blocking. It alternates between two different CPU/PPU alignments and only one of the two alignments renders correctly right now.

jsgroth commented 4 months ago

I was able to fix this by adjusting how CPU/PPU execution interleave: specifically, executing half the PPU cycles before the CPU cycle and the other half after. However this is going to require a lot of testing to ensure that it doesn't break anything else - I already had to slightly delay the VBlank interrupt while doing this to avoid some games freezing at boot due to polling for LY=144 with the VBlank interrupt enabled.