{"id":294,"date":"2006-07-17T21:16:36","date_gmt":"2006-07-18T04:16:36","guid":{"rendered":"http:\/\/multimedia.cx\/eggs\/?p=294"},"modified":"2007-04-02T09:13:48","modified_gmt":"2007-04-02T16:13:48","slug":"gcfuse","status":"publish","type":"post","link":"https:\/\/multimedia.cx\/eggs\/gcfuse\/","title":{"rendered":"gcfuse"},"content":{"rendered":"<p>I&#8217;m taking useless academic exercises to new heights. I wrote <a href=\"http:\/\/multimedia.cx\/gcfuse\/\">a utility called gcfuse<\/a> that allows you to mount filesystems replicated, one way or another, from <a href=\"http:\/\/en.wikipedia.org\/wiki\/Gamecube\">Nintendo GameCube<\/a> DVDs.<\/p>\n<p><center><br \/>\n<a href=\"http:\/\/en.wikipedia.org\/wiki\/Gamecube\"><img decoding=\"async\" src=\"\/eggs\/images\/200px-NGC_Gamecube.jpg\" alt=\"Nintendo GameCube\" \/><\/a><br \/>\n<\/center><\/p>\n<p>What on earth for? I&#8217;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&#8217;m playing right now is <em><a href=\"http:\/\/www.mobygames.com\/game\/gamecube\/metroid-prime\">Metroid Prime<\/a><\/em>, which has visuals that certainly appear to be pre-rendered multimedia files. Let&#8217;s find out:<\/p>\n<pre>\r\n$ gcfs metroidprime.gcm gcm\/\r\n\r\n$ ls gcm\/\r\nAudio         Metroid4.pak  NESemu.rel    SlideShow.PAK   metroid5.pak\r\nAudioGrp.pak  Metroid6.pak  NESemuD.rel   TestAnim.Pak    opening.bnr\r\nGGuiSys.pak   Metroid7.pak  NESemuP.rel   Tweaks.Pak\r\nMetroid1.pak  Metroid8.pak  NoARAM.pak    Video\r\nMetroid2.pak  MidiData.pak  SamGunFx.pak  client_pad.bin\r\nMetroid3.pak  MiscData.pak  SamusGun.pak  default.dol\r\n\r\n$ ls gcm\/Video\/\r\n00_first_start.thp            08_GBA_fileselect.thp  attract9.thp\r\n01_startloop.thp              AfterCredits.thp       creditBG.thp\r\n[...]\r\n<\/pre>\n<p>Right away, a new multimedia format&#8211; <a href=\"http:\/\/wiki.multimedia.cx\/index.php?title=THP\">THP<\/a>. The <a href=\"http:\/\/www.gc-linux.org\/\">GC-Linux<\/a> project already has documentation about this <a href=\"http:\/\/www.gc-linux.org\/docs\/yagcd\/chap15.html#sec15.34\">MJPEG-like format<\/a>. Samples, of course, are <a href=\"http:\/\/samples.mplayerhq.hu\/game-formats\/thp\/\">available for your inspection<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Mount GameCube filesystems&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[29,30,3],"tags":[],"class_list":["post-294","post","type-post","status-publish","format-standard","hentry","category-game-hacking","category-nintendo","category-open-source-multimedia"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/posts\/294","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/comments?post=294"}],"version-history":[{"count":0,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/posts\/294\/revisions"}],"wp:attachment":[{"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/media?parent=294"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/categories?post=294"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/multimedia.cx\/eggs\/wp-json\/wp\/v2\/tags?post=294"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}