

  http://www.gc-nfo.com             - EXCLUSIVE TOOL CODING -               http://www.gc-nfo.com 
                                                         
    __                                                                                    __
 __/_/\                                      _____________  ______________/\__________   /_/\__
/\_\_\/ /\_________  /\__________         __\\_____      /_/         ____/  \         \  \_\/\_\
\/_/  _/     _____/_/__    _____/____   _/      | /     /_\     _______\/    _____     \_   \/_/
     /       \____     \   |/        \::\       |/        \     \ |:::/        |:/       \::. 
    /                   \  .          \::\______/          \      |::/         |/         \:::.
    \                   /             /::::::__/           /      |::\                    /:::::. 
  sDW\________________\/____________\/:::::::\____________/_______|:::\__________________/::::::::.
-============================================= [  G  A  M  E  C  U  B  E   -   N  F  O  ]=========-                    


==========================================================================================

 GC-NFO.COM GAMECUBE HEADER INFO 0.1 + BNR_INFO 1.0 + GAMECUBE FILESYSTEM HEADER DOCS

 15/06/2003

 All docs and tools, original content (C) [w] / gc-nfo.com
 
==========================================================================================

 What's this you might ask?
 
 Well as the current gamecube releases seem useless to most people, i decided to try to
 get atleast some info out of them.. so i opened up my favourite hexeditor and looked 
 around.. what i found was more or less useful information on the header and some other
 crap.. i hope this is usefull to anyone..


 If you know anything not listed in here please send a mail to: webmaster@gba-nfo.com
 You'll of course get credit for it in the next version of this doc..

 If you use anything from this doc please give credit for it as well, since it's all my 
 original work..

 The included tool (gc_info.exe) is just a little fun tool i made in 2 mins that displays
 some header/game info on a gamecube boot.bin file.

 You can find the boot.bin in the root of a gamecube disc.
 To extract it from a .iso you will need gcmsplit from loser (www.internalreality.com)

 I won't give any help on how to extract the files from a .iso nor on how to get the .iso

 My little tool should be self-explaining..

 Syntax: gc_info.exe <filename> (normally boot.bin)

 Once you run it over a gamecube boot.bin, the output should look like this:



 C:\coding\gc>gc_info.exe boot.bin
 ======================================================
 GC-NFO - GAMECUBE HEADER INFO 0.1 by [w] / gc-nfo.com
 ======================================================
 File................: boot.bin
 Maker Code..........: Nintendo (01)
 Serial..............: DOL-GZLE-USA (USA)
 Videomode...........: NTSC-U/C
 Internal Name.......: THE LEGEND OF ZELDA The Wind Waker for USA

  
 the other tool included will show all the game info shown in the gamecube menu normally
 did this too in some mins.. might be useful and sure is fun :)

 syntax: bnr_info.exe <filename> (normally opening.bnr)
 
 you'll find the .bnr file in the directory called "root"

 Output should look something like this:

 C:\coding\gc2>bnr_info.exe opening.bnr
 ======================================================
 GC-NFO - GAMECUBE BANNER INFO 1.0 by [w] / gc-nfo.com
 ======================================================
 File................: opening.bnr
 Game Name...........: The Legend of Zelda
 Company.............: Nintendo
 Detail Name.........: The Legend of Zelda: The Wind Waker
 Copyright by........: Nintendo
 Short Description...: Tragedy strikes a peaceful island,
                       and the Legend of Zelda begins anew!

 *nix ports of both tools will follow later.. :D


 That's all info i was able to extract for now.. i will explain all the values later in
 this doc..


 Please note if you're using the tool the makercodes.dat must be in the same directory,
 as the .exe and .bin file! otherwise it won't work.



==========================================================================================
 DOC STARTS HERE
==========================================================================================


 Below you'll find all info i found yet in the important cube files..


==========================================================================================

 boot.bin
 filesize: always 1.088 bytes
 this file should always be in the disc root (not the directory called "root")
 


 Location (Hex) |  Description
================|=========================================================================
 0x0000-0x0003  |  Game Serial (4 Bytes ASCII, GXXY)
                |  First Char is fixed value "G" in ascii
                |  Following 2 Chars are the game-id/serial
                |  Last Char is the country code.
                |
                |  E = USA/NTSC
                |  P = Europe/PAL
                |  J = Japan/NTSC
                |
                |  Example Serials:
                |
                |  DOL-GZLE-USA = Zelda USA
                |  DOL-GNHE-USA = NHL Hitz 20-20 (Got this from the freeloader header) 
                |
================|=========================================================================
 0x0004-0x0005  |  Makercode (2 Bytes ASCII)
                |
                |  Known maker codes:
                |
                |  01 - Nintendo
                |  5D - Midway
                |
                |  Note: The makercodes (for now) seem to be identical with the gba-maker
                |        codes.
                |
                |  Noticed something on the serial and maker code? Yeah! Almost identical
                |  System as used on the GBA! Nintendo is soooo lazy, eh? :)
                |
================|=========================================================================
 0x001C-0x001f  |  Fixed Value (Unknown) 
                |  I dont know anything about this, its maybe used for something like the
                |  logo check on gameboy, or crc/complement checking..
================|=========================================================================
 0x0020-0x????  |  Game Name, Description Text. (ASCII, Length unknown)
                |  The max length of this text SEEMS to be 944 bytes in ASCII chars.
================|=========================================================================
 0x0402-0x0404  |  Unknown (3 Bytes, Binary)
                |  No idea on this again...
================|=========================================================================
 0x0407         |  Fixed Value (1 Byte, Binary)
================|=========================================================================
 0x0420-0x0440  |  Unknown (32 Bytes, mixed)
                |  Lots and lots of stuff here.. too much to find out yet with only 3 
                |  releases out ;)
                |
 
   

==========================================================================================

            

 bi2.bin
 filesize: always 8.192 bytes 
 this file should always be in the disc root (not the directory called "root")

 There is not much to say on this file yet!
 From what i've read in official nintendo doc's this file includes information such as 
 controller infos, cmdd line arguments, boot mode, compatible hardware etc...
 Not much more to say right now, if you know more please contribute :)





==========================================================================================



 fst.bin
 filesize: varies
 this file should always be in the disc root (not the directory called "root")

 This file seems to contain path info to included libs or something.. no further info known
 on this one..
  



==========================================================================================



 opening.bnr
 filesize: always 6.496 bytes
 this file should always be found in the directory called "root"

 This file is the little image that is displayed in the cube menu when inserting a disc 
 into the gamecube, when in menu mode.


 Besides graphic data in raw it contains ascii text starting from offset 0x1820!
 This text contains the info shown in the menu:

 Gamename, Company/Developer, Game Description.


 THIS COUNTS FOR USA AND JAPANESE GAMES ONLY!
 Euro releases often have multi language text, i have no info on how this is stored yet..
 ...stay tuned or let me know if you know how :)


 Location (Hex) |  Description
================|=========================================================================
 0x0000-0x0003  |  Magic Word "BNR1" (4 Bytes, ASCII)
 0x0004-0x181f  |  Graphical Data (6172 Bytes, RAW)
 0x1820-0x183f  |  Gamename (32 Bytes, ASCII)
 0x1840-0x185f  |  Company/Developer (32 Bytes, ASCII)
 0x1860-0x189f  |  Full Game Title (64 Bytes, ASCII)
 0x18a0-0x18df  |  Company/Developer Fullname, or description (64 Bytes, ASCII)
 0x18e0-0x195f  |  Game Description (128 Bytes, ASCII or SHIFT-JIS (Japanese Encoding))




==========================================================================================

 END! 

 I hope this is useful to someone, comments, loveletters, spam to: webmaster@gba-nfo.com
 

 (C) 2003 GC-NFO.COM - [w] / GC-NFO


 Contact:

 IRC:    #gamecube-scene (efnet)
 E-Mail: webmaster@gba-nfo.com
 www:    http://www.gc-nfo.com 
         http://www.gba-nfo.com












