5 ms·
I have always wondered if it's possible to run Gameboy Advance games in DS Mode (and thus access the DS mode hardware) and patch the GBA Link Cable serial comms
by someperson 6y ago
I have always wondered if it's possible to run Gameboy Advance games in DS Mode (and thus access the DS mode hardware) and patch the GBA Link Cable serial comms to instead use the Nintendo DS's Wi-Fi connection.
Conventional wisdom says it's impossible to run in AGB Compatibility Mode and retain DS functionality, but I still wonder if it could be done.
Also given the ancient cryptography, I wonder if it's possible to crack DS Download Play and introduce a new "Wireless Multiboot" exploit that uses real DS hardware similar to the early exploratory attempts using "NDS WifiMe" before flashcards become commonplace. The hardware only has ~256 kilobytes of RAM (and doesn't even use a standard Wi-Fi stack if I recall correctly), but it would be SUPER COOL from the perspective of getting hardware to do something never thought possible.
One use-case for this hack I imagine is playing Zelda Four Swords Adventure played on a Wii / Wii U (via "Nintendont"), with the game patched to use Wi-Fi for the communication to the Gameboy Advance controllers rather than a Link Cable. The players won't need to have a flash card each, but could boot up the payload using DS Download Play on any DS variant (including DSi and 3DS).
- pkamb 6y agoGameCube BBA emulation via the Wii's stock networking was recently added to Nintendont: https://github.com/FIX94/Nintendont/issues/144 https://github.com/FIX94/Nintendont/issues/144
- simlevesque 6y agoIt works for the Wii U too. Note the "(v)Wii", vWii is the Wii inside the Wii U.
- DCKing 6y ago> I have always wondered if it's possible to run Gameboy Advance games in DS Mode (and thus access the DS mode hardware) It is! GBARunner2 is a DS homebrew hypervisor that can run (a lot of) GBA games in DS mode [1]. It can e.g. be used to run GBA games on the Nintendo DSi, which lacked the GBA slot and AGB mode, or run GBA games directly from a DS flashcard. > and patch the GBA Link Cable serial comms to instead use the Nintendo DS's Wi-Fi connection. It isn't - practically at least. There have been attempts and it works as a proof of concept with special builds of GBARunner2 [2]. Sadly the game logic in almost all GBA games does not appear to accept the huge added latency for wireless connections, compared to the almost nonexisting latency for a serial cable. This is also a problem for GBA emulators like mGBA, which only support game linking on the same computer and not e.g. on the network [3]. Games made only for the Link Cable (and not the niche Wireless Adapter) just can't deal with network latency. [1]: https://wiki.gbatemp.net/wiki/GBARunner2 https://wiki.gbatemp.net/wiki/GBARunner2 and https://github.com/Gericom/GBARunner2 https://github.com/Gericom/GBARunner2 [2]: https://wiki.gbatemp.net/wiki/GBARunner2/Link https://wiki.gbatemp.net/wiki/GBARunner2/Link [3]: https://github.com/mgba-emu/mgba/blob/0.8/README.md https://github.com/mgba-emu/mgba/blob/0.8/README.md
- saagarjha 6y agoOoh, very cool! I remember using a very experimental emulator at some point a couple years back and it was sadly too broken to be usable (likely resource constraints?). Will have to dig up the old DS Lite and a flashcart to try this one out.
- DCKing 6y agoJust be aware that it sometimes requires some per game tinkering with the four different GBARunner "flavors" to get things to work, and some games have annoying problems regardless of the flavor you pick. Overall it works well enough that it's a very convenient thing to have on your DS though :)
- someperson 6y agoVery cool, thanks for the links! Sounds like the easiest way to solve the problem you describe and play multiplayer Zelda Four Swords Adventure over the internet (without modifying the code itself) is for the "server" (Gamecube game) and the client (the Gameboy Advance console) to be physically closeby and then stream the (emulated) GBA and (emulated) Gamecube video output framebuffer across the internet using something like the SteamLink so that the 100ms of latency would not cause the Link Cable to timeout.
- DCKing 6y agoYeah this is going to be very hard to accomplish unfortunately. I'm guessing the only possible option to do this over the internet at the moment is using Dolphin and VBA-M on the same machine and some complex streaming setup. Dolphin supports linking to the VBA-M GBA emulator, and while this link setup is prone to bugs there are reports it works with Four Swords Adventures [1]. [1]: https://wiki.dolphin-emu.org/index.php/The_Legend_of_Zelda:_Four_Swords_Adventures https://wiki.dolphin-emu.org/index.php/The_Legend_of_Zelda:_...
- someperson 6y agoYeah I've played through about 20% of Four Swords Adventures with a PC running Dolphin and 3 emulated VBA-M instances, a TV, and 3 monitors, and 3 game controllers. Once up and running it's a great experience, but requires a lot of planning and setup (just like running on real hardware). It's a shame so few people get to play that kind of game. It's a very social experience and exactly what the Wii U was intended for.