Harry Potter e il Calice di Fuoco, PC DVD-ROM, Electronic Arts, October 2005.
Volume HPGOF, 671,664 sectors, 1,375,567,872 bytes, 1,659 files in 40 folders.
ISO 9660 + Joliet + UDF. SafeDisc 4.50.000. 93.98 % of the disc is one
file.
The material is the retail disc itself, in a drive, at E:\ — not an image
and not a copy. Every number below has a command behind it and the output of
that command is in notes/.
The full one, with a command in every cell, is 02 — The spec sheet.
| medium | DVD-ROM, single layer, 671,664 sectors = 41,979 ECC blocks of 16, no unreadable sector over a full pass |
| filesystems | ISO 9660, Joliet (%/@), and a complete UDF 1.02 — both describe 1,659 files / 40 folders / 1,369,393,885 bytes and agree exactly. Windows mounts the UDF |
| engine | RenderWare, on EA's RealCore 6.27.01 and RealGraph 6, with Havok physics — all four named inside gof_f.exe, none named outside it |
| containers | 1 ZIP (9 members, all deflate, 1.3444:1) → 4 EA BIGF archives (715 entries) ; 16 Microsoft MSCF cabinets ; no InstallShield |
| graphics | 11 BMP 24 bpp uncompressed, 110 baseline JPEG, 271 GIF89a, 31 ICO — all outside the game. Video: 29 On2 VP6 in an MVhd container (English) and 89 ASF (localised) |
| audio | 253 .sdt EA sound banks (BNKl, PT sub-blocks), 38 .mus — 871,659,136 bytes, 50.38 % of the game. Codecs not decoded, and §16 says why |
| text | windows-1252 throughout; one UTF-16LE file, Localization.ini, which needs it for four non-Latin titles |
| languages | 27 codes across 10 axes; 4 on all ten; 5 installed (NumLanguages=5); English switched off in both variants |
| toolchain | Microsoft linker 7.10 on 12 of 14 outer binaries, 6.00 on 2; msvcr71.dll shipped twice |
| protection | SafeDisc 4.50.000, read at BoG_ + 0x20 in DIAG.EXE, and written again as the integers 4 and 50 in a field ISO 9660 requires to be zero |
| mastering | GEAR — GEAR CD/DVD PREMASTERING, GEAR SOFTWARE, *GEAR UDF 1,717 times |
| whose disc | 94.62 % by bytes, 51.60 % by file count, 10.55 % with the one big file taken out of both sides |
| 00 — Predictions | 99 clauses written before anything was measured, never edited |
| 01 — Provenance: two points and two holes | the disc, its measured sibling, the two Harry Potter discs that are missing, and what their absence forbids this repository from saying |
| 02 — The spec sheet | every hard number in one place, tables only, a command in every cell |
| 03 — The second filesystem | 79 gaps of 20 sectors, none of which is a gap: they are UDF File Entries, one per file, written twenty at a time |
| 04 — The sector Windows cannot reach | 671,664 against 671,663 from six sources; the last sector is UDF's closing anchor and it took SCSI to read it |
| 05 — The census | 1,659 files, 853 distinct contents, six "localised" splash screens that are one image |
| 06 — No wall, and a quantum of sixteen | no unreadable sector in 671,663; the read window measured by timing instead of by failure, and 11 of 11 physical reads start on an ECC block |
| 07 — SafeDisc 4.50.000 | the version in three places, a placeholder of identical length to the last disc's and 74 % different content, and 8 blocks aligned to the DVD's own grid |
| 08 — Ninety-four per cent of the disc | nine zip members, four BIG archives, 715 files, 240 of them named by GUID — listed without unpacking 1.7 GB |
| 09 — Who made this | KnowWonder zero times; three middleware vendors, a Perforce path, and one person named by accident — plus a tool that could not see UTF-16 |
| 10 — Six clocks and one hour | the whole master assembled in fourteen minutes, and the two filesystems disagreeing about the timezone of every file |
| 11 — Twenty-seven languages | ten lists, four languages on all of them, Italian on nine, and a CD key in three different places in the box |
| 12 — The help system | 1,589 files, 789 distinct, and a build log that names 85 files that never shipped |
| 13 — Two discs, four years | twenty-eight axes side by side, every citation checked, and the row the missing discs make unanswerable |
| 14 — Whose disc | 94.62 % by bytes and 51.60 % by count, and one membership call that moves it eighty-four points |
| 15 — Against nine trees | the eighth zero, and the hash list the previous repository did not publish |
| 16 — Open questions | fourteen, each with what was tried and what an answer would cost |
| 17 — Prediction scoring | the misses are the interesting half, and this time the method analogies scored worse than the content ones |
| 18 — Tools | 28 of 76 inherited tools said something true, 23 more were written, and three inherited ones said something false and confident |
| 19 — Leftovers | measurements without a home |
The holes are a second filesystem. ISO 9660 reports 126 unallocated gaps totalling 2,096 sectors, 79 of them exactly 20 sectors long, one every twenty files. They are UDF File Entries — one sector per file, written in batches of twenty — and 1,740 of the 2,096 "unclaimed" sectors belong to a complete second filesystem that agrees with the first on every total. The genuinely spare space on this DVD is 92 sectors.
The last sector of the disc is a UDF anchor and Windows cannot read it.
The DVD's physical format information, the drive's READ CAPACITY, the Windows
device length and the ISO descriptor all say 671,664 sectors. The mounted volume
says 671,663, because Windows mounts UDF and the UDF partition ends one sector
early — outside it, at LBA 671,663, sits the closing Anchor Volume Descriptor
Pointer that UDF requires to be there. Reading it took IOCTL_SCSI_PASS_THROUGH_DIRECT,
which four earlier repositories had carried as an open question without ever
attempting it.
The protection version is written in a field the standard requires to be
zero. DIAG.EXE carries BoG_ at offset 0xFD4 and the triple 4, 50, 0 at
+0x20: SafeDisc 4.50.000. The primary volume descriptor carries a 267-byte
payload starting exactly 256 bytes into the application-use field — the same
offset as the previous Harry Potter disc — and the only two of its twelve
integer slots that are not zero hold 4 and 50.
Ninety-four per cent of the disc is nine files. 0compressed.zip is
1,286,963,770 bytes and contains four EA BIGF archives and five loose files,
four of which are byte-identical to files also lying loose at the root. Inside
the archives: 715 entries, of which 240 are named by GUID and 38 are music
streams. The whole thing was listed without extracting a byte of it.
Nobody signs this disc except the company that cut it. KnowWonder appears
zero times, no development studio appears at all, the ISO publisher and
application fields are empty — and *GEAR UDF appears in the implementation
identifier of every one of the 1,699 File Entries, 1,717 times in all. The only
human name on the disc is in a Visual Studio home-directory path inside a
support utility.
Fifteen minutes on 18 October 2005. The four .big archives were written
between 20:43:26 and 20:44:56, the zip at 20:55:09, the last file record at
20:56:02, and the volume descriptor at 20:56:09. Twenty days earlier, 1,591 of
the 1,659 files were stamped within three consecutive seconds. And the ISO and
UDF filesystems, written by the same program in the same pass, disagree about
the timezone of every one of them by exactly one hour.
Python 3, standard library only, Windows for the device access. The disc in a
drive as E:.
python tools/spti.py E # the drive, the medium, the geometry
python tools/spti.py E --read 671663 --hex # the sector Windows cannot reach
python tools/toc.py E # lead-out minus volume = 0
python tools/vds.py E # the three CD001 descriptors
python tools/udf.py E --iso notes/isodev-extents.txt # the second filesystem
python tools/gearcount.py E # who signs this disc
python tools/isodev.py E --extents # the layout, 126 gaps
python tools/gapscan.py E notes/isodev-extents.txt # what is in them
python tools/gap20.py notes/isodev-extents.txt # why 79 of them are 20 sectors
python tools/sweep.py E --sha1 # every sector, once
python tools/window2.py E --start 400000 --count 4000 --threshold 25
python tools/bog.py _work/iso/DIAG.EXE # SafeDisc 4.50.000
python tools/sdtmp.py E # the two placeholders
python tools/sdalign.py E 286 # aligned to the disc, not the file
python tools/tmp2.py E # against the other disc's published measurement
# the rest runs off a copy in _work/ (gitignored), made with cp -r E:/. _work/iso/
python tools/census.py _work/iso --sha1 --dups
python tools/zipdir.py _work/iso/0compressed.zip --list
python tools/big.py _work/iso/0compressed.zip --all --list
python tools/bigheads.py _work/iso/0compressed.zip
python tools/biglang.py notes/big-list.txt
python tools/pecensus.py _work/iso
python tools/hunt2.py _work/nozip _work/zip --tokens KnowWonder Macrovision RenderWare Havok
python tools/machpaths2.py _work/nozip
python tools/langaxes.py _work/nozip --big notes/big-list.txt
python tools/mirror.py "_work/nozip/Support/European Help Files" --by-name
python tools/whose4.py _work/iso
python tools/clocks4.py E _work/iso/0compressed.zip
python tools/filelist.py
python tools/twodiscs.py
python tools/checklinks.py
python tools/checkscore.py
No asset from this disc is in this repository. _work/ is ignored by name and
by extension; see .gitignore.
pc-harrypotter1-doc is
Harry Potter and the Philosopher's Stone (PC CD-ROM, 2001), measured one
session earlier. 13 — Two discs, four years
puts the two side by side on twenty-eight axes.
Two of the six PC games in this saga are here. Chamber of Secrets was bought and its disc is lost; Prisoner of Azkaban was never bought. 01 says exactly what those two absences forbid this repository from claiming, and the answer is: everything that sounds like a trend.