I can’t prove to you with graphs and logic that the Game Boy Advance was the best handheld ever made. Mostly because I know it was the DS, and I would accidentally end up proving that. But shhhh, forget that, today is the GBA’s day. I adored my see-through pink monstrosity, and then I adored my ridiculous clamshell GBA SP. (I somehow stopped myself from buying the Micro.)
Kotaku’s John Walker
Happy birthday to the GBA! It launched in the US on
June 11th, 2001. I’m always interested in debates around the “best Nintendo handheld,” there’s good arguments for all of them I think!
The linked article is more a personal retrospective on the GBA and its library by Kotaku’s John Walker. Definitely a wonderful trip down memory lane. 🎂
But first, let’s talk a little about some statistics. The final version in that tweet is actually 68 lines of code (I tweeted the wrong number!), each line less than 150 characters long, for a total of 9956 bytes. If you ignore whitespace and comments, it comes to 4720 bytes. That’s too large for the International Obfuscated C Code Contest, but pretty close.
This is quite an in-depth post on making an absurdly-compact new GB emulator. Making one is actually a lot of fun and I recommend the coders out there give it a try. 🙂
From 2017, this coder covers why (and how) he created a new GB emulator using Java called
. Coffee GB
So why did I spend all this time trying to write it? I treated it as a programming riddle (or a series of riddles), quite similar to those you can find on the
Project Euler. It’s a complex, self-contained problem that can be nicely splitted into stages (as I did in the blogpost) and every stage, once completed correctly, gives a rewarding result. Maybe because of these results I got quite addicted to the project itself. Tomek Rękawek
You can find
the source code on GitHub. Important resources mentioned are The Ultimate Game Boy Talk and the Unofficial Game Boy CPU Manual, which may get their own posts in the future. 😊