Dolphin Android Dual-Screen + GBA Link Public Release is now available!
Hi everyone!
The new Dolphin Android public release is now available!!!!!!
This update brings one of the most exciting Android-specific features I have worked on recently:
GameCube + GBA Link support on Android.
Compatible GameCube games can now detect an Emulated GBA connected to a GameCube controller port, similar to the original GameCube + Game Boy Advance Link Cable setup.
This public release also includes the latest improvements tested by Patrons, including GBA MultiBoot support for games that send their own software directly to the Emulated GBA.
Download
The public APK is now available attached to the post.
Official Dolphin pull request
I also opened a pull request to the official Dolphin repository with this Android dual-screen, Wii pointer, and GBA Link work.
You can check it here:
https://github.com/dolphin-emu/dolphin/pull/14745
Please remember that this is currently proposed upstream work. It is not part of official Dolphin yet, but I wanted to share the work with the main project and hopefully help bring these Android improvements to more users in the future.
Main features in this release
GameCube + GBA Link support on Android
GameCube to GBA MultiBoot support
External display support for the GBA screen
Single-screen fallback with in-game screen switching
GBA input mapping through GameCube controller ports
Improved controller focus behavior between GameCube and GBA
Optional Wii pointer touchpad support on external displays
External display detection
This is Android-only functionality.
GameCube + GBA Link
GameCube controller ports can now be configured as Emulated GBA.
This allows compatible GameCube games to detect a linked GBA, similar to the original hardware setup.
Example configuration:
GameCube Controller 1: Standard Controller
GameCube Controller 2: Emulated GBA
GBA ROM 2: The GBA game linked to Port 2
Important:
If the GBA is configured on Port 2, use GBA ROM 2.
If it is configured on Port 3, use GBA ROM 3.
If it is configured on Port 4, use GBA ROM 4.
The GBA ROM must match the GameCube controller port configured as Emulated GBA.
GBA MultiBoot support
This release also adds working GameCube to GBA MultiBoot support.
Some games do not require a normal GBA ROM. Instead, the GameCube sends its own software directly to the connected GBA.
This is used by games such as:
The Legend of Zelda: Four Swords Adventures
Final Fantasy Crystal Chronicles
For MultiBoot games, leave the matching GBA ROM field empty and configure a valid 16 KB GBA BIOS obtained from your own hardware.
When the GameCube sends its MultiBoot program, the GBA screen should start automatically.
How to configure MultiBoot
Open Settings > GameCube > GameCube Input.
Select Emulated GBA on the port required by the game.
Open that port’s configuration using the gear button.
Leave the associated GBA ROM field empty.
Go to Settings > GameCube > GBA Settings > BIOS.
Select a valid 16 KB GBA BIOS obtained from your own hardware.
Start the GameCube game.
For The Legend of Zelda: Four Swords Adventures, you can test it like this:
Set GameCube Port 1 to Emulated GBA.
Leave GBA ROM 1 empty.
Configure a valid 16 KB GBA BIOS.
Start the game.
After loading, the GBA screen should display:
LOOK AT THE TV!
For Final Fantasy Crystal Chronicles, select Multiplayer, even when testing with only one Emulated GBA.
External display support
If a valid external display is connected, Dolphin Android can show the GBA screen on the second display.
To enable it, use:
Settings > GameCube > GBA Link > Use External Display for GBA Link
With this enabled:
The GameCube game stays on the main screen.
The GBA output appears on the external display.
This is the best way to experience games that were designed around a GameCube and GBA working together.
Single-screen support
If you do not have an external display, the feature is still usable.
On single-screen devices, open the in-game pause menu and select:
Show GBA Screen
You can use the same option to switch between:
GameCube Screen
GBA Screen
This makes GameCube + GBA Link and MultiBoot testing possible even on normal Android phones and handhelds.
Controller behavior
Controller focus is handled separately between GameCube and GBA input.
If the same physical controller is configured for both GameCube and GBA:
GameCube controls are active while the GameCube screen has focus.
GBA controls are active while the GBA screen has focus.
On dual-screen devices, touch the desired screen to change focus.
On single-screen devices, focus changes when switching between the GameCube and GBA screens.
If GameCube and GBA use different physical controllers, both controllers should remain active at the same time.
Optional Wii pointer touchpad
External display use for Wii is optional.
A valid external display can be used as a Wii pointer touchpad, but only when the related setting is enabled.
This prevents Wii games from automatically taking over an external display unless you explicitly configure it.
Important notes
GameCube + GBA Link support depends on the specific game.
MultiBoot support depends on the specific game.
A valid 16 KB GBA BIOS is required for MultiBoot.
For MultiBoot games, the matching GBA ROM field should be empty.
For normal GBA Link games, the matching GBA ROM X field must be configured.
External display behavior may vary depending on the Android device.
Some games may require restarting or reconnecting the link after changing settings.
Thank you to Patrons
A big thank you to all Patrons who tested the early builds.
Your feedback helped validate the GBA screen behavior, controller focus, external display support, and MultiBoot functionality before this public release.
This feature took a lot of testing and iteration, and your support made it possible to release it in a better state.
Thank you
I am very happy to finally release this publicly.
Seeing GameCube + GBA Link, GBA MultiBoot, and dual-screen support working on Android is extremely exciting.
This brings Dolphin Android closer to supporting one of the most unique parts of the original GameCube experience.
Thank you as always for your support, testing, and feedback.
- Sapphire 💙
Comments (8)
I was waiting for something like this since I got the Thor, thanks so much! Can confirm it works great with wind waker :) the only problem I'm having is that retroachievements says it doesn't work with this version anymore...I don't suppose this is an easy fix is it?
It's because there's a new build! I will update it to match the latest release! Thanks for letting me know!
Thanks again for the awesome features! I was wondering, do you think you could add an option for e-reader support? The main PC branch of Dolphin already supports it, if you load the e-reader ROM as the GBA link game and right click the window it has an option like "load/scan e-reader card" that lets you select a card file to run. A few different games use it, but one of the big ones is Animal Crossing, if you go to the ATM looking machine in the Post Office you can use the feature there, it let's you scan cards for items, designs, and other stuff.
Yup thanks for this I will add support for it!
When using 3-button navigation on a dual screen device such as the Ayn Thor, the buttons remain on the bottom screen while a game is loaded with an emulated GBA as the controller. Is this something that can potentially be addressed in an updated pull request before code is merged?
Yup!, thanks for this I will test it and releas a fix!
Been meaning to ask but do you know whether online multiplayer is a possibility
Ummm it could be I have to read docs of how it could be done
