Weekend project: prepping for a 4-e demo
February 23, 2026 at 1:50 AM (UTC)
Been dusting off 4-e, my Game Boy Advance homebrew program to emulate a Nintendo e-Reader specifically for Super Mario Advance 4 (a.k.a. the GBA version of Super Mario 3), because I want to give some of the programmers I work with a tour through it at lunch maybe next week.
It's literally 500-odd lines of code. I could explain every line if I wanted to. But the experience of building it was much more than coding—it was figuring out what the hell needed to be built in the first place.
The idea was simple: e-Reader cards for this game are not only hard to come by, but more than half of the over a hundred cards weren't even released in the US region. That leaves a lot on the table no matter how well-equipped we are.
Thankfully, the Japanese card data has been preserved and made available in the US region. And I actually have most of the US cards—all of Series 1 and 2 plus the promo cards that came with the game. But I didn't want to try to print the missing cards.
I've thought something like 4-e should exist for some time—something that sits on the other end of a Game Link Cable and pretends to be the e-Reader, sending card data without actually needing someone to swipe a card.
Writing those 500 lines of code was prefaced by a lot of research. I had to figure out the protocol by reverse engineering, I had to sort out how to communicate, and attach the card data… that was all the big parts of the project.
I've told this story before. Hell, I just linked to the telling of the story in the above paragraph. But I think what's really interesting is that all that research, all that trial and error, all that craft led to just over 500 lines of code. Plus another 200 for the web interface to attach the card data. That's not a lot!
And yet the value is huge—disproportionately so. I learned a hell of a lot. I enjoyed myself immensely. I improved at my craft. And I got access to something that didn't exist before, something that I really wanted.
That's the kind of thing I want to share. I want to give folks a tour through the thing. Show everyone—some of them just barely starting out in an increasingly uncertain career—what it's like for me to really dive in and build something. Spread around how happy the whole thing made me—not just the programming, but the digging, the planning, the imagining.