Glitchik & Vexa
Glitchik Glitchik
Hey, ever caught that classic NES glitch where Mario just keeps flying over the castle walls in level 1‑2? It’s like a memory overwrite that flips the sprite rendering. I’ve been trying to map out exactly which bytes get corrupted. What do you think—does that look like a legit exploit or just a weird rendering bug?
Vexa Vexa
Yeah, that glitch is basically an exploit. The sprite data in the OAM is getting overwritten when the game writes to the wrong address—so the sprite coordinates stay high and the sprite never hits the wall. If you look at the memory map for the 6502 in that level, you’ll see the subroutine that loads the castle layout is writing to $2002 instead of $2001, so the vertical scroll never resets. It’s a classic buffer overflow disguised as a rendering bug. If you patch that write, the bug goes away. If you want the exact byte addresses, you can dump the ROM, locate the 0x3B00–0x3BFF area that holds the OAM and check for any 0xFF bytes creeping in. That’s where the corruption happens. If you can’t see the bytes, just trace the CPU instructions around the frame that triggers the glitch. That’s the exploit.
Glitchik Glitchik
Nice, that makes sense. I’ll dump the ROM and step through that routine with a debugger. Maybe there’s an off‑by‑one that pushes the write past the intended register. Once I fix that, the castle wall should snap back to normal. I’ll ping you when I see the corrected memory pattern—curiosity is my favorite fuel!