Wiifuse

From WiiBrew
Jump to: navigation, search

wiifuse v0.1.1 - coded by dhewg, #wiidev efnet

based on gcfuse (http://multimedia.cx/gcfuse/) code by:
Copyright (C) 2006 Mike Melanson (mike at multimedia.cx)
Copyright (C) 2005 Janusz Dziemidowicz (rraptorr@nails.eu.org)


readme

about

wiifuse is a program that allows you to mount a gamecube or wii dvd disc image as a read-only part of the filesystem. this allows users to browse the directory structure and read the files within.
further, wiifuse provides access to special data found on these disc's. this includes informational things like the game name, the main executable and raw access to the decrypted data among others.
in contrast to the gamecube, wii images are encrypted. wiifuse supports on-the-fly decryption if you have the required 128bit AES key.

requirements

build

make

usage

./wiifuse <image_file> <mount_point> [<FUSE library options>]
use -h for common FUSE library options.
use -o allow_other to let other users access the mount point.
use fusermount -u <mount_point> to unmount a previously mounted image.

example

$ ./wiifuse ~/zelda_tp.iso ~/wii_image -o allow_other
$ ls -l ~/wii_image

total 0
lrwxrwxrwx 1 dhewg 1 Mar 15 2007 data -> partition2
dr-xr-xr-x 4 dhewg 0 Mar 15 2007 partition0
dr-xr-xr-x 6 dhewg 0 Mar 15 2007 partition1
dr-xr-xr-x 6 dhewg 0 Mar 15 2007 partition2
lrwxrwxrwx 1 dhewg 1 Mar 15 2007 update -> partition1

$ cat ~/wii_image/data/header/name

The Legend of Zelda Twilight Princess

$ mplayer ~/wii_image/data/fs/Movie/demo_movie98_00.thp
$ fusermount -u ~/wii_image

os specific notes

debian / ubuntu

packages required
apt-get install build-essential fuse-utils libfuse-dev
to mount an image without root privileges, add the user to the fuse group
TODO guessed, please verify

freebsd

instructions: http://fuse4bsd.creo.hu/

os x

TODO

download

version 0.1.1

wiifuse-0.1.1.tgz

changelog

v0.1.1

  • fixed some serious u64 offset bugs
  • corrected the main.dol size calculation
  • some easy partition validation
  • support for symlinks
  • cleaned up and extended the available metadata