Moves NES PowerPad Test Card (U) from _wip/ to NES PowerPad Test Card (U)/ with full ROM build: - Adds header.s, chr.s, linker.cfg (HEADER+PRG+CHR segments) - Updates Makefile to build and verify reconstructed.nes vs rom.nes - Adds rom.nes copy + copilot/rom.nes symlink per repo convention - Verified byte-identical build Pass 1 complete: full code/data classification (~7.2% code / ~92.8% data) Pass 2 complete: routine headers for all ~50 labels, semantic naming for key routines (Reset, NmiHandler, VramWrite, ReadPad, ProcessPads, etc.), zero-page aliases in locals.inc (Zp00-Zp15) Pass 3 complete: data tables named (PaletteData at , PadBitTableLives at ) Root OVERVIEW.md updated: - Removes NES PowerPad Test Card from _wip skeleton table (21 → 20 skeletons) - Adds NES PowerPad Test Card as #15 in numbered inventory (BYTE-IDENTICAL, Pass 2/3) - Updates summary count from 14 to 15 projects
25 lines
1.2 KiB
PHP
25 lines
1.2 KiB
PHP
; NES PowerPad Test Card (U) zero-page aliases - Pass 2
|
|
; Semantic names for addresses with observed usage patterns.
|
|
|
|
Zp00 = $00 ; PPUCTRL shadow register
|
|
Zp01 = $01 ; PPUMASK shadow register
|
|
Zp02 = $02 ; VBlank flag (set by NMI, cleared by WaitForVBlank)
|
|
Zp03 = $03 ; Frame counter / NMI tick counter
|
|
Zp05 = $05 ; Score/digit temp
|
|
Zp06 = $06 ; Pad 1 state byte 1 (shifted pad data)
|
|
Zp07 = $07 ; Pad 1 state byte 2
|
|
Zp08 = $08 ; Pad 1 state byte 3
|
|
Zp09 = $09 ; Pad 1 state byte 4
|
|
Zp0A = $0A ; Pad 2 state byte 1
|
|
Zp0B = $0B ; Pad 2 state byte 2
|
|
Zp0C = $0C ; Pad temp / swap variable
|
|
Zp0D = $0D ; Pad mode / draw flag
|
|
Zp0E = $0E ; Shift counter / temp
|
|
Zp0F = $0F ; Delay counter
|
|
Zp10 = $10 ; VRAM pointer low byte (indirect)
|
|
Zp11 = $11 ; VRAM pointer high byte (indirect)
|
|
Zp12 = $12 ; Score digit 1 accumulator
|
|
Zp13 = $13 ; Score digit 2 accumulator
|
|
Zp14 = $14 ; Score digit 3 accumulator
|
|
Zp15 = $15 ; Score digit 4 accumulator
|