Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Harry Potter and the Goblet of Fire (PC, 2005) — a measurement

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 short spec sheet

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

What is here

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

Six things this disc says

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.


Reproducing it

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.


The other Harry Potter disc

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.

About

Harry Potter and the Goblet of Fire (PC, EA, 2005) - a measurement of the retail DVD: 1,659 files, UDF File Entries hiding in 126 gaps, SafeDisc 4.50.000, GEAR mastering

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages