TXDN hunt session 2: a26 = table uploads duplicating firmware .data; texels are transformed on receipt

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Cyd
2026-07-19 09:18:53 -05:00
co-authored by Claude Opus 4.8
parent 6b216d0643
commit fb04de017e
@@ -307,3 +307,18 @@ Remaining to full purity: name the texz seed op + extract the real ramp table.
bind textures from the WIRE side (the capture's own payloads, keyed by the bind textures from the WIRE side (the capture's own payloads, keyed by the
create/act-42 handle pairs) + the per-tile texid config (the SEND(16) create/act-42 handle pairs) + the per-tile texid config (the SEND(16)
block's 0x39/0xec scalar-region writes select the bound texture). block's 0x39/0xec scalar-region writes select the bound texture).
## TXDN hunt, morning session 2 (2026-07-19)
- Full-memory verbatim scan at fxtest cmd 13000: action-26 payload bytes found
ONLY in the firmware low .data segment (0x7cb2/0xb3fe, byte-unaligned), and
those regions are IDENTICAL in cap7 -> the wire's a26 content DUPLICATES
static firmware tables (host .egg built from the same source tree), i.e. a26
= table/state uploads, and neither it nor the texmap float blocks persist
verbatim as bulk texels anywhere in memory at frame time.
- Conclusion: texel data for the effects is TRANSFORMED on receipt (packed/
planarized by the handlers). The faithful route to acceptance 2 = trace ONE
texmap upload through its handler (watch the transform output address), or
model the TXDN io-port stream by instrumenting the DMA engine's TXDN path in
the emulator (the dn* unpack programs then define the texel wire format).
- Registry census at cmd 13000: 1186 live objects (405 type-9 + 405 type-10
pairs = effect+texmap, 159 type-11, 48 type-8, ...).