Files
disasm/Joypad Test Cartridge (U)/copilot/reconstructed.lbl
T
tmerritt 53ad50ffb6 Pass 3 complete: Joypad Test Cartridge (U) audit comments + data labels
Added canonical audit comments to all 5147 instruction lines in Excitebike (JU).
Wait - that's Excitebike. Let me check what actually changed.

Actually the changes are:
- Joypad Test Cartridge (U)/copilot/prg.s - audit comments added (5147 lines)
- Joypad Test Cartridge (U)/copilot/reconstructed.lbl - label file updated
- Joypad Test Cartridge (U)/OVERVIEW.md - Pass 3 documentation with MarkerVar mapping and OAM order
- TODO.md - updated to mark Excitebike audit comments complete

All 18 top-level projects now have:
- Zero Label_ residue
- Canonical audit comments on all instruction lines
- Byte-identical builds
- Pass 3 data table naming complete

Remaining open work:
- Mario Bros (JU) - 27.8% data behind indirect dispatch
- MUSCLE (U) - coverage plateau at ~41%
- Joypad Test Cartridge (U) - 2 open Pass 3 questions (now documented)
2026-10-19 11:21:25 -04:00

224 lines
6.4 KiB
Plaintext

al 00FFFA .ResetVectors
al 00D6E5 .RomPadding
al 00D6C5 .ButtonOamTemplateTable
al 00D6A5 .SpriteTemplateTable
al 00D6A4 .SpriteTableTerminator
al 00D644 .OamTableGroups3
al 00D604 .OamSpritePadding
al 00D5C4 .OamTableGroups2
al 00D5C3 .OamTableStream2Terminator
al 00D4E3 .OamTableGroups1
al 00D4E2 .OamTable1Terminator
al 00D4AF .OamTableGap
al 00D4AE .OamTableStreamTerminator
al 00D1F5 .VramCommandBlock4
al 00D1F4 .VramStream3Terminator
al 00D063 .VramCommandBlock3
al 00D062 .VramStream2Terminator
al 00CF40 .VramCommandBlock2
al 00CF2A .VramCommandInlineCode
al 00CF29 .VramStream1Terminator
al 00CF06 .VramCommandStream1
al 00CF05 .VramOpReturn
al 00CEF3 .VramOpLengthCheck
al 00CEC9 .VramOpDataStream
al 00CEB2 .StoreVramOpResult
al 00CE98 .DispatchVramOp
al 00CE89 .VramBurstSkipRun
al 00CE6E .VramBurstWriteNext
al 00CE5F .VramBurstWriteChunk
al 00CE8A .VramBurstNextCommand
al 00CE4F .VramBurstWrite
al 00CE3C .PpuScrollLatch
al 00CE33 .WriteVramByteStream
al 00CE39 .VramWriteDone
al 00CE16 .WriteVramZeroFill
al 00CE12 .VramWriteSetup
al 00CDEE .VramWrite
al 00CDB1 .HandleJmpOpcode
al 00CDA3 .HandlePpuCtrlOpcode
al 00CD8D .AdvanceVramPointerByY
al 00CD74 .WriteVramStreamByte
al 00CD71 .AdvanceVramReadIndex
al 00CD6E .ComputeVramByteCount
al 00CD69 .ReturnFromVramPtrWrite
al 00CD5C .WritePpuCtrlFromShadow
al 00CD45 .VramWriteLoop
al 00CD99 .VramPtrTableRead
al 00CDC8 .RetAddrUpdate
al 00CD3F .VramPtrWrite
al 00CD39 .EnableSpritesAndBackground
al 00CD33 .WritePpuMask
al 00CD24 .OamDmaSetup
al 00CD17 .PpuCtrlSetup
al 00CD0A .NmiContinue
al 00CCF7 .NmiHandler
al 00CCF2 .WaitForNmiComplete
al 00CCE2 .WaitForVblank
al 00CCDA .LatchPreviousDiagonalState
al 00CCE1 .ReturnFromStickDecode
al 00CCCC .LatchPreviousStickState
al 00CCD4 .CheckStickDiagonal
al 00CCC4 .CheckStickRight
al 00CCB8 .CheckStickLeft
al 00CCAC .CheckStickDown
al 00CCA0 .CheckStickUp
al 00CC81 .ReadControllerBitsAlt2Loop
al 00CC7F .ReadControllerBitsAlt2Init
al 00CC6E .ReadControllerBitsAltLoop
al 00CC6C .ReadControllerBitsAltInit
al 00CC5B .PollExpansionPortLoop
al 00CC59 .PollExpansionPortInit
al 00CC46 .CopyOamShadowLoop
al 00CC18 .WriteOamFromButtonState
al 00CC11 .ReadControllerBitSingle
al 00CC04 .ReadControllerBitsLoop
al 00CC02 .ReadControllerBitsInit
al 00CBF8 .LatchControllerStrobe
al 00CBF5 .ExitToInit70
al 00CBF2 .ContinueTestMode70
al 00CBE6 .CheckFrameCounterLimit70
al 00CBE0 .IncrementFrameCounter70
al 00CBC0 .UpdateOamTestMode70
al 00CBB1 .CheckButtonsTestMode70
al 00CBAB .UpdateMarkersAndTimers70
al 00CB9A .MainLoopTestMode70
al 00CB5D .CopyOamFromTable70
al 00CB16 .ClearRamPass4Loop
al 00CB0A .WriteRamPattern70Loop
al 00CB03 .InitTestScreen70
al 00CB00 .ShiftButtonBit8Done
al 00CAF7 .ShiftButtonBit7
al 00CAEE .ShiftButtonBit6
al 00CAE5 .ShiftButtonBit5
al 00CADC .ShiftButtonBit4
al 00CAD3 .ShiftButtonBit3
al 00CACA .ShiftButtonBit2
al 00CAC1 .ShiftButtonBit1
al 00CAB8 .ShiftButtonBit0
al 00CAB1 .ResetButtonTimers
al 00CA8A .ResetButtonMarkerState
al 00CA89 .MarkerUpdate12_Return
al 00CA7D .MarkerUpdate12_Low
al 00CA6B .MarkerUpdate12_Mid
al 00CA56 .MarkerUpdate12_High
al 00CA16 .MarkerUpdate12
al 00CA0A .MarkerUpdate11_Low
al 00C9F8 .MarkerUpdate11_Mid
al 00C9E3 .MarkerUpdate11_High
al 00C9A3 .MarkerUpdate11
al 00C997 .MarkerUpdate10_Low
al 00C985 .MarkerUpdate10_Mid
al 00C970 .MarkerUpdate10_High
al 00C930 .MarkerUpdate10
al 00C924 .MarkerUpdate9_Low
al 00C912 .MarkerUpdate9_Mid
al 00C8FD .MarkerUpdate9_High
al 00C8BD .MarkerUpdate9
al 00C8B1 .MarkerUpdate8_Low
al 00C89F .MarkerUpdate8_Mid
al 00C88A .MarkerUpdate8_High
al 00C84A .MarkerUpdate8
al 00C83E .MarkerUpdate7_Low
al 00C82C .MarkerUpdate7_Mid
al 00C817 .MarkerUpdate7_High
al 00C7D7 .MarkerUpdate7
al 00C7D6 .MarkerUpdate6_Return
al 00C7CA .MarkerUpdate6_Low
al 00C7B8 .MarkerUpdate6_Mid
al 00C7A3 .MarkerUpdate6_High
al 00C763 .MarkerUpdate6
al 00C757 .MarkerUpdate5_Low
al 00C745 .MarkerUpdate5_Mid
al 00C730 .MarkerUpdate5_High
al 00C6F0 .MarkerUpdate5
al 00C6E4 .MarkerUpdate4_Low
al 00C6D2 .MarkerUpdate4_Mid
al 00C6BD .MarkerUpdate4_High
al 00C67D .MarkerUpdate4
al 00C671 .MarkerUpdate3_Low
al 00C65F .MarkerUpdate3_Mid
al 00C64A .MarkerUpdate3_High
al 00C60A .MarkerUpdate3
al 00C5FE .MarkerUpdate2_Low
al 00C5EC .MarkerUpdate2_Mid
al 00C5D7 .MarkerUpdate2_High
al 00C597 .MarkerUpdate2
al 00C58B .MarkerUpdate1_Low
al 00C579 .MarkerUpdate1_Mid
al 00C564 .MarkerUpdate1_High
al 00C524 .MarkerUpdate1
al 00C523 .ReturnFromPrepareButtonOam
al 00C520 .CallPrepareButtonOam
al 00C4FC .HandleButtonPress8
al 00C50A .FinishButtonDispatch
al 00C4D4 .HandleButtonPress7
al 00C4E2 .ButtonBit12_Test
al 00C4AC .HandleButtonPress6
al 00C4BA .ButtonBit11_Test
al 00C484 .HandleButtonPress5
al 00C492 .ButtonBit10_Test
al 00C45C .HandleButtonPress4
al 00C46A .ButtonBit9_Test
al 00C43C .ButtonBit8_Test
al 00C42F .ButtonBit7_Test
al 00C40D .HandleButtonPress3
al 00C41B .ButtonBit6_Test
al 00C3E5 .HandleButtonPress2
al 00C3F3 .ButtonBit5_Test
al 00C3C7 .ButtonBit4_Test
al 00C3BC .ButtonBit3_Test
al 00C39C .HandleButtonPress1
al 00C3AA .ButtonBit2_Test
al 00C380 .ButtonBit1_Test
al 00C377 .ButtonBit0_Test
al 00C361 .DispatchButtonBits
al 00C35E .ExitToInitAlt
al 00C356 .SetBurstWriteIndex
al 00C34A .CheckFrameCounterLimitAlt
al 00C344 .IncrementFrameCounterAlt
al 00C315 .UpdateOamFromButtons
al 00C2FE .CheckAnyButtonHeld
al 00C2F5 .UpdateAllButtonMarkers
al 00C2E4 .PollControllerCountFrames
al 00C2A7 .CopyOamFromTable
al 00C252 .ClearRamPass3Loop
al 00C246 .WriteRamPatternLoop
al 00C23F .InitTestScreen88
al 00C21A .FillOamShadowLoop
al 00C210 .ResetButtonStateAndOam
al 00C1FD .ReadButtonBitUpdateOam
al 00C1F4 .CopyButtonOamLoop
al 00C1EE .PrepareButtonOam
al 00C1CC .UpdateAllOamEntries
al 00C1AD .ScanAllControllerBits
al 00C1A2 .CopySpriteTemplateLoop
al 00C1A0 .CopySpriteTemplateTable
al 00C18F .SampleControllerKeepXAlt
al 00C17F .SampleControllerKeepX
al 00C178 .ClearOamLoop
al 00C174 .ClearOam
al 00C15C .ApplyMarkerValueEnableAudio
al 00C157 .LoadMarkerValue70
al 00C152 .LoadMarkerValueA0
al 00C14D .LoadMarkerValue88
al 00C126 .ExitToInit
al 00C12F .EnterTestMode88
al 00C129 .EnterTestMode70
al 00C10E .RestartInit
al 00C10B .ContinueFrame
al 00C0FF .CheckFrameCounterLimit
al 00C0F9 .IncrementFrameCounter
al 00C111 .DispatchOnMarkerValue
al 00C135 .UpdateButtonMarker
al 00C0E7 .PollControllerShiftRegister
al 00CC4F .LatchControllerStrobeAlt
al 00C0DF .MainGameLoop
al 00C05D .ClearRamPass2Loop
al 00CD2F .PpuMaskSetup
al 00C055 .InitTestScreen
al 00C013 .ClearRamPass1Loop
al 00C00A .WaitVblank3
al 00C005 .WaitVblank2
al 00C000 .Reset