Disc Layout

From Pcbotaku wiki
Jump to: navigation, search

GD-ROM Layout

GD-ROM's contain 2352 bytes pr sector, with 2048 available for data payload and the rest for error-checking - the same as CD-rom's.

Naomi GD-ROMS contain 3 sessions.

  • low density data track (variable size)
  • audio track (variable size)
  • high density data track (fixed size, always starts at sector 45000, or 10:00:00 - ten minutes)

The high density track that always starts at sector 45000 contains 3(4) files. The last sector is 549299, and with two seconds for postgap, 75*2, last usable sector is 549 149

  • NAOMIGD.ROM - identical file on all(?) games, probably equivalent to 1ST_READ.BIN on dreamcast
  • Bxx.BIN - a 256 byte file, containing name of image file to be loaded, and a CRC32 checksum of image file
  • a DIMM image file, the actual game loaded into DIMM memory

In addition, the first 16 sectors (32768 bytes) must be present - dreamcast docs often refer to this chunk as "IP.BIN", although you can call it whatever you want.

Creating Compatible layout

Iso image of game-data must begin at sector 45000. To acheive this, first make a dummy iso image that is exactly 92,160,000 bytes long - 92160000 bytes/2048 bytes pr sector=45000, this can be done by making an iso of a blank file that is 91,80,3648 bytes. In this example, we may call this "45000.iso".

Next create an iso for the game data containing the 3 files for the high density data track, we can call this "track3.iso":

  • Bxx.BIN
  • NAOMIGD.BIN
  • GAME.BIN
mkisofs -sort ./sfile -v -A" " -sysid "SEGA SEGAKATANA" -publisher "SEGA ENTERPRISES,LTD." -V "ZERO3_UPPER_GD" -volset "ZERO3_UPPER_GD" -p "CRI CD CRAFT VER.2.32" -o track3.iso -C0,45000 -G IP.BIN ./t3files

The processing of sort files appear to be pseudorandom, and highly annoying. This works, sfile:

./t3files/NAOMIGD.BIN  97
./t3files/BCY.BIN 98
./t3files/ZERO3ROM.BIN 99
./t3files/BLANK 100

Sort file Rules: files closes to the rim (highest sector) should be placed FIRST in the file, with the LOWEST number. The mkisofs parameter ./t3files, ./t3files/*, t3files/* gives different sorts. Parameter ./t3files matches ./t3files/ in the file. Go figure..

You don't need a large dummy file (BLANK) that is positioned at the start of the ISO, but the game loads faster - and is a trick to place the files at the very end of the disc like the original GD-ROM.

combine the images with dd, or copy /b and burn.

dd if=track3.iso of=45000.iso bs=2048 seek=45000