aquova.net Codeberg's logo Mastodon's logo Blue Sky's logo Backloggd's logo Pico-8's logo The RSS logo @000


Managing and Transferring GameCube Saves

A quick article today, I wanted to discuss the process of transferring your GameCube saves between your physical hardware and your PC so that they can be played in the Dolphin emulator. It's a process that might not be immediately obvious as to how it works, but turns out to be rather simplistic once you know the steps. This way, you can back up your old game saves or play between devices to your hearts content.

As mentioned, you will need some way to access your GameCube's memory card data, as a vanilla card obviously cannot be connected to a computer. There's two main ways to do this. The first would be to pick up an SD card capable memory card, such as the MemCard Pro GC from 8BitMods. This is arguably the more straight-forward of the two methods. It is a complete replacement for an existing memory card, but has virtually no size limitations due to the available storage space on modern SD cards. To access the memory card data for back up, you simply remove the Micro SD card from the device, and transfer it to a PC. We'll talk about the difference between individual memory card saves and the overall memory card file, but the MemCard Pro GC does offer a feature where every game is given its own virtual card, rather than be grouped together as a single memory card. This doesn't affect the ability to transfer data, but will change the file structure somewhat.

A MemCard Pro GC, in smoke black

If you aren't looking to purchase a bespoke device, the other option is to use a homebrew application for a jailbroken Wii — GCMM. This does only work on Wii, and does require said Wii to be jailbroken so the application can be installed, but this is a third party app that allows much more control over your save data management. Data can be moved from a vanilla memory card to and from an SD card inserted into the Wii unit, which then can be transferred to a PC.

It also has one notable advantage over the MemCard Pro GC, namely that some game data is restricted by the GameCube's native memory card manager. Animal Crossing and F-Zero GX are two notable examples of games where the GameCube won't allow existing data to be copied or moved between cards for... vague Nintendo reasons. GCMM bypasses that restriction, meaning that if you do have data from these and other similar games from the early 2000s, you'll have to rely on GCMM to manage them, even if you do pick up a MemCard Pro. I should also note that GCMM does exist for GameCube as well (that was actually its original device), however adding homebrew apps to a GameCube is much trickier than adding them to a Wii. A Wii can be software jailbroken relatively easily, while a GameCube will require custom hacked discs, modchips, or an SD card capable memory card, meaning you're right back to needing to purchase a hardware solution anyway. That isn't to say these aren't worthwhile modifications to make, especially if you want to back up entire games, but it's more complicated to get GCMM running than on a Wii.

Transferral Process

Let's say you managed to pick one of these up, and now have your GameCube data on an SD card. What exactly do you do with it? The simplest answer is to just back it up somewhere, and if you ever want to roll back to a previous save file, you can easily do so. I mentioned the difference between individual game data (the various squares you see in the system's save data manager) and the overall memory card data. Memory cards are saved as one single overarching file with a .raw extension. Inside of which contains all of the individual saves for your games, which are given a .gci extension. Physical devices require that their memory card data be bundled up inside of a .raw for access, but emulators like Dolphin don't have such restrictions, and by default simply save each save file as an individual .gci file.

Dolphin offers a slightly obscured feature that it calls the "Memory Card Manager" (located under the Tools drop down menu). From this interface, you can open up a .raw memory card file and view all of the individual games' data stored within.

A memory card file containing two F-Zero GX save files stored within

These individual save files can be exported as .gci files, to be backed up or used directly by Dolphin, or even transferred from one memory card .raw file to another.

Dealing with Virtual Memory Cards

As I mentioned, an interesting feature provided by the MemCard Pro GC is the ability to create "virtual memory cards". This feature creates distinct, isolated files which are viewed by the hardware as different memory cards, and can be hotswapped at will. This functionality is commonly used to bypass issues with overly large memory cards (apparently at around 128 MB, they were known to have problems) and to allow for multiple saves on games that didn't support it. The MemCard Pro can also be configured to create an automatic virtual memory card for each game, making things completely isolated. This is a neat feature, but does make it a bit difficult to then determine which .raw memory card file contains the game in question.

Which one of these contains our F-Zero GX data?

The trick is to realize that these individual files are named with the games' ID, which Nintendo required all games to have. http://redump.org/discs/system/gc/ offers a database of all games with metadata about their region and IDs, but an even easier method is to use Dolphin itself. Its list view can be configured to show columns of a variety of metadata, including game ID. Given that you're transferring the game to your PC, it's probably a safe bet that you also have a digital version of the file ready to go as well. If so, you can cross-reference this provided information with your filesystem to find the desired .raw file.

A selection of GameCube titles with their IDs visible, via Dolphin's UI

As an aside, the ID contains a bit of information about the game itself. For example, you can see in the screenshot that Luigi's Mansion has an ID of GLMP01. The G refers to this as a GameCube title — as opposed to W for Wiiware or R for commercial Wii release (referring to its original development name of Revolution). The LM is a custom two-letter signifier for the game, in this case likely the initials of the game. The P refers to the region, in this case a European title. These abbreviations are somewhat strange, as E would refer to North America, J for Japan, K for Korea, and A for none. The final two digit hexadecimal number is the publisher's ID. Nintendo gave themselves 0x01, and a number of other publishers can be determined from the above screenshot, such as 0x08 for Capcom and 0xA4 for Konami.