Using a Raspberry Pi Pico as a GameCube Modchip

Content:

PicoBoot is a new modchip for the GameCube. Unlike previous modchips, this one is easy to create yourself using off the shelf hardware. As the name (and title of this article) suggests, the hardware is simply a Raspberry Pi Pico.

By flashing the Pico with the PicoBoot software, the Pico is able to intercept and take over the GameCube boot process. This design, known as IPL (Initial Program Loader) injection, is considered superior to other popular designs which often target the optical drive.

PicoBoot will boot a replacement IPL saved to a memory device, such as an SDLoader. This makes the design incredibly flexible – changing the software that auto-loads at boot is as simple as replacing the IPL file stored on an SD card (or other storage device).

Using the Pico makes this design cheap and easy to flash.

This guide will go through the process of flashing the Pico, tearing down the GameCube, and getting the Pico installed.

Flashing the Software

The first, and arguably easiest step, is to flash the required software onto the Pico.

To do this, plug your Pico into a PC, while holding down the BOOTSEL button. You should see the Pico mounted as a drive called RPI-RP2.

Next, download the latest release from the GitHub repo. Specifically, you need the picoboot.uf2 file.

Rename the downloaded file to ipl.dol, and copy it over to the Pico. It will flash the code automatically, and you should see the Pico unmount from your PC.

The green LED on the Pico will also be lit.

flashed Pico
Flashed Pico, with LED lit.

With the software flashed, it’s time to open the GameCube up to install it.

Installing the Pico

The installation procedure varies slightly, depending on the version of the GameCube you have. The following process was done on a DOL-001 console, but is very similar if you have a DOL-101 console.

The main difference is the position of the points you’ll need to solder to.

Console Teardown

The GameCube is held together with 4x 4.5mm Gamebit screws. If you don’t have a suitable screwdriver, these can be picked up cheaply.

bottom of the console
Bottom of the console.

With the 4 screws removed, the top section of the GameCube can be removed. This will expose the optical drive lens, so take care not to damage it if your drive is working.

GameCube with lid removed.

The next step is to pull the front panel forward, releasing the clips on each side.

This will expose 2 metal plates, held in place with two screws each. These sit behind the memory card ports. Remove these screws and plates.

You’ll also need to remove the fan on the left-hand side of the console. There are two screws holding it in place. You’ll also need to unplug the red/black cable from the power board, which is part of the fan/power input assembly.

fan removed
Fan removed, and front panel unclipped. The screws behind the memory card slots have also been taken out.

There are several screws around the outside of the console, three of which can be seen on the left-hand side above. Remove all of these screws.

The optical drive can now be lifted off the board. Note that there is a connector on the bottom of the drive, so pull the drive straight upwards.

heatsink
Just the heatsink left to go…

Next, you can unplug the ribbon cable holding the front panel, and move it to one side.

Remove the 6 screws holding the heatsink and board to the bottom of the case. Once the screws are gone, gently pry the heatsink from the board. This will take a bit of force, as the thermal pads on the processors will hold the heatsink in place. Be patient as the pads slowly release from the heatsink.

With the heatsink gone, you can lift the board out of the case. You should now be left with the motherboard on its own.

Connecting the Pico

There is an excellent diagram for each model over on the GitHub page, which shows exactly where to solder each point. Be sure to bridge the two pins specified on the Pico as well.

wires soldered
Wires installed in the console.

Where you mount the Pico is up to you – just remember, to update the Pico with newer firmware, you’ll need access to the Micro USB port. Whether updates will be required in the future remains to be seen.

I chose to route the wires along the heatsink, to feed them through the holes in the side of the drive shield. While the other side is blocked by the fan, this side is open, and allows the shell to fit back together with no modifications.

wiring route
Wiring pushed through a groove in the heatsink.

This does come with the downside that future teardowns will require desoldering, unless you use pin headers on the Pico.

Pico fitted
Pico fitted to the GameCube. It’s held on with double-sided sticky pads.

That’s all of the soldering done. It’s now ready to be tested.

Testing

You might want to test it before doing a full reassembly – consider leaving the screws out for the time being.

Before putting the heatsink back in place, you might want to replace the thermal pads. I chose not to – the GameCube doesn’t produce enough heat to make it necessary.

When turning the console on, you should see the Swiss menu, as below.

booting swiss
Booting to the Swiss menu.

The LED on the Pico will be illuminated.

If this is not the case, check your wires have been soldered correctly. In my first attempt, I inadvertently soldered the 3.3v wire to the 3V3_EN pin on the Pi (rather than 3V3, which is next to 3V3_EN) due to not paying enough attention. It’s easily done.

Booting Other Files

It’s possible to use the Pico to boot to something other than Swiss.

To do this, you’ll need to compile your own ipl.dol file, including the software you wish to run. This requires the installation of the Pico dev environment.

More information about this can be found on the GitHub page. For most users, the default will be fine.

Other RP2040 Boards

This process should work with other RP2040 powered boards, provided the required pins are accessible. It’s only a matter of time before a board is designed to slot neatly into the console, as there is more than enough space inside the console for a purpose-designed board to fit.

If you like what we do, consider supporting us on Ko-fi