Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wolfenstein 3D (3DO, USA, 1995) — a documentation pass over one pressing

One CD-ROM, read end to end and written up. The disc is not in this repository and never will be; everything here is a measurement of it, and every figure carries the command that makes it again.

object Wolfenstein 3D (USA).chd, 58,013,447 bytes, sha1 6c335bea22b365379dc9f5b2f0cf0ee0f5b2d933
pressing one MODE1_RAW track, 56,702 sectors, 17.0276 % of a 74-minute CD
denominator 116,125,696 bytes of user data (56,702 × 2,048)
file system Opera — not ISO 9660. 197 files, 22 directories, 87,529,786 bytes = 75.3750 %
volume declares 56,320 blocks = 110 MiB exactly; 382 sectors past it, all zero
mastering fill iamaduck, 13,379 sectors = 23.5953 %, in one free region
thesis 59.7896 % recorded music and sound — 13:01.51 of 44.1 kHz stereo AIFF-C plus 42 effects
video 11,673,600 bytes of Data Streamer, Cinepak, two logo films at 10 and 12 frames/s
binaries 37 ARM Image Format images; entry point 0x100 on 37 of 37; 20 compressed, all the SDK's
identified 71.1132 % of the user area is a format derived on this disc
names published 21, all of them drawn in pixels, plus two build logins
studio / publisher Logicware / Interplay — both count zero as strings

It is the third 3DO disc in this collection, after Crash 'n Burn (1993) and Super Street Fighter II Turbo (1994). What is true of the platform lives in 3do-platformnotes-doc; what is true of this title lives here.

What a third disc was for

Two discs had produced sixty claims marked [2 of 2] — a rule invented out of two points. A third disc is the first thing that can break one, and this one broke six of them, deleted an explanation, and corrected a [2 of 2] that had never been checked with a hash. It also carries three formats neither previous disc had:

  • the Data Streamer, which the platform notes had marked [deleted] for two discs and which turns out to be Cinepak — spelled cvid, in lower case, in a field nobody had counted. 07, 08;
  • APPSCRN, the banner screen, an open question since the first disc. This disc has one and it is the SDK's untouched placeholder: the console shows FICTIONAL DEVELOPER presents BOGUS TITLE. 10;
  • BRGR, an archive format holding 368 members, ninety of them playable maps, and cels with sixteen of their twenty control-block fields thrown away. 11, 12.

And one thing nobody was looking for: /rom_tags is a table of 32-byte records, and one of them is a date. Three discs, three values, monotone in press order, all three landing in 1993–1995 under a 1904 epoch — with the first twenty-five days before its disc's documented release. 14.

The chapters

00 predictions, written before the disc was opened. Scored 50.0 of 58
01 what the object is and what the denominator is
02 the technical sheet, one command per line, with an Engine section
03 the Opera reader ran unchanged for the third time, and the case bit found a referee
04 all 56,702 sectors, and an arithmetic that closes to 0.00
05 STARTOPERA rev 1.27, peabody, and a script that lost three steps
06 a compression test that was firing on twenty images, and the first toolchain banner on the platform
07 the Data Streamer container, derived
08 cvid, 550 frames decoded, and two company names in moving pictures
09 the thesis: 59.7896 %, and why Red Book was never the question
10 APPSCRN, and an open question closed three ways
11 BRGR: 368 members, slack zero, and 3.02 % honestly unknown
12 ninety maps, six episode titles, and a filename that disagrees with its own sign
13 twenty-one names, and the personal-data decisions
14 /signatures, /rom_tags, and a date nobody knew was there
15 the SDK across 27 months, and a font that ate 90 % of the growth
16 three discs of one console, and which series are lines
17 eight errors in the brief, seven in the platform notes, five of mine
18 the scoring, and why an overshoot this large is a problem
19 28,595,910 bytes nobody chose, and what is still open

The lists

notes/ carries the raw measurements, including the three hash lists the platform notes require:

notes/sha1-all.txt      197 records, SHA-1 first, then size, then path
notes/copies-list.txt   77 records, one per copy the directory records declare
notes/cel-list.txt      20 records, one per cel: geometry, depth, flags, PDAT hash
notes/rez-members.txt   368 records, one per archive member

plus chd.txt, label.txt, listing.txt, sectors.txt, copies.txt, casediff.txt, aif.txt, aif-stub.txt, aif-entropy.txt, stream.txt, rez.txt, audio.txt, thesis.txt, account.txt, entropy.txt, sdkdiff.txt, crossall.txt and strings-count.txt.

The tools

tools/ holds 313 Python programs, of which 35 are for this platform. Fourteen were written for this disc:

streamread.py   the Data Streamer container, with five negative controls
filmprobe.py    which words of a chunk vary across a file and which do not
stripwalk.py    do the FRME payloads walk as Cinepak strips
subwalk.py      does a strip's size word include its own header (818 of 818: yes)
cvidmovie.py    decode the frames, and a contact sheet
sndsread.py     the SNDS half, the stream clock, and a WAV
appscrn.py      the banner screen
rezread.py      the BRGR archive
rezcel.py       the headless cels inside it
aifprobe.py     what an AIF's branch at offset 0 actually points at
aifstub.py      the appended decompressor, and its length
aifentropy.py   compressed data against ARM code, two statistics
pixorder.py     five candidate framebuffer orders, rendered and scored
copylist.py     one record per declared copy

and aifcensus.py and account3do.py were corrected. Every tool that reads a format has a validate mode whose negative controls must fail before anything is censused.

Rules

No network, nothing executed, the .chd never modified. Public formats — CHD, AIFF-C, SDX2, ARM Image Format, the CCB, Cinepak — are used from their public definitions, and this repository says so where it does. Everything else — the Data Streamer, APPSCRN, BRGR, the headless cels, the rom_tags records — is derived from the bytes here, or declared not derived with a list of what was tried.

About

Wolfenstein 3D (3DO, USA, 1995) read end to end: 56,702 sectors, 197 files, 59.79 % recorded audio. The Data Streamer the 3DO checklist had marked dead for two discs, decoded frame by frame - and its codec is Cinepak, spelled 'cvid' in lower case. Six two-disc rules broken.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages