News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: Cross-Platform Linked GBA Games  (Read 269 times)

PowerPanda

  • Jr. Member
  • **
  • Posts: 70
    • View Profile
Cross-Platform Linked GBA Games
« on: June 28, 2019, 10:19:46 am »
I'm not looking to make this happen, but I'm wondering if anyone has ever tried to tackle the GBA games that could either have content unlocked or unlock content in other games by being linked up. The 2 applications I can think of this happening are:
1. GCN/GBA Link Cable - https://en.wikipedia.org/wiki/GameCube_%E2%80%93_Game_Boy_Advance_link_cable
2. DS/GBA game in the same DS System - https://nintendo.fandom.com/wiki/List_of_Nintendo_DS_games_with_GBA_connectivity

I think for some games, the unlocked content is already within the code, and the GBA game just unlocks it. For other games though, like Megaman ZX, I'm wondering if the code is there, or if it's actually loading the code off of the GBA game.

FAST6191

  • Hero Member
  • *****
  • Posts: 2540
    • View Profile
Re: Cross-Platform Linked GBA Games
« Reply #1 on: June 28, 2019, 12:37:49 pm »
Most GBA-GC stuff just needed the GBA and sent a little multiboot ROM to it. Some things did fish out saves (Sonic Adventure for the Chao garden thing is usually where most come unstuck, that and pokemon) for the same save type reasons I cover in a minute. I don't know of any that actually ran the GBA ROM and communicated as if it were a serial cable but it could be a thing, some I believe did check for the game though. As a general first pass test if it asks for a cart and asks for you to hold certain buttons when turning on the GBA then it is probably forcing multiboot.
To this end you will probably have to target the GC game rather than the GBA ROM to do many things here, the exceptions being for stuff like Final Fantasy Crystal Chronicles which had a multiplayer mode that forced GBAs to be there and used the GBA screens to do things for the game.

Most DS games with such things just checked for the header of the GBA game and unlocked things accordingly, which means a cheat or a very simple assembly tweak would be able to unlock most things. About as interesting as it got there was I think only the Japanese build of the first DS advance wars supported the 2 in 1 Japanese edition of Advance Wars.
The DS remake of Megaman Battle Network 5 had a whole bunch of things for a whole bunch of games (there being many megaman battle network titles on the GBA, and for some reason it also liked the Boktai/Solar Boy Django series), and could also read the saves of some of those to get some nice items out beyond the basic "is present" unlocks. There was a thread around here a while back looking to unlock everything but I don't know how far they got in the end.
Pokemon could fish out saves too for the PAL park thing.
I think the DS entry of Boktai also supported the GBA cart to use its solar sensor to get some boosts in the game.

For the header thing then on an old GBA flash cart that essentially appears as a cart if you write the ROM without any kind of loader I tried a whole bunch of games but just the header of them and they unlocked just fine. Theoretically they could fish some code out from it (it is 32 megabytes of internally memory mapped space, quite fast at that, in DS mode) but I have not seen anything outside of proof of concept ROM hacks and a few bits of homebrew.
Older builds of a few GBA slot carts also had options as far as GBA link. I am most familiar with the EZ4 where older versions of the device could run an older kernel, put the GBA game on the NOR and boot the DS game in its DS mode (a mode missing from later runs, also DS game patches for the EZ4 ended in 2009 when there were still several more years of DS games to come, said patches are also far more extensive than the anti piracy patches you might find DSi and 3ds users playing with today).

For those games that wanted a save then that poses problems -- the GBA has three main save types (other than no save) which are FLASH, SRAM and EEPROM. GBA flash carts predominantly use SRAM which has a whole other read protocol, not to mention each of those types has multiple sub revisions which can complicate matters further.
A guy named cory1492 made a patch for a variety of popular and not so popular flash carts that allowed the DS pokemon games to fish a save from the SRAM of a flash cart rather than the Flash it expects. Desmume also has abilities here to fake a GBA game, though I am not sure if they removed it from current versions.

The only other "link" type things I know of are for some Asia exclusive franchises like Plaston Gate and Legendz, for which "think Skylanders or Disney Infinity but several years before either of those".