- Decoded the VramWrite ($E1CC) stream format: <addr hi> <addr lo> <count> <bytes>, $00 terminator - Named all 9 payload streams ($E4CC-$E7C2, no gaps/overlaps) plus VramWriteSourcePointerTable at $F000 - Split PadBitTableLives into Player1TileTable ($E4B4) and Player2TileTable ($E4C0), 12 entries each (Y=0..11) - Decoded CHR font (digits $30-$39, letters $3A-$52, space $5F; 'W' missing from the A-Z run) and recovered on-screen text including 'PRESS A TO TEST SIDE-A' / 'SIDE-B' - Documented that the 16 KiB PRG is two byte-identical 8 KiB halves; $C000 copy is dead - Documented 7 unreached subroutines inside the live code region (kept as .byte per Pass-1 policy) - Fixed a stray duplicate sentence and stale _wip paths in root OVERVIEW.md Byte-identical ROM verified.
107 lines
2.5 KiB
Plaintext
107 lines
2.5 KiB
Plaintext
al 00F000 .VramWriteSourcePointerTable
|
|
al 00E790 .SideATestPromptText
|
|
al 00E732 .StatusMessageText
|
|
al 00E6BF .SideAPanelButtonRow
|
|
al 00E64C .SideAPressedButtonRow
|
|
al 00E5B3 .PanelFrameTiles
|
|
al 00E58A .PowerPadButtonLabelTiles
|
|
al 00E54F .PowerPadSideAButtonGraphics
|
|
al 00E548 .Label_E548
|
|
al 00E53A .ClearScreen
|
|
al 00E534 .ClearAPUNoise
|
|
al 00E52E .SetAPUNoise
|
|
al 00E522 .Label_E522
|
|
al 00E514 .Label_E514
|
|
al 00E52D .ProcessPadBitsDone
|
|
al 00E509 .Label_E509
|
|
al 00E4FA .ProcessPadBits
|
|
al 00E4E3 .Player2ButtonIconStream
|
|
al 00E4CC .Player1ButtonIconStream
|
|
al 00E4C0 .Player2TileTable
|
|
al 00E4B4 .Player1TileTable
|
|
al 00E4B4 .PadBitTableLives
|
|
al 00E4AA .LoadPatternTable7
|
|
al 00E4A0 .LoadPatternTable6
|
|
al 00E49F .UpdatePadsDone
|
|
al 00E48F .Label_E48F
|
|
al 00E47F .UpdatePads
|
|
al 00E47A .Label_E47A
|
|
al 00E471 .Label_E471
|
|
al 00E46F .ShiftVar4
|
|
al 00E46A .Label_E46A
|
|
al 00E45F .Label_E45F
|
|
al 00E459 .ShiftVar3
|
|
al 00E454 .Label_E454
|
|
al 00E44B .Label_E44B
|
|
al 00E449 .ShiftVar2
|
|
al 00E444 .Label_E444
|
|
al 00E439 .Label_E439
|
|
al 00E433 .ShiftVar1
|
|
al 00E424 .Label_E424
|
|
al 00E42F .Label_E42F
|
|
al 00E41E .Label_E41E
|
|
al 00E407 .DrawLives
|
|
al 00E3F8 .Label_E3F8
|
|
al 00E403 .Label_E403
|
|
al 00E3F5 .Label_E3F5
|
|
al 00E3E1 .DrawScore
|
|
al 00E3D8 .Label_E3D8
|
|
al 00E3D1 .Label_E3D1
|
|
al 00E3C3 .Label_E3C3
|
|
al 00E3B5 .Label_E3B5
|
|
al 00E3AE .Label_E3AE
|
|
al 00E3A0 .Label_E3A0
|
|
al 00E398 .ProcessPads
|
|
al 00E37F .Label_E37F
|
|
al 00E362 .ShiftPads
|
|
al 00E35B .Label_E35B
|
|
al 00E34D .Label_E34D
|
|
al 00E361 .ReadPadDone
|
|
al 00E338 .ReadPad
|
|
al 00E32D .ClearGameVars
|
|
al 00E326 .Label_E326
|
|
al 00E312 .Label_E312
|
|
al 00E2FE .Label_E2FE
|
|
al 00E2F0 .ClearRows
|
|
al 00E2B0 .DrawPlayer2Pad
|
|
al 00E270 .DrawPlayer1Pad
|
|
al 00E236 .InitRoundParams
|
|
al 00E22D .ResetScroll
|
|
al 00E219 .SetPPUCTRL_NMI
|
|
al 00E1FB .DisableNMI
|
|
al 00E1F1 .EnableNMI
|
|
al 00E1E3 .Label_E1E3
|
|
al 00E1F0 .VramWriteDone
|
|
al 00E1D2 .Label_E1D2
|
|
al 00E1CC .VramWrite
|
|
al 00E1C2 .LoadPatternTable5
|
|
al 00E1B8 .LoadPatternTable4
|
|
al 00E1AE .LoadPatternTable3
|
|
al 00E1A4 .LoadPatternTable2
|
|
al 00E19A .LoadPatternTable1
|
|
al 00E187 .ClearVRAM_FillFF
|
|
al 00E16B .InitAPU
|
|
al 00E164 .Label_E164
|
|
al 00E150 .Label_E150
|
|
al 00E142 .ClearVRAM_Fill23
|
|
al 00E141 .ClearPaletteDone
|
|
al 00E121 .PaletteData
|
|
al 00E113 .Label_E113
|
|
al 00E107 .LoadPalette
|
|
al 00E0FB .Label_E0FB
|
|
al 00E0EB .ClearVRAM
|
|
al 00E0DD .Label_E0DD
|
|
al 00E0CF .Label_E0CF
|
|
al 00E0C9 .ClearRAM
|
|
al 00E0B5 .Label_E0B5
|
|
al 00E0B0 .Label_E0B0
|
|
al 00E09B .ResetInit
|
|
al 00E092 .WaitForVBlank
|
|
al 00E06E .NmiHandler
|
|
al 00E068 .Label_E068
|
|
al 00E058 .Label_E058
|
|
al 00E02F .Label_E02F
|
|
al 00E02B .Label_E02B
|
|
al 00E01E .Label_E01E
|
|
al 00E000 .Reset
|