Broadband Adapter

From Dolphin Emulator Wiki
Jump to: navigation, search
Broadband Adapter
BBA.png
Developer Nintendo
Type Video game console add-on

The Nintendo GameCube Broadband Adapter (BBA) and the Nintendo GameCube Modem Adapter are a network adapter and 56k dial-up modem, respectively, for the Nintendo GameCube. They were produced by Conexant and made in the Philippines. The adapters fit flush into "Serial Port 1" on the underside of the GameCube and add an Ethernet port or telephone port to the side of the console, allowing the console to communicate with other consoles through a network.

As of 3.0-732, Dolphin's main branch has BBA emulation support. However, it requires a Virtual Private Network (VPN) in order to function. BBA emulation is not supported on OS X.


Games with BBA/Modem Support

Title Online/LAN Play
Homeland Online
Phantasy Star Online Episode I & IITrial Edition (Modem Only) Online
Phantasy Star Online Episode I & II Plus Online
Phantasy Star Online Episode III: C.A.R.D. RevolutionTrial Edition Online
Mario Kart: Double Dash‼ LAN
1080° Avalanche LAN
Kirby Air Ride LAN


How to use the BroadBand Adapter

Windows

  • Install OpenVPN TAP Adapter V9, included in the OpenVPN installer: OpenVPN download page
  • Go to start menu. Click TAP-Windows and then click Utilities. Right click Add a new TAP virtual ethernet adapter and run it as administrator. It will complete in a few seconds.
  • In Control Panel\Network and Sharing Center\Change adapter settings, select the TAP device and the adapter you use to connect to the internet.
  • Right-click and select Bridge Connections.


Linux

Install OpenVPN from your distribution package manager, then run the following commands (as root) to create the virtual interface and bridge it to your physical Ethernet adapter:

openvpn --mktun --dev Dolphin0 --dev-type tap --user john --group doe  # john:doe will be running the emulator
brctl addbr br0
brctl addif br0 Dolphin0
brctl addif br0 eth0    # or whatever your network interface is
ip l set Dolphin0 up
ip l set br0 up
ip l set Dolphin promisc on

Dolphin supports multiple bridge interfaces so you'll be able to bridge multiple Dolphin instances together on the same system. Dolphin on Linux currently supports up to 32 bridges and will attempt to connect to bridges labeled from Dolphin0 to Dolphin31 sequentially until one suceeds or they all fail to connect to. Be careful with this, since if you attempt to use multiple Dolphin instances using the same broadband MAC address then games will encounter issues. For an example of how to bridge two Dolphin instances together and have two games like Mario Kart: Double Dash play with each other.

openvpn --mktun --dev Dolphin0 --dev-type tap --user john --group doe  # john:doe will be running the emulator
openvpn --mktun --dev Dolphin1 --dev-type tap --user john --group doe
brctl addbr br0
brctl addif br0 Dolphin0
brctl addif br0 Dolphin1
ip l set Dolphin0 up
ip l set Dolphin1 up
ip l set br0 up
ip l set Dolphin promisc on

You'll also need to change your network settings to configure IP/gateway on br0 instead of the real adapter. The IP address of the real adapter must be set to 0.0.0.0. Linux doesn't support adding a wireless interface to a bridge as of July 2012 so you need a wired NIC for that to work.

In case you still want to use a wifi network for connecting, there is the option to create another tunnel-interface over a UDP connection across the wifi network:

openvpn --dev tap-dolphin --port 2626 --remote otherIP --local thisIP --ping 10 --ping-exit 60 --daemon
ifconfig tap-dolphin 0.0.0.0

The created interface tap-dolphin can then be used to add to the br0 bridge instead of eth0. This only works if the bridge br0 interface is set to promiscuous. The game expects a DHCP server to provide a suitable IP address on one of the participating machines, like:

dhcpd br0

NOTE: There is no encryption for the tunnel. Read the OpenVPN manpage for setting up the tunnel with encryption and/or authentication.

Configure Dolphin

Config -> GameCube -> SP1, select Broadband Adapter.

Now you may play any games which use the BBA.