Emulator Issues #173

GCN-GBA Emulation

Added by 4luC4rD.h3lls1nG over 12 years ago.

% Done:


Operating system:
Issue type:
Feature request
Relates to usability:
Relates to performance:
Relates to maintainability:
Regression start:
Fixed in:


It would be great to be able to access the extras you have when you connect
a gba in the 2nd controller port, I mean like the Tingle GBA in WW, or the
bonus in FFCC with the color of Moogle, etc. Thanks.


#1 Updated by ChaosCode over 12 years ago

there is a usb connector for gba?

#2 Updated by 4luC4rD.h3lls1nG over 12 years ago

No there is a cable that links a real gba and a real gamecube, but since dolphin is
an emu, you don't have to plug your gba in your pc, you'll just have another window
for the gba screen.

#3 Updated by ChaosCode over 12 years ago

so you want a gba emulator added to dolphin? isnt gc/wii enuff? :P

#4 Updated by Sonicadvance1 over 12 years ago

Would be better to add the functionality to VBA, but since we can't use anything
besides controllers on the controller plugs atm, it doesn't really matter

#5 Updated by hrydgard over 12 years ago

  • Status changed from New to Questionable
  • Priority changed from Normal to Low

Nobody has reverse engineered the interface yet, so it's not likely that we'll do it.

#6 Updated by 4luC4rD.h3lls1nG over 12 years ago

So, should I ask the vba-m devs if they can look at it ?

#7 Updated by ChaosCode over 12 years ago

sure, if you like.

#8 Updated by MasterPhW over 12 years ago

I will talk to mudlord about it, we will see, what will come from.
But it likely won't happen,
0r9 used to work on GBA-GC connectivity in 2006 IIRC but gave up after a while,
because there wasn't any docs and the rev-engeneering wasn't on that high level at
this time.

#9 Updated by MasterPhW over 12 years ago

So you probably know, Mudlord has left the emu scene for a while, so no help from
him. He also hadn't the needed hardware, so he could test, that was also a reason,
why he hadn't a chance to test.
I will also ask in the VBA-M staff section, if there's interest to create additional
a VBA cored plugin for dolphin, but I guess it's questionable, that it will ever

#10 Updated by nakeee over 12 years ago

  • Status changed from Questionable to Work started
  • Issue type changed from Bug to Feature request

We started working on it,
we'll be using vba-m for the gameboy side, and try to go from there.
some information about the protocol can be found at

#11 Updated by Anonymous over 12 years ago

here are some other links, maybe not on topic, but helpful/interesting: general gba link port info (mostly
multilink) UART communication tool more UART

here is a log of zelda: four swords. (using included patch)
controller 0 was a gc controller, controller 1 was gba, and the others were dummy

note-I cannot attest for the correctness of the patch :)

#12 Updated by marcus about 12 years ago

Is this still being worked on?

#13 Updated by GCNWIIUploader almost 12 years ago

is this finished yet?

#14 Updated by marcus almost 12 years ago

nowhere close. somebody worked on it once or twice, but it really is Priority-Low...

#15 Updated by Anonymous almost 12 years ago

not actively being worked on for a while...I got (really) fed up with vba in general.
this might change in the future, who knows ;)

#16 Updated by masterkillua123 over 11 years ago

If we can have the gba conection with dolphin...the game can be a bit more slow???

#17 Updated by sinni800 over 11 years ago

This HAS to be done, seriously.
Four swords adventures would rock so much. Even though people would see each other's
screens. But imagine it run on an HD screen, everyone having his gameboy corner.
Then it would rock.

#18 Updated by marcel.werner3 about 11 years ago

well, this could be a nice effort of team work between the dolphin devs and the devs
of a gameboy emu :D Something like that hasn't ever happened in the emu scene I'm sure ;)

#19 Updated by MofoMan2000 about 11 years ago

Indeed, the idea is a nice one, but the implementation would be immensely complex.
One problem I see is keeping the GBA core in sync with the Dolphin core, since both
could be running at different speeds. The idea of implementing clock cycle-by-cycle
checks would (theoretically) solve desync problems but would be very slow. Even so,
it would be really awesome, and a collaboration on this scale would be making history
in the emu world (wouldn't be the first time for this team ;) ).

#20 Updated by death2droid about 11 years ago

issue 2163 has been merged into this issue.

#21 Updated by shazmosushi about 11 years ago

Emulating GameBoy Player != GBA/GC Connectivity.

They are /completely/ different. Why merge them?

#22 Updated by nakeee about 11 years ago

p what are you talking about?
how do you think it works with real gameboy/dc?
I don't see why we would have any extra sync problems.

#23 Updated by XTra.KrazzY about 11 years ago

When this works the other issue will automatically be solved.

#24 Updated by shazmosushi about 11 years ago


OK I see. I was under the (completely wrong) impression that the GBA Player uses the
disc for software emulation - and that the hardware was only a shell for loading
cartridges and linkcable connectivity.

#25 Updated by Anonymous about 11 years ago

You guys are crazy; shazmosushi is correct.
The Gameboy Player has nothing to do with connecting a "real" gba via SI.
Plz think about it for a bit and explain to me why you think it does have anything in

#26 Updated by shazmosushi about 11 years ago

I think XTra.KrazzY are saying this:

A GBA needs to be emulated to utilize GBA Connectivity.

A GBA needs to be emulated to emulate the GBA Player hardware (as a GBA Player is a
physical GBA, after all).

If emulating the physical GBA Player worked, it should be trivial to add GBA
Connectivity, no? I mean, in true low-level-emulation - you could theoretically just
run a GBA BIOS/ROM then redirect all linkcable data to an emulated GC-Controller port
- and the emulation would take care of it all.

Of course, it will never happen like that :P, but I can vaguely see how these two
"issues" can be merged...

#27 Updated by MofoMan2000 about 11 years ago

I was more referring to the fact that a GBA connected to a controller port can be
used as a controller on the GBP. The two issues shouldn't be merged, this one is
about connecting a GBA to a controller port (right?) and the other one is about
implementing the piece of hardware that you connect to the bottom of the GCN and
accepts cartridges. You can see how these could be closely related yet they are about
completely different interfaces.

nakeee: about the syncing thing, I just assumed that for GBA connectivity
(especially for games like Zelda Four Swords) the two systems would have to be in
constant synchronized communication with each other. If that's not true this should
be much easier than I thought...

#28 Updated by shazmosushi about 11 years ago

My comment was trying to clarify XTra.KrazzY comment, not yours :P

On the possible syncing issue, VBALink has HUGE issues with syncing while linked. (It
uses multiple processes of VBALink.exe for what it's worth.) And since (obviously) a
link can't be established with the consoles constantly going out of sync, we don't
get very far :P

NO$GBA has got syncing in the bag though, once the cartridges are loaded (UI is
annoying when loading 2+ distinct ROMs), linking works flawlessly. That's purely due
to Martin Korth's awesomeness, I think.

#29 Updated by XTra.KrazzY about 11 years ago

You probably misunderstood my comment.

When GCN-GBA linking will be emulated properly, including GBA commands (which require
a GBA emulator to work in conjunction with Dolphin), the GBA player should work

All the functionality GBA player supports is rendering the GBA graphics on the TV screen.

#30 Updated by Anonymous about 11 years ago

We're talking about this:

GB Player is interfaced directly via the memory controller of the cube - and afaik,
no one has said for sure that it's just standard GBA hardware within (I don't have
one, either)
On the other hand, we have a retail gba which is connected via "JoyBus" as described
in GBATek.

To summarize, I'm still failing to see the relation, besides the fact that they both
mention the words "game boy".

#31 Updated by XTra.KrazzY about 11 years ago

well, I always thought the gameboy player hooks up the interface through the GCN-GBA

Who closed the otehr issue anyway?? (not me)

#32 Updated by Anonymous about 11 years ago

XK: it doesn't connect via GCN-GBA cable. simple as that ;p

#33 Updated by skidau about 11 years ago

The sync (if required) can be controlled using blocking TCP/IP calls. There's also
the possibility that the GC and GBA software have synchronisation code built in already.

I have experience in creating a network between two emulators running in two
processes. The basis of the network code was to use blocking TCP/IP calls.

#34 Updated by Avogadro81 about 11 years ago

Hi, just a question, maybe it has already been said but I'm not sure to understand
everything in the last comments because I don't understand english as I would.
So, I thought that the GCN was using the gba only as a pad with a screen whithout
using the "software" of the GBA so I thought it wasn't necessary to emulate a gba nor
to sync it with dolphin. For me it seems to be just a mini-game in the gamecube game
which uses an other standard output than the tv, it seems to use the cable gc/gba to
send video and use the gba as a pad then IF it works like that, we don"t need
emulation but just something to display a little window as a gba screen and to use
the gba button as a pad.

I'm not sure to be understandable so to say it simply :
Mustn't we consider the gamecube as a computer with 5 screen at the same time:
-the master (TV)
and four others (the 4 gba screens)

so am I good or not ?

#35 Updated by Anonymous about 11 years ago

XK: it seems we are both partway correct.
while browsing gbatek today, I noticed he has a section on the gba player that I
probably deemed too insignificant to read before.
but it's pretty interesting, at least because it shows "hard" evidence about how it
Basically, the it is connected via the aram expansion. The question is whether there
is memory local to the gameboy player, or if it writes directly to the aram/mram of
the gamecube.
I think that since the software likely "forwards" pad input to the device, there is a
reason to believe that it has local memory.

Assuming that is the case, the next question is whether or not it has more memory
than a standard GBA.

So implementation is probably "just" stapling the mem interface of a certain GBA
emulator (plus extra ram?) onto dolphin's aram expansion - I bet the software handles
the rest.

#36 Updated by XTra.KrazzY about 11 years ago

so they both need a GBA emulator to be integrated to dolphin...

What ever happened to vba-m again?

#37 Updated by OskensoKashi about 11 years ago

@39 it's still an active project, and a fantastic one at that.

This has got to be the coolest emulation project i've ever seen :P (Dolphin)

#38 Updated by XTra.KrazzY about 11 years ago

Some WIP work has been shown. I can confirm that it works. (WIPfully, of course)

#39 Updated by Anonymous almost 11 years ago

  • Status changed from Work started to Fixed

ya, it works...might make it easier to use from a user standpoint in the future, when dsp is faster :)

#40 Updated by sinni800 almost 11 years ago

It works? For me it absolutely does NOT. But my post on the forums got ignored anyway.
(Second to last post here: )

By the way, what is the exact reason the low level DSP is needed?

#41 Updated by Anonymous almost 11 years ago

Maybe if you'd try reading my posts (ex:
70329.html#pid70329 ), you'd know why dsp lle is required. Hell, you might even get it working if you follow
directions! Imagine that.

#42 Updated by sinni800 almost 11 years ago

I did read the complete thread, I don't know I missed that.

But hey, I tried everything mentioned there and it didn't work, sorry.

RC1, some SVN version, 2.0 and the newest SVN version all don't work. RC1/old SVN
gave me nothing at all. The newest SVN version and 2.0 crash after a while.

I can try compiling the SVN with debugging and tell you the code lines it crashes on.
I don't know much about c++ but would this help?

#43 Updated by tuopak over 10 years ago

It would be nice to be apple to connect real life gba to emulator using official gba-gc link cable and linking it to pc with gc-pad to pc -adapter

#44 Updated by MofoMan2000 over 10 years ago

That would be nice. However there are a few problems with that. First, there are a great many different GCN/USB adapters. Second, if the drivers of those adapters don't support it, there's essentially no way. I know my adapter doesn't support the GCN/GBA cable.

#45 Updated by Anonymous over 10 years ago

It would be possible, you only need a bit of software to sit on top of the adapter and handle tcp communications to/from the device.

#46 Updated by TerminalMontage over 10 years ago

I hope they do this. I really want to play FFCC with my friends online.

#47 Updated by Lunaofthemoon almost 10 years ago

The reason I'd like GBA controller features is because I can't play FFCC multiplayer without it :(

#48 Updated by trombonist777 over 9 years ago

I'm curious as to if there is currently a way to link VBA and Dolphin. I'm not even able to figure out VBA linking itself as it is (which sucks for me :( )

#49 Updated by SpiderTECH611 over 9 years ago

BTW just something to note. I was just on VBA-M's site and since march of 2011 they have removed dolphin compatibility.

#50 Updated by Anonymous over 9 years ago, they didn't remove the functionality. That is just an "issue" on their tracker (which has been closed).

#51 Updated by SpiderTECH611 over 9 years ago

Oh my bad. I guess I wasn't reading, sorry must have been tired last night. I thought I was reading their release tracker. I don't go on there site much so got confused... Oops. :)

#52 Updated by Rena over 8 years ago

"here is a log of zelda: four swords. (using included patch)"


#53 Updated by atemvegeta over 8 years ago

Guys I am trying to connect Dolphin with VBA-M in order to transfer the Jirachi from Pokemon Colosseum Bonus Disc to Pokemon Ruby. But when both emu are connected, VBA-M is running really slow, and Dolphin say that the game pack is not inserted properly. Thus Jirachi is not transfered.

Has there been any way discovered yet for how to fix that problem? Was someone able so far to transfer Jirachi with emus and succeded?

#54 Updated by alexito1molon over 8 years ago

Please I beg : ( everything is possible if we try... I cant buy a GC or GBA SP so I beg you to work on connectivity between the VBA and Dolphin emulator, I am a big fan of pokemon and its a dream for me to be able to transfer my team to pokemon colosseum or XD games and my ruby saved game : ) if I can give any help just ask me. Thanks

#55 Updated by mark.biggiero about 7 years ago

2 years later... any news?

#56 Updated by joshua.drake about 7 years ago

Has atemveg tried simply running the on faster hardware?

#57 Updated by almost 7 years ago

people have gotten it to work in videos, I don't own a windows computer and all the vba-m work is only windows so I tried wine with the joybus network but there must be some error in the wine code. I will try it with vmware but it seems possible at this point for people have done it before, check youtube!

Also available in: Atom PDF