Been wanting to try my hand at writing an emulator for the Gameboy Advance that could play arduboy .hex files from a flash cart. If successful, the flash cart should be able to hold every arduboy game made a few times over, and should look rather interesting on the old screens. Only issue is I have next to no experience with building emulators or coding with the GBA So this could be ultimately fruitless.
However, I’m confident the GBA can handle arduboy instructions from a hardware perspective, and I’ve seen people make new emulators for ez-flash omega(arguably the best flash cart on the market) firmware, so that NES, Game Gear, SG-1000, Master System, etc games could be played just by copying the unmodified rom of whatever game from those consoles to the SD card. Then they could be selected like any other GBA game. This is the ultimate goal. Write a version of the ez-flash omega firmware that can emulate arduboy, so that an arduboy folder can be placed on the SD card and any game can just be selected to play it.
Normally I would wait until I’ve made some progress already before posting about a project like this, but since I don’t have much experience I thought I’d share the idea, in case someone else on here knows a thing or two about anything related or if someone else wants to try their hand at it first!
Some good resources so far that I’ve found:
GBAdev (collection of gba devevlopment resources)
TONC (library and full guide to gba coding, not wonderfully written, but very in-depth)
GBA Hardware Architecture (lots of information on GBA specs)
Arduboy emulator (@obono 's, written in java)
ProjectABE (another arduboy emulator, written in html5)
C++ arduboy Emulator (haven’t tested, but is c++)
EZ-Flash Custom Firmware Thread (started as a simple theme upgrade, but turned into much more over time! Is able to use a myriad of file types thanks to PogoShell plugins)
EZ-Flash CFW Source (source, includes plugins and such)
PogoShell (archived website where pogoshell comes from)
EDIT: I’ve also decided to host the last version of the PogoShell source code available on my github, as the license permits this and right now the source code can only be found through an archived version of the author’s website. So here’s the source code on my github if you want to take a look. Most of it is a little beyond me but I’m sure I’ll keep picking it apart until I understand it (see y’all next decade )