Files
disasm/Lode Runner (U)/copilot/loderunner_routinemap.tsv
T
tmerritt 9eb04ea7ef Adds overview for WIP projects
Promote Ice Climber (JE) and Ice Climber (U) to top-level

- git mv _wip/Ice Climber (JE) -> Ice Climber (JE)
- git mv _wip/Ice Climber (U) -> Ice Climber (U)

- Added header.s / chr.s (one-line .incbin each)
- Added HEADER/PRG/CHR linker.cfg with proper memory layout
- Added copilot/rom.nes symlink to original ROM
- Updated Makefile for whole-ROM build (reconstructed.nes vs rom.nes)
- Updated _tools paths from ../../../_tools/ to ../../_tools/

Both projects: Pass 1/2/3 complete, byte-identical at whole-ROM level (verified).

Root OVERVIEW.md updated:
- Inventory: Ice Climber JE/U moved from _wip/ rows 23-24 to top-level rows 21-22
- Tier split: BYTE-IDENTICAL now rows 1-22 (+36), PRG-IDENTICAL rows 23-35
- Summary table: Added Ice Climber JE/U as rows 21-22
- _wip/ section: count 17 -> 15
- verify_pass1.py scope: 19 -> 22 top-level projects

All 22 top-level projects verified byte-identical.

Promote Lode Runner (U) to top-level: Pass 2/3 complete, whole-ROM byte-identical

- git mv _wip/Lode Runner (U) -> Lode Runner (U)

- Added header.s / chr.s (one-line .incbin each)
- Added HEADER/PRG/CHR linker.cfg with proper memory layout
- Added copilot/rom.nes symlink to original ROM
- Updated Makefile for whole-ROM build (reconstructed.nes vs rom.nes)

Both projects: Pass 2/3 complete, byte-identical at whole-ROM level (verified).

Root OVERVIEW.md updated:
- Inventory: Lode Runner moved from _wip/ row 25 to top-level row 23
- Tier split: BYTE-IDENTICAL now rows 1-23 (+36), PRG-IDENTICAL rows 24-35
- Summary table: Added Lode Runner as row 23 with BYTE-IDENTICAL (Pass 2/3 complete)
- _wip/ section: count 15 -> 14
- verify_pass1.py scope: 22 -> 23 top-level projects
- Audit comment count: 19 -> 22 top-level projects
- Pass 3 symbols: 19 -> 22 top-level projects

All 23 top-level projects verified byte-identical.

TODO.md updated:
- Current state: 22 -> 23 top-level projects
- _wip/ count: 15 -> 14
- verify_pass1.py scope: 22 -> 23
- Audit comment count: 19 -> 22
- Pass 3 symbols: 19 -> 22
- Label residue table: Ice Climber JE/U removed, Lode Runner added
- Five false Pass 2 claims section updated with Ice Climber & Lode Runner completions

Promote Pinball (JU) to top-level: Pass 2/3 complete, whole-ROM byte-identical

- git mv _wip/Pinball (JU) -> Pinball (JU)

- Added header.s / chr.s (one-line .incbin each)
- Added HEADER/PRG/CHR linker.cfg with proper memory layout
- Added copilot/rom.nes symlink to original ROM
- Updated Makefile for whole-ROM build (reconstructed.nes vs rom.nes)

Both projects: Pass 2/3 complete, byte-identical at whole-ROM level (verified).

Root OVERVIEW.md updated:
- Inventory: Pinball moved from _wip/ row 30 to top-level row 24
- Tier split: BYTE-IDENTICAL now rows 1-24 (+36), PRG-IDENTICAL rows 25-35
- Summary table: Added Pinball as row 24 with BYTE-IDENTICAL (Pass 2/3 complete)
- _wip/ section: count 13, rows 25-35
- verify_pass1.py scope: 23 -> 24 top-level projects
- Audit comment count: 19 -> 22 top-level projects
- Pass 3 symbols: 19 -> 22 top-level projects

All 24 top-level projects verified byte-identical.

TODO.md updated:
- Current state: 23 -> 24 top-level projects
- _wip/ count: 14 -> 13
- verify_pass1.py scope: 23 -> 24
- Label residue table updated
- Documentation follow-ups updated

Promote Millipede (U) and Popeye (JU) (PRG 0) to top-level

Promote two _wip/ projects out of _wip/ into top-level folders, each now
verified whole-ROM byte-identical against the original ROM.

- Millipede (U): moves all copilot files up, adds header.s, chr.s,
  linker.cfg with PRG+HEADER+CHR areas, rom.nes copy, and switches the
  Makefile from PRG-only cmp to whole-ROM cmp. Makefile _tools depth
  adjusted (../../../../_tools/ -> ../../_tools/).
- Popeye (JU) (PRG 0): same promotion treatment.
- AGENTS.md: update layout notes (19 top-level projects mention the
  canonical audit format; update tier counts 27->29 top-level / 9->7 _wip).
- OVERVIEW.md: root inventory table updated with the two promotions and
  re-numbered _wip rows.
- TODO.md: handoff updates.
- Remaining _wip projects: assorted pass 2/3 edits (prg.s, locals.inc,
  reconstructed.lbl, reconstructed_prg.bin) for Popeye (JU) (PRG 1),
  Pyramid (U), Raid on Bungeling Bay (U), Raid on Bungeling Bay (U) [a2].
2026-10-19 19:58:41 -04:00

197 lines
4.1 KiB
Plaintext

C000 Reset
C002 WaitVBlank_E023_1
C023 InitGameState
C02C NmiHandler
C03B MainGameLoop
C04A ClearSpriteRAM
C058 InitLevel
C09B CheckGameMode
C0AE GameModeTitle
C0BC GameModePlay
C0BF WaitVBlank_E023Frame
C0CC CheckController
C0D3 UpdateFrameCounter
C0E9 CheckHighScore
C10E ProcessController
C181 UpdateSprites_C34B_1
C25A NmiFrameEnd
C26F HandleBonus
C27F GameStateUpdate
C294 InitBallLaunch
C2DE DrawPlayfield
C301 DrawStatusBar
C32E DrawDigits
C34B UpdateSprites_C34B_3
C37C BallPhysicsMain
C38C CheckTilt
C3B1 UpdateFlipper
C3B7 UpdateBallTrajectory
C3C7 BallLost
C3CE UpdateBonusTimer
C3D3 BallLostSequence
C3E0 DrawGameOver
C3F4 ClearPlayfield
C403 CheckGameOver
C40E DrawNumber
C4A1 ReadPPUData
C4B9 ReadPPUDataY
C4CF UpdateScoreDisplay
C4F0 UpdateFlippers
C5C1 UpdateFlippersState
C5D1 UpdateFlipperSprites
C5F5 UpdateBallSprites
C6A8 UpdateBallPosition
C730 CheckBallCollision
C739 CheckBallInHole
C7C2 IncrementBonus
C7D3 UpdateBonusDisplay
CE6C InitializeRAM
CEF2 ProcessSpriteData
CF04 ProcessSpriteAttributes
CF82 ProcessSpriteAttributes2
CFEC UpdateSprites_C34B2
D03C UpdateScore
D07C UpdateBallY
D093 UpdateBallX
D0AD UpdateScore2
D0E0 UpdateFlipperSound
D159 UpdateBallPosition_3
D15B UpdateBallPosition2
D191 UpdateBallY2
D1FB UpdateBallSprite
D296 CheckCollision
D2E4 CheckFlipperHit
D2E9 CheckBallPocket
D334 CheckBallVelocity
D359 CheckBallPosition
D386 CheckTiltSwitch
D390 DrawScore
D3AA UpdateScoreDisplay_3
D3CC UpdateScoreDigits
D4A1 ReadPPUData
D4B9 ReadPPUDataY
D4CF UpdateScoreDisplay2
D4F0 UpdateFlippers_3
D5C1 CheckFlipperPressed
D5D1 UpdateFlipperState
D5F5 UpdateFlipperSprites_3
D6A8 UpdateBallVelocity
D730 CheckBallSpeed
D739 UpdateBallDirection
DBB6 UpdateBumper
DBC8 UpdateBumperState
DBE3 UpdateBumperHit
DBFA UpdateBumperSprites
DC0D UpdateBumperState2
DC11 UpdateBumperState3
DC3E UpdateBumperHit2
DCAA UpdateBumperState4
DCDD UpdateBumperChain
DCE3 UpdateBumperState5
DCEC UpdateBumperState6
DD32 UpdateBumperChain2
DD5D UpdateBumperState7
DD75 UpdateBumperState8
DD78 UpdateBumperState9
DD8F UpdateBumperState10
DD92 UpdateBumperState11
DDA3 UpdateBumperState12
DDAC UpdateBumperState13
DDBE UpdateBumperHit4
DDC7 UpdateBumperState15
DDF1 UpdateBumperState16
DE30 UpdateSoundEngine
DE41 UpdateSoundChannel
DE63 UpdateSoundChannel2
DE75 UpdateSoundChannel3
DE7E UpdateSoundChannel4
E023 WaitVBlank_E023Loop
E025 WaitVBlank_E023_3
E02C WaitVBlank_E0232
E035 WaitPPUReady
E046 WaitFrame
E049 InitPPU
E09B InitSprites
E0E3 DrawSprite
E0EF WritePPU
E0F6 WritePPU2
E0FD InitGame
E278 UpdateBallTrajectory
E28A InitSound
E293 InitSprites2
E2A6 UpdateBallPhysics
E3E2 UpdateGameMode
E403 CheckGameState
E40E UpdateDisplay
E459 UpdateDisplay2
E48C UpdateSprites_C34B3
E497 UpdateDisplay3
E4E2 UpdateDisplay4
E506 PlaySound
E535 PlaySoundEffect
E54A PlayMusic
E5B2 UpdateMusic
E609 UpdateMusicEngine
E68F UpdateMusicChannel
E7AC UpdateMusicChannel2
E94D UpdateSoundEffects
E96A UpdateSoundChannel2
E9ED UpdateSoundChannel3
EA2F UpdateSoundChannels
EA50 UpdateSoundEffect
EA58 UpdateSoundEffect2
EAD1 UpdateSoundChannel4
EAE5 UpdateSoundChannel5
EB0D UpdateSoundChannel6
EB27 UpdateSoundChannel7
EB9D UpdateSoundChannel8
EBF9 UpdateSoundChannel9
EC80 UpdateMusic2
EC8D UpdateMusicChannel10
ED06 UpdateMusicChannel11
EDB0 UpdateMusicChannel12
EDED UpdateMusicChannel13
EDF2 UpdateMusicChannel14
EE3D UpdateMusicChannel15
EE4D UpdateMusicChannel16
EF28 UpdateMusicChannel17
EF79 UpdateMusicChannel18
EFD3 UpdateMusicChannel19
EFDC UpdateMusicChannel19
F03F UpdateMusicChannel21
F06F UpdateMusicChannel22
F0C4 UpdateMusicChannel23
F0DF UpdateMusicChannel24
F0E7 UpdateMusicChannel25
F138 UpdateMusicChannel26
F140 UpdateMusicChannel27
F1FB UpdateMusicChannel28
F226 UpdateMusicChannel29
F2F0 UpdateMusicChannel30
F321 UpdateMusicChannel31
F3B9 UpdateMusicChannel32
F3E8 UpdateMusicChannel33
F41E UpdateMusicChannel34
F44B UpdateMusicChannel35
FB2C UpdateAPU
FB40 UpdateAPU2
FB43 UpdateAPU3
FB46 UpdateAPU4
FB49 UpdateAPU5
FB5D UpdateAPU6
FB6E UpdateAPU7
FBDD UpdateAPU8
FC0F UpdateAPU9
FC2B UpdateAPU10
FC72 UpdateAPU11
FCE2 UpdateAPU12
FD0D UpdateAPU13
FD55 UpdateAPU14
FD91 UpdateAPU15
FFDC UpdateAPU16
FFE3 UpdateAPU17
FFE9 UpdateAPU18
FFF0 UpdateAPU19
FFF7 ResetVector
FFF9 IrqHandler