X-Git-Url: https://git.jtryba.com/browse/friidump.git/blobdiff_plain/6e43cd3fd4f7324a177331a01d653b4c19c4bca7..410adc894dbd68d10080151171b8c42a9197df46:/docs/ChangeLog?ds=inline diff --git a/docs/ChangeLog b/docs/ChangeLog index d865b6b..ba4bcc8 100644 --- a/docs/ChangeLog +++ b/docs/ChangeLog @@ -1,3 +1,150 @@ +FriiDump 0.5.3.16-pf1 +---------------------- +- Correct standard READ DVD STRUCTURE Format placement from CDB byte 11 + (Control) to byte 7, matching the copied Windows DMI request. +- Add persistent Xbox PFI/DMI capture diagnostics. +- Add an Xbox READ DVD STRUCTURE CDB source contract. +- Preserve Candidate20 SG_IO handshake and Windows-sequence behavior unchanged. + +FriiDump 0.5.3.16-pf1-candidate20 +- Rejects Candidate17; do not test or promote it. +- Removes generic RecoveryKick behavior and its repeated LBA-zero read cadence. +- Removes automatic media-auth kicks from the generic copied Windows dump path. +- Ports the proven Windows state-aware GDR-8050L preparation sequence into Linux style. +- Uses direct handshake first, one tray-cycle retry only when needed, and capacity as authority. + +2026-07-24 Project Frankenstein Candidate16 + + * Release Linux optical-door locking before GDR-8050L media cycles. + * Restore the door lock after successful eject/load readiness. + * Leave the door unlocked on media-cycle failure for recoverable tray access. + * Add Linux Xbox tray-cycle source/documentation contract coverage. + +2026-07-24 Project Frankenstein Candidate15 + + * Document the two-part Linux access model: optical device-node access plus + CAP_SYS_RAWIO for vendor-specific SCSI commands. + * Add a release-build preflight that checks the effective capability mask + before GC/Wii memory-dump and Xbox vendor-unlock operations. + * Refuse whole-process root execution for Linux vendor-command paths and + direct users to a least-privilege file capability on the exact executable. + * Record missing raw-I/O authority in the native report and issue STOP UNIT + before returning. + * Add explicit CMake/build warnings that normal builds do not install or + preserve file capabilities. + * Add an install/status/remove helper for cap_sys_rawio=ep and a validator + capability phase. + * Document that rebuilding, replacing, copying, or re-extracting an executable + clears the capability. + +2026-07-24 Project Frankenstein Candidate12 + + * Copy bundled Redump DAT resources beside CMake-built executables. + * Install Redump DAT resources under the Unix share directory. + * Add FRIIDUMP_REDUMP_DAT_DIR and installed-share lookup. + * Preserve explicit --redump-dat-dir as an authoritative override. + * Report Linux exclusive optical-device locking as unavailable instead of OK. + * Correct the Linux validation wrapper's intentional --help exit handling. + * Include redump_dat in the MSVC build-results archive. + +2026-07-18 - FriiDump 0.5.3.15 XGD1 live closure and release cleanup + + * Closed the 0.5.3.14 hardware validation on a modified GDR-8050L revision + 0012. The 3,820,880-sector output completed successfully and the + drive-captured 32-sector game lead-in matched the independent 0.5.3.13 + geometry evidence at both boundaries. + * Recorded final output hashes: CRC32 cc5f0e71, MD5 + 1207b2090701ba1f221d486c83c863e7, SHA-1 + 5ea9b2262ba951afd9a5d2d44cd2b62a4d9decc7, and SHA-256 + 5995f823c6d67b9e3e3b3e1c2b54e1e036793188bec6b5be4220f559305f53b9. + * Confirmed NO EXACT MATCH against 2,689 Microsoft Xbox DAT entries. This + does not invalidate acquisition: the inaccessible pregame and postgame + contents remain zero-filled unresolved placeholders. + * Made automatic DAT discovery executable-relative first, with the historical + current-working-directory lookup retained as a fallback. Explicit + --redump-dat-dir remains authoritative. + * Corrected sidecar wording: hardware geometry validation is complete, while + filler content remains unresolved. + * Replaced 71 local build/probe/debug artifacts with a compact evidence + directory containing the final geometry samples, machine-readable closure + record, media-layout evidence, and completed live summary. + * Added a C resolver test and expanded .gitignore coverage for build outputs, + runtime logs, and generated disc images. + * No XGD1 output-layout bytes changed after the accepted 0.5.3.14 live dump. + +2026-07-18 - FriiDump 0.5.3.14 drive-captured XGD1 game lead-in + + * Promoted the successful 0.5.3.13 live geometry result: all 13 selected + locked/video and unlocked/game raw-sector IDs matched the expected + full-output mapping. + * Replaced the GDR-8050L full-output synthetic game lead-in with drive reads + from unlocked source LBA 0..31 at output LBA 198144..198175. + * Kept XDVDFS/game data at unlocked source LBA 32..3431263 and output LBA + 198176..3629407. + * Updated .redump.json, .media.json, and .xdvd.json layout evidence to record + the drive-captured lead-in source and the 0.5.3.13 physical-geometry proof. + * Pregame and postgame physical locations are now documented as geometry + verified, while their inaccessible content remains zero-filled and + unresolved. + * No claim of Redump identity is made until a new 0.5.3.14 full-disc dump is + hashed and compared with the canonical DAT. + +2026-07-18 - FriiDump 0.5.3.13 XGD1 cache-aligned raw-ID geometry correction + + * Corrected the v68 raw-ID probe to mirror the proven modified-GDR-8050L + Method 8 cache contract: zero-transfer READ(12) cache flush, 16-sector + block-aligned streaming fill, and 2064-byte slot indexing. + * Removed raw-cache user-data equality as a geometry criterion. Method 8 + reconstructs sectors from cache header/EDC plus READ(12) data before + unscrambling, so equality is not expected. + * Added explicit full-output LBA mapping, layer-bit decoding, 24-bit layer-1 + PSN normalization, expected raw/normalized PSNs, and per-sample geometry + verdicts. + * Schema 2 reports now set physical_geometry_resolved only when all 13 + selected locked/video and unlocked/game samples match exactly. + * Retained the v68 live run as negative/diagnostic evidence; it is not a + geometry promotion. No reconstruction bytes or filler policy changed. + +2026-07-18 - FriiDump 0.5.3.12 XGD1 raw-sector ID geometry probe + + * Live validation of 0.5.3.11 confirmed that sampled READ(10) and READ(12) + sectors are identical in both locked/video and unlocked/game states. + * The locked view ends at LBA 6991 and the unlocked view ends at LBA + 3431263; ordinary logical reads expose no alternate source for the + documented synthetic pregame or postgame ranges. + * Added --xgd1-raw-id-probe for modified GDR-8050L firmware with HIT 0xE7 + memdump support. It performs controlled READ(12) cache fills, captures the + corresponding 2064-byte raw cache sectors at 0x80000000, and records the + decoded DVD physical-sector number from each raw ID field. + * XGD1 probe modes now measure real elapsed time and suppress the unrelated + HLDS GC/Wii validation summary that previously reported misleading + seed/dump/STOP fields for a successful diagnostic run. + * No reconstruction mapping changed. Raw IDs are geometry evidence only; + inaccessible filler bytes remain unresolved. + +2026-07-18 - FriiDump 0.5.3.11 read-only XGD1 logical-boundary probe + +- Adds `--xgd1-layout-probe ` for the GDR-8050L challenge-handshake + profile on Windows. +- Establishes and verifies the locked/video and unlocked/game views using + READ CAPACITY(10), then probes selected XGD1 boundary LBAs with one-sector + READ(10) and READ(12) commands. +- Records per-command success, Win32 error, SCSI status, sense key/ASC/ASCQ, + nullable nonzero-byte/all-zero fields for failed reads, SHA-1, complete + 2048-byte sector data for successful reads, and explicit READ(10)/READ(12) + comparability in an atomic JSON report. +- Includes the current output-layout constants and probes the visible video + boundaries, synthetic pregame/postgame boundaries, game lead-in/XDVDFS + boundary, output layer break mapping, and each reported-capacity edge. +- Restores the entry locked/video state when the probe began locked; an + already-unlocked entry remains in the game view. +- Keeps the existing 0.5.3.10 ISO/XISO output unchanged. The probe explicitly + leaves the pregame padding, postgame padding, and game lead-in unresolved + until live evidence supports a source mapping. +- Uses only logical read commands, the established authentication handshake, + tray transitions, volume guard, and STOP UNIT cleanup. No firmware write, + flash, erase, 3B06, 3B07, or FLASHUP path was added or changed. + 2026-07-18 - FriiDump 0.5.3.10 state-aware GDR-8050L handshake cleanup - Replaces the copied reference bridge's unconditional unlock -> tray cycle -> @@ -542,3 +689,10 @@ Build packaging note: * Strengthened media preflight: TEST UNIT READY is followed by READ CAPACITY(10), requiring a nonzero 2048-byte logical-block medium before vendor seed/cache commands. * Fixed empty-tray false positive observed on HL-DT-ST CDRW/DVD GCC4244/B103 over USB. * Added completed GDR-8163B 0L23 Redump-matching validation result. + +Candidate15 +----------- +* Preserve explicit CAP_SYS_RAWIO build/runtime documentation and preflight. +* Normalize future source timestamps before Linux builds. +* Remove production raw-I/O preflight path-truncation warning signatures. +* Normalize source ZIP member timestamps.