If you ever played (or had!) one of those Interactive Demo Discs for the GameCube, you might have seen some that featured playable demos of GBA games, particularly Mario Pinball Land or Mario vs. Donkey Kong. These were running in an "AGB Emulater" (sic) Nintendo seems to have made in 2003, that's shockingly accurate for something that runs full-speed on the GameCube, especially of its time -- this was the era of VisualBoy Advance, which nowadays is basically the ZSNES of GBA emulation (derogatory1). Nowadays there's a homebrew port of mGBA that pragmatically speaking you'd probably wanna reach for if you wanted to do some GBA-on-GC without using the physical GBA hardware in the GameBoy Player accessory, but as a piece of history I think Nintendo's is interesting.
I think a lot more people are aware of the N64 emulator Nintendo made for Ocarina of Time Master Quest (and the Zelda Collector's Edition with regular Ocarina of Time and Majora's Mask in it). I can't really find much information about the GBA one nowadays2, not just because search engines suck, but also because most of the contemporary GameCube hacking resources are just gone now. TehSkeen closed down in 2009, Eurasia in 2019... there's scarce wayback machine stuff, but nothing too substantial i could find3. There is a spreadsheet documenting places GBA-related stuff appears in GameCube games, including this emulator, as well as stuff like multiboot programs sent over the GC-GBA controller link cable: https://github.com/re-cache/iddlist/
The kiosk demo discs would generally contain a bunch of .TGC files, which are like... imagine putting a bunch of .iso files in a folder, and then putting that folder onto a CD-R and burning that. You can extract them from the demo disc and then muck with the header a bit to make it a stand-alone disc image without all the menus and cruft in front of it! There's not much on the disc image, just a border texture, a text file with the ROM's filename, the ROM itself, and of course the emulator program. Many of them just say "MARIO VS. DONKEY KONG" in the internal banner file (the name and icon normally read by the BIOS), even when they're for completely different games. I guess there was no reason to change it after a point, since you're never meant to see it anyway.
Back in the mid-aughts, I was (well, still am) one of those weirdos who dumps ROMs from their own discs/carts, so naturally I rigged up some batch scripts so I could right-click on a GBA ROM in Windows XP4 and Send to -> GameCube, which would effectively copy /b disc-before-the-rom.bin+%1+disc-after-the-rom.bin %temp%\output.gcm and then stream the resulting disc image to my GameCube over the broadband adapter (mostly for the cool-factor, but also the PC gamepad situation back then was pretty dire).
There are caveats, though. The GameCube has 24 MiB of RAM5, but GBA ROMs are random-accessible and could be as large as 32MiB; understandably, this emulator is limited to 16MiB ROMs at most. But perhaps more significantly, it has limitations surrounding its intended use case as a kiosk demo: There's a timeout where if you don't touch the controller for a minute, it wipes your save data and resets the game. And I use the term "save data" loosely here, because it's only ever held in RAM, not written to a GameCube memory card. There was a specialized version of this emulator in Pokemon Box: Ruby & Sapphire, but I believe that would write your save data to the cartridge in your linked GBA (I haven't used this myself though, so I'm not sure!)
Anyways, I was wondering about it recently since Goodboy Galaxy got me thinking about the world of GBA emulation again. Does the Wii U Virtual Console's GBA emulator share any lineage? What about Sloop, the one people rent with the more expensive Nintendo Switch Online subscription tier? Did anyone ever patch this to not have an idle timeout (perhaps by Action Replay code), or maybe even patch in some routines to copy the contents of SRAM to/from a memory card? I couldn't find many people talking about it, so I figured I'd be the change I wanted to see and make a Post.
-
in the sense that they're popular but are wildly inaccurate -- and also occasionally have security vulnerabilities that can endanger the host OS if they load a sketchy ROM! but i love the aesthetic of ZSNES and it's a product of its time, don't get me wrong.
-
save for like, a gbatemp thread where someone rediscovered it in a Naruto collection and was getting excited about it 10 years belatedly, but they never go anywhere with it. https://gbatemp.net/threads/naruto-collection-gc-includes-gba-emulator.346289/
-
closest i got was this description of a tool someone made that might've done something beyond just repackaging the disc image with a batch script, but sadly the wayback crawler wasn't a registered member of their site to have the download. http://web.archive.org/web/20190121182340/http://www.eurasia.nu/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=2218&ttitle=GBA_Emu+_(RC1)
-
okay, you got me, it was Server 2003, but i was using it on my desktop as though it was XP.
-
as well as 16 MiB of Audio RAM, which you can repurpose if you're a sicko: http://web.archive.org/web/20220707080334/http://www.gc-linux.org/wiki/Memory_and_Filesystems#Create_the_device_node_for_the_audio_RAM_driver