Pass 1 _wip: 23 projects at Pass 1, byte-identical builds verified

This commit is contained in:
tmerritt committed 2026-10-21 12:49:08 -04:00
1 parent 691b2bc23c
commit b08d65877f
101 files changed
+267311 -750

No files matched your search

+5 -3
View File
@@ -2,9 +2,11 @@
## Status
**Pass 0 skeleton.** The project builds and verifies byte-identical to the
original ROM, but no disassembly exists yet: `prg.s` is a single
`.incbin "prg.bin"` of the PRG image.
**Pass 1.** The project builds and verifies byte-identical to the
original ROM. `prg.s` is a traced disassembly classifying bytes as
reachable code or data, with every instruction carrying a trailing
audit comment. Unreached bytes remain as explicit `.byte` blocks; no
ROM byte is deleted or reformatted.
`make` assembles `header.s`, `prg.s`, `chr.s`, links them with `ld65` and compares the
result against `rom.nes`:
+55 -4
View File
@@ -1,4 +1,55 @@
; Zero-page aliases for this project.
; Empty at Pass 0. Pass 1+ adds proven semantic names here;
; addresses whose role is not yet determined keep the neutral ZpXX
; form.
; 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 ; 75 refs; reads=25 writes=50; used at $C022, C027, C11C, C132, +71 more
Zp01 = $01 ; 32 refs; reads=8 writes=24; used at $C020, C02B, C122, C1A5, +23 more
Zp02 = $02 ; 28 refs; reads=9 writes=19; used at $C13E, C1E1, C4B3, C4C2, +24 more
Zp03 = $03 ; 10 refs; reads=5 writes=5; used at $C519, C542, C6FB, C79A, +6 more
Zp04 = $04 ; 27 refs; reads=11 writes=16; used at $C140, C1D5, C4A2, C4DC, +21 more
Zp05 = $05 ; 21 refs; reads=7 writes=14; used at $C142, C1DB, C58B, C5BB, +17 more
Zp06 = $06 ; 15 refs; reads=6 writes=9; used at $C194, C2BE, C640, C65A, +7 more
Zp07 = $07 ; 4 refs; reads=2 writes=2; used at $EC1F, EC29, EC38
Zp08 = $08 ; 10 refs; reads=6 writes=4; used at $C1F7, C202, C208, C20F, +6 more
Zp09 = $09 ; 3 refs; reads=1 writes=2; used at $C1FD, C6A8, C6CE
Zp0A = $0A ; 35 refs; reads=21 writes=14; used at $C212, C21A, C509, C520, +30 more
Zp0B = $0B ; 5 refs; reads=0 writes=5; used at $C50D, C524, C536, C5DA, +1 more
Zp0C = $0C ; 13 refs; reads=4 writes=9; used at $C511, C528, C53A, C5D6, +5 more
Zp0D = $0D ; 3 refs; reads=1 writes=2; used at $C515, C53E, C6D7
Zp0E = $0E ; 2 refs; reads=1 writes=1; used at $C501, C8A7
Zp10 = $10 ; 2 refs; reads=1 writes=1; used at $C6B1, D7BE
Zp11 = $11 ; 2 refs; reads=1 writes=1; used at $C6B5, D7C4
Zp1C = $1C ; 13 refs; reads=8 writes=5; used at $C56E, C577, C57A, C57D, +7 more
Zp1D = $1D ; 9 refs; reads=5 writes=4; used at $C567, C570, C580, C5A1, +5 more
Zp1E = $1E ; 12 refs; reads=6 writes=6; used at $C14D, C1E7, C305, C30A, +7 more
Zp1F = $1F ; 4 refs; reads=1 writes=3; used at $C308, C310, D776, D794
Zp40 = $40 ; 2 refs; reads=1 writes=1; used at $C073, C275
Zp41 = $41 ; 2 refs; reads=1 writes=1; used at $C05B, C284
Zp42 = $42 ; 2 refs; reads=1 writes=1; used at $C05F, C27A
Zp43 = $43 ; 2 refs; reads=1 writes=1; used at $C063, C27F
Zp44 = $44 ; 2 refs; reads=1 writes=1; used at $C2F1, C2FB
Zp46 = $46 ; 2 refs; reads=1 writes=1; used at $C095, C2F7
Zp48 = $48 ; 7 refs; reads=6 writes=1; used at $C083, C09B, C547, C556, +2 more
Zp49 = $49 ; 2 refs; reads=1 writes=1; used at $C087
Zp4A = $4A ; 4 refs; reads=2 writes=2; used at $C077, C079, C0CD, C0D2
Zp4B = $4B ; 4 refs; reads=3 writes=1; used at $C06C, C091, C0D4, C18C
Zp4E = $4E ; 7 refs; reads=4 writes=3; used at $C11A, C128, C1C4, C1D3, +3 more
Zp4F = $4F ; 3 refs; reads=1 writes=2; used at $C151, C1C6, C234
Zp50 = $50 ; 1 refs; reads=1 writes=0; used at $C587
Zp51 = $51 ; 2 refs; reads=1 writes=1; used at $C56A, C56C
Zp52 = $52 ; 2 refs; reads=1 writes=1; used at $C572, C574
Zp5B = $5B ; 3 refs; reads=2 writes=1; used at $C08D, C0AD, EB0E
Zp62 = $62 ; 2 refs; reads=2 writes=0; used at $C089, EB0A
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
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
ZpDE = $DE ; 1 refs; reads=0 writes=1; used at $C042
ZpDF = $DF ; 1 refs; reads=0 writes=1; used at $C03E
ZpEC = $EC ; 1 refs; reads=0 writes=1; used at $EC61
ZpFA = $FA ; 1 refs; reads=0 writes=1; used at $C03A
ZpFF = $FF ; 3 refs; reads=2 writes=1; used at $C014, C032, C036
+4541 -10
View File
File diff suppressed because it is too large. Load diff