# mkdcdisc disc manifest -- the table of contents each format lays down.
#
# Regenerate with:  meson compile -C builddir regen-disc-manifest
# Do not edit by hand. See tests/e2e/test_disc_manifest.cpp for what
# each field means and why a change here needs explaining.
#
# Every value below is one mkdcdisc decides, so this file is the same
# on every platform. How many sectors a filesystem occupies is not:
# libisofs decides that, and its version differs across the CI targets.
# So a data track's length is never stated, and neither is a position
# that follows one. What the layout puts around the filesystem is
# stated instead:
#
#   gap N      distance from the end of the previous track
#   start +N   the same, measured across a session boundary
#   run-out N  how far the tracks reach past the end of the volume
#   iso+N      the disc total, less every filesystem on it
#
# An audio track's length is its own and is stated outright. Absolute
# LBAs appear only where the disc format fixes them: track 1 at 0, and
# a GD-ROM's high-density area at 45000.
#
# LBAs are native throughout: what the container stores, with no FAD
# bias added or removed on the way in or out. A stray +150 is a diff.

## audio-data / cdi
# The default MIL-CD: a silent audio session, then the data session
args         : -D "$SRC/files" -N
sessions     : 2
tracks       : 2
disc.sectors : iso+18604
session 1    : tracks 1
  track 1    : audio(0x0)       ctrl 0 size 2352 lba 0 pregap 150 sectors 302
session 2    : tracks 1
  track 2    : mode2(0x2)       ctrl 4 size 2336 start +11400 pregap 150
volume       : track 2, MANIFEST / SEGA SEGAKATANA, spans tracks 2-2, run-out 2
  file       : /1ST_READ.BIN 4096 bytes
  file       : /AAAA.TXT 2 bytes
  dir        : /SUB
  file       : /SUB/NESTED.TXT 7 bytes
  file       : /ZZZZ.TXT 6000 bytes

## audio-data / mds
# The default MIL-CD: a silent audio session, then the data session
args         : -D "$SRC/files" -N
sessions     : 2
tracks       : 2
session 1    : start -150 end +0 tracks 1
  track 1    : audio(0xa9)      ctrl 0 size 2352 lba 0 pregap 150 sectors 302
session 2    : start +11250 end +0 tracks 1
  track 2    : mode2_form1(0xec) ctrl 4 size 2352 start +11400 pregap 150
volume       : track 2, MANIFEST / SEGA SEGAKATANA, spans tracks 2-2, run-out 2
  file       : /1ST_READ.BIN 4096 bytes
  file       : /AAAA.TXT 2 bytes
  dir        : /SUB
  file       : /SUB/NESTED.TXT 7 bytes
  file       : /ZZZZ.TXT 6000 bytes

## audio-data / nrg
# The default MIL-CD: a silent audio session, then the data session
args         : -D "$SRC/files" -N
sessions     : 2
tracks       : 2
session 1    : start -150 end +0 tracks 1
  track 1    : audio(0x7000001) ctrl 0 size 2352 lba 0 pregap 150 sectors 302
session 2    : start +11250 end +0 tracks 1
  track 2    : mode2_form1(0x6000001) ctrl 4 size 2352 start +11400 pregap 150
volume       : track 2, MANIFEST / SEGA SEGAKATANA, spans tracks 2-2, run-out 2
  file       : /1ST_READ.BIN 4096 bytes
  file       : /AAAA.TXT 2 bytes
  dir        : /SUB
  file       : /SUB/NESTED.TXT 7 bytes
  file       : /ZZZZ.TXT 6000 bytes

## data-data / cdi
# Data/Data: no audio session at all, so both sessions carry a volume
args         : -L data-data -D "$SRC/files" -N
sessions     : 2
tracks       : 2
disc.sectors : iso+18604
session 1    : tracks 1
  track 1    : mode2(0x2)       ctrl 4 size 2336 lba 0 pregap 150
session 2    : tracks 1
  track 2    : mode2(0x2)       ctrl 4 size 2336 start +11400 pregap 150
volume       : track 1, MANIFEST / SEGA SEGAKATANA, spans tracks 1-1, run-out 2
  file       : /1ST_READ.BIN 4096 bytes
  file       : /AAAA.TXT 2 bytes
  dir        : /SUB
  file       : /SUB/NESTED.TXT 7 bytes
  file       : /ZZZZ.TXT 6000 bytes
volume       : track 2, MANIFEST / SEGA SEGAKATANA, descriptors only, sectors 302

## data-data / mds
# Data/Data: no audio session at all, so both sessions carry a volume
args         : -L data-data -D "$SRC/files" -N
sessions     : 2
tracks       : 2
session 1    : start -150 end +0 tracks 1
  track 1    : mode2_form1(0xec) ctrl 4 size 2352 lba 0 pregap 150
session 2    : start +11250 end +0 tracks 1
  track 2    : mode2_form1(0xec) ctrl 4 size 2352 start +11400 pregap 150
volume       : track 1, MANIFEST / SEGA SEGAKATANA, spans tracks 1-1, run-out 2
  file       : /1ST_READ.BIN 4096 bytes
  file       : /AAAA.TXT 2 bytes
  dir        : /SUB
  file       : /SUB/NESTED.TXT 7 bytes
  file       : /ZZZZ.TXT 6000 bytes
volume       : track 2, MANIFEST / SEGA SEGAKATANA, descriptors only, sectors 302

## data-data / nrg
# Data/Data: no audio session at all, so both sessions carry a volume
args         : -L data-data -D "$SRC/files" -N
sessions     : 2
tracks       : 2
session 1    : start -150 end +0 tracks 1
  track 1    : mode2_form1(0x6000001) ctrl 4 size 2352 lba 0 pregap 150
session 2    : start +11250 end +0 tracks 1
  track 2    : mode2_form1(0x6000001) ctrl 4 size 2352 start +11400 pregap 150
volume       : track 1, MANIFEST / SEGA SEGAKATANA, spans tracks 1-1, run-out 2
  file       : /1ST_READ.BIN 4096 bytes
  file       : /AAAA.TXT 2 bytes
  dir        : /SUB
  file       : /SUB/NESTED.TXT 7 bytes
  file       : /ZZZZ.TXT 6000 bytes
volume       : track 2, MANIFEST / SEGA SEGAKATANA, descriptors only, sectors 302

## cdda / cdi
# Audio/Data with two CD-DA tracks of different lengths in session 1
args         : -D "$SRC/files" -c "$SRC/audio-a.raw" -c "$SRC/audio-b.raw" -N
sessions     : 2
tracks       : 3
disc.sectors : iso+19152
session 1    : tracks 2
  track 1    : audio(0x0)       ctrl 0 size 2352 lba 0 pregap 150 sectors 400
  track 2    : audio(0x0)       ctrl 0 size 2352 gap 150 pregap 150 sectors 300
session 2    : tracks 1
  track 3    : mode2(0x2)       ctrl 4 size 2336 start +11400 pregap 150
volume       : track 3, MANIFEST / SEGA SEGAKATANA, spans tracks 3-3, run-out 2
  file       : /1ST_READ.BIN 4096 bytes
  file       : /AAAA.TXT 2 bytes
  dir        : /SUB
  file       : /SUB/NESTED.TXT 7 bytes
  file       : /ZZZZ.TXT 6000 bytes

## cdda / mds
# Audio/Data with two CD-DA tracks of different lengths in session 1
args         : -D "$SRC/files" -c "$SRC/audio-a.raw" -c "$SRC/audio-b.raw" -N
sessions     : 2
tracks       : 3
session 1    : start -150 end +0 tracks 2
  track 1    : audio(0xa9)      ctrl 0 size 2352 lba 0 pregap 150 sectors 400
  track 2    : audio(0xa9)      ctrl 0 size 2352 gap 150 pregap 150 sectors 300
session 2    : start +11250 end +0 tracks 1
  track 3    : mode2_form1(0xec) ctrl 4 size 2352 start +11400 pregap 150
volume       : track 3, MANIFEST / SEGA SEGAKATANA, spans tracks 3-3, run-out 2
  file       : /1ST_READ.BIN 4096 bytes
  file       : /AAAA.TXT 2 bytes
  dir        : /SUB
  file       : /SUB/NESTED.TXT 7 bytes
  file       : /ZZZZ.TXT 6000 bytes

## cdda / nrg
# Audio/Data with two CD-DA tracks of different lengths in session 1
args         : -D "$SRC/files" -c "$SRC/audio-a.raw" -c "$SRC/audio-b.raw" -N
sessions     : 2
tracks       : 3
session 1    : start -150 end +0 tracks 2
  track 1    : audio(0x7000001) ctrl 0 size 2352 lba 0 pregap 150 sectors 400
  track 2    : audio(0x7000001) ctrl 0 size 2352 gap 150 pregap 150 sectors 300
session 2    : start +11250 end +0 tracks 1
  track 3    : mode2_form1(0x6000001) ctrl 4 size 2352 start +11400 pregap 150
volume       : track 3, MANIFEST / SEGA SEGAKATANA, spans tracks 3-3, run-out 2
  file       : /1ST_READ.BIN 4096 bytes
  file       : /AAAA.TXT 2 bytes
  dir        : /SUB
  file       : /SUB/NESTED.TXT 7 bytes
  file       : /ZZZZ.TXT 6000 bytes

## gdrom / gdi
# A GD-ROM: low-density data and audio, then the high-density track
args         : -D "$SRC/files" --gdi-truncate
sessions     : 2
tracks       : 3
session 1    : tracks 2
  track 1    : mode1(0x1)       ctrl 4 size 2352 lba 0
  track 2    : audio(0x0)       ctrl 0 size 2352 gap 150 sectors 526
session 2    : tracks 1
  track 3    : mode1(0x1)       ctrl 4 size 2352 lba 45000
volume       : track 1, MANIFEST / SEGA SEGAKATANA, spans tracks 1-2, run-out 0
  file       : /ABSTRACT.TXT 15 bytes
  file       : /BIBLIOGR.TXT 46 bytes
  file       : /COPYRIGH.TXT 66 bytes
volume       : track 3, MANIFEST / SEGA SEGAKATANA, spans tracks 3-3, run-out 150
  file       : /1ST_READ.BIN 4096 bytes
  file       : /AAAA.TXT 2 bytes
  dir        : /SUB
  file       : /SUB/NESTED.TXT 7 bytes
  file       : /ZZZZ.TXT 6000 bytes

## gdrom-2048 / gdi
# The same, written as 2048-byte track files instead of raw 2352
args         : -D "$SRC/files" --gdi-truncate --gdi-sector-size 2048
sessions     : 2
tracks       : 3
session 1    : tracks 2
  track 1    : mode1_cooked(0x1) ctrl 4 size 2048 lba 0
  track 2    : audio(0x0)       ctrl 0 size 2352 gap 150 sectors 526
session 2    : tracks 1
  track 3    : mode1_cooked(0x1) ctrl 4 size 2048 lba 45000
volume       : track 1, MANIFEST / SEGA SEGAKATANA, spans tracks 1-2, run-out 0
  file       : /ABSTRACT.TXT 15 bytes
  file       : /BIBLIOGR.TXT 46 bytes
  file       : /COPYRIGH.TXT 66 bytes
volume       : track 3, MANIFEST / SEGA SEGAKATANA, spans tracks 3-3, run-out 150
  file       : /1ST_READ.BIN 4096 bytes
  file       : /AAAA.TXT 2 bytes
  dir        : /SUB
  file       : /SUB/NESTED.TXT 7 bytes
  file       : /ZZZZ.TXT 6000 bytes

## gdrom-gdda / gdi
# GD-DA: the high-density filesystem split around two audio tracks
args         : -D "$SRC/files" -c "$SRC/audio-a.raw" -c "$SRC/audio-b.raw" --gdi-truncate
sessions     : 2
tracks       : 6
session 1    : tracks 2
  track 1    : mode1(0x1)       ctrl 4 size 2352 lba 0
  track 2    : audio(0x0)       ctrl 0 size 2352 gap 150 sectors 526
session 2    : tracks 4
  track 3    : mode1(0x1)       ctrl 4 size 2352 lba 45000
  track 4    : audio(0x0)       ctrl 0 size 2352 gap 150 sectors 400
  track 5    : audio(0x0)       ctrl 0 size 2352 gap 0 sectors 300
  track 6    : mode1(0x1)       ctrl 4 size 2352 gap 150
volume       : track 1, MANIFEST / SEGA SEGAKATANA, spans tracks 1-2, run-out 0
  file       : /ABSTRACT.TXT 15 bytes
  file       : /BIBLIOGR.TXT 46 bytes
  file       : /COPYRIGH.TXT 66 bytes
volume       : track 3, MANIFEST / SEGA SEGAKATANA, spans tracks 3-6, run-out 150
  file       : /1ST_READ.BIN 4096 bytes
  file       : /AAAA.TXT 2 bytes
  dir        : /SUB
  file       : /SUB/NESTED.TXT 7 bytes
  file       : /ZZZZ.TXT 6000 bytes
