- Pass 1 complete for all 14 WIP projects: - Donkey Kong (JU): 76.3% code - Donkey Kong Jr. Math (U): 81.9% code - Duck Hunt (JUE): 37.5% code - Hogan's Alley (JU): 41.8% code (needs CDL reclass for E970-E9C9 branch table) - Ice Climber (JE/U): 74.7% code - Lode Runner (U): 52.6% code - Millipede (U): 74.6% code - Pac-Man (Tengen) (U): 19.5% code - Pac-Man (U): 19.6% code - Pinball (JU): 59.5% code - Popeye (JU) PRG 0/1: 72.3% code - Raid on Bungeling Bay (U): 64.6% code - Raid on Bungeling Bay (U) [a2]: 64.3% code - Pinball (JU) Pass 2 complete: 4,734 instructions, 196 semantic labels, 150 zero-page aliases, BYTE-IDENTICAL - Tools fixed: - cdl_reclass.py: Fixed override logic to always win over CDL conflicts - nesdis.py: Fixed a: prefix parsing for JSR/JMP operands; fixed IND mode emission - Root OVERVIEW.md updated with all Pass 1 completion statuses - Pinball (JU) and Urban Champion (JU) project OVERVIEW.md updated All 17 top-level projects pass verify_pass1.py; 13/14 WIP projects build (Hogan's Alley needs CDL reclass for E970-E9C9 branch table)
157 lines
14 KiB
PHP
157 lines
14 KiB
PHP
; Pinball (JU) 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 ; 18 refs; reads=10 writes=8; used at $C00D, C040, C06E, C29C, +14 more
|
|
Zp01 = $01 ; 3 refs; reads=1 writes=2; used at $C039, C201, E019
|
|
Zp02 = $02 ; 5 refs; reads=2 writes=3; used at $C0D7, C145, C267, E02E, +1 more
|
|
Zp03 = $03 ; 4 refs; reads=2 writes=2; used at $C20B, C27F, C3C9
|
|
Zp04 = $04 ; 11 refs; reads=9 writes=2; used at $C042, C09B, C0F7, C150, +6 more
|
|
Zp05 = $05 ; 17 refs; reads=15 writes=2; used at $C0D3, C37F, C381, E694, +11 more
|
|
Zp06 = $06 ; 85 refs; reads=42 writes=43; used at $C025, C02E, CCDD, CE86, +80 more
|
|
Zp07 = $07 ; 51 refs; reads=32 writes=19; used at $CC0D, CC25, CCA5, CD12, +45 more
|
|
Zp08 = $08 ; 49 refs; reads=22 writes=27; used at $C027, CCC3, CCD5, CE8D, +44 more
|
|
Zp09 = $09 ; 25 refs; reads=18 writes=7; used at $CBDD, CC01, CC11, CC2B, +20 more
|
|
Zp0A = $0A ; 17 refs; reads=11 writes=6; used at $CBCF, D30A, D32B, D544, +12 more
|
|
Zp0B = $0B ; 9 refs; reads=5 writes=4; used at $CBD1, D65B, DBC1, DCD4, +4 more
|
|
Zp0C = $0C ; 12 refs; reads=7 writes=5; used at $CBD3, CC4B, CC58, D51A, +7 more
|
|
Zp0D = $0D ; 4 refs; reads=3 writes=1; used at $CBD5, DDDE, DE5E
|
|
Zp0E = $0E ; 8 refs; reads=4 writes=4; used at $D54C, D551, D63F, DDAE, +4 more
|
|
Zp0F = $0F ; 6 refs; reads=4 writes=2; used at $D61C, D67D, D68F, DDD2, +2 more
|
|
Zp10 = $10 ; 5 refs; reads=2 writes=3; used at $D521, D526, D62A, DDB2, +1 more
|
|
Zp11 = $11 ; 2 refs; reads=1 writes=1; used at $D62C, D681
|
|
Zp12 = $12 ; 19 refs; reads=10 writes=9; used at $DBBD, DBBF, DC0F, DC11, +14 more
|
|
Zp13 = $13 ; 2 refs; reads=1 writes=1; used at $DC19, DC20
|
|
Zp14 = $14 ; 2 refs; reads=1 writes=1; used at $DC5A, DC83
|
|
Zp15 = $15 ; 3 refs; reads=1 writes=2; used at $DE30, DE43, DE54
|
|
Zp16 = $16 ; 5 refs; reads=3 writes=2; used at $DE34, DE47, DE58, E426, +1 more
|
|
Zp17 = $17 ; 3 refs; reads=1 writes=2; used at $DE38, DE4B, DE5C
|
|
Zp18 = $18 ; 5 refs; reads=3 writes=2; used at $DE3C, DE4F, DE60, E439, +1 more
|
|
Zp19 = $19 ; 4 refs; reads=2 writes=2; used at $DE63, DE6C, DE77, DE80
|
|
Zp1A = $1A ; 4 refs; reads=2 writes=2; used at $DE67, DE70, DE7B, DE84
|
|
Zp1B = $1B ; 3 refs; reads=1 writes=2; used at $CC86, CCFE, E40E
|
|
Zp1C = $1C ; 5 refs; reads=1 writes=4; used at $C086, CBB8, CC5D, CD04
|
|
Zp1D = $1D ; 5 refs; reads=2 writes=3; used at $C0E2, CBB4, CBF8, CC70
|
|
Zp1E = $1E ; 4 refs; reads=1 writes=3; used at $C0B0, CC40, CC46
|
|
Zp1F = $1F ; 4 refs; reads=2 writes=2; used at $CC0B, CC21, CC31
|
|
Zp20 = $20 ; 2 refs; reads=1 writes=1; used at $CC0F, CC27
|
|
Zp21 = $21 ; 2 refs; reads=1 writes=1; used at $CC13, CC2D
|
|
Zp22 = $22 ; 4 refs; reads=2 writes=2; used at $CCF6, CD99, CD9E
|
|
Zp23 = $23 ; 4 refs; reads=1 writes=3; used at $CC7F, CCB8, CCE6, CCFA
|
|
Zp24 = $24 ; 5 refs; reads=2 writes=3; used at $CC78, CC7C, CC8B, CCB1
|
|
Zp25 = $25 ; 19 refs; reads=11 writes=8; used at $CE7C, CECF, CEE3, CEEC, +13 more
|
|
Zp26 = $26 ; 16 refs; reads=11 writes=5; used at $CC18, CF02, CF1C, CF21, +10 more
|
|
Zp27 = $27 ; 6 refs; reads=3 writes=3; used at $CEF6, CF04, CF0C, CF12, +1 more
|
|
Zp28 = $28 ; 6 refs; reads=3 writes=3; used at $CEFA, CF06, CF10, CF16, +1 more
|
|
Zp29 = $29 ; 6 refs; reads=3 writes=3; used at $CEFE, CF08, CF14, CF1A, +1 more
|
|
Zp2A = $2A ; 15 refs; reads=8 writes=7; used at $CE77, CF6F, CF8E, CF9E, +7 more
|
|
Zp2B = $2B ; 6 refs; reads=4 writes=2; used at $D032, D047, D04B, D3D1, +2 more
|
|
Zp2C = $2C ; 11 refs; reads=6 writes=5; used at $D04F, D057, D3AC, D3F4, +3 more
|
|
Zp2E = $2E ; 3 refs; reads=2 writes=1; used at $D041, D05C, D06C
|
|
Zp2F = $2F ; 1 refs; reads=1 writes=0; used at $D05E
|
|
Zp30 = $30 ; 14 refs; reads=10 writes=4; used at $D08F, D0B6, D0D0, D0E8, +10 more
|
|
Zp31 = $31 ; 6 refs; reads=3 writes=3; used at $D0AF, D106, D5B3, D6A6, +2 more
|
|
Zp32 = $32 ; 4 refs; reads=2 writes=2; used at $D284, D296, D2BB, D2D3
|
|
Zp33 = $33 ; 8 refs; reads=5 writes=3; used at $D0EF, D15D, D16D, D182, +4 more
|
|
Zp34 = $34 ; 5 refs; reads=3 writes=2; used at $D0E6, D0EB, D1DD, D6D1, +1 more
|
|
Zp35 = $35 ; 5 refs; reads=3 writes=2; used at $D100, D159, D169, D6E0, +1 more
|
|
Zp36 = $36 ; 24 refs; reads=14 writes=10; used at $D167, D2C0, D2D8, D2DA, +16 more
|
|
Zp37 = $37 ; 6 refs; reads=4 writes=2; used at $D177, D2FB, D31C, D33C, +1 more
|
|
Zp38 = $38 ; 3 refs; reads=2 writes=1; used at $D17E, D2F0, D311
|
|
Zp39 = $39 ; 3 refs; reads=2 writes=1; used at $D18E, D2FF, D320
|
|
Zp3A = $3A ; 21 refs; reads=18 writes=3; used at $D3B6, D3E1, D3F2, D41C, +17 more
|
|
Zp3B = $3B ; 8 refs; reads=5 writes=3; used at $D3BA, D3CF, D48F, D4FD, +4 more
|
|
Zp3C = $3C ; 12 refs; reads=8 writes=4; used at $D3C6, D44F, D474, D5AF, +7 more
|
|
Zp3D = $3D ; 3 refs; reads=1 writes=2; used at $D3CA, D3DB, D5FD
|
|
Zp3E = $3E ; 13 refs; reads=6 writes=7; used at $D3D9, D3EA, D3F6, D413, +5 more
|
|
Zp3F = $3F ; 13 refs; reads=6 writes=7; used at $D3DF, D3EC, D3F9, D415, +5 more
|
|
Zp40 = $40 ; 3 refs; reads=2 writes=1; used at $D5BC, D6AC, D6F5
|
|
Zp41 = $41 ; 5 refs; reads=2 writes=3; used at $CD36, CD59, CD92
|
|
Zp42 = $42 ; 6 refs; reads=3 writes=3; used at $CD3F, CD44, CD5E, CD78, +1 more
|
|
Zp43 = $43 ; 2 refs; reads=1 writes=1; used at $CD71, CDAC
|
|
Zp44 = $44 ; 4 refs; reads=2 writes=2; used at $CD38, CD97, CD9C
|
|
Zp48 = $48 ; 1 refs; reads=1 writes=0; used at $E005
|
|
Zp4A = $4A ; 2 refs; reads=1 writes=1; used at $CF73, CFDD
|
|
Zp6A = $6A ; 9 refs; reads=6 writes=3; used at $CE70, CEAB, CECB, CEF4, +5 more
|
|
Zp77 = $77 ; 1 refs; reads=1 writes=0; used at $CEF8
|
|
Zp7A = $7A ; 2 refs; reads=1 writes=1; used at $CFD1, D196
|
|
Zp84 = $84 ; 1 refs; reads=1 writes=0; used at $CEFC
|
|
Zp8A = $8A ; 2 refs; reads=2 writes=0; used at $D1F3, D211
|
|
Zp9A = $9A ; 2 refs; reads=2 writes=0; used at $D1F7, D209
|
|
ZpB2 = $B2 ; 2 refs; reads=1 writes=1; used at $DFF6, E01B
|
|
ZpB3 = $B3 ; 2 refs; reads=1 writes=1; used at $E003, E00B
|
|
ZpB4 = $B4 ; 6 refs; reads=5 writes=1; used at $CEB5, CF38, D39E, D3B4, +2 more
|
|
ZpB5 = $B5 ; 6 refs; reads=5 writes=1; used at $CEC1, CF55, D39A, D3B8, +2 more
|
|
ZpB6 = $B6 ; 12 refs; reads=9 writes=3; used at $C157, C3B1, E055, E05F, +7 more
|
|
ZpB7 = $B7 ; 6 refs; reads=2 writes=4; used at $C0B4, E06B, E08E, E090
|
|
ZpB8 = $B8 ; 3 refs; reads=1 writes=2; used at $C0B8, E087, E096
|
|
ZpB9 = $B9 ; 5 refs; reads=3 writes=2; used at $C362, C391, C395, C397
|
|
ZpBA = $BA ; 7 refs; reads=5 writes=2; used at $E3E6, E3EC, E3EF, E3F7, +2 more
|
|
ZpBB = $BB ; 2 refs; reads=1 writes=1; used at $E3E8
|
|
ZpBC = $BC ; 5 refs; reads=4 writes=1; used at $C3C0, CBAF, EE19, EEA2, +1 more
|
|
ZpBD = $BD ; 5 refs; reads=4 writes=1; used at $C061, C1B9, C1C5, C3BB, +1 more
|
|
ZpBE = $BE ; 20 refs; reads=16 writes=4; used at $C065, C06A, C0A9, C0FB, +14 more
|
|
ZpBF = $BF ; 41 refs; reads=37 writes=4; used at $C0EC, C10E, C121, C12F, +35 more
|
|
ZpC0 = $C0 ; 15 refs; reads=10 writes=5; used at $D509, D603, E497, E609, +7 more
|
|
ZpC1 = $C1 ; 13 refs; reads=8 writes=5; used at $E506, E64C, E664, E666, +5 more
|
|
ZpC2 = $C2 ; 11 refs; reads=6 writes=5; used at $D6AA, E617, E61F, E635, +3 more
|
|
ZpC3 = $C3 ; 10 refs; reads=5 writes=5; used at $E65A, E662, E678, E67C, +2 more
|
|
ZpC4 = $C4 ; 4 refs; reads=2 writes=2; used at $E1B0, E49C, E4A0, E5D0
|
|
ZpC5 = $C5 ; 4 refs; reads=2 writes=2; used at $E1B2, E50B, E50F, E5EF
|
|
ZpC6 = $C6 ; 6 refs; reads=3 writes=3; used at $E4A3, E512, E5B6, E5BC
|
|
ZpC7 = $C7 ; 5 refs; reads=1 writes=4; used at $C07D, D505, D57D, D5BE, +1 more
|
|
ZpC8 = $C8 ; 1 refs; reads=0 writes=1; used at $C07F
|
|
ZpCA = $CA ; 1 refs; reads=0 writes=1; used at $F11C
|
|
ZpCC = $CC ; 2 refs; reads=1 writes=1; used at $EC80, EC8A
|
|
ZpCD = $CD ; 4 refs; reads=2 writes=2; used at $CD0B, CD2E, D1EA, D1EF
|
|
ZpCE = $CE ; 7 refs; reads=4 writes=3; used at $D239, D23B, EFD3, EFE1, +3 more
|
|
ZpCF = $CF ; 7 refs; reads=3 writes=4; used at $C088, D24C, D253, E225, +3 more
|
|
ZpD0 = $D0 ; 5 refs; reads=2 writes=3; used at $C084, F0DF, F0E7, F0EB, +1 more
|
|
ZpD1 = $D1 ; 4 refs; reads=2 writes=2; used at $D288, D28C, E6A1, E70D
|
|
ZpD2 = $D2 ; 5 refs; reads=3 writes=2; used at $CBBA, CC93, CCE4, CCF0, +1 more
|
|
ZpD3 = $D3 ; 7 refs; reads=3 writes=4; used at $CDAA, EF31, EF34, EF49, +2 more
|
|
ZpD4 = $D4 ; 2 refs; reads=1 writes=1; used at $F140
|
|
ZpD5 = $D5 ; 3 refs; reads=1 writes=2; used at $CE52, F41E, F428
|
|
ZpD6 = $D6 ; 2 refs; reads=1 writes=1; used at $F1E5, F1EE
|
|
ZpD7 = $D7 ; 2 refs; reads=1 writes=1; used at $F1F0, F1F9
|
|
ZpD8 = $D8 ; 3 refs; reads=2 writes=1; used at $F22E, F237
|
|
ZpDB = $DB ; 35 refs; reads=15 writes=20; used at $CD20, CD2C, CE9B, CF63, +28 more
|
|
ZpDC = $DC ; 17 refs; reads=6 writes=11; used at $CD25, CFE2, D1F9, D20B, +10 more
|
|
ZpDD = $DD ; 17 refs; reads=12 writes=5; used at $D4BB, D4E0, D4E6, E10D, +11 more
|
|
ZpDE = $DE ; 8 refs; reads=3 writes=5; used at $D4E8, D4ED, E112, E157, +2 more
|
|
ZpDF = $DF ; 15 refs; reads=8 writes=7; used at $CEA9, CEBA, CEC9, D39C, +11 more
|
|
ZpE0 = $E0 ; 14 refs; reads=5 writes=9; used at $CEBF, D4A3, D4A6, D4A9, +7 more
|
|
ZpE1 = $E1 ; 7 refs; reads=4 writes=3; used at $C2A0, D3DD, D451, D476, +3 more
|
|
ZpE2 = $E2 ; 3 refs; reads=0 writes=3; used at $C2A4, D4C6, E126
|
|
ZpE3 = $E3 ; 61 refs; reads=34 writes=27; used at $CD8B, CF50, CF5B, CF65, +48 more
|
|
ZpE4 = $E4 ; 9 refs; reads=4 writes=5; used at $CD82, CF67, CF71, E24C, +4 more
|
|
ZpE5 = $E5 ; 1 refs; reads=0 writes=1; used at $CD87
|
|
ZpE6 = $E6 ; 45 refs; reads=22 writes=23; used at $C023, C02C, C033, C2CD, +28 more
|
|
ZpE7 = $E7 ; 7 refs; reads=3 writes=4; used at $E12C, E194, E731, E733, +1 more
|
|
ZpE8 = $E8 ; 8 refs; reads=4 writes=4; used at $EC06, EC17, EC45, EFE6, +2 more
|
|
ZpE9 = $E9 ; 3 refs; reads=1 writes=2; used at $EC30, EC39
|
|
ZpEA = $EA ; 3 refs; reads=1 writes=2; used at $EC10, EC3E
|
|
ZpEB = $EB ; 9 refs; reads=3 writes=6; used at $EE59, EE6C, EEAA, EEB8, +2 more
|
|
ZpEC = $EC ; 13 refs; reads=9 writes=4; used at $E7BD, E7EE, E7F0, E7FC, +5 more
|
|
ZpED = $ED ; 25 refs; reads=17 writes=8; used at $E8D0, E8FB, E8FD, E90D, +14 more
|
|
ZpEE = $EE ; 11 refs; reads=8 writes=3; used at $E6BA, EC94, ECA3, ECA5, +4 more
|
|
ZpEF = $EF ; 5 refs; reads=2 writes=3; used at $EC9F, ECAD, ECAF, ECB5, +1 more
|
|
ZpF0 = $F0 ; 11 refs; reads=5 writes=6; used at $E21C, E69F, E6B0, E709, +3 more
|
|
ZpF1 = $F1 ; 9 refs; reads=1 writes=8; used at $FB6E, FBAC, FBE3, FC18, +5 more
|
|
ZpF2 = $F2 ; 7 refs; reads=1 writes=6; used at $FCB4, FCD1, FCE8, FD12, +3 more
|
|
ZpF3 = $F3 ; 6 refs; reads=5 writes=1; used at $FDA2, FDE7, FE32, FE48, +2 more
|
|
ZpF4 = $F4 ; 5 refs; reads=3 writes=2; used at $FDBB, FE82, FE8B, FEA0
|
|
ZpF5 = $F5 ; 4 refs; reads=2 writes=2; used at $FDC0, FE44, FE5B
|
|
ZpF6 = $F6 ; 8 refs; reads=6 writes=2; used at $C3D3, FBDD, FCE2, FD95, +3 more
|
|
ZpF7 = $F7 ; 18 refs; reads=9 writes=9; used at $FB72, FB7F, FB8C, FBB0, +12 more
|
|
ZpF8 = $F8 ; 9 refs; reads=5 writes=4; used at $FB76, FB92, FB99, FB9B, +5 more
|
|
ZpF9 = $F9 ; 9 refs; reads=3 writes=6; used at $FCB8, FCC4, FCD5, FD28, +4 more
|
|
ZpFA = $FA ; 5 refs; reads=2 writes=3; used at $FD31, FD33, FD39, FD40
|
|
ZpFB = $FB ; 4 refs; reads=3 writes=1; used at $FDB1, FE0D, FE5D, FEA2
|
|
ZpFC = $FC ; 1 refs; reads=0 writes=1; used at $FDB6
|
|
ZpFD = $FD ; 7 refs; reads=1 writes=6; used at $C0CE, C162, C37A, E707, +3 more
|
|
ZpFE = $FE ; 20 refs; reads=6 writes=14; used at $CCDB, E6B6, E7F8, E815, +11 more
|
|
ZpFF = $FF ; 27 refs; reads=7 writes=20; used at $D279, E62B, E66E, E6AE, +17 more
|