Difference between revisions of "Wiifuse"
Jump to navigation
Jump to search
(new release: v0.1.2) |
(added a WIP version. say hi to wiifuse_server) |
||
Line 5: | Line 5: | ||
:Copyright (C) 2005 Janusz Dziemidowicz (rraptorr at nails.eu.org) | :Copyright (C) 2005 Janusz Dziemidowicz (rraptorr at nails.eu.org) | ||
− | '''latest version: [[#v0.1.2|v0.1.2]]''' | + | *'''latest stable version: [[#v0.1.2|v0.1.2]]''' |
+ | *'''current version: [[#v0.2.0-wip1|v0.2.0-wip1]]''' | ||
+ | |||
==readme== | ==readme== | ||
Line 31: | Line 33: | ||
:hints: | :hints: | ||
− | :*append <code>- | + | :*append <code>-f</code> for debug messages (process won't deamonize). |
:*append <code>-o allow_other</code> to let other users access the mount point. | :*append <code>-o allow_other</code> to let other users access the mount point. | ||
:*append <code>-h</code> for common FUSE library options. | :*append <code>-h</code> for common FUSE library options. | ||
Line 94: | Line 96: | ||
==download== | ==download== | ||
+ | |||
+ | ===v0.2.0-wip1=== | ||
+ | :[[media:Wiifuse-0.2.0-wip1|wiifuse-0.2.0-wip1]] | ||
===v0.1.2=== | ===v0.1.2=== | ||
Line 102: | Line 107: | ||
==changelog== | ==changelog== | ||
+ | |||
+ | :*v0.2.0-wip1 | ||
+ | ::*new client/server mode. requires an usb gecko and [[Wiifuse_server|wiifuse server]] running on a gamecube or wii in gc mode - for now ;) | ||
+ | ::*new metadata: title id symlinks, tmd infos | ||
:*v0.1.2 | :*v0.1.2 |
Revision as of 16:08, 13 February 2008
wiifuse - coded by dhewg, #wiidev efnet
- based on gcfuse code by:
- Copyright (C) 2006 Mike Melanson (mike at multimedia.cx)
- Copyright (C) 2005 Janusz Dziemidowicz (rraptorr at nails.eu.org)
- latest stable version: v0.1.2
- current version: v0.2.0-wip1
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 file system. this allows users to browse the directory structure and read the files within.
- in contrast to the gamecube, wii images do have multiple partitions. these are encrypted, and wiifuse supports on the fly decryption - provided you have the required 128bit AES key.
- further, wiifuse provides access to special data found on these disc's. among others, this includes the main executable and informational things like the game name.
requirements
build
- to build wiifuse, you will need a working compiler and the development packages for the required libraries, have a look at the os specific notes.
- the archive includes a Makefile, so just run
make
usage
./wiifuse <image_file> <mount_point> [<FUSE library options>]
- hints:
- append
-f
for debug messages (process won't deamonize). - append
-o allow_other
to let other users access the mount point. - append
-h
for common FUSE library options. - use
fusermount -u <mount_point>
to unmount a previously mounted image.
- append
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
troubleshooting
- check if the FUSE kernel module is loaded
- linux:
lsmod | grep fuse
- freebsd:
kldstat | grep fuse
- os x:
kextstat | grep fuse
- linux:
- verify your key file, the md5sum of the 16 byte file (without line feed) currently is 8d1a2ebcd82a3469b77facf15d9c8e50.
- append
-d 2>&1 | tee ~/wiifuse.log
to the wiifuse cmdline. this will create a logfile called wiifuse.log in your home directory, open it in your favorite text editor to get an idea of whats going wrong.
- check if the FUSE kernel module is loaded
- if you still can't get it working, copy and paste the content of that logfile to something like rafb and /msg me the resulting link.
os specific notes
debian / ubuntu
- to install the required packages:
apt-get install build-essential fuse-utils libfuse-dev libssl-dev
- to mount an image without root privileges, add the user to the
fuse
group: adduser dhewg fuse
gentoo
emerge sys-fs/fuse
freebsd
- install the required ports:
- sysutils/fusefs-kmod
- sysutils/fusefs-libs
os x
download
v0.2.0-wip1
v0.1.2
v0.1.1
changelog
- v0.2.0-wip1
- new client/server mode. requires an usb gecko and wiifuse server running on a gamecube or wii in gc mode - for now ;)
- new metadata: title id symlinks, tmd infos
- v0.1.2
- added more disc id's
- support for virtual console partitions (found 14 vc games on brawl)
- stat compliant - `du` works now
- statvfs compliant - `df` works now
- minor cleanups and fixes
- 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