A byte-level study of a 325,758,928-byte GOG installation in which 94.17 % of the bytes are one file, that file is a CD, the CD's volume descriptor is dated seventeen years after the game it contains, and the same 34-byte directory record appears four times inside it carrying three different dates.
Nothing here is emulation, patching or preservation advocacy. It is measurement: every number carries the command that reproduces it, the sixty-one predictions were written before a single file was opened and are scored whether they won or lost, and the four container formats are described in the docstrings of the tools that read them.
The object is not in this repository and was never committed to it. It is a
live GOG installation on a drive this repository does not own; nothing in this
session wrote to that drive. A verified working copy was made under an ignored
directory. One field belongs to the person who owns the installation — the
install path, which goglog.ini repeats five times — and is **redacted as <G>
everywhere in this repository. There is no other personal data: a search for
C:\Users, Documents and Settings and /Users/ across all 65 installed files
and the 209 files inside the disc image returns nothing.
This is also the first object in the collection that is openly the work of three separate groups of people, twenty years apart: Westwood Studios in 1992–1994, the DOSBox volunteers in the 2000s, and GOG in 2011. Every figure below names the layer it belongs to, because a 2011 date in an ISO root is not Westwood's mistake and a 1992 timestamp on a 9 KB library is not GOG's achievement.
| title | Lands of Lore: The Throne of Chaos, the CD revision. The disc calls itself LOL_V102 — version 1.02 — in the one field designed to hold a name |
| platform | PC/DOS, real mode, 16-bit. Four MZ executables, seven video-driver overlays (cga ega mga tga vga xga yga), and two LE VxDs for an operating system the game does not run on |
| the object | 65 files, 5 directories, 325,758,928 bytes — agreed to the byte by du -sb and by the sum of 65 stat calls |
| the three layers | the game 33 files / 310,242,796 B / 95.24 % · the emulator 14 / 5,883,321 / 1.81 % · the storefront 18 / 9,632,811 / 2.96 %. 01 |
| the studio | Westwood Studios, and for the first time in this collection the object says so in a field built for the purpose: the publisher of the volume descriptor. It repeats it in SETUP.EXE (Westwood Studios -- Lands of Lore) and 38 times in INSTALL.EXE. It appears zero times in MAIN.EXE |
| the disc | GAME.DAT is an ISO 9660 image: 149,781 sectors of 2,048, two descriptors, no Joliet, no El Torito, no HFS — and the absence is measured, not assumed: the 32,768-byte system area is 32,768 zero bytes |
| the sector map | 149,753 file + 8 directory + 2 path table + 16 system area + 2 descriptors = 149,781. Zero sectors belong to nobody and zero belong to two things. The first object in this collection to close exactly |
| the clocks | four, and three of them are not the product's. 209 file records say 1992–1994; the volume descriptor says 2011-09-13; three storefront files say 2017 and 2019; the other 62 mtimes say the day of installation, inside a ten-second window |
| the four copies | the root directory's 34-byte record is written four times in the image and all four disagree: 1970-01-01T01:00:00 in the descriptor, 2011-09-13T11:39:37 twice in the root's own extent, and all zero in DATA's parent record. 03 |
| the tell | the GMT-offset byte. 224 of the 226 directory records carry 0. The two that carry 2011 carry 8 — two quarter-hours times four, Central European Summer Time. The timezone field is a map of what was edited in 2011, and it is 104 bytes wide |
| the speech | 4,912 recorded lines in thirty .TLK files, 228,244,919 bytes, 70.07 % of the object. Every one is a Creative Voice File: 8-bit unsigned PCM, mono, uncompressed, at 22,222.22 Hz — not 22,050, because the rate is a one-byte time constant and the object states it exactly |
| the running time | 10,271.5636 seconds — 2 h 51 m 11.56 s — summed from 4,912 declared block lengths with zero samples decoded. Counting the speech that lives outside the .TLK files as well: 5,508 recordings, 253,486,652 bytes, 3 h 12 m 11.50 s, 77.81 % of the object |
| the shape of the speech | median line 1.907 s, mean 2.091, longest 6.566 s, and not one line of 4,912 runs longer than seven seconds. Lines, not monologues |
| how it is addressed | by number. A line is 001A0 in archive 22; the member is named 001A0.22. Nothing in 4,912 names is a word |
| the archives | 132 .PAK, 2,297 members, and all 132 close to the byte. The .TLK files are the same format with a different extension: 7,209 members in total, every one an 8.3 upper-case name, none containing a path separator |
| the format correction | the archive terminator is nine bytes, not five — offset, empty name, and a zero uint32 nobody mentions. 132 of 132 disagree with the five-byte reading by exactly four bytes |
| the game, three times | the installed game is a copy of files inside the image; WESTWOOD.001 is a third copy of twenty-one of them, inside the image, in a fourth container format; and 17 loose .ADL are members of an archive inside the image. dupes.py sees 64,230 bytes of this. The truth is 3,491,298 loose, and 128,461,128 across all 7,504 leaves — 20.449 % |
| the ten bytes | of the 32 loose Westwood files, 31 exist inside the image and one does not: LANDS.CFG, 10 bytes. It is the only byte of the game layer that the installation itself wrote |
| the translation | the three language trees are 60,518,486 bytes and 57.76 % of that is the same content three times. One level down, 368 of 377 archive members are byte-identical across all three languages: translating this game costs 142,617 bytes — 0.739 % |
| the only source tree | WESTWOOD.001 opens with a 612-byte files.lst naming every file's path on the machine that built the CD in 1994: \projects\lol_cd\project\run\voc.pak, master.002\data\hardrive\main.exe. The inherited path scanner found none of it |
| absolute paths | MAIN.EXE, MAINW.EXE, SETUP.EXE, LOLCD.EXE: zero, as in 1990 and 1992. DOSBox.exe, 3.8 MB compiled by volunteers in 2010: zero. The one build-machine path in the game layer is in a text-editor session file left in the French directory, and it names r:\intro\td.bat three times |
| the two executables | MAIN.EXE and MAINW.EXE differ by 4,272 bytes and 69.18 % of the smaller is byte-identical to the larger, found by crossmatch.py unmodified. Neither is compressed and neither is a Windows binary |
| the oldest byte | WESTWOOD.DLL, 1992-06-11, and it is not Westwood's: it is an NE Windows library built with Borland C++ 1991, a "Meter Custom Control Library" — a progress bar |
| the vendor named in a binary | Copyright (C) 1991,1992 Miles Design, Inc., in six .ADV sound drivers. In 2014 the equivalent was RAD Game Tools |
| the verifier | goggame-1207662513.hashdb is a ZIP holding 35 records of 1,056 bytes — a 1,024-byte name and a 32-character MD5. All 35 verify. It is the first descriptor in this collection that can be wrong, and what it covers is the point: the 33 files of the game, the manual and the icon. Not the emulator, not the installer, not itself |
| the emulator's knowledge | the fifteen DOSBox files name Lands of Lore zero times. dosbox-0.74-2.1.tar.gz is the real source — 346 members, src/dosbox.cpp, COPYING — and it is a GPL obligation, not a leftover |
| leftovers | 502,100 bytes — 0.1541 % of the object — and 99.96 % of it belongs to the two groups who did not make the game. Westwood's share is 187 bytes: a programmer's text-editor session left in the French directory, naming a batch file on drive R: three times. Counted apart: 28.670 % of the disc is content the disc already carries elsewhere, and none of that is a mistake |
| where this stops | the pixel formats. .WSA, .CPS, .SHP, .VCN, .TIM, .FNT, .PCS, .VMP, .PAL, .WLL, .CMZ, .COL — 1,356 members and 44,006,858 bytes, 13.509 % of the object — are named, counted and not decoded. 15 says what opening them would take |
| predictions | 61 clauses plus 3 named inferences, written before a file was opened: 48 hit, 3 half, 13 miss = 77.3 % (method 88.9 %, content 75.5 %). Seven of the thirteen misses are one error: assuming that things which resemble each other were made the same way |
Everything above is derived in the chapters and every figure has a command.
| 00 — the predictions | sixty-one bets placed before a single file was opened |
| 01 — what this object is | three groups of people, twenty years apart, one directory |
| 02 — the spec sheet | every figure with the command that reproduces it |
| 03 — the volume descriptor | the fourth answer, the first that is really a disc, and the four copies that disagree |
| 04 — the clocks | four of them, and three are not the product's |
| 05 — the disc | 149,781 sectors and not one of them belongs to nobody |
| 06 — the speech | 4,912 lines, two hours fifty-one, and not a word in any name |
| 07 — the archives | 132 that close, and a terminator four bytes longer than described |
| 08 — the game three times | duplication at three levels, and the ten bytes that are only in one |
| 09 — the three languages | what a translation costs, measured one level down |
| 10 — the executables | two builds 4,272 bytes apart, and the progress bar from 1991 |
| 11 — the installer | a fourth container, and the only source tree on the disc |
| 12 — the emulator | 5,883,321 bytes that have never heard of this game |
| 13 — the storefront | the first descriptor in this collection that can be wrong |
| 14 — against the echo | yesterday's object was 83 % performance and so is this one, and two points are not a curve |
| 15 — where I stop | four codecs written, three that close, and one frame in three that does not |
| 16 — the leftovers | three columns, because three groups left them |
| 17 — the tools | five inherited unmodified, one that answered politely and wrongly, twelve written |
| 18 — open questions | one closed on an object that did not ask it, and eight still open |
| 19 — corrections | eleven of mine and six of the briefing's |
| 20 — prediction scoring | every clause, scored, including the six that were wrong for one reason |