Here's a tute I wrote a few years ago..
TUTORIAL: Convert an .iso to a .wbfs using a Mac (potential for Linux users too)
As anyone with a mac will know, there are few programs that directly relate to game hacking.
There are plenty for pcs and sure, you can use bootcamp, parallels or wine to get many of these programs to run on a mac but if you don't want to install any of these and be able to reduce you isos to a more efficient size using native macosx, here is my way to do it.
Before I start I must acknowledge that the actual file that does the converting was not created by me but (as mentioned above), by Oggzee.
As also mentioned above, thanks Cambo for the script.
I found out about it all of this about two years ago through a mod (rduke), on another forum. Many thanks to him as well.
Now this tutorial presumes you have a mac (I can only vouch for this being compatible with snowleopard as I haven't got lion yet), and some .iso files that you've ripped previously and now want the convenience of being able to convert them to .wbfs without have to boot up the like of Wii Backup Manager on virtual windows or a pc.
NB: This also avoids using other macosx wbfs managers that require a WBFS formatted disc to write to. If you follow this tutorial correctly, you will be able to write a .wbfs file on any Wii/softmod supported HDD file system (eg FAT32, NTFS, HFS+, EXT2/3).
That said you might also note that the below may very well work on Linux so if you want a .wbfs converter that will work on Linux, you may also be in for a treat.
OK, if the above is still you lets begin.
Firstly, download the following attached file:
wbfs_file_2.9.zip
Unzip the file and you will notice there are a number of folders. Open the mac_osx folder and copy and paste the wbfs_file into the Applications folder (use the wbfs_file from the Linux folder if that is the os your applying this script to - obviously you know where to paste this file in your os).
That's the simple part.
Second (the not so simple part), open a blank text file with TextEdit (I'm using this but any text editor will work just as well).
Inside you will have to cut, paste and configure the following script:
Code:
#! /bin/sh
#
# convert_all shell script for MacOSX - v1.0 by Cambo
#
# PRELIMINARIES
# 1) Copy the file wbfs_file (v1.4 or above) in the /Applications/ system folder
# 2) Save this file (wherever you want) with the name "convert_all"
# 3) Give this file the exec rights with the terminal command "chmod 777 convert_all"
#
# SETTINGS
# set the following paths for the source and destination folders
#
SRC="/Users/myname/Desktop/source/"; # you can have also SRC="/Volumes/HD1/source/"
DEST="/Users/myname/Desktop/destination/"; # you can have also SRC="/Volumes/HD2/destination/"
#
# USAGE
# Just double click on this script and all the .iso files in the SRC folder
# will be converted into the DEST folder, the info .txt files will be created there too
#
cd /Applications/;
find $SRC -name "*.iso" -exec ./wbfs_file -l f2 {} convert $DEST \;
Now, as you can see, the script has comments which basically tell you what to do however, I'm here to explain what it's actually saying.
Before you start typing anything into the script, you have to decide where your source (SRC), folder will be located and where your destination (DEST), folder will be. This is entirely up to you however for the purposes of this tutorial I will explain with an example.
I want to put my iso in a folder called game_iso (you can call it whatever you like) and it will be in my 'home' directory - on a mac, this directory as an icon of a house on it.
I will call this directory 'home' but you need to call it whatever name appears in Finder to the right of that house icon.
The full path of my game_iso folder would be (you can see this in Finder), Macintosh HD/users/home/game_iso
However, in the script above you need to replace the line:
Code:
SRC="/Users/myname/Desktop/source/";
with:
Code:
SRC=/Users/home/game_iso/
OK, that's the source taken care of, now for the destination.
Testing this I've found the the smallest .wbfs files are written to a FAT32 formatted HDD so I wrote the next part of the script to send the .wbfs file to the FAT32 partition on an external hard drive and to a folder named 'wbfs'. I've named this partition 'WII_FAT', but you will have to put the name of your corresponding partition and/or drive - it will be the name that shows up on your desktop when the partition/drive is mounted.
This is how you write that part of the script:
Code:
DEST=/Volumes/WII_FAT/wbfs/
our new line replaces this one from the script above:
Code:
DEST="/Users/myname/Desktop/destination/";
You don't have to save to an external drive. If you want to save back to your mac hdd you can.
Here's an example of the script you might write if you wanted to destination to be a folder called 'wbfs' your desktop:
Code:
DEST=/Users/home/Desktop/wbfs/
And that's it!
All you have to do now is save the script and give your mac permission to access it. (I've edited this bit from the original so if you've had a go and it didn't work - this additional bit will fix it.
Go to File (in TextEdit), select Save As and then give your file a name (can be whatever), and save as a 'plain text encoding' Unicode (UTF-8), .txt file.
Once you've saved this file, open up Terminal (it's located in Applications/Utilities), and type the following:
Code:
chmod 777 /Users/home/Desktop/nameofscript.txt
where 'nameofscript.txt' is obviously the name of your script - don't forget the extension.
Lastly, go back to the file on your desktop and click on it so it is highlighted (as you would to change the name of a file), to change the extension (Please note: the extension may not be visible at this stage - it doesn't matter you can just type the following anyway). Type the extension .command after the file name.
OK, now place the iso or iso's (this will convert all the iso's in your designated source folder simultaneously!), in the folder you chose earlier and make sure your destination partition/drive is mounted.
Once the file and drive are in place, just double click on the script file and a terminal window will pop up and you will be able to view the program as it runs and completes the conversion/s like magic.
And yes, this should also work under linux. Just compile wbfs_file or put the pre-compiled version to e.g. /usr/local/bin (or some place else that gets searched for binaries), make the script executable by issuing a "chmod u+x script.sh" and then you should be good to go