Shadow blind spots: NMI writes during a compared call, hardware multiplier/divider not compared #58
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Found in #56.
Scope: compare multiplier/divider state for ports that use it (flag like PORT_WRITES_PPU) and fix UpdatePalAnimPulse if a later read can observe it; handle NMI during a compared call (run both sides with the same NMI, or exclude NMI-written bytes with justification); document in docs/validation.md.
Merged in PR #60. Chapter 1 routes, 46 ports in shadow: US 1 552 349 calls 0 mismatch 0 fallback (9 567 skipped), JP 1 407 933 calls 0 mismatch 0 fallback (7 621 skipped); fuzz _c0249a alone 0 mismatch both versions. The new math-unit comparison found two more bridges to fix (UpdateShake multiplier, ClearTextGfxBuf WRAM port), fixed in the PR.