mirror of
https://github.com/RetroPortingToolKit/psxrecomp
synced 2026-10-28 10:59:16 -04:00
dc00e5a1e8
DEDUP: a re-upload of identical content at a DIFFERENT rect was deduped by hash+size, keeping the stale rect -- origins computed from it were off by the position drift. Dedup now requires the same position; the origin/src handed to the renderer come from the live containing upload. NOTE: this did NOT cure the strip vertical offset (top row cut, bottom duplicated) -- that symptom persists on screen and its root cause is still unidentified. The change stands on its own correctness, not as that fix. SAVESTATE SECTION (BS_SEC_TEXPACK): written and applied correctly in isolation (telemetry showed 1360 entries rebuilt from the state's own VRAM), but with the section present the overall state load FAILS in a LATER section, cause not yet isolated -- and old builds hard-reject unknown tags (`default: return 0`), so the section also breaks backward compatibility. The boot_state wiring is REVERTED; tex_pack_state_bytes/write/apply remain, dormant, for whoever picks this up with the loader diagnosis. Until then: after loading a savestate, textures the game does not re-upload stay low-res -- known limitation again. The first-save defer fix verified working in passing: "deferring slot 4 -- no safe resume PC (hint=0x00000000)" followed by a save at a real PC. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>