CNROM (mapper 3) graphical glitches

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
CNROM (mapper 3) graphical glitches
by on (#214163)
Hi!

Im developing a nes emulator. I can run NROM and UxROM succesfully. CNROM seems easy, and i can "play" CNROM games but all my CNROMS (circus charlie, friday13th and more) are experimenting graphical problems (glitches). I think my routine (8kb bankswitching is Ok)...

Only one detail. Im not using pointers for it, so im doing bankswitching by "copying 8kb chunks" to vram. Could be it?

So in your experience, Why CNROMS could experiment graphical glitches?
Re: CNROM (mapper 3) graphical glitches
by on (#214193)
I'm no expert, but being a developer which has used CNROM extensively, maybe it has to do with the fact that bankswitching can be done *at any time*, even during rendering, as it doesn't involve writing to the PPU at all. What kind of glitches are you getting? Maybe the 8Kb copies are taking longer than expected during a tight and timing sensitive routine such as generating the display?
Re: CNROM (mapper 3) graphical glitches
by on (#214347)
Post a picture if possible. Your banking routine could be flawed or your rendering. Copying data is not a good idea. It's possible you are copying over and corrupting data maybe. Or post code from some of your routines.