# Ch363 Audit Log - Five-Texture Persistent-Z Scheduler ## Scope - Native 640x480 persistent-Z scene with five ordered authentic SH3 draws: `5328,11671,77112,89164,119471`. - Five distinct texture/CLUT bindings, relocated at CBP `480,484,488,492,496`. - The cache is intentionally refilled for every epoch; this chapter proves rebinds rather than shared-texture residency. ## Root Cause And Fix - The generated five-CLUT bootlet is 350 qwords. The shared simulation harness had inherited the 256-qword EE RAM default, so `$readmemh` truncated the payload. Epoch 3 consequently read partial CLUT data and produced 195 palette-invalid pixels. - The production `GS_SH3_LPDDR_FB` board profile already allocates 32 KiB of EE RAM. Both shared 640 harnesses now explicitly use that same `RAM_SIZE_BYTES(32 * 1024)` capacity. - The earlier CLAMP investigation was rejected by trace evidence: all sampled epoch-2/3/4 coordinates were within the 512x512 texture bounds. No feeder or sampler RTL change is retained. ## Simulation Gates - `tb_top_psmct32_sh3_zs640mt5_cap`: PASS. - Five texture CRC fills: `55070afa`, `26a88b77`, `a727234d`, `fbdeaa32`, `cf4cae27`. - Five fresh drains, records `54,68,68,68,68`, no writer overflow or scanout underflow. - Scanout: exactly 38,400 beats/frame. - Oracle: ALL `61595/63749` (96.6%), MULTI `7701/7877` (97.8%), `clut_bad=0`. - `tb_top_psmct32_sh3_zint640mt5`: PASS. - Z preclear: 19,200 beats. - 129,752 fragments fed, 118,355 Z passes, zero fragment drops. - Exact final scoreboards: Z `0/307200` mismatch; COLOR `0/63617` mismatch. - Request FIFO depth 1024 high-water by epoch: `415,401,64,222,47`. ## GUI Fit And Board Closure - The authoritative QSF points to `bios_sh3_zs640mt5.mem` and `payload_sh3_zs640mt5.mem`; the Quartus 26.1 flow report and synthesis report both resolve those exact images. - The July 11 GUI compile is signoff-clean: setup `+0.095 ns`, hold `0.000 ns`, recovery `+1.042 ns`, removal `+0.185 ns`, and minimum pulse width `+0.200 ns`. The generated `retroDE_ps2.core.rbf` was written after the QSF update. - The RBF loaded successfully on the DE25 (`fpga0: operating`). The five-epoch host run passed all transfer, CRC, preclear, drain, and zero-drop gates. Its final framebuffer summary was `nonzero=63617`, bounds `(36,10)..(562,360)`. - The board framebuffer and a fresh `tb_top_psmct32_sh3_zint640mt5` dump have identical SHA-256: `9e87678c0c88e3e2e90a187e69991069d58e88187d360d560df59f25219b99c5`. - Independent replay-color verification is exact: `307200/307200` pixels, zero mismatches. Ch363 is closed: five authentic SH3 draws, five texture/CLUT rebinds, native 640x480 scanout, and persistent-Z are proven on silicon for this fixture.