Billy Hatcher and the Giant Egg contains a feature called “Joycarry Games” similar toAnimal Crossing’s NES game “Advance Play” feature. I wantedto extract the ROMs for these mini-games just like I didfor Animal Crossing.Doing so wasn’t as straightforward; the ROMs aren’t available directlyin the disc filesystem like they are in Animal Crossing. To extract the ROMs I ported anexisting Rust program to Python (“rewrite-it-in-Python”, anyone?) that receives and saves the ROMs fromthe game running in Dolphin using the GBA TCP and Joybootprotocols.These games are simple, and I only really played one as a kid: Puyo Pop. The gameis similar to “Dr. Robotnik’s Mean Bean Machine”, which was a favorite of mine.This was the only way I could take that game “on-the-go”, often downloading the game to myGBA before road trips to see my grandparents.Joycarry Game menu in Billy Hatcher with “ChuChu Rocket! Challenge” selectedThe Python program is a port of this MIT licensed Rust program byIcedude907 with added functionality tosave the EWRAM data after the ROM has been transmitted to the programvia GBA TCP. I’ve distributed this program via a GitHub Gist.Using the program requires the Dolphin emulator and dumping the ROMof the Billy Hatcher GameCube disc you intend to download Joyboot ROMs from.In the case of Billy Hatcher you also need to have unlocked thefive different eggs hidden inlevels. The fastest way to get around this isto download a 100% save file for your game’s regionand place the file into Dolphin’s save file folder.To extract the ROMs, launch Dolphin and set the controller in port 4 to be “GBA (TCP)”; Billy Hatcherin particular only works if the GC-to-GBA link cable is pluggedinto port 4. Start Dolphin playing Billy Hatcher, navigate to theworld map, and then select “Joycarry Game”. From here you can selecteach game to be downloaded to our “GBA”, and the program shoulddisplay information about receiving the ROM data.Language setting and Joycarry ROMsSomething I did not know was that two of the five Joycarry ROMs,“ChuChu Rocket! Challenge”and “Puyo Pop”, have translations for both English and Japanese. Which JoybootROM translation is sent to you depends on the game regionand which language is selected in the menu.“ChuChu Rocket! Challenge”“Puyo Pop”The NTSC region (GEZE8P) of thegame only supports English (no language selector in options)and only has English Joycarry ROMs. The NTSC-J region (GEGJ8P) supports Japaneseand English, sending the corresponding Joycarry ROM depending onwhich language is selected. The PAL region (GEZP8P) supports English, French,German, Spanish, Italian, and ... Japanese! I checked each language,and the English Joycarry ROM is sent for all languages except Japanese.Here are the SHA256 checksums of each ROM by game title and language: ROM Title Language SHA256 CHU2 AGB EN 131258b587b4724ea06a5a0fbdce4d6ec05c8e63ef6b10a6000dfa8efd57c435 CHU2 AGB JP 5adc33400eead9ce3d327377b7ce150a48e632abc2494370acb0b6ed61c1337a NIGHTS EN 944fadb8fac3abf8c7db38f837677be3d3a664c56e6c8eb58e9e1949a10ac5f9 BILLYHATCHER EN 128afd1c40a65831bd013c2c91abdadd816155df2b1a5456a7af6d260d48108e BILLYHATCHER EN 2af4d14151981c2341c193cd2cc3d38e10dee1336ebedcd264f8e8bcb5e1f87e MINNADE PUYO EN e769bd190bee6735a97cd239f587e3921108073a6f20ab20b8d62ba9c447cc12 MINNADE PUYO JP 521f6a2a0876f2685205c0cfbfde934c14b8b3a6b5c173f4aa9fdfe93aed80a5Happy Halloween! 🎃👻Thanks for reading ♥ I would love to hear your thoughts! Contact me via Mastodon, Bluesky, or email. Browse the blog archive. Check out my blogroll.