Project

General

Profile

Emulator Issues #7098

GBA Connectivity Master Issue

Added by JMC4789 over 5 years ago. Updated over 3 years ago.

Status:
Accepted
Priority:
Normal
Assignee:
-
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

For its time, The GameCube has a very unique feature of using Link Cables to connect its handheld counterpart, The Gameboy Advance, for additional game features. This feature was used mostly for additional features, transferring data and additional gameplay modes, and most of all, selling GBAs and link cables.

Usage and information:

For example, Pokemon Colosseum and XD both allowed you to battle in full 3D between two players that had GBAs. The screens kept all your battle options secret from your opponent, likely because they were too lazy to do what Pokemon Stadium 1 and 2 already perfected. Those two games and Pokemon Box also allowed you to transfer Pokemon into your Ruby, Sapphire and Emerald Pokemon games.

Wind Waker and others has the Tingle Tuner, connecting a GBA gets you extra options that enhance the main gameplay mode.

A few games used the GBA connectivity as their main hook. Four Swords Adventures and Final Fantasy: Crystal Chronicles are well known multiplayer games that use the GBAs as controllers and their extra screens for menus, notifications and even gameplay. Pacman VS and the aforementioned Pokemon Box go even further, using GBA connectivity as the sole way to play the games.

The Situation:

Due to latency concerns, it's likely impossible to connect a real GBA to dolphin. Even if we could, it'd require custom hardware for connecting and cause all kinds of headaches. The solution to that, of course, is to use a GBA emulator. As of this post, VBA-M can connect to dolphin, and a couple of the games that use these features work relatively well, and a few more at least connect.

Unfortunately, there are far more games with problems and even more that don't seem to work at all. To complicate matters further, because two emulators are involved, problems could be on both sides of the connection, VBA-M could have problems, Dolphin could have problems... or both!

The Problems:

Speed issues, in order for this issue to be closed, both emulators must run at full speed (or at least theoretically if on a fast enough computer.) Some games as of this posting run < 1 fps when set to default frame limiters. Messing around may improve, but never totally fix. Another example is if it requires one emulator to run far above full speed for the other to reach full speed.

Disconnection issues. It is not acceptable for the GBA Emulator to lose connection to dolphin.

Failure to connect issues. The GBA emulator or Dolphin lock up upon connecting to one another.

Further Information and Data

A total list of games that use the GBA Link Cable can be found here: https://wiki.dolphin-emu.org/index.php?title=Category:Game_Boy_Advance_%28Input_supported%29

A guide to connecting VBA-M to Dolphin (Edited from the Working Guide on the Wiki)

Game Boy connection support can be supported via joybus emulation. Such requires VBA-M (r947 or newer, latest should work) and a dump of GBA BIOS.
http://pastie.org/private/eojcrxqonhg35mziejka
1: Launch Dolphin and start the game you intending to play. Get to the point at which it prompts you to connect the GBA; or if it just intends it to be connected all along, just keep the game running.
2: In Dolphin, go to Config => GameCube and change the controller ports to GBA;
Launch VBA-M, go to Options => Emulator and uncheck "Pause When Inactive". Then, go to Options => Link => Joybus options, mark "Enable Joybus Connection" and use default settings (127.0.0.1)
3: After enabling joybus in VBA-M, Dolphin will freeze (don't panic, its OK!). Now load the GBA BIOS in VBA-M, after the splash screen Dolphin will recognize the joybus link and game will detect that a GBA was connected. Depending on the game, this can take upwards of five minutes. Enabling turbo mode in VBA-M and Dolphin (no frame limiter) can speed this up.

To connect other GBAs, just open another instance of VBA-M and repeat last instruction. Remember to unblock Dolphin and VBA-M in your firewall, some may block joybus link, leaving Dolphin stuck in connection screen. You can also refer to this video for more details.


Related issues

Has duplicate Emulator - Emulator Issues #11610: Pokémon Colosseum Bonus Disc, Jirachi GiftDuplicate

Blocked by Emulator - Emulator Issues #3177: FF Crystal Chronicles - Multiplayer Mode Works Incorrectly with EmulatorFixed

Blocked by Emulator - Emulator Issues #6728: GameCube Peripherals (VBAM, Bongos, etc) are unsupported in NetplayAccepted

Blocked by Emulator - Emulator Issues #7099: Nintendo Puzzle Collection GBA Connectivity works Improperly; Framerate IssueFixed

Blocked by Emulator - Emulator Issues #7100: Sonic Adventure 1 and 2 GBA Connectivity runs at 1 fps VBA sideFixed

Blocked by Emulator - Emulator Issues #7101: Four Swords Adventures + (NTSC-J) suffers VBA-M disconnects and low framerate in Tetra's Trackers modeFixed

History

#1 Updated by JMC4789 over 5 years ago

  • Operating system N/A added

#2 Updated by JMC4789 over 5 years ago

  • Status changed from New to Accepted

Moving this to accepted since this is a known issue with Dolphin.

#4 Updated by hayhurstpk about 5 years ago

What if you used the GC Controller Adapter by Mayflash with the GBA to GC adapter cord to connect the GBA to the PC? In the config for GC controller there is an option for GBA. Would dolphin check the other Mayflash port for the GBA? If not, could it be possible to add in that functionality?

#5 Updated by JMC4789 about 5 years ago

no GC Controller adapter works with the GBA/GCN connection. It's just not something the adapters can do.

#6 Updated by hayhurstpk about 5 years ago

Maybe the official one that is coming with the new Smash Bros will. We will have to wait and see.

#7 Updated by skidau over 4 years ago

I have made available a test build and am looking for test results. Please test this version out and post the results to the thread below. More information is available in the thread. This WIP build is a Windows build.
http://www.mediafire.com/download/qtgcgo0k6d4l15z/Dolphin_VBA-M_GC_GBA_link_test.7z

https://forums.dolphin-emu.org/Thread-green-notice-development-thread-testers-wanted-gba-gamecube-link-cable-test-build

#8 Updated by JMC4789 over 4 years ago

Pull Request 2139 https://github.com/dolphin-emu/dolphin/pull/2139 fixes some of these issues, but will not fix all of them. This issue will remain open, but some of the child issues will close.

#9 Updated by Specs over 3 years ago

I'm not sure whether this works with specific builds of both emulator but I can't get it to work in 4 player on 4swords with new or old builds. I can connect one virtual GBA with VBAM but after that it doesn't seem to detect the other VBAM windows and they all try to connect to controller port 1.

#10 Updated by JMC4789 over 3 years ago

You need to use DSP_LLE with a real DSP-ROM ripped from a GameCube or Wii.

#11 Updated by JosJuice 7 months ago

Also available in: Atom PDF