48 lines
2.1 KiB
PHP
48 lines
2.1 KiB
PHP
; =============================================================================
|
|
; Golf (JU) application-specific RAM aliases
|
|
; =============================================================================
|
|
; Pass 2 names are introduced only where usage is established. RAM reused by
|
|
; unrelated subsystems remains numeric until the owning routines are audited.
|
|
|
|
; PPU/NMI infrastructure
|
|
ppu_ctrl_shadow = $00
|
|
ppu_mask_shadow = $01
|
|
nmi_vector_lo = $02
|
|
nmi_vector_hi = $03
|
|
source_pointer_lo = $04
|
|
source_pointer_hi = $05
|
|
destination_pointer_lo = $06
|
|
destination_pointer_hi = $07
|
|
nmi_complete_flag = $08
|
|
|
|
; Title/menu state
|
|
title_input_mode = $09
|
|
menu_input_latch = $0A
|
|
menu_selection = $0D
|
|
current_hole_index = $2B
|
|
|
|
; Course overview/grid generation
|
|
grid_inner_index = $6F
|
|
grid_group_index = $70
|
|
|
|
; Gameplay controller and shot-selection callback ($C5A0-$C71D)
|
|
active_controller_index = $7A ; 0 selects JOY1, 1 selects JOY2
|
|
primary_action_pressed = $2E ; first serial controller bit, normalized to 0/1
|
|
directional_input_index = $30 ; serial direction position, $FF when none found
|
|
directional_repeat_latch = $18 ; prevents immediate repeated club changes
|
|
club_selection_index = $17 ; wraps through $00-$0D
|
|
aim_angle_index = $44 ; low-nibble aim/angle phase
|
|
aim_adjust_direction = $45 ; zero/increment vs nonzero/decrement direction
|
|
animation_tick_counter = $8E
|
|
animation_frame_index = $8F
|
|
|
|
; Gameplay sequence callback chain ($CF87-$D123)
|
|
sequence_position = $32 ; mirrored into OAM Y fields $027B/$027F
|
|
sequence_phase = $34 ; selects forward vs return frame tables
|
|
sequence_return_complete = $35 ; set when the return bound is reached
|
|
sequence_lower_bound = $1E ; lower endpoint used by the decrementing phase
|
|
sequence_upper_bound = $1D ; upper endpoint used by the incrementing phase
|
|
sequence_return_bound = $1F ; endpoint used by the return phase
|
|
sequence_frame_index = $15 ; layout/frame selector passed to sprite refresh
|
|
sequence_frame_limit = $20 ; cap applied to one forward frame-table result
|