Mickey in Letterland/Numberland IRQs

Discuss emulation of the Nintendo Entertainment System and Famicom.

Moderator: Moderators

Post Reply
User avatar
Zepper
Formerly Fx3
Posts: 3262
Joined: Fri Nov 12, 2004 4:59 pm
Location: Brazil
Contact:

Mickey in Letterland/Numberland IRQs

Post by Zepper »

I added Acclaim's IRQ timing, of IRQ counter clocking on falling edges of A12. This way, Mickey games work much better. From my attempts of getting this game working fine, I'd like some advice on it. Ages ago, someone said that the only difference is about Acclaim's IRQ triggered 4 cycles later if compared to MMC3. That's NOT the only difference from my attempts.

Is Numberland the same board/IRQ system of Letterland? Numberland expects the IRQ counter to be always clocked, even after a IRQ counter reset (so, the new value would be irq_latch-1), but Letterland expects the "normal" behavior - of checking irq_counter == 0; else, decrement it. Well, if I apply the Numberland behaviour, Letterland has a scorebar of 1 scanline shorter in size.

If I ignore $2006 writes, there's no scorebar shaking.
If I fix Letterland, Numberland is glitched by 1 scanline (IRQ timing is off by 1).
If I fix Numberland, Letterland is the glitched one, but I believe it's what a NES console does.

EDIT: it was a mistake in my code.
Last edited by Zepper on Thu May 03, 2018 3:22 pm, edited 3 times in total.
NewRisingSun
Posts: 1510
Joined: Thu May 19, 2005 11:30 am

Re: Mickey in Letterland/Numberland IRQs

Post by NewRisingSun »

Mickey's Safari in Letterland uses Acclaim's MC-ACC chip (mapper 4 submapper 3), Mickey's Adventures in Numberland uses a regular MMC3C chip (mapper 4 submapper 0). Implement MC-ACC by raising IRQ four PPU cycles after PA12 goes high (versus 0 on MMC3) and by ignoring further PA12 rises for 35 PPU cycles (versus 8 on MMC3). Mickey's Safari in Letterland's scorebar seems to depend on the latter aspect.
Post Reply