Nintendo Wii Linux

0.1 GPL (GNU General Public License)    
2.9/5 16
Nintendo Wii Linux is a port of the GameCube Linux project to the Nintendo Wii.




Nintendo Wii Linux is a port of the GameCube Linux project to the Nintendo Wii.

It is a small proof of concept gc-linux distro contained in an ELF file which runs in a unmodified Nintendo Wii console with the help of the Twilight Hack loader.


· a Nintendo Wii
· a SD card
· a SD card adapter for the Nintendo GameCube
· (optional, recommended) a USB Gecko adapter
· Twilight Hack


Follow the twilight-hack instructions to install the linux.elf file into your "loading" SD card at sector 2048. If you have doubts read the README bundled with the twilight-hack.

$ sudo umount /dev/your_device
$ sudo dd if=linux.elf of=/dev/your_device bs=512 seek=2048
3961+1 records in
3961+1 records out
2028192 bytes (2.0 MB) copied, 1.35082 seconds, 1.5 MB/s
$ sync

Before booting linux.elf, make sure your "loading" SD card is inserted into memcard slot A.

If you own an USB Gecko adapter, make sure it is inserted into memcard slot B and connected through a USB cable to your PC. You can use a terminal program to connect via USB Gecko to your wii-linux.

I've tested it with minicom under Linux (/dev/ttyUSB0, 115200 8N1).

It is recommended to activate linewrap.

$ sudo minicom

Welcome to minicom 2.2

Compiled on May 2 2007, 10:11:26.
Port /dev/ttyUSB0

Press CTRL-A Z for help on special keys


Follow the twilight-hack instructions to boot the linux.elf through the "loading" SD card. If you have doubts read the README bundled with the twilight-hack.

At this stage the twilight-hack ELF loader will load and boot linux.elf.

You will start to see the typical startup messages of Linux on your TV and, if you own an USB Gecko, on your terminal too.

Wii ELF Loader v0.1-alpha2
Copyright (C) 2003,2004,2008 tmbinc, segher, bushing
Cleaning up environment
Closing file descriptors ...............done.
Slot A: SD card detected
Slot B: USBGecko serial interface detected

loading ELF file from SD...
done!ng: 47f0
00000000: 7f 45 4c 46 01 02 01 00 00 00 00 00 00 00 00 00
Loading .text @ 0x80800000 (13664 bytes)
Loading .data @ 0x80804000 (1941504 bytes)
Clearing .bss @ 0x809de000 (8540 bytes)


(This will work only for USB Gecko users). In your terminal program, you'll see a welcome screen like this:

Wii-linux-PoC GNU/Linux 0.1 (none) usbgeckocon1

(none) login:

At the login prompt you can enter the PoC credentials:

user: root
password: cube

If you manage to do so, you'll get a command prompt:



The PoC system is based on busybox. There are a few symlinks to commands already created, but the busybox version supplied has support for a lot more commands. If you miss a command try with 'busybox missing_command' or ask for help with 'busybox'.

# busybox top

The kernel supplied has support for hot-insertion and removal of SD cards so you can extract your "loading" card and insert another one. Just make sure YOU DON'T REMOVE A CARD WHEN IT'S MOUNTED.

Also note that memory is still limited to MEM1 (24MB).


The PoC has not yet support to poweroff the system so you must hold the power button for several seconds when you are done.

About Nintendo Wii

Wii is the fifth home video game console released by Nintendo. The console is the direct successor to the Nintendo GameCube. Nintendo states that its console targets a broader demographic than that of Microsoft's Xbox 360 and Sony's PlayStation 3, but it competes with both as part of the seventh generation of video game systems.

A distinguishing feature of the console is its wireless controller, the Wii Remote, which can be used as a handheld pointing device and can detect acceleration and orientation in three dimensions. Another is WiiConnect24, which enables it to receive messages and updates over the Internet while in standby mode.
Last updated on February 28th, 2008

0 User reviews so far.