GCMTools are a suite of tools to basically rip apart your gamecube games
and put them back together however you wish. Its aim is to give you access to
everything so you can modify and hack your games to your wildest dreams.
Currently, there are 5 executables that are part of this package:
gcmtool- for auditing, extracting and editing Nintendo GameCube DVD images
(.iso or .gcm).
gcmdiskheadertool- once you've extracted the disk header, this tool lets
you modify it.
gcmdiskheaderinfotool- for modifying the diskheaderinfo
gcmapploadertool- currently only allows you to view info about the apploader
when there is a better understanding of the apploader, I'll give access
to editing features. For now, you have to use a hex editor.
gcmbnrtool- allows modification of the opening.bnr file found in all
gamecube games. This tool allows you to extract the icon file of a game
either as a photoshop .raw or a .ppm for conversion to other formats.
Unfortunately, I'm having trouble getting the ppm import working, so
you'll have to use a hex editor to delete the ppm header if you want
to re-inject an icon.
WHEN MODIFYING YOUR GCM, ALWAYS WORK ON A BACKUP COPY!
Thanks to gc-linux.org's YAGCD for all of the information it contained.
I wouldn't have been able to do this project without it.
Also Mr. Spiv for porting doltool to OSX so I could check my work in my
own code against something.
Better documentation is available online on the webstie at the top of this
What's new in GCMTools
[all] fixed a bug where the file would be opened as read/write even if we
were only going to be reading (which would lead to permission denied errors
on read-only files)
[all] improved hexadecimal value output
[all] for all unsigned 32-bit int commandline input, if you precede the value
with "0x" the value will be interpreted as hex. (ie 0x0100 for 256)
[gcmbnrtool] fixed a bug where a bnr was incorrectly always identified as being
v2 when deciding how to read the info.
[gcmtool] added a way to replace files. Greatly helps if you just want to modify
one file, and not the whole system.