Files
psxrecomp/tools
Alex Vanderveen 28ea77bd91 packet_writers: trace both halves of the double buffer
The trace was armed only on the address range walked this frame, but the
game alternates between two packet buffers 0x8000 apart -- so the writes
it was waiting for went to the other copy and it reported 'no writes
were recorded' with the packets plainly present. Re-walking then landed
on whichever copy was current and every field looked like it had changed
role, which was reported as the map going stale when it was just a
normal buffer swap.

Both copies are now armed and dumped, write addresses fold back onto the
copy that was walked, the staleness check compares folded layouts, and
--frames defaults to 2 and is rounded up to even so the walked copy is
definitely rebuilt at least once.

The two copies are BUFFER_STRIDE apart by ADDITION, not by a toggled
bit: 0x0010D078 and 0x00115078 differ by 0x8000, but XOR gives
0x00105078 because the add carries out of bit 15. The first version of
this used XOR and folded real writes onto addresses that do not exist; a
test now pins the difference.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-24 12:55:58 -04:00
..
2026-08-12 16:49:03 -04:00
2026-08-14 02:41:50 -04:00
2026-08-21 21:38:56 -04:00
2026-07-29 03:18:10 -04:00
2026-07-29 03:18:10 -04:00
2026-08-19 23:35:17 -04:00
2026-08-19 23:35:17 -04:00
2026-07-29 03:18:10 -04:00
2026-08-19 22:50:13 -04:00
2026-07-29 03:18:10 -04:00
2026-08-14 02:41:50 -04:00