mirror of
https://github.com/jkdansereau/goldeneye-pc-port.git
synced 2026-10-24 08:12:42 +02:00
Reused the D219/M-90 scripted-fire technique (GE_INPUTSCRIPT Z pulses) on a bare -level_33 boot to get bullet-impact sparks headlessly -- got 14 distinct fire-stage texture dumps (scratch/d252_raw_*.bin, gitignored). Hand-decoded all 14 as RGBA5551 big-endian and averaged the opaque texels per stage: a perfect, smooth white-hot -> yellow -> orange -> deep-red -> fade-out progression, zero off-hue content anywhere. This independently reconfirms M-141's width/height/byte-order conclusion and goes further -- it's the first time this investigation actually looked at the decoded numeric pixel values rather than reasoning about the decode formula, and it rules out the source asset data and the decoder entirely. The bug is confirmed downstream: GL upload, the texture cache, or the G_CC_INTERFERENCE combiner. Also checked and refuted M-141's texture-cache-collision lead: all 14 captured stages have distinct texture_addr values, so TextureCacheKey (gfx_pc.h) can't be colliding between stages the way that theory required. Recorded a concrete next step (correlate a live GE_PCDUMP rainbow frame against which of the now-known-correct 14 stages was bound) for the next session. No src/game or port/ changes -- diagnosis only. findings-index.csv regen was a no-op (no new Dxx label).