This is mainly here to serve as a backup for my extracting program. It's written in C# and uses a library I wrote called GT/GameTools. You shouldn't need GT to make sense of the file structures but you will need to alter the code to work without it.
Differences between the PS2, GameCube and Xbox versions of formats.