Open-source project
FIX94/Nintendont avatar
FIX94/Nintendont

Nintendont: running GameCube games on Wii and vWii without GameCube hardware

A Wii Homebrew Project to play GC Games on Wii and vWii on Wii U

2,488 stars388 forksCLicense varies

At a glance

What is it?
Nintendont is a homebrew loader for GameCube disc images on Wii and Wii U vWii. It is not an emulator, it needs a specific devkitPPC toolchain to build, and its storage advice is unusually blunt.
Who is it for?
Adopt Nintendont if you already run The Homebrew Channel on a Wii or a Wii U in vWii mode and you want GameCube disc images on USB or SD storage with emulated memory cards.
Can I use it commercially?
Not without permission. GitHub finds no licence file in the repository, and without a licence all rights are reserved by default: you may read the code but not reuse it. Check the README, or ask the authors, before using it.
Is it still maintained?
Yes. The repository last received commits 10 days ago.
What is it written in?
Mainly C, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What Nintendont is for, and who it is not for

Nintendont is a Wii homebrew project whose stated purpose is to play GameCube games on Wii and on vWii, the Wii compatibility mode inside a Wii U. It is a loader rather than an emulator: the README lists full-speed loading from a USB device or an SD card, 1:1 and shrunken .GCM/.ISO disc images, CISO images in uLoader format, and extracted FST files. Because the GameCube hardware inside these consoles is doing the work, the compatibility question is about the loader and the storage path, not about CPU emulation accuracy.

The audience is narrow and technical. You need a console that can run The Homebrew Channel, storage the console can read, and a legal copy of the game images you intend to load. The README is explicit about one permanent boundary: Game Boy Player is listed under what Nintendont will never support. Another boundary is platform-specific. Playing retail discs, playing backups from writable DVD media on old Wii consoles, using real memory cards, GBA-Link cables, WiiRd and the Nintendo GameCube Microphone are all listed as Wii-only features, so a Wii U in vWii mode cannot do them.

How Nintendont loads a disc image: loader, kernel and FatFS

The repository layout shows the pieces. The top level contains loader, kernel, kernelboot, fatfs, codehandler, resetstub, multidol and controllerconfigs. The Makefile builds them in a fixed order: multidol, then kernel/asm, resetstub, two FatFS libraries (libfat-arm.a and libfat-ppc.a), codehandler, kernel, and finally the loader targets including loader/source/ppc/PADReadGC and loader/source/ppc/IOSInterface. The presence of both an ARM and a PowerPC FatFS build reflects the two processors involved: the Wii and Wii U vWii environment combines a PowerPC main CPU with an ARM-based I/O processor, and the loader has to hand off between them.

The codehandler subproject is what implements cheat code support, and controllerconfigs holds the custom button layouts for HID controllers. The loader is the user-facing DOL that The Homebrew Channel starts; from there it boots into the kernel, which mounts storage through FatFS and presents the disc image to the game. Disc switching and auto boot from a loader are handled at this level, which is why the README tells you to name a second disc exactly disc2.iso inside a per-game subdirectory.

Installing Nintendont and loading your first game

The README gives a short installation path. You take loader.dol from the loader directory, rename it to boot.dol, and place it in /apps/Nintendont/ next to meta.xml and icon.png. The directory name matters because The Homebrew Channel lists apps by folder. The README does not give a shell command for this step; the file operations it names are the rename to boot.dol and the move into /apps/Nintendont/.

Games go under /games/. For a single-disc game in ISO, GCM or CISO format, subdirectories are optional. For a two-disc game the README requires a subdirectory, with the first disc named game.iso and the second named disc2.iso. Extracted FST games are different: the FST must sit in a subdirectory, for example /games/FSTgame/sys/boot.bin. After copying, connect the storage device to the Wii or Wii U, start The Homebrew Channel and select Nintendont. If you want to build it yourself rather than use the prebuilt loader.dol, the README pins devkitARM r53-1, devkitPPC r35-2 and libOGC 1.8.23-1, and warns that newer dkARM, dkPPC and libOGC versions produce compiler warnings and a build that crashes when returning to the Nintendont menu. On Windows you run Build.bat; on Unix you run Build.sh. The Makefile itself errors out if DEVKITPPC or DEVKITARM is not set in the environment.

Storage is the part that actually breaks

The README's notes section is the most useful part of the document. The Wii and Wii U SD card slot is described as known to be slow, and the recommended workaround is a USB SD reader or a USB hard drive. USB flash drives are described as known to be problematic, with no further qualification. Nintendont is said to run best with storage formatted with 32 KB clusters, using either FAT32 or exFAT. That is a cluster-size recommendation, not a filesystem choice, and it is the kind of detail that decides whether a game stutters.

There is a second failure mode on the build side. Pinning devkitARM r53-1, devkitPPC r35-2 and libOGC 1.8.23-1 means the project does not track current toolchains. Anyone who builds with the latest versions is told the result will crash on return to the Nintendont menu. That is a real maintenance cost: the code is written against a specific, older compiler behaviour, and the README treats that as a requirement rather than a bug to fix.

A third limitation is scope. Game Boy Player is excluded permanently. The Wii-only feature list also means a Wii U owner in vWii mode loses retail disc playback, DVD backup playback, real memory cards, GBA-Link and the GameCube Microphone. If those are the reasons you want the project, it is the wrong tool.

How Nintendont differs from a USB loader front end

USB Loader GX is the obvious comparison, and the search data around this project shows people pairing the two. The difference is architectural. USB Loader GX is a loader front end: it presents a game library and hands off to a backend to actually start a GameCube title. Nintendont is one of those backends, and it is also usable on its own from The Homebrew Channel.

The practical consequence is that Nintendont owns the GameCube-specific behaviour: memory card emulation, disc switching, BBA emulation (documented separately in BBA_Readme.md), advanced video mode patching with forced progressive scan and forced 16:9, cheat codes through its code handler, and controller handling for the official GameCube controller adapter, Bluetooth Classic Controller and Wii U Pro Controller, and USB HID pads. A front end does not provide those. If you want a browsable library with cover art, you use a front end and point it at Nintendont; if you want the GameCube layer itself, that layer is Nintendont.

Licence and upgrade cost

The repository metadata does not carry a licence identifier. There is no LICENSE file in the top-level listing either, which contains .gitignore, BBA_Readme.md, Build.bat, Build.sh, Makefile, NEWS.md, README.md, codehandler/, common/, controllerconfigs/, fatfs/, kernel/, kernelboot/, loader/, mem_map.txt, multidol/, nintendont/, patched_demos.txt, resetstub/ and scripts/. If you intend to redistribute a build, or to ship Nintendont inside a bundle, that absence is the first thing to resolve with the project's own distribution terms, and it is not something this article can settle.

Upgrade cost is dominated by the toolchain pin. Because the README names devkitARM r53-1, devkitPPC r35-2 and libOGC 1.8.23-1 as the versions to use, and warns that current versions produce warnings and a crash on returning to the Nintendont menu, a contributor cannot simply pull the latest devkitPro and expect a working build. The repository does keep a NEWS.md at the top level, so release-level changes are recorded there rather than in the README. The last push to the default branch was on 2026-09-21.

Editorial conclusion

Adopt Nintendont if you already run The Homebrew Channel on a Wii or a Wii U in vWii mode and you want GameCube disc images on USB or SD storage with emulated memory cards. Skip it if you need Game Boy Player support, if you play on Wii U in Wii U mode, or if you expect retail GameCube discs to work on a Wii U. Verify first that your drive is not a USB flash drive, that it is formatted FAT32 or exFAT with 32 KB clusters, and that you can build or obtain loader.dol for your exact setup.

Frequently asked questions

What is Nintendont?

It is a Wii homebrew project for playing GameCube games on Wii and on vWii on Wii U. It loads disc images from a USB device or SD card rather than emulating the console in software.

Is Nintendont a good emulator?

Nintendont is not an emulator. The README describes it as a loader that plays GameCube games at full speed from USB or SD storage, using the console's own GameCube-compatible hardware.

Can Nintendont run Wii games?

No. The README and the project description both scope it to GameCube games. The Wii-only feature list covers retail GameCube discs, DVD backups, real memory cards, GBA-Link, WiiRd and the GameCube Microphone, not Wii titles.

How do I install Nintendont?

Rename loader.dol to boot.dol and place it in /apps/Nintendont/ together with meta.xml and icon.png, then copy your games into /games/ and start The Homebrew Channel. Two-disc games need a subdirectory with game.iso and disc2.iso.

How do I use Nintendont with USB Loader GX?

The README documents auto boot from a loader as a supported feature, so a front end such as USB Loader GX can start Nintendont rather than launching it manually. The GameCube-specific settings, including video patching and memory card emulation, remain Nintendont's own configuration.

Official sources

  1. FIX94/Nintendont on GitHub
  2. Issues
  3. README
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/fix94-nintendont.svg)](https://hysenlabs.com/projects/fix94-nintendont)