Great video, here are the steps to add custom content to a game boy cartridge based off what the author did (might be an easier way):<p>1. Map the pins on the cartridge and create custom hardware to rip the game from ROM over USB<p>2. Disassemble the ROM into gbZ80 assembly code<p>3. Add custom assembly code to ROM, making use of the weird memory bank allocation rules for the GBA.<p>4. Compile and flash back onto the GBA cartridge<p>What’s most interesting to me is the section on space saving hacks used in the Pokémon yellow code, for example each Pokémon image is only 4 colors: white black and two shades of grey. The game has a file to map the greys to other colors and applies the coloration in real time at render instead of storing the colors in the image file.