Promotes Lunar Pool
This commit is contained in:
1 parent
837007843d
commit
62866563ba
53 files changed
+115746
-4100
No files matched your search
@@ -0,0 +1,59 @@
|
||||
# Golf (JU) Pass 2 naming plan and progress
|
||||
|
||||
Pass 1 baseline: ca65/ld65 build verified byte-identical.
|
||||
|
||||
## Batch 1: startup, interrupt, PPU helpers, title/menu backbone
|
||||
|
||||
- Rename high-confidence startup and interrupt-local labels.
|
||||
- Name NMI vector fields and PPU shadow values in `locals.inc`.
|
||||
- Name the title/menu selection and input-latch fields where usage is proven.
|
||||
- Name the menu cursor Y-position table at `$DB0D`.
|
||||
- Keep uncertain gameplay temporaries numerical.
|
||||
|
||||
## Later batches
|
||||
|
||||
1. Controller polling and shot-selection state.
|
||||
2. Gameplay NMI sequence fields and callbacks.
|
||||
3. Course decompressor fields and package tables.
|
||||
4. Golfer sprite-layout routines and states.
|
||||
5. Course object expansion and collision routines.
|
||||
6. Terrain-grid generator and course overview.
|
||||
7. Audio engine and command tables.
|
||||
|
||||
Every batch must complete `make clean && make` with `BYTE-IDENTICAL` before the
|
||||
next naming batch is accepted.
|
||||
|
||||
## Batch 2 completed: controller and shot-selection callback
|
||||
|
||||
Named the controller serial scan, repeat latch, club-selection index, aim index,
|
||||
aim direction, animation counters, major callback phases, and OAM-update loops
|
||||
within `$C5A0-$C71D`.
|
||||
|
||||
## Batch 3 completed: gameplay sequence NMI chain
|
||||
|
||||
Named the sequence position, three bounds, phase and completion fields, dynamic
|
||||
NMI continuations, position/frame selection loops, and threshold tables in
|
||||
`$CF87-$D13D`.
|
||||
|
||||
### Batch 3 correction
|
||||
|
||||
The branch at `$D09C` must target the trampoline at `$D0A6`, not the frame
|
||||
selector at `$D0A9`. The target is now `JumpToSelectSequenceFrame`, preserving
|
||||
the original displacement `$08` and byte sequence `90 08`.
|
||||
|
||||
## Subroutine-entry Label_ cleanup (Pass 2 residue)
|
||||
|
||||
All 112 `Label_` definitions that are JSR/JMP subroutine entry points have been
|
||||
renamed:
|
||||
|
||||
- 4 with established semantics: `WaitForFramePreservingY` ($C881),
|
||||
`SpriteOffsetForController` ($C894), `SetPpuScrollAndMask` ($C89D),
|
||||
`MultiplyABy32` ($C8BB).
|
||||
- 108 as address-based `SubC<addr>` names where behaviour is not yet
|
||||
established (e.g. `SubC84D`, `SubC89A`, `SubCE64`).
|
||||
|
||||
The remaining 349 `Label_` definitions are internal branch targets within
|
||||
routines; per repo convention these do not need semantic names for the call
|
||||
graph to be readable and are intentionally left as `Label_`.
|
||||
|
||||
Build verified `BYTE-IDENTICAL` after the rename.
|
||||
Reference in new issue
Block a user