eggvance

eggvance is a fast and accurate Game Boy Advance emulator written in C++. Its processor grew instruction by instruction in conjunction with the test suite to ensure a solid implementation with all edge cases covered.

Pokémon Emerald hall of fame
Pokémon Emerald hall of fame
ImGui user interface
ImGui user interface

Other components of the system soon followed, and the emulator got to a stage where it was able to run most games and demos you threw at it. Around that time, I spent a weekend porting it to WebAssembly. Audio emulation was something I had been putting off until the end due to my lack of experience, but I managed to do it eventually.

Pokémon Emerald battle frontier theme

The final year of development went into performance and accuracy improvements. I released version 1.0 around 2.5 years after the initial commit and wrote a couple of progress reports along the way. If you're interested in that kind of stuff, you can check them out here.