test(memory): integrate pinned public memory compatibility suite

Add --suite memory with verified source hashes, ARM eval checkpoint 0x08000350, and the r12 result assertion. Keep default ARM and explicit Thumb preparation unchanged. Extend offline adapter and CLI tests; retain public binaries outside tracked files.

The unmodified memory ROM passes in debug and release after 174 steps and 1478 nominal cycles, without changing core behavior. Document weak byte-write assertions and mode-selection caveats. Add original CPU-driven tests with exact sentinels, mode/mirror boundaries, byte lanes, forced blank, readback, and nominal device timing.

Validated on Darwin arm64: 851 workspace tests in debug and release; 782 core/demo tests separately; 30 Python tests; all three pinned public suites in both profiles; native ROM windows; all ten demo smoke tests; fmt, clippy, rustdoc, and local documentation links.
This commit is contained in:
0xrsydn 2026-10-05 21:19:10 +07:00
commit 661f00d682
14 changed files with 351 additions and 19 deletions

View file

@ -111,7 +111,8 @@ Original regressions separately check the returned word, byte lanes, rotation, s
See the bounded [ARM open-bus implementation](hardware/cpu.md#arm-unused-memory-data-reads).
This is a passing result for this pinned ARM ROM, not proof of complete instruction, memory, or timing compatibility.
The [pinned public Thumb ROM](public-thumb-tests.md) also passes its verified checkpoint.
No public timing, memory, BIOS, graphics, or unsafe suite has been claimed as passing.
The [pinned public memory ROM](public-memory-tests.md) passes its limited mirror and video-byte checks.
No public timing, BIOS, graphics, save, or unsafe suite has been claimed as passing.
These results do not establish Pokémon Emerald compatibility.
## References