GameCube BIOS (IPL)

What is the GameCube IPL?

The GameCube IPL (sometimes called the GameCube BIOS, or IPL.bin) is the console's boot ROM. It's the startup program that plays the animated “cube” intro and shows the GameCube Main Menu where you can manage memory cards and adjust system settings before a game loads.

It is separate from your games. iCube can run most titles without it, but a few features need it (see below).

When the IPL is required

  • To use the GameCube Main Menu itself (the boot animation and system menu).
  • To boot any game while Load GameCube Main Menu is turned on. With that setting on, iCube boots into the IPL first, so the IPL must be installed or nothing will start.

You'll find this toggle under Settings → Config → GameCube → Load GameCube Main Menu.

Why iCube doesn't include it

The IPL is copyrighted Nintendo code. iCube can't and doesn't bundle it. You have to supply your own, dumped from a GameCube console you own.

Open-source tools exist that run on a homebrew-enabled GameCube or Wii to dump the IPL from your own hardware. We don't host, link to, or distribute IPL files or game ROMs — only dump from a console you own.

Dumping the IPL from your own console

The IPL lives in the boot ROM of a real GameCube or Wii. There is no software download for it; you read it off hardware you own. The usual route is to run homebrew on the console (loaders like Swiss or PicoBoot), then run a dumper that writes the boot ROM out to an SD card or over the network as IPL.bin.

This is the same dump Dolphin uses, so any Dolphin IPL guide applies directly to iCube. For step-by-step instructions and current tools, see the Provenance ripping guide and Dolphin's own ripping documentation.

Disc-dumping tools such as CleanRip pull games, not the boot ROM. Dumping the IPL is a separate homebrew step.

Identifying a good dump

A correct IPL is exactly 2,097,152 bytes (2 MiB) and is named IPL.bin. iCube checks the file against a list of known-good dumps by CRC32. If yours does not match, iCube reports “The IPL file is not a known good dump” and prints the CRC32 it computed, so you can compare it against the table below.

Region / RevisionBoardCRC32
NTSC 1.0DOL-001 / DOT-001 / SL-GC106DAC1F2A
NTSC 1.1DOL-001D5E6FEEA
NTSC 1.2DOL-001D235E3F9
NTSC 1.2DOL-10186573808
MPAL 1.1 (Brazil)DOL-002667D0B64
PAL 1.0DOL-001 / DOT-001P4F319F43
PAL 1.2DOL-101AD1B7F16
TriforceArcade IPLD1883221

On a Mac you can compute the CRC32 with crc32 IPL.bin (from libarchive-zip-perl), or check the byte count with ls -l IPL.bin.

For full MD5 and SHA-1 hashes of every revision, cross-reference the Redump database, the standard reference for verified GameCube IPL dumps.

Installing the IPL in iCube

Once you have your IPL.bin, place it in iCube's GameCube system folder (the Dolphin Sys/GC path inside iCube's app storage), in the subfolder for its region: USA, JAP, or EUR (so a US dump lands at Sys/GC/USA/IPL.bin). You can copy the file over Wi-Fi using iCube's built-in web server. See Importing Games for how to connect from your computer.

After it's in place, restart iCube so it picks up the new file.

Troubleshooting

Games won't start at all

This usually means Load GameCube Main Menu is on but no IPL is installed. Either install the IPL, or turn that setting off under Settings → Config → GameCube to boot games directly.

“Cannot find the GC IPL” error

iCube looked for the IPL and didn't find one for the selected region. Confirm IPL.bin is in the GameCube system folder for the right region, then restart the app. If you don't want to use the menu, turn off Load GameCube Main Menu.