; Galaga (U) application-specific RAM aliases - Pass 1 ; Generated from every direct zero-page operand in reachable code: ; ref counts are reads/writes, `where` lists the referencing addresses. ; ZpXX names indicate storage with a role not yet unique enough for a behavioral name; ; Pass 2 replaces them with names derived from observed usage. Zp00 = $00 ; 259 refs; reads=112 writes=147; used at $BE14, BE3D, BE40, BE42, +250 more Zp01 = $01 ; 58 refs; reads=12 writes=46; used at $BE18, C020, C02B, C122, +45 more Zp02 = $02 ; 68 refs; reads=24 writes=44; used at $C13E, C15A, C16B, C1BD, +61 more Zp03 = $03 ; 29 refs; reads=8 writes=21; used at $C1AD, C1B1, C1B9, C270, +23 more Zp04 = $04 ; 94 refs; reads=31 writes=63; used at $C140, C1D5, C268, C26A, +86 more Zp05 = $05 ; 61 refs; reads=15 writes=46; used at $C142, C1DB, C26E, C297, +51 more Zp06 = $06 ; 52 refs; reads=23 writes=29; used at $BE1C, C194, C2BE, C640, +41 more Zp07 = $07 ; 28 refs; reads=19 writes=9; used at $D372, D584, D5B1, D631, +23 more Zp08 = $08 ; 45 refs; reads=25 writes=20; used at $C1F7, C202, C208, C20F, +38 more Zp09 = $09 ; 8 refs; reads=2 writes=6; used at $C1FD, C6A8, C6CE, D3E0, +3 more Zp0A = $0A ; 51 refs; reads=31 writes=20; used at $C212, C21A, C509, C520, +44 more Zp0B = $0B ; 15 refs; reads=4 writes=11; used at $C50D, C524, C536, C5DA, +11 more Zp0C = $0C ; 36 refs; reads=17 writes=19; used at $C511, C528, C53A, C5D6, +26 more Zp0D = $0D ; 9 refs; reads=4 writes=5; used at $C515, C53E, C6D7, D5D0, +4 more Zp0E = $0E ; 9 refs; reads=4 writes=5; used at $C501, C8A7, D573, D741, +4 more Zp0F = $0F ; 8 refs; reads=2 writes=6; used at $E63B, E663, E69D, E6AF, +4 more Zp10 = $10 ; 7 refs; reads=3 writes=4; used at $C41D, C462, C6B1, D7B7, +3 more Zp11 = $11 ; 7 refs; reads=3 writes=4; used at $C40B, C467, C6B5, D7B3, +3 more Zp12 = $12 ; 4 refs; reads=1 writes=3; used at $C420, DE8D, DECC, E17A Zp13 = $13 ; 4 refs; reads=1 writes=3; used at $C40E, DE92, DED1, E181 Zp14 = $14 ; 16 refs; reads=10 writes=6; used at $C426, C428, C42D, C431, +11 more Zp15 = $15 ; 11 refs; reads=6 writes=5; used at $C414, C416, C41B, C42F, +6 more Zp16 = $16 ; 20 refs; reads=13 writes=7; used at $C45C, C46C, DF14, DF55, +12 more Zp17 = $17 ; 39 refs; reads=22 writes=17; used at $C444, C44C, C474, C47D, +25 more Zp18 = $18 ; 29 refs; reads=19 writes=10; used at $DA30, DA55, DA57, DA68, +24 more Zp1A = $1A ; 5 refs; reads=3 writes=2; used at $DA2C, DA44, E72D, E739, +1 more Zp1B = $1B ; 3 refs; reads=1 writes=2; used at $DA34, DA5F Zp1C = $1C ; 21 refs; reads=12 writes=9; used at $C56E, C577, C57A, C57D, +15 more Zp1D = $1D ; 14 refs; reads=8 writes=6; used at $C567, C570, C580, C5A1, +9 more Zp1E = $1E ; 22 refs; reads=9 writes=13; used at $C14D, C186, C1E7, C305, +17 more Zp1F = $1F ; 10 refs; reads=3 writes=7; used at $C308, C310, D749, D776, +4 more Zp20 = $20 ; 40 refs; reads=6 writes=34; used at $C29E, C34D, C372, CA89, +35 more Zp21 = $21 ; 15 refs; reads=0 writes=15; used at $CB60, CBE2, CBEB, CC1B, +11 more Zp22 = $22 ; 3 refs; reads=0 writes=3; used at $D67F, D6E7, DB05 Zp23 = $23 ; 4 refs; reads=2 writes=2; used at $CFAD, CFB3, DB09, E1E4 Zp24 = $24 ; 1 refs; reads=0 writes=1; used at $CFAF Zp25 = $25 ; 11 refs; reads=1 writes=10; used at $CA82, CFB7, D94B, D9A4, +6 more Zp26 = $26 ; 2 refs; reads=1 writes=1; used at $E1E0 Zp27 = $27 ; 5 refs; reads=1 writes=4; used at $D945, DA01, DA2A, DA46, +1 more Zp28 = $28 ; 2 refs; reads=1 writes=1; used at $C355, C394 Zp29 = $29 ; 1 refs; reads=0 writes=1; used at $DB23 Zp2A = $2A ; 1 refs; reads=0 writes=1; used at $DB25 Zp2B = $2B ; 11 refs; reads=4 writes=7; used at $D8EF, D995, D9B1, D9F3, +7 more Zp2C = $2C ; 2 refs; reads=0 writes=2; used at $D935, DAF7 Zp2D = $2D ; 2 refs; reads=0 writes=2; used at $D99F, DA4C Zp30 = $30 ; 4 refs; reads=1 writes=3; used at $C35A, C36B, C37B, C392 Zp31 = $31 ; 1 refs; reads=1 writes=0; used at $C379 Zp37 = $37 ; 1 refs; reads=0 writes=1; used at $C384 Zp38 = $38 ; 2 refs; reads=1 writes=1; used at $C369, C39B Zp40 = $40 ; 6 refs; reads=3 writes=3; used at $BE27, BE2B, C073, C275, +2 more Zp41 = $41 ; 4 refs; reads=1 writes=3; used at $C05B, C284, C28C, C2AF Zp42 = $42 ; 3 refs; reads=1 writes=2; used at $C05F, C27A, D2B6 Zp43 = $43 ; 9 refs; reads=4 writes=5; used at $C063, C27F, CDB9, CDCC, +4 more Zp44 = $44 ; 5 refs; reads=3 writes=2; used at $C2F1, C2FB, E245, E24B, +1 more Zp45 = $45 ; 1 refs; reads=1 writes=0; used at $E040 Zp46 = $46 ; 8 refs; reads=7 writes=1; used at $C095, C2F7, CDC6, CDEC, +4 more Zp47 = $47 ; 1 refs; reads=1 writes=0; used at $CFE4 Zp48 = $48 ; 20 refs; reads=18 writes=2; used at $BE39, C083, C09B, C547, +15 more Zp49 = $49 ; 8 refs; reads=5 writes=3; used at $BE33, C087, CDE4, CDF8, +2 more Zp4A = $4A ; 4 refs; reads=2 writes=2; used at $C077, C079, C0CD, C0D2 Zp4B = $4B ; 6 refs; reads=3 writes=3; used at $C06C, C091, C0D4, C18C, +2 more Zp4E = $4E ; 7 refs; reads=4 writes=3; used at $C11A, C128, C1C4, C1D3, +3 more Zp4F = $4F ; 5 refs; reads=1 writes=4; used at $C151, C16F, C18A, C1C6, +1 more Zp50 = $50 ; 3 refs; reads=1 writes=2; used at $BE0A, C587, D2A1 Zp51 = $51 ; 4 refs; reads=2 writes=2; used at $C56A, C56C, E620 Zp52 = $52 ; 2 refs; reads=1 writes=1; used at $C572, C574 Zp54 = $54 ; 19 refs; reads=10 writes=9; used at $CC40, CC5F, CC7A, CC9A, +13 more Zp55 = $55 ; 8 refs; reads=4 writes=4; used at $CC72, CC8D, CC8F, CC98, +2 more Zp56 = $56 ; 7 refs; reads=4 writes=3; used at $CC74, CCA6, CCA8, CCB3, +1 more Zp57 = $57 ; 2 refs; reads=1 writes=1; used at $CC84, CD01 Zp58 = $58 ; 5 refs; reads=4 writes=1; used at $CC7C, DFA5, E1F4, E2D8, +1 more Zp59 = $59 ; 3 refs; reads=1 writes=2; used at $CC76, CCDA, CCE3 Zp5A = $5A ; 2 refs; reads=1 writes=1; used at $E78E, E799 Zp5B = $5B ; 4 refs; reads=2 writes=2; used at $C08D, C0AD, D26E, EB0E Zp5C = $5C ; 1 refs; reads=1 writes=0; used at $E7B6 Zp5D = $5D ; 3 refs; reads=1 writes=2; used at $CC44, CC4F, E366 Zp5F = $5F ; 4 refs; reads=2 writes=2; used at $E113, E117, E658 Zp60 = $60 ; 5 refs; reads=2 writes=3; used at $E04C, E050, E052, E05A Zp61 = $61 ; 9 refs; reads=6 writes=3; used at $C8B9, C979, C9C7, CE15, +5 more Zp62 = $62 ; 8 refs; reads=6 writes=2; used at $C089, C8AB, C9AC, CDBB, +4 more Zp63 = $63 ; 4 refs; reads=2 writes=2; used at $C8E4, C9BE, C9C5 Zp64 = $64 ; 9 refs; reads=4 writes=5; used at $CAA4, CAA9, CABB, CACD, +5 more Zp65 = $65 ; 3 refs; reads=1 writes=2; used at $CAC6, CAFD, CB18 Zp66 = $66 ; 5 refs; reads=2 writes=3; used at $CACA, CB25, CB33, CB38, +1 more Zp68 = $68 ; 3 refs; reads=2 writes=1; used at $D575, D739, D73F Zp69 = $69 ; 3 refs; reads=2 writes=1; used at $D563, D56C, D577 Zp6E = $6E ; 4 refs; reads=3 writes=1; used at $C317, C31C, C31E, C332 Zp6F = $6F ; 6 refs; reads=4 writes=2; used at $C320, C324, C32E, C330 Zp70 = $70 ; 12 refs; reads=6 writes=6; used at $C3E2, C3E6, CD47, D86E, +5 more Zp71 = $71 ; 8 refs; reads=5 writes=3; used at $D8BA, D8BC, D8C8, D8D8, +2 more Zp72 = $72 ; 4 refs; reads=2 writes=2; used at $D8DA, D8E0, D8E5 Zp73 = $73 ; 5 refs; reads=2 writes=3; used at $D867, D8A1, D8B8, E1E2 Zp74 = $74 ; 2 refs; reads=1 writes=1; used at $D848, D8DC Zp75 = $75 ; 1 refs; reads=0 writes=1; used at $D84D Zp76 = $76 ; 3 refs; reads=2 writes=1; used at $D858, D941, D947 Zp77 = $77 ; 1 refs; reads=0 writes=1; used at $D85E Zp78 = $78 ; 2 refs; reads=1 writes=1; used at $D7C7, D7D1 Zp79 = $79 ; 30 refs; reads=16 writes=14; used at $CE42, CEF0, D038, DA03, +23 more Zp7A = $7A ; 11 refs; reads=5 writes=6; used at $D02E, D896, D96D, DCEE, +7 more Zp7B = $7B ; 7 refs; reads=3 writes=4; used at $CE32, CE92, CF45, D030, +3 more Zp7C = $7C ; 15 refs; reads=8 writes=7; used at $CEEA, D042, D89B, D8F7, +11 more Zp7D = $7D ; 7 refs; reads=5 writes=2; used at $DDEC, DEE4, DFB5, E3AC, +3 more Zp7E = $7E ; 5 refs; reads=4 writes=1; used at $DFB9, E2CE, E31B, E336, +1 more Zp7F = $7F ; 4 refs; reads=2 writes=2; used at $CD5D, CE8B, CEA3, CF38 Zp80 = $80 ; 2 refs; reads=1 writes=1; used at $C3E4, C3E8 Zp90 = $90 ; 6 refs; reads=3 writes=3; used at $E162, E18A, E192, E1CE, +2 more Zp91 = $91 ; 4 refs; reads=2 writes=2; used at $E17C, E19A, E19E, E7F1 Zp92 = $92 ; 4 refs; reads=2 writes=2; used at $E183, E1B4, E1B6, E7FB Zp93 = $93 ; 3 refs; reads=1 writes=2; used at $E18E, E1A8, E1AD Zp9B = $9B ; 2 refs; reads=1 writes=1; used at $E622 ZpA2 = $A2 ; 2 refs; reads=1 writes=1; used at $E628 ZpAC = $AC ; 2 refs; reads=1 writes=1; used at $E1DE ZpAD = $AD ; 2 refs; reads=1 writes=1; used at $E624 ZpB0 = $B0 ; 5 refs; reads=2 writes=3; used at $EB18, EB3A, EB41, EB47, +1 more ZpB1 = $B1 ; 1 refs; reads=0 writes=1; used at $EB1A ZpB2 = $B2 ; 1 refs; reads=0 writes=1; used at $EB1C ZpB3 = $B3 ; 1 refs; reads=0 writes=1; used at $EB1E ZpB4 = $B4 ; 5 refs; reads=2 writes=3; used at $ECEB, ECFF, ED01, ED07 ZpB7 = $B7 ; 4 refs; reads=2 writes=2; used at $ED17, ED19, ED1F ZpBA = $BA ; 4 refs; reads=2 writes=2; used at $ED2F, ED31, ED37 ZpBF = $BF ; 2 refs; reads=1 writes=1; used at $E626 ZpC0 = $C0 ; 5 refs; reads=1 writes=4; used at $D801, D889, D8D6, E6D9 ZpC1 = $C1 ; 2 refs; reads=0 writes=2; used at $D153, D7F7 ZpC2 = $C2 ; 2 refs; reads=0 writes=2; used at $D156, D7F9 ZpC3 = $C3 ; 1 refs; reads=0 writes=1; used at $D7FB ZpC4 = $C4 ; 8 refs; reads=4 writes=4; used at $D0E3, D15A, D193, D1C6, +2 more ZpC6 = $C6 ; 4 refs; reads=2 writes=2; used at $D0EB, D105, D13A, D197 ZpC7 = $C7 ; 7 refs; reads=3 writes=4; used at $D0EF, D109, D121, D15E, +3 more ZpC8 = $C8 ; 3 refs; reads=1 writes=2; used at $CE11, CE3B ZpC9 = $C9 ; 3 refs; reads=1 writes=2; used at $E02F, E03A ZpCA = $CA ; 7 refs; reads=3 writes=4; used at $E230, E239, E23D, E240 ZpCB = $CB ; 2 refs; reads=1 writes=1; used at $E243, E249 ZpCC = $CC ; 2 refs; reads=1 writes=1; used at $CC6E ZpCD = $CD ; 1 refs; reads=1 writes=0; used at $C115 ZpD9 = $D9 ; 3 refs; reads=2 writes=1; used at $D87A, D87C ZpDC = $DC ; 1 refs; reads=1 writes=0; used at $DC58 ZpDE = $DE ; 13 refs; reads=10 writes=3; used at $C042, C94F, C959, C971, +9 more ZpDF = $DF ; 5 refs; reads=3 writes=2; used at $C03E, CDF2, CDF6, CE4F, +1 more ZpEC = $EC ; 10 refs; reads=5 writes=5; used at $EC61, EC63, EC65, EC67, +2 more ZpFA = $FA ; 1 refs; reads=0 writes=1; used at $C03A ZpFF = $FF ; 3 refs; reads=2 writes=1; used at $C014, C032, C036 ; Pass 3 semantic aliases (proven from the disassembly): PpuCtrlShadow = Zp40 PpuMaskShadow = Zp41 StarFieldPtrLo = Zp00 StarFieldPtrHi = Zp01 StarFieldCount = Zp06 PpuAddrLow = Zp04 PpuAddrHigh = Zp05 TilePtrLo = Zp08 TilePtrHi = Zp09 SpriteX = Zp16 SpriteY = Zp25 SpriteAttr = Zp2D SpriteIndex = Zp2B ScreenPtrLo = Zp0A ScreenPtrHi = Zp0B