Wii Homebrew In Brief

Contents:

Guide Links
My recommended guides for installing homebrew.

Region-Free Methods
Explanation of the 3 main methods for playing games from other regions on Wii.

Comparison of GC Disc Loaders
Comparison of the features of 3 loaders of GC discs on Wii.

Basic Knowledge
Info for understanding homebrew that’ll allow you to stand on your own two feet with it.

Basic Installation
A standardised, best-practice procedure to use for fresh homebrew installations. If your Wii is already homebrewed and something needs fixing, it’s still worth trying to run this procedure from scratch.
Installed software: BootMii, Homebrew Channel, Priiloader, cIOS 249+250+251.

Persistent Region Change
The basic installation region-frees the Wii; however, if you want to play NTSC games on a PAL Wii (or vice-versa) from the disc channel (i.e. without using a specific loader), you need to follow an additional guide. The problem is that the Wii’s video mode needs to also change; symptoms of wrong video mode are the game not booting (e.g. SMS) or having the wrong frame-rate (e.g. N64 Zeldas).
Installed software: cIOS 236, Anyregion Changer.

Swiss Installation
Swiss, the all-purpose GameCube homebrew app, doesn’t run natively on Wii, requiring a special installation. The linked guide (steps 1–3) is up-to-date except swiss-lz.dol is now called swiss-rxxx.dol, where xxx is the latest version number. A reason you might want to use Swiss is that it’s the only loader capable of forcing resolutions in some GameCube games (e.g. 480p in PAL SMS).
Installed software: WiiGator cMIOS, Wii Swiss Booter, Swiss.

Region-Free Methods

Every Wii can run discs and digital games (VC/WiiWare/WADs) from any region natively and without compromise. There are 3 methods for doing this I’ll mention.

Gecko OS. This is an application that’s very simple to use and runs GC/Wii discs from any region without fuss. The downside is that it’s a specific program that must be started from the Homebrew Channel (or automatically using Priiloader), and is not usable from the system menu/disc channel (without further work). But this could be an upside since system menu requires Wii Remote. Any other loader could be used instead of Gecko OS; it’s just the most standard.

Gecko OS can also run digital games (those installed on the Wii) if the “Launch Channel” option appears in the main menu, but this requires a non-standard installation.

Priiloader. As part of the standardised basic installation, Priiloader is installed. It disables the region lock on the disc channel and all digital games. This is sufficient for running NTSC games from other NTSC regions (J and U) but is unlikely to work in situations where PAL and NTSC are mixed, because the video mode needs to be changed as well.

Anyregion Changer. This program, run from the Homebrew Channel, persistently changes the region of the Wii including video mode, allowing it to natively run games from its region with no fuss (disc and digital). However, it’s long to install, risky to use if you don’t follow instructions (which tbf are very basic – see the persistent region change video), and has to be used whenever you want to play a game from a different region to the one you played last.

Comparison of GC Disc Loaders

Different loaders of GC games on the Wii have pros and cons; here’s a comparison of some disc loaders.

App Maintained Game Support Game Mode App Mode Cheats GCT Size Limit Resolution Forcing Stability C-Stick Inversion
Gecko OS No (since 2010) GC+Wii Native Wii Wii only 3416B None Superior No
Nintendont No (since end of 2019) GC Wii Wii Yes >8192B Inferior Superior No
Swiss Yes GC GC GC Memcard only 2416B Superior Inferior Optional

Notes:

Basic Knowledge

Things that are useful to understand homebrew.

Exploit Methods
Per the basic installation guide, a Wii can be easily homebrewed by launching the HackMii installer via exploits that just require either an SD card/USB drive, an internet connection, or a Bluetooth-enabled Linux PC. The HackMii installer installs BootMii and the Homebrew Channel.

Homebrewing a GameCube is much harder; the simplest method requires an SD Gecko adapter (£2/3-week delivery from AliExpress) and a copy of one of TWW, SSBM or PAL SMS. You can skip the SD Gecko by using normal memcard + SD card/USB drive + GCMM on someone’s homebrewed Wii. Or you can ditch both in favour of buying an Action Replay disc.

Booting
To make sure you can’t brick your Wii (make it unusable), you need to back up its storage (usually termed the NAND). After basic installation of homebrew (as above), the boot sequence looks like this (where each program starts the next):

boot1 is unmodifiable. Newer Wiis ship with one that has its security exploit patched, meaning it is impossible to edit boot2. The HackMii installer will install BootMii to replace boot2 if it can, otherwise it’ll be installed as an IOS (see below). BootMii enables you to do full NAND backups and restores.

If BootMii is installed as boot2, starting the Wii with an SD card inserted with BootMii (still) on it will load it. If it’s installed as an IOS, vanilla boot2 will load the system menu. In either case, the system menu has been redirected to Priiloader – holding reset after powering on will boot into Priiloader.

In both cases, you can load into BootMii, allowing you to both restore NAND in case of emergency, and you can load into the Homebrew Channel (HBC, see below) without using the system menu (which’d require a Wii Remote). BootMii (as boot2) and Priiloader can be configured to auto-start HBC and anything, respectively. Unfortunately, restoring NAND is a risky last-resort if BootMii is installed as IOS, so you don’t have full brick-protection, but you’re good if you stick to the guides above and don’t do anything weird.

Homebrew Channel (HBC)
This is the main menu for Homebrew, and runs applications off both SD card and USB drive. These are easy to install – where ◯ is your drive, HBC checks the ◯:/apps folder for subfolders that contain specific files. The folders can be called anything you want; the files are boot.dol (the program), meta.xml (info for HBC to display), icon.png (an icon for HBC to display), as well as anything else the program needs. For example:

SD (E:)
└───apps
    └───Gecko1931
        ├───boot.elf
        ├───icon.png
        └───meta.xml

IOS
IOSes on the Wii are essentially drivers – pieces of software that run the hardware and are versioned independently. Every program except boot programs runs on a single IOS. As the Wii progressed, every IOS was patched for security, but new functionality always resulted in a new IOS being installed by the system, to preserve backward-compatibility.

One thing to note is that the left USB port on a standing-up Wii only works on specific later IOSes; if your USB drive is not being detected by e.g. USBLoaderGX, switch it to the right port.

The key to IOSes is the slot system. The Wii has 255 slots that IOSes can be installed into. It’s confusing because the IOS itself is named after the slot it’s meant to be installed into. Ordinarily this is unambiguous, but homebrew often requires IOSes to be patched, particularly to weaken their security, and old methods of doing this would replace an IOS with a modded version of a different IOS, which is responsible for e.g. the OoT fast loads debacle. Modern homebrew doesn’t do this, preferring to install the patches as custom IOSes (cIOS) in unused slots, in the 2xx range. There is one key exception – there is only one IOS for GameCube games, the MIOS. This has to be patched for e.g. Swiss Installation, but the cMIOS in the Swiss guide should be safe unlike e.g. DIOS MIOS, which is known to leave Wiis unable to read GameCube games until it’s replaced.

Most homebrew runs on the standardised cIOS 249 or 250, part of the basic installation above, but some older programs require cIOS 236 (e.g. in the persistent region change guide above). SysCheck can be used to report which IOSes are installed and Multi-Mod Manager can replace them with official ones from Nintendo’s still-active “NUS” server.