mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-11-04 13:07:32 +00:00
The console's DCC of a single-level 4-byte SW_64KB_R_X surface is ceil(W/512) * ceil(H/512) * 4096 bytes, 49152 for 1920x1080, but the driver stored and read one key per 256 surface bytes (34560). PPSA26344 retiles its render DCC into the displayable copy it registers (cs_dcc_retile_32bpp); a retile of the stale tail gives the mixed keys PPSA12544 stops on. DccKeyCount gives that extent. Color target and storage image key stores cover it when the DCC is pipe-aligned (CB_COLOR_ATTRIB3 bit 30, T# word 6 bit 19), whose CB keys reach its last meta block, and throw where it is not writable; unaligned DCC keeps one key per 256 bytes, as do texture and color target key reads. DisplayBufferKeys reads the display DCC over the extent, presents only when every key agrees, names the first differing key's pixels and checks a pending image against those keys.