]> FriiDump Source - friidump.git/blob - docs/reports/FRIIDUMP_XGD1_CACHE_ALIGNED_GEOMETRY_PROBE_0.5.3.13.md
FriiDump 0.5.3.16 candidate: add native reports and Linux Xbox support
[friidump.git] / docs / reports / FRIIDUMP_XGD1_CACHE_ALIGNED_GEOMETRY_PROBE_0.5.3.13.md
1 # FriiDump 0.5.3.13 XGD1 cache-aligned raw-ID geometry probe
2
3 ## Objective
4
5 Correct the v68 raw-ID acquisition contract and test the current XGD1
6 logical-to-physical output mapping with the same cache discipline used by the
7 proven modified-GDR-8050L Method 8 path.
8
9 ## Why v68 was not promotable
10
11 The v68 hardware run succeeded at issuing commands, but its raw-ID table mixed
12 valid physical IDs with stale or block-start cache entries. It issued streaming
13 READ(12) at arbitrary LBAs without the zero-transfer cache flush and without
14 aligning the request to the 16-sector block represented at cache base
15 `0x80000000`. It also treated raw-cache user-data equality as meaningful even
16 though Method 8 reconstructs the raw sector from cache header/EDC plus READ(12)
17 user data before unscrambling.
18
19 ## Corrected capture sequence
20
21 For every selected logical LBA:
22
23 1. Align the cache-fill LBA downward to a 16-sector boundary.
24 2. Issue READ(12) with byte 1 set to `0x08` and zero transfer length to reset the
25    cache mapping.
26 3. Issue a 16-sector streaming READ(12) at the aligned block start.
27 4. Retain the requested logical sector from the returned 2048-byte data.
28 5. Dump only the selected cache slot's 12-byte ID/IED/CPR_MAI header and
29    four-byte EDC using `E7 48 49 54 01`.
30 6. Decode layer number from sector-information bit 0 and decode the 24-bit raw
31    physical-sector number.
32 7. Normalize layer-1 PSNs by 24-bit complement and compare each sample to the
33    full reconstructed-output geometry.
34
35 ## Geometry model under test
36
37 - DVD start PSN: `0x030000`.
38 - Full output layer break: LBA `1,913,776`.
39 - Layer-0 last normalized PSN: `0x2033AF`.
40 - Unlocked/game view maps to full output beginning at LBA `198,144`.
41 - Locked LBAs `0..6831` map to output video L0.
42 - Locked LBAs `6832..6991` map to output LBAs `3,820,720..3,820,879`.
43 - Layer-1 raw PSNs are compared in their 24-bit complemented representation.
44
45 The probe reports `physical_geometry_resolved=true` only when both states are
46 verified and all 13 selected samples match the expected layer and PSN exactly.
47 A mismatch is preserved in the atomic JSON report and causes a nonzero exit.
48
49 ## Interpretation boundary
50
51 A full geometry match validates placement of readable video and game sectors in
52 the current reconstructed output. It does not reveal inaccessible pregame or
53 postgame filler sectors and does not establish their byte values. Filler-content
54 claims remain false.
55
56 ## Safety
57
58 The probe uses readiness, tray, authentication, READ CAPACITY, cache-flush
59 READ(12), streaming READ(12), and HIT 0xE7 data-in reads. It issues no firmware
60 write, flash, erase, 3B06, 3B07, or FLASHUP command and creates no ISO.