I’m taking useless academic exercises to new heights. I wrote a utility called gcfuse that allows you to mount filesystems replicated, one way or another, from Nintendo GameCube DVDs.
What on earth for? I’ve heard tales of strange and wonderful FMV formats on those petite GameCube DVDs and I just had to know for myself. One game I’m playing right now is Metroid Prime, which has visuals that certainly appear to be pre-rendered multimedia files. Let’s find out:
$ gcfs metroidprime.gcm gcm/ $ ls gcm/ Audio Metroid4.pak NESemu.rel SlideShow.PAK metroid5.pak AudioGrp.pak Metroid6.pak NESemuD.rel TestAnim.Pak opening.bnr GGuiSys.pak Metroid7.pak NESemuP.rel Tweaks.Pak Metroid1.pak Metroid8.pak NoARAM.pak Video Metroid2.pak MidiData.pak SamGunFx.pak client_pad.bin Metroid3.pak MiscData.pak SamusGun.pak default.dol $ ls gcm/Video/ 00_first_start.thp 08_GBA_fileselect.thp attract9.thp 01_startloop.thp AfterCredits.thp creditBG.thp [...]
Right away, a new multimedia format– THP. The GC-Linux project already has documentation about this MJPEG-like format. Samples, of course, are available for your inspection.