Hacking WBFUSE (WBFS for FUSE)

torito21

Member
OP
Newcomer
Joined
Aug 5, 2007
Messages
13
Trophies
0
XP
31
Country
Hi,
after 3 days of work, I think I've finished a FUSE module for WBFS.
I release the first version as a beta, because I need betatesters, it's barely tested.

It should look something like this:
screen1k.png

The file images are stored on a WBFS partition, but they are not managed as a wii image by the current managers (at least the first wbfs implementation does not care about it).

Features:
- Integration with all the file managers in linux (VFS ext provided by FUSE).
- You can use a wbfs partition as generic storage.
- You can change file names and Name and IDs of the Wii images (this can be done by renaming to ID|Name, ie: R64P01|Wii Music for casual gamers).
- You can view the total and free space available on device.
- Lets you scrub the images copied to the drive (-s option).
- Full 64 bits support (x86_64).

Disadvantages:
- Slow write operations (due to manage full sized iso's).

Usage:
$ ./wbfuse /dev/sdXy mount_point [options]
Options:
-g :Enable image scrubbing keeping only game partition.
-n : Disable image scrubbing.
Scrubbing enabled keeping all partitions is the default option.

Renaming commands:
Change ID and/or name: Rename to "ABCDEF|Name of the game" (without quotes)
Scrub a image previously written to the partition: Rename to "scrub" (without quotes)

Warning: WBFS has a limit on the number of files than can be written to a partititon, but it grows as the partition size. IE: for a partition of 5GB, the number of files is limited to 215.

Enjoy it, and report bugs as you can (source will be released as well).

Greets.

Links:
Download v0.8.2b precompiled binaries (32bit)
Download v0.8.2b precompiled binaries (64bit)
Download 0.8.2b (source)
 

wiiNinja

Well-Known Member
Member
Joined
Jan 13, 2009
Messages
544
Trophies
0
XP
919
Country
United States
QUOTE said:
Disadvantages:
- Slow read/write operations (due to manage full sized iso's).
- You can only write full sized isos. There's no chance to filter Image partitions (FUSE limitation).

What do you mean by full sized ISOs? Fixed size of 4.7GB? Can it handle DL ISOs?
 

Diffusion

Well-Known Member
Member
Joined
Jul 14, 2007
Messages
700
Trophies
0
Website
Visit site
XP
160
Country
United States
Getting tons of "unused parameter" and "assignment from incompatible pointer type
" errors when I try to compile... can you tell me what's up
tongue.gif
or post a binary?
 

torito21

Member
OP
Newcomer
Joined
Aug 5, 2007
Messages
13
Trophies
0
XP
31
Country
wiiNinja said:
QUOTE said:
Disadvantages:
- Slow read/write operations (due to manage full sized iso's).
- You can only write full sized isos. There's no chance to filter Image partitions (FUSE limitation).

What do you mean by full sized ISOs? Fixed size of 4.7GB? Can it handle DL ISOs?


Exactly. It handles images with fixed sized, and supports DL images.

QUOTE(Diffusion @ Apr 7 2009, 09:58 PM)
Getting tons of "unused parameter" and "assignment from incompatible pointer type
" errors when I try to compile... can you tell me what's up
tongue.gif
or post a binary?

You need the libfuse-dev package (at least it's named like this in debian/ubuntu)
 

torito21

Member
OP
Newcomer
Joined
Aug 5, 2007
Messages
13
Trophies
0
XP
31
Country
D'oh, I forgot to post it. You need to change FUSE API version to use.

You can change FUSE_USE_VERSION to 26 in /usr/include/fuse/fuse.h or you can add #define FUSE_USE_VERSION 26 in the header of wbfuse.c

Sorry for the inconvenience
wink.gif
 

wiiNinja

Well-Known Member
Member
Joined
Jan 13, 2009
Messages
544
Trophies
0
XP
919
Country
United States
Thanks for you good work. A couple of other questions:

1) There's an issue with users of wbfs drives (for games) who experience corrupted image after deleting and then adding new games to the disc. So the suspicion is that by deleting, some space is freed up, but if the user adds an image that is larger than the space that was freed up, then the games adjacent to the deleted games will be clobbered. Do you know if this is a bug in the utility using the wbfs or is it some sort of limitation in the wbfs itsels?
2) Will a partition manipulated by this app be totally compatible with the USB loader in the Wii? (Assuming that I use it for both pictures and ISO as shown in your screen shots)

If fixed sized ISO is used, problem in question 1 would be eliminated, but it waste a lot of space. I'm looking at the "wbfs" source code right now to see if I can figure out what the problem is.
 

torito21

Member
OP
Newcomer
Joined
Aug 5, 2007
Messages
13
Trophies
0
XP
31
Country
wiiNinja said:
Thanks for you good work. A couple of other questions:

1) There's an issue with users of wbfs drives (for games) who experience corrupted image after deleting and then adding new games to the disc. So the suspicion is that by deleting, some space is freed up, but if the user adds an image that is larger than the space that was freed up, then the games adjacent to the deleted games will be clobbered. Do you know if this is a bug in the utility using the wbfs or is it some sort of limitation in the wbfs itsels?
2) Will a partition manipulated by this app be totally compatible with the USB loader in the Wii? (Assuming that I use it for both pictures and ISO as shown in your screen shots)

If fixed sized ISO is used, problem in question 1 would be eliminated, but it waste a lot of space. I'm looking at the "wbfs" source code right now to see if I can figure out what the problem is.

1) I think it's a bug of the libwbfs, so this application should inherit it. Anyway, the space wasted shouldn't be larger than 2MB, and the wbfs should not be corrupted in the way it loss data.

2) It should be compatible at least if the implementation of libwfbs on the wii side is the same. I think so, but I haven't tested it yet. The current implementation of libwbfs just ignores the files that hasn't the magic of Wii ISO's.

A thing to take care of, is that you can't use other wbfs managers while a partition is mounted with wbfuse. You may loose data if yuou do it.
 

wiiNinja

Well-Known Member
Member
Joined
Jan 13, 2009
Messages
544
Trophies
0
XP
919
Country
United States
QUOTE said:
Anyway, the space wasted shouldn't be larger than 2MB

If I understand you correctly, each single layer game I want to store will occupy 4.7GB on the drive. I think the wasted space will be more than 2MB. Here's a sample of the content on my wbfs drive currently:

RDCE78 Deadly Creatures 3.94G
RSQEAF We Ski 0.66G
RM9EGM MushroomMen 1.79G
RJ2E52 Quantum of Solace 2.60G
RMVX69 MOH5 3.95G
R7FEGD FINAL FANTASY FABLES: Chocobo's Dungeon 1.57G
RCDE52 COD3 US 3.62G
RDPE54 Dora the Explorer: Dora Saves the Snow Princess 0.88G
REQE54 Safari Rescue 2.84G
RIGE54 Go, Diego, Go! Great Dinosaur Rescue 0.86G
RC2E78 Cars Mater-National 3.25G
RM3E01 Metroid Prime 3: Corruption 4.12G
RB4E08 resident evil 4 Wii edition (E) 3.97G
RGCEXS MiniCopter AdventureFlight 0.61G
R8PE01 SUPER PAPER MARIO 0.40G
RLPE69 LITTLEST PET SHOP 1.26G
RODE01 WarioWare: Smooth Moves 3.26G
R2WPA4 Pro Evolution Soccer 2009 3.91G

Some games takes more than 4GB, while others may take as little as 0.4G.
 

torito21

Member
OP
Newcomer
Joined
Aug 5, 2007
Messages
13
Trophies
0
XP
31
Country
wiiNinja said:
QUOTE said:
Anyway, the space wasted shouldn't be larger than 2MB

If I understand you correctly, each single layer game I want to store will occupy 4.7GB on the drive. I think the wasted space will be more than 2MB. Here's a sample of the content on my wbfs drive currently:

RDCE78 Deadly Creatures 3.94G
...
R2WPA4 Pro Evolution Soccer 2009 3.91G

Some games takes more than 4GB, while others may take as little as 0.4G.

Oh, I was referring to another issue related to the release of the used blocks, that would cause that some blocks won't be totally freed.
ie, if you format the partition, there should be 16KB used, then, if you write and remove an image, it would be 18KB used.

The issue that you comment is related to a limitation on the VFS and FUSE. You can't filter the image partitions as the file is beeing written.
In despite of this issue, this app manages correctly (it sould) the images added with another app, even if it's trimmed (size less than 4,4GB), but the wii images will always be showed as its fixed size (4,4GB or 8.75GB). So, if you extract a trimmed image (copy/paste), it will be read as it was full sized.
I will try to find a workaround, but atm I don't know how to achieve it.
 

madhutter

Member
Newcomer
Joined
Apr 7, 2009
Messages
16
Trophies
0
XP
4
Country
United States
Hi, would it not be more beneficial to make an interface to the wbfs util that currently exists and merge alot of that code into a GTK prog. Hate to say it but the game size is a massive limitation on my HDD i could only fit 90 games where as the wbfs util only using required space i could in reality double that as my average game size is 2.613333333 meaning avg. 180 games for 320gb.

Although definate kudos i couldnt make it!
 

Cypherdias

Well-Known Member
Newcomer
Joined
Mar 31, 2009
Messages
60
Trophies
0
XP
49
Country
United States
Nice idea, I just don't like all games to have full size. Can I at least rename the games I copied onto the HDD before with the wbfs tool (without their size gets changed
wink.gif
?
 

torito21

Member
OP
Newcomer
Joined
Aug 5, 2007
Messages
13
Trophies
0
XP
31
Country
Cypherdias said:
Nice idea, I just don't like all games to have full size. Can I at least rename the games I copied onto the HDD before with the wbfs tool (without their size gets changed
wink.gif
?

Yes, you can rename, remove and extract the images previously added with any other manager. Their size won't be changed in any way. (The images will always be showed with its fixed size).

ether2802.....uhhhh how to use..???

Just run ./wbfuse /dev/partition mount_point
ie: ./wbfuse /dev/sdb1 folder1 then folder1 should contain the files on your wbfs partition.
 

roku93

Well-Known Member
Member
Joined
Jan 28, 2009
Messages
437
Trophies
0
Age
27
Location
Finland
XP
229
Country
Finland
Ether, if you can't figure it out yourself, it's probably not for you just yet. This isn't yet in a state anyone can use.

EDIT: Okay, if you say so..
biggrin.gif
 

ether2802

we have the techno...!!
Former Staff
Joined
Oct 14, 2007
Messages
4,349
Trophies
0
Age
38
Location
Pto. Vallarta
XP
282
Country
Mexico
Ohhh this is for linux....so never mind it wont work for me yet
laugh.gif
, thanks for your kind words roku93, you're a real example of how a community should help each other..!!!
 
General chit-chat
Help Users
    KennieDaMeanie @ KennieDaMeanie: Fucking Amazon making me think I'm on meth