Gameboy Advance projects

Free, simple, portable GBA Multiboot link cable

This is an 8051-based MBC cable for the GBA. Please see Steve Lynch's AVR port of this cable code.

The cable interfaces to a PC (or workstation) serial port at 115kbit/s, and contains a DS89c420 microcontroller. The job of this is to accept two bytes from the PC, and sent it to the GBA in its weird 16bit serial format; when it receives a reply from the GBA, it is sent back to the PC.

It does more or less the same thing as Jeff Frohwein's MBC2 cable, and Miguel Angel's "Intelligent multiboot" cable - formats data from the PC. However it has an RS232 interface, not a parallel printer interface. As such, it is more flexible and will run from any machine with any OS (that runs the software ;). The software (currently x86 Linux) simply needs to talk to the serial port, no low-level hacks are needed.


Reliable operation! Downloads a small 2nd-stage booter from the PC using Miguel's protocol code, then sets up standard UART communication from the GBA (the cable falls silent and 'disappears' from the cable, doing passthrough from GBA to PC); the bootloader then downloads the actual code into IWRAM at the full 115k2bits/s. The download speed is very good, running nearly flat-out.

Schematics and software

To be drawn up nicely. I may even draw it on paper & scan it, since that looks nice *lol* A crappy ASCII-art schematic is in the "Matt's Serial Multiboot Cable" (or MSMC) archive below.

Download MSMCcable-1.0.tgz (20k)

This code is rather 8051-specific. Please port it to your favourite microcontroller (PIC, AVR, 4040 etc...)!

You may need an 8051 monitor, check out PJRC for PAULMON2.

Firedemo (MattDemo3)

Download stereo vsn. | Download mono vsn. (both ~128K)

This has been tested on VisualBoy Advance (with SDL under Linux) and on real hardware (using my MB cable ;) The image is MultiBoot-capable, but should also work from flash.

Two versions are here: the stereo version works great on real GBA hardware, but craply on VisualBoy Advance. Until I find out why, the mono version works OK on the emulator so use that one.

The graphics look a bit strange in the screenshot. To see it moving makes it alllll suddenly make sense...

1st May 2002, © Matt Evans