Moves Wild Gunman (U) from _wip/ to Wild Gunman (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 (~20% code / ~80% data) Pass 2 partial: routine headers for all labels, semantic naming for key routines (Reset, NmiHandler, MainStateDispatch, MainLoopBody, etc.), zero-page aliases in locals.inc Updates root OVERVIEW.md: - Removes Wild Gunman from _wip skeleton table (23 -> 22 skeletons) - Adds Wild Gunman as #13 in numbered inventory (BYTE-IDENTICAL, Pass 2) - Updates summary count from 12 to 13 projects
19 lines
1.0 KiB
PHP
19 lines
1.0 KiB
PHP
; Wild Gunman (U) zero-page aliases - Pass 2
|
|
; Semantic names for addresses with observed usage patterns; ZpXX names for
|
|
; addresses whose role is not yet uniquely determined.
|
|
|
|
GameMode = $30 ; Current game mode/state, set to 1 during reset.
|
|
NmiPhase = $20 ; NMI phase flag, set to 1 by NMI handler.
|
|
NmiFlag = $22 ; NMI flag, set to 1 by NMI handler.
|
|
Timer2F = $2F ; Timer incremented each frame in main loop.
|
|
Ctrl1 = $16 ; Controller 1 state, checked in MainStateDispatch.
|
|
Mode38 = $38 ; Mode byte checked in MainStateDispatch.
|
|
OAMBase = $05EC ; OAM/sprite base address used in reset init.
|
|
SpriteData = $05F0 ; Sprite data destination in reset init.
|
|
|
|
; Generic zero-page aliases (role not yet uniquely determined)
|
|
Zp00 = $00 ; Used as indirect pointer lo in RAM clear loop
|
|
Zp01 = $01 ; Used as indirect pointer hi in RAM clear loop
|
|
Zp08 = $08 ; Set to $90 during reset (PPUCTRL value)
|
|
Zp09 = $09 ; Set to $02 during reset
|