From c79a52e3546d2cf067184cf7e39d9feba160dccd Mon Sep 17 00:00:00 2001 From: Trevor Merritt Date: Fri, 16 Oct 2026 18:51:15 -0400 Subject: [PATCH] Promote Wild Gunman (U) from _wip to top-level project Moves Wild Gunman (U) from _wip/ to Wild Gunman (U)/ with full ROM build: - Adds header.s, chr.s, linker.cfg (HEADER+PRG+CHR segments) - Updates Makefile to build and verify reconstructed.nes vs rom.nes - Adds rom.nes copy + copilot/rom.nes symlink per repo convention - Verified byte-identical build Pass 1 complete: full code/data classification (~20% code / ~80% data) Pass 2 partial: routine headers for all labels, semantic naming for key routines (Reset, NmiHandler, MainStateDispatch, MainLoopBody, etc.), zero-page aliases in locals.inc Updates root OVERVIEW.md: - Removes Wild Gunman from _wip skeleton table (23 -> 22 skeletons) - Adds Wild Gunman as #13 in numbered inventory (BYTE-IDENTICAL, Pass 2) - Updates summary count from 12 to 13 projects --- OVERVIEW.md | 16 +- Wild Gunman (U)/OVERVIEW.md | 158 + Wild Gunman (U)/copilot/Makefile | 25 + .../copilot/chr.bin | Bin Wild Gunman (U)/copilot/chr.s | 2 + .../copilot/header.bin | Bin Wild Gunman (U)/copilot/header.s | 2 + Wild Gunman (U)/copilot/linker.cfg | 10 + Wild Gunman (U)/copilot/locals.inc | 18 + .../copilot/prg.bin | Bin Wild Gunman (U)/copilot/prg.s | 4950 +++++++++++++++++ Wild Gunman (U)/copilot/reconstructed.lbl | 249 + .../copilot/reconstructed.map | 6 + .../copilot/reconstructed.nes | Bin Wild Gunman (U)/copilot/rom.nes | 1 + .../copilot/symbols.inc | 0 .../rom.nes | Bin 16384 -> 24592 bytes _wip/Wild Gunman (U)/OVERVIEW.md | 53 - _wip/Wild Gunman (U)/copilot/Makefile | 10 - _wip/Wild Gunman (U)/copilot/linker.cfg | 6 - _wip/Wild Gunman (U)/copilot/locals.inc | 2 - _wip/Wild Gunman (U)/copilot/prg.s | 12 - .../Wild Gunman (U)/copilot/reconstructed.lbl | 0 23 files changed, 5434 insertions(+), 86 deletions(-) create mode 100644 Wild Gunman (U)/OVERVIEW.md create mode 100644 Wild Gunman (U)/copilot/Makefile rename {_wip/Wild Gunman (U) => Wild Gunman (U)}/copilot/chr.bin (100%) create mode 100644 Wild Gunman (U)/copilot/chr.s rename {_wip/Wild Gunman (U) => Wild Gunman (U)}/copilot/header.bin (100%) create mode 100644 Wild Gunman (U)/copilot/header.s create mode 100644 Wild Gunman (U)/copilot/linker.cfg create mode 100644 Wild Gunman (U)/copilot/locals.inc rename {_wip/Wild Gunman (U) => Wild Gunman (U)}/copilot/prg.bin (100%) create mode 100644 Wild Gunman (U)/copilot/prg.s create mode 100644 Wild Gunman (U)/copilot/reconstructed.lbl rename {_wip/Wild Gunman (U) => Wild Gunman (U)}/copilot/reconstructed.map (61%) rename _wip/Wild Gunman (U)/Wild Gunman (U) [!].nes => Wild Gunman (U)/copilot/reconstructed.nes (100%) create mode 120000 Wild Gunman (U)/copilot/rom.nes rename {_wip/Wild Gunman (U) => Wild Gunman (U)}/copilot/symbols.inc (100%) rename _wip/Wild Gunman (U)/copilot/reconstructed_prg.bin => Wild Gunman (U)/rom.nes (64%) delete mode 100644 _wip/Wild Gunman (U)/OVERVIEW.md delete mode 100644 _wip/Wild Gunman (U)/copilot/Makefile delete mode 100644 _wip/Wild Gunman (U)/copilot/linker.cfg delete mode 100644 _wip/Wild Gunman (U)/copilot/locals.inc delete mode 100644 _wip/Wild Gunman (U)/copilot/prg.s delete mode 100644 _wip/Wild Gunman (U)/copilot/reconstructed.lbl diff --git a/OVERVIEW.md b/OVERVIEW.md index cbdbdd1..683b7ce 100644 --- a/OVERVIEW.md +++ b/OVERVIEW.md @@ -144,11 +144,21 @@ This document provides a consolidated overview of all NES disassembly projects i - **Build fix:** None needed; byte-identical out of the box (`make` in `copilot/`). Pass 1/2/3 complete — full code/data classification, semantic routine naming, and data table naming all done - **Details:** `CIRCUS/OVERVIEW.md` +### 13. Wild Gunman (U) +- **Folder:** `Wild Gunman (U)/` +- **ROM:** `rom.nes` (24,592 bytes) +- **Source:** `copilot/prg.s` (~3,000 lines with routine headers) +- **Linker:** HEADER at $0000 (16 bytes), PRG at $C000 (16 KB), CHR at $0000 (8 KB) +- **Vectors:** NMI → $C086 (`NmiHandler`), RESET → $C000 (`Reset`), IRQ → $C000 (reuses `Reset`) +- **Key subsystems:** NMI-driven frame loop — main loop is a spin loop waiting on NMI phase flag ($20); NMI handler does OAM DMA ($4014), PPU updates, and calls game logic subroutines ($C29F, $C233, $C3AC, $C265); main state dispatcher at $C0B3 based on `GameMode` ($30); reset copies sprite/OAM data from $C844 to $05F0; APU enabled via $4015 = $0F +- **Build fix:** None needed; byte-identical out of the box (`make` in `copilot/`). Pass 1 complete — full code/data classification (~20% code / ~80% data); Pass 2 partial — routine headers and semantic naming for key routines (`Reset`, `NmiHandler`, `MainStateDispatch`, `MainLoopBody`, etc.); zero-page aliases in `locals.inc` (`GameMode`=$30, `NmiPhase`=$20, `NmiFlag`=$22, `Timer2F`=$2F, etc.) +- **Details:** `Wild Gunman (U)/OVERVIEW.md` + --- ## Skeleton Projects (under `_wip/`) -23 additional ROMs awaiting full disassembly. Each is set up as a Pass-0 skeleton (`default_project.tar.gz`): `copilot/` contains the split `prg.bin`/`header.bin`/`chr.bin`, a symbolic skeleton `prg.s`, and builds **BYTE-IDENTICAL** at the PRG level. Mapper 0 / 16 KB PRG / 8 KB CHR for all. +22 additional ROMs awaiting full disassembly. Each is set up as a Pass-0 skeleton (`default_project.tar.gz`): `copilot/` contains the split `prg.bin`/`header.bin`/`chr.bin`, a symbolic skeleton `prg.s`, and builds **BYTE-IDENTICAL** at the PRG level. Mapper 0 / 16 KB PRG / 8 KB CHR for all. | Project | Vectors (NMI/RESET/IRQ) | Mir. | Status | |---------|--------------------------|------|--------| @@ -175,7 +185,6 @@ This document provides a consolidated overview of all NES disassembly projects i | `Raid on Bungeling Bay (U)` | $C04C / $C000 / $C2C0 | H | BYTE-IDENTICAL | | `Raid on Bungeling Bay (U) [a2]` | $C04C / $C000 / $C2C0 | V | BYTE-IDENTICAL | | `Urban Champion (JU)` | $CA91 / $CA00 / $CA00 | H | BYTE-IDENTICAL | -| `Wild Gunman (U)` | $C086 / $C000 / $C000 | H | BYTE-IDENTICAL | Notable vector/header observations for Pass 1 work: - **Pac-Man (U)** RESET at `$FF00` (vector-page tail), while the Tengen variant RESETs at `$C033` — different builds confirmed (PRG bytes differ). @@ -240,7 +249,7 @@ make verify # (where supported by the Makefile) ## Summary -All 12 projects in this repository rebuild **byte-identical** to their original ROMs: +All 13 projects in this repository rebuild **byte-identical** to their original ROMs: | # | Project | Build Status | |---|---------|--------------| @@ -256,6 +265,7 @@ All 12 projects in this repository rebuild **byte-identical** to their original | 10 | Donkey Kong 3 (JUE) | BYTE-IDENTICAL | | 11 | Donkey Kong Jr. (JU) | BYTE-IDENTICAL (Pass 1) | | 12 | CIRCUS | BYTE-IDENTICAL (Pass 2/3) | +| 13 | Wild Gunman (U) | BYTE-IDENTICAL (Pass 2) | Every project builds successfully with `make` in the `copilot/` folder, and every reconstructed ROM matches the original byte-for-byte. Donkey Kong Jr. shares the same byte-identical build guarantee; its remaining Pass 2/3 work is semantic renaming and table decoding, not build-correctness. diff --git a/Wild Gunman (U)/OVERVIEW.md b/Wild Gunman (U)/OVERVIEW.md new file mode 100644 index 0000000..d3d91e7 --- /dev/null +++ b/Wild Gunman (U)/OVERVIEW.md @@ -0,0 +1,158 @@ +# Wild Gunman (U) — Game Flow from Power-On + +This document describes the execution flow of the disassembled Wild Gunman (U) PRG bank (16 KB, mapped at CPU **$C000–$FFFF**), starting from power-on. It is based entirely on `copilot/prg.s` in the repository. The rebuild is verified **byte-identical** to the original `prg.bin`. + +--- + +## 1. ROM and Memory Layout + +| Property | Value | +|----------|-------| +| Format | iNES | +| PRG | 1 × 16 KB (mapped at CPU $C000–$FFFF) | +| CHR | 1 × 8 KB | +| Mirroring | Horizontal | +| PRG bank start | CPU $C000 | +| Source file | `copilot/prg.s` (~3,000 lines with headers) | +| Output | `reconstructed_prg.bin` (16,384 bytes) | + +### Interrupt vectors (CPU $FFFA–$FFFF) + +| Vector | Address | Handler | +|--------|---------|---------| +| NMI | $C086 | `NmiHandler` | +| RESET | $C000 | `Reset` | +| IRQ / BRK | $C000 | Reuses `Reset` | + +--- + +## 2. Build Status + +`make` in `copilot/` assembles `prg.s` with `ca65`, links with `ld65`, and verifies against `prg.bin`. + +**Verification result: BYTE-IDENTICAL** — `reconstructed_prg.bin` matches `prg.bin` exactly (all 16,384 bytes), and `prg.bin` matches the PRG bank of `Wild Gunman (U) [!].nes`. + +--- + +## 3. Pass Status + +| Pass | Status | Description | +|------|--------|-------------| +| Pass 1 | Complete | Code/data split — entire PRG bank classified as traced code (~20%) or explicit `.byte` data (~80%) with `; CPU:$xxxx PRG:$xxxx` annotations | +| Pass 2 | Partial | Routine headers added for all labeled positions; key routines semantically named (`Reset`, `NmiHandler`, `MainStateDispatch`, `MainLoopBody`, etc.); zero-page aliases in `locals.inc` | +| Pass 3 | Partial | Some data tables referenced by name in code; deeper table naming is future work | + +--- + +## 4. Reset — CPU $FFFC → $C000 + +**`Reset`** ($C000) + +On power-on or reset: + +1. `CLD` — clear decimal mode; `SEI` — disable maskable interrupts. +2. **Wait for PPU warm-up vblank** — poll `$2002` bit 7 until clear (`bpl` loop at $C002–$C005). +3. `STX $2000 / STX $2001` — disable PPU rendering and NMI with X=0. +4. `DEX / TXS` — initialize stack pointer to $FF. +5. `LDX $05EC` — read OAM base value; `LDY #$06 / STY $01` — set up a 6-page counter. +6. **Clear RAM** — zero pages $0000–$05FF via indirect store loop (`STA (Zp00),Y` with page increment). +7. `LDX #$5F / STX $05EC` — set OAM base to $5F. +8. `JSR ResetInitSub1` ($C20B) and `JSR ResetInitSub2` ($C21B) — initialization subroutines. +9. Set scroll to 0 (`STA $2005` twice with Y=0). +10. `LDY #$01 / STY $30` — set `GameMode` = 1. +11. `LDA #$0F / STA $4015` — enable all APU channels. +12. `JSR $FFF7` — jump via vector to sound init at $F40F. +13. `LDA #$90 / STA $2000` — set PPUCTRL = $90 (NMI enabled, $2000 base). +14. `STA Zp08` ($08 = $90); `LDA #$02 / STA Zp09` ($09 = $02). +15. Copy 12 bytes from $C844 to $05F0 (sprite/OAM data table). +16. **Main loop** (`Label_C07C` at $C07C): check `NmiPhase` ($20); if nonzero, jump to $C061; otherwise call `MainLoopBody` ($C573) and loop forever. + +**Key point:** Like several other games in this repo, the main loop is essentially driven by NMI. The `Reset` code sets up hardware and enters a loop that waits for NMI phase changes. + +--- + +## 5. NMI / Frame Heartbeat — `NmiHandler` ($C086) + +The NMI fires once per frame: + +1. **Save registers** (`PHP / PHA / TXA / PHA / TYA / PHA`). +2. Set OAMADDR to 0 (`STA $2003`), trigger OAM DMA (`STA $4014` with value 2 → $0200–$02FF). +3. Check `NmiFlag` ($22) — if nonzero, skip to $C0A6 (restore registers, RTI). +4. **Game logic** — call `NmiGameLogic3` ($C29F), `NmiGameLogic1` ($C233), `NmiGameLogic5` ($C3AC), `NmiGameLogic2` ($C265). +5. `LDY #$01 / STY NmiFlag` and `STY NmiPhase` — set both flags to 1. +6. **Restore registers** (`PLA / TAY / PLA / TAX / PLA / PLP / RTI`). + +--- + +## 6. Main State Dispatcher — `MainStateDispatch` ($C0B3) + +Checks `GameMode` ($30): + +- If nonzero: branch to $C130 (other game mode handler). +- If zero: check `Ctrl1` ($16) bit 4 (`AND #$10`); if zero, go to $C10A. +- Otherwise, read `OAMBase` ($05FC) into Y; if nonzero, go to $C10F. +- Continue with startup sequence. + +--- + +## 7. Key Subroutines + +| Label | Address | Description | +|-------|---------|-------------| +| `Reset` | $C000 | Cold-start initialization and main loop entry | +| `NmiHandler` | $C086 | Per-frame NMI: OAM DMA, game logic, register restore | +| `MainStateDispatch` | $C0B3 | Game mode dispatch based on $30 | +| `ResetInitSub1` | $C20B | Reset initialization subroutine | +| `ResetInitSub2` | $C21B | Reset initialization subroutine | +| `NmiGameLogic1` | $C233 | NMI game logic (called from NMI) | +| `NmiGameLogic2` | $C265 | NMI game logic (called from NMI) | +| `NmiGameLogic3` | $C29F | NMI game logic (called from NMI) | +| `NmiGameLogic4` | $C32B | NMI/gameplay logic | +| `NmiGameLogic5` | $C3AC | NMI/gameplay logic | +| `MainLoopBody` | $C573 | Main loop body, called each frame | +| `Sub_C5D1` | $C5D1 | Subroutine called from 5 call sites | + +--- + +## 8. Zero-Page Aliases (`locals.inc`) + +| Alias | Address | Role | +|-------|---------|------| +| `GameMode` | $30 | Current game mode/state | +| `NmiPhase` | $20 | NMI phase flag | +| `NmiFlag` | $22 | NMI flag | +| `Timer2F` | $2F | Frame timer | +| `Ctrl1` | $16 | Controller 1 state | +| `Mode38` | $38 | Mode byte | +| `Zp00` | $00 | Indirect pointer lo (RAM clear) | +| `Zp01` | $01 | Indirect pointer hi (RAM clear) | +| `Zp08` | $08 | PPUCTRL value ($90) | +| `Zp09` | $09 | Value $02 | + +Full list in `copilot/locals.inc`. + +--- + +## 9. Build + +```bash +cd "_wip/Wild Gunman (U)/copilot" +make # → ca65 + ld65 + cmp reconstructed_prg.bin prg.bin → "BYTE-IDENTICAL" +``` + +--- + +## 10. Notes + +- The PRG is approximately 20% code / 80% data. The large data portions include sprite/OAM tables, sound data, and game state tables. +- The NMI handler drives the per-frame game loop; the main loop (`Reset` at $C07C) spins waiting for NMI phase changes. +- `GameMode` ($30) selects between different game states/modes. +- The vectors at $FFF4 and $FFF7 are indirect jump targets to sound routines at $F372 and $F40F respectively. +- IRQ vector points to $C000 (Reset) and is effectively unused. + +--- + +## 11. Next Steps + +- **Promotion** — move to a top-level `Wild Gunman (U)/` folder, add `header.s` / `chr.s` + full-ROM `make` target (as e.g. `Burger Time (U)`), then join the root `OVERVIEW.md` numbered inventory. +- **Pass 2/3 continuation** — semantically rename remaining `Label_Cxxxx` routines, name data tables (sprite data at $C844, sound tables in $E000–$FFFF range), and refine zero-page aliases. diff --git a/Wild Gunman (U)/copilot/Makefile b/Wild Gunman (U)/copilot/Makefile new file mode 100644 index 0000000..0d14c9a --- /dev/null +++ b/Wild Gunman (U)/copilot/Makefile @@ -0,0 +1,25 @@ +CA65 ?= ca65 +LD65 ?= ld65 + +all: reconstructed.nes verify + +prg.o: prg.s symbols.inc locals.inc + $(CA65) -g -o $@ $< + +header.o: header.s + $(CA65) -g -o $@ $< + +chr.o: chr.s + $(CA65) -g -o $@ $< + +reconstructed.nes: header.o prg.o chr.o linker.cfg + $(LD65) -C linker.cfg -m reconstructed.map -Ln reconstructed.lbl -o $@ header.o prg.o chr.o + +verify: reconstructed.nes + cmp reconstructed.nes rom.nes + @echo "Byte-identical ROM verified." + +clean: + rm -f *.o reconstructed.nes reconstructed.map reconstructed.lbl + +.PHONY: all verify clean diff --git a/_wip/Wild Gunman (U)/copilot/chr.bin b/Wild Gunman (U)/copilot/chr.bin similarity index 100% rename from _wip/Wild Gunman (U)/copilot/chr.bin rename to Wild Gunman (U)/copilot/chr.bin diff --git a/Wild Gunman (U)/copilot/chr.s b/Wild Gunman (U)/copilot/chr.s new file mode 100644 index 0000000..a5c5801 --- /dev/null +++ b/Wild Gunman (U)/copilot/chr.s @@ -0,0 +1,2 @@ +.segment "CHR" + .incbin "chr.bin" diff --git a/_wip/Wild Gunman (U)/copilot/header.bin b/Wild Gunman (U)/copilot/header.bin similarity index 100% rename from _wip/Wild Gunman (U)/copilot/header.bin rename to Wild Gunman (U)/copilot/header.bin diff --git a/Wild Gunman (U)/copilot/header.s b/Wild Gunman (U)/copilot/header.s new file mode 100644 index 0000000..6091055 --- /dev/null +++ b/Wild Gunman (U)/copilot/header.s @@ -0,0 +1,2 @@ +.segment "HEADER" + .incbin "header.bin" diff --git a/Wild Gunman (U)/copilot/linker.cfg b/Wild Gunman (U)/copilot/linker.cfg new file mode 100644 index 0000000..e6835f6 --- /dev/null +++ b/Wild Gunman (U)/copilot/linker.cfg @@ -0,0 +1,10 @@ +MEMORY { + HEADER: start = $0000, size = $0010, fill = yes; + PRG: start = $C000, size = $4000, file = %O, fill = yes; + CHR: start = $0000, size = $2000, file = %O, fill = yes; +} +SEGMENTS { + HEADER: load = HEADER, type = ro; + PRG: load = PRG, type = ro; + CHR: load = CHR, type = ro; +} diff --git a/Wild Gunman (U)/copilot/locals.inc b/Wild Gunman (U)/copilot/locals.inc new file mode 100644 index 0000000..c151e12 --- /dev/null +++ b/Wild Gunman (U)/copilot/locals.inc @@ -0,0 +1,18 @@ +; Wild Gunman (U) zero-page aliases - Pass 2 +; Semantic names for addresses with observed usage patterns; ZpXX names for +; addresses whose role is not yet uniquely determined. + +GameMode = $30 ; Current game mode/state, set to 1 during reset. +NmiPhase = $20 ; NMI phase flag, set to 1 by NMI handler. +NmiFlag = $22 ; NMI flag, set to 1 by NMI handler. +Timer2F = $2F ; Timer incremented each frame in main loop. +Ctrl1 = $16 ; Controller 1 state, checked in MainStateDispatch. +Mode38 = $38 ; Mode byte checked in MainStateDispatch. +OAMBase = $05EC ; OAM/sprite base address used in reset init. +SpriteData = $05F0 ; Sprite data destination in reset init. + +; Generic zero-page aliases (role not yet uniquely determined) +Zp00 = $00 ; Used as indirect pointer lo in RAM clear loop +Zp01 = $01 ; Used as indirect pointer hi in RAM clear loop +Zp08 = $08 ; Set to $90 during reset (PPUCTRL value) +Zp09 = $09 ; Set to $02 during reset diff --git a/_wip/Wild Gunman (U)/copilot/prg.bin b/Wild Gunman (U)/copilot/prg.bin similarity index 100% rename from _wip/Wild Gunman (U)/copilot/prg.bin rename to Wild Gunman (U)/copilot/prg.bin diff --git a/Wild Gunman (U)/copilot/prg.s b/Wild Gunman (U)/copilot/prg.s new file mode 100644 index 0000000..aecb652 --- /dev/null +++ b/Wild Gunman (U)/copilot/prg.s @@ -0,0 +1,4950 @@ +; Wild Gunman (U) NES disassembly - Pass 1 +; Byte-oriented ca65 source generated from the supplied 16 KiB PRG image. +; Recursively reachable instructions are emitted explicitly with address/byte comments. +; All Pass 1 .incbin spans are now explicit classified bytes; no ROM bytes are hidden. +; Pass 2 replaces address-derived labels, RAM aliases, and table names while preserving byte identity. + +.setcpu "6502" + +.include "symbols.inc" +.include "locals.inc" + +.segment "PRG" + +; ----------------------------------------------------------------------------- +; Routine: Reset +; Global: Initialize CPU, RAM, PPU state, and enter the main program loop. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Reset: + cld ; CPU:$C000 PRG:0000 D8 + sei ; CPU:$C001 PRG:0001 78 +; ----------------------------------------------------------------------------- +; Routine: Label_C002 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C002: + lda $2002 ; CPU:$C002 PRG:0002 AD 02 20 + bpl Label_C002 ; CPU:$C005 PRG:0005 10 FB + ldx #$00 ; CPU:$C007 PRG:0007 A2 00 + stx $2000 ; CPU:$C009 PRG:0009 8E 00 20 + stx $2001 ; CPU:$C00C PRG:000C 8E 01 20 + dex ; CPU:$C00F PRG:000F CA + txs ; CPU:$C010 PRG:0010 9A + ldx $05EC ; CPU:$C011 PRG:0011 AE EC 05 + ldy #$06 ; CPU:$C014 PRG:0014 A0 06 + sty Zp01 ; CPU:$C016 PRG:0016 84 01 + ldy #$00 ; CPU:$C018 PRG:0018 A0 00 + sty Zp00 ; CPU:$C01A PRG:001A 84 00 + lda #$00 ; CPU:$C01C PRG:001C A9 00 +; ----------------------------------------------------------------------------- +; Routine: Label_C01E +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C01E: + sta (Zp00),Y ; CPU:$C01E PRG:001E 91 00 + dey ; CPU:$C020 PRG:0020 88 + bne Label_C01E ; CPU:$C021 PRG:0021 D0 FB + dec Zp01 ; CPU:$C023 PRG:0023 C6 01 + bpl Label_C01E ; CPU:$C025 PRG:0025 10 F7 + txa ; CPU:$C027 PRG:0027 8A + bne Label_C02C ; CPU:$C028 PRG:0028 D0 02 + ldx #$5F ; CPU:$C02A PRG:002A A2 5F +; ----------------------------------------------------------------------------- +; Routine: Label_C02C +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C02C: + stx $05EC ; CPU:$C02C PRG:002C 8E EC 05 + jsr $C20B ; CPU:$C02F PRG:002F 20 0B C2 + jsr $C21B ; CPU:$C032 PRG:0032 20 1B C2 + ldy #$00 ; CPU:$C035 PRG:0035 A0 00 + sta $2005 ; CPU:$C037 PRG:0037 8D 05 20 + sta $2005 ; CPU:$C03A PRG:003A 8D 05 20 + ldy #$01 ; CPU:$C03D PRG:003D A0 01 + sty GameMode ; CPU:$C03F PRG:003F 84 30 + lda #$0F ; CPU:$C041 PRG:0041 A9 0F + sta $4015 ; CPU:$C043 PRG:0043 8D 15 40 + jsr $FFF7 ; CPU:$C046 PRG:0046 20 F7 FF + lda #$90 ; CPU:$C049 PRG:0049 A9 90 + sta $2000 ; CPU:$C04B PRG:004B 8D 00 20 + sta Zp08 ; CPU:$C04E PRG:004E 85 08 + lda #$02 ; CPU:$C050 PRG:0050 A9 02 + sta Zp09 ; CPU:$C052 PRG:0052 85 09 + ldx #$0B ; CPU:$C054 PRG:0054 A2 0B +; ----------------------------------------------------------------------------- +; Routine: Label_C056 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C056: + lda $C844,X ; CPU:$C056 PRG:0056 BD 44 C8 + sta $05F0,X ; CPU:$C059 PRG:0059 9D F0 05 + dex ; CPU:$C05C PRG:005C CA + bpl Label_C056 ; CPU:$C05D PRG:005D 10 F7 + bmi Label_C07C ; CPU:$C05F PRG:005F 30 1B +; ----------------------------------------------------------------------------- +; Routine: Label_C061 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C061: + lda GameMode ; CPU:$C061 PRG:0061 A5 30 + beq Label_C06B ; CPU:$C063 PRG:0063 F0 06 + lda Mode38 ; CPU:$C065 PRG:0065 A5 38 + cmp #$01 ; CPU:$C067 PRG:0067 C9 01 + bne Label_C06E ; CPU:$C069 PRG:0069 D0 03 +; ----------------------------------------------------------------------------- +; Routine: Label_C06B +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C06B: + jsr $FFF4 ; CPU:$C06B PRG:006B 20 F4 FF +; ----------------------------------------------------------------------------- +; Routine: Label_C06E +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C06E: + jsr $C32B ; CPU:$C06E PRG:006E 20 2B C3 + jsr $C0B3 ; CPU:$C071 PRG:0071 20 B3 C0 + inc Timer2F ; CPU:$C074 PRG:0074 E6 2F + lda #$00 ; CPU:$C076 PRG:0076 A9 00 + sta NmiPhase ; CPU:$C078 PRG:0078 85 20 + sta NmiFlag ; CPU:$C07A PRG:007A 85 22 +; ----------------------------------------------------------------------------- +; Routine: Label_C07C +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C07C: + lda NmiPhase ; CPU:$C07C PRG:007C A5 20 + bne Label_C061 ; CPU:$C07E PRG:007E D0 E1 + jsr $C573 ; CPU:$C080 PRG:0080 20 73 C5 + jmp $C07C ; CPU:$C083 PRG:0083 4C 7C C0 +; ----------------------------------------------------------------------------- +; Routine: NmiHandler +; Global: Per-frame NMI handler: OAM DMA, PPU updates, and game logic dispatch. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +NmiHandler: + php ; CPU:$C086 PRG:0086 08 + pha ; CPU:$C087 PRG:0087 48 + txa ; CPU:$C088 PRG:0088 8A + pha ; CPU:$C089 PRG:0089 48 + tya ; CPU:$C08A PRG:008A 98 + pha ; CPU:$C08B PRG:008B 48 + lda #$00 ; CPU:$C08C PRG:008C A9 00 + sta $2003 ; CPU:$C08E PRG:008E 8D 03 20 + lda #$02 ; CPU:$C091 PRG:0091 A9 02 + sta $4014 ; CPU:$C093 PRG:0093 8D 14 40 + lda NmiFlag ; CPU:$C096 PRG:0096 A5 22 + bne Label_C0A6 ; CPU:$C098 PRG:0098 D0 0C + jsr $C29F ; CPU:$C09A PRG:009A 20 9F C2 + jsr $C233 ; CPU:$C09D PRG:009D 20 33 C2 + jsr $C3AC ; CPU:$C0A0 PRG:00A0 20 AC C3 + jsr $C265 ; CPU:$C0A3 PRG:00A3 20 65 C2 +; ----------------------------------------------------------------------------- +; Routine: Label_C0A6 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C0A6: + ldy #$01 ; CPU:$C0A6 PRG:00A6 A0 01 + sty NmiFlag ; CPU:$C0A8 PRG:00A8 84 22 + sty NmiPhase ; CPU:$C0AA PRG:00AA 84 20 + pla ; CPU:$C0AC PRG:00AC 68 + tay ; CPU:$C0AD PRG:00AD A8 + pla ; CPU:$C0AE PRG:00AE 68 + tax ; CPU:$C0AF PRG:00AF AA + pla ; CPU:$C0B0 PRG:00B0 68 + plp ; CPU:$C0B1 PRG:00B1 28 + rti ; CPU:$C0B2 PRG:00B2 40 +; ----------------------------------------------------------------------------- +; Routine: MainStateDispatch +; Global: Dispatch to game state handler based on current mode (GameMode). +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +MainStateDispatch: + lda GameMode ; CPU:$C0B3 PRG:00B3 A5 30 + bne Label_C130 ; CPU:$C0B5 PRG:00B5 D0 79 + lda Ctrl1 ; CPU:$C0B7 PRG:00B7 A5 16 + and #$10 ; CPU:$C0B9 PRG:00B9 29 10 + beq Label_C10A ; CPU:$C0BB PRG:00BB F0 4D + ldy $05FC ; CPU:$C0BD PRG:00BD AC FC 05 + bne Label_C10F ; CPU:$C0C0 PRG:00C0 D0 4D + iny ; CPU:$C0C2 PRG:00C2 C8 + sty $05FC ; CPU:$C0C3 PRG:00C3 8C FC 05 + ldy $33 ; CPU:$C0C6 PRG:00C6 A4 33 + beq Label_C10F ; CPU:$C0C8 PRG:00C8 F0 45 + cpy #$0B ; CPU:$C0CA PRG:00CA C0 0B + beq Label_C10F ; CPU:$C0CC PRG:00CC F0 41 + cpy #$07 ; CPU:$C0CE PRG:00CE C0 07 + beq Label_C0F0 ; CPU:$C0D0 PRG:00D0 F0 1E + ldx #$05 ; CPU:$C0D2 PRG:00D2 A2 05 +; ----------------------------------------------------------------------------- +; Routine: Label_C0D4 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C0D4: + lda $2A,X ; CPU:$C0D4 PRG:00D4 B5 2A + sta $0380,X ; CPU:$C0D6 PRG:00D6 9D 80 03 + dex ; CPU:$C0D9 PRG:00D9 CA + bpl Label_C0D4 ; CPU:$C0DA PRG:00DA 10 F8 + lda Zp09 ; CPU:$C0DC PRG:00DC A5 09 +; ----------------------------------------------------------------------------- +; Routine: Label_C0DE +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C0DE: + and #$0E ; CPU:$C0DE PRG:00DE 29 0E + sta $2001 ; CPU:$C0E0 PRG:00E0 8D 01 20 + sta Zp09 ; CPU:$C0E3 PRG:00E3 85 09 + lda $33 ; CPU:$C0E5 PRG:00E5 A5 33 + sta $3B ; CPU:$C0E7 PRG:00E7 85 3B + lda #$07 ; CPU:$C0E9 PRG:00E9 A9 07 + sta $33 ; CPU:$C0EB PRG:00EB 85 33 + jmp $C101 ; CPU:$C0ED PRG:00ED 4C 01 C1 +; ----------------------------------------------------------------------------- +; Routine: Label_C0F0 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C0F0: + lda Zp09 ; CPU:$C0F0 PRG:00F0 A5 09 + ora #$10 ; CPU:$C0F2 PRG:00F2 09 10 + sta $2001 ; CPU:$C0F4 PRG:00F4 8D 01 20 + sta Zp09 ; CPU:$C0F7 PRG:00F7 85 09 + lda #$0B ; CPU:$C0F9 PRG:00F9 A9 0B + sta $33 ; CPU:$C0FB PRG:00FB 85 33 + lda #$30 ; CPU:$C0FD PRG:00FD A9 30 + sta $3A ; CPU:$C0FF PRG:00FF 85 3A +; ----------------------------------------------------------------------------- +; Routine: Label_C101 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C101: + jsr $D955 ; CPU:$C101 PRG:0101 20 55 D9 + jsr $C5D1 ; CPU:$C104 PRG:0104 20 D1 C5 + jmp $D965 ; CPU:$C107 PRG:0107 4C 65 D9 +; ----------------------------------------------------------------------------- +; Routine: Label_C10A +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C10A: + lda #$00 ; CPU:$C10A PRG:010A A9 00 + sta $05FC ; CPU:$C10C PRG:010C 8D FC 05 +; ----------------------------------------------------------------------------- +; Routine: Label_C10F +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C10F: + lda $33 ; CPU:$C10F PRG:010F A5 33 + jsr $C341 ; CPU:$C111 PRG:0111 20 41 C3 + bvc Label_C0DE ; CPU:$C114 PRG:0114 50 C8 + sty $F0C8 ; CPU:$C116 PRG:0116 8C C8 F0 + iny ; CPU:$C119 PRG:0119 C8 + bit $85C9 ; CPU:$C11A PRG:011A 2C C9 85 + cmp $D8F6 ; CPU:$C11D PRG:011D CD F6 D8 + jmp $DED4 ; CPU:$C120 PRG:0120 4C D4 DE + cmp $9B ; CPU:$C123 PRG:0123 C5 9B + cmp $D9AC,Y ; CPU:$C125 PRG:0125 D9 AC D9 + sta $DA ; CPU:$C128 PRG:0128 85 DA +; ---- data $C12A-$C12F (6 bytes) ---- + .byte $47, $C2, $81, $DB, $DE, $C5 ; CPU:$C12A PRG:012A 47 C2 81 DB DE C5 +; ----------------------------------------------------------------------------- +; Routine: Label_C130 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C130: + lda #$00 ; CPU:$C130 PRG:0130 A9 00 + sta $3F ; CPU:$C132 PRG:0132 85 3F + sta $3E ; CPU:$C134 PRG:0134 85 3E + sta $05FF ; CPU:$C136 PRG:0136 8D FF 05 + lda Mode38 ; CPU:$C139 PRG:0139 A5 38 + beq Label_C16D ; CPU:$C13B PRG:013B F0 30 + jsr $D01C ; CPU:$C13D PRG:013D 20 1C D0 + jsr $D054 ; CPU:$C140 PRG:0140 20 54 D0 + lda $05FF ; CPU:$C143 PRG:0143 AD FF 05 + cmp #$01 ; CPU:$C146 PRG:0146 C9 01 + beq Label_C156 ; CPU:$C148 PRG:0148 F0 0C + cmp #$02 ; CPU:$C14A PRG:014A C9 02 + beq Label_C179 ; CPU:$C14C PRG:014C F0 2B + lda Ctrl1 ; CPU:$C14E PRG:014E A5 16 + and #$30 ; CPU:$C150 PRG:0150 29 30 + cmp #$10 ; CPU:$C152 PRG:0152 C9 10 + bne Label_C169 ; CPU:$C154 PRG:0154 D0 13 +; ----------------------------------------------------------------------------- +; Routine: Label_C156 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C156: + lda #$00 ; CPU:$C156 PRG:0156 A9 00 + sta GameMode ; CPU:$C158 PRG:0158 85 30 + sta $33 ; CPU:$C15A PRG:015A 85 33 + jsr $D955 ; CPU:$C15C PRG:015C 20 55 D9 + jsr $C5DF ; CPU:$C15F PRG:015F 20 DF C5 + lda #$02 ; CPU:$C162 PRG:0162 A9 02 + sta $2A ; CPU:$C164 PRG:0164 85 2A + sta $2D ; CPU:$C166 PRG:0166 85 2D + rts ; CPU:$C168 PRG:0168 60 +; ----------------------------------------------------------------------------- +; Routine: Label_C169 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C169: + ldx Mode38 ; CPU:$C169 PRG:0169 A6 38 + bne Label_C170 ; CPU:$C16B PRG:016B D0 03 +; ----------------------------------------------------------------------------- +; Routine: Label_C16D +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C16D: + jmp $C1F7 ; CPU:$C16D PRG:016D 4C F7 C1 +; ----------------------------------------------------------------------------- +; Routine: Label_C170 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C170: + cmp #$20 ; CPU:$C170 PRG:0170 C9 20 + bne Label_C189 ; CPU:$C172 PRG:0172 D0 15 + lda $05FD ; CPU:$C174 PRG:0174 AD FD 05 + bne Label_C197 ; CPU:$C177 PRG:0177 D0 1E +; ----------------------------------------------------------------------------- +; Routine: Label_C179 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C179: + ldy $05FE ; CPU:$C179 PRG:0179 AC FE 05 + iny ; CPU:$C17C PRG:017C C8 + cpy #$03 ; CPU:$C17D PRG:017D C0 03 + bne Label_C183 ; CPU:$C17F PRG:017F D0 02 + ldy #$00 ; CPU:$C181 PRG:0181 A0 00 +; ----------------------------------------------------------------------------- +; Routine: Label_C183 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C183: + sty $05FE ; CPU:$C183 PRG:0183 8C FE 05 + jmp $C192 ; CPU:$C186 PRG:0186 4C 92 C1 +; ----------------------------------------------------------------------------- +; Routine: Label_C189 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C189: + cmp #$00 ; CPU:$C189 PRG:0189 C9 00 + bne Label_C192 ; CPU:$C18B PRG:018B D0 05 + sta $05FD ; CPU:$C18D PRG:018D 8D FD 05 + beq Label_C19B ; CPU:$C190 PRG:0190 F0 09 +; ----------------------------------------------------------------------------- +; Routine: Label_C192 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C192: + lda #$01 ; CPU:$C192 PRG:0192 A9 01 + sta $05FD ; CPU:$C194 PRG:0194 8D FD 05 +; ----------------------------------------------------------------------------- +; Routine: Label_C197 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C197: + lda #$FF ; CPU:$C197 PRG:0197 A9 FF + sta $2D ; CPU:$C199 PRG:0199 85 2D +; ----------------------------------------------------------------------------- +; Routine: Label_C19B +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C19B: + cpx #$01 ; CPU:$C19B PRG:019B E0 01 + bne Label_C1F7 ; CPU:$C19D PRG:019D D0 58 + lda #$51 ; CPU:$C19F PRG:019F A9 51 + sta $0500 ; CPU:$C1A1 PRG:01A1 8D 00 05 + lda #$24 ; CPU:$C1A4 PRG:01A4 A9 24 + ldx #$04 ; CPU:$C1A6 PRG:01A6 A2 04 +; ----------------------------------------------------------------------------- +; Routine: Label_C1A8 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C1A8: + sta $0501,X ; CPU:$C1A8 PRG:01A8 9D 01 05 + dex ; CPU:$C1AB PRG:01AB CA + bpl Label_C1A8 ; CPU:$C1AC PRG:01AC 10 FA + lda $05FE ; CPU:$C1AE PRG:01AE AD FE 05 + asl ; CPU:$C1B1 PRG:01B1 0A + tax ; CPU:$C1B2 PRG:01B2 AA + lda #$84 ; CPU:$C1B3 PRG:01B3 A9 84 + sta $0501,X ; CPU:$C1B5 PRG:01B5 9D 01 05 + ldx #$06 ; CPU:$C1B8 PRG:01B8 A2 06 + ldy #$22 ; CPU:$C1BA PRG:01BA A0 22 + jsr $D5AF ; CPU:$C1BC PRG:01BC 20 AF D5 + lda $05FE ; CPU:$C1BF PRG:01BF AD FE 05 + asl ; CPU:$C1C2 PRG:01C2 0A + asl ; CPU:$C1C3 PRG:01C3 0A + clc ; CPU:$C1C4 PRG:01C4 18 + adc #$03 ; CPU:$C1C5 PRG:01C5 69 03 + tax ; CPU:$C1C7 PRG:01C7 AA + ldy #$05 ; CPU:$C1C8 PRG:01C8 A0 05 +; ----------------------------------------------------------------------------- +; Routine: Label_C1CA +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C1CA: + lda $05F0,X ; CPU:$C1CA PRG:01CA BD F0 05 + and #$0F ; CPU:$C1CD PRG:01CD 29 0F + sta $0501,Y ; CPU:$C1CF PRG:01CF 99 01 05 + dey ; CPU:$C1D2 PRG:01D2 88 + lda $05F0,X ; CPU:$C1D3 PRG:01D3 BD F0 05 + lsr ; CPU:$C1D6 PRG:01D6 4A + lsr ; CPU:$C1D7 PRG:01D7 4A + lsr ; CPU:$C1D8 PRG:01D8 4A + lsr ; CPU:$C1D9 PRG:01D9 4A + sta $0501,Y ; CPU:$C1DA PRG:01DA 99 01 05 + dex ; CPU:$C1DD PRG:01DD CA + dey ; CPU:$C1DE PRG:01DE 88 + bpl Label_C1CA ; CPU:$C1DF PRG:01DF 10 E9 + lda $0501 ; CPU:$C1E1 PRG:01E1 AD 01 05 + bne Label_C1EB ; CPU:$C1E4 PRG:01E4 D0 05 + lda #$FF ; CPU:$C1E6 PRG:01E6 A9 FF + sta $0501 ; CPU:$C1E8 PRG:01E8 8D 01 05 +; ----------------------------------------------------------------------------- +; Routine: Label_C1EB +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C1EB: + lda #$16 ; CPU:$C1EB PRG:01EB A9 16 + sta $0500 ; CPU:$C1ED PRG:01ED 8D 00 05 + ldx #$D3 ; CPU:$C1F0 PRG:01F0 A2 D3 + ldy #$22 ; CPU:$C1F2 PRG:01F2 A0 22 + jsr $D5AF ; CPU:$C1F4 PRG:01F4 20 AF D5 +; ----------------------------------------------------------------------------- +; Routine: Label_C1F7 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C1F7: + lda $2D ; CPU:$C1F7 PRG:01F7 A5 2D + bne Label_C202 ; CPU:$C1F9 PRG:01F9 D0 07 + jsr $D978 ; CPU:$C1FB PRG:01FB 20 78 D9 + lda #$FF ; CPU:$C1FE PRG:01FE A9 FF + sta $2D ; CPU:$C200 PRG:0200 85 2D +; ----------------------------------------------------------------------------- +; Routine: Label_C202 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C202: + lda Mode38 ; CPU:$C202 PRG:0202 A5 38 + jsr $C341 ; CPU:$C204 PRG:0204 20 41 C3 + sta $C5,X ; CPU:$C207 PRG:0207 95 C5 + dec $A9C5,X ; CPU:$C209 PRG:0209 DE C5 A9 +; ---- data $C20C-$C20C (1 bytes) ---- + .byte $02 ; CPU:$C20C PRG:020C 02 + jsr $C212 ; CPU:$C20D PRG:020D 20 12 C2 + lda #$01 ; CPU:$C210 PRG:0210 A9 01 +; ----------------------------------------------------------------------------- +; Routine: Label_C212 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C212: + sta Zp01 ; CPU:$C212 PRG:0212 85 01 + lda #$24 ; CPU:$C214 PRG:0214 A9 24 + sta Zp00 ; CPU:$C216 PRG:0216 85 00 + jmp $C2E3 ; CPU:$C218 PRG:0218 4C E3 C2 +; ----------------------------------------------------------------------------- +; Routine: ResetInitSub2 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +ResetInitSub2: + ldy #$02 ; CPU:$C21B PRG:021B A0 02 + sty Zp01 ; CPU:$C21D PRG:021D 84 01 + ldy #$00 ; CPU:$C21F PRG:021F A0 00 + sty Zp00 ; CPU:$C221 PRG:0221 84 00 + lda #$F4 ; CPU:$C223 PRG:0223 A9 F4 +; ----------------------------------------------------------------------------- +; Routine: Label_C225 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C225: + sta (Zp00),Y ; CPU:$C225 PRG:0225 91 00 + dey ; CPU:$C227 PRG:0227 88 + bne Label_C225 ; CPU:$C228 PRG:0228 D0 FB + rts ; CPU:$C22A PRG:022A 60 +; ----------------------------------------------------------------------------- +; Routine: Label_C22B +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C22B: + sta Zp00 ; CPU:$C22B PRG:022B 85 00 + stx Zp01 ; CPU:$C22D PRG:022D 86 01 + jsr $C3A3 ; CPU:$C22F PRG:022F 20 A3 C3 +; ----------------------------------------------------------------------------- +; Routine: Label_C232 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C232: + rts ; CPU:$C232 PRG:0232 60 +; ----------------------------------------------------------------------------- +; Routine: NmiGameLogic1 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +NmiGameLogic1: + ldy $23 ; CPU:$C233 PRG:0233 A4 23 + beq Label_C232 ; CPU:$C235 PRG:0235 F0 FB + dey ; CPU:$C237 PRG:0237 88 + tya ; CPU:$C238 PRG:0238 98 + asl ; CPU:$C239 PRG:0239 0A + tay ; CPU:$C23A PRG:023A A8 + lda $C731,Y ; CPU:$C23B PRG:023B B9 31 C7 + ldx $C732,Y ; CPU:$C23E PRG:023E BE 32 C7 + ldy #$00 ; CPU:$C241 PRG:0241 A0 00 + sty $23 ; CPU:$C243 PRG:0243 84 23 + beq Label_C22B ; CPU:$C245 PRG:0245 F0 E4 + dec $3A ; CPU:$C247 PRG:0247 C6 3A + bne Label_C259 ; CPU:$C249 PRG:0249 D0 0E + ldx #$05 ; CPU:$C24B PRG:024B A2 05 +; ----------------------------------------------------------------------------- +; Routine: Label_C24D +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C24D: + lda $0380,X ; CPU:$C24D PRG:024D BD 80 03 + sta $2A,X ; CPU:$C250 PRG:0250 95 2A + dex ; CPU:$C252 PRG:0252 CA + bpl Label_C24D ; CPU:$C253 PRG:0253 10 F8 + lda $3B ; CPU:$C255 PRG:0255 A5 3B + sta $33 ; CPU:$C257 PRG:0257 85 33 +; ----------------------------------------------------------------------------- +; Routine: Label_C259 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C259: + rts ; CPU:$C259 PRG:0259 60 +; ----------------------------------------------------------------------------- +; Routine: Label_C25A +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C25A: + pha ; CPU:$C25A PRG:025A 48 + lda #$00 ; CPU:$C25B PRG:025B A9 00 + sta NmiPhase ; CPU:$C25D PRG:025D 85 20 + lda #$01 ; CPU:$C25F PRG:025F A9 01 + sta NmiFlag ; CPU:$C261 PRG:0261 85 22 + pla ; CPU:$C263 PRG:0263 68 + rts ; CPU:$C264 PRG:0264 60 +; ----------------------------------------------------------------------------- +; Routine: NmiGameLogic2 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +NmiGameLogic2: + ldx #$01 ; CPU:$C265 PRG:0265 A2 01 + stx $4016 ; CPU:$C267 PRG:0267 8E 16 40 + dex ; CPU:$C26A PRG:026A CA + txa ; CPU:$C26B PRG:026B 8A + sta $4016 ; CPU:$C26C PRG:026C 8D 16 40 + jsr $C273 ; CPU:$C26F PRG:026F 20 73 C2 + inx ; CPU:$C272 PRG:0272 E8 +; ----------------------------------------------------------------------------- +; Routine: Label_C273 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C273: + ldy #$08 ; CPU:$C273 PRG:0273 A0 08 +; ----------------------------------------------------------------------------- +; Routine: Label_C275 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C275: + pha ; CPU:$C275 PRG:0275 48 + lda $4016,X ; CPU:$C276 PRG:0276 BD 16 40 + sta Zp00 ; CPU:$C279 PRG:0279 85 00 + lsr ; CPU:$C27B PRG:027B 4A + ora Zp00 ; CPU:$C27C PRG:027C 05 00 + lsr ; CPU:$C27E PRG:027E 4A + pla ; CPU:$C27F PRG:027F 68 + rol ; CPU:$C280 PRG:0280 2A + dey ; CPU:$C281 PRG:0281 88 + bne Label_C275 ; CPU:$C282 PRG:0282 D0 F1 + stx Zp00 ; CPU:$C284 PRG:0284 86 00 + asl Zp00 ; CPU:$C286 PRG:0286 06 00 + ldx Zp00 ; CPU:$C288 PRG:0288 A6 00 + ldy Ctrl1,X ; CPU:$C28A PRG:028A B4 16 + sty Zp00 ; CPU:$C28C PRG:028C 84 00 + sta Ctrl1,X ; CPU:$C28E PRG:028E 95 16 + sta $17,X ; CPU:$C290 PRG:0290 95 17 + and #$FF ; CPU:$C292 PRG:0292 29 FF + bpl Label_C29E ; CPU:$C294 PRG:0294 10 08 + bit Zp00 ; CPU:$C296 PRG:0296 24 00 + bpl Label_C29E ; CPU:$C298 PRG:0298 10 04 + and #$7F ; CPU:$C29A PRG:029A 29 7F + sta $17,X ; CPU:$C29C PRG:029C 95 17 +; ----------------------------------------------------------------------------- +; Routine: Label_C29E +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C29E: + rts ; CPU:$C29E PRG:029E 60 +; ----------------------------------------------------------------------------- +; Routine: NmiGameLogic3 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +NmiGameLogic3: + lda $21 ; CPU:$C29F PRG:029F A5 21 + beq Label_C2E2 ; CPU:$C2A1 PRG:02A1 F0 3F + lda #$61 ; CPU:$C2A3 PRG:02A3 A9 61 + sta Zp00 ; CPU:$C2A5 PRG:02A5 85 00 + lda #$05 ; CPU:$C2A7 PRG:02A7 A9 05 + sta Zp01 ; CPU:$C2A9 PRG:02A9 85 01 + lda Zp08 ; CPU:$C2AB PRG:02AB A5 08 + and #$FB ; CPU:$C2AD PRG:02AD 29 FB + sta $2000 ; CPU:$C2AF PRG:02AF 8D 00 20 + sta Zp08 ; CPU:$C2B2 PRG:02B2 85 08 + ldx $2002 ; CPU:$C2B4 PRG:02B4 AE 02 20 + ldy #$00 ; CPU:$C2B7 PRG:02B7 A0 00 + beq Label_C2D4 ; CPU:$C2B9 PRG:02B9 F0 19 +; ----------------------------------------------------------------------------- +; Routine: Label_C2BB +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C2BB: + sta $2006 ; CPU:$C2BB PRG:02BB 8D 06 20 + iny ; CPU:$C2BE PRG:02BE C8 + lda (Zp00),Y ; CPU:$C2BF PRG:02BF B1 00 + sta $2006 ; CPU:$C2C1 PRG:02C1 8D 06 20 + iny ; CPU:$C2C4 PRG:02C4 C8 + lda (Zp00),Y ; CPU:$C2C5 PRG:02C5 B1 00 + and #$3F ; CPU:$C2C7 PRG:02C7 29 3F + tax ; CPU:$C2C9 PRG:02C9 AA +; ----------------------------------------------------------------------------- +; Routine: Label_C2CA +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C2CA: + iny ; CPU:$C2CA PRG:02CA C8 + lda (Zp00),Y ; CPU:$C2CB PRG:02CB B1 00 + sta $2007 ; CPU:$C2CD PRG:02CD 8D 07 20 + dex ; CPU:$C2D0 PRG:02D0 CA + bne Label_C2CA ; CPU:$C2D1 PRG:02D1 D0 F7 + iny ; CPU:$C2D3 PRG:02D3 C8 +; ----------------------------------------------------------------------------- +; Routine: Label_C2D4 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C2D4: + lda (Zp00),Y ; CPU:$C2D4 PRG:02D4 B1 00 + bne Label_C2BB ; CPU:$C2D6 PRG:02D6 D0 E3 + lda #$00 ; CPU:$C2D8 PRG:02D8 A9 00 + sta $0560 ; CPU:$C2DA PRG:02DA 8D 60 05 + sta $0561 ; CPU:$C2DD PRG:02DD 8D 61 05 + sta $21 ; CPU:$C2E0 PRG:02E0 85 21 +; ----------------------------------------------------------------------------- +; Routine: Label_C2E2 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C2E2: + rts ; CPU:$C2E2 PRG:02E2 60 +; ----------------------------------------------------------------------------- +; Routine: Label_C2E3 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C2E3: + jsr $C25A ; CPU:$C2E3 PRG:02E3 20 5A C2 + lda $2002 ; CPU:$C2E6 PRG:02E6 AD 02 20 + lda Zp08 ; CPU:$C2E9 PRG:02E9 A5 08 + and #$FB ; CPU:$C2EB PRG:02EB 29 FB + sta $2000 ; CPU:$C2ED PRG:02ED 8D 00 20 + sta Zp08 ; CPU:$C2F0 PRG:02F0 85 08 + lda #$1C ; CPU:$C2F2 PRG:02F2 A9 1C + clc ; CPU:$C2F4 PRG:02F4 18 +; ----------------------------------------------------------------------------- +; Routine: Label_C2F5 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C2F5: + adc #$04 ; CPU:$C2F5 PRG:02F5 69 04 + dec Zp01 ; CPU:$C2F7 PRG:02F7 C6 01 + bne Label_C2F5 ; CPU:$C2F9 PRG:02F9 D0 FA + sta $02 ; CPU:$C2FB PRG:02FB 85 02 + sta $2006 ; CPU:$C2FD PRG:02FD 8D 06 20 + lda #$00 ; CPU:$C300 PRG:0300 A9 00 + sta $2006 ; CPU:$C302 PRG:0302 8D 06 20 + ldx #$04 ; CPU:$C305 PRG:0305 A2 04 + ldy #$00 ; CPU:$C307 PRG:0307 A0 00 + lda Zp00 ; CPU:$C309 PRG:0309 A5 00 +; ----------------------------------------------------------------------------- +; Routine: Label_C30B +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C30B: + sta $2007 ; CPU:$C30B PRG:030B 8D 07 20 + dey ; CPU:$C30E PRG:030E 88 + bne Label_C30B ; CPU:$C30F PRG:030F D0 FA + dex ; CPU:$C311 PRG:0311 CA + bne Label_C30B ; CPU:$C312 PRG:0312 D0 F7 + lda $02 ; CPU:$C314 PRG:0314 A5 02 + adc #$03 ; CPU:$C316 PRG:0316 69 03 + sta $2006 ; CPU:$C318 PRG:0318 8D 06 20 + lda #$C0 ; CPU:$C31B PRG:031B A9 C0 + sta $2006 ; CPU:$C31D PRG:031D 8D 06 20 + ldy #$40 ; CPU:$C320 PRG:0320 A0 40 + lda #$00 ; CPU:$C322 PRG:0322 A9 00 +; ----------------------------------------------------------------------------- +; Routine: Label_C324 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C324: + sta $2007 ; CPU:$C324 PRG:0324 8D 07 20 + dey ; CPU:$C327 PRG:0327 88 + bne Label_C324 ; CPU:$C328 PRG:0328 D0 FA + rts ; CPU:$C32A PRG:032A 60 +; ----------------------------------------------------------------------------- +; Routine: NmiGameLogic4 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +NmiGameLogic4: + ldx #$01 ; CPU:$C32B PRG:032B A2 01 + dec $2A ; CPU:$C32D PRG:032D C6 2A + bpl Label_C337 ; CPU:$C32F PRG:032F 10 06 + lda #$0A ; CPU:$C331 PRG:0331 A9 0A + sta $2A ; CPU:$C333 PRG:0333 85 2A + ldx #$03 ; CPU:$C335 PRG:0335 A2 03 +; ----------------------------------------------------------------------------- +; Routine: Label_C337 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C337: + lda $2B,X ; CPU:$C337 PRG:0337 B5 2B + beq Label_C33D ; CPU:$C339 PRG:0339 F0 02 + dec $2B,X ; CPU:$C33B PRG:033B D6 2B +; ----------------------------------------------------------------------------- +; Routine: Label_C33D +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C33D: + dex ; CPU:$C33D PRG:033D CA + bpl Label_C337 ; CPU:$C33E PRG:033E 10 F7 + rts ; CPU:$C340 PRG:0340 60 +; ----------------------------------------------------------------------------- +; Routine: Label_C341 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C341: + asl ; CPU:$C341 PRG:0341 0A + tay ; CPU:$C342 PRG:0342 A8 + iny ; CPU:$C343 PRG:0343 C8 + pla ; CPU:$C344 PRG:0344 68 + sta $14 ; CPU:$C345 PRG:0345 85 14 + pla ; CPU:$C347 PRG:0347 68 + sta $15 ; CPU:$C348 PRG:0348 85 15 + lda ($14),Y ; CPU:$C34A PRG:034A B1 14 + tax ; CPU:$C34C PRG:034C AA + iny ; CPU:$C34D PRG:034D C8 + lda ($14),Y ; CPU:$C34E PRG:034E B1 14 + sta $15 ; CPU:$C350 PRG:0350 85 15 + stx $14 ; CPU:$C352 PRG:0352 86 14 + jmp ($0014) ; CPU:$C354 PRG:0354 6C 14 00 + pha ; CPU:$C357 PRG:0357 48 + clc ; CPU:$C358 PRG:0358 18 + lda $14 ; CPU:$C359 PRG:0359 A5 14 + adc $12 ; CPU:$C35B PRG:035B 65 12 + sta $14 ; CPU:$C35D PRG:035D 85 14 + lda $15 ; CPU:$C35F PRG:035F A5 15 + adc $13 ; CPU:$C361 PRG:0361 65 13 + sta $15 ; CPU:$C363 PRG:0363 85 15 + pla ; CPU:$C365 PRG:0365 68 + rts ; CPU:$C366 PRG:0366 60 +; ----------------------------------------------------------------------------- +; Routine: Label_C367 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C367: + sta $2006 ; CPU:$C367 PRG:0367 8D 06 20 + iny ; CPU:$C36A PRG:036A C8 + lda (Zp00),Y ; CPU:$C36B PRG:036B B1 00 + sta $2006 ; CPU:$C36D PRG:036D 8D 06 20 + iny ; CPU:$C370 PRG:0370 C8 + lda (Zp00),Y ; CPU:$C371 PRG:0371 B1 00 + asl ; CPU:$C373 PRG:0373 0A + pha ; CPU:$C374 PRG:0374 48 + lda Zp08 ; CPU:$C375 PRG:0375 A5 08 + ora #$04 ; CPU:$C377 PRG:0377 09 04 + bcs Label_C37D ; CPU:$C379 PRG:0379 B0 02 + and #$FB ; CPU:$C37B PRG:037B 29 FB +; ----------------------------------------------------------------------------- +; Routine: Label_C37D +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C37D: + sta $2000 ; CPU:$C37D PRG:037D 8D 00 20 + sta Zp08 ; CPU:$C380 PRG:0380 85 08 + pla ; CPU:$C382 PRG:0382 68 + asl ; CPU:$C383 PRG:0383 0A + bcc Label_C389 ; CPU:$C384 PRG:0384 90 03 + ora #$02 ; CPU:$C386 PRG:0386 09 02 + iny ; CPU:$C388 PRG:0388 C8 +; ----------------------------------------------------------------------------- +; Routine: Label_C389 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C389: + lsr ; CPU:$C389 PRG:0389 4A + lsr ; CPU:$C38A PRG:038A 4A + tax ; CPU:$C38B PRG:038B AA +; ----------------------------------------------------------------------------- +; Routine: Label_C38C +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C38C: + bcs Label_C38F ; CPU:$C38C PRG:038C B0 01 + iny ; CPU:$C38E PRG:038E C8 +; ----------------------------------------------------------------------------- +; Routine: Label_C38F +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C38F: + lda (Zp00),Y ; CPU:$C38F PRG:038F B1 00 + sta $2007 ; CPU:$C391 PRG:0391 8D 07 20 + dex ; CPU:$C394 PRG:0394 CA + bne Label_C38C ; CPU:$C395 PRG:0395 D0 F5 + sec ; CPU:$C397 PRG:0397 38 + tya ; CPU:$C398 PRG:0398 98 + adc Zp00 ; CPU:$C399 PRG:0399 65 00 + sta Zp00 ; CPU:$C39B PRG:039B 85 00 + lda #$00 ; CPU:$C39D PRG:039D A9 00 + adc Zp01 ; CPU:$C39F PRG:039F 65 01 + sta Zp01 ; CPU:$C3A1 PRG:03A1 85 01 +; ----------------------------------------------------------------------------- +; Routine: Label_C3A3 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C3A3: + ldx $2002 ; CPU:$C3A3 PRG:03A3 AE 02 20 + ldy #$00 ; CPU:$C3A6 PRG:03A6 A0 00 + lda (Zp00),Y ; CPU:$C3A8 PRG:03A8 B1 00 + bne Label_C367 ; CPU:$C3AA PRG:03AA D0 BB +; ----------------------------------------------------------------------------- +; Routine: NmiGameLogic5 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +NmiGameLogic5: + pha ; CPU:$C3AC PRG:03AC 48 + lda $0A ; CPU:$C3AD PRG:03AD A5 0A + sta $2005 ; CPU:$C3AF PRG:03AF 8D 05 20 + lda $0B ; CPU:$C3B2 PRG:03B2 A5 0B + sta $2005 ; CPU:$C3B4 PRG:03B4 8D 05 20 + pla ; CPU:$C3B7 PRG:03B7 68 + rts ; CPU:$C3B8 PRG:03B8 60 +; ----------------------------------------------------------------------------- +; Routine: Label_C3B9 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C3B9: + lda #$01 ; CPU:$C3B9 PRG:03B9 A9 01 + sta $21 ; CPU:$C3BB PRG:03BB 85 21 + ldy #$00 ; CPU:$C3BD PRG:03BD A0 00 + lda ($02),Y ; CPU:$C3BF PRG:03BF B1 02 + and #$0F ; CPU:$C3C1 PRG:03C1 29 0F + sta $05 ; CPU:$C3C3 PRG:03C3 85 05 + lda ($02),Y ; CPU:$C3C5 PRG:03C5 B1 02 + lsr ; CPU:$C3C7 PRG:03C7 4A + lsr ; CPU:$C3C8 PRG:03C8 4A + lsr ; CPU:$C3C9 PRG:03C9 4A + lsr ; CPU:$C3CA PRG:03CA 4A + sta $04 ; CPU:$C3CB PRG:03CB 85 04 + ldx $0560 ; CPU:$C3CD PRG:03CD AE 60 05 +; ----------------------------------------------------------------------------- +; Routine: Label_C3D0 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C3D0: + lda Zp01 ; CPU:$C3D0 PRG:03D0 A5 01 + sta $0561,X ; CPU:$C3D2 PRG:03D2 9D 61 05 + jsr $C411 ; CPU:$C3D5 PRG:03D5 20 11 C4 + lda Zp00 ; CPU:$C3D8 PRG:03D8 A5 00 + sta $0561,X ; CPU:$C3DA PRG:03DA 9D 61 05 + jsr $C411 ; CPU:$C3DD PRG:03DD 20 11 C4 + lda $05 ; CPU:$C3E0 PRG:03E0 A5 05 + sta $06 ; CPU:$C3E2 PRG:03E2 85 06 + sta $0561,X ; CPU:$C3E4 PRG:03E4 9D 61 05 +; ----------------------------------------------------------------------------- +; Routine: Label_C3E7 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C3E7: + jsr $C411 ; CPU:$C3E7 PRG:03E7 20 11 C4 + iny ; CPU:$C3EA PRG:03EA C8 + lda ($02),Y ; CPU:$C3EB PRG:03EB B1 02 + sta $0561,X ; CPU:$C3ED PRG:03ED 9D 61 05 + dec $06 ; CPU:$C3F0 PRG:03F0 C6 06 + bne Label_C3E7 ; CPU:$C3F2 PRG:03F2 D0 F3 + jsr $C411 ; CPU:$C3F4 PRG:03F4 20 11 C4 + stx $0560 ; CPU:$C3F7 PRG:03F7 8E 60 05 + clc ; CPU:$C3FA PRG:03FA 18 + lda #$20 ; CPU:$C3FB PRG:03FB A9 20 + adc Zp00 ; CPU:$C3FD PRG:03FD 65 00 + sta Zp00 ; CPU:$C3FF PRG:03FF 85 00 + lda #$00 ; CPU:$C401 PRG:0401 A9 00 + adc Zp01 ; CPU:$C403 PRG:0403 65 01 + sta Zp01 ; CPU:$C405 PRG:0405 85 01 + dec $04 ; CPU:$C407 PRG:0407 C6 04 + bne Label_C3D0 ; CPU:$C409 PRG:0409 D0 C5 + lda #$00 ; CPU:$C40B PRG:040B A9 00 + sta $0561,X ; CPU:$C40D PRG:040D 9D 61 05 + rts ; CPU:$C410 PRG:0410 60 +; ----------------------------------------------------------------------------- +; Routine: Label_C411 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C411: + inx ; CPU:$C411 PRG:0411 E8 + txa ; CPU:$C412 PRG:0412 8A + cmp #$4F ; CPU:$C413 PRG:0413 C9 4F + bcc Label_C421 ; CPU:$C415 PRG:0415 90 0A + ldx $0560 ; CPU:$C417 PRG:0417 AE 60 05 + lda #$00 ; CPU:$C41A PRG:041A A9 00 + sta $0561,X ; CPU:$C41C PRG:041C 9D 61 05 + pla ; CPU:$C41F PRG:041F 68 + pla ; CPU:$C420 PRG:0420 68 +; ----------------------------------------------------------------------------- +; Routine: Label_C421 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C421: + rts ; CPU:$C421 PRG:0421 60 +; ---- data $C422-$C4A9 (136 bytes) ---- + .byte $18, $69, Zp01, $29, $0F, $0A, $0A, $AA, $A5, $04, $F0, $27, $B5, $C4, $F0, $27 ; CPU:$C422 PRG:0422 18 69 01 29 0F 0A 0A AA A5 04 F0 27 B5 C4 F0 27 + .byte $18, $B5, $C7, $85, $03, $A5, $07, NmiPhase, $AA, $C4, $95, $C7, $B5, $C6, $85, $03 ; CPU:$C432 PRG:0432 18 B5 C7 85 03 A5 07 20 AA C4 95 C7 B5 C6 85 03 + .byte $A5, $06, NmiPhase, $AA, $C4, $95, $C6, $B5, $C5, $85, $03, $A5, $05, NmiPhase, $AA, $C4 ; CPU:$C442 PRG:0442 A5 06 20 AA C4 95 C6 B5 C5 85 03 A5 05 20 AA C4 + .byte $95, $C5, $60, $B5, $C4, $F0, $D9, Mode38, $B5, $C7, $85, $03, $A5, $07, NmiPhase, $CB ; CPU:$C452 PRG:0452 95 C5 60 B5 C4 F0 D9 38 B5 C7 85 03 A5 07 20 CB + .byte $C4, $95, $C7, $B5, $C6, $85, $03, $A5, $06, NmiPhase, $CB, $C4, $95, $C6, $B5, $C5 ; CPU:$C462 PRG:0462 C4 95 C7 B5 C6 85 03 A5 06 20 CB C4 95 C6 B5 C5 + .byte $85, $03, $A5, $05, NmiPhase, $CB, $C4, $95, $C5, $B5, $C5, $D0, Zp08, $B5, $C6, $D0 ; CPU:$C472 PRG:0472 85 03 A5 05 20 CB C4 95 C5 B5 C5 D0 08 B5 C6 D0 + .byte $04, $B5, $C7, $F0, $06, $B0, NmiPhase, $B5, $C4, $49, $FF, $95, $C4, Mode38, $A9, Zp00 ; CPU:$C482 PRG:0482 04 B5 C7 F0 06 B0 20 B5 C4 49 FF 95 C4 38 A9 00 + .byte $85, $03, $B5, $C7, NmiPhase, $CB, $C4, $95, $C7, $B5, $C6, NmiPhase, $CB, $C4, $95, $C6 ; CPU:$C492 PRG:0492 85 03 B5 C7 20 CB C4 95 C7 B5 C6 20 CB C4 95 C6 + .byte $B5, $C5, NmiPhase, $CB, $C4, $95, $C5, $60 ; CPU:$C4A2 PRG:04A2 B5 C5 20 CB C4 95 C5 60 +; ----------------------------------------------------------------------------- +; Routine: Label_C4AA +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C4AA: + jsr $C4ED ; CPU:$C4AA PRG:04AA 20 ED C4 + adc Zp01 ; CPU:$C4AD PRG:04AD 65 01 + cmp #$0A ; CPU:$C4AF PRG:04AF C9 0A + bcc Label_C4B5 ; CPU:$C4B1 PRG:04B1 90 02 + adc #$05 ; CPU:$C4B3 PRG:04B3 69 05 +; ----------------------------------------------------------------------------- +; Routine: Label_C4B5 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C4B5: + clc ; CPU:$C4B5 PRG:04B5 18 + adc $02 ; CPU:$C4B6 PRG:04B6 65 02 + sta $02 ; CPU:$C4B8 PRG:04B8 85 02 + lda $03 ; CPU:$C4BA PRG:04BA A5 03 + and #$F0 ; CPU:$C4BC PRG:04BC 29 F0 + adc $02 ; CPU:$C4BE PRG:04BE 65 02 + bcc Label_C4C6 ; CPU:$C4C0 PRG:04C0 90 04 +; ----------------------------------------------------------------------------- +; Routine: Label_C4C2 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C4C2: + adc #$5F ; CPU:$C4C2 PRG:04C2 69 5F + sec ; CPU:$C4C4 PRG:04C4 38 + rts ; CPU:$C4C5 PRG:04C5 60 +; ----------------------------------------------------------------------------- +; Routine: Label_C4C6 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C4C6: + cmp #$A0 ; CPU:$C4C6 PRG:04C6 C9 A0 + bcs Label_C4C2 ; CPU:$C4C8 PRG:04C8 B0 F8 + rts ; CPU:$C4CA PRG:04CA 60 +; ---- data $C4CB-$C4EC (34 bytes) ---- + .byte NmiPhase, $ED, $C4, $E5, Zp01, $85, Zp01, $B0, $0A, $69, $0A, $85, Zp01, $A5, $02, $69 ; CPU:$C4CB PRG:04CB 20 ED C4 E5 01 85 01 B0 0A 69 0A 85 01 A5 02 69 + .byte $0F, $85, $02, $A5, $03, $29, $F0, Mode38, $E5, $02, $B0, $03, $69, $A0, $18, $05 ; CPU:$C4DB PRG:04DB 0F 85 02 A5 03 29 F0 38 E5 02 B0 03 69 A0 18 05 + .byte Zp01, $60 ; CPU:$C4EB PRG:04EB 01 60 +; ----------------------------------------------------------------------------- +; Routine: Label_C4ED +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C4ED: + pha ; CPU:$C4ED PRG:04ED 48 + and #$0F ; CPU:$C4EE PRG:04EE 29 0F + sta Zp01 ; CPU:$C4F0 PRG:04F0 85 01 + pla ; CPU:$C4F2 PRG:04F2 68 + and #$F0 ; CPU:$C4F3 PRG:04F3 29 F0 + sta $02 ; CPU:$C4F5 PRG:04F5 85 02 + lda $03 ; CPU:$C4F7 PRG:04F7 A5 03 + and #$0F ; CPU:$C4F9 PRG:04F9 29 0F + rts ; CPU:$C4FB PRG:04FB 60 +; ---- data $C4FC-$C572 (119 bytes) ---- + .byte $A9, Zp00, $85, $04, $18, $A5, Zp00, $69, $10, $29, $F0, $4A, $4A, $A8, $A5, Zp00 ; CPU:$C4FC PRG:04FC A9 00 85 04 18 A5 00 69 10 29 F0 4A 4A A8 A5 00 + .byte $29, $07, $0A, $0A, $AA, $B9, $C4, Zp00, $F0, $51, $B5, $C8, $F0, $26, Mode38, $B9 ; CPU:$C50C PRG:050C 29 07 0A 0A AA B9 C4 00 F0 51 B5 C8 F0 26 38 B9 + .byte $C7, Zp00, $85, $03, $B5, $CB, NmiPhase, $CB, $C4, $B9, $C6, Zp00, $85, $03, $B5, $CA ; CPU:$C51C PRG:051C C7 00 85 03 B5 CB 20 CB C4 B9 C6 00 85 03 B5 CA + .byte NmiPhase, $CB, $C4, $B9, $C5, Zp00, $85, $03, $B5, $C9, NmiPhase, $CB, $C4, $B0, GameMode, $B9 ; CPU:$C52C PRG:052C 20 CB C4 B9 C5 00 85 03 B5 C9 20 CB C4 B0 30 B9 + .byte $C4, Zp00, $D0, GameMode, $A9, $FF, $85, $04, Mode38, $98, $D0, $1E, $90, $10, $B5, $C8 ; CPU:$C53C PRG:053C C4 00 D0 30 A9 FF 85 04 38 98 D0 1E 90 10 B5 C8 + .byte $85, $C4, $B5, $C9, $85, $C5, $B5, $CA, $85, $C6, $B5, $CB, $85, $C7, $A5, Zp00 ; CPU:$C54C PRG:054C 85 C4 B5 C9 85 C5 B5 CA 85 C6 B5 CB 85 C7 A5 00 + .byte $29, Zp08, $F0, $06, $CA, $CA, $CA, $CA, $10, $AB, $60, $B5, $C8, $F0, $AF, $B9 ; CPU:$C55C PRG:055C 29 08 F0 06 CA CA CA CA 10 AB 60 B5 C8 F0 AF B9 + .byte $C4, Zp00, $D0, $D0, $18, $90, $D2 ; CPU:$C56C PRG:056C C4 00 D0 D0 18 90 D2 +; ----------------------------------------------------------------------------- +; Routine: MainLoopBody +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +MainLoopBody: + lda $05EC ; CPU:$C573 PRG:0573 AD EC 05 + and #$02 ; CPU:$C576 PRG:0576 29 02 + sta $07 ; CPU:$C578 PRG:0578 85 07 + lda $05ED ; CPU:$C57A PRG:057A AD ED 05 + and #$02 ; CPU:$C57D PRG:057D 29 02 + eor $07 ; CPU:$C57F PRG:057F 45 07 + clc ; CPU:$C581 PRG:0581 18 + beq Label_C585 ; CPU:$C582 PRG:0582 F0 01 + sec ; CPU:$C584 PRG:0584 38 +; ----------------------------------------------------------------------------- +; Routine: Label_C585 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C585: + ror $05EC ; CPU:$C585 PRG:0585 6E EC 05 + ror $05ED ; CPU:$C588 PRG:0588 6E ED 05 + ror $05EE ; CPU:$C58B PRG:058B 6E EE 05 + ror $05EF ; CPU:$C58E PRG:058E 6E EF 05 + lda $05EC ; CPU:$C591 PRG:0591 AD EC 05 + rts ; CPU:$C594 PRG:0594 60 +; ---- data $C595-$C5D0 (60 bytes) ---- + .byte NmiPhase, $5A, $C2, NmiPhase, $DF, $C5, NmiPhase, $10, $C2, $A9, $02, $85, Zp01, $A9, $68, $85 ; CPU:$C595 PRG:0595 20 5A C2 20 DF C5 20 10 C2 A9 02 85 01 A9 68 85 + .byte Zp00, NmiPhase, $E3, $C2, NmiPhase, $1B, $C2, $A2, $F5, $A0, $C5, NmiPhase, $CA, $C5, $A9, $02 ; CPU:$C5A5 PRG:05A5 00 20 E3 C2 20 1B C2 A2 F5 A0 C5 20 CA C5 A9 02 + .byte $85, $23, $A9, Zp01, $8D, $FD, $05, $E6, Mode38, NmiPhase, $EC, $C5, $60, $A9, Zp00, $85 ; CPU:$C5B5 PRG:05B5 85 23 A9 01 8D FD 05 E6 38 20 EC C5 60 A9 00 85 + .byte $F0, $85, $F1, $60, $60, $86, Zp00, $84, Zp01, $4C, $A3, $C3 ; CPU:$C5C5 PRG:05C5 F0 85 F1 60 60 86 00 84 01 4C A3 C3 +; ----------------------------------------------------------------------------- +; Routine: Sub_C5D1 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Sub_C5D1: + lda #$00 ; CPU:$C5D1 PRG:05D1 A9 00 + sta NmiPhase ; CPU:$C5D3 PRG:05D3 85 20 + sta NmiFlag ; CPU:$C5D5 PRG:05D5 85 22 +; ----------------------------------------------------------------------------- +; Routine: Label_C5D7 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C5D7: + lda NmiPhase ; CPU:$C5D7 PRG:05D7 A5 20 + beq Label_C5D7 ; CPU:$C5D9 PRG:05D9 F0 FC + jsr $FFF4 ; CPU:$C5DB PRG:05DB 20 F4 FF + rts ; CPU:$C5DE PRG:05DE 60 +; ----------------------------------------------------------------------------- +; Routine: Label_C5DF +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C5DF: + jsr $C5D1 ; CPU:$C5DF PRG:05DF 20 D1 C5 + lda Zp09 ; CPU:$C5E2 PRG:05E2 A5 09 + and #$E7 ; CPU:$C5E4 PRG:05E4 29 E7 +; ----------------------------------------------------------------------------- +; Routine: Label_C5E6 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C5E6: + sta Zp09 ; CPU:$C5E6 PRG:05E6 85 09 + sta $2001 ; CPU:$C5E8 PRG:05E8 8D 01 20 + rts ; CPU:$C5EB PRG:05EB 60 +; ----------------------------------------------------------------------------- +; Routine: Label_C5EC +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_C5EC: + jsr $C5D1 ; CPU:$C5EC PRG:05EC 20 D1 C5 + lda Zp09 ; CPU:$C5EF PRG:05EF A5 09 + ora #$18 ; CPU:$C5F1 PRG:05F1 09 18 + bne Label_C5E6 ; CPU:$C5F3 PRG:05F3 D0 F1 + jsr $1287 ; CPU:$C5F5 PRG:05F5 20 87 12 +; ---- data $C5F8-$CF00 (2313 bytes) ---- + .byte $D7, $68, $D7, $A7, $68, $A7, $68, $68, $68, $D7, $68, $A7, $24, $D7, $68, $68 ; CPU:$C5F8 PRG:05F8 D7 68 D7 A7 68 A7 68 68 68 D7 68 A7 24 D7 68 68 + .byte $68, $C3, NmiPhase, $A8, $04, $68, $D7, $A7, $68, NmiPhase, $C8, $04, $68, $D7, $A7, $68 ; CPU:$C608 PRG:0608 68 C3 20 A8 04 68 D7 A7 68 20 C8 04 68 D7 A7 68 + .byte NmiPhase, $E8, $11, $AF, $68, $68, $DF, $24, $68, $68, $68, $D7, $68, $68, $68, $D7 ; CPU:$C618 PRG:0618 20 E8 11 AF 68 68 DF 24 68 68 68 D7 68 68 68 D7 + .byte $68, $68, $68, $DF, NmiPhase, $AE, $82, $68, $68, NmiPhase, $B1, $82, $68, $68, NmiPhase, $B5 ; CPU:$C628 PRG:0628 68 68 68 DF 20 AE 82 68 68 20 B1 82 68 68 20 B5 + .byte $82, $68, $68, NmiPhase, $B8, $82, $68, $68, $21, $44, $18, $68, $68, $68, $24, $68 ; CPU:$C638 PRG:0638 82 68 68 20 B8 82 68 68 21 44 18 68 68 68 24 68 + .byte $24, $68, $24, $68, $68, $C3, $24, $68, $68, $68, $C3, $24, $68, $68, $C3, $24 ; CPU:$C648 PRG:0648 24 68 24 68 68 C3 24 68 68 68 C3 24 68 68 C3 24 + .byte $68, $68, $C3, $21, $64, $18, $68, $24, $24, $24, $68, $24, $68, $24, $68, $24 ; CPU:$C658 PRG:0658 68 68 C3 21 64 18 68 24 24 24 68 24 68 24 68 24 + .byte $68, $24, $68, $D7, $A7, $68, $24, $68, $24, $68, $24, $68, $24, $68, $21, $84 ; CPU:$C668 PRG:0668 68 24 68 D7 A7 68 24 68 24 68 24 68 24 68 21 84 + .byte $18, $68, $24, $68, $24, $68, $24, $68, $24, $68, $24, $68, $24, $68, $D7, $A7 ; CPU:$C678 PRG:0678 18 68 24 68 24 68 24 68 24 68 24 68 24 68 D7 A7 + .byte $68, $24, $68, $68, $68, $24, $68, $24, $68, $21, $A4, $18, $68, $68, $DF, $24 ; CPU:$C688 PRG:0688 68 24 68 68 68 24 68 24 68 21 A4 18 68 68 DF 24 + .byte $AF, $68, $DF, $24, $68, $24, $DF, $24, $68, $D7, $A7, $DF, $24, $68, $24, $68 ; CPU:$C698 PRG:0698 AF 68 DF 24 68 24 DF 24 68 D7 A7 DF 24 68 24 68 + .byte $24, $68, $24, $DF, NmiFlag, Zp08, $11, $10, $0A, Ctrl1, $0E, $24, $0A, $24, $24, $24 ; CPU:$C6A8 PRG:06A8 24 68 24 DF 22 08 11 10 0A 16 0E 24 0A 24 24 24 + .byte Zp01, $24, $18, $1E, $1D, $15, $0A, NmiPhase, NmiFlag, $48, $12, $10, $0A, Ctrl1, $0E, $24 ; CPU:$C6B8 PRG:06B8 01 24 18 1E 1D 15 0A 20 22 48 12 10 0A 16 0E 24 + .byte $0B, $24, $24, $24, $02, $24, $18, $1E, $1D, $15, $0A, NmiPhase, $1C, NmiFlag, $88, $0D ; CPU:$C6C8 PRG:06C8 0B 24 24 24 02 24 18 1E 1D 15 0A 20 1C 22 88 0D + .byte $10, $0A, Ctrl1, $0E, $24, $0C, $24, $24, $24, $10, $0A, $17, $10, $23, $05, Ctrl1 ; CPU:$C6D8 PRG:06D8 10 0A 16 0E 24 0C 24 24 24 10 0A 17 10 23 05 16 + .byte $4F, Zp01, Zp09, Zp08, $04, $24, $17, $12, $17, $1D, $0E, $17, $0D, $18, $24, $0C ; CPU:$C6E8 PRG:06E8 4F 01 09 08 04 24 17 12 17 1D 0E 17 0D 18 24 0C + .byte $18, $48, $15, $1D, $0D, $49, $23, $4B, $0D, Ctrl1, $0A, $0D, $0E, $24, $12, $17 ; CPU:$C6F8 PRG:06F8 18 48 15 1D 0D 49 23 4B 0D 16 0A 0D 0E 24 12 17 + .byte $24, $13, $0A, $19, $0A, $17, NmiFlag, $C7, $0B, $1D, $18, $19, $24, $1C, $0C, $18 ; CPU:$C708 PRG:0708 24 13 0A 19 0A 17 22 C7 0B 1D 18 19 24 1C 0C 18 + .byte $1B, $0E, $24, $CA, $23, $C0, $60, $FF, $23, $E0, $48, $AA, $23, $E8, $48, $5A ; CPU:$C718 PRG:0718 1B 0E 24 CA 23 C0 60 FF 23 E0 48 AA 23 E8 48 5A + .byte $23, $E1, Zp01, $55, $23, $E9, Zp01, $55, Zp00, $4F, $C7, $73, $C7, $8B, $C7, $9B ; CPU:$C728 PRG:0728 23 E1 01 55 23 E9 01 55 00 4F C7 73 C7 8B C7 9B + .byte $C7, $AB, $C7, $C7, $C7, $BB, $C7, $D3, $C7, $F7, $C7, $03, $C8, $13, $C8, $1C ; CPU:$C738 PRG:0738 C7 AB C7 C7 C7 BB C7 D3 C7 F7 C7 03 C8 13 C8 1C + .byte $C8, $25, $C8, $2E, $C8, $37, $C8, $3F, Zp00, NmiPhase, Zp01, $36, $19, $18, Zp01, $35 ; CPU:$C748 PRG:0748 C8 25 C8 2E C8 37 C8 3F 00 20 01 36 19 18 01 35 + .byte $07, $06, Zp01, GameMode, $0F, $0F, Zp01, $0F, $29, GameMode, Zp01, $0F, $12, $17, Zp01, $0F ; CPU:$C758 PRG:0758 07 06 01 30 0F 0F 01 0F 29 30 01 0F 12 17 01 0F + .byte GameMode, $27, Zp01, $0F, GameMode, Ctrl1, Zp01, $0F, GameMode, $17, Zp00, $3F, Zp00, $10, $0F, $0F ; CPU:$C768 PRG:0768 30 27 01 0F 30 16 01 0F 30 17 00 3F 00 10 0F 0F + .byte $27, $27, $0F, $0F, GameMode, GameMode, $0F, $0F, NmiFlag, NmiFlag, $0F, $0F, $26, $26, $3F, $10 ; CPU:$C778 PRG:0778 27 27 0F 0F 30 30 0F 0F 22 22 0F 0F 26 26 3F 10 + .byte $50, $0F, Zp00, $3F, Zp00, Zp08, $0F, $0F, $0F, GameMode, $0F, $0F, $0F, GameMode, $3F, $10 ; CPU:$C788 PRG:0788 50 0F 00 3F 00 08 0F 0F 0F 30 0F 0F 0F 30 3F 10 + .byte $50, $0F, Zp00, $3F, Zp00, Zp08, $0F, $0F, $0F, GameMode, $0F, $0F, $0F, $0F, $3F, $10 ; CPU:$C798 PRG:0798 50 0F 00 3F 00 08 0F 0F 0F 30 0F 0F 0F 0F 3F 10 + .byte $50, $0F, Zp00, $3F, Zp00, Zp08, $0F, $0F, $0F, $0F, $0F, $0F, $0F, GameMode, $3F, $10 ; CPU:$C7A8 PRG:07A8 50 0F 00 3F 00 08 0F 0F 0F 0F 0F 0F 0F 30 3F 10 + .byte $50, $0F, Zp00, $3F, Zp00, Zp08, $06, $36, $26, Ctrl1, $06, $26, Zp08, Ctrl1, Zp00, $3F ; CPU:$C7B8 PRG:07B8 50 0F 00 3F 00 08 06 36 26 16 06 26 08 16 00 3F + .byte Zp00, Zp08, $0F, GameMode, NmiFlag, $05, $0F, GameMode, NmiFlag, $05, Zp00, $3F, Zp00, NmiPhase, $0F, NmiPhase ; CPU:$C7C8 PRG:07C8 00 08 0F 30 22 05 0F 30 22 05 00 3F 00 20 0F 20 + .byte $07, $26, $0F, NmiPhase, $07, Ctrl1, $0F, NmiPhase, $07, Ctrl1, $0F, $0F, $2A, GameMode, $0F, Zp08 ; CPU:$C7D8 PRG:07D8 07 26 0F 20 07 16 0F 20 07 16 0F 0F 2A 30 0F 08 + .byte $12, $17, $0F, Zp08, GameMode, $27, $0F, Zp08, GameMode, Ctrl1, $0F, Zp08, GameMode, $17, Zp00, $3F ; CPU:$C7E8 PRG:07E8 12 17 0F 08 30 27 0F 08 30 16 0F 08 30 17 00 3F + .byte Zp00, Zp08, $0F, $36, $26, $03, $0F, $2C, $0C, $1C, Zp00, $3F, Zp00, $0C, $0F, $15 ; CPU:$C7F8 PRG:07F8 00 08 0F 36 26 03 0F 2C 0C 1C 00 3F 00 0C 0F 15 + .byte $07, Ctrl1, $0F, NmiPhase, $07, Ctrl1, $0F, $15, $07, Ctrl1, Zp00, $3F, Zp00, $50, $0F, $3F ; CPU:$C808 PRG:0808 07 16 0F 20 07 16 0F 15 07 16 00 3F 00 50 0F 3F + .byte Zp01, Zp01, GameMode, Zp00, $3F, Zp00, $50, $0F, $3F, $05, Zp01, GameMode, Zp00, $3F, Zp00, $50 ; CPU:$C818 PRG:0818 01 01 30 00 3F 00 50 0F 3F 05 01 30 00 3F 00 50 + .byte $0F, $3F, Zp09, Zp01, GameMode, Zp00, $3F, Zp00, $50, $0F, $3F, $0D, Zp01, GameMode, Zp00, $3F ; CPU:$C828 PRG:0828 0F 3F 09 01 30 00 3F 00 50 0F 3F 0D 01 30 00 3F + .byte Zp00, $50, $0F, $3F, $02, Zp01, GameMode, Zp00, $23, $2A, $06, Zp00, Zp00, Zp01, NmiPhase, Zp00 ; CPU:$C838 PRG:0838 00 50 0F 3F 02 01 30 00 23 2A 06 00 00 01 20 00 + .byte Zp00, Zp01, NmiPhase, Zp00, Zp00, Zp01, NmiPhase, Zp00, NmiPhase, $12, $D9, $A2, $03, $BD, $40, $C8 ; CPU:$C848 PRG:0848 00 01 20 00 00 01 20 00 20 12 D9 A2 03 BD 40 C8 + .byte $95, $0C, $CA, $10, $F8, $A9, Zp01, $85, $23, $A9, Zp01, $85, $33, $A2, Zp00, $A9 ; CPU:$C858 PRG:0858 95 0C CA 10 F8 A9 01 85 23 A9 01 85 33 A2 00 A9 + .byte Zp00, $AC, $FE, $05, $84, $3F, $F0, $17, $A2, $3D, $A9, $02, $88, $F0, $10, $A9 ; CPU:$C868 PRG:0868 00 AC FE 05 84 3F F0 17 A2 3D A9 02 88 F0 10 A9 + .byte $32, $85, $0D, $A9, Zp08, $85, $23, $A9, Zp08, $85, $33, $A2, Zp00, $A9, $05, $86 ; CPU:$C878 PRG:0878 32 85 0D A9 08 85 23 A9 08 85 33 A2 00 A9 05 86 + .byte $C1, $85, $3E, $60, NmiPhase, $0B, $C2, NmiPhase, $1B, $C2, $A2, $E4, $A0, $EB, NmiPhase, $D0 ; CPU:$C888 PRG:0888 C1 85 3E 60 20 0B C2 20 1B C2 A2 E4 A0 EB 20 D0 + .byte $D8, $A9, $02, $85, Zp01, $A9, $68, $85, Zp00, NmiPhase, $E3, $C2, $A0, Zp00, $B9, $B6 ; CPU:$C898 PRG:0898 D8 A9 02 85 01 A9 68 85 00 20 E3 C2 A0 00 B9 B6 + .byte $E2, $99, Zp00, $05, $C8, $C0, $07, $D0, $F5, $A9, Zp08, $85, $1C, $A2, Zp00, $BD ; CPU:$C8A8 PRG:08A8 E2 99 00 05 C8 C0 07 D0 F5 A9 08 85 1C A2 00 BD + .byte $BD, $E2, $99, Zp00, $05, $C8, $E8, $E0, Zp08, $D0, $F4, $C6, $1C, $D0, $EE, $A9 ; CPU:$C8B8 PRG:08B8 BD E2 99 00 05 C8 E8 E0 08 D0 F4 C6 1C D0 EE A9 + .byte Zp00, $8D, $46, $05, $A2, Zp00, $A0, $05, NmiPhase, $D0, $D8, NmiPhase, $26, $D9, NmiPhase, $9F ; CPU:$C8C8 PRG:08C8 00 8D 46 05 A2 00 A0 05 20 D0 D8 20 26 D9 20 9F + .byte $C2, NmiPhase, $55, $D9, NmiPhase, $90, $D9, $A2, $02, $A9, $2D, NmiPhase, $FF, $D8, $A9, $03 ; CPU:$C8D8 PRG:08D8 C2 20 55 D9 20 90 D9 A2 02 A9 2D 20 FF D8 A9 03 + .byte $85, $C3, NmiPhase, $AC, $C3, $4C, $EC, $C5, NmiPhase, $1B, $C2, NmiPhase, $1C, $D9, NmiPhase, Zp08 ; CPU:$C8E8 PRG:08E8 85 C3 20 AC C3 4C EC C5 20 1B C2 20 1C D9 20 08 + .byte $D9, NmiPhase, $CA, $D6, NmiPhase, Zp00, $D4, NmiPhase, $B8, $D4, NmiPhase, $95, $D1, NmiPhase, $CA, $D7 ; CPU:$C8F8 PRG:08F8 D9 20 CA D6 20 00 D4 20 B8 D4 20 95 D1 20 CA D7 + .byte NmiPhase, $53, $D6, NmiPhase, $6C, $D3, NmiPhase, $85, $D3, $EA, $EA, $EA, $A9, Zp01, $85, $23 ; CPU:$C908 PRG:0908 20 53 D6 20 6C D3 20 85 D3 EA EA EA A9 01 85 23 + .byte $A9, Zp00, $85, $36, $85, $A2, $A9, $03, $85, $33, $A5, $A4, $D0, $03, $4C, $88 ; CPU:$C918 PRG:0918 A9 00 85 36 85 A2 A9 03 85 33 A5 A4 D0 03 4C 88 + .byte $D9, $4C, $8C, $D9, NmiPhase, $1C, $D0, NmiPhase, $E4, $D6, NmiPhase, $48, $C9, NmiPhase, $AC, $C9 ; CPU:$C928 PRG:0928 D9 4C 8C D9 20 1C D0 20 E4 D6 20 48 C9 20 AC C9 + .byte NmiPhase, $04, $D5, NmiPhase, $4B, $D0, NmiPhase, $87, $D4, NmiPhase, $7C, $D8, $EA, $EA, $EA, $60 ; CPU:$C938 PRG:0938 20 04 D5 20 4B D0 20 87 D4 20 7C D8 EA EA EA 60 + .byte $A5, $36, $F0, $5F, $A5, $AC, $C9, Zp01, $D0, $0A, NmiPhase, $A8, $D7, $A2, $02, $A9 ; CPU:$C948 PRG:0948 A5 36 F0 5F A5 AC C9 01 D0 0A 20 A8 D7 A2 02 A9 + .byte $0A, $4C, $FF, $D8, $C9, $02, $F0, $F5, $A5, $B8, $D0, $1B, $E6, $B8, NmiPhase, $94 ; CPU:$C958 PRG:0958 0A 4C FF D8 C9 02 F0 F5 A5 B8 D0 1B E6 B8 20 94 + .byte $D9, $AD, $10, $03, $D0, $06, $8D, $13, $03, $8D, $14, $03, $AD, $40, $03, $D0 ; CPU:$C968 PRG:0968 D9 AD 10 03 D0 06 8D 13 03 8D 14 03 AD 40 03 D0 + .byte $06, $8D, $42, $03, $8D, $42, $03, NmiPhase, $04, $D5, $A5, $2B, $D0, $23, $A0, $03 ; CPU:$C978 PRG:0978 06 8D 42 03 8D 42 03 20 04 D5 A5 2B D0 23 A0 03 + .byte $AD, $12, $03, $C9, $05, $D0, $03, $8C, $12, $03, $AD, $42, $03, $C9, $05, $D0 ; CPU:$C988 PRG:0988 AD 12 03 C9 05 D0 03 8C 12 03 AD 42 03 C9 05 D0 + .byte $03, $8C, $42, $03, NmiPhase, $D1, $C5, NmiPhase, $04, $D5, $A2, $04, $A9, $0B, NmiPhase, $FF ; CPU:$C998 PRG:0998 03 8C 42 03 20 D1 C5 20 04 D5 A2 04 A9 0B 20 FF + .byte $D8, $68, $68, $60, $A0, Zp00, $84, $A5, NmiPhase, GameMode, $CA, $A0, GameMode, $E6, $A5, NmiPhase ; CPU:$C9A8 PRG:09A8 D8 68 68 60 A0 00 84 A5 20 30 CA A0 30 E6 A5 20 + .byte GameMode, $CA, $A5, $A3, $AE, Zp01, $03, $AC, Zp01, $03, $C9, Zp01, $F0, $0D, $AE, $31 ; CPU:$C9B8 PRG:09B8 30 CA A5 A3 AE 01 03 AC 01 03 C9 01 F0 0D AE 31 + .byte $03, $AC, $31, $03, $C9, $02, $F0, $03, $AE, Zp01, $03, $E0, Zp01, $D0, $1E, $C0 ; CPU:$C9C8 PRG:09C8 03 AC 31 03 C9 02 F0 03 AE 01 03 E0 01 D0 1E C0 + .byte Zp01, $D0, $1A, $C6, $AB, $D0, Ctrl1, $A9, $06, $85, $AB, $C6, $AA, $D0, $0E, $A9 ; CPU:$C9D8 PRG:09D8 01 D0 1A C6 AB D0 16 A9 06 85 AB C6 AA D0 0E A9 + .byte Zp01, $85, $BC, NmiPhase, $6D, $D9, NmiPhase, $2E, $D8, $A9, Zp00, $85, $B8, $E0, $03, $F0 ; CPU:$C9E8 PRG:09E8 01 85 BC 20 6D D9 20 2E D8 A9 00 85 B8 E0 03 F0 + .byte Zp08, $E0, $06, $F0, $04, $E0, $07, $D0, $1A, $C0, $03, $F0, Zp08, $C0, $06, $F0 ; CPU:$C9F8 PRG:09F8 08 E0 06 F0 04 E0 07 D0 1A C0 03 F0 08 C0 06 F0 + .byte $04, $C0, $07, $D0, $0E, $A5, $BC, $F0, $0A, $A9, $03, $85, $AC, $A9, Zp00, $85 ; CPU:$CA08 PRG:0A08 04 C0 07 D0 0E A5 BC F0 0A A9 03 85 AC A9 00 85 + .byte $BC, $85, $B8, $E0, $0B, $D0, $10, $C0, $0B, $D0, $0C, $A9, Zp01, $85, $36, $A9 ; CPU:$CA18 PRG:0A18 BC 85 B8 E0 0B D0 10 C0 0B D0 0C A9 01 85 36 A9 + .byte $80, $85, $2B, $A9, Zp00, $85, $B8, $60, $84, $A6, $A2, Zp00, $B9, Zp00, $03, $F0 ; CPU:$CA28 PRG:0A28 80 85 2B A9 00 85 B8 60 84 A6 A2 00 B9 00 03 F0 + .byte $1D, $B9, Zp00, $03, $95, $60, $C8, $E8, $E0, GameMode, $D0, $F5, NmiPhase, $57, $CA, $A4 ; CPU:$CA38 PRG:0A38 1D B9 00 03 95 60 C8 E8 E0 30 D0 F5 20 57 CA A4 + .byte $A6, $A2, Zp00, $B5, $60, $99, Zp00, $03, $C8, $E8, $E0, GameMode, $D0, $F5, $60, $A5 ; CPU:$CA48 PRG:0A48 A6 A2 00 B5 60 99 00 03 C8 E8 E0 30 D0 F5 60 A5 + .byte $3F, $C9, $02, $F0, $1D, $A5, $61, NmiPhase, $41, $C3, $97, $CA, $B5, $CA, $D9, $CA ; CPU:$CA58 PRG:0A58 3F C9 02 F0 1D A5 61 20 41 C3 97 CA B5 CA D9 CA + .byte $0A, $CB, $04, $CB, $F9, $CA, $DC, $CA, $F9, $CA, $D4, $CE, $17, $D4, $E9, $CA ; CPU:$CA68 PRG:0A68 0A CB 04 CB F9 CA DC CA F9 CA D4 CE 17 D4 E9 CA + .byte $3D, $CB, $A5, $61, NmiPhase, $41, $C3, $3E, $CB, $55, $CB, $6D, $CB, $0A, $CB, $04 ; CPU:$CA78 PRG:0A78 3D CB A5 61 20 41 C3 3E CB 55 CB 6D CB 0A CB 04 + .byte $CB, $DE, $C5, $DE, $C5, $DE, $C5, $D4, $CE, $17, $D4, $A1, $CB, $BC, $CB, NmiPhase ; CPU:$CA88 PRG:0A88 CB DE C5 DE C5 DE C5 D4 CE 17 D4 A1 CB BC CB 20 + .byte $EA, $CB, $A5, $71, $C5, $7D, $D0, $B6, $A5, $B8, $D0, Zp08, $E6, $B8, NmiPhase, $55 ; CPU:$CA98 PRG:0A98 EA CB A5 71 C5 7D D0 B6 A5 B8 D0 08 E6 B8 20 55 + .byte $D9, NmiPhase, $84, $D9, $A0, Zp01, $A9, $FF, $84, $61, $4C, $C7, $CE, $A5, $BC, $F0 ; CPU:$CAA8 PRG:0AA8 D9 20 84 D9 A0 01 A9 FF 84 61 4C C7 CE A5 BC F0 + .byte $4B, $A5, $70, $F0, $18, $A9, $FB, NmiPhase, $C7, $CE, $A9, Zp00, $85, $66, NmiPhase, $EA ; CPU:$CAB8 PRG:0AB8 4B A5 70 F0 18 A9 FB 20 C7 CE A9 00 85 66 20 EA + .byte $CB, NmiPhase, $AD, $D8, $A9, $02, $85, $61, $A9, $02, $85, $72, $60, $A9, $06, $D0 ; CPU:$CAC8 PRG:0AC8 CB 20 AD D8 A9 02 85 61 A9 02 85 72 60 A9 06 D0 + .byte $F5, NmiPhase, $EA, $CB, $A4, $72, $C0, Zp01, $D0, $21, $A5, $70, $F0, $03, $4C, $E6 ; CPU:$CAD8 PRG:0AD8 F5 20 EA CB A4 72 C0 01 D0 21 A5 70 F0 03 4C E6 + .byte $CE, $A0, Zp00, $A2, $07, $A9, $FE, NmiPhase, $DE, $CE, $A9, $40, $85, $66, $4C, $7B ; CPU:$CAE8 PRG:0AE8 CE A0 00 A2 07 A9 FE 20 DE CE A9 40 85 66 4C 7B + .byte $CC, $A5, $7D, $C5, $7F, $D0, $05, $A9, $0B, $85, $61, $60, NmiPhase, $EA, $CB, $4C ; CPU:$CAF8 PRG:0AF8 CC A5 7D C5 7F D0 05 A9 0B 85 61 60 20 EA CB 4C + .byte $10, $CB, NmiPhase, $EA, $CB, NmiPhase, $BE, $CC, $A5, $3F, $C9, $02, $D0, $27, $A0, $48 ; CPU:$CB08 PRG:0B08 10 CB 20 EA CB 20 BE CC A5 3F C9 02 D0 27 A0 48 + .byte $A5, $77, $C9, $02, $90, $06, $C9, $04, $F0, $1B, $A0, $A0, $84, $1C, $A6, $7E ; CPU:$CB18 PRG:0B18 A5 77 C9 02 90 06 C9 04 F0 1B A0 A0 84 1C A6 7E + .byte $BD, Zp00, $02, $C5, $1C, $90, $05, $A9, $F4, $9D, Zp00, $02, $E8, $E8, $E8, $E8 ; CPU:$CB28 PRG:0B28 BD 00 02 C5 1C 90 05 A9 F4 9D 00 02 E8 E8 E8 E8 + .byte $8A, $29, $7F, $D0, $EB, $60, $A9, $FB, NmiPhase, $C7, $CE, $A9, Zp00, $85, $66, NmiPhase ; CPU:$CB38 PRG:0B38 8A 29 7F D0 EB 60 A9 FB 20 C7 CE A9 00 85 66 20 + .byte $EA, $CB, NmiPhase, $10, $CB, $A9, $05, $85, $66, $A0, Zp01, $D0, $15, $A5, $66, $F0 ; CPU:$CB48 PRG:0B48 EA CB 20 10 CB A9 05 85 66 A0 01 D0 15 A5 66 F0 + .byte $03, $C6, $66, $60, $A5, $21, $D0, $FB, NmiPhase, $5D, $D9, $A5, $77, NmiPhase, $7B, $DC ; CPU:$CB58 PRG:0B58 03 C6 66 60 A5 21 D0 FB 20 5D D9 A5 77 20 7B DC + .byte $A0, $02, $84, $61, $60, $A5, $72, $C9, Zp01, $D0, $2D, $A5, $21, $D0, $29, $A9 ; CPU:$CB68 PRG:0B68 A0 02 84 61 60 A5 72 C9 01 D0 2D A5 21 D0 29 A9 + .byte $0A, $85, $61, $8D, Zp01, $03, $8D, $31, $03, $A9, $02, $85, $AC, $A9, $0A, $85 ; CPU:$CB78 PRG:0B78 0A 85 61 8D 01 03 8D 31 03 A9 02 85 AC A9 0A 85 + .byte $23, $A9, Zp00, $85, $BD, NmiPhase, Zp01, $CF, NmiPhase, $59, $D9, NmiPhase, $80, $D9, NmiPhase, $F9 ; CPU:$CB88 PRG:0B88 23 A9 00 85 BD 20 01 CF 20 59 D9 20 80 D9 20 F9 + .byte $CE, NmiPhase, $EA, $CB, $A9, Zp00, $85, $66, $60, $A5, $66, $F0, $03, $C6, $66, $60 ; CPU:$CB98 PRG:0B98 CE 20 EA CB A9 00 85 66 60 A5 66 F0 03 C6 66 60 + .byte $A5, $21, $D0, $FB, $A5, $77, Zp09, $80, NmiPhase, $7B, $DC, $A9, Zp00, $85, $60, $A6 ; CPU:$CBA8 PRG:0BA8 A5 21 D0 FB A5 77 09 80 20 7B DC A9 00 85 60 A6 + .byte $7E, $4C, $39, $CF, $A5, $21, $D0, $E0, $A5, $62, $C9, $02, $F0, $1C, $A5, $77 ; CPU:$CBB8 PRG:0BB8 7E 4C 39 CF A5 21 D0 E0 A5 62 C9 02 F0 1C A5 77 + .byte NmiPhase, $ED, $DA, $A9, Zp00, $85, $04, $85, $05, $85, $07, $A5, $64, $85, $06, NmiPhase ; CPU:$CBC8 PRG:0BC8 20 ED DA A9 00 85 04 85 05 85 07 A5 64 85 06 20 + .byte $80, $CE, $A9, $40, $85, $66, $A0, $0A, $D0, $88, $A5, $77, NmiPhase, $19, $DB, $4C ; CPU:$CBD8 PRG:0BD8 80 CE A9 40 85 66 A0 0A D0 88 A5 77 20 19 DB 4C + .byte $DA, $CB, $A5, $66, $F0, $03, $C6, $66, $60, $A4, $65, $B1, $7A, $E6, $65, $C9 ; CPU:$CBE8 PRG:0BE8 DA CB A5 66 F0 03 C6 66 60 A4 65 B1 7A E6 65 C9 + .byte $F7, $90, $18, Mode38, $E9, $F7, NmiPhase, $41, $C3, $FF, $CA, $8B, $CC, $9D, $CC, $66 ; CPU:$CBF8 PRG:0BF8 F7 90 18 38 E9 F7 20 41 C3 FF CA 8B CC 9D CC 66 + .byte $CC, $6B, $CC, $6B, $CC, $6B, $CC, $6E, $CC, $86, $CC, $A4, $65, $85, $66, $A6 ; CPU:$CC08 PRG:0C08 CC 6B CC 6B CC 6B CC 6E CC 86 CC A4 65 85 66 A6 + .byte $61, $F0, $2C, $E0, $05, $F0, $28, $E0, $07, $F0, $24, $E0, $03, $D0, $35, $A5 ; CPU:$CC18 PRG:0C18 61 F0 2C E0 05 F0 28 E0 07 F0 24 E0 03 D0 35 A5 + .byte $8A, $C9, $03, $D0, $06, $A5, $3F, $C9, $02, $D0, $29, $A5, $66, $10, $05, $29 ; CPU:$CC28 PRG:0C28 8A C9 03 D0 06 A5 3F C9 02 D0 29 A5 66 10 05 29 + .byte $0F, NmiPhase, $FE, $CF, $18, $65, $80, $85, $80, $A9, Zp01, $85, $66, $D0, $15, $B1 ; CPU:$CC38 PRG:0C38 0F 20 FE CF 18 65 80 85 80 A9 01 85 66 D0 15 B1 + .byte $7A, $A6, $3F, $E0, $02, $F0, $0D, $C8, $A6, $7C, $F0, $03, NmiPhase, $FE, $CF, $18 ; CPU:$CC48 PRG:0C48 7A A6 3F E0 02 F0 0D C8 A6 7C F0 03 20 FE CF 18 + .byte $65, $7D, $85, $7D, $B1, $7A, $C8, $84, $65, $85, $6B, $4C, $0D, $CF, $A0, Zp00 ; CPU:$CC58 PRG:0C58 65 7D 85 7D B1 7A C8 84 65 85 6B 4C 0D CF A0 00 + .byte $84, $65, $60, $C6, $65, $60, $A5, $3F, $C9, $02, $D0, $03, $4C, $FF, $CA, $A9 ; CPU:$CC68 PRG:0C68 84 65 60 C6 65 60 A5 3F C9 02 D0 03 4C FF CA A9 + .byte $05, $85, $61, $A4, $65, $84, $6C, $A5, $7C, $49, Zp01, $85, $7C, $60, $A4, $6C ; CPU:$CC78 PRG:0C78 05 85 61 A4 65 84 6C A5 7C 49 01 85 7C 60 A4 6C + .byte $4C, $68, $CC, $A5, $8A, $C9, $03, $D0, Zp09, $A5, $3F, $C9, $02, $F0, $03, $4C ; CPU:$CC88 PRG:0C88 4C 68 CC A5 8A C9 03 D0 09 A5 3F C9 02 F0 03 4C + .byte $65, $D9, $4C, $61, $D9, NmiPhase, $65, $D9, $06, $81, $46, $81, $A5, $7D, $85, $6A ; CPU:$CC98 PRG:0C98 65 D9 4C 61 D9 20 65 D9 06 81 46 81 A5 7D 85 6A + .byte $A9, $0C, $A6, $8A, $E0, $04, $F0, $02, $A9, $10, $85, $1C, $A5, $80, Mode38, $E5 ; CPU:$CCA8 PRG:0CA8 A9 0C A6 8A E0 04 F0 02 A9 10 85 1C A5 80 38 E5 + .byte $1C, $85, $69, $4C, $F1, $CB, $A5, $81, GameMode, Zp09, $A5, $68, $F0, $06, $C6, $68 ; CPU:$CCB8 PRG:0CB8 1C 85 69 4C F1 CB A5 81 30 09 A5 68 F0 06 C6 68 + .byte $4C, $42, $CD, $60, $A9, $02, $85, $68, $A5, $6A, $C9, $10, $90, $1D, $C9, $F0 ; CPU:$CCC8 PRG:0CC8 4C 42 CD 60 A9 02 85 68 A5 6A C9 10 90 1D C9 F0 + .byte $B0, $19, $A4, $67, $B1, $82, $C9, $BB, $D0, $06, $A9, $0B, $85, $61, $D0, $5A ; CPU:$CCD8 PRG:0CD8 B0 19 A4 67 B1 82 C9 BB D0 06 A9 0B 85 61 D0 5A + .byte $C9, $AA, $D0, $19, $A5, $A4, $D0, $03, $C8, $D0, $E9, $A9, $0B, $85, $61, $A6 ; CPU:$CCE8 PRG:0CE8 C9 AA D0 19 A5 A4 D0 03 C8 D0 E9 A9 0B 85 61 A6 + .byte $81, $A9, $80, $85, $81, $A9, $F4, $85, $69, $85, $6A, $D0, $3F, $C9, $CC, $D0 ; CPU:$CCF8 PRG:0CF8 81 A9 80 85 81 A9 F4 85 69 85 6A D0 3F C9 CC D0 + .byte Zp08, $A5, $3F, $C9, $02, $D0, $E1, $F0, $E2, $C8, $C9, $DD, $D0, $0C, $A5, $3F ; CPU:$CD08 PRG:0D08 08 A5 3F C9 02 D0 E1 F0 E2 C8 C9 DD D0 0C A5 3F + .byte $C9, $02, $D0, $C0, $A9, Zp01, $85, $78, $D0, $BA, $18, $65, $69, $85, $69, $A5 ; CPU:$CD18 PRG:0D18 C9 02 D0 C0 A9 01 85 78 D0 BA 18 65 69 85 69 A5 + .byte $8A, $C9, Zp01, $D0, $13, $B1, $82, $A6, $A4, $F0, $07, $A6, $A5, $D0, $03, NmiPhase ; CPU:$CD28 PRG:0D28 8A C9 01 D0 13 B1 82 A6 A4 F0 07 A6 A5 D0 03 20 + .byte $FE, $CF, $18, $65, $6A, $85, $6A, $C8, $84, $67, $A6, $81, $A0, $7F, $A5, $A5 ; CPU:$CD38 PRG:0D38 FE CF 18 65 6A 85 6A C8 84 67 A6 81 A0 7F A5 A5 + .byte $F0, $02, $A0, $FF, $BD, $C5, $E2, $C9, $AA, $D0, Zp01, $60, $E8, $18, $65, $6A ; CPU:$CD48 PRG:0D48 F0 02 A0 FF BD C5 E2 C9 AA D0 01 60 E8 18 65 6A + .byte $99, Zp00, $02, $88, $BD, $C5, $E2, NmiPhase, $0F, $D0, $99, Zp00, $02, $E8, $88, $BD ; CPU:$CD58 PRG:0D58 99 00 02 88 BD C5 E2 20 0F D0 99 00 02 E8 88 BD + .byte $C5, $E2, $99, Zp00, $02, $E8, $88, $A5, $78, $F0, $04, $A9, $F4, $D0, $06, $BD ; CPU:$CD68 PRG:0D68 C5 E2 99 00 02 E8 88 A5 78 F0 04 A9 F4 D0 06 BD + .byte $C5, $E2, $18, $65, $69, $99, Zp00, $02, $E8, $88, $4C, $4C, $CD, $A5, $A8, NmiPhase ; CPU:$CD78 PRG:0D78 C5 E2 18 65 69 99 00 02 E8 88 4C 4C CD A5 A8 20 + .byte $41, $C3, $96, $CD, $07, $CE, $91, $CE, $F4, $CD, $89, $CE, $C3, $CE, $A5, $AC ; CPU:$CD88 PRG:0D88 41 C3 96 CD 07 CE 91 CE F4 CD 89 CE C3 CE A5 AC + .byte $C9, $03, $F0, $03, $4C, $A4, $CE, $A2, Zp00, $BD, Zp00, $03, $D0, $05, $A2, $03 ; CPU:$CD98 PRG:0D98 C9 03 F0 03 4C A4 CE A2 00 BD 00 03 D0 05 A2 03 + .byte $86, $A8, $60, $BD, $02, $03, $C9, Zp01, $D0, $F4, $A9, $02, $9D, $12, $03, $BD ; CPU:$CDA8 PRG:0DA8 86 A8 60 BD 02 03 C9 01 D0 F4 A9 02 9D 12 03 BD + .byte $13, $03, $9D, $05, $03, $E6, $A8, $A9, Zp00, $9D, $0B, $03, $A2, Mode38, $BD, $0F ; CPU:$CDB8 PRG:0DB8 13 03 9D 05 03 E6 A8 A9 00 9D 0B 03 A2 38 BD 0F + .byte $EB, $9D, Zp00, $05, $CA, $10, $F7, $A2, $0A, $BD, $D9, $EB, $9D, $10, $05, $CA ; CPU:$CDC8 PRG:0DC8 EB 9D 00 05 CA 10 F7 A2 0A BD D9 EB 9D 10 05 CA + .byte $10, $F7, $A2, $4B, $8E, $0B, $05, $E8, $8E, $0C, $05, $A2, $FF, $8E, $27, $05 ; CPU:$CDD8 PRG:0DD8 10 F7 A2 4B 8E 0B 05 E8 8E 0C 05 A2 FF 8E 27 05 + .byte $A2, $7E, $8E, $28, $05, $A2, $0A, $A0, $21, $4C, $AF, $D5, $A2, GameMode, $BD, Zp00 ; CPU:$CDE8 PRG:0DE8 A2 7E 8E 28 05 A2 0A A0 21 4C AF D5 A2 30 BD 00 + .byte $03, $D0, $03, $4C, $A4, $CE, $BD, $02, $03, $C9, Zp01, $D0, $F6, $F0, $AB, NmiPhase ; CPU:$CDF8 PRG:0DF8 03 D0 03 4C A4 CE BD 02 03 C9 01 D0 F6 F0 AB 20 + .byte $04, $D5, $A2, Zp00, $BD, $13, $03, $DD, $05, $03, $F0, $43, $9D, $05, $03, $86 ; CPU:$CE08 PRG:0E08 04 D5 A2 00 BD 13 03 DD 05 03 F0 43 9D 05 03 86 + .byte $1F, $BD, $0B, $03, $85, $03, $A9, Zp01, $18, NmiPhase, $AA, $C4, $A6, $1F, $9D, $0B ; CPU:$CE18 PRG:0E18 1F BD 0B 03 85 03 A9 01 18 20 AA C4 A6 1F 9D 0B + .byte $03, $A0, $FF, $4A, $4A, $4A, $4A, $F0, Zp01, $A8, $8C, Zp01, $05, $BD, $0B, $03 ; CPU:$CE28 PRG:0E28 03 A0 FF 4A 4A 4A 4A F0 01 A8 8C 01 05 BD 0B 03 + .byte $29, $0F, $8D, $02, $05, $A9, Zp00, $8D, $03, $05, $8D, $04, $05, $8D, $05, $05 ; CPU:$CE38 PRG:0E38 29 0F 8D 02 05 A9 00 8D 03 05 8D 04 05 8D 05 05 + .byte $A9, $15, $8D, Zp00, $05, $A2, GameMode, $A0, $21, NmiPhase, $AF, $D5, $4C, $71, $D9, $BD ; CPU:$CE48 PRG:0E48 A9 15 8D 00 05 A2 30 A0 21 20 AF D5 4C 71 D9 BD + .byte $12, $03, $C9, Zp01, $D0, $2A, $E6, $A8, $A9, $60, $9D, $06, $03, $A9, Zp00, $85 ; CPU:$CE58 PRG:0E58 12 03 C9 01 D0 2A E6 A8 A9 60 9D 06 03 A9 00 85 + .byte $04, $85, $07, $BD, $0B, $03, $0A, $0A, $0A, $0A, $85, $06, $BD, $0B, $03, $4A ; CPU:$CE68 PRG:0E68 04 85 07 BD 0B 03 0A 0A 0A 0A 85 06 BD 0B 03 4A + .byte $4A, $4A, $4A, $85, $05, NmiPhase, $71, $D9, $A9, $0F, NmiPhase, NmiFlag, $C4, NmiPhase, $26, $D9 ; CPU:$CE78 PRG:0E78 4A 4A 4A 85 05 20 71 D9 A9 0F 20 22 C4 20 26 D9 + .byte $60, NmiPhase, $04, $D5, $A2, GameMode, $4C, $0C, $CE, $A2, Zp00, $DE, $06, $03, $BD, $06 ; CPU:$CE88 PRG:0E88 60 20 04 D5 A2 30 4C 0C CE A2 00 DE 06 03 BD 06 + .byte $03, $D0, $10, $A5, $A8, $C9, $02, $D0, $03, $E6, $A8, $60, $A2, $02, $A9, $0A ; CPU:$CE98 PRG:0E98 03 D0 10 A5 A8 C9 02 D0 03 E6 A8 60 A2 02 A9 0A + .byte $4C, $FF, $D8, $C9, NmiPhase, $D0, $F4, $BD, $03, $03, $BC, $04, $03, $AA, $A9, Zp00 ; CPU:$CEA8 PRG:0EA8 4C FF D8 C9 20 D0 F4 BD 03 03 BC 04 03 AA A9 00 + .byte $85, $04, $86, $05, $84, $06, $85, $07, $4C, $7D, $CE, $A2, GameMode, $D0, $CC, $A0 ; CPU:$CEB8 PRG:0EB8 85 04 86 05 84 06 85 07 4C 7D CE A2 30 D0 CC A0 + .byte Zp00, $D1, $7A, $D0, $04, $C8, $84, $65, $60, $C8, $D0, $F5, $A9, Zp00, $85, $66 ; CPU:$CEC8 PRG:0EC8 00 D1 7A D0 04 C8 84 65 60 C8 D0 F5 A9 00 85 66 + .byte $A0, Zp01, $A2, $03, $A9, $FA, $86, $61, $84, $62, NmiPhase, $C7, $CE, $60, $A5, $B8 ; CPU:$CED8 PRG:0ED8 A0 01 A2 03 A9 FA 86 61 84 62 20 C7 CE 60 A5 B8 + .byte $D0, $05, $E6, $B8, NmiPhase, $80, $D9, NmiPhase, Zp01, $CF, NmiPhase, $59, $D9, $A9, $02, $85 ; CPU:$CEE8 PRG:0EE8 D0 05 E6 B8 20 80 D9 20 01 CF 20 59 D9 A9 02 85 + .byte $AC, $A0, $02, $A2, Zp09, $A9, $FD, $D0, $DD ; CPU:$CEF8 PRG:0EF8 AC A0 02 A2 09 A9 FD D0 DD +; ----------------------------------------------------------------------------- +; Routine: Label_CF01 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_CF01: + lda $BD ; CPU:$CF01 PRG:0F01 A5 BD + bne Label_CF0C ; CPU:$CF03 PRG:0F03 D0 07 + inc $BD ; CPU:$CF05 PRG:0F05 E6 BD + dec $C3 ; CPU:$CF07 PRG:0F07 C6 C3 + jsr $D36C ; CPU:$CF09 PRG:0F09 20 6C D3 +; ----------------------------------------------------------------------------- +; Routine: Label_CF0C +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_CF0C: + rts ; CPU:$CF0C PRG:0F0C 60 +; ---- data $CF0D-$D01B (271 bytes) ---- + .byte $A5, $7E, $85, $B7, $A5, $6B, $0A, $A8, $A9, $4D, $85, $12, $A9, $E3, $85, $13 ; CPU:$CF0D PRG:0F0D A5 7E 85 B7 A5 6B 0A A8 A9 4D 85 12 A9 E3 85 13 + .byte $B1, $12, $85, $10, $C8, $B1, $12, $85, $11, $A0, Zp00, $84, $1A, $A4, $1A, $B1 ; CPU:$CF1D PRG:0F1D B1 12 85 10 C8 B1 12 85 11 A0 00 84 1A A4 1A B1 + .byte $10, $C9, Zp00, $D0, $12, $A5, $B7, $AA, $29, $7F, $F0, $0A, $A9, $F4, $9D, Zp00 ; CPU:$CF2D PRG:0F2D 10 C9 00 D0 12 A5 B7 AA 29 7F F0 0A A9 F4 9D 00 + .byte $02, $E8, $8A, $4C, $35, $CF, $60, $85, $13, $C8, $B1, $10, $C8, $85, $12, $B1 ; CPU:$CF3D PRG:0F3D 02 E8 8A 4C 35 CF 60 85 13 C8 B1 10 C8 85 12 B1 + .byte $10, $C8, $18, $65, $80, $85, $B4, $B1, $10, $C8, $A6, $7C, $F0, $0A, $A6, $8A ; CPU:$CF4D PRG:0F4D 10 C8 18 65 80 85 B4 B1 10 C8 A6 7C F0 0A A6 8A + .byte $D0, $06, NmiPhase, $FE, $CF, Mode38, $E9, Zp08, $18, $65, $7D, $85, $B5, $84, $1A, $A0 ; CPU:$CF5D PRG:0F5D D0 06 20 FE CF 38 E9 08 18 65 7D 85 B5 84 1A A0 + .byte Zp00, $B1, $12, $A2, Zp00, $C9, Zp00, $F0, $0E, $A2, $12, $C9, Zp01, $F0, Zp08, $A2 ; CPU:$CF6D PRG:0F6D 00 B1 12 A2 00 C9 00 F0 0E A2 12 C9 01 F0 08 A2 + .byte $32, $C9, $02, $F0, $02, $A2, $4A, $86, $1B, $C8, $B1, $12, $C9, $FF, $F0, $9D ; CPU:$CF7D PRG:0F7D 32 C9 02 F0 02 A2 4A 86 1B C8 B1 12 C9 FF F0 9D + .byte $C9, $FE, $D0, $07, $E6, $1B, $E6, $1B, $4C, $86, $CF, $C9, $FD, $D0, Zp08, $C8 ; CPU:$CF8D PRG:0F8D C9 FE D0 07 E6 1B E6 1B 4C 86 CF C9 FD D0 08 C8 + .byte $B1, $12, $85, $B6, $4C, $86, $CF, $A6, $1B, $BD, $6D, $E6, $E6, $1B, $18, $65 ; CPU:$CF9D PRG:0F9D B1 12 85 B6 4C 86 CF A6 1B BD 6D E6 E6 1B 18 65 + .byte $B4, $A6, $B7, $9D, Zp00, $02, $E6, $B7, $B1, $12, $C8, $A6, $B7, $9D, Zp00, $02 ; CPU:$CFAD PRG:0FAD B4 A6 B7 9D 00 02 E6 B7 B1 12 C8 A6 B7 9D 00 02 + .byte $E6, $B7, $A5, $B6, $A6, $7C, $F0, $10, $A6, $8A, $D0, $0C, $29, $BF, $85, $1C ; CPU:$CFBD PRG:0FBD E6 B7 A5 B6 A6 7C F0 10 A6 8A D0 0C 29 BF 85 1C + .byte $A5, $B6, $29, $40, $49, $40, $05, $1C, NmiPhase, $0F, $D0, $A6, $B7, $9D, Zp00, $02 ; CPU:$CFCD PRG:0FCD A5 B6 29 40 49 40 05 1C 20 0F D0 A6 B7 9D 00 02 + .byte $E6, $B7, $A6, $1B, $BD, $6D, $E6, $E6, $1B, $A6, $7C, $F0, $07, $A6, $8A, $D0 ; CPU:$CFDD PRG:0FDD E6 B7 A6 1B BD 6D E6 E6 1B A6 7C F0 07 A6 8A D0 + .byte $03, NmiPhase, $FE, $CF, $18, $65, $B5, $A6, $B7, $9D, Zp00, $02, $E6, $B7, $4C, $87 ; CPU:$CFED PRG:0FED 03 20 FE CF 18 65 B5 A6 B7 9D 00 02 E6 B7 4C 87 + .byte $CF, $49, $FF, $18, $69, Zp01, $60, $86, $7A, $84, $7B, $A9, Zp00, $85, $65, $85 ; CPU:$CFFD PRG:0FFD CF 49 FF 18 69 01 60 86 7A 84 7B A9 00 85 65 85 + .byte $66, $60, $84, $1F, $A4, $3F, $C0, $02, $D0, $02, Zp09, NmiPhase, $A4, $1F, $60 ; CPU:$D00D PRG:100D 66 60 84 1F A4 3F C0 02 D0 02 09 20 A4 1F 60 +; ----------------------------------------------------------------------------- +; Routine: Label_D01C +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D01C: + lda $4017 ; CPU:$D01C PRG:101C AD 17 40 + and #$10 ; CPU:$D01F PRG:101F 29 10 + cmp $A0 ; CPU:$D021 PRG:1021 C5 A0 + beq Label_D02C ; CPU:$D023 PRG:1023 F0 07 + sta $A0 ; CPU:$D025 PRG:1025 85 A0 +; ----------------------------------------------------------------------------- +; Routine: Label_D027 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D027: + lda #$00 ; CPU:$D027 PRG:1027 A9 00 + sta $A1 ; CPU:$D029 PRG:1029 85 A1 +; ----------------------------------------------------------------------------- +; Routine: Label_D02B +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D02B: + rts ; CPU:$D02B PRG:102B 60 +; ----------------------------------------------------------------------------- +; Routine: Label_D02C +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D02C: + inc $A1 ; CPU:$D02C PRG:102C E6 A1 + ldy $A1 ; CPU:$D02E PRG:102E A4 A1 + cpy #$01 ; CPU:$D030 PRG:1030 C0 01 + bne Label_D02B ; CPU:$D032 PRG:1032 D0 F7 + and #$10 ; CPU:$D034 PRG:1034 29 10 + beq Label_D03E ; CPU:$D036 PRG:1036 F0 06 + lda #$01 ; CPU:$D038 PRG:1038 A9 01 + sta $B9 ; CPU:$D03A PRG:103A 85 B9 + bne Label_D027 ; CPU:$D03C PRG:103C D0 E9 +; ----------------------------------------------------------------------------- +; Routine: Label_D03E +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D03E: + lda $B9 ; CPU:$D03E PRG:103E A5 B9 + beq Label_D027 ; CPU:$D040 PRG:1040 F0 E5 + ldy #$00 ; CPU:$D042 PRG:1042 A0 00 + sty $B9 ; CPU:$D044 PRG:1044 84 B9 + iny ; CPU:$D046 PRG:1046 C8 + sty $A2 ; CPU:$D047 PRG:1047 84 A2 + bne Label_D027 ; CPU:$D049 PRG:1049 D0 DC + lda $AC ; CPU:$D04B PRG:104B A5 AC + beq Label_D054 ; CPU:$D04D PRG:104D F0 05 +; ----------------------------------------------------------------------------- +; Routine: Label_D04F +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D04F: + lda #$00 ; CPU:$D04F PRG:104F A9 00 + sta $A2 ; CPU:$D051 PRG:1051 85 A2 +; ----------------------------------------------------------------------------- +; Routine: Label_D053 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D053: + rts ; CPU:$D053 PRG:1053 60 +; ----------------------------------------------------------------------------- +; Routine: Label_D054 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D054: + lda $A2 ; CPU:$D054 PRG:1054 A5 A2 + beq Label_D053 ; CPU:$D056 PRG:1056 F0 FB + lda $3F ; CPU:$D058 PRG:1058 A5 3F + cmp #$02 ; CPU:$D05A PRG:105A C9 02 + bne Label_D068 ; CPU:$D05C PRG:105C D0 0A + lda $97 ; CPU:$D05E PRG:105E A5 97 + beq Label_D04F ; CPU:$D060 PRG:1060 F0 ED + dec $97 ; CPU:$D062 PRG:1062 C6 97 + lda #$01 ; CPU:$D064 PRG:1064 A9 01 + sta $98 ; CPU:$D066 PRG:1066 85 98 +; ----------------------------------------------------------------------------- +; Routine: Label_D068 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D068: + lda #$00 ; CPU:$D068 PRG:1068 A9 00 + sta $A2 ; CPU:$D06A PRG:106A 85 A2 + jsr $D959 ; CPU:$D06C PRG:106C 20 59 D9 + ldy $3E ; CPU:$D06F PRG:106F A4 3E + lda $DEB6,Y ; CPU:$D071 PRG:1071 B9 B6 DE + sta $B0 ; CPU:$D074 PRG:1074 85 B0 + iny ; CPU:$D076 PRG:1076 C8 + lda $DEB6,Y ; CPU:$D077 PRG:1077 B9 B6 DE + sta $23 ; CPU:$D07A PRG:107A 85 23 + iny ; CPU:$D07C PRG:107C C8 + sty $1F ; CPU:$D07D PRG:107D 84 1F + lda #$FF ; CPU:$D07F PRG:107F A9 FF + sta $0A ; CPU:$D081 PRG:1081 85 0A + jsr $C5DF ; CPU:$D083 PRG:1083 20 DF C5 + jsr $D8EF ; CPU:$D086 PRG:1086 20 EF D8 +; ----------------------------------------------------------------------------- +; Routine: Label_D089 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D089: + lda NmiPhase ; CPU:$D089 PRG:1089 A5 20 + bne Label_D097 ; CPU:$D08B PRG:108B D0 0A + lda $4017 ; CPU:$D08D PRG:108D AD 17 40 + and #$08 ; CPU:$D090 PRG:1090 29 08 + bne Label_D089 ; CPU:$D092 PRG:1092 D0 F5 + jmp $D14E ; CPU:$D094 PRG:1094 4C 4E D1 +; ----------------------------------------------------------------------------- +; Routine: Label_D097 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D097: + lda Zp09 ; CPU:$D097 PRG:1097 A5 09 + and #$E7 ; CPU:$D099 PRG:1099 29 E7 + ora #$08 ; CPU:$D09B PRG:109B 09 08 + sta Zp09 ; CPU:$D09D PRG:109D 85 09 + sta $2001 ; CPU:$D09F PRG:109F 8D 01 20 + lda #$00 ; CPU:$D0A2 PRG:10A2 A9 00 + sta $1C ; CPU:$D0A4 PRG:10A4 85 1C +; ----------------------------------------------------------------------------- +; Routine: Label_D0A6 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D0A6: + jsr $D8EF ; CPU:$D0A6 PRG:10A6 20 EF D8 + lda $B0 ; CPU:$D0A9 PRG:10A9 A5 B0 + beq Label_D0B6 ; CPU:$D0AB PRG:10AB F0 09 + ldy $1F ; CPU:$D0AD PRG:10AD A4 1F + lda $DEB6,Y ; CPU:$D0AF PRG:10AF B9 B6 DE + sta $23 ; CPU:$D0B2 PRG:10B2 85 23 + inc $1F ; CPU:$D0B4 PRG:10B4 E6 1F +; ----------------------------------------------------------------------------- +; Routine: Label_D0B6 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D0B6: + lda NmiPhase ; CPU:$D0B6 PRG:10B6 A5 20 + bne Label_D0C3 ; CPU:$D0B8 PRG:10B8 D0 09 + lda $4017 ; CPU:$D0BA PRG:10BA AD 17 40 + and #$08 ; CPU:$D0BD PRG:10BD 29 08 + bne Label_D0B6 ; CPU:$D0BF PRG:10BF D0 F5 + beq Label_D0D1 ; CPU:$D0C1 PRG:10C1 F0 0E +; ----------------------------------------------------------------------------- +; Routine: Label_D0C3 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D0C3: + lda $B0 ; CPU:$D0C3 PRG:10C3 A5 B0 + beq Label_D0CE ; CPU:$D0C5 PRG:10C5 F0 07 + dec $B0 ; CPU:$D0C7 PRG:10C7 C6 B0 + inc $1C ; CPU:$D0C9 PRG:10C9 E6 1C + jmp $D0A6 ; CPU:$D0CB PRG:10CB 4C A6 D0 +; ----------------------------------------------------------------------------- +; Routine: Label_D0CE +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D0CE: + jmp $D14E ; CPU:$D0CE PRG:10CE 4C 4E D1 +; ----------------------------------------------------------------------------- +; Routine: Label_D0D1 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D0D1: + lda GameMode ; CPU:$D0D1 PRG:10D1 A5 30 + beq Label_D0DA ; CPU:$D0D3 PRG:10D3 F0 05 + lda #$01 ; CPU:$D0D5 PRG:10D5 A9 01 + jmp $D154 ; CPU:$D0D7 PRG:10D7 4C 54 D1 +; ----------------------------------------------------------------------------- +; Routine: Label_D0DA +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D0DA: + lda $3F ; CPU:$D0DA PRG:10DA A5 3F + cmp #$02 ; CPU:$D0DC PRG:10DC C9 02 + bne Label_D0E3 ; CPU:$D0DE PRG:10DE D0 03 + jmp $D175 ; CPU:$D0E0 PRG:10E0 4C 75 D1 +; ----------------------------------------------------------------------------- +; Routine: Label_D0E3 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D0E3: + ldy #$30 ; CPU:$D0E3 PRG:10E3 A0 30 + lda $A3 ; CPU:$D0E5 PRG:10E5 A5 A3 + cmp #$02 ; CPU:$D0E7 PRG:10E7 C9 02 + beq Label_D0F1 ; CPU:$D0E9 PRG:10E9 F0 06 + lda $1C ; CPU:$D0EB PRG:10EB A5 1C + bne Label_D0F1 ; CPU:$D0ED PRG:10ED D0 02 + ldy #$00 ; CPU:$D0EF PRG:10EF A0 00 +; ----------------------------------------------------------------------------- +; Routine: Label_D0F1 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D0F1: + lda $BC ; CPU:$D0F1 PRG:10F1 A5 BC + bne Label_D0FF ; CPU:$D0F3 PRG:10F3 D0 0A + lda #$0A ; CPU:$D0F5 PRG:10F5 A9 0A + sta $0301 ; CPU:$D0F7 PRG:10F7 8D 01 03 + sta $0331 ; CPU:$D0FA PRG:10FA 8D 31 03 + bne Label_D11D ; CPU:$D0FD PRG:10FD D0 1E +; ----------------------------------------------------------------------------- +; Routine: Label_D0FF +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D0FF: + lda $0310,Y ; CPU:$D0FF PRG:10FF B9 10 03 + bne Label_D134 ; CPU:$D102 PRG:1102 D0 30 + lda $0301,Y ; CPU:$D104 PRG:1104 B9 01 03 + cmp #$07 ; CPU:$D107 PRG:1107 C9 07 + beq Label_D110 ; CPU:$D109 PRG:1109 F0 05 + lda #$0A ; CPU:$D10B PRG:110B A9 0A + sta $0301,Y ; CPU:$D10D PRG:110D 99 01 03 +; ----------------------------------------------------------------------------- +; Routine: Label_D110 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D110: + ldx #$00 ; CPU:$D110 PRG:1110 A2 00 + cpy #$00 ; CPU:$D112 PRG:1112 C0 00 + bne Label_D118 ; CPU:$D114 PRG:1114 D0 02 + ldx #$30 ; CPU:$D116 PRG:1116 A2 30 +; ----------------------------------------------------------------------------- +; Routine: Label_D118 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D118: + lda #$0B ; CPU:$D118 PRG:1118 A9 0B + sta $0301,X ; CPU:$D11A PRG:111A 9D 01 03 +; ----------------------------------------------------------------------------- +; Routine: Label_D11D +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D11D: + lda #$01 ; CPU:$D11D PRG:111D A9 01 + sta $AC ; CPU:$D11F PRG:111F 85 AC + sty $BE ; CPU:$D121 PRG:1121 84 BE + lda #$00 ; CPU:$D123 PRG:1123 A9 00 + sta $0312 ; CPU:$D125 PRG:1125 8D 12 03 + sta $0342 ; CPU:$D128 PRG:1128 8D 42 03 + jsr $CF01 ; CPU:$D12B PRG:112B 20 01 CF + jsr $D969 ; CPU:$D12E PRG:112E 20 69 D9 + jmp $D14E ; CPU:$D131 PRG:1131 4C 4E D1 +; ----------------------------------------------------------------------------- +; Routine: Label_D134 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D134: + lda $0302,Y ; CPU:$D134 PRG:1134 B9 02 03 + bne Label_D14E ; CPU:$D137 PRG:1137 D0 15 + lda $0312,Y ; CPU:$D139 PRG:1139 B9 12 03 + cmp #$01 ; CPU:$D13C PRG:113C C9 01 + beq Label_D14E ; CPU:$D13E PRG:113E F0 0E + lda #$01 ; CPU:$D140 PRG:1140 A9 01 + sta $A7 ; CPU:$D142 PRG:1142 85 A7 + lda #$05 ; CPU:$D144 PRG:1144 A9 05 + sta $0312,Y ; CPU:$D146 PRG:1146 99 12 03 +; ----------------------------------------------------------------------------- +; Routine: Label_D149 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D149: + lda #$08 ; CPU:$D149 PRG:1149 A9 08 + sta $0301,Y ; CPU:$D14B PRG:114B 99 01 03 +; ----------------------------------------------------------------------------- +; Routine: Label_D14E +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D14E: + lda GameMode ; CPU:$D14E PRG:114E A5 30 + beq Label_D15B ; CPU:$D150 PRG:1150 F0 09 + lda #$02 ; CPU:$D152 PRG:1152 A9 02 +; ----------------------------------------------------------------------------- +; Routine: Label_D154 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D154: + sta $05FF ; CPU:$D154 PRG:1154 8D FF 05 + ldy #$02 ; CPU:$D157 PRG:1157 A0 02 + bne Label_D165 ; CPU:$D159 PRG:1159 D0 0A +; ----------------------------------------------------------------------------- +; Routine: Label_D15B +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D15B: + ldy #$01 ; CPU:$D15B PRG:115B A0 01 + lda $3F ; CPU:$D15D PRG:115D A5 3F + cmp #$02 ; CPU:$D15F PRG:115F C9 02 + bne Label_D165 ; CPU:$D161 PRG:1161 D0 02 + ldy #$08 ; CPU:$D163 PRG:1163 A0 08 +; ----------------------------------------------------------------------------- +; Routine: Label_D165 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D165: + sty $23 ; CPU:$D165 PRG:1165 84 23 + lda #$00 ; CPU:$D167 PRG:1167 A9 00 + sta $0A ; CPU:$D169 PRG:1169 85 0A + lda GameMode ; CPU:$D16B PRG:116B A5 30 + beq Label_D172 ; CPU:$D16D PRG:116D F0 03 + jsr $C5D1 ; CPU:$D16F PRG:116F 20 D1 C5 +; ----------------------------------------------------------------------------- +; Routine: Label_D172 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D172: + jmp $C5EC ; CPU:$D172 PRG:1172 4C EC C5 +; ----------------------------------------------------------------------------- +; Routine: Label_D175 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D175: + ldy #$00 ; CPU:$D175 PRG:1175 A0 00 + lda $0317 ; CPU:$D177 PRG:1177 AD 17 03 + cmp $1C ; CPU:$D17A PRG:117A C5 1C + beq Label_D187 ; CPU:$D17C PRG:117C F0 09 + ldy #$30 ; CPU:$D17E PRG:117E A0 30 + lda $0347 ; CPU:$D180 PRG:1180 AD 47 03 + cmp $1C ; CPU:$D183 PRG:1183 C5 1C + bne Label_D14E ; CPU:$D185 PRG:1185 D0 C7 +; ----------------------------------------------------------------------------- +; Routine: Label_D187 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D187: + lda $0300,Y ; CPU:$D187 PRG:1187 B9 00 03 + beq Label_D14E ; CPU:$D18A PRG:118A F0 C2 + lda $0301,Y ; CPU:$D18C PRG:118C B9 01 03 + cmp #$02 ; CPU:$D18F PRG:118F C9 02 + bne Label_D14E ; CPU:$D191 PRG:1191 D0 BB + beq Label_D149 ; CPU:$D193 PRG:1193 F0 B4 + jsr $D8D7 ; CPU:$D195 PRG:1195 20 D7 D8 + jsr $D8E3 ; CPU:$D198 PRG:1198 20 E3 D8 + ldx $C1 ; CPU:$D19B PRG:119B A6 C1 +; ----------------------------------------------------------------------------- +; Routine: Label_D19D +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D19D: + lda $DD05,X ; CPU:$D19D PRG:119D BD 05 DD + cmp #$AA ; CPU:$D1A0 PRG:11A0 C9 AA + bne Label_D1AE ; CPU:$D1A2 PRG:11A2 D0 0A + ldx #$20 ; CPU:$D1A4 PRG:11A4 A2 20 + ldy $3F ; CPU:$D1A6 PRG:11A6 A4 3F + beq Label_D19D ; CPU:$D1A8 PRG:11A8 F0 F3 + ldx #$6A ; CPU:$D1AA PRG:11AA A2 6A + bne Label_D19D ; CPU:$D1AC PRG:11AC D0 EF +; ----------------------------------------------------------------------------- +; Routine: Label_D1AE +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D1AE: + stx $1B ; CPU:$D1AE PRG:11AE 86 1B + ldy $3F ; CPU:$D1B0 PRG:11B0 A4 3F + bne Label_D1D9 ; CPU:$D1B2 PRG:11B2 D0 25 + inc $1B ; CPU:$D1B4 PRG:11B4 E6 1B + cmp #$00 ; CPU:$D1B6 PRG:11B6 C9 00 + beq Label_D1C5 ; CPU:$D1B8 PRG:11B8 F0 0B + cmp #$01 ; CPU:$D1BA PRG:11BA C9 01 + beq Label_D1D3 ; CPU:$D1BC PRG:11BC F0 15 + jsr $C573 ; CPU:$D1BE PRG:11BE 20 73 C5 + and #$01 ; CPU:$D1C1 PRG:11C1 29 01 + bne Label_D1D3 ; CPU:$D1C3 PRG:11C3 D0 0E +; ----------------------------------------------------------------------------- +; Routine: Label_D1C5 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D1C5: + lda #$01 ; CPU:$D1C5 PRG:11C5 A9 01 + ldy #$00 ; CPU:$D1C7 PRG:11C7 A0 00 +; ----------------------------------------------------------------------------- +; Routine: Label_D1C9 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D1C9: + sta $A3 ; CPU:$D1C9 PRG:11C9 85 A3 + lda #$01 ; CPU:$D1CB PRG:11CB A9 01 + sta $0310,Y ; CPU:$D1CD PRG:11CD 99 10 03 + jmp $D213 ; CPU:$D1D0 PRG:11D0 4C 13 D2 +; ----------------------------------------------------------------------------- +; Routine: Label_D1D3 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D1D3: + lda #$02 ; CPU:$D1D3 PRG:11D3 A9 02 + ldy #$30 ; CPU:$D1D5 PRG:11D5 A0 30 + bne Label_D1C9 ; CPU:$D1D7 PRG:11D7 D0 F0 +; ----------------------------------------------------------------------------- +; Routine: Label_D1D9 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D1D9: + lda #$03 ; CPU:$D1D9 PRG:11D9 A9 03 + sta $A3 ; CPU:$D1DB PRG:11DB 85 A3 + lda #$01 ; CPU:$D1DD PRG:11DD A9 01 + sta $A4 ; CPU:$D1DF PRG:11DF 85 A4 + lda #$50 ; CPU:$D1E1 PRG:11E1 A9 50 + sta $0311 ; CPU:$D1E3 PRG:11E3 8D 11 03 + lda #$B0 ; CPU:$D1E6 PRG:11E6 A9 B0 + sta $0341 ; CPU:$D1E8 PRG:11E8 8D 41 03 + ldx $1B ; CPU:$D1EB PRG:11EB A6 1B + lda $DD05,X ; CPU:$D1ED PRG:11ED BD 05 DD + inc $1B ; CPU:$D1F0 PRG:11F0 E6 1B + ldx #$01 ; CPU:$D1F2 PRG:11F2 A2 01 + cmp #$01 ; CPU:$D1F4 PRG:11F4 C9 01 + beq Label_D205 ; CPU:$D1F6 PRG:11F6 F0 0D + cmp #$02 ; CPU:$D1F8 PRG:11F8 C9 02 + beq Label_D1FF ; CPU:$D1FA PRG:11FA F0 03 + stx $0310 ; CPU:$D1FC PRG:11FC 8E 10 03 +; ----------------------------------------------------------------------------- +; Routine: Label_D1FF +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D1FF: + stx $0340 ; CPU:$D1FF PRG:11FF 8E 40 03 + jmp $D208 ; CPU:$D202 PRG:1202 4C 08 D2 +; ----------------------------------------------------------------------------- +; Routine: Label_D205 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D205: + stx $0310 ; CPU:$D205 PRG:1205 8E 10 03 +; ----------------------------------------------------------------------------- +; Routine: Label_D208 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D208: + ldy #$00 ; CPU:$D208 PRG:1208 A0 00 + jsr $D213 ; CPU:$D20A PRG:120A 20 13 D2 + ldy #$30 ; CPU:$D20D PRG:120D A0 30 + ldx $C1 ; CPU:$D20F PRG:120F A6 C1 + stx $1B ; CPU:$D211 PRG:1211 86 1B +; ----------------------------------------------------------------------------- +; Routine: Label_D213 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D213: + ldx $1B ; CPU:$D213 PRG:1213 A6 1B + sty $1A ; CPU:$D215 PRG:1215 84 1A + lda #$01 ; CPU:$D217 PRG:1217 A9 01 + sta $0300,Y ; CPU:$D219 PRG:1219 99 00 03 + lda #$03 ; CPU:$D21C PRG:121C A9 03 + sta $0312,Y ; CPU:$D21E PRG:121E 99 12 03 + lda $DD05,X ; CPU:$D221 PRG:1221 BD 05 DD + lsr ; CPU:$D224 PRG:1224 4A + lsr ; CPU:$D225 PRG:1225 4A + lsr ; CPU:$D226 PRG:1226 4A + lsr ; CPU:$D227 PRG:1227 4A + cmp #$05 ; CPU:$D228 PRG:1228 C9 05 + bne Label_D23B ; CPU:$D22A PRG:122A D0 0F + jsr $C573 ; CPU:$D22C PRG:122C 20 73 C5 + and #$03 ; CPU:$D22F PRG:122F 29 03 + sta $1D ; CPU:$D231 PRG:1231 85 1D + jsr $C573 ; CPU:$D233 PRG:1233 20 73 C5 + and #$01 ; CPU:$D236 PRG:1236 29 01 + clc ; CPU:$D238 PRG:1238 18 + adc $1D ; CPU:$D239 PRG:1239 65 1D +; ----------------------------------------------------------------------------- +; Routine: Label_D23B +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D23B: + ldy $1A ; CPU:$D23B PRG:123B A4 1A + sta $032A,Y ; CPU:$D23D PRG:123D 99 2A 03 + jsr $D2E2 ; CPU:$D240 PRG:1240 20 E2 D2 + ldy $A3 ; CPU:$D243 PRG:1243 A4 A3 + cpy #$03 ; CPU:$D245 PRG:1245 C0 03 + bne Label_D25E ; CPU:$D247 PRG:1247 D0 15 + ldy $1A ; CPU:$D249 PRG:1249 A4 1A + lda $032A,Y ; CPU:$D24B PRG:124B B9 2A 03 + bne Label_D25E ; CPU:$D24E PRG:124E D0 0E + ldx $1D ; CPU:$D250 PRG:1250 A6 1D + jsr $D2D3 ; CPU:$D252 PRG:1252 20 D3 D2 + lda $1D ; CPU:$D255 PRG:1255 A5 1D + clc ; CPU:$D257 PRG:1257 18 + adc #$62 ; CPU:$D258 PRG:1258 69 62 + tax ; CPU:$D25A PRG:125A AA + jsr $D2D3 ; CPU:$D25B PRG:125B 20 D3 D2 +; ----------------------------------------------------------------------------- +; Routine: Label_D25E +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D25E: + ldy $1A ; CPU:$D25E PRG:125E A4 1A + ldx $1B ; CPU:$D260 PRG:1260 A6 1B + lda $DD05,X ; CPU:$D262 PRG:1262 BD 05 DD + inx ; CPU:$D265 PRG:1265 E8 + stx $C1 ; CPU:$D266 PRG:1266 86 C1 + and #$0F ; CPU:$D268 PRG:1268 29 0F + ldx $C2 ; CPU:$D26A PRG:126A A6 C2 + cpx #$30 ; CPU:$D26C PRG:126C E0 30 + bcc Label_D273 ; CPU:$D26E PRG:126E 90 03 + jsr $D4F4 ; CPU:$D270 PRG:1270 20 F4 D4 +; ----------------------------------------------------------------------------- +; Routine: Label_D273 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D273: + ldy $1A ; CPU:$D273 PRG:1273 A4 1A + sta $0303,Y ; CPU:$D275 PRG:1275 99 03 03 + tax ; CPU:$D278 PRG:1278 AA + lda $DEC1,X ; CPU:$D279 PRG:1279 BD C1 DE + sta $AA ; CPU:$D27C PRG:127C 85 AA + lda #$06 ; CPU:$D27E PRG:127E A9 06 + sta $AB ; CPU:$D280 PRG:1280 85 AB + jsr $DAD2 ; CPU:$D282 PRG:1282 20 D2 DA + ldy $1A ; CPU:$D285 PRG:1285 A4 1A + lda $032A,Y ; CPU:$D287 PRG:1287 B9 2A 03 + clc ; CPU:$D28A PRG:128A 18 + adc $93 ; CPU:$D28B PRG:128B 65 93 + tax ; CPU:$D28D PRG:128D AA + lda $DE48,X ; CPU:$D28E PRG:128E BD 48 DE + sta $030F,Y ; CPU:$D291 PRG:1291 99 0F 03 + txa ; CPU:$D294 PRG:1294 8A + sta $0304,Y ; CPU:$D295 PRG:1295 99 04 03 + ldy $1A ; CPU:$D298 PRG:1298 A4 1A + ldx $0303,Y ; CPU:$D29A PRG:129A BE 03 03 + lda $DECF,X ; CPU:$D29D PRG:129D BD CF DE + sta $03 ; CPU:$D2A0 PRG:12A0 85 03 + ldx $0304,Y ; CPU:$D2A2 PRG:12A2 BE 04 03 + lda $DE7F,X ; CPU:$D2A5 PRG:12A5 BD 7F DE + clc ; CPU:$D2A8 PRG:12A8 18 + jsr $C4AA ; CPU:$D2A9 PRG:12A9 20 AA C4 + ldy $1A ; CPU:$D2AC PRG:12AC A4 1A + sta $0304,Y ; CPU:$D2AE PRG:12AE 99 04 03 + lda #$00 ; CPU:$D2B1 PRG:12B1 A9 00 + rol ; CPU:$D2B3 PRG:12B3 2A + sta $0303,Y ; CPU:$D2B4 PRG:12B4 99 03 03 + lda $A3 ; CPU:$D2B7 PRG:12B7 A5 A3 + cmp #$03 ; CPU:$D2B9 PRG:12B9 C9 03 + bne Label_D2D2 ; CPU:$D2BB PRG:12BB D0 15 + lda $0304,Y ; CPU:$D2BD PRG:12BD B9 04 03 + sta $03 ; CPU:$D2C0 PRG:12C0 85 03 + clc ; CPU:$D2C2 PRG:12C2 18 + lda #$10 ; CPU:$D2C3 PRG:12C3 A9 10 + jsr $C4AA ; CPU:$D2C5 PRG:12C5 20 AA C4 + ldx $1A ; CPU:$D2C8 PRG:12C8 A6 1A + bcc Label_D2CF ; CPU:$D2CA PRG:12CA 90 03 + inc $0303,X ; CPU:$D2CC PRG:12CC FE 03 03 +; ----------------------------------------------------------------------------- +; Routine: Label_D2CF +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D2CF: + sta $0304,X ; CPU:$D2CF PRG:12CF 9D 04 03 +; ----------------------------------------------------------------------------- +; Routine: Label_D2D2 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D2D2: + rts ; CPU:$D2D2 PRG:12D2 60 +; ----------------------------------------------------------------------------- +; Routine: Label_D2D3 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D2D3: + ldy #$00 ; CPU:$D2D3 PRG:12D3 A0 00 +; ----------------------------------------------------------------------------- +; Routine: Label_D2D5 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D2D5: + lda $DF5D,Y ; CPU:$D2D5 PRG:12D5 B9 5D DF + sta $0400,X ; CPU:$D2D8 PRG:12D8 9D 00 04 + inx ; CPU:$D2DB PRG:12DB E8 + iny ; CPU:$D2DC PRG:12DC C8 + cpy #$09 ; CPU:$D2DD PRG:12DD C0 09 + bne Label_D2D5 ; CPU:$D2DF PRG:12DF D0 F4 + rts ; CPU:$D2E1 PRG:12E1 60 +; ----------------------------------------------------------------------------- +; Routine: Label_D2E2 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D2E2: + pha ; CPU:$D2E2 PRG:12E2 48 + asl ; CPU:$D2E3 PRG:12E3 0A + asl ; CPU:$D2E4 PRG:12E4 0A + sta $1C ; CPU:$D2E5 PRG:12E5 85 1C + asl ; CPU:$D2E7 PRG:12E7 0A + clc ; CPU:$D2E8 PRG:12E8 18 + adc $1C ; CPU:$D2E9 PRG:12E9 65 1C + tax ; CPU:$D2EB PRG:12EB AA + lda #$0A ; CPU:$D2EC PRG:12EC A9 0A + sta $1C ; CPU:$D2EE PRG:12EE 85 1C + ldy $1A ; CPU:$D2F0 PRG:12F0 A4 1A +; ----------------------------------------------------------------------------- +; Routine: Label_D2F2 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D2F2: + lda $E102,X ; CPU:$D2F2 PRG:12F2 BD 02 E1 + sta $0320,Y ; CPU:$D2F5 PRG:12F5 99 20 03 + iny ; CPU:$D2F8 PRG:12F8 C8 + inx ; CPU:$D2F9 PRG:12F9 E8 + dec $1C ; CPU:$D2FA PRG:12FA C6 1C + bne Label_D2F2 ; CPU:$D2FC PRG:12FC D0 F4 + pla ; CPU:$D2FE PRG:12FE 68 + asl ; CPU:$D2FF PRG:12FF 0A + tax ; CPU:$D300 PRG:1300 AA + lda $DEDD,X ; CPU:$D301 PRG:1301 BD DD DE + sta $14 ; CPU:$D304 PRG:1304 85 14 + lda $DEDE,X ; CPU:$D306 PRG:1306 BD DE DE + sta $15 ; CPU:$D309 PRG:1309 85 15 + ldx #$00 ; CPU:$D30B PRG:130B A2 00 + ldy $1A ; CPU:$D30D PRG:130D A4 1A + beq Label_D313 ; CPU:$D30F PRG:130F F0 02 + ldx #$80 ; CPU:$D311 PRG:1311 A2 80 +; ----------------------------------------------------------------------------- +; Routine: Label_D313 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D313: + ldy #$00 ; CPU:$D313 PRG:1313 A0 00 + stx $1D ; CPU:$D315 PRG:1315 86 1D +; ----------------------------------------------------------------------------- +; Routine: Label_D317 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D317: + lda ($14),Y ; CPU:$D317 PRG:1317 B1 14 + sta $0400,X ; CPU:$D319 PRG:1319 9D 00 04 + inx ; CPU:$D31C PRG:131C E8 + iny ; CPU:$D31D PRG:131D C8 + cmp #$FA ; CPU:$D31E PRG:131E C9 FA + bne Label_D365 ; CPU:$D320 PRG:1320 D0 43 + lda $3F ; CPU:$D322 PRG:1322 A5 3F + cmp #$02 ; CPU:$D324 PRG:1324 C9 02 + bne Label_D365 ; CPU:$D326 PRG:1326 D0 3D + sty $11 ; CPU:$D328 PRG:1328 84 11 + ldy $1A ; CPU:$D32A PRG:132A A4 1A + lda $0317,Y ; CPU:$D32C PRG:132C B9 17 03 + cmp #$04 ; CPU:$D32F PRG:132F C9 04 + beq Label_D363 ; CPU:$D331 PRG:1331 F0 30 + lda $032A,Y ; CPU:$D333 PRG:1333 B9 2A 03 + cmp #$02 ; CPU:$D336 PRG:1336 C9 02 + beq Label_D363 ; CPU:$D338 PRG:1338 F0 29 + ldy #$00 ; CPU:$D33A PRG:133A A0 00 +; ----------------------------------------------------------------------------- +; Routine: Label_D33C +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D33C: + lda $E0BD,Y ; CPU:$D33C PRG:133C B9 BD E0 + sta $0400,X ; CPU:$D33F PRG:133F 9D 00 04 + inx ; CPU:$D342 PRG:1342 E8 + iny ; CPU:$D343 PRG:1343 C8 + cmp #$FD ; CPU:$D344 PRG:1344 C9 FD + bne Label_D33C ; CPU:$D346 PRG:1346 D0 F4 + ldy $1A ; CPU:$D348 PRG:1348 A4 1A + lda $032A,Y ; CPU:$D34A PRG:134A B9 2A 03 + ldy #$51 ; CPU:$D34D PRG:134D A0 51 + cmp #$00 ; CPU:$D34F PRG:134F C9 00 + beq Label_D365 ; CPU:$D351 PRG:1351 F0 12 + ldy #$0E ; CPU:$D353 PRG:1353 A0 0E + cmp #$01 ; CPU:$D355 PRG:1355 C9 01 + beq Label_D365 ; CPU:$D357 PRG:1357 F0 0C + ldy #$11 ; CPU:$D359 PRG:1359 A0 11 + cmp #$03 ; CPU:$D35B PRG:135B C9 03 + beq Label_D365 ; CPU:$D35D PRG:135D F0 06 + ldy #$51 ; CPU:$D35F PRG:135F A0 51 + bne Label_D365 ; CPU:$D361 PRG:1361 D0 02 +; ----------------------------------------------------------------------------- +; Routine: Label_D363 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D363: + ldy $11 ; CPU:$D363 PRG:1363 A4 11 +; ----------------------------------------------------------------------------- +; Routine: Label_D365 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D365: + cmp #$FC ; CPU:$D365 PRG:1365 C9 FC + bne Label_D317 ; CPU:$D367 PRG:1367 D0 AE + stx $1C ; CPU:$D369 PRG:1369 86 1C + rts ; CPU:$D36B PRG:136B 60 +; ----------------------------------------------------------------------------- +; Routine: Label_D36C +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D36C: + lda $C3 ; CPU:$D36C PRG:136C A5 C3 + sta $0501 ; CPU:$D36E PRG:136E 8D 01 05 + lda #$11 ; CPU:$D371 PRG:1371 A9 11 + sta $0500 ; CPU:$D373 PRG:1373 8D 00 05 + ldx #$55 ; CPU:$D376 PRG:1376 A2 55 + ldy #$23 ; CPU:$D378 PRG:1378 A0 23 + lda $3F ; CPU:$D37A PRG:137A A5 3F + cmp #$02 ; CPU:$D37C PRG:137C C9 02 + bne Label_D382 ; CPU:$D37E PRG:137E D0 02 + ldx #$5C ; CPU:$D380 PRG:1380 A2 5C +; ----------------------------------------------------------------------------- +; Routine: Label_D382 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D382: + jmp $D5AF ; CPU:$D382 PRG:1382 4C AF D5 + lda #$8A ; CPU:$D385 PRG:1385 A9 8A + ldy #$00 ; CPU:$D387 PRG:1387 A0 00 + jsr $D396 ; CPU:$D389 PRG:1389 20 96 D3 + lda #$95 ; CPU:$D38C PRG:138C A9 95 + ldy #$30 ; CPU:$D38E PRG:138E A0 30 + jsr $D396 ; CPU:$D390 PRG:1390 20 96 D3 + jmp $C5D1 ; CPU:$D393 PRG:1393 4C D1 C5 +; ----------------------------------------------------------------------------- +; Routine: Label_D396 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D396: + sta Zp00 ; CPU:$D396 PRG:1396 85 00 + lda #$20 ; CPU:$D398 PRG:1398 A9 20 + sta Zp01 ; CPU:$D39A PRG:139A 85 01 + lda #$31 ; CPU:$D39C PRG:139C A9 31 + sta $0500 ; CPU:$D39E PRG:139E 8D 00 05 + lda #$FF ; CPU:$D3A1 PRG:13A1 A9 FF + sta $0501 ; CPU:$D3A3 PRG:13A3 8D 01 05 + sta $0503 ; CPU:$D3A6 PRG:13A6 8D 03 05 + lda #$21 ; CPU:$D3A9 PRG:13A9 A9 21 + sta $0502 ; CPU:$D3AB PRG:13AB 8D 02 05 + lda $0300,Y ; CPU:$D3AE PRG:13AE B9 00 03 + beq Label_D3BF ; CPU:$D3B1 PRG:13B1 F0 0C + ldx #$83 ; CPU:$D3B3 PRG:13B3 A2 83 + tya ; CPU:$D3B5 PRG:13B5 98 + beq Label_D3B9 ; CPU:$D3B6 PRG:13B6 F0 01 + inx ; CPU:$D3B8 PRG:13B8 E8 +; ----------------------------------------------------------------------------- +; Routine: Label_D3B9 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D3B9: + stx $0501 ; CPU:$D3B9 PRG:13B9 8E 01 05 + stx $0503 ; CPU:$D3BC PRG:13BC 8E 03 05 +; ----------------------------------------------------------------------------- +; Routine: Label_D3BF +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D3BF: + jmp $D5B3 ; CPU:$D3BF PRG:13BF 4C B3 D5 +; ----------------------------------------------------------------------------- +; Routine: Label_D3C2 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D3C2: + ldx #$38 ; CPU:$D3C2 PRG:13C2 A2 38 +; ----------------------------------------------------------------------------- +; Routine: Label_D3C4 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D3C4: + lda $EB0F,X ; CPU:$D3C4 PRG:13C4 BD 0F EB + sta $0500,X ; CPU:$D3C7 PRG:13C7 9D 00 05 + dex ; CPU:$D3CA PRG:13CA CA + bpl Label_D3C4 ; CPU:$D3CB PRG:13CB 10 F7 + ldx #$08 ; CPU:$D3CD PRG:13CD A2 08 +; ----------------------------------------------------------------------------- +; Routine: Label_D3CF +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D3CF: + lda $F038,X ; CPU:$D3CF PRG:13CF BD 38 F0 + sta $0510,X ; CPU:$D3D2 PRG:13D2 9D 10 05 + dex ; CPU:$D3D5 PRG:13D5 CA + bpl Label_D3CF ; CPU:$D3D6 PRG:13D6 10 F7 + ldx #$0A ; CPU:$D3D8 PRG:13D8 A2 0A + ldy #$21 ; CPU:$D3DA PRG:13DA A0 21 + lda $3F ; CPU:$D3DC PRG:13DC A5 3F + cmp #$02 ; CPU:$D3DE PRG:13DE C9 02 + bne Label_D3FD ; CPU:$D3E0 PRG:13E0 D0 1B + ldx #$AB ; CPU:$D3E2 PRG:13E2 A2 AB + jsr $D5AF ; CPU:$D3E4 PRG:13E4 20 AF D5 + jsr $C5D1 ; CPU:$D3E7 PRG:13E7 20 D1 C5 + ldx #$0B ; CPU:$D3EA PRG:13EA A2 0B + lda #$24 ; CPU:$D3EC PRG:13EC A9 24 +; ----------------------------------------------------------------------------- +; Routine: Label_D3EE +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D3EE: + sta $0501,X ; CPU:$D3EE PRG:13EE 9D 01 05 + dex ; CPU:$D3F1 PRG:13F1 CA + bpl Label_D3EE ; CPU:$D3F2 PRG:13F2 10 FA + lda #$43 ; CPU:$D3F4 PRG:13F4 A9 43 + sta $0500 ; CPU:$D3F6 PRG:13F6 8D 00 05 + ldx #$A8 ; CPU:$D3F9 PRG:13F9 A2 A8 + ldy #$21 ; CPU:$D3FB PRG:13FB A0 21 +; ----------------------------------------------------------------------------- +; Routine: Label_D3FD +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D3FD: + jmp $D5AF ; CPU:$D3FD PRG:13FD 4C AF D5 + lda $C3 ; CPU:$D400 PRG:1400 A5 C3 + bne Label_D416 ; CPU:$D402 PRG:1402 D0 12 + jsr $D955 ; CPU:$D404 PRG:1404 20 55 D9 + jsr $D97C ; CPU:$D407 PRG:1407 20 7C D9 + jsr $D3C2 ; CPU:$D40A PRG:140A 20 C2 D3 + ldx #$06 ; CPU:$D40D PRG:140D A2 06 + lda #$30 ; CPU:$D40F PRG:140F A9 30 + jsr $D8FF ; CPU:$D411 PRG:1411 20 FF D8 + pla ; CPU:$D414 PRG:1414 68 + pla ; CPU:$D415 PRG:1415 68 +; ----------------------------------------------------------------------------- +; Routine: Label_D416 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D416: + rts ; CPU:$D416 PRG:1416 60 +; ---- data $D417-$D4F3 (221 bytes) ---- + .byte $A9, Zp00, $85, $1C, $A6, $6D, $A4, $1C, $B9, $86, Zp00, $A4, $A5, $F0, $03, $18 ; CPU:$D417 PRG:1417 A9 00 85 1C A6 6D A4 1C B9 86 00 A4 A5 F0 03 18 + .byte $69, $80, $A8, $BD, $55, $E2, $C9, $AA, $F0, Ctrl1, $99, Zp00, $02, $E8, $BD, $55 ; CPU:$D427 PRG:1427 69 80 A8 BD 55 E2 C9 AA F0 16 99 00 02 E8 BD 55 + .byte $E2, $99, Zp01, $02, $E8, $E6, $1C, $A5, $1C, $C9, $04, $D0, $D9, $86, $6D, $60 ; CPU:$D437 PRG:1437 E2 99 01 02 E8 E6 1C A5 1C C9 04 D0 D9 86 6D 60 + .byte $A9, $04, $85, $61, $60, $A2, $03, $B5, $C4, $95, $C8, $CA, $10, $F9, $A5, $3F ; CPU:$D447 PRG:1447 A9 04 85 61 60 A2 03 B5 C4 95 C8 CA 10 F9 A5 3F + .byte $0A, $0A, $A8, $84, $1F, $A2, Zp00, $B9, $F0, $05, $95, $C4, $C8, $E8, $E0, $04 ; CPU:$D457 PRG:1457 0A 0A A8 84 1F A2 00 B9 F0 05 95 C4 C8 E8 E0 04 + .byte $D0, $F5, $A9, $F0, $85, Zp00, NmiPhase, $FC, $C4, $A4, $1F, $A2, Zp00, $B5, $C4, $99 ; CPU:$D467 PRG:1467 D0 F5 A9 F0 85 00 20 FC C4 A4 1F A2 00 B5 C4 99 + .byte $F0, $05, $C8, $E8, $E0, $04, $D0, $F5, $A0, Zp00, $84, Mode38, $C8, $84, GameMode, $60 ; CPU:$D477 PRG:1477 F0 05 C8 E8 E0 04 D0 F5 A0 00 84 38 C8 84 30 60 + .byte $A5, $A7, $F0, $2C, $E6, $A7, $A5, $A7, $C9, $18, $D0, $14, $A0, Zp00, $84, $A7 ; CPU:$D487 PRG:1487 A5 A7 F0 2C E6 A7 A5 A7 C9 18 D0 14 A0 00 84 A7 + .byte $A5, $AC, $A0, Zp09, $C9, Zp01, $F0, Ctrl1, $A0, $07, $C9, $02, $F0, $10, $D0, $04 ; CPU:$D497 PRG:1497 A5 AC A0 09 C9 01 F0 16 A0 07 C9 02 F0 10 D0 04 + .byte $29, $03, $D0, $0C, $A0, Zp01, $A5, $A7, $29, $04, $F0, $02, $A0, $06, $84, $23 ; CPU:$D4A7 PRG:14A7 29 03 D0 0C A0 01 A5 A7 29 04 F0 02 A0 06 84 23 + .byte $60, $A5, $C2, $85, $03, $A9, Zp01, $18, NmiPhase, $AA, $C4, $85, $C2, $A9, $12, $8D ; CPU:$D4B7 PRG:14B7 60 A5 C2 85 03 A9 01 18 20 AA C4 85 C2 A9 12 8D + .byte Zp00, $05, $A5, $C2, $29, $F0, $D0, $04, $A9, $FF, $D0, $04, $4A, $4A, $4A, $4A ; CPU:$D4C7 PRG:14C7 00 05 A5 C2 29 F0 D0 04 A9 FF D0 04 4A 4A 4A 4A + .byte $8D, Zp01, $05, $A5, $C2, $29, $0F, $8D, $02, $05, $A2, $34, $A0, $23, $A5, $3F ; CPU:$D4D7 PRG:14D7 8D 01 05 A5 C2 29 0F 8D 02 05 A2 34 A0 23 A5 3F + .byte $C9, $02, $D0, $02, $A2, $3B, $86, Zp00, $84, Zp01, $4C, $C4, $D6 ; CPU:$D4E7 PRG:14E7 C9 02 D0 02 A2 3B 86 00 84 01 4C C4 D6 +; ----------------------------------------------------------------------------- +; Routine: Label_D4F4 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D4F4: + jsr $C573 ; CPU:$D4F4 PRG:14F4 20 73 C5 + and #$01 ; CPU:$D4F7 PRG:14F7 29 01 + sta $1D ; CPU:$D4F9 PRG:14F9 85 1D + jsr $C573 ; CPU:$D4FB PRG:14FB 20 73 C5 + and #$07 ; CPU:$D4FE PRG:14FE 29 07 + clc ; CPU:$D500 PRG:1500 18 + adc $1D ; CPU:$D501 PRG:1501 65 1D + rts ; CPU:$D503 PRG:1503 60 +; ---- data $D504-$D5AE (171 bytes) ---- + .byte $A2, Zp00, NmiPhase, $0B, $D5, $A2, GameMode, $BC, $12, $03, $F0, $34, $88, $F0, $31, $88 ; CPU:$D504 PRG:1504 A2 00 20 0B D5 A2 30 BC 12 03 F0 34 88 F0 31 88 + .byte $F0, Timer2F, $88, $F0, $32, $88, $F0, $0F, $A5, Timer2F, $29, $07, $D0, NmiFlag, $A5, Timer2F ; CPU:$D514 PRG:1514 F0 2F 88 F0 32 88 F0 0F A5 2F 29 07 D0 22 A5 2F + .byte $29, Zp08, $F0, Zp08, $4C, $50, $D5, $A9, Zp00, $9D, $12, $03, $86, $1C, $A9, $27 ; CPU:$D524 PRG:1524 29 08 F0 08 4C 50 D5 A9 00 9D 12 03 86 1C A9 27 + .byte $8D, Zp00, $05, $A9, $FF, $A0, $14, $99, Zp01, $05, $88, $10, $FA, $4C, $A3, $D5 ; CPU:$D534 PRG:1534 8D 00 05 A9 FF A0 14 99 01 05 88 10 FA 4C A3 D5 + .byte $60, NmiPhase, $D9, $D5, $4C, $50, $D5, $A9, Zp00, $9D, $12, $03, $BD, $12, $03, $C9 ; CPU:$D544 PRG:1544 60 20 D9 D5 4C 50 D5 A9 00 9D 12 03 BD 12 03 C9 + .byte Zp01, $F0, $04, $C9, $02, $D0, $06, $BD, $10, $03, $D0, Zp01, $60, $86, $1C, $A0 ; CPU:$D554 PRG:1554 01 F0 04 C9 02 D0 06 BD 10 03 D0 01 60 86 1C A0 + .byte Zp00, $BD, $13, $03, $29, $F0, $F0, Zp08, $A0, $04, $C9, $10, $F0, $02, $A0, Zp08 ; CPU:$D564 PRG:1564 00 BD 13 03 29 F0 F0 08 A0 04 C9 10 F0 02 A0 08 + .byte $A9, $27, $8D, Zp00, $05, $A2, Zp01, NmiPhase, $BE, $D5, $A9, $FF, $8D, $03, $05, $A9 ; CPU:$D574 PRG:1574 A9 27 8D 00 05 A2 01 20 BE D5 A9 FF 8D 03 05 A9 + .byte $39, $8D, $0A, $05, $E8, $A4, $1C, $B9, $13, $03, $29, $0F, $0A, $0A, $A8, NmiPhase ; CPU:$D584 PRG:1584 39 8D 0A 05 E8 A4 1C B9 13 03 29 0F 0A 0A A8 20 + .byte $BE, $D5, $A4, $1C, $B9, $14, $03, $29, $F0, $4A, $4A, $A8, NmiPhase, $BE, $D5, $A2 ; CPU:$D594 PRG:1594 BE D5 A4 1C B9 14 03 29 F0 4A 4A A8 20 BE D5 A2 + .byte $62, $A0, NmiPhase, $A5, $1C, $F0, $04, $A2, $77, $A0, NmiPhase ; CPU:$D5A4 PRG:15A4 62 A0 20 A5 1C F0 04 A2 77 A0 20 +; ----------------------------------------------------------------------------- +; Routine: Label_D5AF +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D5AF: + stx Zp00 ; CPU:$D5AF PRG:15AF 86 00 + sty Zp01 ; CPU:$D5B1 PRG:15B1 84 01 +; ----------------------------------------------------------------------------- +; Routine: Label_D5B3 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D5B3: + ldx #$00 ; CPU:$D5B3 PRG:15B3 A2 00 + ldy #$05 ; CPU:$D5B5 PRG:15B5 A0 05 + stx $02 ; CPU:$D5B7 PRG:15B7 86 02 + sty $03 ; CPU:$D5B9 PRG:15B9 84 03 + jmp $C3B9 ; CPU:$D5BB PRG:15BB 4C B9 C3 + lda $E311,Y ; CPU:$D5BE PRG:15BE B9 11 E3 + sta $0500,X ; CPU:$D5C1 PRG:15C1 9D 00 05 + inx ; CPU:$D5C4 PRG:15C4 E8 + lda $E312,Y ; CPU:$D5C5 PRG:15C5 B9 12 E3 + sta $0500,X ; CPU:$D5C8 PRG:15C8 9D 00 05 + inx ; CPU:$D5CB PRG:15CB E8 + lda $E313,Y ; CPU:$D5CC PRG:15CC B9 13 E3 + sta $0505,X ; CPU:$D5CF PRG:15CF 9D 05 05 + lda $E314,Y ; CPU:$D5D2 PRG:15D2 B9 14 E3 + sta $0506,X ; CPU:$D5D5 PRG:15D5 9D 06 05 + rts ; CPU:$D5D8 PRG:15D8 60 +; ---- data $D5D9-$D8D6 (766 bytes) ---- + .byte $BD, $14, $03, $85, $03, $BC, $15, $03, $B9, $4A, $E2, $C8, $C9, $AA, $D0, $04 ; CPU:$D5D9 PRG:15D9 BD 14 03 85 03 BC 15 03 B9 4A E2 C8 C9 AA D0 04 + .byte $A0, Zp00, $F0, $F4, $48, $98, $9D, $15, $03, $68, $18, $86, $1B, NmiPhase, $AA, $C4 ; CPU:$D5E9 PRG:15E9 A0 00 F0 F4 48 98 9D 15 03 68 18 86 1B 20 AA C4 + .byte $A6, $1B, $9D, $14, $03, $90, $52, $BD, $13, $03, $85, $03, $18, $A9, Zp01, $86 ; CPU:$D5F9 PRG:15F9 A6 1B 9D 14 03 90 52 BD 13 03 85 03 18 A9 01 86 + .byte $1B, NmiPhase, $AA, $C4, $A6, $1B, $9D, $13, $03, $DD, $0F, $03, $D0, $3B, $A9, Zp01 ; CPU:$D609 PRG:1609 1B 20 AA C4 A6 1B 9D 13 03 DD 0F 03 D0 3B A9 01 + .byte $9D, $12, $03, $A9, Zp00, $9D, $14, $03, $A5, $3F, $C9, $02, $F0, $2B, $BD, Zp01 ; CPU:$D619 PRG:1619 9D 12 03 A9 00 9D 14 03 A5 3F C9 02 F0 2B BD 01 + .byte $03, $C9, $02, $D0, $24, $86, $1C, $A9, $27, $8D, Zp00, $05, $A2, $0D, $A9, $FF ; CPU:$D629 PRG:1629 03 C9 02 D0 24 86 1C A9 27 8D 00 05 A2 0D A9 FF + .byte $9D, Zp01, $05, $CA, $10, $FA, $A2, Zp08, $A0, $03, $BD, Mode38, $F0, $99, $0A, $05 ; CPU:$D639 PRG:1639 9D 01 05 CA 10 FA A2 08 A0 03 BD 38 F0 99 0A 05 + .byte $CA, $88, $10, $F6, NmiPhase, $A3, $D5, $68, $68, $60, $A2, $02, $A9, $23, $A0, Zp00 ; CPU:$D649 PRG:1649 CA 88 10 F6 20 A3 D5 68 68 60 A2 02 A9 23 A0 00 + .byte NmiPhase, $68, $D6, $A2, $18, $A9, $23, $A0, GameMode, NmiPhase, $68, $D6, $4C, $D1, $C5, $84 ; CPU:$D659 PRG:1659 20 68 D6 A2 18 A9 23 A0 30 20 68 D6 4C D1 C5 84 + .byte $1A, $86, Zp00, $85, Zp01, $A2, $11, $A9, $FF, $9D, Zp01, $05, $CA, $10, $FA, $B9 ; CPU:$D669 PRG:1669 1A 86 00 85 01 A2 11 A9 FF 9D 01 05 CA 10 FA B9 + .byte Zp00, $03, $F0, $3F, $A2, $11, $BD, $C7, $EB, $9D, Zp01, $05, $CA, $10, $F7, $A2 ; CPU:$D679 PRG:1679 00 03 F0 3F A2 11 BD C7 EB 9D 01 05 CA 10 F7 A2 + .byte Zp00, $B9, $03, $03, $F0, $07, $0A, $AA, $A0, $02, NmiPhase, $21, $D8, $A2, Zp01, $A4 ; CPU:$D689 PRG:1689 00 B9 03 03 F0 07 0A AA A0 02 20 21 D8 A2 01 A4 + .byte $1A, $B9, $04, $03, $29, $F0, $D0, $04, $E0, Zp00, $F0, Zp09, $4A, $4A, $4A, $AA ; CPU:$D699 PRG:1699 1A B9 04 03 29 F0 D0 04 E0 00 F0 09 4A 4A 4A AA + .byte $A0, $03, NmiPhase, $21, $D8, $A4, $1A, $B9, $04, $03, $29, $0F, $0A, $AA, $A0, $04 ; CPU:$D6A9 PRG:16A9 A0 03 20 21 D8 A4 1A B9 04 03 29 0F 0A AA A0 04 + .byte NmiPhase, $21, $D8, $A9, $36, $8D, Zp00, $05, $4C, $B3, $D5, NmiPhase, $B3, $D5, $4C, $D1 ; CPU:$D6B9 PRG:16B9 20 21 D8 A9 36 8D 00 05 4C B3 D5 20 B3 D5 4C D1 + .byte $C5, $A2, $3C, $A9, $24, $9D, Zp01, $05, $CA, $10, $FA, $A9, $4F, $8D, Zp00, $05 ; CPU:$D6C9 PRG:16C9 C5 A2 3C A9 24 9D 01 05 CA 10 FA A9 4F 8D 00 05 + .byte $A2, $0A, $A0, $21, $86, Zp00, $84, Zp01, $4C, $C4, $D6, $A4, $AC, $D0, Zp01, $60 ; CPU:$D6D9 PRG:16D9 A2 0A A0 21 86 00 84 01 4C C4 D6 A4 AC D0 01 60 + .byte $A5, $AD, $F0, $03, $4C, $92, $D7, $E6, $AD, $A9, Zp00, $8D, $0E, $03, $8D, $3E ; CPU:$D6E9 PRG:16E9 A5 AD F0 03 4C 92 D7 E6 AD A9 00 8D 0E 03 8D 3E + .byte $03, $88, $F0, $5A, $A2, Mode38, $BD, $0F, $EB, $9D, Zp00, $05, $CA, $10, $F7, $88 ; CPU:$D6F9 PRG:16F9 03 88 F0 5A A2 38 BD 0F EB 9D 00 05 CA 10 F7 88 + .byte $F0, $0D, $A2, Mode38, $BD, $8E, $EB, $9D, Zp00, $05, $CA, $10, $F7, GameMode, $04, $A9 ; CPU:$D709 PRG:1709 F0 0D A2 38 BD 8E EB 9D 00 05 CA 10 F7 30 04 A9 + .byte $07, $85, $23, $A2, $14, $A5, $A4, $D0, $0B, $A0, $2D, $AD, $02, $03, $D0, $13 ; CPU:$D719 PRG:1719 07 85 23 A2 14 A5 A4 D0 0B A0 2D AD 02 03 D0 13 + .byte $A0, $33, $D0, Zp09, $A0, GameMode, $AD, $02, $03, $C9, $02, $D0, $06, $A2, $1A, $A9 ; CPU:$D729 PRG:1729 A0 33 D0 09 A0 30 AD 02 03 C9 02 D0 06 A2 1A A9 + .byte $7C, $D0, $02, $A9, $7D, $85, $1C, $A5, $AC, $C9, $03, $F0, $02, $A6, $1C, $8A ; CPU:$D739 PRG:1739 7C D0 02 A9 7D 85 1C A5 AC C9 03 F0 02 A6 1C 8A + .byte $99, Zp00, $05, $A2, $0A, $A0, $21, $86, Zp00, $84, Zp01, $4C, $C4, $D6, $A9, Zp09 ; CPU:$D749 PRG:1749 99 00 05 A2 0A A0 21 86 00 84 01 4C C4 D6 A9 09 + .byte $85, $23, $A2, $1C, $BD, $48, $EB, $9D, Zp00, $05, $CA, $10, $F7, $A2, $0A, $A4 ; CPU:$D759 PRG:1759 85 23 A2 1C BD 48 EB 9D 00 05 CA 10 F7 A2 0A A4 + .byte $BE, $F0, $02, $A2, $11, $B9, $1D, $03, $C9, $6C, $90, Zp08, $C9, $80, $90, $07 ; CPU:$D769 PRG:1769 BE F0 02 A2 11 B9 1D 03 C9 6C 90 08 C9 80 90 07 + .byte $C9, $A4, $B0, $03, $CE, $19, $05, $A0, Zp00, $A5, $BE, $D0, $02, $A0, GameMode, $A9 ; CPU:$D779 PRG:1779 C9 A4 B0 03 CE 19 05 A0 00 A5 BE D0 02 A0 30 A9 + .byte Zp01, $99, $0E, $03, $86, Zp00, $4C, $4E, $D7, $C0, Zp01, $D0, $33, $A5, $AF, $E6 ; CPU:$D789 PRG:1789 01 99 0E 03 86 00 4C 4E D7 C0 01 D0 33 A5 AF E6 + .byte $AF, $29, $03, $D0, $2B, $A2, $82, $A0, $EB, $A5, $AF, $29, $04, $D0, $04, $A2 ; CPU:$D799 PRG:1799 AF 29 03 D0 2B A2 82 A0 EB A5 AF 29 04 D0 04 A2 + .byte $88, $A0, $EB, $A5, $BE, $D0, $04, $A9, $2B, $D0, $02, $A9, $32, NmiPhase, $BC, $D7 ; CPU:$D7A9 PRG:17A9 88 A0 EB A5 BE D0 04 A9 2B D0 02 A9 32 20 BC D7 + .byte $4C, $D1, $C5, $86, $02, $84, $03, $85, Zp00, $A9, $21, $85, Zp01, $4C, $B9, $C3 ; CPU:$D7B9 PRG:17B9 4C D1 C5 86 02 84 03 85 00 A9 21 85 01 4C B9 C3 + .byte $60, $A2, $C3, $A9, NmiPhase, $A0, Zp00, NmiPhase, $DF, $D7, $A2, $D8, $A9, NmiPhase, $A0, GameMode ; CPU:$D7C9 PRG:17C9 60 A2 C3 A9 20 A0 00 20 DF D7 A2 D8 A9 20 A0 30 + .byte NmiPhase, $DF, $D7, $4C, $D1, $C5, $86, Zp00, $85, Zp01, $A9, $FF, $A2, $0B, $9D, Zp01 ; CPU:$D7D9 PRG:17D9 20 DF D7 4C D1 C5 86 00 85 01 A9 FF A2 0B 9D 01 + .byte $05, $CA, $10, $FA, $B9, Zp00, $03, $F0, $27, $B9, $0F, $03, $85, $1C, $29, $F0 ; CPU:$D7E9 PRG:17E9 05 CA 10 FA B9 00 03 F0 27 B9 0F 03 85 1C 29 F0 + .byte $4A, $4A, $4A, $AA, $A0, Zp01, NmiPhase, $21, $D8, $A5, $1C, $29, $0F, $0A, $AA, $A0 ; CPU:$D7F9 PRG:17F9 4A 4A 4A AA A0 01 20 21 D8 A5 1C 29 0F 0A AA A0 + .byte $04, NmiPhase, $21, $D8, $A2, Zp00, $A0, $06, NmiPhase, $21, $D8, $A9, $39, $8D, Zp08, $05 ; CPU:$D809 PRG:1809 04 20 21 D8 A2 00 A0 06 20 21 D8 A9 39 8D 08 05 + .byte $A9, $26, $8D, Zp00, $05, $4C, $B3, $D5, $BD, $39, $E3, $99, Zp00, $05, $BD, $3A ; CPU:$D819 PRG:1819 A9 26 8D 00 05 4C B3 D5 BD 39 E3 99 00 05 BD 3A + .byte $E3, $99, $06, $05, $60, $A5, $A3, $29, Zp01, $F0, $07, $A2, Zp00, $A0, $0A, NmiPhase ; CPU:$D829 PRG:1829 E3 99 06 05 60 A5 A3 29 01 F0 07 A2 00 A0 0A 20 + .byte $49, $D8, $A5, $A3, $29, $02, $F0, $07, $A2, GameMode, $A0, $11, NmiPhase, $49, $D8, $60 ; CPU:$D839 PRG:1839 49 D8 A5 A3 29 02 F0 07 A2 30 A0 11 20 49 D8 60 + .byte $BD, $10, $03, $F0, $FA, $A9, $80, $9D, $0E, $03, $A2, $1D, $BD, $65, $EB, $9D ; CPU:$D849 PRG:1849 BD 10 03 F0 FA A9 80 9D 0E 03 A2 1D BD 65 EB 9D + .byte Zp00, $05, $CA, $10, $F7, $A5, $A3, $C9, $02, $F0, Zp08, $C9, Zp01, $F0, Zp09, $C0 ; CPU:$D859 PRG:1859 00 05 CA 10 F7 A5 A3 C9 02 F0 08 C9 01 F0 09 C0 + .byte $0A, $D0, $05, $A2, $7C, $8E, $19, $05, $98, $A2, Zp00, $A0, $05, NmiPhase, $BC, $D7 ; CPU:$D869 PRG:1869 0A D0 05 A2 7C 8E 19 05 98 A2 00 A0 05 20 BC D7 + .byte $4C, $D1, $C5, $A5, $21, $D0, $2C, $AD, $0E, $03, $F0, Zp09, $CE, $0E, $03, $D0 ; CPU:$D879 PRG:1879 4C D1 C5 A5 21 D0 2C AD 0E 03 F0 09 CE 0E 03 D0 + .byte $04, $A0, $0A, $D0, $0C, $AD, $3E, $03, $F0, $19, $CE, $3E, $03, $D0, $14, $A0 ; CPU:$D889 PRG:1889 04 A0 0A D0 0C AD 3E 03 F0 19 CE 3E 03 D0 14 A0 + .byte $11, $A9, $47, $8D, Zp00, $05, $A2, $1C, $A9, $24, $9D, Zp01, $05, $CA, $10, $FA ; CPU:$D899 PRG:1899 11 A9 47 8D 00 05 A2 1C A9 24 9D 01 05 CA 10 FA + .byte $4C, $71, $D8, $60, NmiPhase, $EA, $CB, $A0, $02, $A5, $84, $A6, $A5, $F0, $03, $18 ; CPU:$D8A9 PRG:18A9 4C 71 D8 60 20 EA CB A0 02 A5 84 A6 A5 F0 03 18 + .byte $69, $80, $AA, $A9, $FD, $9D, Zp00, $02, $A9, $02, $9D, Zp01, $02, $A5, $85, $88 ; CPU:$D8B9 PRG:18B9 69 80 AA A9 FD 9D 00 02 A9 02 9D 01 02 A5 85 88 + .byte $D0, $E9, $A9, $10, $85, $66, $60, $86, Zp00, $84, Zp01, $4C, $A3, $C3 ; CPU:$D8C9 PRG:18C9 D0 E9 A9 10 85 66 60 86 00 84 01 4C A3 C3 +; ----------------------------------------------------------------------------- +; Routine: Label_D8D7 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D8D7: + ldx #$10 ; CPU:$D8D7 PRG:18D7 A2 10 +; ----------------------------------------------------------------------------- +; Routine: Label_D8D9 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D8D9: + lda $E0E2,X ; CPU:$D8D9 PRG:18D9 BD E2 E0 + sta $0310,X ; CPU:$D8DC PRG:18DC 9D 10 03 + dex ; CPU:$D8DF PRG:18DF CA + bpl Label_D8D9 ; CPU:$D8E0 PRG:18E0 10 F7 + rts ; CPU:$D8E2 PRG:18E2 60 +; ----------------------------------------------------------------------------- +; Routine: Label_D8E3 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D8E3: + ldx #$10 ; CPU:$D8E3 PRG:18E3 A2 10 +; ----------------------------------------------------------------------------- +; Routine: Label_D8E5 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D8E5: + lda $E0F2,X ; CPU:$D8E5 PRG:18E5 BD F2 E0 + sta $0340,X ; CPU:$D8E8 PRG:18E8 9D 40 03 + dex ; CPU:$D8EB PRG:18EB CA + bpl Label_D8E5 ; CPU:$D8EC PRG:18EC 10 F7 + rts ; CPU:$D8EE PRG:18EE 60 +; ----------------------------------------------------------------------------- +; Routine: Label_D8EF +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D8EF: + lda #$00 ; CPU:$D8EF PRG:18EF A9 00 + sta NmiPhase ; CPU:$D8F1 PRG:18F1 85 20 + sta NmiFlag ; CPU:$D8F3 PRG:18F3 85 22 + rts ; CPU:$D8F5 PRG:18F5 60 +; ---- data $D8F6-$D8FE (9 bytes) ---- + .byte $A5, $2D, $D0, $04, $A5, $3C, $85, $33, $60 ; CPU:$D8F6 PRG:18F6 A5 2D D0 04 A5 3C 85 33 60 +; ----------------------------------------------------------------------------- +; Routine: Label_D8FF +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D8FF: + stx $3C ; CPU:$D8FF PRG:18FF 86 3C + sta $2D ; CPU:$D901 PRG:1901 85 2D + lda #$05 ; CPU:$D903 PRG:1903 A9 05 + sta $33 ; CPU:$D905 PRG:1905 85 33 + rts ; CPU:$D907 PRG:1907 60 +; ---- data $D908-$D954 (77 bytes) ---- + .byte $A0, Zp00, $98, $99, Zp00, $03, $C8, $D0, $FA, $60, $A9, Zp00, $A2, $40, $95, Zp00 ; CPU:$D908 PRG:1908 A0 00 98 99 00 03 C8 D0 FA 60 A9 00 A2 40 95 00 + .byte $E8, $D0, $FB, $60, $A9, Zp00, $A2, $7F, $95, $40, $CA, $10, $FB, $60, $A2, $03 ; CPU:$D918 PRG:1918 E8 D0 FB 60 A9 00 A2 7F 95 40 CA 10 FB 60 A2 03 + .byte $A0, $05, $B5, $C4, $29, $0F, $99, Zp01, $05, $88, $B5, $C4, $4A, $4A, $4A, $4A ; CPU:$D928 PRG:1928 A0 05 B5 C4 29 0F 99 01 05 88 B5 C4 4A 4A 4A 4A + .byte $99, Zp01, $05, $CA, $88, $10, $EB, $AD, Zp01, $05, $D0, $05, $A9, $FF, $8D, Zp01 ; CPU:$D938 PRG:1938 99 01 05 CA 88 10 EB AD 01 05 D0 05 A9 FF 8D 01 + .byte $05, $A9, Ctrl1, $8D, Zp00, $05, $A6, $0D, $A4, $0C, $4C, $AF, $D5 ; CPU:$D948 PRG:1948 05 A9 16 8D 00 05 A6 0D A4 0C 4C AF D5 +; ----------------------------------------------------------------------------- +; Routine: Label_D955 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D955: + lda #$01 ; CPU:$D955 PRG:1955 A9 01 + bne Label_D973 ; CPU:$D957 PRG:1957 D0 1A +; ----------------------------------------------------------------------------- +; Routine: Label_D959 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D959: + lda #$02 ; CPU:$D959 PRG:1959 A9 02 + bne Label_D973 ; CPU:$D95B PRG:195B D0 16 + lda #$04 ; CPU:$D95D PRG:195D A9 04 + bne Label_D973 ; CPU:$D95F PRG:195F D0 12 + lda #$08 ; CPU:$D961 PRG:1961 A9 08 + bne Label_D973 ; CPU:$D963 PRG:1963 D0 0E +; ----------------------------------------------------------------------------- +; Routine: Label_D965 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D965: + lda #$10 ; CPU:$D965 PRG:1965 A9 10 + bne Label_D973 ; CPU:$D967 PRG:1967 D0 0A +; ----------------------------------------------------------------------------- +; Routine: Label_D969 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D969: + lda #$20 ; CPU:$D969 PRG:1969 A9 20 + bne Label_D973 ; CPU:$D96B PRG:196B D0 06 + lda #$40 ; CPU:$D96D PRG:196D A9 40 + bne Label_D973 ; CPU:$D96F PRG:196F D0 02 + lda #$80 ; CPU:$D971 PRG:1971 A9 80 +; ----------------------------------------------------------------------------- +; Routine: Label_D973 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D973: + ora $F0 ; CPU:$D973 PRG:1973 05 F0 + sta $F0 ; CPU:$D975 PRG:1975 85 F0 + rts ; CPU:$D977 PRG:1977 60 +; ----------------------------------------------------------------------------- +; Routine: Label_D978 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D978: + lda #$01 ; CPU:$D978 PRG:1978 A9 01 + bne Label_D996 ; CPU:$D97A PRG:197A D0 1A +; ----------------------------------------------------------------------------- +; Routine: Label_D97C +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D97C: + lda #$02 ; CPU:$D97C PRG:197C A9 02 + bne Label_D996 ; CPU:$D97E PRG:197E D0 16 + lda #$04 ; CPU:$D980 PRG:1980 A9 04 + bne Label_D996 ; CPU:$D982 PRG:1982 D0 12 + lda #$08 ; CPU:$D984 PRG:1984 A9 08 + bne Label_D996 ; CPU:$D986 PRG:1986 D0 0E + lda #$10 ; CPU:$D988 PRG:1988 A9 10 + bne Label_D996 ; CPU:$D98A PRG:198A D0 0A + lda #$20 ; CPU:$D98C PRG:198C A9 20 + bne Label_D996 ; CPU:$D98E PRG:198E D0 06 + lda #$40 ; CPU:$D990 PRG:1990 A9 40 + bne Label_D996 ; CPU:$D992 PRG:1992 D0 02 + lda #$80 ; CPU:$D994 PRG:1994 A9 80 +; ----------------------------------------------------------------------------- +; Routine: Label_D996 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_D996: + ora $F1 ; CPU:$D996 PRG:1996 05 F1 + sta $F1 ; CPU:$D998 PRG:1998 85 F1 + rts ; CPU:$D99A PRG:199A 60 +; ---- data $D99B-$DAD1 (311 bytes) ---- + .byte NmiPhase, $E4, $DB, NmiPhase, $26, $D9, $A9, Zp09, $85, $33, $A9, $03, $85, $C3, $4C, $8C ; CPU:$D99B PRG:199B 20 E4 DB 20 26 D9 A9 09 85 33 A9 03 85 C3 4C 8C + .byte $D9, $A5, $C2, $85, $96, NmiPhase, $1B, $C2, NmiPhase, $6C, $D3, NmiPhase, $B8, $D4, $A4, $C1 ; CPU:$D9AB PRG:19AB D9 A5 C2 85 96 20 1B C2 20 6C D3 20 B8 D4 A4 C1 + .byte $84, $95, $B9, $9D, $DD, $C9, $AA, $D0, $04, $A0, $07, $D0, $F3, $85, $90, $C8 ; CPU:$D9BB PRG:19BB 84 95 B9 9D DD C9 AA D0 04 A0 07 D0 F3 85 90 C8 + .byte $84, $C1, NmiPhase, $D2, $DA, $A9, $0F, $85, $97, $A9, Zp00, $85, $91, $85, $AC, $85 ; CPU:$D9CB PRG:19CB 84 C1 20 D2 DA A9 0F 85 97 A9 00 85 91 85 AC 85 + .byte $A2, $85, $98, $A9, Zp01, $85, $B1, $A9, $0A, $85, $33, $4C, $AB, $DA, $A5, $91 ; CPU:$D9DB PRG:19DB A2 85 98 A9 01 85 B1 A9 0A 85 33 4C AB DA A5 91 + .byte $C9, $0A, $F0, $0A, $A5, $AC, $D0, $06, $A5, $94, $F0, $03, $C6, $94, $60, $AD ; CPU:$D9EB PRG:19EB C9 0A F0 0A A5 AC D0 06 A5 94 F0 03 C6 94 60 AD + .byte Zp00, $03, $D0, $07, NmiPhase, $D7, $D8, $A2, Zp00, $F0, $0A, $AD, GameMode, $03, $D0, $EE ; CPU:$D9FB PRG:19FB 00 03 D0 07 20 D7 D8 A2 00 F0 0A AD 30 03 D0 EE + .byte NmiPhase, $E3, $D8, $A2, GameMode, $A4, $90, $B9, $BC, $DD, $29, $F0, $85, $94, $C8, $B9 ; CPU:$DA0B PRG:1A0B 20 E3 D8 A2 30 A4 90 B9 BC DD 29 F0 85 94 C8 B9 + .byte $BC, $DD, $4A, $4A, $4A, $4A, $9D, $17, $03, $B9, $BC, $DD, $29, $0F, $9D, $2A ; CPU:$DA1B PRG:1A1B BC DD 4A 4A 4A 4A 9D 17 03 B9 BC DD 29 0F 9D 2A + .byte $03, $C8, $84, $90, $E6, $91, $86, $1A, NmiPhase, $E2, $D2, $A6, $1A, $A9, Zp01, $9D ; CPU:$DA2B PRG:1A2B 03 C8 84 90 E6 91 86 1A 20 E2 D2 A6 1A A9 01 9D + .byte Zp00, $03, $A9, Zp01, $9D, $10, $03, $BD, $2A, $03, $18, $65, $93, $A8, $B9, $48 ; CPU:$DA3B PRG:1A3B 00 03 A9 01 9D 10 03 BD 2A 03 18 65 93 A8 B9 48 + .byte $DE, $9D, $0F, $03, $B9, $7F, $DE, $9D, $04, $03, $BC, $17, $03, $B9, $40, $E2 ; CPU:$DA4B PRG:1A4B DE 9D 0F 03 B9 7F DE 9D 04 03 BC 17 03 B9 40 E2 + .byte $9D, $1D, $03, $A9, $18, $C0, $02, $90, $0C, $A9, $68, $C0, $04, $D0, $06, $BC ; CPU:$DA5B PRG:1A5B 9D 1D 03 A9 18 C0 02 90 0C A9 68 C0 04 D0 06 BC + .byte $2A, $03, $B9, $45, $E2, $9D, NmiPhase, $03, $A9, Zp00, $9D, Zp01, $03, $9D, $0D, $03 ; CPU:$DA6B PRG:1A6B 2A 03 B9 45 E2 9D 20 03 A9 00 9D 01 03 9D 0D 03 + .byte $9D, $07, $03, $9D, $1C, $03, $9D, $18, $03, $60, $A5, $B1, $F0, $03, $4C, $96 ; CPU:$DA7B PRG:1A7B 9D 07 03 9D 1C 03 9D 18 03 60 A5 B1 F0 03 4C 96 + .byte $DC, NmiPhase, $1C, $D0, NmiPhase, $2C, $DB, NmiPhase, $9D, $DB, NmiPhase, $E9, $D9, NmiPhase, $4D, $DB ; CPU:$DA8B PRG:1A8B DC 20 1C D0 20 2C DB 20 9D DB 20 E9 D9 20 4D DB + .byte NmiPhase, $4B, $D0, NmiPhase, $A2, $DA, $60, $A5, $98, $D0, Zp01, $60, $A5, $21, $D0, $FB ; CPU:$DA9B PRG:1A9B 20 4B D0 20 A2 DA 60 A5 98 D0 01 60 A5 21 D0 FB + .byte $A9, Zp00, $85, $98, $A4, $97, $A2, Zp00, $A9, $3D, $C0, Zp00, $D0, $04, $A9, $FF ; CPU:$DAAB PRG:1AAB A9 00 85 98 A4 97 A2 00 A9 3D C0 00 D0 04 A9 FF + .byte $D0, Zp01, $88, $9D, Zp01, $05, $E8, $E0, $0F, $D0, $EF, $A9, $1F, $8D, Zp00, $05 ; CPU:$DABB PRG:1ABB D0 01 88 9D 01 05 E8 E0 0F D0 EF A9 1F 8D 00 05 + .byte $A2, NmiFlag, $A0, $23, $4C, $AF, $D5 ; CPU:$DACB PRG:1ACB A2 22 A0 23 4C AF D5 +; ----------------------------------------------------------------------------- +; Routine: Label_DAD2 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_DAD2: + lda $C2 ; CPU:$DAD2 PRG:1AD2 A5 C2 + cmp #$08 ; CPU:$DAD4 PRG:1AD4 C9 08 + bcc Label_DAE0 ; CPU:$DAD6 PRG:1AD6 90 08 + jsr $C573 ; CPU:$DAD8 PRG:1AD8 20 73 C5 + and #$03 ; CPU:$DADB PRG:1ADB 29 03 + clc ; CPU:$DADD PRG:1ADD 18 + adc #$08 ; CPU:$DADE PRG:1ADE 69 08 +; ----------------------------------------------------------------------------- +; Routine: Label_DAE0 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_DAE0: + sta $13 ; CPU:$DAE0 PRG:1AE0 85 13 + asl ; CPU:$DAE2 PRG:1AE2 0A + asl ; CPU:$DAE3 PRG:1AE3 0A + clc ; CPU:$DAE4 PRG:1AE4 18 + adc $13 ; CPU:$DAE5 PRG:1AE5 65 13 + sec ; CPU:$DAE7 PRG:1AE7 38 + sbc #$05 ; CPU:$DAE8 PRG:1AE8 E9 05 + sta $93 ; CPU:$DAEA PRG:1AEA 85 93 + rts ; CPU:$DAEC PRG:1AEC 60 +; ---- data $DAED-$DED3 (999 bytes) ---- + .byte $0A, $A8, $B9, $36, $E2, $85, Zp00, $B9, $37, $E2, $85, Zp01, $A5, $64, $29, $0F ; CPU:$DAED PRG:1AED 0A A8 B9 36 E2 85 00 B9 37 E2 85 01 A5 64 29 0F + .byte $8D, $02, $05, $A5, $64, $4A, $4A, $4A, $4A, $8D, Zp01, $05, $A9, Zp00, $8D, $03 ; CPU:$DAFD PRG:1AFD 8D 02 05 A5 64 4A 4A 4A 4A 8D 01 05 A9 00 8D 03 + .byte $05, $8D, $04, $05, $A9, $14, $8D, Zp00, $05, $4C, $B3, $D5, $0A, $A8, $B9, $36 ; CPU:$DB0D PRG:1B0D 05 8D 04 05 A9 14 8D 00 05 4C B3 D5 0A A8 B9 36 + .byte $E2, $85, Zp00, $B9, $37, $E2, $85, Zp01, $A2, $2D, $A0, $E2, $4C, $B7, $D5, $A5 ; CPU:$DB1D PRG:1B1D E2 85 00 B9 37 E2 85 01 A2 2D A0 E2 4C B7 D5 A5 + .byte $C3, $D0, $1C, $AD, Zp00, $03, $D0, $17, $AD, GameMode, $03, $D0, $12, NmiPhase, $55, $D9 ; CPU:$DB2D PRG:1B2D C3 D0 1C AD 00 03 D0 17 AD 30 03 D0 12 20 55 D9 + .byte NmiPhase, $7C, $D9, NmiPhase, $C2, $D3, $A2, $06, $A9, GameMode, NmiPhase, $FF, $D8, $68, $68, $60 ; CPU:$DB3D PRG:1B3D 20 7C D9 20 C2 D3 A2 06 A9 30 20 FF D8 68 68 60 + .byte $AD, Zp00, $03, $F0, $0C, $A0, Zp00, $84, $A5, NmiPhase, GameMode, $CA, $A2, Zp00, NmiPhase, $70 ; CPU:$DB4D PRG:1B4D AD 00 03 F0 0C A0 00 84 A5 20 30 CA A2 00 20 70 + .byte $DB, $AD, GameMode, $03, $F0, $0C, $A0, GameMode, $E6, $A5, NmiPhase, GameMode, $CA, $A2, GameMode, NmiPhase ; CPU:$DB5D PRG:1B5D DB AD 30 03 F0 0C A0 30 E6 A5 20 30 CA A2 30 20 + .byte $70, $DB, $60, $BD, Zp01, $03, $C9, $02, $D0, $F8, $BD, $12, $03, $C9, Zp01, $F0 ; CPU:$DB6D PRG:1B6D 70 DB 60 BD 01 03 C9 02 D0 F8 BD 12 03 C9 01 F0 + .byte $F1, $4C, $D9, $D5, $A5, $AC, $D0, $07, $A5, $B2, $F0, $0F, $C6, $B2, $60, $A9 ; CPU:$DB7D PRG:1B7D F1 4C D9 D5 A5 AC D0 07 A5 B2 F0 0F C6 B2 60 A9 + .byte Zp08, $85, $23, $A5, $96, $85, $C2, $A5, $95, $85, $C1, $A9, Zp09, $85, $33, $60 ; CPU:$DB8D PRG:1B8D 08 85 23 A5 96 85 C2 A5 95 85 C1 A9 09 85 33 60 + .byte $AD, Zp00, $03, $D0, $41, $AD, GameMode, $03, $D0, $3C, $A5, $AC, $D0, $32, $A5, $91 ; CPU:$DB9D PRG:1B9D AD 00 03 D0 41 AD 30 03 D0 3C A5 AC D0 32 A5 91 + .byte $C9, $0A, $D0, $32, NmiPhase, $94, $D9, $A9, $80, $85, $B2, $A5, $C2, $A0, Zp00, $C9 ; CPU:$DBAD PRG:1BAD C9 0A D0 32 20 94 D9 A9 80 85 B2 A5 C2 A0 00 C9 + .byte $10, $90, Zp08, $A0, $07, $C9, NmiPhase, $90, $02, $A0, $0E, $A2, Zp00, $B9, $17, $F0 ; CPU:$DBBD PRG:1BBD 10 90 08 A0 07 C9 20 90 02 A0 0E A2 00 B9 17 F0 + .byte $9D, Zp00, $05, $C8, $E8, $E0, $07, $D0, $F4, $A2, $4D, $A0, $21, NmiPhase, $AF, $D5 ; CPU:$DBCD PRG:1BCD 9D 00 05 C8 E8 E0 07 D0 F4 A2 4D A0 21 20 AF D5 + .byte $A9, $0C, $85, $33, $68, $68, $60, $A9, Zp08, $85, $23, NmiPhase, $1B, $C2, $A9, $D4 ; CPU:$DBDD PRG:1BDD A9 0C 85 33 68 68 60 A9 08 85 23 20 1B C2 A9 D4 + .byte $85, Zp00, $A9, Zp01, $85, Zp01, NmiPhase, $E3, $C2, $A9, $FF, $85, Zp00, $A9, $02, $85 ; CPU:$DBED PRG:1BED 85 00 A9 01 85 01 20 E3 C2 A9 FF 85 00 A9 02 85 + .byte Zp01, NmiPhase, $E3, $C2, $A2, $61, $A0, $ED, NmiPhase, $D0, $D8, $A2, $FD, $A0, $EE, NmiPhase ; CPU:$DBFD PRG:1BFD 01 20 E3 C2 A2 61 A0 ED 20 D0 D8 A2 FD A0 EE 20 + .byte $D0, $D8, $A2, Zp00, $BD, $26, $EF, $C9, $FF, $F0, $0F, NmiPhase, $52, $DC, $8A, $48 ; CPU:$DC0D PRG:1C0D D0 D8 A2 00 BD 26 EF C9 FF F0 0F 20 52 DC 8A 48 + .byte NmiPhase, $B3, $D5, NmiPhase, $D1, $C5, $68, $AA, $D0, $EA, $A9, $12, $85, $1C, $A0, $04 ; CPU:$DC1D PRG:1C1D 20 B3 D5 20 D1 C5 68 AA D0 EA A9 12 85 1C A0 04 + .byte $B9, $17, $EF, $99, Zp00, $05, $88, $10, $F7, $A2, Zp00, $A0, $05, NmiPhase, $D0, $D8 ; CPU:$DC2D PRG:1C2D B9 17 EF 99 00 05 88 10 F7 A2 00 A0 05 20 D0 D8 + .byte $AD, Zp01, $05, $18, $69, NmiPhase, $8D, Zp01, $05, $90, $03, $EE, Zp00, $05, $C6, $1C ; CPU:$DC3D PRG:1C3D AD 01 05 18 69 20 8D 01 05 90 03 EE 00 05 C6 1C + .byte $D0, $E7, $4C, $EC, $C5, $85, Zp00, $E8, $BD, $26, $EF, $85, Zp01, $E8, $BD, $26 ; CPU:$DC4D PRG:1C4D D0 E7 4C EC C5 85 00 E8 BD 26 EF 85 01 E8 BD 26 + .byte $EF, $85, $14, $E8, $BD, $26, $EF, $85, $15, $E8, $BC, $26, $EF, $E8, $B1, $14 ; CPU:$DC5D PRG:1C5D EF 85 14 E8 BD 26 EF 85 15 E8 BC 26 EF E8 B1 14 + .byte $99, Zp01, $05, $88, $10, $F8, $BD, $26, $EF, $8D, Zp00, $05, $E8, $60, GameMode, $10 ; CPU:$DC6D PRG:1C6D 99 01 05 88 10 F8 BD 26 EF 8D 00 05 E8 60 30 10 + .byte $A8, $BE, $1C, $EF, $48, $BD, $26, $EF, NmiPhase, $52, $DC, NmiPhase, $B3, $D5, $68, $60 ; CPU:$DC7D PRG:1C7D A8 BE 1C EF 48 BD 26 EF 20 52 DC 20 B3 D5 68 60 + .byte $29, $07, $A8, $BE, $21, $EF, $4C, $81, $DC, $A5, $B1, NmiPhase, $41, $C3, $D5, $DC ; CPU:$DC8D PRG:1C8D 29 07 A8 BE 21 EF 4C 81 DC A5 B1 20 41 C3 D5 DC + .byte $A9, $DC, $FB, $DC, $D6, $DC, $FB, $DC, $E6, $DC, Zp00, $DD, $A0, $04, $B9, $2C ; CPU:$DC9D PRG:1C9D A9 DC FB DC D6 DC FB DC E6 DC 00 DD A0 04 B9 2C + .byte $F0, $99, Zp00, $05, $88, $10, $F7, $A5, $C2, $4A, $4A, $4A, $4A, $D0, $02, $A9 ; CPU:$DCAD PRG:1CAD F0 99 00 05 88 10 F7 A5 C2 4A 4A 4A 4A D0 02 A9 + .byte $FF, $8D, $05, $05, $A5, $C2, $29, $0F, $8D, $06, $05, $A9, $80, $85, $B2, $A2 ; CPU:$DCBD PRG:1CBD FF 8D 05 05 A5 C2 29 0F 8D 06 05 A9 80 85 B2 A2 + .byte $4D, $A0, $21, NmiPhase, $AF, $D5, $E6, $B1, $60, $A0, $06, $B9, $31, $F0, $99, Zp00 ; CPU:$DCCD PRG:1CCD 4D A0 21 20 AF D5 E6 B1 60 A0 06 B9 31 F0 99 00 + .byte $05, $88, $10, $F7, $A9, $40, $4C, $CA, $DC, $A0, $05, $B9, $61, $EE, $99, Zp01 ; CPU:$DCDD PRG:1CDD 05 88 10 F7 A9 40 4C CA DC A0 05 B9 61 EE 99 01 + .byte $05, $88, $10, $F7, $A9, Ctrl1, $8D, Zp00, $05, $A9, Zp01, $4C, $CA, $DC, $C6, $B2 ; CPU:$DCED PRG:1CED 05 88 10 F7 A9 16 8D 00 05 A9 01 4C CA DC C6 B2 + .byte $F0, $D4, $60, $A9, Zp00, $85, $B1, $60, Zp01, $0C, Zp01, Mode38, Zp00, $1A, Zp01, $26 ; CPU:$DCFD PRG:1CFD F0 D4 60 A9 00 85 B1 60 01 0C 01 38 00 1A 01 26 + .byte Zp00, $48, Zp00, $15, Zp01, $4A, Zp00, $26, Zp01, $48, Zp00, $04, $02, $2B, $02, $15 ; CPU:$DD0D PRG:1D0D 00 48 00 15 01 4A 00 26 01 48 00 04 02 2B 02 15 + .byte $02, $47, $02, $39, $02, $0C, $02, $46, $02, $29, $02, $17, $02, $4A, $02, Zp09 ; CPU:$DD1D PRG:1D1D 02 47 02 39 02 0C 02 46 02 29 02 17 02 4A 02 09 + .byte $02, $35, $02, $2B, $02, $17, $02, Zp09, $02, $46, $02, $44, $02, $2D, $02, $07 ; CPU:$DD2D PRG:1D2D 02 35 02 2B 02 17 02 09 02 46 02 44 02 2D 02 07 + .byte $02, $39, $02, $18, $AA, Zp00, $0B, $1B, Zp00, $4A, $3A, Zp00, $2C, $0C, Zp00, Zp08 ; CPU:$DD3D PRG:1D3D 02 39 02 18 AA 00 0B 1B 00 4A 3A 00 2C 0C 00 08 + .byte $18, Zp01, $37, $47, Zp00, $1A, $4A, Zp00, $29, $19, Zp00, Mode38, $48, Zp01, Ctrl1, $06 ; CPU:$DD4D PRG:1D4D 18 01 37 47 00 1A 4A 00 29 19 00 38 48 01 16 06 + .byte Zp00, $44, $14, Zp00, $3A, $4A, Zp00, $27, $17, Zp00, Mode38, $48, $02, $1A, $2A, Zp00 ; CPU:$DD5D PRG:1D5D 00 44 14 00 3A 4A 00 27 17 00 38 48 02 1A 2A 00 + .byte $05, $15, Zp00, $36, $46, Zp00, $19, $29, $02, $04, $24, Zp00, $18, $48, Zp00, $49 ; CPU:$DD6D PRG:1D6D 05 15 00 36 46 00 19 29 02 04 24 00 18 48 00 49 + .byte $39, Zp00, $15, $05, Zp00, $27, $17, Zp00, $3A, $4A, Zp00, $46, Ctrl1, $02, $05, $15 ; CPU:$DD7D PRG:1D7D 39 00 15 05 00 27 17 00 3A 4A 00 46 16 02 05 15 + .byte Zp00, $37, $47, Zp00, $0D, $1D, Zp00, $36, $46, Zp00, $27, $17, Zp00, $05, $25, $AA ; CPU:$DD8D PRG:1D8D 00 37 47 00 0D 1D 00 36 46 00 27 17 00 05 25 AA + .byte Zp00, $14, $28, $3C, $50, $64, $78, $50, $78, $14, $28, $64, $3C, $28, $78, Zp00 ; CPU:$DD9D PRG:1D9D 00 14 28 3C 50 64 78 50 78 14 28 64 3C 28 78 00 + .byte $64, $50, $14, $78, $28, Zp00, $3C, $64, $14, $50, $78, $14, $64, $3C, $AA, $C0 ; CPU:$DDAD PRG:1DAD 64 50 14 78 28 00 3C 64 14 50 78 14 64 3C AA C0 + .byte $40, $05, $02, $40, $44, $FF, $31, $05, $14, $A0, NmiPhase, $05, $03, $80, NmiPhase, $10 ; CPU:$DDBD PRG:1DBD 40 05 02 40 44 FF 31 05 14 A0 20 05 03 80 20 10 + .byte $44, $80, $23, $05, $13, $60, NmiPhase, $40, $31, NmiPhase, $04, $C0, $42, NmiPhase, $10, $40 ; CPU:$DDCD PRG:1DCD 44 80 23 05 13 60 20 40 31 20 04 C0 42 20 10 40 + .byte $31, $40, $42, $05, $03, $80, $24, NmiPhase, GameMode, NmiPhase, Zp01, $40, $24, GameMode, $13, $40 ; CPU:$DDDD PRG:1DDD 31 40 42 05 03 80 24 20 30 20 01 40 24 30 13 40 + .byte $42, NmiPhase, NmiPhase, $A0, $03, $C0, $32, $05, $14, $80, $40, $60, $21, $A0, $44, NmiPhase ; CPU:$DDED PRG:1DED 42 20 20 A0 03 C0 32 05 14 80 40 60 21 A0 44 20 + .byte GameMode, NmiPhase, $12, $C0, $21, NmiPhase, $04, $FF, $33, NmiPhase, $41, $A0, NmiPhase, $80, $04, $40 ; CPU:$DDFD PRG:1DFD 30 20 12 C0 21 20 04 FF 33 20 41 A0 20 80 04 40 + .byte $44, $05, $13, $40, $21, $05, $02, $40, GameMode, $05, $41, $40, $14, $05, $02, $FF ; CPU:$DE0D PRG:1E0D 44 05 13 40 21 05 02 40 30 05 41 40 14 05 02 FF + .byte $33, $80, $44, $05, $31, $40, $23, $C0, $44, GameMode, $10, $40, $02, $60, $33, $60 ; CPU:$DE1D PRG:1E1D 33 80 44 05 31 40 23 C0 44 30 10 40 02 60 33 60 + .byte $11, NmiPhase, $44, $A0, NmiPhase, $80, $32, NmiPhase, $13, NmiPhase, NmiPhase, $C0, $02, $40, $44, $05 ; CPU:$DE2D PRG:1E2D 11 20 44 A0 20 80 32 20 13 20 20 C0 02 40 44 05 + .byte $31, $FF, $23, NmiPhase, $02, $60, $31, NmiPhase, $40, $80, $14, $13, Ctrl1, $13, NmiPhase, $12 ; CPU:$DE3D PRG:1E3D 31 FF 23 20 02 60 31 20 40 80 14 13 16 13 20 12 + .byte $11, $13, $11, $15, $10, $10, $12, $10, $14, Zp08, Zp09, $11, Zp09, $13, $07, Zp08 ; CPU:$DE4D PRG:1E4D 11 13 11 15 10 10 12 10 14 08 09 11 09 13 07 08 + .byte $10, Zp08, $12, $07, $07, Zp09, $07, $11, $06, $07, Zp09, $07, $10, $06, $06, Zp09 ; CPU:$DE5D PRG:1E5D 10 08 12 07 07 09 07 11 06 07 09 07 10 06 06 09 + .byte $07, Zp09, $04, $07, Zp08, $07, $10, $05, $06, Zp09, $06, Zp09, $04, $07, Zp08, $06 ; CPU:$DE6D PRG:1E6D 07 09 04 07 08 07 10 05 06 09 06 09 04 07 08 06 + .byte Zp09, $05, $18, $15, NmiPhase, $10, $25, $23, NmiPhase, $25, Ctrl1, GameMode, $25, NmiFlag, $27, $18 ; CPU:$DE7D PRG:1E7D 09 05 18 15 20 10 25 23 20 25 16 30 25 22 27 18 + .byte $32, $25, $25, GameMode, NmiPhase, $35, GameMode, $25, $32, $23, $35, $33, $25, $35, $25, $40 ; CPU:$DE8D PRG:1E8D 32 25 25 30 20 35 30 25 32 23 35 33 25 35 25 40 + .byte $35, $25, $37, GameMode, $45, $35, $25, $37, GameMode, $45, $35, $25, $37, GameMode, $45, $45 ; CPU:$DE9D PRG:1E9D 35 25 37 30 45 35 25 37 30 45 35 25 37 30 45 45 + .byte GameMode, $40, $35, $50, $45, GameMode, $40, $35, $50, Zp00, $03, Zp01, $04, $05, $04, $0B ; CPU:$DEAD PRG:1EAD 30 40 35 50 45 30 40 35 50 00 03 01 04 05 04 0B + .byte $0C, $0D, $0E, $0F, $02, $03, $04, $05, $06, $07, Zp08, Zp09, $0A, $0C, $0F, $11 ; CPU:$DEBD PRG:1EBD 0C 0D 0E 0F 02 03 04 05 06 07 08 09 0A 0C 0F 11 + .byte $14, $17, $50, $45, $40, $35, GameMode ; CPU:$DECD PRG:1ECD 14 17 50 45 40 35 30 +; ----------------------------------------------------------------------------- +; Routine: Label_DED4 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_DED4: + and $23 ; CPU:$DED4 PRG:1ED4 25 23 + and (NmiPhase,X) ; CPU:$DED6 PRG:1ED6 21 20 + clc ; CPU:$DED8 PRG:1ED8 18 + ora $13,X ; CPU:$DED9 PRG:1ED9 15 13 + bpl Label_DEED ; CPU:$DEDB PRG:1EDB 10 10 +; ---- data $DEDD-$DEEC (16 bytes) ---- + .byte $E7, $DE, $66, $DF, $99, $DF, $0F, $E0, $47, $E0, $04, $02, Zp00, $04, $02, Zp01 ; CPU:$DEDD PRG:1EDD E7 DE 66 DF 99 DF 0F E0 47 E0 04 02 00 04 02 01 +; ----------------------------------------------------------------------------- +; Routine: Label_DEED +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_DEED: +; ---- data $DEED-$F371 (5253 bytes) ---- + .byte $04, $02, $02, $FA, $F9, $0E, Zp09, $81, Zp09, $81, Zp09, $81, Zp09, Zp00, Zp09, Zp00 ; CPU:$DEED PRG:1EED 04 02 02 FA F9 0E 09 81 09 81 09 81 09 00 09 00 + .byte Zp09, Zp00, Zp09, Zp01, Zp09, Zp01, Zp09, Zp01, Zp09, Zp01, Zp09, Zp01, Zp09, $02, Zp09, $02 ; CPU:$DEFD PRG:1EFD 09 00 09 01 09 01 09 01 09 01 09 01 09 02 09 02 + .byte Zp09, $03, $0A, $04, $0A, $04, $0A, $05, $0A, Zp00, $0A, $F8, $82, $0A, $81, $0A ; CPU:$DF0D PRG:1F0D 09 03 0A 04 0A 04 0A 05 0A 00 0A F8 82 0A 81 0A + .byte $81, $0A, $81, $0A, Zp00, $0A, Zp01, $0A, Zp01, $0A, Zp01, $0A, $02, $0A, Zp00, $0A ; CPU:$DF1D PRG:1F1D 81 0A 81 0A 00 0A 01 0A 01 0A 01 0A 02 0A 00 0A + .byte $81, $0A, $81, $0A, Zp00, $0A, Zp01, $0A, Zp01, $0A, $FD, $10, Zp08, $10, $07, $10 ; CPU:$DF2D PRG:1F2D 81 0A 81 0A 00 0A 01 0A 01 0A FD 10 08 10 07 10 + .byte Zp08, $10, $07, $10, Zp08, $10, $07, $10, $06, $10, $05, $FE, $04, $02, Zp00, $04 ; CPU:$DF3D PRG:1F3D 08 10 07 10 08 10 07 10 06 10 05 FE 04 02 00 04 + .byte $02, Zp01, $04, $02, $02, $FF, $10, $05, $FB, $10, $06, $10, $07, $10, $07, $FC ; CPU:$DF4D PRG:1F4D 02 01 04 02 02 FF 10 05 FB 10 06 10 07 10 07 FC + .byte $04, $02, $05, $04, $02, $03, $04, $02, $04, $04, $02, $0D, $04, $02, $0B, $04 ; CPU:$DF5D PRG:1F5D 04 02 05 04 02 03 04 02 04 04 02 0D 04 02 0B 04 + .byte $02, $0C, $FA, Zp00, $11, $F9, $FD, GameMode, $10, NmiPhase, $0F, NmiPhase, $10, NmiPhase, $0F, NmiPhase ; CPU:$DF6D PRG:1F6D 02 0C FA 00 11 F9 FD 30 10 20 0F 20 10 20 0F 20 + .byte $10, NmiPhase, $0F, NmiPhase, $0E, NmiPhase, $0D, $FE, $04, $02, $0D, $04, $02, $0B, $04, $02 ; CPU:$DF7D PRG:1F7D 10 20 0F 20 0E 20 0D FE 04 02 0D 04 02 0B 04 02 + .byte $0C, $FF, $10, $0D, $FB, $10, $0E, $10, $0F, $10, $0F, $FC, $04, $02, $14, $04 ; CPU:$DF8D PRG:1F8D 0C FF 10 0D FB 10 0E 10 0F 10 0F FC 04 02 14 04 + .byte $02, $12, $04, $02, $13, $FA, $F9, $18, $18, $81, $18, $81, $18, $81, $18, $81 ; CPU:$DF9D PRG:1F9D 02 12 04 02 13 FA F9 18 18 81 18 81 18 81 18 81 + .byte $18, Zp00, $18, Zp00, $18, Zp01, $18, Zp01, $18, Zp01, $18, Zp01, $18, Zp01, $18, $02 ; CPU:$DFAD PRG:1FAD 18 00 18 00 18 01 18 01 18 01 18 01 18 01 18 02 + .byte $18, $03, $18, $03, $18, $03, $18, Zp00, $18, $F8, $82, $18, $81, $18, $81, $18 ; CPU:$DFBD PRG:1FBD 18 03 18 03 18 03 18 00 18 F8 82 18 81 18 81 18 + .byte $81, $18, Zp00, $18, Zp01, $18, Zp01, $18, Zp01, $18, $02, $18, Zp00, $18, $81, $18 ; CPU:$DFCD PRG:1FCD 81 18 00 18 01 18 01 18 01 18 02 18 00 18 81 18 + .byte $81, $18, $81, $18, Zp00, $18, Zp01, $18, Zp01, $18, Zp01, $18, $FD, GameMode, $17, NmiPhase ; CPU:$DFDD PRG:1FDD 81 18 81 18 00 18 01 18 01 18 01 18 FD 30 17 20 + .byte Ctrl1, NmiPhase, $17, NmiPhase, Ctrl1, NmiPhase, $17, NmiPhase, Ctrl1, NmiPhase, $15, NmiPhase, $14, $FE, $04, $02 ; CPU:$DFED PRG:1FED 16 20 17 20 16 20 17 20 16 20 15 20 14 FE 04 02 + .byte $14, $04, $02, $12, $04, $02, $13, $FF, $10, $14, $FB, $10, $15, $10, Ctrl1, $10 ; CPU:$DFFD PRG:1FFD 14 04 02 12 04 02 13 FF 10 14 FB 10 15 10 16 10 + .byte Ctrl1, $FC, $04, $02, $1B, $04, $02, $19, $04, $02, $1A, $FA, $0A, NmiPhase, $F8, $70 ; CPU:$E00D PRG:200D 16 FC 04 02 1B 04 02 19 04 02 1A FA 0A 20 F8 70 + .byte NmiPhase, $F7, $FD, GameMode, $1E, NmiPhase, $1F, NmiPhase, $1E, NmiPhase, $1F, NmiPhase, $1E, NmiPhase, $1F, NmiPhase ; CPU:$E01D PRG:201D 20 F7 FD 30 1E 20 1F 20 1E 20 1F 20 1E 20 1F 20 + .byte $1D, NmiPhase, $1C, NmiPhase, $1B, $FE, $04, $02, $1B, $04, $02, $19, $04, $02, $1A, $FF ; CPU:$E02D PRG:202D 1D 20 1C 20 1B FE 04 02 1B 04 02 19 04 02 1A FF + .byte $10, $1B, $FB, $10, $1C, $10, $1D, $10, $1D, $FC, $04, $02, $23, $04, $02, $21 ; CPU:$E03D PRG:203D 10 1B FB 10 1C 10 1D 10 1D FC 04 02 23 04 02 21 + .byte $04, $02, NmiFlag, $FA, $F9, $12, $27, $81, $27, $81, $27, $81, $27, Zp00, $27, Zp00 ; CPU:$E04D PRG:204D 04 02 22 FA F9 12 27 81 27 81 27 81 27 00 27 00 + .byte $27, Zp00, $27, Zp01, $27, Zp01, $27, Zp01, $27, Zp01, $27, Zp01, $27, $02, $27, $02 ; CPU:$E05D PRG:205D 27 00 27 01 27 01 27 01 27 01 27 01 27 02 27 02 + .byte $27, $03, $0A, $04, $0A, $04, $0A, $05, $0A, Zp00, $0A, $F8, $82, $0A, $81, $0A ; CPU:$E06D PRG:206D 27 03 0A 04 0A 04 0A 05 0A 00 0A F8 82 0A 81 0A + .byte $81, $0A, $81, $0A, Zp00, $0A, Zp01, $0A, Zp01, $0A, Zp01, $0A, $02, $0A, Zp00, $0A ; CPU:$E07D PRG:207D 81 0A 81 0A 00 0A 01 0A 01 0A 01 0A 02 0A 00 0A + .byte $81, $0A, $81, $0A, Zp00, $0A, Zp01, $0A, Zp01, $0A, $FD, GameMode, $26, NmiPhase, $25, NmiPhase ; CPU:$E08D PRG:208D 81 0A 81 0A 00 0A 01 0A 01 0A FD 30 26 20 25 20 + .byte $26, NmiPhase, $25, NmiPhase, $26, NmiPhase, $25, NmiPhase, $24, NmiPhase, $23, $FE, $04, $02, $23, $04 ; CPU:$E09D PRG:209D 26 20 25 20 26 20 25 20 24 20 23 FE 04 02 23 04 + .byte $02, $21, $04, $02, NmiFlag, $FF, $10, $23, $FB, $10, $24, $10, $25, $10, $25, $FC ; CPU:$E0AD PRG:20AD 02 21 04 02 22 FF 10 23 FB 10 24 10 25 10 25 FC + .byte $F9, $10, Zp09, $81, Zp09, $81, Zp09, Zp00, Zp09, Zp00, Zp09, Zp01, Zp09, Zp01, Zp09, Zp01 ; CPU:$E0BD PRG:20BD F9 10 09 81 09 81 09 00 09 00 09 01 09 01 09 01 + .byte Zp09, $02, Zp09, $02, $0A, $03, $0A, $03, $0A, $04, $0A, $04, $0A, $04, $0A, $04 ; CPU:$E0CD PRG:20CD 09 02 09 02 0A 03 0A 03 0A 04 0A 04 0A 04 0A 04 + .byte $0A, $04, $0A, $F8, $FD, Zp00, $7E, $04, Zp00, Zp00, Zp00, Zp00, Zp00, Zp00, Zp00, Zp00 ; CPU:$E0DD PRG:20DD 0A 04 0A F8 FD 00 7E 04 00 00 00 00 00 00 00 00 + .byte $04, Zp00, NmiPhase, Zp00, $1E, Zp00, $82, $04, Zp00, Zp00, Zp00, Zp00, Zp00, Zp00, Zp00, $80 ; CPU:$E0ED PRG:20ED 04 00 20 00 1E 00 82 04 00 00 00 00 00 00 00 80 + .byte $04, Zp01, $E0, $80, $EE, $64, $80, $3E, $E1, $0D, $25, $4D, $11, $51, $15, Zp00 ; CPU:$E0FD PRG:20FD 04 01 E0 80 EE 64 80 3E E1 0D 25 4D 11 51 15 00 + .byte Zp00, $54, $91, $80, $E1, Zp09, $11, $41, $4D, $45, $51, Zp01, Zp00, $64, $9A, $EB ; CPU:$E10D PRG:210D 00 54 91 80 E1 09 11 41 4D 45 51 01 00 64 9A EB + .byte $E1, $19, $1D, $2D, $39, $31, $3D, $02, Zp00, $5C, $80, $3E, $E1, $11, $15, $21 ; CPU:$E11D PRG:211D E1 19 1D 2D 39 31 3D 02 00 5C 80 3E E1 11 15 21 + .byte $2D, $25, $31, $03, Zp00, $5C, $B3, $3E, $E1, $19, $1D, $41, $4D, $45, $51, $04 ; CPU:$E12D PRG:212D 2D 25 31 03 00 5C B3 3E E1 19 1D 41 4D 45 51 04 + .byte Zp00, $FE, $FF, $FF, $DD, Zp00, Zp01, Zp01, $02, $02, Zp01, Zp01, Zp00, $FF, $FF, $FE ; CPU:$E13D PRG:213D 00 FE FF FF DD 00 01 01 02 02 01 01 00 FF FF FE + .byte $FE, $FF, $FF, Zp00, Zp01, Zp01, $CC, $02, $02, Zp01, Zp01, Zp00, $FF, $FF, $FE, $FE ; CPU:$E14D PRG:214D FE FF FF 00 01 01 CC 02 02 01 01 00 FF FF FE FE + .byte $FF, $FF, Zp00, Zp01, Zp01, $02, $02, $03, $03, $04, $04, $04, $04, $04, $AA, $04 ; CPU:$E15D PRG:215D FF FF 00 01 01 02 02 03 03 04 04 04 04 04 AA 04 + .byte $04, $05, $07, Zp00, $FE, $FE, $FF, Zp00, Zp00, Zp01, $02, $02, Zp00, $FF, $FF, Zp00 ; CPU:$E16D PRG:216D 04 05 07 00 FE FE FF 00 00 01 02 02 00 FF FF 00 + .byte Zp01, Zp01, $BB, $FD, Zp01, $FE, Zp01, $FE, Zp01, $FE, $02, $FE, $02, $DD, $FD, $02 ; CPU:$E17D PRG:217D 01 01 BB FD 01 FE 01 FE 01 FE 02 FE 02 DD FD 02 + .byte $FD, $03, $FD, $03, $FE, $03, $FF, $04, $FF, $04, Zp00, $04, Zp00, $04, Zp00, $04 ; CPU:$E18D PRG:218D FD 03 FD 03 FE 03 FF 04 FF 04 00 04 00 04 00 04 + .byte Zp00, $04, $CC, Zp01, $04, Zp01, $03, Zp00, $03, Zp01, $02, Zp01, $02, Zp01, $02, Zp00 ; CPU:$E19D PRG:219D 00 04 CC 01 04 01 03 00 03 01 02 01 02 01 02 00 + .byte $02, Zp01, $02, Zp01, $02, Zp01, $02, Zp01, $02, Zp01, $02, Zp01, $02, Zp01, $02, $02 ; CPU:$E1AD PRG:21AD 02 01 02 01 02 01 02 01 02 01 02 01 02 01 02 02 + .byte $02, $02, $02, $02, $02, $02, $03, $02, $03, $03, $03, $03, $02, $03, $02, $04 ; CPU:$E1BD PRG:21BD 02 02 02 02 02 02 03 02 03 03 03 03 02 03 02 04 + .byte $02, $04, $02, $05, $02, $05, $02, $05, $02, $05, $02, $06, $02, $06, $02, $06 ; CPU:$E1CD PRG:21CD 02 04 02 05 02 05 02 05 02 05 02 06 02 06 02 06 + .byte $02, $06, Zp01, $06, Zp01, Zp08, $02, Zp08, Zp01, Zp08, Zp01, Zp08, Zp01, $BB, $FE, $FF ; CPU:$E1DD PRG:21DD 02 06 01 06 01 08 02 08 01 08 01 08 01 BB FE FF + .byte $FF, $DD, Zp00, Zp01, Zp01, $02, $02, Zp01, Zp01, Zp00, $FF, $FF, $FE, $FE, $FF, $FF ; CPU:$E1ED PRG:21ED FF DD 00 01 01 02 02 01 01 00 FF FF FE FE FF FF + .byte Zp00, Zp01, Zp01, $02, $02, Zp01, Zp01, Zp00, $FF, $FF, $FE, $FE, $FF, $FF, Zp00, Zp01 ; CPU:$E1FD PRG:21FD 00 01 01 02 02 01 01 00 FF FF FE FE FF FF 00 01 + .byte Zp01, $CC, $02, $03, $04, $04, $04, $04, $04, $04, $04, Zp00, $04, Zp00, $FE, $FF ; CPU:$E20D PRG:220D 01 CC 02 03 04 04 04 04 04 04 04 00 04 00 FE FF + .byte $FF, $FF, Zp00, Zp01, Zp01, Zp01, $02, Zp00, $FF, $FF, $FF, Zp00, Zp01, Zp01, Zp01, $BB ; CPU:$E21D PRG:221D FF FF 00 01 01 01 02 00 FF FF FF 00 01 01 01 BB + .byte $24, NmiFlag, $18, $1E, $FF, $15, $18, $1C, $1D, $C5, NmiPhase, $D7, NmiPhase, $04, NmiFlag, $18 ; CPU:$E22D PRG:222D 24 22 18 1E FF 15 18 1C 1D C5 20 D7 20 04 22 18 + .byte NmiFlag, $0E, NmiFlag, Mode38, $C8, GameMode, $D0, $80, $70, $60, $70, $66, $67, $10, NmiPhase, NmiPhase ; CPU:$E23D PRG:223D 22 0E 22 38 C8 30 D0 80 70 60 70 66 67 10 20 20 + .byte $10, NmiPhase, $10, NmiPhase, $10, NmiPhase, NmiPhase, $AA, $5B, $02, $5C, $02, $5D, $02, $5E, $02 ; CPU:$E24D PRG:224D 10 20 10 20 10 20 20 AA 5B 02 5C 02 5D 02 5E 02 + .byte $5B, $02, $5C, $02, $5D, $02, $5E, $02, $FF, $42, $FF, $02, $FF, $C2, $FF, $82 ; CPU:$E25D PRG:225D 5B 02 5C 02 5D 02 5E 02 FF 42 FF 02 FF C2 FF 82 + .byte $FF, $42, $FF, $02, $FF, $C2, $FF, $82, $5B, $02, $5C, $02, $5D, $02, $5E, $02 ; CPU:$E26D PRG:226D FF 42 FF 02 FF C2 FF 82 5B 02 5C 02 5D 02 5E 02 + .byte $5B, $02, $5C, $02, $5D, $02, $5E, $02, $FF, $42, $FF, $02, $FF, $C2, $FF, $82 ; CPU:$E27D PRG:227D 5B 02 5C 02 5D 02 5E 02 FF 42 FF 02 FF C2 FF 82 + .byte $FF, $42, $FF, $02, $FF, $C2, $FF, $82, $5B, $02, $5C, $02, $5D, $02, $5E, $02 ; CPU:$E28D PRG:228D FF 42 FF 02 FF C2 FF 82 5B 02 5C 02 5D 02 5E 02 + .byte $5B, $02, $5C, $02, $5D, $02, $5E, $02, $FF, $42, $FF, $02, $FF, $C2, $FF, $82 ; CPU:$E29D PRG:229D 5B 02 5C 02 5D 02 5E 02 FF 42 FF 02 FF C2 FF 82 + .byte $FF, $42, $FF, $02, $FF, $C2, $FF, $82, $AA, $27, $FF, Zp01, $55, $27, $C0, $3F ; CPU:$E2AD PRG:22AD FF 42 FF 02 FF C2 FF 82 AA 27 FF 01 55 27 C0 3F + .byte Zp00, Zp00, Zp00, Zp00, $55, $55, $55, $55, $F0, Zp00, GameMode, Zp00, $F8, Zp00, $31, Zp00 ; CPU:$E2BD PRG:22BD 00 00 00 00 55 55 55 55 F0 00 30 00 F8 00 31 00 + .byte Zp00, $40, $31, Zp00, Zp08, $40, GameMode, Zp00, $AA, $F8, Zp01, $75, Zp00, Zp00, $41, $75 ; CPU:$E2CD PRG:22CD 00 40 31 00 08 40 30 00 AA F8 01 75 00 00 41 75 + .byte Zp00, $AA, $F8, $02, $90, Zp00, Zp00, $42, $90, Zp00, $F0, $02, $97, Zp08, $F8, $02 ; CPU:$E2DD PRG:22DD 00 AA F8 02 90 00 00 42 90 00 F0 02 97 08 F8 02 + .byte $91, Zp08, Zp00, $42, $91, Zp08, Zp08, $42, $97, Zp08, $AA, $F8, Zp00, $D6, Zp00, Zp00 ; CPU:$E2ED PRG:22ED 91 08 00 42 91 08 08 42 97 08 AA F8 00 D6 00 00 + .byte $40, $D6, Zp00, $F0, Zp00, $D7, Zp08, $F8, Zp00, $D8, Zp08, Zp00, $40, $D8, Zp08, Zp08 ; CPU:$E2FD PRG:22FD 40 D6 00 F0 00 D7 08 F8 00 D8 08 00 40 D8 08 08 + .byte $40, $D7, Zp08, $AA, $35, $36, $37, Mode38, $FF, $29, $FF, $2A, $2B, $26, $27, $2C ; CPU:$E30D PRG:230D 40 D7 08 AA 35 36 37 38 FF 29 FF 2A 2B 26 27 2C + .byte $2B, $26, $2D, $28, $2E, Timer2F, GameMode, $31, $25, $32, $2D, $28, $25, $32, $27, $28 ; CPU:$E31D PRG:231D 2B 26 2D 28 2E 2F 30 31 25 32 2D 28 25 32 27 28 + .byte $33, $34, $FF, $2A, $25, $26, $27, $28, $25, $26, $2D, $28, $3A, $3B, $3C, $3D ; CPU:$E32D PRG:232D 33 34 FF 2A 25 26 27 28 25 26 2D 28 3A 3B 3C 3D + .byte $3E, $3F, $3E, $40, $41, $42, $43, $40, $44, $3B, $45, $3D, $46, $3B, $47, $40 ; CPU:$E33D PRG:233D 3E 3F 3E 40 41 42 43 40 44 3B 45 3D 46 3B 47 40 + .byte $9D, $E3, $AA, $E3, $B7, $E3, $C4, $E3, $D9, $E3, $76, $E4, $8B, $E4, $A0, $E4 ; CPU:$E34D PRG:234D 9D E3 AA E3 B7 E3 C4 E3 D9 E3 76 E4 8B E4 A0 E4 + .byte $B5, $E4, $53, $E6, $CA, $E4, $29, $E6, $3E, $E6, $CF, $E4, $E8, $E4, $FD, $E4 ; CPU:$E35D PRG:235D B5 E4 53 E6 CA E4 29 E6 3E E6 CF E4 E8 E4 FD E4 + .byte $12, $E5, $27, $E5, $49, $E5, $5E, $E5, $34, $E5, $73, $E5, $84, $E5, $9A, $E5 ; CPU:$E36D PRG:236D 12 E5 27 E5 49 E5 5E E5 34 E5 73 E5 84 E5 9A E5 + .byte $95, $E5, $FF, $E3, $10, $E4, $EE, $E3, $21, $E4, $32, $E4, $54, $E4, $65, $E4 ; CPU:$E37D PRG:237D 95 E5 FF E3 10 E4 EE E3 21 E4 32 E4 54 E4 65 E4 + .byte $43, $E4, $C0, $E5, $D5, $E5, $AB, $E5, $EA, $E5, $FF, $E5, $14, $E6, $60, $E6 ; CPU:$E38D PRG:238D 43 E4 C0 E5 D5 E5 AB E5 EA E5 FF E5 14 E6 60 E6 + .byte $E6, $DF, Zp00, $F8, $E7, $A5, $10, $F0, $E9, $78, $28, $F0, Zp00, $E6, $DF, Zp00 ; CPU:$E39D PRG:239D E6 DF 00 F8 E7 A5 10 F0 E9 78 28 F0 00 E6 DF 00 + .byte $F8, $E7, $A5, $10, $F0, $E9, $85, $28, $F0, Zp00, $E6, $DF, Zp01, $F8, $E7, $A5 ; CPU:$E3AD PRG:23AD F8 E7 A5 10 F0 E9 85 28 F0 00 E6 DF 01 F8 E7 A5 + .byte $11, $F0, $E9, $92, $29, $F0, Zp00, $E7, $BE, Zp00, $F0, $E8, $FB, $10, $F0, $E7 ; CPU:$E3BD PRG:23BD 11 F0 E9 92 29 F0 00 E7 BE 00 F0 E8 FB 10 F0 E7 + .byte $47, $10, $F8, $E9, $E0, GameMode, $F0, $E9, $D7, GameMode, Zp00, Zp00, $E7, $BE, Zp00, $F0 ; CPU:$E3CD PRG:23CD 47 10 F8 E9 E0 30 F0 E9 D7 30 00 00 E7 BE 00 F0 + .byte $E8, $FB, $10, $F0, $E7, $47, $10, $F8, $E9, $CE, GameMode, $F0, $E9, $E9, GameMode, Zp00 ; CPU:$E3DD PRG:23DD E8 FB 10 F0 E7 47 10 F8 E9 CE 30 F0 E9 E9 30 00 + .byte Zp00, $E7, $24, Zp00, $F0, $E7, $77, $10, $F8, $E8, $8A, $18, $F0, $EA, $72, GameMode ; CPU:$E3ED PRG:23ED 00 E7 24 00 F0 E7 77 10 F8 E8 8A 18 F0 EA 72 30 + .byte $F0, Zp00, $E7, $24, Zp00, $F0, $E7, $77, $10, $F8, $E8, $8A, $18, $F0, $EA, $87 ; CPU:$E3FD PRG:23FD F0 00 E7 24 00 F0 E7 77 10 F8 E8 8A 18 F0 EA 87 + .byte GameMode, $F0, Zp00, $E7, $24, Zp00, $F0, $E7, $77, $10, $F8, $E8, $8A, $18, $F0, $EA ; CPU:$E40D PRG:240D 30 F0 00 E7 24 00 F0 E7 77 10 F8 E8 8A 18 F0 EA + .byte $9E, GameMode, $F0, Zp00, $E7, $24, Zp00, $F0, $E7, $77, $10, $F8, $E8, $A6, $18, $F0 ; CPU:$E41D PRG:241D 9E 30 F0 00 E7 24 00 F0 E7 77 10 F8 E8 A6 18 F0 + .byte $EA, $72, GameMode, $F0, Zp00, $E7, $24, Zp00, $F0, $E7, $77, $10, $F8, $E8, $C0, $18 ; CPU:$E42D PRG:242D EA 72 30 F0 00 E7 24 00 F0 E7 77 10 F8 E8 C0 18 + .byte $F0, $EA, $72, GameMode, $F0, Zp00, $E7, $24, $04, $F0, $E7, $85, $14, $F8, $E8, $A6 ; CPU:$E43D PRG:243D F0 EA 72 30 F0 00 E7 24 04 F0 E7 85 14 F8 E8 A6 + .byte $1C, $F0, $EA, $B5, $34, $F0, Zp00, $E7, $24, Zp00, $F0, $E7, $8D, $10, $F8, $E8 ; CPU:$E44D PRG:244D 1C F0 EA B5 34 F0 00 E7 24 00 F0 E7 8D 10 F8 E8 + .byte $C0, $18, $F0, $EA, $72, GameMode, $F0, Zp00, $E7, $24, Zp00, $F0, $E7, $7D, $10, $F8 ; CPU:$E45D PRG:245D C0 18 F0 EA 72 30 F0 00 E7 24 00 F0 E7 7D 10 F8 + .byte $E8, $C0, $18, $F0, $EA, $72, GameMode, $F0, Zp00, $E7, $BE, Zp00, $F0, $E8, $FB, $10 ; CPU:$E46D PRG:246D E8 C0 18 F0 EA 72 30 F0 00 E7 BE 00 F0 E8 FB 10 + .byte $F0, $E7, $47, $10, $F8, $E9, $E0, GameMode, $F0, $E9, $E9, GameMode, Zp00, Zp00, $E7, $BE ; CPU:$E47D PRG:247D F0 E7 47 10 F8 E9 E0 30 F0 E9 E9 30 00 00 E7 BE + .byte Zp00, $F0, $E9, $05, $10, $F0, $E7, $47, $10, $F8, $E9, $E0, GameMode, $F0, $E9, $E9 ; CPU:$E48D PRG:248D 00 F0 E9 05 10 F0 E7 47 10 F8 E9 E0 30 F0 E9 E9 + .byte GameMode, Zp00, Zp00, $E7, $BE, $03, $F0, $E9, $0F, $13, $F0, $E7, $47, $13, $F8, $E9 ; CPU:$E49D PRG:249D 30 00 00 E7 BE 03 F0 E9 0F 13 F0 E7 47 13 F8 E9 + .byte $CE, $33, $F0, $E9, $D7, $33, Zp00, Zp00, $E7, $BE, $03, $F0, $E9, $0F, $13, $F0 ; CPU:$E4AD PRG:24AD CE 33 F0 E9 D7 33 00 00 E7 BE 03 F0 E9 0F 13 F0 + .byte $E7, $4F, $13, $F8, $E9, $CE, $33, $F0, $E9, $D7, $33, Zp00, Zp00, $E9, $B4, Zp00 ; CPU:$E4BD PRG:24BD E7 4F 13 F8 E9 CE 33 F0 E9 D7 33 00 00 E9 B4 00 + .byte $F0, Zp00, $E6, $F6, Zp00, $F0, $E7, $57, $10, $F8, $E7, $E6, $18, Zp00, $E9, $19 ; CPU:$E4CD PRG:24CD F0 00 E6 F6 00 F0 E7 57 10 F8 E7 E6 18 00 E9 19 + .byte $18, $F0, $E9, $42, GameMode, $F8, $E9, $F2, GameMode, $F0, Zp00, $E6, $F6, Zp00, $F0, $E7 ; CPU:$E4DD PRG:24DD 18 F0 E9 42 30 F8 E9 F2 30 F0 00 E6 F6 00 F0 E7 + .byte $57, $10, $F8, $E7, $E6, $18, Zp00, $E9, $28, $18, $F0, $E9, $F2, GameMode, $F0, Zp00 ; CPU:$E4ED PRG:24ED 57 10 F8 E7 E6 18 00 E9 28 18 F0 E9 F2 30 F0 00 + .byte $E6, $F6, Zp00, $F0, $E7, $57, $10, $F8, $E7, $E6, $18, Zp00, $E9, $34, $18, $F0 ; CPU:$E4FD PRG:24FD E6 F6 00 F0 E7 57 10 F8 E7 E6 18 00 E9 34 18 F0 + .byte $E9, $F2, GameMode, $F0, Zp00, $E6, $F6, Zp00, $F0, $E7, $5F, $10, $F8, $E7, $E6, $18 ; CPU:$E50D PRG:250D E9 F2 30 F0 00 E6 F6 00 F0 E7 5F 10 F8 E7 E6 18 + .byte Zp00, $E9, $34, $18, $F0, $E9, $F2, GameMode, $F0, Zp00, $E7, $F4, Zp00, $F0, $E8, $0A ; CPU:$E51D PRG:251D 00 E9 34 18 F0 E9 F2 30 F0 00 E7 F4 00 F0 E8 0A + .byte NmiPhase, $F8, $E9, $F2, GameMode, $F0, Zp00, $E7, $0A, Zp00, $F0, $E7, $67, $18, $F8, $E8 ; CPU:$E52D PRG:252D 20 F8 E9 F2 30 F0 00 E7 0A 00 F0 E7 67 18 F8 E8 + .byte $1B, $18, $F0, $EA, $34, $28, $F0, $EA, $3F, $28, Zp00, Zp00, $E7, $0A, Zp00, $F0 ; CPU:$E53D PRG:253D 1B 18 F0 EA 34 28 F0 EA 3F 28 00 00 E7 0A 00 F0 + .byte $E7, $67, $18, $F8, $E8, $1B, $18, $F0, $EA, $34, $28, $F0, $EA, $55, $28, Zp00 ; CPU:$E54D PRG:254D E7 67 18 F8 E8 1B 18 F0 EA 34 28 F0 EA 55 28 00 + .byte Zp00, $E7, $0A, Zp00, $F0, $E7, $67, $18, $F8, $E8, $1B, $18, $F0, $EA, $4A, $28 ; CPU:$E55D PRG:255D 00 E7 0A 00 F0 E7 67 18 F8 E8 1B 18 F0 EA 4A 28 + .byte $F0, $EA, $3F, $28, Zp00, Zp00, $E7, $0A, Zp00, $F0, $E7, $67, $18, $F8, $E8, $35 ; CPU:$E56D PRG:256D F0 EA 3F 28 00 00 E7 0A 00 F0 E7 67 18 F8 E8 35 + .byte $18, $F0, $EA, $60, Mode38, $F0, Zp00, $E7, $0A, $03, $F0, $E7, $67, $1B, $F8, $E8 ; CPU:$E57D PRG:257D 18 F0 EA 60 38 F0 00 E7 0A 03 F0 E7 67 1B F8 E8 + .byte $55, $1B, $F0, $EA, $6A, $3B, $F0, Zp00, $E8, $75, Zp00, $F0, Zp00, $E7, $0A, $03 ; CPU:$E58D PRG:258D 55 1B F0 EA 6A 3B F0 00 E8 75 00 F0 00 E7 0A 03 + .byte $F0, $E7, $6F, $1B, $F8, $E8, $55, $1B, $F0, $EA, $6A, $3B, $F0, Zp00, $E7, $35 ; CPU:$E59D PRG:259D F0 E7 6F 1B F8 E8 55 1B F0 EA 6A 3B F0 00 E7 35 + .byte Zp00, $F0, $E7, $95, $10, $F8, $E8, $DB, $18, $F8, $E9, $47, $18, $F0, $EA, $D0 ; CPU:$E5AD PRG:25AD 00 F0 E7 95 10 F8 E8 DB 18 F8 E9 47 18 F0 EA D0 + .byte GameMode, $F0, Zp00, $E7, $35, Zp00, $F0, $E7, $95, $10, $F8, $E8, $DB, $18, $F8, $E9 ; CPU:$E5BD PRG:25BD 30 F0 00 E7 35 00 F0 E7 95 10 F8 E8 DB 18 F8 E9 + .byte $47, $18, $F0, $EA, $E5, GameMode, $F0, Zp00, $E7, $35, Zp00, $F0, $E7, $95, $10, $F8 ; CPU:$E5CD PRG:25CD 47 18 F0 EA E5 30 F0 00 E7 35 00 F0 E7 95 10 F8 + .byte $E8, $DB, $18, $F8, $E9, $47, $18, $F0, $EA, $FA, GameMode, $F0, Zp00, $E7, $35, Zp00 ; CPU:$E5DD PRG:25DD E8 DB 18 F8 E9 47 18 F0 EA FA 30 F0 00 E7 35 00 + .byte $F0, $E7, $95, $10, $F8, $E8, $DB, $18, $F8, $E9, $58, $18, $F0, $EA, $D0, GameMode ; CPU:$E5ED PRG:25ED F0 E7 95 10 F8 E8 DB 18 F8 E9 58 18 F0 EA D0 30 + .byte $F0, Zp00, $E7, $35, Zp00, $F0, $E7, $95, $10, $F8, $E8, $DB, $18, $F8, $E9, $67 ; CPU:$E5FD PRG:25FD F0 00 E7 35 00 F0 E7 95 10 F8 E8 DB 18 F8 E9 67 + .byte $18, $F0, $EA, $D0, GameMode, $F0, Zp00, $E7, $35, Zp00, $F0, $E7, $9D, $10, $F8, $E8 ; CPU:$E60D PRG:260D 18 F0 EA D0 30 F0 00 E7 35 00 F0 E7 9D 10 F8 E8 + .byte $DB, $18, $F8, $E9, $67, $18, $F0, $EA, $D0, GameMode, $F0, Zp00, $E6, $F6, Zp00, $F0 ; CPU:$E61D PRG:261D DB 18 F8 E9 67 18 F0 EA D0 30 F0 00 E6 F6 00 F0 + .byte $E7, $57, $10, $F8, $E7, $E6, $18, Zp00, $E9, $19, $18, $F0, $EA, Zp08, GameMode, $F0 ; CPU:$E62D PRG:262D E7 57 10 F8 E7 E6 18 00 E9 19 18 F0 EA 08 30 F0 + .byte Zp00, $E6, $F6, Zp00, $F0, $E7, $57, $10, $F8, $E7, $E6, $18, Zp00, $E9, $19, $18 ; CPU:$E63D PRG:263D 00 E6 F6 00 F0 E7 57 10 F8 E7 E6 18 00 E9 19 18 + .byte $F0, $EA, $1E, GameMode, $F0, Zp00, $E6, $EE, Zp00, $F8, $E7, $B4, Zp08, $F0, $E9, $9F ; CPU:$E64D PRG:264D F0 EA 1E 30 F0 00 E6 EE 00 F8 E7 B4 08 F0 E9 9F + .byte $10, $F0, Zp00, $E6, $EE, Zp00, $F8, $E8, $F1, Zp08, $F0, $E9, $9F, $10, $F0, Zp00 ; CPU:$E65D PRG:265D 10 F0 00 E6 EE 00 F8 E8 F1 08 F0 E9 9F 10 F0 00 + .byte Zp00, Zp00, Zp00, Zp08, Zp00, $10, Zp08, Zp00, Zp08, Zp08, Zp08, $10, $10, Zp00, $10, Zp08 ; CPU:$E66D PRG:266D 00 00 00 08 00 10 08 00 08 08 08 10 10 00 10 08 + .byte $10, $10, Zp00, Zp00, Zp08, Zp00, $10, Zp00, $18, Zp00, Zp00, Zp08, Zp08, Zp08, $10, Zp08 ; CPU:$E67D PRG:267D 10 10 00 00 08 00 10 00 18 00 00 08 08 08 10 08 + .byte $18, Zp08, Zp00, $10, Zp08, $10, $10, $10, $18, $10, Zp00, $18, Zp08, $18, $10, $18 ; CPU:$E68D PRG:268D 18 08 00 10 08 10 10 10 18 10 00 18 08 18 10 18 + .byte $18, $18, Zp00, Zp00, Zp00, Zp08, Zp00, $10, Zp00, $18, Zp08, Zp00, Zp08, Zp08, Zp08, $10 ; CPU:$E69D PRG:269D 18 18 00 00 00 08 00 10 00 18 08 00 08 08 08 10 + .byte Zp08, $18, $10, Zp00, $10, Zp08, $10, $10, $10, $18, Zp00, Zp00, Zp00, Zp08, Zp08, Zp00 ; CPU:$E6AD PRG:26AD 08 18 10 00 10 08 10 10 10 18 00 00 00 08 08 00 + .byte Zp08, Zp08, $10, Zp08, $18, Zp08, NmiPhase, Zp08, $28, Zp08, Zp00, $10, Zp00, $18, Zp08, $10 ; CPU:$E6BD PRG:26BD 08 08 10 08 18 08 20 08 28 08 00 10 00 18 08 10 + .byte Zp08, $18, $10, $10, $10, $18, $18, $10, $18, $18, NmiPhase, $10, NmiPhase, $18, $28, $10 ; CPU:$E6CD PRG:26CD 08 18 10 10 10 18 18 10 18 18 20 10 20 18 28 10 + .byte $28, $18, Zp00, $FD, Zp00, Zp01, $02, $03, $FD, Zp01, $04, $05, $06, $07, Zp08, Zp09 ; CPU:$E6DD PRG:26DD 28 18 00 FD 00 01 02 03 FD 01 04 05 06 07 08 09 + .byte $FF, Zp00, $FD, $03, $50, $FD, $43, $50, $FF, Zp01, $FE, $FD, Zp01, $61, $FE, $FE ; CPU:$E6ED PRG:26ED FF 00 FD 03 50 FD 43 50 FF 01 FE FD 01 61 FE FE + .byte $60, $62, $FE, $FE, $FD, $41, $60, $62, $FE, $FE, $FE, $61, $FF, $02, $FE, $FD ; CPU:$E6FD PRG:26FD 60 62 FE FE FD 41 60 62 FE FE FE 61 FF 02 FE FD + .byte $02, $90, $FD, $42, $90, $FE, $FD, $02, $97, $91, $FD, $42, $91, $97, $FD, Zp01 ; CPU:$E70D PRG:270D 02 90 FD 42 90 FE FD 02 97 91 FD 42 91 97 FD 01 + .byte $FE, $92, $FD, $41, $92, $FE, $FF, $02, $FD, Zp00, $C2, $C3, $FD, $40, $C3, $C2 ; CPU:$E71D PRG:271D FE 92 FD 41 92 FE FF 02 FD 00 C2 C3 FD 40 C3 C2 + .byte $FE, $FD, Zp01, $C4, $FD, $41, $C4, $FF, $02, $FE, $FD, Zp00, $D6, $FD, $40, $D6 ; CPU:$E72D PRG:272D FE FD 01 C4 FD 41 C4 FF 02 FE FD 00 D6 FD 40 D6 + .byte $FE, $FD, Zp00, $D7, $D8, $FD, $40, $D8, $D7, $FF, Zp00, $FD, $02, $35, $FD, $42 ; CPU:$E73D PRG:273D FE FD 00 D7 D8 FD 40 D8 D7 FF 00 FD 02 35 FD 42 + .byte $35, $FF, Zp00, $FD, $02, $48, $FD, $42, $48, $FF, Zp00, $FD, Zp01, $63, $FD, $41 ; CPU:$E74D PRG:274D 35 FF 00 FD 02 48 FD 42 48 FF 00 FD 01 63 FD 41 + .byte $63, $FF, Zp00, $FD, Zp01, $7D, $FD, $41, $7D, $FF, Zp00, $FD, Zp01, $93, $FD, $41 ; CPU:$E75D PRG:275D 63 FF 00 FD 01 7D FD 41 7D FF 00 FD 01 93 FD 41 + .byte $93, $FF, Zp00, $FD, Zp01, $9E, $FD, $41, $9E, $FF, Zp00, $FD, Zp01, $C5, $C6, $FF ; CPU:$E76D PRG:276D 93 FF 00 FD 01 9E FD 41 9E FF 00 FD 01 C5 C6 FF + .byte Zp00, $FD, $41, $C6, $FD, Zp01, $C6, $FF, Zp00, $FD, Zp01, $87, $FD, $41, $87, $FF ; CPU:$E77D PRG:277D 00 FD 41 C6 FD 01 C6 FF 00 FD 01 87 FD 41 87 FF + .byte Zp00, $FD, Zp01, $C5, $FD, $41, $C5, $FF, Zp00, $FD, Zp01, $D9, $FD, $41, $D9, $FF ; CPU:$E78D PRG:278D 00 FD 01 C5 FD 41 C5 FF 00 FD 01 D9 FD 41 D9 FF + .byte Zp00, $FD, Zp01, $F5, $FD, $41, $F5, $FF, Zp00, $FD, $02, $0A, $0B, $FE, $0C, $0D ; CPU:$E79D PRG:279D 00 FD 01 F5 FD 41 F5 FF 00 FD 02 0A 0B FE 0C 0D + .byte $0E, $FD, $03, $0F, $10, $11, $FF, $02, $FD, $03, $51, $52, $FD, $43, $52, $51 ; CPU:$E7AD PRG:27AD 0E FD 03 0F 10 11 FF 02 FD 03 51 52 FD 43 52 51 + .byte $FF, $03, $FD, Zp00, GameMode, $31, $FD, Zp01, $32, $33, $FD, $02, $FE, $37, $39, $FD ; CPU:$E7BD PRG:27BD FF 03 FD 00 30 31 FD 01 32 33 FD 02 FE 37 39 FD + .byte Zp00, $3B, $FD, $40, $31, GameMode, $FD, $41, $33, $32, $FD, $42, $FE, $34, $37, $36 ; CPU:$E7CD PRG:27CD 00 3B FD 40 31 30 FD 41 33 32 FD 42 FE 34 37 36 + .byte $39, $FD, $43, Mode38, $FD, $40, $3B, $3A, $FF, Zp01, $FD, $41, $65, $67, $69, $FE ; CPU:$E7DD PRG:27DD 39 FD 43 38 FD 40 3B 3A FF 01 FD 41 65 67 69 FE + .byte $64, $66, $68, $FD, $40, $6A, $FF, Zp01, $FE, $FD, Zp01, $77, $79, $7B, $76, $78 ; CPU:$E7ED PRG:27ED 64 66 68 FD 40 6A FF 01 FE FD 01 77 79 7B 76 78 + .byte $7A, $65, $FD, $41, $76, $78, $7A, $65, $FE, $77, $79, $7B, $FF, Zp01, $FD, Zp01 ; CPU:$E7FD PRG:27FD 7A 65 FD 41 76 78 7A 65 FE 77 79 7B FF 01 FD 01 + .byte $67, $7C, $FD, Zp00, $6B, $FE, $FD, $41, $67, $7C, $FD, $40, $6B, $FF, Zp01, $FD ; CPU:$E80D PRG:280D 67 7C FD 00 6B FE FD 41 67 7C FD 40 6B FF 01 FD + .byte $02, $99, $9A, $FE, $FE, $FE, $94, $94, $FD, $03, $95, $FD, $42, $FE, $94, $94 ; CPU:$E81D PRG:281D 02 99 9A FE FE FE 94 94 FD 03 95 FD 42 FE 94 94 + .byte $FD, $43, $95, $FD, $42, $99, $9A, $FF, Zp01, $FD, $03, $A9, $FD, Zp00, $AA, $AD ; CPU:$E82D PRG:282D FD 43 95 FD 42 99 9A FF 01 FD 03 A9 FD 00 AA AD + .byte $B0, $FE, $FD, $03, $AB, $FD, Zp00, $AE, $B1, $FE, $FD, $03, $AC, $AF, $B2, $FD ; CPU:$E83D PRG:283D B0 FE FD 03 AB FD 00 AE B1 FE FD 03 AC AF B2 FD + .byte $43, $99, $9A, $9B, $FD, $03, $B3, $FF, Zp01, $FD, $03, $B4, $B5, $FD, Zp00, $B7 ; CPU:$E84D PRG:284D 43 99 9A 9B FD 03 B3 FF 01 FD 03 B4 B5 FD 00 B7 + .byte $BA, $FE, $FD, $03, $B6, $FD, Zp00, $B8, $BB, $FE, $FD, $03, $AC, $B9, $BC, $FD ; CPU:$E85D PRG:285D BA FE FD 03 B6 FD 00 B8 BB FE FD 03 AC B9 BC FD + .byte $43, $99, $9A, $9B, $FD, $03, $BD, $FF, Zp01, $FD, $03, $A6, $A7, $A8, $FE, $A3 ; CPU:$E86D PRG:286D 43 99 9A 9B FD 03 BD FF 01 FD 03 A6 A7 A8 FE A3 + .byte $A4, $A5, $FE, $FD, $43, $A3, $A4, $A5, $FE, $A6, $A7, $A8, $FF, Zp01, $FE, $FD ; CPU:$E87D PRG:287D A4 A5 FE FD 43 A3 A4 A5 FE A6 A7 A8 FF 01 FE FD + .byte $03, $C8, $CA, $CC, $FD, Zp01, $C7, $FD, $03, $C9, $CB, $FE, $FD, $41, $C7, $FD ; CPU:$E88D PRG:288D 03 C8 CA CC FD 01 C7 FD 03 C9 CB FE FD 41 C7 FD + .byte $43, $C9, $CB, $FE, $FE, $C8, $CA, $CC, $FF, Zp01, $FD, $03, $88, $89, $FE, $FE ; CPU:$E89D PRG:289D 43 C9 CB FE FE C8 CA CC FF 01 FD 03 88 89 FE FE + .byte $FD, Zp01, $C7, $FD, $03, $8A, $8B, $FE, $FD, $41, $C7, $FD, $43, $8A, $8B, $FE ; CPU:$E8AD PRG:28AD FD 01 C7 FD 03 8A 8B FE FD 41 C7 FD 43 8A 8B FE + .byte $88, $89, $FF, Zp01, $FE, $FD, $03, $2D, Timer2F, $FE, $FD, Zp01, $C7, $FD, $03, $2E ; CPU:$E8BD PRG:28BD 88 89 FF 01 FE FD 03 2D 2F FE FD 01 C7 FD 03 2E + .byte $5F, $FE, $FD, $41, $C7, $FD, $43, $2E, $5F, $FE, $FE, $2D, Timer2F, $FF, Zp01, $FD ; CPU:$E8CD PRG:28CD 5F FE FD 41 C7 FD 43 2E 5F FE FE 2D 2F FF 01 FD + .byte Zp01, $DB, $FE, $FE, $FE, $FD, $41, $DB, $FD, $43, $DD, $FE, $FE, $FD, $03, $E9 ; CPU:$E8DD PRG:28DD 01 DB FE FE FE FD 41 DB FD 43 DD FE FE FD 03 E9 + .byte $EA, $EB, $EC, $FF, $02, $FD, $03, $FB, $FC, $FD, $43, $FC, $FB, $FF, Zp01, $FD ; CPU:$E8ED PRG:28ED EA EB EC FF 02 FD 03 FB FC FD 43 FC FB FF 01 FD + .byte $03, $34, $36, Mode38, $FD, Zp00, $3A, $FF, Zp01, $FD, $03, $40, $41, $42, $FD, Zp00 ; CPU:$E8FD PRG:28FD 03 34 36 38 FD 00 3A FF 01 FD 03 40 41 42 FD 00 + .byte $43, $FF, Zp01, $FD, $03, $44, $45, $46, $FD, Zp00, $47, $FF, Zp01, $FD, Zp01, $64 ; CPU:$E90D PRG:290D 43 FF 01 FD 03 44 45 46 FD 00 47 FF 01 FD 01 64 + .byte $66, $68, $FD, Zp00, $6A, $FD, Zp01, $65, $67, $69, $FF, Zp01, $FD, Zp01, $6F, $70 ; CPU:$E91D PRG:291D 66 68 FD 00 6A FD 01 65 67 69 FF 01 FD 01 6F 70 + .byte $71, $73, $65, $67, $72, $74, $FF, Zp01, $FD, Zp01, $7E, $7F, $80, $FE, $65, $67 ; CPU:$E92D PRG:292D 71 73 65 67 72 74 FF 01 FD 01 7E 7F 80 FE 65 67 + .byte $81, $FD, Zp00, $6B, $FF, Zp00, $FD, Zp00, $6B, $FF, Zp01, $FD, $03, $DA, $DC, $DE ; CPU:$E93D PRG:293D 81 FD 00 6B FF 00 FD 00 6B FF 01 FD 03 DA DC DE + .byte $E0, $FE, $DD, $DF, $FE, $FE, $FE, $FD, $43, $DF, $FF, Zp01, $FD, $03, $EF, $F0 ; CPU:$E94D PRG:294D E0 FE DD DF FE FE FE FD 43 DF FF 01 FD 03 EF F0 + .byte $F2, $D4, $FE, $F1, $F3, $FE, $FE, $FE, $F4, $FF, Zp01, $FD, $03, $F6, $F7, $F9 ; CPU:$E95D PRG:295D F2 D4 FE F1 F3 FE FE FE F4 FF 01 FD 03 F6 F7 F9 + .byte $D4, $FE, $F8, $FA, $FE, $FE, $FE, $FD, $43, $DF, $FF, Zp00, $FD, Zp00, $12, $13 ; CPU:$E96D PRG:296D D4 FE F8 FA FE FE FE FD 43 DF FF 00 FD 00 12 13 + .byte $14, $15, Ctrl1, $17, $18, $19, $1A, $FF, Zp00, $FD, Zp00, $1B, $1C, $1D, $1E, $1F ; CPU:$E97D PRG:297D 14 15 16 17 18 19 1A FF 00 FD 00 1B 1C 1D 1E 1F + .byte NmiPhase, $21, NmiFlag, $23, $FF, Zp00, $FD, Zp00, $24, $25, $26, $27, $28, $29, $2A, $2B ; CPU:$E98D PRG:298D 20 21 22 23 FF 00 FD 00 24 25 26 27 28 29 2A 2B + .byte $2C, $FF, Zp01, $FD, Zp00, $82, $84, $86, $FE, $83, $85, $D5, $FE, $FD, $40, $83 ; CPU:$E99D PRG:299D 2C FF 01 FD 00 82 84 86 FE 83 85 D5 FE FD 40 83 + .byte $85, $D5, $FE, $82, $84, $86, $FF, $02, $FD, Zp00, $49, $FE, $FE, $FD, $40, $49 ; CPU:$E9AD PRG:29AD 85 D5 FE 82 84 86 FF 02 FD 00 49 FE FE FD 40 49 + .byte $FD, Zp00, $4A, $4B, $FD, $40, $4B, $4A, $FD, Zp00, $4C, $4D, $FD, $40, $4D, $4C ; CPU:$E9BD PRG:29BD FD 00 4A 4B FD 40 4B 4A FD 00 4C 4D FD 40 4D 4C + .byte $FF, Zp00, $FD, Zp00, $53, $54, $FE, $55, $56, $FF, Zp00, $FD, $40, $54, $53, $FE ; CPU:$E9CD PRG:29CD FF 00 FD 00 53 54 FE 55 56 FF 00 FD 40 54 53 FE + .byte $56, $55, $FF, Zp00, $FD, Zp00, $3C, $3D, $FE, $3E, $3F, $FF, Zp00, $FD, $40, $3D ; CPU:$E9DD PRG:29DD 56 55 FF 00 FD 00 3C 3D FE 3E 3F FF 00 FD 40 3D + .byte $3C, $FE, $3F, $3E, $FF, Zp01, $FE, $FE, $FE, $FD, Zp00, $6D, $FE, $6C, $6C, $6E ; CPU:$E9ED PRG:29ED 3C FE 3F 3E FF 01 FE FE FE FD 00 6D FE 6C 6C 6E + .byte $FD, $40, $6B, $6C, $6C, $6E, $FE, $FE, $FE, $6D, $FF, Zp01, $FE, $FE, $FE, $FD ; CPU:$E9FD PRG:29FD FD 40 6B 6C 6C 6E FE FE FE 6D FF 01 FE FE FE FD + .byte Zp00, $6D, $6B, $6C, $6C, $6E, $FD, $40, Zp00, $4E, $4E, $4F, $FE, $FE, $FE, $98 ; CPU:$EA0D PRG:2A0D 00 6D 6B 6C 6C 6E FD 40 00 4E 4E 4F FE FE FE 98 + .byte $FF, Zp01, $FE, $FE, $FE, $FD, Zp00, $98, Zp00, $4E, $4E, $4F, $FD, $40, $6B, $6C ; CPU:$EA1D PRG:2A1D FF 01 FE FE FE FD 00 98 00 4E 4E 4F FD 40 6B 6C + .byte $6C, $6E, $FE, $FE, $FE, $6D, $FF, Zp01, $FD, $03, $9B, $9C, $9D, $FE, $FE, $FE ; CPU:$EA2D PRG:2A2D 6C 6E FE FE FE 6D FF 01 FD 03 9B 9C 9D FE FE FE + .byte $96, $FF, Zp01, $FD, $43, $FE, $FE, $96, $FE, $9B, $9C, $9D, $FF, Zp01, $FD, $03 ; CPU:$EA3D PRG:2A3D 96 FF 01 FD 43 FE FE 96 FE 9B 9C 9D FF 01 FD 03 + .byte $9F, $A0, $A2, $FE, $FE, $FE, $A1, $FF, Zp01, $FD, $43, $FE, $FE, $A1, $FE, $9F ; CPU:$EA4D PRG:2A4D 9F A0 A2 FE FE FE A1 FF 01 FD 43 FE FE A1 FE 9F + .byte $A0, $A2, $FF, $02, $FD, Zp00, $9D, $96, $FD, $40, $96, $9D, $FF, $02, $FD, Zp00 ; CPU:$EA5D PRG:2A5D A0 A2 FF 02 FD 00 9D 96 FD 40 96 9D FF 02 FD 00 + .byte $BE, $BF, $C0, $C1, $FF, Zp01, $FE, $FE, $FD, Zp00, $D1, $FE, $CD, $CF, $D2, $FE ; CPU:$EA6D PRG:2A6D BE BF C0 C1 FF 01 FE FE FD 00 D1 FE CD CF D2 FE + .byte $FD, $40, $CD, $CF, $D2, $FE, $FE, $FE, $D1, $FF, Zp01, $FE, $FE, $FD, Zp00, $D1 ; CPU:$EA7D PRG:2A7D FD 40 CD CF D2 FE FE FE D1 FF 01 FE FE FD 00 D1 + .byte $FE, $CD, $CF, $D2, $FE, $FD, Zp00, $CE, $D0, $D3, $FE, $FE, $FE, $FD, $40, $98 ; CPU:$EA8D PRG:2A8D FE CD CF D2 FE FD 00 CE D0 D3 FE FE FE FD 40 98 + .byte $FF, Zp01, $FE, $FE, $FD, Zp00, $98, $FE, $FD, $40, $CE, $D0, $D3, $FE, $FD, $40 ; CPU:$EA9D PRG:2A9D FF 01 FE FE FD 00 98 FE FD 40 CE D0 D3 FE FD 40 + .byte $CD, $CF, $D2, $FE, $FE, $FE, $D1, $FF, Zp01, $FE, $FE, $FD, Zp00, $8E, $FE, $FD ; CPU:$EAAD PRG:2AAD CD CF D2 FE FE FE D1 FF 01 FE FE FD 00 8E FE FD + .byte Zp01, $8C, $8D, $FD, Zp00, $8F, $FE, $FD, $41, $8C, $8D, $FD, $40, $8F, $FE, $FE ; CPU:$EABD PRG:2ABD 01 8C 8D FD 00 8F FE FD 41 8C 8D FD 40 8F FE FE + .byte $FE, $8E, $FF, Zp01, $FE, $FD, Zp00, $E2, $E4, $FE, $E1, $E3, $E5, $FE, $FD, $40 ; CPU:$EACD PRG:2ACD FE 8E FF 01 FE FD 00 E2 E4 FE E1 E3 E5 FE FD 40 + .byte $E1, $E3, $E5, $FE, $FE, $E2, $E4, $FF, Zp01, $FE, $FD, Zp00, $E2, $E4, $FE, $E1 ; CPU:$EADD PRG:2ADD E1 E3 E5 FE FE E2 E4 FF 01 FE FD 00 E2 E4 FE E1 + .byte $E3, $E5, $FE, $FD, Zp00, $E6, $E7, $E8, $FE, $FE, $ED, $EE, $FF, Zp01, $FE, $FD ; CPU:$EAED PRG:2AED E3 E5 FE FD 00 E6 E7 E8 FE FE ED EE FF 01 FE FD + .byte $40, $ED, $EE, $FE, $E6, $E7, $E8, $FE, $FD, $40, $E1, $E3, $E5, $FE, $FE, $E2 ; CPU:$EAFD PRG:2AFD 40 ED EE FE E6 E7 E8 FE FD 40 E1 E3 E5 FE FE E2 + .byte $E4, $FF, $4E, $11, $4B, $4B, $4B, $4B, $4B, $4B, $4B, $4B, $4B, $4C, $24, $24 ; CPU:$EB0D PRG:2B0D E4 FF 4E 11 4B 4B 4B 4B 4B 4B 4B 4B 4B 4C 24 24 + .byte $24, $1F, NmiFlag, $18, $1E, $FF, $15, $18, $1C, $1D, $D2, $4A, $24, $24, $24, $74 ; CPU:$EB1D PRG:2B1D 24 1F 22 18 1E FF 15 18 1C 1D D2 4A 24 24 24 74 + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $7E, $24, $24, $24, $24, $24, $24 ; CPU:$EB2D PRG:2B2D FF FF FF FF FF FF FF FF FF 7E 24 24 24 24 24 24 + .byte $24, $24, $24, $24, $24, $24, $24, $24, $24, $24, $24, $47, $11, $4B, $4B, $4B ; CPU:$EB3D PRG:2B3D 24 24 24 24 24 24 24 24 24 24 24 47 11 4B 4B 4B + .byte $4B, $4B, $4C, $1F, $0F, $18, $1E, $15, $D2, $4A, $74, $FF, $FF, $FF, $FF, $FF ; CPU:$EB4D PRG:2B4D 4B 4B 4C 1F 0F 18 1E 15 D2 4A 74 FF FF FF FF FF + .byte $7E, $24, $24, $24, $7D, $24, $24, $24, $47, $11, $4B, $4B, $4B, $4B, $4B, $4C ; CPU:$EB5D PRG:2B5D 7E 24 24 24 7D 24 24 24 47 11 4B 4B 4B 4B 4B 4C + .byte $1F, $0F, $12, $1B, $0E, $D2, $4A, $74, $FF, $FF, $FF, $FF, $FF, $7E, $24, $24 ; CPU:$EB6D PRG:2B6D 1F 0F 12 1B 0E D2 4A 74 FF FF FF FF FF 7E 24 24 + .byte $24, $7D, $24, $24, $24, $15, $FF, $FF, $FF, $FF, $FF, $15, $0F, $18, $1E, $15 ; CPU:$EB7D PRG:2B7D 24 7D 24 24 24 15 FF FF FF FF FF 15 0F 18 1E 15 + .byte $D2, $4E, $11, $4B, $4B, $4B, $4B, $4B, $4B, $4B, $4B, $4C, $24, $24, $24, $24 ; CPU:$EB8D PRG:2B8D D2 4E 11 4B 4B 4B 4B 4B 4B 4B 4B 4C 24 24 24 24 + .byte $1F, NmiFlag, $18, $1E, $FF, NmiPhase, $18, $17, $D2, $4A, $24, $24, $24, $24, $74, $FF ; CPU:$EB9D PRG:2B9D 1F 22 18 1E FF 20 18 17 D2 4A 24 24 24 24 74 FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $7E, $24, $24, $24, $24, $24, $24, $24, $24 ; CPU:$EBAD PRG:2BAD FF FF FF FF FF FF FF 7E 24 24 24 24 24 24 24 24 + .byte $24, $24, $24, $24, $24, $24, $24, $24, $24, $24, $4D, $FF, $FF, $FF, $3A, $3A ; CPU:$EBBD PRG:2BBD 24 24 24 24 24 24 24 24 24 24 4D FF FF FF 3A 3A + .byte $4E, $FF, $FF, $FF, $3B, $3B, $1B, $0E, NmiPhase, $0A, $1B, $0D, $0B, $18, $17, $1E ; CPU:$EBCD PRG:2BCD 4E FF FF FF 3B 3B 1B 0E 20 0A 1B 0D 0B 18 17 1E + .byte $1C, $FF, $FF, $FF, $FF, $FF, $4A, NmiFlag, $40, $60, $67, NmiFlag, $60, $60, $68, NmiFlag ; CPU:$EBDD PRG:2BDD 1C FF FF FF FF FF 4A 22 40 60 67 22 60 60 68 22 + .byte $80, $60, $68, NmiFlag, $A0, $60, $68, NmiFlag, $C0, $60, $68, NmiFlag, $E0, $60, $68, $21 ; CPU:$EBED PRG:2BED 80 60 68 22 A0 60 68 22 C0 60 68 22 E0 60 68 21 + .byte $66, $04, $56, $57, $56, $50, $21, $85, $05, $56, $5A, $5A, $57, $51, $21, $A5 ; CPU:$EBFD PRG:2BFD 66 04 56 57 56 50 21 85 05 56 5A 5A 57 51 21 A5 + .byte $05, $59, $5A, $58, $58, $52, $21, $C4, $06, $56, $58, $58, $5A, $59, $53, $21 ; CPU:$EC0D PRG:2C0D 05 59 5A 58 58 52 21 C4 06 56 58 58 5A 59 53 21 + .byte $E4, $06, $59, $58, $5A, $58, $5A, $54, NmiFlag, $04, $06, $58, $5A, $59, $58, $5A ; CPU:$EC1D PRG:2C1D E4 06 59 58 5A 58 5A 54 22 04 06 58 5A 59 58 5A + .byte $55, NmiFlag, $23, Zp01, $5D, NmiFlag, $24, $46, $5B, NmiFlag, $2A, Zp01, $5C, $21, $AD, $86 ; CPU:$EC2D PRG:2C2D 55 22 23 01 5D 22 24 46 5B 22 2A 01 5C 21 AD 86 + .byte $62, $63, $63, $63, $63, $66, $21, $CE, $83, $62, $63, $64, $21, $99, $84, $5E ; CPU:$EC3D PRG:2C3D 62 63 63 63 63 66 21 CE 83 62 63 64 21 99 84 5E + .byte $5F, $5F, $61, $21, $FA, $81, $65, $21, $3B, $8B, $5E, $5F, $5F, $5F, $5F, $5F ; CPU:$EC4D PRG:2C4D 5F 5F 61 21 FA 81 65 21 3B 8B 5E 5F 5F 5F 5F 5F + .byte $5F, $5F, $5F, $5F, $5F, $21, $DD, $83, $5E, $5F, $60, NmiFlag, $1C, $81, $65, NmiFlag ; CPU:$EC5D PRG:2C5D 5F 5F 5F 5F 5F 21 DD 83 5E 5F 60 22 1C 81 65 22 + .byte $A3, $03, $69, $6A, $6B, NmiFlag, $C3, $03, $6C, $6D, $6E, NmiFlag, $D0, $03, $69, $6A ; CPU:$EC6D PRG:2C6D A3 03 69 6A 6B 22 C3 03 6C 6D 6E 22 D0 03 69 6A + .byte $6B, NmiFlag, $F0, $03, $6C, $6D, $6E, NmiFlag, $68, $02, $6F, $70, NmiFlag, $72, $02, $6F ; CPU:$EC7D PRG:2C7D 6B 22 F0 03 6C 6D 6E 22 68 02 6F 70 22 72 02 6F + .byte $70, NmiFlag, $BB, $02, $6F, $70, NmiFlag, $C8, $03, $71, $72, $73, NmiFlag, $B5, $03, $71 ; CPU:$EC8D PRG:2C8D 70 22 BB 02 6F 70 22 C8 03 71 72 73 22 B5 03 71 + .byte $72, $73, NmiFlag, $6E, $02, $71, $72, NmiFlag, $78, $02, $71, $72, NmiFlag, $FB, $02, $71 ; CPU:$EC9D PRG:2C9D 72 73 22 6E 02 71 72 22 78 02 71 72 22 FB 02 71 + .byte $72, NmiFlag, $65, Zp01, $73, NmiFlag, $76, Zp01, $73, NmiFlag, $F4, Zp01, $73, NmiFlag, $62, Zp01 ; CPU:$ECAD PRG:2CAD 72 22 65 01 73 22 76 01 73 22 F4 01 73 22 62 01 + .byte $71, NmiFlag, $CD, Zp01, $71, NmiPhase, Zp00, $7F, $FF, NmiPhase, $40, $7F, $FF, NmiPhase, $80, $7F ; CPU:$ECBD PRG:2CBD 71 22 CD 01 71 20 00 7F FF 20 40 7F FF 20 80 7F + .byte $FF, NmiPhase, $C0, $7F, $FF, NmiPhase, $1F, $C8, $FF, $23, Zp00, $7F, $FF, $23, $40, $7F ; CPU:$ECCD PRG:2CCD FF 20 C0 7F FF 20 1F C8 FF 23 00 7F FF 23 40 7F + .byte $FF, $23, $80, $7F, $FF, $23, $1F, $C6, $FF, NmiPhase, $A0, $60, $21, NmiPhase, $6B, $0A ; CPU:$ECDD PRG:2CDD FF 23 80 7F FF 23 1F C6 FF 20 A0 60 21 20 6B 0A + .byte $75, $76, $76, $76, $76, $76, $76, $76, $76, $77, NmiPhase, $8B, $0A, $78, $1D, $12 ; CPU:$ECED PRG:2CED 75 76 76 76 76 76 76 76 76 77 20 8B 0A 78 1D 12 + .byte Ctrl1, $0E, $39, NmiFlag, $18, $1E, $79, NmiPhase, $AB, $0A, $7A, $7B, $7B, $7B, $7B, $7B ; CPU:$ECFD PRG:2CFD 16 0E 39 22 18 1E 79 20 AB 0A 7A 7B 7B 7B 7B 7B + .byte $7B, $7B, $7B, $7F, NmiPhase, $CB, $0A, $78, $FF, $10, $1E, $17, Ctrl1, $0A, $17, $FF ; CPU:$ED0D PRG:2D0D 7B 7B 7B 7F 20 CB 0A 78 FF 10 1E 17 16 0A 17 FF + .byte $79, NmiPhase, $EB, $0A, $80, $81, $81, $81, $81, $81, $81, $81, $81, $82, $23, $C0 ; CPU:$ED1D PRG:2D1D 79 20 EB 0A 80 81 81 81 81 81 81 81 81 82 23 C0 + .byte $50, $FF, $23, $D0, $18, $55, $55, $99, $AA, $AA, $AA, NmiFlag, Zp00, $55, $55, $55 ; CPU:$ED2D PRG:2D2D 50 FF 23 D0 18 55 55 99 AA AA AA 22 00 55 55 55 + .byte Zp00, Zp00, Zp00, Zp00, Zp00, $05, $05, $05, Zp00, Zp00, Zp00, Zp00, Zp00, $23, $F0, $50 ; CPU:$ED3D PRG:2D3D 00 00 00 00 00 05 05 05 00 00 00 00 00 23 F0 50 + .byte $FF, $23, $4B, $05, $1C, $0C, $18, $1B, $0E, $23, $32, $02, NmiPhase, $39, $23, $52 ; CPU:$ED4D PRG:2D4D FF 23 4B 05 1C 0C 18 1B 0E 23 32 02 20 39 23 52 + .byte $02, $F6, $39, Zp00, NmiPhase, $40, $60, $F3, $21, $80, $60, $F3, $21, $60, $60, $CE ; CPU:$ED5D PRG:2D5D 02 F6 39 00 20 40 60 F3 21 80 60 F3 21 60 60 CE + .byte NmiFlag, $C0, $60, $9E, NmiFlag, $E0, $60, $FE, $21, NmiPhase, $60, $CD, $21, $40, $60, $FD ; CPU:$ED6D PRG:2D6D 22 C0 60 9E 22 E0 60 FE 21 20 60 CD 21 40 60 FD + .byte $21, $8E, $44, $C6, $21, $AE, $44, $24, $21, $CE, $44, $24, NmiFlag, $8E, $44, $24 ; CPU:$ED7D PRG:2D7D 21 8E 44 C6 21 AE 44 24 21 CE 44 24 22 8E 44 24 + .byte NmiFlag, $AE, $44, $24, $21, $8D, $82, $C5, $C9, $21, $92, $82, $F5, $F9, $21, $CD ; CPU:$ED8D PRG:2D8D 22 AE 44 24 21 8D 82 C5 C9 21 92 82 F5 F9 21 CD + .byte $C8, $A7, $21, $D2, $C8, $D7, NmiFlag, $6C, $85, $C7, $C8, $C8, $BB, $BC, NmiFlag, $73 ; CPU:$ED9D PRG:2D9D C8 A7 21 D2 C8 D7 22 6C 85 C7 C8 C8 BB BC 22 73 + .byte $85, $F7, $F8, $F8, $EB, $EC, NmiFlag, $C4, $82, $CB, $CF, NmiFlag, $C8, $82, $CB, $CF ; CPU:$EDAD PRG:2DAD 85 F7 F8 F8 EB EC 22 C4 82 CB CF 22 C8 82 CB CF + .byte NmiFlag, $D7, $82, $CB, $CF, NmiFlag, $DB, $82, $CB, $CF, NmiFlag, $CD, $46, $CC, NmiFlag, $ED ; CPU:$EDBD PRG:2DBD 22 D7 82 CB CF 22 DB 82 CB CF 22 CD 46 CC 22 ED + .byte $46, $CC, NmiFlag, $CB, Zp01, $CA, NmiFlag, $D4, Zp01, $FA, NmiPhase, $4B, $02, $B0, $E0, NmiPhase ; CPU:$EDCD PRG:2DCD 46 CC 22 CB 01 CA 22 D4 01 FA 20 4B 02 B0 E0 20 + .byte $53, $02, $B0, $E0, $21, $8A, $02, $B0, $E0, $21, $94, $02, $B0, $E0, NmiPhase, $6B ; CPU:$EDDD PRG:2DDD 53 02 B0 E0 21 8A 02 B0 E0 21 94 02 B0 E0 20 6B + .byte $C9, $B1, NmiPhase, $73, $C9, $B1, $21, $AA, $C9, $B1, $21, $B4, $C9, $B1, NmiPhase, $6C ; CPU:$EDED PRG:2DED C9 B1 20 73 C9 B1 21 AA C9 B1 21 B4 C9 B1 20 6C + .byte $C9, $E1, NmiPhase, $74, $C9, $E1, $21, $AB, $C9, $E1, $21, $B5, $C9, $E1, $21, $2B ; CPU:$EDFD PRG:2DFD C9 E1 20 74 C9 E1 21 AB C9 E1 21 B5 C9 E1 21 2B + .byte $83, $BD, $BE, $BF, $21, $2C, $83, $C0, $C1, $C2, $21, $33, $83, $F0, $F1, $F2 ; CPU:$EE0D PRG:2E0D 83 BD BE BF 21 2C 83 C0 C1 C2 21 33 83 F0 F1 F2 + .byte $21, $34, $83, $ED, $EE, $EF, $21, $6D, $46, $9F, NmiPhase, $AC, Zp08, $C4, $85, $86 ; CPU:$EE1D PRG:2E1D 21 34 83 ED EE EF 21 6D 46 9F 20 AC 08 C4 85 86 + .byte $87, $88, $89, $8A, $F4, NmiPhase, $CD, $06, $8B, $8C, $8D, $8E, $8F, $90, NmiPhase, $ED ; CPU:$EE2D PRG:2E2D 87 88 89 8A F4 20 CD 06 8B 8C 8D 8E 8F 90 20 ED + .byte $06, $91, $92, $93, $94, $95, $96, $21, $0D, $06, $8B, $97, $98, $99, $9A, $90 ; CPU:$EE3D PRG:2E3D 06 91 92 93 94 95 96 21 0D 06 8B 97 98 99 9A 90 + .byte $21, $2D, $06, $9B, $9B, $9C, $9D, $9B, $9B, $21, $24, $46, $FC, $21, $36, $46 ; CPU:$EE4D PRG:2E4D 21 2D 06 9B 9B 9C 9D 9B 9B 21 24 46 FC 21 36 46 + .byte $FC, $21, $4D, $06, $1C, $0A, $15, $18, $18, $17, NmiFlag, $83, $46, $FB, NmiFlag, $97 ; CPU:$EE5D PRG:2E5D FC 21 4D 06 1C 0A 15 18 18 17 22 83 46 FB 22 97 + .byte $46, $FB, NmiPhase, Zp00, $60, $5A, NmiPhase, NmiPhase, $60, $5A, $23, Zp00, $60, $FF, $23, NmiPhase ; CPU:$EE6D PRG:2E6D 46 FB 20 00 60 5A 20 20 60 5A 23 00 60 FF 23 20 + .byte $60, $FF, $23, $40, $60, $FF, $23, $60, $60, $FF, $23, $80, $60, $FF, $23, $A0 ; CPU:$EE7D PRG:2E7D 60 FF 23 40 60 FF 23 60 60 FF 23 80 60 FF 23 A0 + .byte $60, $FF, $23, $C8, NmiPhase, Zp00, $55, $11, Zp00, Zp00, $44, $55, Zp00, Zp00, Zp00, Zp00 ; CPU:$EE8D PRG:2E8D 60 FF 23 C8 20 00 55 11 00 00 44 55 00 00 00 00 + .byte $A0, $A0, Zp00, Zp00, Zp00, Zp00, $50, Zp00, Zp00, Zp00, Zp00, $50, Zp00, Zp00, $55, Zp00 ; CPU:$EE9D PRG:2E9D A0 A0 00 00 00 00 50 00 00 00 00 50 00 00 55 00 + .byte $44, $11, Zp00, $55, Zp00, $23, $F0, $50, $FF, $27, $C0, $18, Zp00, Zp00, Zp00, Zp00 ; CPU:$EEAD PRG:2EAD 44 11 00 55 00 23 F0 50 FF 27 C0 18 00 00 00 00 + .byte $55, $55, $55, $55, Zp00, Zp00, Zp00, Zp00, $55, $55, $55, $55, Zp00, Zp00, Zp00, Zp00 ; CPU:$EEBD PRG:2EBD 55 55 55 55 00 00 00 00 55 55 55 55 00 00 00 00 + .byte $55, $55, $55, $55, $27, $D8, $28, $AA, $AA, NmiFlag, Zp00, Zp00, $CC, $FF, $FF, $AA ; CPU:$EECD PRG:2ECD 55 55 55 55 27 D8 28 AA AA 22 00 00 CC FF FF AA + .byte $AA, NmiFlag, Zp00, Zp00, $CC, $FF, $FF, $AA, $AA, NmiFlag, Zp00, Zp00, $CC, $FF, $FF, $AA ; CPU:$EEDD PRG:2EDD AA 22 00 00 CC FF FF AA AA 22 00 00 CC FF FF AA + .byte $AA, NmiFlag, Zp00, Zp00, $CC, $FF, $FF, $AA, $AA, NmiFlag, Zp00, Zp00, $CC, $FF, $FF, Zp00 ; CPU:$EEED PRG:2EED AA 22 00 00 CC FF FF AA AA 22 00 00 CC FF FF 00 + .byte $23, $42, $06, $0B, $1E, $15, $15, $0E, $1D, $23, $53, Zp08, $1C, $0C, $18, $1B ; CPU:$EEFD PRG:2EFD 23 42 06 0B 1E 15 15 0E 1D 23 53 08 1C 0C 18 1B + .byte $0E, $FF, $F6, $39, $23, $39, $02, NmiPhase, $39, Zp00, $25, $8A, $4C, $5A, Zp00, $1F ; CPU:$EF0D PRG:2F0D 0E FF F6 39 23 39 02 20 39 00 25 8A 4C 5A 00 1F + .byte $25, $2B, $31, $37, Zp00, $06, $0C, $12, $18, $63, NmiPhase, $63, $EF, Timer2F, $68, $75 ; CPU:$EF1D PRG:2F1D 25 2B 31 37 00 06 0C 12 18 63 20 63 EF 2F 68 75 + .byte NmiPhase, $63, $EF, Timer2F, $68, $A2, $21, $63, $EF, $3F, $88, $B6, $21, $63, $EF, $3F ; CPU:$EF2D PRG:2F2D 20 63 EF 2F 68 A2 21 63 EF 3F 88 B6 21 63 EF 3F + .byte $88, $ED, $21, $A3, $EF, $1D, $56, $FF, $63, NmiPhase, $C1, $EF, Timer2F, $68, $75, NmiPhase ; CPU:$EF3D PRG:2F3D 88 ED 21 A3 EF 1D 56 FF 63 20 C1 EF 2F 68 75 20 + .byte $C1, $EF, Timer2F, $68, $A2, $21, $C1, $EF, $37, $78, $B6, $21, $C1, $EF, $37, $78 ; CPU:$EF4D PRG:2F4D C1 EF 2F 68 A2 21 C1 EF 37 78 B6 21 C1 EF 37 78 + .byte $ED, $21, $F9, $EF, $1D, $56, $D4, $A2, $A3, $5A, $5A, $D3, $A2, $D4, $D4, $A5 ; CPU:$EF5D PRG:2F5D ED 21 F9 EF 1D 56 D4 A2 A3 5A 5A D3 A2 D4 D4 A5 + .byte $A8, $AA, $DA, $D8, $D5, $D4, $D4, $A6, $A9, $AB, $DB, $D9, $D6, $D4, $D4, $A6 ; CPU:$EF6D PRG:2F6D A8 AA DA D8 D5 D4 D4 A6 A9 AB DB D9 D6 D4 D4 A6 + .byte $A9, $AB, $DB, $D9, $D6, $D4, $D4, $A6, $A9, $AB, $DB, $D9, $D6, $D4, $D4, $A6 ; CPU:$EF7D PRG:2F7D A9 AB DB D9 D6 D4 D4 A6 A9 AB DB D9 D6 D4 D4 A6 + .byte $A9, $AB, $DB, $D9, $D6, $D4, $D4, $AC, $AD, $AE, $DE, $DD, $DC, $D4, $D4, $FB ; CPU:$EF8D PRG:2F8D A9 AB DB D9 D6 D4 D4 AC AD AE DE DD DC D4 D4 FB + .byte $FB, $FB, $FB, $FB, $FB, $D4, $B2, $B4, $24, $24, $E4, $E2, $B3, $B5, $B8, $E8 ; CPU:$EF9D PRG:2F9D FB FB FB FB FB D4 B2 B4 24 24 E4 E2 B3 B5 B8 E8 + .byte $E5, $E3, $B3, $B6, $B7, $E7, $E6, $E3, $B3, $B6, $B7, $E7, $E6, $E3, $B9, $B6 ; CPU:$EFAD PRG:2FAD E5 E3 B3 B6 B7 E7 E6 E3 B3 B6 B7 E7 E6 E3 B9 B6 + .byte $BA, $EA, $E6, $E9, $A0, $A2, $A3, $5A, $5A, $D3, $A2, $D0, $A1, $A7, $24, $24 ; CPU:$EFBD PRG:2FBD BA EA E6 E9 A0 A2 A3 5A 5A D3 A2 D0 A1 A7 24 24 + .byte $24, $24, $D7, $D1, $A1, $A7, $24, $24, $24, $24, $D7, $D1, $A1, $A7, $24, $24 ; CPU:$EFCD PRG:2FCD 24 24 D7 D1 A1 A7 24 24 24 24 D7 D1 A1 A7 24 24 + .byte $24, $24, $D7, $D1, $A1, $A7, $24, $24, $24, $24, $D7, $D1, $A1, $A7, $24, $24 ; CPU:$EFDD PRG:2FDD 24 24 D7 D1 A1 A7 24 24 24 24 D7 D1 A1 A7 24 24 + .byte $24, $24, $D7, $D1, $A1, $A7, $24, $24, $24, $24, $D7, $D1, $A7, $24, $24, $24 ; CPU:$EFED PRG:2FED 24 24 D7 D1 A1 A7 24 24 24 24 D7 D1 A7 24 24 24 + .byte $24, $D7, $A7, $24, $24, $24, $24, $D7, $A7, $24, $24, $24, $24, $D7, $A7, $24 ; CPU:$EFFD PRG:2FFD 24 D7 A7 24 24 24 24 D7 A7 24 24 24 24 D7 A7 24 + .byte $24, $24, $24, $D7, $A7, $24, $24, $24, $24, $D7, Ctrl1, $FF, $10, $18, $18, $0D ; CPU:$F00D PRG:300D 24 24 24 D7 A7 24 24 24 24 D7 16 FF 10 18 18 0D + .byte $FF, Ctrl1, $FF, $17, $12, $0C, $0E, $FF, Ctrl1, Ctrl1, $0A, $1C, $1D, $0E, $1B, Ctrl1 ; CPU:$F01D PRG:301D FF 16 FF 17 12 0C 0E FF 16 16 0A 1C 1D 0E 1B 16 + .byte NmiPhase, $0A, $A4, $0E, Ctrl1, $FF, $FF, $10, $18, $FF, $FF, $10, $0A, Ctrl1, $0E, $FF ; CPU:$F02D PRG:302D 20 0A A4 0E 16 FF FF 10 18 FF FF 10 0A 16 0E FF + .byte $18, $A4, $0E, $1B, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F03D PRG:303D 18 A4 0E 1B FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F04D PRG:304D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F05D PRG:305D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F06D PRG:306D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F07D PRG:307D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F08D PRG:308D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F09D PRG:309D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0AD PRG:30AD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0BD PRG:30BD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0CD PRG:30CD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0DD PRG:30DD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0ED PRG:30ED FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0FD PRG:30FD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F10D PRG:310D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F11D PRG:311D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F12D PRG:312D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F13D PRG:313D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F14D PRG:314D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F15D PRG:315D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F16D PRG:316D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F17D PRG:317D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F18D PRG:318D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F19D PRG:319D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1AD PRG:31AD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1BD PRG:31BD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1CD PRG:31CD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1DD PRG:31DD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1ED PRG:31ED FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1FD PRG:31FD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F20D PRG:320D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F21D PRG:321D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F22D PRG:322D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F23D PRG:323D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F24D PRG:324D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F25D PRG:325D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F26D PRG:326D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F27D PRG:327D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F28D PRG:328D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F29D PRG:329D FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F2AD PRG:32AD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F2BD PRG:32BD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F2CD PRG:32CD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F2DD PRG:32DD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F2ED PRG:32ED FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $07, $F0, Zp00, Zp00, Zp00, $D4, Zp00, $BD, Zp00, $B2, Zp00, $A8, Zp00 ; CPU:$F2FD PRG:32FD FF FF FF 07 F0 00 00 00 D4 00 BD 00 B2 00 A8 00 + .byte $9F, Zp00, $96, Zp00, $8D, Zp00, $85, Zp00, $7E, Zp01, $AB, Zp01, $93, Zp01, $7C, Zp01 ; CPU:$F30D PRG:330D 9F 00 96 00 8D 00 85 00 7E 01 AB 01 93 01 7C 01 + .byte $67, Zp01, $52, Zp01, $3F, Zp01, $2D, Zp01, $1C, Zp01, $0C, Zp00, $FD, Zp00, $EE, Zp00 ; CPU:$F31D PRG:331D 67 01 52 01 3F 01 2D 01 1C 01 0C 00 FD 00 EE 00 + .byte $E1, $03, $57, $02, $F9, $02, $CF, $02, $A6, $02, $80, $02, $3A, $02, $1A, Zp01 ; CPU:$F32D PRG:332D E1 03 57 02 F9 02 CF 02 A6 02 80 02 3A 02 1A 01 + .byte $FC, Zp01, $DF, Zp01, $C4, $06, $AE, $05, $4D, $05, Zp01, $04, $B9, $04, $75, $03 ; CPU:$F33D PRG:333D FC 01 DF 01 C4 06 AE 05 4D 05 01 04 B9 04 75 03 + .byte $F8, $03, $89, Zp00, $69, Zp00, $5E, Zp00, $58, Zp00, $53, $02, $04, $03, $06, $04 ; CPU:$F34D PRG:334D F8 03 89 00 69 00 5E 00 58 00 53 02 04 03 06 04 + .byte Zp08, $10, NmiPhase, $40, $18, GameMode, $0C, $05, $0A, $06, $0C, $07, $0E, Zp08, $10, Zp09 ; CPU:$F35D PRG:335D 08 10 20 40 18 30 0C 05 0A 06 0C 07 0E 08 10 09 + .byte $12, $0A, $14, $0B, Ctrl1 ; CPU:$F36D PRG:336D 12 0A 14 0B 16 +; ----------------------------------------------------------------------------- +; Routine: Label_F372 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F372: + lda #$C0 ; CPU:$F372 PRG:3372 A9 C0 + sta $4017 ; CPU:$F374 PRG:3374 8D 17 40 + jsr $F440 ; CPU:$F377 PRG:3377 20 40 F4 + jsr $F3C0 ; CPU:$F37A PRG:337A 20 C0 F3 + jsr $F53F ; CPU:$F37D PRG:337D 20 3F F5 + lda #$00 ; CPU:$F380 PRG:3380 A9 00 + sta $F0 ; CPU:$F382 PRG:3382 85 F0 + sta $F1 ; CPU:$F384 PRG:3384 85 F1 + rts ; CPU:$F386 PRG:3386 60 +; ----------------------------------------------------------------------------- +; Routine: Label_F387 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F387: + lda #$00 ; CPU:$F387 PRG:3387 A9 00 + beq Label_F391 ; CPU:$F389 PRG:3389 F0 06 +; ----------------------------------------------------------------------------- +; Routine: Label_F38B +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F38B: + lda #$0C ; CPU:$F38B PRG:338B A9 0C + bne Label_F391 ; CPU:$F38D PRG:338D D0 02 +; ----------------------------------------------------------------------------- +; Routine: Label_F38F +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F38F: + lda #$04 ; CPU:$F38F PRG:338F A9 04 +; ----------------------------------------------------------------------------- +; Routine: Label_F391 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F391: + sta $F4 ; CPU:$F391 PRG:3391 85 F4 + lda #$40 ; CPU:$F393 PRG:3393 A9 40 + sta $F5 ; CPU:$F395 PRG:3395 85 F5 + stx $F6 ; CPU:$F397 PRG:3397 86 F6 + sty $F7 ; CPU:$F399 PRG:3399 84 F7 + ldy #$00 ; CPU:$F39B PRG:339B A0 00 +; ----------------------------------------------------------------------------- +; Routine: Label_F39D +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F39D: + lda ($F6),Y ; CPU:$F39D PRG:339D B1 F6 + sta ($F4),Y ; CPU:$F39F PRG:339F 91 F4 + iny ; CPU:$F3A1 PRG:33A1 C8 + tya ; CPU:$F3A2 PRG:33A2 98 + cmp #$04 ; CPU:$F3A3 PRG:33A3 C9 04 + bne Label_F39D ; CPU:$F3A5 PRG:33A5 D0 F6 + rts ; CPU:$F3A7 PRG:33A7 60 +; ----------------------------------------------------------------------------- +; Routine: Label_F3A8 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F3A8: + jsr $F426 ; CPU:$F3A8 PRG:33A8 20 26 F4 + lda #$4F ; CPU:$F3AB PRG:33AB A9 4F + sta $4013 ; CPU:$F3AD PRG:33AD 8D 13 40 + lda #$E8 ; CPU:$F3B0 PRG:33B0 A9 E8 + sta $4012 ; CPU:$F3B2 PRG:33B2 8D 12 40 + lda #$0E ; CPU:$F3B5 PRG:33B5 A9 0E + sta $4010 ; CPU:$F3B7 PRG:33B7 8D 10 40 + lda #$1F ; CPU:$F3BA PRG:33BA A9 1F + sta $4015 ; CPU:$F3BC PRG:33BC 8D 15 40 + rts ; CPU:$F3BF PRG:33BF 60 +; ----------------------------------------------------------------------------- +; Routine: Label_F3C0 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F3C0: + lda $F0 ; CPU:$F3C0 PRG:33C0 A5 F0 + cmp #$40 ; CPU:$F3C2 PRG:33C2 C9 40 + beq Label_F3A8 ; CPU:$F3C4 PRG:33C4 F0 E2 + cmp #$10 ; CPU:$F3C6 PRG:33C6 C9 10 + beq Label_F3E3 ; CPU:$F3C8 PRG:33C8 F0 19 + cmp #$80 ; CPU:$F3CA PRG:33CA C9 80 + bne Label_F3EE ; CPU:$F3CC PRG:33CC D0 20 + ldx #$DB ; CPU:$F3CE PRG:33CE A2 DB + ldy #$F3 ; CPU:$F3D0 PRG:33D0 A0 F3 + jsr $F38F ; CPU:$F3D2 PRG:33D2 20 8F F3 + ldx #$DF ; CPU:$F3D5 PRG:33D5 A2 DF + ldy #$F3 ; CPU:$F3D7 PRG:33D7 A0 F3 + bne Label_F3EB ; CPU:$F3D9 PRG:33D9 D0 10 +; ---- data $F3DB-$F3E2 (8 bytes) ---- + .byte $80, $7F, $90, Mode38, $80, $7F, $91, Mode38 ; CPU:$F3DB PRG:33DB 80 7F 90 38 80 7F 91 38 +; ----------------------------------------------------------------------------- +; Routine: Label_F3E3 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F3E3: + lda $E6 ; CPU:$F3E3 PRG:33E3 A5 E6 + bne Label_F3EE ; CPU:$F3E5 PRG:33E5 D0 07 + ldx #$EF ; CPU:$F3E7 PRG:33E7 A2 EF + ldy #$F3 ; CPU:$F3E9 PRG:33E9 A0 F3 +; ----------------------------------------------------------------------------- +; Routine: Label_F3EB +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F3EB: + jsr $F387 ; CPU:$F3EB PRG:33EB 20 87 F3 +; ----------------------------------------------------------------------------- +; Routine: Label_F3EE +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F3EE: + rts ; CPU:$F3EE PRG:33EE 60 +; ---- data $F3EF-$F40E (32 bytes) ---- + .byte $95, $85, $40, $D0, $3F, $7F, $0F, Zp08, Ctrl1, $14, $12, $10, $0E, $0C, $04, $02 ; CPU:$F3EF PRG:33EF 95 85 40 D0 3F 7F 0F 08 16 14 12 10 0E 0C 04 02 + .byte $FF, $10, Zp00, $18, $10, Zp01, $18, Zp00, Zp01, $88, $06, $02, $40, $05, $02, $C0 ; CPU:$F3FF PRG:33FF FF 10 00 18 10 01 18 00 01 88 06 02 40 05 02 C0 +; ----------------------------------------------------------------------------- +; Routine: Label_F40F +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F40F: + lda #$F6 ; CPU:$F40F PRG:340F A9 F6 + sta $0613 ; CPU:$F411 PRG:3411 8D 13 06 + sta $0611 ; CPU:$F414 PRG:3414 8D 11 06 + rts ; CPU:$F417 PRG:3417 60 +; ----------------------------------------------------------------------------- +; Routine: Label_F418 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F418: + ldx #$22 ; CPU:$F418 PRG:3418 A2 22 + ldy #$F4 ; CPU:$F41A PRG:341A A0 F4 + jsr $F38B ; CPU:$F41C PRG:341C 20 8B F3 + jmp $F48A ; CPU:$F41F PRG:341F 4C 8A F4 + asl ; CPU:$F422 PRG:3422 0A +; ---- data $F423-$F425 (3 bytes) ---- + .byte $7F, $0F, Zp08 ; CPU:$F423 PRG:3423 7F 0F 08 +; ----------------------------------------------------------------------------- +; Routine: Label_F426 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F426: + lda #$00 ; CPU:$F426 PRG:3426 A9 00 + sta $F2 ; CPU:$F428 PRG:3428 85 F2 +; ----------------------------------------------------------------------------- +; Routine: Label_F42A +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F42A: + sta $4008 ; CPU:$F42A PRG:342A 8D 08 40 + sta $4011 ; CPU:$F42D PRG:342D 8D 11 40 + sta $E6 ; CPU:$F430 PRG:3430 85 E6 + sta $E4 ; CPU:$F432 PRG:3432 85 E4 + lda #$10 ; CPU:$F434 PRG:3434 A9 10 + sta $4000 ; CPU:$F436 PRG:3436 8D 00 40 + sta $4004 ; CPU:$F439 PRG:3439 8D 04 40 + sta $400C ; CPU:$F43C PRG:343C 8D 0C 40 + rts ; CPU:$F43F PRG:343F 60 +; ----------------------------------------------------------------------------- +; Routine: Label_F440 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F440: + lda $F0 ; CPU:$F440 PRG:3440 A5 F0 + lsr ; CPU:$F442 PRG:3442 4A + bcs Label_F426 ; CPU:$F443 PRG:3443 B0 E1 + lsr ; CPU:$F445 PRG:3445 4A + bcs Label_F453 ; CPU:$F446 PRG:3446 B0 0B + lsr ; CPU:$F448 PRG:3448 4A + lsr ; CPU:$F449 PRG:3449 4A + bcs Label_F418 ; CPU:$F44A PRG:344A B0 CC + lda $F2 ; CPU:$F44C PRG:344C A5 F2 + lsr ; CPU:$F44E PRG:344E 4A + lsr ; CPU:$F44F PRG:344F 4A + bcs Label_F468 ; CPU:$F450 PRG:3450 B0 16 + rts ; CPU:$F452 PRG:3452 60 +; ----------------------------------------------------------------------------- +; Routine: Label_F453 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F453: + lda #$00 ; CPU:$F453 PRG:3453 A9 00 + sta $4011 ; CPU:$F455 PRG:3455 8D 11 40 + sta $EC ; CPU:$F458 PRG:3458 85 EC + sta $ED ; CPU:$F45A PRG:345A 85 ED + ldx #$F3 ; CPU:$F45C PRG:345C A2 F3 + ldy #$F3 ; CPU:$F45E PRG:345E A0 F3 + jsr $F38B ; CPU:$F460 PRG:3460 20 8B F3 + lda #$02 ; CPU:$F463 PRG:3463 A9 02 + sta $F2 ; CPU:$F465 PRG:3465 85 F2 + rts ; CPU:$F467 PRG:3467 60 +; ----------------------------------------------------------------------------- +; Routine: Label_F468 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F468: + inc $EC ; CPU:$F468 PRG:3468 E6 EC + lda $EC ; CPU:$F46A PRG:346A A5 EC + cmp #$02 ; CPU:$F46C PRG:346C C9 02 + bne Label_F48E ; CPU:$F46E PRG:346E D0 1E + lda #$00 ; CPU:$F470 PRG:3470 A9 00 + sta $EC ; CPU:$F472 PRG:3472 85 EC + ldy $ED ; CPU:$F474 PRG:3474 A4 ED + lda $F48F,Y ; CPU:$F476 PRG:3476 B9 8F F4 + sta $400E ; CPU:$F479 PRG:3479 8D 0E 40 + lda $F4BF,Y ; CPU:$F47C PRG:347C B9 BF F4 + sta $400C ; CPU:$F47F PRG:347F 8D 0C 40 + inc $ED ; CPU:$F482 PRG:3482 E6 ED + lda $ED ; CPU:$F484 PRG:3484 A5 ED + cmp #$30 ; CPU:$F486 PRG:3486 C9 30 + bne Label_F48E ; CPU:$F488 PRG:3488 D0 04 +; ----------------------------------------------------------------------------- +; Routine: Label_F48A +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F48A: + lda #$00 ; CPU:$F48A PRG:348A A9 00 + sta $F2 ; CPU:$F48C PRG:348C 85 F2 +; ----------------------------------------------------------------------------- +; Routine: Label_F48E +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F48E: + rts ; CPU:$F48E PRG:348E 60 +; ---- data $F48F-$F4EE (96 bytes) ---- + .byte $0E, $0B, $05, $05, $05, $05, $05, $05, $05, $05, $05, $05, $04, $04, $04, $04 ; CPU:$F48F PRG:348F 0E 0B 05 05 05 05 05 05 05 05 05 05 04 04 04 04 + .byte $04, $04, $03, $03, $03, $03, $03, $04, $03, $02, $02, $02, $02, $02, $02, $02 ; CPU:$F49F PRG:349F 04 04 03 03 03 03 03 04 03 02 02 02 02 02 02 02 + .byte $02, Zp01, Zp01, Zp01, $02, $02, Zp01, Zp01, Zp00, Zp00, Zp00, Zp00, Zp00, Zp00, Zp00, Zp00 ; CPU:$F4AF PRG:34AF 02 01 01 01 02 02 01 01 00 00 00 00 00 00 00 00 + .byte $3F, $3F, $3F, $3F, $3F, $3F, $3D, $3C, Mode38, Mode38, Mode38, $37, $37, $37, $36, $36 ; CPU:$F4BF PRG:34BF 3F 3F 3F 3F 3F 3F 3D 3C 38 38 38 37 37 37 36 36 + .byte $34, $34, $34, $34, $34, $34, $34, $34, $33, $33, $33, $33, $33, $33, $33, $33 ; CPU:$F4CF PRG:34CF 34 34 34 34 34 34 34 34 33 33 33 33 33 33 33 33 + .byte $32, $32, $32, $32, $32, $32, $32, $32, $32, $32, $32, $32, $32, $32, $10, $10 ; CPU:$F4DF PRG:34DF 32 32 32 32 32 32 32 32 32 32 32 32 32 32 10 10 +; ----------------------------------------------------------------------------- +; Routine: Label_F4EF +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F4EF: + inc $EE ; CPU:$F4EF PRG:34EF E6 EE + lda $EE ; CPU:$F4F1 PRG:34F1 A5 EE + cmp #$28 ; CPU:$F4F3 PRG:34F3 C9 28 + bne Label_F50A ; CPU:$F4F5 PRG:34F5 D0 13 + lda #$00 ; CPU:$F4F7 PRG:34F7 A9 00 + sta $EE ; CPU:$F4F9 PRG:34F9 85 EE + ldy $EF ; CPU:$F4FB PRG:34FB A4 EF + lda $F3F7,Y ; CPU:$F4FD PRG:34FD B9 F7 F3 + sta $E5 ; CPU:$F500 PRG:3500 85 E5 + lda $EF ; CPU:$F502 PRG:3502 A5 EF + cmp #$07 ; CPU:$F504 PRG:3504 C9 07 + beq Label_F50A ; CPU:$F506 PRG:3506 F0 02 + inc $EF ; CPU:$F508 PRG:3508 E6 EF +; ----------------------------------------------------------------------------- +; Routine: Label_F50A +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F50A: + jmp $F617 ; CPU:$F50A PRG:350A 4C 17 F6 +; ----------------------------------------------------------------------------- +; Routine: Label_F50D +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F50D: + lda #$04 ; CPU:$F50D PRG:350D A9 04 + tay ; CPU:$F50F PRG:350F A8 + jsr $F724 ; CPU:$F510 PRG:3510 20 24 F7 + ldx #$0F ; CPU:$F513 PRG:3513 A2 0F + ldy #$0F ; CPU:$F515 PRG:3515 A0 0F + jmp $F5B4 ; CPU:$F517 PRG:3517 4C B4 F5 +; ----------------------------------------------------------------------------- +; Routine: Label_F51A +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F51A: + ldx #$B4 ; CPU:$F51A PRG:351A A2 B4 + ldy #$B4 ; CPU:$F51C PRG:351C A0 B4 + jsr $F76F ; CPU:$F51E PRG:351E 20 6F F7 + lda #$00 ; CPU:$F521 PRG:3521 A9 00 + sta $EE ; CPU:$F523 PRG:3523 85 EE + sta $EF ; CPU:$F525 PRG:3525 85 EF + lda #$10 ; CPU:$F527 PRG:3527 A9 10 + sta $4004 ; CPU:$F529 PRG:3529 8D 04 40 + ldy #$05 ; CPU:$F52C PRG:352C A0 05 + lda #$08 ; CPU:$F52E PRG:352E A9 08 + bne Label_F53D ; CPU:$F530 PRG:3530 D0 0B +; ----------------------------------------------------------------------------- +; Routine: Label_F532 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F532: + ldx #$B8 ; CPU:$F532 PRG:3532 A2 B8 + ldy #$B8 ; CPU:$F534 PRG:3534 A0 B8 + jsr $F76F ; CPU:$F536 PRG:3536 20 6F F7 + ldy #$06 ; CPU:$F539 PRG:3539 A0 06 + lda #$80 ; CPU:$F53B PRG:353B A9 80 +; ----------------------------------------------------------------------------- +; Routine: Label_F53D +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F53D: + bne Label_F5A9 ; CPU:$F53D PRG:353D D0 6A +; ----------------------------------------------------------------------------- +; Routine: Label_F53F +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F53F: + lda $F1 ; CPU:$F53F PRG:353F A5 F1 + lsr ; CPU:$F541 PRG:3541 4A + bcs Label_F579 ; CPU:$F542 PRG:3542 B0 35 + lsr ; CPU:$F544 PRG:3544 4A + bcs Label_F57F ; CPU:$F545 PRG:3545 B0 38 + lsr ; CPU:$F547 PRG:3547 4A + bcs Label_F50D ; CPU:$F548 PRG:3548 B0 C3 + lsr ; CPU:$F54A PRG:354A 4A + bcs Label_F51A ; CPU:$F54B PRG:354B B0 CD + lsr ; CPU:$F54D PRG:354D 4A + bcs Label_F58E ; CPU:$F54E PRG:354E B0 3E + lsr ; CPU:$F550 PRG:3550 4A + bcs Label_F588 ; CPU:$F551 PRG:3551 B0 35 + lsr ; CPU:$F553 PRG:3553 4A + bcs Label_F59E ; CPU:$F554 PRG:3554 B0 48 + lsr ; CPU:$F556 PRG:3556 4A + bcs Label_F532 ; CPU:$F557 PRG:3557 B0 D9 + lda $F0 ; CPU:$F559 PRG:3559 A5 F0 + and #$20 ; CPU:$F55B PRG:355B 29 20 + bne Label_F5BD ; CPU:$F55D PRG:355D D0 5E + lda $F0 ; CPU:$F55F PRG:355F A5 F0 + and #$04 ; CPU:$F561 PRG:3561 29 04 + bne Label_F573 ; CPU:$F563 PRG:3563 D0 0E + lda $E6 ; CPU:$F565 PRG:3565 A5 E6 + cmp #$08 ; CPU:$F567 PRG:3567 C9 08 + beq Label_F4EF ; CPU:$F569 PRG:3569 F0 84 + lda $E6 ; CPU:$F56B PRG:356B A5 E6 + bne Label_F570 ; CPU:$F56D PRG:356D D0 01 + rts ; CPU:$F56F PRG:356F 60 +; ----------------------------------------------------------------------------- +; Routine: Label_F570 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F570: + jmp $F617 ; CPU:$F570 PRG:3570 4C 17 F6 +; ----------------------------------------------------------------------------- +; Routine: Label_F573 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F573: + ldy #$08 ; CPU:$F573 PRG:3573 A0 08 + lda #$F2 ; CPU:$F575 PRG:3575 A9 F2 + bne Label_F583 ; CPU:$F577 PRG:3577 D0 0A +; ----------------------------------------------------------------------------- +; Routine: Label_F579 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F579: + ldy #$00 ; CPU:$F579 PRG:3579 A0 00 + lda #$01 ; CPU:$F57B PRG:357B A9 01 + bne Label_F583 ; CPU:$F57D PRG:357D D0 04 +; ----------------------------------------------------------------------------- +; Routine: Label_F57F +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F57F: + ldy #$03 ; CPU:$F57F PRG:357F A0 03 + lda #$02 ; CPU:$F581 PRG:3581 A9 02 +; ----------------------------------------------------------------------------- +; Routine: Label_F583 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F583: + jsr $F724 ; CPU:$F583 PRG:3583 20 24 F7 + beq Label_F5B0 ; CPU:$F586 PRG:3586 F0 28 +; ----------------------------------------------------------------------------- +; Routine: Label_F588 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F588: + ldy #$07 ; CPU:$F588 PRG:3588 A0 07 + lda #$20 ; CPU:$F58A PRG:358A A9 20 + bne Label_F592 ; CPU:$F58C PRG:358C D0 04 +; ----------------------------------------------------------------------------- +; Routine: Label_F58E +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F58E: + ldy #$01 ; CPU:$F58E PRG:358E A0 01 + lda #$10 ; CPU:$F590 PRG:3590 A9 10 +; ----------------------------------------------------------------------------- +; Routine: Label_F592 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F592: + jsr $F724 ; CPU:$F592 PRG:3592 20 24 F7 + ldx #$B1 ; CPU:$F595 PRG:3595 A2 B1 + ldy #$B3 ; CPU:$F597 PRG:3597 A0 B3 + jsr $F76F ; CPU:$F599 PRG:3599 20 6F F7 + bne Label_F5AC ; CPU:$F59C PRG:359C D0 0E +; ----------------------------------------------------------------------------- +; Routine: Label_F59E +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F59E: + ldx #$08 ; CPU:$F59E PRG:359E A2 08 + ldy #$B4 ; CPU:$F5A0 PRG:35A0 A0 B4 + jsr $F76F ; CPU:$F5A2 PRG:35A2 20 6F F7 + ldy #$02 ; CPU:$F5A5 PRG:35A5 A0 02 + lda #$40 ; CPU:$F5A7 PRG:35A7 A9 40 +; ----------------------------------------------------------------------------- +; Routine: Label_F5A9 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F5A9: + jsr $F724 ; CPU:$F5A9 PRG:35A9 20 24 F7 +; ----------------------------------------------------------------------------- +; Routine: Label_F5AC +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F5AC: + inc $E4 ; CPU:$F5AC PRG:35AC E6 E4 + bne Label_F617 ; CPU:$F5AE PRG:35AE D0 67 +; ----------------------------------------------------------------------------- +; Routine: Label_F5B0 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F5B0: + lda #$86 ; CPU:$F5B0 PRG:35B0 A9 86 + tax ; CPU:$F5B2 PRG:35B2 AA + tay ; CPU:$F5B3 PRG:35B3 A8 +; ----------------------------------------------------------------------------- +; Routine: Label_F5B4 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F5B4: + jsr $F76F ; CPU:$F5B4 PRG:35B4 20 6F F7 + lda #$00 ; CPU:$F5B7 PRG:35B7 A9 00 + sta $E4 ; CPU:$F5B9 PRG:35B9 85 E4 + beq Label_F617 ; CPU:$F5BB PRG:35BB F0 5A +; ----------------------------------------------------------------------------- +; Routine: Label_F5BD +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F5BD: + lda #$00 ; CPU:$F5BD PRG:35BD A9 00 + sta $F2 ; CPU:$F5BF PRG:35BF 85 F2 + ldy #$09 ; CPU:$F5C1 PRG:35C1 A0 09 + lda #$F0 ; CPU:$F5C3 PRG:35C3 A9 F0 + bne Label_F583 ; CPU:$F5C5 PRG:35C5 D0 BC +; ----------------------------------------------------------------------------- +; Routine: Label_F5C7 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F5C7: + tay ; CPU:$F5C7 PRG:35C7 A8 + cmp #$FF ; CPU:$F5C8 PRG:35C8 C9 FF + beq Label_F5D5 ; CPU:$F5CA PRG:35CA F0 09 + and #$C0 ; CPU:$F5CC PRG:35CC 29 C0 + cmp #$C0 ; CPU:$F5CE PRG:35CE C9 C0 + beq Label_F5E1 ; CPU:$F5D0 PRG:35D0 F0 0F + jmp ($0610) ; CPU:$F5D2 PRG:35D2 6C 10 06 +; ----------------------------------------------------------------------------- +; Routine: Label_F5D5 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F5D5: + lda $E0,X ; CPU:$F5D5 PRG:35D5 B5 E0 + beq Label_F5EC ; CPU:$F5D7 PRG:35D7 F0 13 + dec $E0,X ; CPU:$F5D9 PRG:35D9 D6 E0 + lda $D4,X ; CPU:$F5DB PRG:35DB B5 D4 + sta $D0,X ; CPU:$F5DD PRG:35DD 95 D0 + bne Label_F5EC ; CPU:$F5DF PRG:35DF D0 0B +; ----------------------------------------------------------------------------- +; Routine: Label_F5E1 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F5E1: + tya ; CPU:$F5E1 PRG:35E1 98 + and #$3F ; CPU:$F5E2 PRG:35E2 29 3F + sta $E0,X ; CPU:$F5E4 PRG:35E4 95 E0 + dec $E0,X ; CPU:$F5E6 PRG:35E6 D6 E0 + lda $D0,X ; CPU:$F5E8 PRG:35E8 B5 D0 + sta $D4,X ; CPU:$F5EA PRG:35EA 95 D4 +; ----------------------------------------------------------------------------- +; Routine: Label_F5EC +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F5EC: + jmp ($0612) ; CPU:$F5EC PRG:35EC 6C 12 06 +; ----------------------------------------------------------------------------- +; Routine: Label_F5EF +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F5EF: + and #$07 ; CPU:$F5EF PRG:35EF 29 07 + clc ; CPU:$F5F1 PRG:35F1 18 + adc $E5 ; CPU:$F5F2 PRG:35F2 65 E5 + tay ; CPU:$F5F4 PRG:35F4 A8 + lda $F358,Y ; CPU:$F5F5 PRG:35F5 B9 58 F3 + sta $DC,X ; CPU:$F5F8 PRG:35F8 95 DC + rts ; CPU:$F5FA PRG:35FA 60 +; ----------------------------------------------------------------------------- +; Routine: Label_F5FB +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F5FB: + ldx #$00 ; CPU:$F5FB PRG:35FB A2 00 +; ----------------------------------------------------------------------------- +; Routine: Label_F5FD +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F5FD: + tay ; CPU:$F5FD PRG:35FD A8 + lda $F301,Y ; CPU:$F5FE PRG:35FE B9 01 F3 + beq Label_F60E ; CPU:$F601 PRG:3601 F0 0B + sta $4002,X ; CPU:$F603 PRG:3603 9D 02 40 + lda $F300,Y ; CPU:$F606 PRG:3606 B9 00 F3 + ora #$08 ; CPU:$F609 PRG:3609 09 08 + sta $4003,X ; CPU:$F60B PRG:360B 9D 03 40 +; ----------------------------------------------------------------------------- +; Routine: Label_F60E +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F60E: + rts ; CPU:$F60E PRG:360E 60 +; ----------------------------------------------------------------------------- +; Routine: Label_F60F +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F60F: + ldx #$04 ; CPU:$F60F PRG:360F A2 04 + bne Label_F5FD ; CPU:$F611 PRG:3611 D0 EA +; ----------------------------------------------------------------------------- +; Routine: Label_F613 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F613: + ldx #$08 ; CPU:$F613 PRG:3613 A2 08 + bne Label_F5FD ; CPU:$F615 PRG:3615 D0 E6 +; ----------------------------------------------------------------------------- +; Routine: Label_F617 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F617: + lda $F9 ; CPU:$F617 PRG:3617 A5 F9 + beq Label_F659 ; CPU:$F619 PRG:3619 F0 3E + dec $D8 ; CPU:$F61B PRG:361B C6 D8 + bne Label_F659 ; CPU:$F61D PRG:361D D0 3A + ldx #$00 ; CPU:$F61F PRG:361F A2 00 + lda #$2B ; CPU:$F621 PRG:3621 A9 2B + sta $0612 ; CPU:$F623 PRG:3623 8D 12 06 + lda #$36 ; CPU:$F626 PRG:3626 A9 36 + sta $0610 ; CPU:$F628 PRG:3628 8D 10 06 + ldy $D0 ; CPU:$F62B PRG:362B A4 D0 + inc $D0 ; CPU:$F62D PRG:362D E6 D0 + lda ($F8),Y ; CPU:$F62F PRG:362F B1 F8 + beq Label_F64B ; CPU:$F631 PRG:3631 F0 18 + jmp $F5C7 ; CPU:$F633 PRG:3633 4C C7 F5 + tya ; CPU:$F636 PRG:3636 98 + bpl Label_F642 ; CPU:$F637 PRG:3637 10 09 + jsr $F5EF ; CPU:$F639 PRG:3639 20 EF F5 + ldy $D0 ; CPU:$F63C PRG:363C A4 D0 + inc $D0 ; CPU:$F63E PRG:363E E6 D0 + lda ($F8),Y ; CPU:$F640 PRG:3640 B1 F8 +; ----------------------------------------------------------------------------- +; Routine: Label_F642 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F642: + jsr $F5FB ; CPU:$F642 PRG:3642 20 FB F5 + bne Label_F650 ; CPU:$F645 PRG:3645 D0 09 + ldy #$10 ; CPU:$F647 PRG:3647 A0 10 + bne Label_F652 ; CPU:$F649 PRG:3649 D0 07 +; ----------------------------------------------------------------------------- +; Routine: Label_F64B +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F64B: + lda #$00 ; CPU:$F64B PRG:364B A9 00 + jmp $F42A ; CPU:$F64D PRG:364D 4C 2A F4 +; ----------------------------------------------------------------------------- +; Routine: Label_F650 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F650: + ldy $E9 ; CPU:$F650 PRG:3650 A4 E9 +; ----------------------------------------------------------------------------- +; Routine: Label_F652 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F652: + sty $4000 ; CPU:$F652 PRG:3652 8C 00 40 + lda $DC ; CPU:$F655 PRG:3655 A5 DC + sta $D8 ; CPU:$F657 PRG:3657 85 D8 +; ----------------------------------------------------------------------------- +; Routine: Label_F659 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F659: + lda $FB ; CPU:$F659 PRG:3659 A5 FB + beq Label_F686 ; CPU:$F65B PRG:365B F0 29 + dec $D9 ; CPU:$F65D PRG:365D C6 D9 + bne Label_F686 ; CPU:$F65F PRG:365F D0 25 + ldx #$01 ; CPU:$F661 PRG:3661 A2 01 + ldy $D1 ; CPU:$F663 PRG:3663 A4 D1 + inc $D1 ; CPU:$F665 PRG:3665 E6 D1 + lda ($FA),Y ; CPU:$F667 PRG:3667 B1 FA + bpl Label_F674 ; CPU:$F669 PRG:3669 10 09 + jsr $F5EF ; CPU:$F66B PRG:366B 20 EF F5 + ldy $D1 ; CPU:$F66E PRG:366E A4 D1 + inc $D1 ; CPU:$F670 PRG:3670 E6 D1 + lda ($FA),Y ; CPU:$F672 PRG:3672 B1 FA +; ----------------------------------------------------------------------------- +; Routine: Label_F674 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F674: + jsr $F60F ; CPU:$F674 PRG:3674 20 0F F6 + bne Label_F67D ; CPU:$F677 PRG:3677 D0 04 + ldy #$10 ; CPU:$F679 PRG:3679 A0 10 + bne Label_F67F ; CPU:$F67B PRG:367B D0 02 +; ----------------------------------------------------------------------------- +; Routine: Label_F67D +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F67D: + ldy $EA ; CPU:$F67D PRG:367D A4 EA +; ----------------------------------------------------------------------------- +; Routine: Label_F67F +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F67F: + sty $4004 ; CPU:$F67F PRG:367F 8C 04 40 + lda $DD ; CPU:$F682 PRG:3682 A5 DD + sta $D9 ; CPU:$F684 PRG:3684 85 D9 +; ----------------------------------------------------------------------------- +; Routine: Label_F686 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F686: + lda $FD ; CPU:$F686 PRG:3686 A5 FD + beq Label_F6D9 ; CPU:$F688 PRG:3688 F0 4F + dec $DA ; CPU:$F68A PRG:368A C6 DA + bne Label_F6D9 ; CPU:$F68C PRG:368C D0 4B + ldx #$02 ; CPU:$F68E PRG:368E A2 02 + lda #$A3 ; CPU:$F690 PRG:3690 A9 A3 + sta $0610 ; CPU:$F692 PRG:3692 8D 10 06 + lda #$9A ; CPU:$F695 PRG:3695 A9 9A + sta $0612 ; CPU:$F697 PRG:3697 8D 12 06 + ldy $D2 ; CPU:$F69A PRG:369A A4 D2 + inc $D2 ; CPU:$F69C PRG:369C E6 D2 + lda ($FC),Y ; CPU:$F69E PRG:369E B1 FC + jmp $F5C7 ; CPU:$F6A0 PRG:36A0 4C C7 F5 + tya ; CPU:$F6A3 PRG:36A3 98 + bpl Label_F6C7 ; CPU:$F6A4 PRG:36A4 10 21 + jsr $F5EF ; CPU:$F6A6 PRG:36A6 20 EF F5 + ldy $E4 ; CPU:$F6A9 PRG:36A9 A4 E4 + beq Label_F6B1 ; CPU:$F6AB PRG:36AB F0 04 + lda #$FF ; CPU:$F6AD PRG:36AD A9 FF + bne Label_F6BC ; CPU:$F6AF PRG:36AF D0 0B +; ----------------------------------------------------------------------------- +; Routine: Label_F6B1 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F6B1: + clc ; CPU:$F6B1 PRG:36B1 18 + adc #$FE ; CPU:$F6B2 PRG:36B2 69 FE + asl ; CPU:$F6B4 PRG:36B4 0A + asl ; CPU:$F6B5 PRG:36B5 0A + cmp #$3C ; CPU:$F6B6 PRG:36B6 C9 3C + bcc Label_F6BC ; CPU:$F6B8 PRG:36B8 90 02 + lda #$3C ; CPU:$F6BA PRG:36BA A9 3C +; ----------------------------------------------------------------------------- +; Routine: Label_F6BC +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F6BC: + sta $4008 ; CPU:$F6BC PRG:36BC 8D 08 40 + sta $E7 ; CPU:$F6BF PRG:36BF 85 E7 + ldy $D2 ; CPU:$F6C1 PRG:36C1 A4 D2 + inc $D2 ; CPU:$F6C3 PRG:36C3 E6 D2 + lda ($FC),Y ; CPU:$F6C5 PRG:36C5 B1 FC +; ----------------------------------------------------------------------------- +; Routine: Label_F6C7 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F6C7: + jsr $F613 ; CPU:$F6C7 PRG:36C7 20 13 F6 + bne Label_F6D0 ; CPU:$F6CA PRG:36CA D0 04 + ldy #$00 ; CPU:$F6CC PRG:36CC A0 00 + beq Label_F6D2 ; CPU:$F6CE PRG:36CE F0 02 +; ----------------------------------------------------------------------------- +; Routine: Label_F6D0 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F6D0: + ldy $E7 ; CPU:$F6D0 PRG:36D0 A4 E7 +; ----------------------------------------------------------------------------- +; Routine: Label_F6D2 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F6D2: + sty $4008 ; CPU:$F6D2 PRG:36D2 8C 08 40 + lda $DE ; CPU:$F6D5 PRG:36D5 A5 DE + sta $DA ; CPU:$F6D7 PRG:36D7 85 DA +; ----------------------------------------------------------------------------- +; Routine: Label_F6D9 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F6D9: + lda $FF ; CPU:$F6D9 PRG:36D9 A5 FF + beq Label_F709 ; CPU:$F6DB PRG:36DB F0 2C + dec $DB ; CPU:$F6DD PRG:36DD C6 DB + bne Label_F709 ; CPU:$F6DF PRG:36DF D0 28 + ldx #$03 ; CPU:$F6E1 PRG:36E1 A2 03 + lda #$F6 ; CPU:$F6E3 PRG:36E3 A9 F6 + sta $0610 ; CPU:$F6E5 PRG:36E5 8D 10 06 + lda #$ED ; CPU:$F6E8 PRG:36E8 A9 ED + sta $0612 ; CPU:$F6EA PRG:36EA 8D 12 06 + ldy $D3 ; CPU:$F6ED PRG:36ED A4 D3 + inc $D3 ; CPU:$F6EF PRG:36EF E6 D3 + lda ($FE),Y ; CPU:$F6F1 PRG:36F1 B1 FE + jmp $F5C7 ; CPU:$F6F3 PRG:36F3 4C C7 F5 + tya ; CPU:$F6F6 PRG:36F6 98 + bpl Label_F702 ; CPU:$F6F7 PRG:36F7 10 09 + jsr $F5EF ; CPU:$F6F9 PRG:36F9 20 EF F5 + ldy $D3 ; CPU:$F6FC PRG:36FC A4 D3 + inc $D3 ; CPU:$F6FE PRG:36FE E6 D3 + lda ($FE),Y ; CPU:$F700 PRG:3700 B1 FE +; ----------------------------------------------------------------------------- +; Routine: Label_F702 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F702: + jsr $F70A ; CPU:$F702 PRG:3702 20 0A F7 + lda $DF ; CPU:$F705 PRG:3705 A5 DF + sta $DB ; CPU:$F707 PRG:3707 85 DB +; ----------------------------------------------------------------------------- +; Routine: Label_F709 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F709: + rts ; CPU:$F709 PRG:3709 60 +; ----------------------------------------------------------------------------- +; Routine: Label_F70A +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F70A: + tay ; CPU:$F70A PRG:370A A8 + lda $F2 ; CPU:$F70B PRG:370B A5 F2 + cmp #$02 ; CPU:$F70D PRG:370D C9 02 + beq Label_F723 ; CPU:$F70F PRG:370F F0 12 + lda $F400,Y ; CPU:$F711 PRG:3711 B9 00 F4 + sta $400C ; CPU:$F714 PRG:3714 8D 0C 40 + lda $F401,Y ; CPU:$F717 PRG:3717 B9 01 F4 + sta $400E ; CPU:$F71A PRG:371A 8D 0E 40 + lda $F402,Y ; CPU:$F71D PRG:371D B9 02 F4 + sta $400F ; CPU:$F720 PRG:3720 8D 0F 40 +; ----------------------------------------------------------------------------- +; Routine: Label_F723 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F723: + rts ; CPU:$F723 PRG:3723 60 +; ----------------------------------------------------------------------------- +; Routine: Label_F724 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F724: + sta $E6 ; CPU:$F724 PRG:3724 85 E6 + lda $F77C,Y ; CPU:$F726 PRG:3726 B9 7C F7 + tay ; CPU:$F729 PRG:3729 A8 + lda $F77C,Y ; CPU:$F72A PRG:372A B9 7C F7 + sta $E5 ; CPU:$F72D PRG:372D 85 E5 + lda $F77D,Y ; CPU:$F72F PRG:372F B9 7D F7 + sta $F8 ; CPU:$F732 PRG:3732 85 F8 + lda $F77E,Y ; CPU:$F734 PRG:3734 B9 7E F7 + sta $F9 ; CPU:$F737 PRG:3737 85 F9 + lda $F77F,Y ; CPU:$F739 PRG:3739 B9 7F F7 + sta $FA ; CPU:$F73C PRG:373C 85 FA + lda $F780,Y ; CPU:$F73E PRG:373E B9 80 F7 + sta $FB ; CPU:$F741 PRG:3741 85 FB + lda $F781,Y ; CPU:$F743 PRG:3743 B9 81 F7 + sta $FC ; CPU:$F746 PRG:3746 85 FC + lda $F782,Y ; CPU:$F748 PRG:3748 B9 82 F7 + sta $FD ; CPU:$F74B PRG:374B 85 FD + lda $F783,Y ; CPU:$F74D PRG:374D B9 83 F7 + sta $FE ; CPU:$F750 PRG:3750 85 FE + lda $F784,Y ; CPU:$F752 PRG:3752 B9 84 F7 + sta $FF ; CPU:$F755 PRG:3755 85 FF + lda #$01 ; CPU:$F757 PRG:3757 A9 01 + sta $D8 ; CPU:$F759 PRG:3759 85 D8 + sta $D9 ; CPU:$F75B PRG:375B 85 D9 + sta $DA ; CPU:$F75D PRG:375D 85 DA + sta $DB ; CPU:$F75F PRG:375F 85 DB + lda #$00 ; CPU:$F761 PRG:3761 A9 00 + sta $D0 ; CPU:$F763 PRG:3763 85 D0 + sta $D1 ; CPU:$F765 PRG:3765 85 D1 + sta $D2 ; CPU:$F767 PRG:3767 85 D2 + sta $D3 ; CPU:$F769 PRG:3769 85 D3 + sta $4011 ; CPU:$F76B PRG:376B 8D 11 40 + rts ; CPU:$F76E PRG:376E 60 +; ----------------------------------------------------------------------------- +; Routine: Label_F76F +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_F76F: + lda #$7F ; CPU:$F76F PRG:376F A9 7F + sta $4001 ; CPU:$F771 PRG:3771 8D 01 40 + sta $4005 ; CPU:$F774 PRG:3774 8D 05 40 + stx $E9 ; CPU:$F777 PRG:3777 86 E9 + sty $EA ; CPU:$F779 PRG:3779 84 EA + rts ; CPU:$F77B PRG:377B 60 +; ---- data $F77C-$FFF3 (2168 bytes) ---- + .byte $0A, $13, $1C, $25, $2E, $37, $40, $49, $52, $5B, $04, $E0, $F7, $03, $F8, $27 ; CPU:$F77C PRG:377C 0A 13 1C 25 2E 37 40 49 52 5B 04 E0 F7 03 F8 27 + .byte $F8, $25, $F9, $04, $48, $F8, $52, $F8, Zp00, Zp00, $5B, $F8, $04, $90, $F8, $7C ; CPU:$F78C PRG:378C F8 25 F9 04 48 F8 52 F8 00 00 5B F8 04 90 F8 7C + .byte $F8, $6E, $F8, $9B, $F8, $04, $A4, $F8, $CE, $F8, $F9, $F8, $25, $F9, $04, $2E ; CPU:$F79C PRG:379C F8 6E F8 9B F8 04 A4 F8 CE F8 F9 F8 25 F9 04 2E + .byte $F9, $47, $F9, $50, $F9, $72, $F9, $18, $7A, $F9, Zp00, Zp00, $8D, $F9, Zp00, Zp00 ; CPU:$F7AC PRG:37AC F9 47 F9 50 F9 72 F9 18 7A F9 00 00 8D F9 00 00 + .byte $04, $9F, $F9, $AD, $F9, $BA, $F9, Zp00, Zp00, $04, $63, $F8, $69, $F8, Zp00, Zp00 ; CPU:$F7BC PRG:37BC 04 9F F9 AD F9 BA F9 00 00 04 63 F8 69 F8 00 00 + .byte $5B, $F8, $04, $C9, $F9, $CE, $F9, $D2, $F9, Zp00, Zp00, $04, $D6, $F9, $E3, $F9 ; CPU:$F7CC PRG:37CC 5B F8 04 C9 F9 CE F9 D2 F9 00 00 04 D6 F9 E3 F9 + .byte $E9, $F9, $25, $F9, $82, $02, $83, $04, $81, $28, $02, $02, Zp08, $02, $02, $06 ; CPU:$F7DC PRG:37DC E9 F9 25 F9 82 02 83 04 81 28 02 02 08 02 02 06 + .byte $02, $0C, $85, $02, $81, $2A, $24, $1E, $2A, $04, $2A, $82, $02, $83, $04, $81 ; CPU:$F7EC PRG:37EC 02 0C 85 02 81 2A 24 1E 2A 04 2A 82 02 83 04 81 + .byte $0C, $02, $02, $0C, $02, $0A, Zp00, $81, $02, $02, $28, $28, $83, $02, $81, $28 ; CPU:$F7FC PRG:37FC 0C 02 02 0C 02 0A 00 81 02 02 28 28 83 02 81 28 + .byte $28, $02, $02, $2A, $02, $2A, $2A, $06, $2A, $24, $1E, Ctrl1, $24, $28, $24, $28 ; CPU:$F80C PRG:380C 28 02 02 2A 02 2A 2A 06 2A 24 1E 16 24 28 24 28 + .byte $02, $28, $28, $04, $28, $26, $02, $02, $26, $02, $24, $85, NmiPhase, $82, NmiPhase, $81 ; CPU:$F81C PRG:381C 02 28 28 04 28 26 02 02 26 02 24 85 20 82 20 81 + .byte Ctrl1, $85, NmiFlag, $82, NmiFlag, $81, Ctrl1, $85, $24, $82, $24, $81, $1A, $85, Ctrl1, $82 ; CPU:$F82C PRG:382C 16 85 22 82 22 81 16 85 24 82 24 81 1A 85 16 82 + .byte Ctrl1, $81, $24, $85, NmiPhase, NmiPhase, $18, $82, $18, $81, Ctrl1, Zp00, $86, $3E, $3E, $3C ; CPU:$F83C PRG:383C 16 81 24 85 20 20 18 82 18 81 16 00 86 3E 3E 3C + .byte $3C, $3A, $3A, Mode38, Mode38, Zp00, $86, $4A, $4A, $48, $48, $46, $46, $44, $44, $C4 ; CPU:$F84C PRG:384C 3C 3A 3A 38 38 00 86 4A 4A 48 48 46 46 44 44 C4 + .byte $86, $0C, $82, $06, $03, $06, $FF, $86, $40, NmiPhase, NmiFlag, Ctrl1, Zp00, $86, $34, $3E ; CPU:$F85C PRG:385C 86 0C 82 06 03 06 FF 86 40 20 22 16 00 86 34 3E + .byte $40, $36, $D2, $80, $0C, $06, $FF, $82, $0C, $0A, Zp08, $D8, $80, $06, $2C, $FF ; CPU:$F86C PRG:386C 40 36 D2 80 0C 06 FF 82 0C 0A 08 D8 80 06 2C FF + .byte $84, $40, $82, $24, $1A, NmiPhase, NmiPhase, NmiPhase, $1A, $18, Ctrl1, $82, $40, $84, $40, Mode38 ; CPU:$F87C PRG:387C 84 40 82 24 1A 20 20 20 1A 18 16 82 40 84 40 38 + .byte $83, $02, $82, $02, $C4, $83, $4A, $82, GameMode, $83, $34, $82, GameMode, $FF, Zp00, $C4 ; CPU:$F88C PRG:388C 83 02 82 02 C4 83 4A 82 30 83 34 82 30 FF 00 C4 + .byte $82, $06, $03, $06, Zp09, $03, $06, $FF, $82, $02, $83, $0A, $81, $04, $02, $02 ; CPU:$F89C PRG:389C 82 06 03 06 09 03 06 FF 82 02 83 0A 81 04 02 02 + .byte $28, $02, $02, $04, $02, $02, $28, $02, $24, $04, $02, $06, $85, $02, $81, $50 ; CPU:$F8AC PRG:38AC 28 02 02 04 02 02 28 02 24 04 02 06 85 02 81 50 + .byte $83, $02, $81, $02, $50, $83, $02, $81, $02, $50, $83, $02, $81, $50, $85, $02 ; CPU:$F8BC PRG:38BC 83 02 81 02 50 83 02 81 02 50 83 02 81 50 85 02 + .byte $42, Zp00, $81, $2E, $02, Ctrl1, Ctrl1, $24, NmiFlag, $28, $1E, $1C, $1C, Ctrl1, $3C, $28 ; CPU:$F8CC PRG:38CC 42 00 81 2E 02 16 16 24 22 28 1E 1C 1C 16 3C 28 + .byte $02, $04, $28, NmiPhase, $1A, $0A, $02, NmiPhase, $85, $02, $81, $0A, $83, $02, $81, $02 ; CPU:$F8DC PRG:38DC 02 04 28 20 1A 0A 02 20 85 02 81 0A 83 02 81 02 + .byte $0C, $83, $02, $81, $02, $0E, $83, $02, $81, $10, $85, $02, $2E, $81, Ctrl1, $2E ; CPU:$F8EC PRG:38EC 0C 83 02 81 02 0E 83 02 81 10 85 02 2E 81 16 2E + .byte Ctrl1, $1E, $34, $1E, $28, $3C, $28, $1C, $32, $1C, $1A, GameMode, $1A, NmiPhase, $36, NmiPhase ; CPU:$F8FC PRG:38FC 16 1E 34 1E 28 3C 28 1C 32 1C 1A 30 1A 20 36 20 + .byte $28, $3C, $28, $24, Mode38, $24, $81, $50, $83, $02, $81, $02, $52, $83, $02, $81 ; CPU:$F90C PRG:390C 28 3C 28 24 38 24 81 50 83 02 81 02 52 83 02 81 + .byte $02, $54, $83, $02, $81, $56, $85, $02, Ctrl1, $C8, $81, $06, $03, $06, Zp09, $03 ; CPU:$F91C PRG:391C 02 54 83 02 81 56 85 02 16 C8 81 06 03 06 09 03 + .byte $06, $FF, $86, $3C, $83, $3C, $82, $3C, $86, $3C, $83, Ctrl1, $82, $40, $83, $40 ; CPU:$F92C PRG:392C 06 FF 86 3C 83 3C 82 3C 86 3C 83 16 82 40 83 40 + .byte $82, $3C, $83, $3C, $82, $3A, $86, $3C, $81, $02, Zp00, $86, $4C, $4C, $46, $46 ; CPU:$F93C PRG:393C 82 3C 83 3C 82 3A 86 3C 81 02 00 86 4C 4C 46 46 + .byte $44, $44, $84, $4C, $C2, $81, $28, $04, $2C, $06, $04, $0A, $14, $0A, $06, $04 ; CPU:$F94C PRG:394C 44 44 84 4C C2 81 28 04 2C 06 04 0A 14 0A 06 04 + .byte $28, $24, $FF, $2C, $1E, $26, $2C, $06, $2C, $12, $0C, $06, $2C, $26, $1E, $28 ; CPU:$F95C PRG:395C 28 24 FF 2C 1E 26 2C 06 2C 12 0C 06 2C 26 1E 28 + .byte $04, $0A, $04, $14, $0A, $50, $C4, $86, $06, $82, $06, $03, Zp09, $FF, $D4, $81 ; CPU:$F96C PRG:396C 04 0A 04 14 0A 50 C4 86 06 82 06 03 09 FF D4 81 + .byte $4E, $4E, $80, $2E, $2E, $02, $02, $81, $4E, $4E, $80, $2E, $2E, $02, $02, $FF ; CPU:$F97C PRG:397C 4E 4E 80 2E 2E 02 02 81 4E 4E 80 2E 2E 02 02 FF + .byte Zp00, $D4, $81, $34, $34, $80, $36, $36, $02, $02, $81, $34, $34, $80, $36, $36 ; CPU:$F98C PRG:398C 00 D4 81 34 34 80 36 36 02 02 81 34 34 80 36 36 + .byte $02, $02, $FF, $80, $28, $02, $28, $02, $28, $02, $81, $2A, $02, $2A, $83, $2C ; CPU:$F99C PRG:399C 02 02 FF 80 28 02 28 02 28 02 81 2A 02 2A 83 2C + .byte Zp00, $80, NmiFlag, $02, NmiFlag, $02, NmiFlag, $02, $81, NmiPhase, $02, NmiPhase, $83, $24, $80, $06 ; CPU:$F9AC PRG:39AC 00 80 22 02 22 02 22 02 81 20 02 20 83 24 80 06 + .byte $02, $06, $02, $06, $02, $81, $06, $02, $80, $06, $02, $83, $06, $81, Mode38, $3C ; CPU:$F9BC PRG:39BC 02 06 02 06 02 81 06 02 80 06 02 83 06 81 38 3C + .byte $3E, Zp00, $81, $2E, GameMode, $32, $81, Mode38, $3C, $3E, $85, $0A, $24, $81, $28, Ctrl1 ; CPU:$F9CC PRG:39CC 3E 00 81 2E 30 32 81 38 3C 3E 85 0A 24 81 28 16 + .byte NmiPhase, $2C, $1A, NmiPhase, $85, $04, Zp00, $85, $24, $40, Ctrl1, $1A, $1E, $85, $04, $1E ; CPU:$F9DC PRG:39DC 20 2C 1A 20 85 04 00 85 24 40 16 1A 1E 85 04 1E + .byte NmiPhase, $24, Ctrl1, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F9EC PRG:39EC 20 24 16 FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $55, $55, $CB, $4C, $55, $D5, $34, $55, $55, $AD, $4C, $55 ; CPU:$F9FC PRG:39FC FF FF FF FF 55 55 CB 4C 55 D5 34 55 55 AD 4C 55 + .byte $55, $D5, $54, $B5, $54, $55, $D5, $2A, $55, $D5, $4C, $55, $35, $4B, $55, $55 ; CPU:$FA0C PRG:3A0C 55 D5 54 B5 54 55 D5 2A 55 D5 4C 55 35 4B 55 55 + .byte $B5, $54, $4D, $55, $55, $D5, $AC, $54, $55, $55, $AD, $52, $55, $4D, $55, $B5 ; CPU:$FA1C PRG:3A1C B5 54 4D 55 55 D5 AC 54 55 55 AD 52 55 4D 55 B5 + .byte $AA, $54, $55, $D5, $AA, $52, $55, $B5, $B4, $2A, $35, $55, $55, $AD, $B2, $4A ; CPU:$FA2C PRG:3A2C AA 54 55 D5 AA 52 55 B5 B4 2A 35 55 55 AD B2 4A + .byte $55, $55, $D5, $AA, $54, $55, $AD, $CA, $54, $2D, $55, $53, $AB, $52, $55, $B5 ; CPU:$FA3C PRG:3A3C 55 55 D5 AA 54 55 AD CA 54 2D 55 53 AB 52 55 B5 + .byte $2A, $55, $D5, $2A, $55, $55, $55, $AD, $2A, $55, $AD, $54, $55, $AB, $54, $55 ; CPU:$FA4C PRG:3A4C 2A 55 D5 2A 55 55 55 AD 2A 55 AD 54 55 AB 54 55 + .byte $B5, $4A, $35, $55, $B5, $2A, $55, $AD, $52, $55, $D5, $4A, $AD, $4A, $55, $B5 ; CPU:$FA5C PRG:3A5C B5 4A 35 55 B5 2A 55 AD 52 55 D5 4A AD 4A 55 B5 + .byte $2A, $35, $55, $AD, $D4, $54, $AD, $52, $2D, $D5, $AA, $4C, $55, $AD, $B4, $4A ; CPU:$FA6C PRG:3A6C 2A 35 55 AD D4 54 AD 52 2D D5 AA 4C 55 AD B4 4A + .byte $55, $55, $AD, $AA, $54, $55, $B5, $AA, $AA, $52, $53, $2B, $55, $55, $D5, $AA ; CPU:$FA7C PRG:3A7C 55 55 AD AA 54 55 B5 AA AA 52 53 2B 55 55 D5 AA + .byte $4A, $55, $55, $55, $D5, $AA, $AA, $52, $55, $55, $AB, $4A, $55, $A9, $AD, $6A ; CPU:$FA8C PRG:3A8C 4A 55 55 55 D5 AA AA 52 55 55 AB 4A 55 A9 AD 6A + .byte $A5, $4A, $55, $55, $B5, $52, $55, $55, $55, $D5, $52, $35, $B5, $AA, $AC, $54 ; CPU:$FA9C PRG:3A9C A5 4A 55 55 B5 52 55 55 55 D5 52 35 B5 AA AC 54 + .byte $2D, $AD, $2A, $D5, $54, $55, $55, $55, $D5, $B2, $52, $B5, $2A, $69, $55, $CB ; CPU:$FAAC PRG:3AAC 2D AD 2A D5 54 55 55 55 D5 B2 52 B5 2A 69 55 CB + .byte $D2, $2A, $B5, $AA, $54, $B5, $AA, $54, $4B, $55, $AB, $D2, $54, $4D, $B5, $AA ; CPU:$FABC PRG:3ABC D2 2A B5 AA 54 B5 AA 54 4B 55 AB D2 54 4D B5 AA + .byte $B4, $54, $2D, $D5, $2A, $D5, $52, $AB, $D4, $2A, $B5, $52, $2B, $B5, $52, $AB ; CPU:$FACC PRG:3ACC B4 54 2D D5 2A D5 52 AB D4 2A B5 52 2B B5 52 AB + .byte $54, $35, $D5, $AA, $B4, $54, $AD, $B4, $2A, $55, $55, $AB, $CA, $52, $35, $B5 ; CPU:$FADC PRG:3ADC 54 35 D5 AA B4 54 AD B4 2A 55 55 AB CA 52 35 B5 + .byte $52, $4B, $BA, $A6, $54, $D5, $A6, $52, $55, $D5, $46, $AD, $64, $B5, $6C, $E1 ; CPU:$FAEC PRG:3AEC 52 4B BA A6 54 D5 A6 52 55 D5 46 AD 64 B5 6C E1 + .byte $C6, $54, $69, $D3, $2E, $51, $B1, $95, $ED, $12, $3A, $A5, $95, $5E, $A9, $12 ; CPU:$FAFC PRG:3AFC C6 54 69 D3 2E 51 B1 95 ED 12 3A A5 95 5E A9 12 + .byte $BB, $A1, $2E, $5B, $54, $E9, $11, $7B, $85, $AB, $4A, $56, $A5, $B5, $45, $AB ; CPU:$FB0C PRG:3B0C BB A1 2E 5B 54 E9 11 7B 85 AB 4A 56 A5 B5 45 AB + .byte $C1, $EA, $51, $AB, $A4, $7D, $84, $E4, $4F, $E4, $A4, $FA, $52, $C1, $4B, $AC ; CPU:$FB1C PRG:3B1C C1 EA 51 AB A4 7D 84 E4 4F E4 A4 FA 52 C1 4B AC + .byte $BE, $60, $3B, $15, $55, $5B, $84, $D4, $BE, $AB, $24, $A5, $B6, $6A, $A9, $54 ; CPU:$FB2C PRG:3B2C BE 60 3B 15 55 5B 84 D4 BE AB 24 A5 B6 6A A9 54 + .byte $55, $55, $49, $D2, $FE, $17, $2A, $45, $B5, $11, Zp00, $FF, $FF, $05, $80, $EE ; CPU:$FB3C PRG:3B3C 55 55 49 D2 FE 17 2A 45 B5 11 00 FF FF 05 80 EE + .byte $B7, $52, $54, $ED, $06, $80, $FF, $5F, Zp00, $F8, $FF, $05, Zp00, $80, $FF, $FF ; CPU:$FB4C PRG:3B4C B7 52 54 ED 06 80 FF 5F 00 F8 FF 05 00 80 FF FF + .byte $07, Zp00, $F8, $FF, $1F, Zp00, $E8, $1F, Zp00, $E0, $FF, $0F, $05, $80, $FF, $FF ; CPU:$FB5C PRG:3B5C 07 00 F8 FF 1F 00 E8 1F 00 E0 FF 0F 05 80 FF FF + .byte $07, $80, $FF, Zp01, Zp00, $FE, $7F, $50, Zp01, $E8, $FF, $1F, Zp00, $FE, $07, $E0 ; CPU:$FB6C PRG:3B6C 07 80 FF 01 00 FE 7F 50 01 E8 FF 1F 00 FE 07 E0 + .byte $FF, $1F, Zp00, Zp00, $FE, $FF, Zp01, $80, $FF, Zp01, $F8, $FF, Zp01, $1A, $80, $FF ; CPU:$FB7C PRG:3B7C FF 1F 00 00 FE FF 01 80 FF 01 F8 FF 01 1A 80 FF + .byte $1F, Zp00, $FE, $07, $F0, $FF, Zp01, $E8, $05, $FC, $3F, Zp00, $FA, $0F, $A0, $FF ; CPU:$FB8C PRG:3B8C 1F 00 FE 07 F0 FF 01 E8 05 FC 3F 00 FA 0F A0 FF + .byte $07, $E8, Zp00, $FE, $1F, $80, $FE, Zp01, $F8, $7F, Zp00, $7E, $C0, $FF, $03, $A0 ; CPU:$FB9C PRG:3B9C 07 E8 00 FE 1F 80 FE 01 F8 7F 00 7E C0 FF 03 A0 + .byte $7F, Zp00, $FF, $07, $E8, $07, $E8, $7F, Zp00, $F8, $07, $F8, $7F, $80, $3F, $80 ; CPU:$FBAC PRG:3BAC 7F 00 FF 07 E8 07 E8 7F 00 F8 07 F8 7F 80 3F 80 + .byte $FE, $0F, $80, $7E, $81, $FF, $07, $84, $03, $FE, $7F, Zp00, $E0, $1F, $FA, $7B ; CPU:$FBBC PRG:3BBC FE 0F 80 7E 81 FF 07 84 03 FE 7F 00 E0 1F FA 7B + .byte $A0, $D0, $80, $FF, $1F, Zp00, $FE, Zp01, $FE, $07, $3E, $10, $F8, $FF, Zp01, $A0 ; CPU:$FBCC PRG:3BCC A0 D0 80 FF 1F 00 FE 01 FE 07 3E 10 F8 FF 01 A0 + .byte $1F, $F8, $7F, $C0, Zp01, $E2, $FF, $17, Zp00, $F8, $07, $FE, $07, $7E, Zp00, $F8 ; CPU:$FBDC PRG:3BDC 1F F8 7F C0 01 E2 FF 17 00 F8 07 FE 07 7E 00 F8 + .byte $FF, $03, $80, $7E, $E1, $5F, $80, $1F, $28, $FC, $FF, Zp00, $A0, $1F, $F8, $0F ; CPU:$FBEC PRG:3BEC FF 03 80 7E E1 5F 80 1F 28 FC FF 00 A0 1F F8 0F + .byte $3D, Zp01, $EE, $7F, Zp00, $AA, $FA, $1F, $80, $1F, $FE, $03, Zp00, $FA, $FF, Zp00 ; CPU:$FBFC PRG:3BFC 3D 01 EE 7F 00 AA FA 1F 80 1F FE 03 00 FA FF 00 + .byte $E0, $87, $FE, $E1, $4B, $E0, $81, $FE, $E3, $03, $F8, $03, $FE, $E0, $1F, Zp00 ; CPU:$FC0C PRG:3C0C E0 87 FE E1 4B E0 81 FE E3 03 F8 03 FE E0 1F 00 + .byte $FA, $3F, $41, $84, $FE, $1F, $80, $97, $FF, Zp01, Zp00, $FE, $FF, Zp01, Mode38, $80 ; CPU:$FC1C PRG:3C1C FA 3F 41 84 FE 1F 80 97 FF 01 00 FE FF 01 38 80 + .byte $FF, $7F, Zp00, $1C, $E0, $FF, $1F, Zp00, $80, $BF, $FF, $03, Zp00, $F8, $FF, $1F ; CPU:$FC2C PRG:3C2C FF 7F 00 1C E0 FF 1F 00 80 BF FF 03 00 F8 FF 1F + .byte Zp00, $80, $FF, $FF, Zp00, Zp00, $FE, $FF, Zp01, $80, $FF, $FD, Zp00, $78, $F9, $07 ; CPU:$FC3C PRG:3C3C 00 80 FF FF 00 00 FE FF 01 80 FF FD 00 78 F9 07 + .byte $40, $FE, $9F, $02, $80, $9F, $FF, Zp01, Zp01, $F8, $FF, $07, $14, $80, $FF, $FF ; CPU:$FC4C PRG:3C4C 40 FE 9F 02 80 9F FF 01 01 F8 FF 07 14 80 FF FF + .byte Zp01, Zp00, $F8, $FF, $0F, $80, $02, $FE, $BF, $07, $E0, $C0, $FF, $1F, $80, $07 ; CPU:$FC5C PRG:3C5C 01 00 F8 FF 0F 80 02 FE BF 07 E0 C0 FF 1F 80 07 + .byte $F0, $E7, $3F, $68, Zp00, $FE, $FF, Zp01, $10, $80, $FF, $FF, Zp01, Zp00, $F8, $FF ; CPU:$FC6C PRG:3C6C F0 E7 3F 68 00 FE FF 01 10 80 FF FF 01 00 F8 FF + .byte $07, $10, $80, $FF, $FF, $07, $40, $E0, $FF, $5F, Zp00, $07, $F0, $E7, $3F, $50 ; CPU:$FC7C PRG:3C7C 07 10 80 FF FF 07 40 E0 FF 5F 00 07 F0 E7 3F 50 + .byte Zp00, $FE, $FF, $03, $10, $E0, $F3, $7F, Zp01, Zp00, $FE, $FF, $07, $10, $80, $FF ; CPU:$FC8C PRG:3C8C 00 FE FF 03 10 E0 F3 7F 01 00 FE FF 07 10 80 FF + .byte $FF, Zp01, Zp00, $F8, $FF, $1F, Zp00, Zp00, $FE, $FF, $07, Zp00, $E0, $FF, $7F, Zp01 ; CPU:$FC9C PRG:3C9C FF 01 00 F8 FF 1F 00 00 FE FF 07 00 E0 FF 7F 01 + .byte $78, $80, $FF, $FE, $80, $02, $F8, $FF, $0F, $40, Zp00, $FE, $FF, $07, $10, $80 ; CPU:$FCAC PRG:3CAC 78 80 FF FE 80 02 F8 FF 0F 40 00 FE FF 07 10 80 + .byte $FF, $FF, Zp00, Zp01, $E0, $FF, $7F, $40, Zp00, $FE, $FF, $07, Zp00, $7C, $F8, $1F ; CPU:$FCBC PRG:3CBC FF FF 00 01 E0 FF 7F 40 00 FE FF 07 00 7C F8 1F + .byte $1E, $80, $1F, $FA, $B5, $05, $F8, $07, $F8, $E0, $1F, $5A, Zp00, $FE, $FF, Zp01 ; CPU:$FCCC PRG:3CCC 1E 80 1F FA B5 05 F8 07 F8 E0 1F 5A 00 FE FF 01 + .byte $12, $E0, $FF, $7F, Zp00, Zp00, $FE, $FF, $07, Zp00, Mode38, $F9, $1F, Ctrl1, $A0, $3F ; CPU:$FCDC PRG:3CDC 12 E0 FF 7F 00 00 FE FF 07 00 38 F9 1F 16 A0 3F + .byte $7D, $A1, $12, $EA, $1F, $E0, $07, $FE, $A1, $05, $E8, $FF, $07, $A0, Zp01, $FE ; CPU:$FCEC PRG:3CEC 7D A1 12 EA 1F E0 07 FE A1 05 E8 FF 07 A0 01 FE + .byte $F9, $07, $A0, $81, $FF, $5F, Zp00, $F8, $81, $3F, $FA, $05, $5A, $C0, $FF, $13 ; CPU:$FCFC PRG:3CFC F9 07 A0 81 FF 5F 00 F8 81 3F FA 05 5A C0 FF 13 + .byte Zp01, $FC, $07, $FA, $A0, $7F, $E0, Zp00, $FE, $7F, Zp01, $E0, $07, $FA, $E1, $1F ; CPU:$FD0C PRG:3D0C 01 FC 07 FA A0 7F E0 00 FE 7F 01 E0 07 FA E1 1F + .byte $80, $1F, $F8, $1F, Zp01, $F8, $1F, $F8, $C1, $3F, $80, Ctrl1, $FC, $5F, Zp00, $EC ; CPU:$FD1C PRG:3D1C 80 1F F8 1F 01 F8 1F F8 C1 3F 80 16 FC 5F 00 EC + .byte $1F, $E0, $A7, $7F, Zp00, $18, $FE, $3F, $40, $A0, $FF, $07, $E0, $E5, $7F, Zp00 ; CPU:$FD2C PRG:3D2C 1F E0 A7 7F 00 18 FE 3F 40 A0 FF 07 E0 E5 7F 00 + .byte $1A, $FC, $5F, Zp00, $EA, $7F, $80, $97, $FE, Zp01, $E0, $C3, $FF, Zp01, $F0, $7F ; CPU:$FD3C PRG:3D3C 1A FC 5F 00 EA 7F 80 97 FE 01 E0 C3 FF 01 F0 7F + .byte Zp00, $BE, $FF, Zp00, $80, $BF, $7F, Zp01, $E0, $1F, $80, $BF, $FF, Zp00, $80, $FF ; CPU:$FD4C PRG:3D4C 00 BE FF 00 80 BF 7F 01 E0 1F 80 BF FF 00 80 FF + .byte $5F, Zp00, $E0, $FF, Zp01, $5C, $FB, $03, $80, $FE, $7F, Zp00, $E0, $FE, $3F, Zp00 ; CPU:$FD5C PRG:3D5C 5F 00 E0 FF 01 5C FB 03 80 FE 7F 00 E0 FE 3F 00 + .byte $F8, $9F, $12, $80, $FE, $B5, $05, $B0, $BF, $1F, Zp00, $FE, $1F, Zp00, $E0, $7F ; CPU:$FD6C PRG:3D6C F8 9F 12 80 FE B5 05 B0 BF 1F 00 FE 1F 00 E0 7F + .byte $E8, $07, $F0, $FF, Zp00, $F8, $7F, $04, Zp00, $FA, $FF, $11, $80, $FE, $03, $F8 ; CPU:$FD7C PRG:3D7C E8 07 F0 FF 00 F8 7F 04 00 FA FF 11 80 FE 03 F8 + .byte $FF, $1A, Zp00, $E8, $FF, $05, Zp00, $FE, $7F, Zp00, $F8, $FF, $04, $80, $FE, $5B ; CPU:$FD8C PRG:3D8C FF 1A 00 E8 FF 05 00 FE 7F 00 F8 FF 04 80 FE 5B + .byte Zp01, $E4, $BF, $7E, Zp00, $F8, $BF, Zp01, Zp00, $FE, $A7, $13, $A1, $FB, $17, $80 ; CPU:$FD9C PRG:3D9C 01 E4 BF 7E 00 F8 BF 01 00 FE A7 13 A1 FB 17 80 + .byte $FF, $17, Zp00, $E0, $FF, $B1, Zp01, $F0, $FF, Zp01, $F8, $FB, $11, Zp00, $F8, $FF ; CPU:$FDAC PRG:3DAC FF 17 00 E0 FF B1 01 F0 FF 01 F8 FB 11 00 F8 FF + .byte $05, Zp00, $FF, $07, $E0, $EF, $3F, Zp00, $A0, $FF, $1F, Zp00, $E8, $FF, $07, $80 ; CPU:$FDBC PRG:3DBC 05 00 FF 07 E0 EF 3F 00 A0 FF 1F 00 E8 FF 07 80 + .byte $FE, $1F, Zp00, $E0, $FF, $2D, $80, $B4, $FF, $03, $E0, $B7, $1F, Zp00, $E0, $FF ; CPU:$FDCC PRG:3DCC FE 1F 00 E0 FF 2D 80 B4 FF 03 E0 B7 1F 00 E0 FF + .byte $4B, Zp00, $FC, $7F, Zp00, $FA, $FF, Zp01, Zp00, $FE, $7F, Zp01, Zp00, $FF, $3F, Zp00 ; CPU:$FDDC PRG:3DDC 4B 00 FC 7F 00 FA FF 01 00 FE 7F 01 00 FF 3F 00 + .byte $BA, $FF, Zp01, Zp00, $FE, $FF, Zp01, $80, $FE, $7F, Zp00, $E0, $FF, $07, Zp00, $F8 ; CPU:$FDEC PRG:3DEC BA FF 01 00 FE FF 01 80 FE 7F 00 E0 FF 07 00 F8 + .byte $7F, $05, $44, $FB, $3F, Zp00, $BE, $FF, $04, Zp00, $FA, $BF, $14, $80, $FE, $1F ; CPU:$FDFC PRG:3DFC 7F 05 44 FB 3F 00 BE FF 04 00 FA BF 14 80 FE 1F + .byte $80, $EE, $FF, Zp00, $80, $FE, $FF, Zp00, $80, $FE, $FF, Zp00, $E0, $F7, $17, Zp00 ; CPU:$FE0C PRG:3E0C 80 EE FF 00 80 FE FF 00 80 FE FF 00 E0 F7 17 00 + .byte $E0, $FF, $4F, Zp00, $E8, $BF, $5F, Zp00, $F8, $FF, $04, Zp00, $FC, $9F, $12, $C0 ; CPU:$FE1C PRG:3E1C E0 FF 4F 00 E8 BF 5F 00 F8 FF 04 00 FC 9F 12 C0 + .byte $FF, $3F, Zp00, $E8, $FF, $07, Zp00, $E0, $FF, $03, Zp00, $FF, $BF, $0B, Zp00, $FE ; CPU:$FE2C PRG:3E2C FF 3F 00 E8 FF 07 00 E0 FF 03 00 FF BF 0B 00 FE + .byte $FF, Zp00, Zp00, $FE, $7F, $05, Zp00, $FE, $7F, $0D, Zp00, $F8, $FF, $07, Zp00, $F8 ; CPU:$FE3C PRG:3E3C FF 00 00 FE 7F 05 00 FE 7F 0D 00 F8 FF 07 00 F8 + .byte $FF, Zp01, $80, $FF, $EF, Zp01, $80, $FF, $3F, Zp00, $80, $FF, $7F, Zp00, $A0, $FF ; CPU:$FE4C PRG:3E4C FF 01 80 FF EF 01 80 FF 3F 00 80 FF 7F 00 A0 FF + .byte $6F, Zp01, $80, $FF, $3F, Zp00, $80, $FF, $5F, Zp00, $A0, $FF, $5F, Zp00, $45, $EC ; CPU:$FE5C PRG:3E5C 6F 01 80 FF 3F 00 80 FF 5F 00 A0 FF 5F 00 45 EC + .byte $7F, $51, $10, $FA, $BF, $12, $80, $FF, $2E, Zp01, $D2, $FE, Zp01, $7A, $B1, $7F ; CPU:$FE6C PRG:3E6C 7F 51 10 FA BF 12 80 FF 2E 01 D2 FE 01 7A B1 7F + .byte Zp00, $AA, $B7, $1F, $80, $1F, $EE, $24, $91, $7F, $80, $7E, $F0, $17, $10, $FB ; CPU:$FE7C PRG:3E7C 00 AA B7 1F 80 1F EE 24 91 7F 80 7E F0 17 10 FB + .byte $B1, $1F, $80, $3F, $D5, $04, $E1, $FF, Zp01, $B4, $B4, $3F, $41, $54, $ED, $5E ; CPU:$FE8C PRG:3E8C B1 1F 80 3F D5 04 E1 FF 01 B4 B4 3F 41 54 ED 5E + .byte Zp01, $ED, $90, $7F, $44, $2B, $B1, $1F, $80, $7F, $F8, $05, $A8, $7E, $EA, $07 ; CPU:$FE9C PRG:3E9C 01 ED 90 7F 44 2B B1 1F 80 7F F8 05 A8 7E EA 07 + .byte $80, $FF, $36, Zp01, $E0, $FF, $0F, Zp00, $AC, $FF, $47, Zp00, $B4, $FF, $1B, Zp01 ; CPU:$FEAC PRG:3EAC 80 FF 36 01 E0 FF 0F 00 AC FF 47 00 B4 FF 1B 01 + .byte $D4, $FE, $5A, $11, $A4, $6D, $BB, $2A, $90, $FA, $BA, $45, $44, $BA, $BB, $2A ; CPU:$FEBC PRG:3EBC D4 FE 5A 11 A4 6D BB 2A 90 FA BA 45 44 BA BB 2A + .byte Zp01, $F9, $4F, $2B, NmiPhase, $FD, $5B, $14, $51, $AB, $EE, $45, $52, $54, $FB, $2A ; CPU:$FECC PRG:3ECC 01 F9 4F 2B 20 FD 5B 14 51 AB EE 45 52 54 FB 2A + .byte $45, $52, $ED, $AE, $24, $45, $ED, $4E, $95, $A4, $6A, $6D, $95, $52, $6A, $AD ; CPU:$FEDC PRG:3EDC 45 52 ED AE 24 45 ED 4E 95 A4 6A 6D 95 52 6A AD + .byte $AA, $49, $6A, $55, $5B, $49, $55, $55, $AB, $2A, $55, $55, $B5, $4A, $AD, $52 ; CPU:$FEEC PRG:3EEC AA 49 6A 55 5B 49 55 55 AB 2A 55 55 B5 4A AD 52 + .byte $AD, $4A, $B5, $AA, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FEFC PRG:3EFC AD 4A B5 AA FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF0C PRG:3F0C FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF1C PRG:3F1C FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF2C PRG:3F2C FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF3C PRG:3F3C FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF4C PRG:3F4C FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF5C PRG:3F5C FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF6C PRG:3F6C FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF7C PRG:3F7C FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF8C PRG:3F8C FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF9C PRG:3F9C FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFAC PRG:3FAC FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFBC PRG:3FBC FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFCC PRG:3FCC FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFDC PRG:3FDC FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFEC PRG:3FEC FF FF FF FF FF FF FF FF +; ----------------------------------------------------------------------------- +; Routine: Label_FFF4 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_FFF4: + jmp $F372 ; CPU:$FFF4 PRG:3FF4 4C 72 F3 +; ----------------------------------------------------------------------------- +; Routine: Label_FFF7 +; Global: Contextual control-flow entry identified from its parent routine and incoming branch usage. +; Local: Continues its parent routine along the condition or operation encoded in this label, +; then returns, branches again, or rejoins shared code as documented by the instructions. +; Parameters: Undetermined in Pass 1 unless implied by the caller. +; Returns: Undetermined in Pass 1; status flags and registers may carry results. +; Clobbers: Undetermined in Pass 1. +; ----------------------------------------------------------------------------- +Label_FFF7: + jmp $F40F ; CPU:$FFF7 PRG:3FF7 4C 0F F4 +; ---- data $FFFA-$FFFF (6 bytes) ---- + .byte $86, $C0, Zp00, $C0, Zp00, $C0 ; CPU:$FFFA PRG:3FFA 86 C0 00 C0 00 C0 diff --git a/Wild Gunman (U)/copilot/reconstructed.lbl b/Wild Gunman (U)/copilot/reconstructed.lbl new file mode 100644 index 0000000..e0c8c05 --- /dev/null +++ b/Wild Gunman (U)/copilot/reconstructed.lbl @@ -0,0 +1,249 @@ +al 00FFF7 .Label_FFF7 +al 00FFF4 .Label_FFF4 +al 00F76F .Label_F76F +al 00F724 .Label_F724 +al 00F723 .Label_F723 +al 00F70A .Label_F70A +al 00F702 .Label_F702 +al 00F709 .Label_F709 +al 00F6D2 .Label_F6D2 +al 00F6D0 .Label_F6D0 +al 00F6BC .Label_F6BC +al 00F6B1 .Label_F6B1 +al 00F6C7 .Label_F6C7 +al 00F6D9 .Label_F6D9 +al 00F67F .Label_F67F +al 00F67D .Label_F67D +al 00F674 .Label_F674 +al 00F686 .Label_F686 +al 00F652 .Label_F652 +al 00F650 .Label_F650 +al 00F642 .Label_F642 +al 00F64B .Label_F64B +al 00F659 .Label_F659 +al 00F613 .Label_F613 +al 00F60F .Label_F60F +al 00F60E .Label_F60E +al 00F5FD .Label_F5FD +al 00F5FB .Label_F5FB +al 00F5EF .Label_F5EF +al 00F5EC .Label_F5EC +al 00F5E1 .Label_F5E1 +al 00F5D5 .Label_F5D5 +al 00F5C7 .Label_F5C7 +al 00F5B4 .Label_F5B4 +al 00F617 .Label_F617 +al 00F5AC .Label_F5AC +al 00F592 .Label_F592 +al 00F5B0 .Label_F5B0 +al 00F583 .Label_F583 +al 00F570 .Label_F570 +al 00F573 .Label_F573 +al 00F5BD .Label_F5BD +al 00F59E .Label_F59E +al 00F588 .Label_F588 +al 00F58E .Label_F58E +al 00F57F .Label_F57F +al 00F579 .Label_F579 +al 00F53F .Label_F53F +al 00F5A9 .Label_F5A9 +al 00F532 .Label_F532 +al 00F53D .Label_F53D +al 00F51A .Label_F51A +al 00F50D .Label_F50D +al 00F50A .Label_F50A +al 00F4EF .Label_F4EF +al 00F48A .Label_F48A +al 00F48E .Label_F48E +al 00F468 .Label_F468 +al 00F453 .Label_F453 +al 00F440 .Label_F440 +al 00F42A .Label_F42A +al 00F426 .Label_F426 +al 00F418 .Label_F418 +al 00F40F .Label_F40F +al 00F3EB .Label_F3EB +al 00F3EE .Label_F3EE +al 00F3E3 .Label_F3E3 +al 00F3C0 .Label_F3C0 +al 00F3A8 .Label_F3A8 +al 00F39D .Label_F39D +al 00F38F .Label_F38F +al 00F38B .Label_F38B +al 00F391 .Label_F391 +al 00F387 .Label_F387 +al 00F372 .Label_F372 +al 00DEED .Label_DEED +al 00DED4 .Label_DED4 +al 00DAE0 .Label_DAE0 +al 00DAD2 .Label_DAD2 +al 00D97C .Label_D97C +al 00D996 .Label_D996 +al 00D978 .Label_D978 +al 00D969 .Label_D969 +al 00D965 .Label_D965 +al 00D959 .Label_D959 +al 00D973 .Label_D973 +al 00D955 .Label_D955 +al 00D8FF .Label_D8FF +al 00D8EF .Label_D8EF +al 00D8E5 .Label_D8E5 +al 00D8E3 .Label_D8E3 +al 00D8D9 .Label_D8D9 +al 00D8D7 .Label_D8D7 +al 00D5B3 .Label_D5B3 +al 00D5AF .Label_D5AF +al 00D4F4 .Label_D4F4 +al 00D416 .Label_D416 +al 00D3EE .Label_D3EE +al 00D3FD .Label_D3FD +al 00D3CF .Label_D3CF +al 00D3C4 .Label_D3C4 +al 00D3C2 .Label_D3C2 +al 00D3B9 .Label_D3B9 +al 00D3BF .Label_D3BF +al 00D396 .Label_D396 +al 00D382 .Label_D382 +al 00D36C .Label_D36C +al 00D33C .Label_D33C +al 00D363 .Label_D363 +al 00D365 .Label_D365 +al 00D317 .Label_D317 +al 00D313 .Label_D313 +al 00D2F2 .Label_D2F2 +al 00D2E2 .Label_D2E2 +al 00D2D5 .Label_D2D5 +al 00D2D3 .Label_D2D3 +al 00D2CF .Label_D2CF +al 00D2D2 .Label_D2D2 +al 00D273 .Label_D273 +al 00D25E .Label_D25E +al 00D23B .Label_D23B +al 00D213 .Label_D213 +al 00D208 .Label_D208 +al 00D1FF .Label_D1FF +al 00D205 .Label_D205 +al 00D1C9 .Label_D1C9 +al 00D1D3 .Label_D1D3 +al 00D1C5 .Label_D1C5 +al 00D1D9 .Label_D1D9 +al 00D1AE .Label_D1AE +al 00D19D .Label_D19D +al 00D187 .Label_D187 +al 00D175 .Label_D175 +al 00D172 .Label_D172 +al 00D165 .Label_D165 +al 00D154 .Label_D154 +al 00D15B .Label_D15B +al 00D149 .Label_D149 +al 00D14E .Label_D14E +al 00D118 .Label_D118 +al 00D110 .Label_D110 +al 00D134 .Label_D134 +al 00D11D .Label_D11D +al 00D0FF .Label_D0FF +al 00D0F1 .Label_D0F1 +al 00D0E3 .Label_D0E3 +al 00D0DA .Label_D0DA +al 00D0CE .Label_D0CE +al 00D0D1 .Label_D0D1 +al 00D0C3 .Label_D0C3 +al 00D0B6 .Label_D0B6 +al 00D0A6 .Label_D0A6 +al 00D097 .Label_D097 +al 00D089 .Label_D089 +al 00D068 .Label_D068 +al 00D053 .Label_D053 +al 00D04F .Label_D04F +al 00D054 .Label_D054 +al 00D03E .Label_D03E +al 00D02B .Label_D02B +al 00D027 .Label_D027 +al 00D02C .Label_D02C +al 00D01C .Label_D01C +al 00CF0C .Label_CF0C +al 00CF01 .Label_CF01 +al 00C5EC .Label_C5EC +al 00C5E6 .Label_C5E6 +al 00C5DF .Label_C5DF +al 00C5D7 .Label_C5D7 +al 00C5D1 .Sub_C5D1 +al 00C585 .Label_C585 +al 00C573 .MainLoopBody +al 00C4ED .Label_C4ED +al 00C4C2 .Label_C4C2 +al 00C4C6 .Label_C4C6 +al 00C4B5 .Label_C4B5 +al 00C4AA .Label_C4AA +al 00C421 .Label_C421 +al 00C411 .Label_C411 +al 00C3E7 .Label_C3E7 +al 00C3D0 .Label_C3D0 +al 00C3B9 .Label_C3B9 +al 00C3AC .NmiGameLogic5 +al 00C3A3 .Label_C3A3 +al 00C38F .Label_C38F +al 00C38C .Label_C38C +al 00C389 .Label_C389 +al 00C37D .Label_C37D +al 00C367 .Label_C367 +al 00C341 .Label_C341 +al 00C33D .Label_C33D +al 00C337 .Label_C337 +al 00C32B .NmiGameLogic4 +al 00C324 .Label_C324 +al 00C30B .Label_C30B +al 00C2F5 .Label_C2F5 +al 00C2E3 .Label_C2E3 +al 00C2CA .Label_C2CA +al 00C2BB .Label_C2BB +al 00C2D4 .Label_C2D4 +al 00C2E2 .Label_C2E2 +al 00C29F .NmiGameLogic3 +al 00C29E .Label_C29E +al 00C275 .Label_C275 +al 00C273 .Label_C273 +al 00C265 .NmiGameLogic2 +al 00C25A .Label_C25A +al 00C24D .Label_C24D +al 00C259 .Label_C259 +al 00C233 .NmiGameLogic1 +al 00C232 .Label_C232 +al 00C22B .Label_C22B +al 00C225 .Label_C225 +al 00C21B .ResetInitSub2 +al 00C212 .Label_C212 +al 00C202 .Label_C202 +al 00C1EB .Label_C1EB +al 00C1CA .Label_C1CA +al 00C1A8 .Label_C1A8 +al 00C1F7 .Label_C1F7 +al 00C19B .Label_C19B +al 00C192 .Label_C192 +al 00C183 .Label_C183 +al 00C197 .Label_C197 +al 00C189 .Label_C189 +al 00C170 .Label_C170 +al 00C169 .Label_C169 +al 00C179 .Label_C179 +al 00C156 .Label_C156 +al 00C16D .Label_C16D +al 00C101 .Label_C101 +al 00C0DE .Label_C0DE +al 00C0D4 .Label_C0D4 +al 00C0F0 .Label_C0F0 +al 00C10F .Label_C10F +al 00C10A .Label_C10A +al 00C130 .Label_C130 +al 00C0B3 .MainStateDispatch +al 00C0A6 .Label_C0A6 +al 00C086 .NmiHandler +al 00C06E .Label_C06E +al 00C06B .Label_C06B +al 00C061 .Label_C061 +al 00C07C .Label_C07C +al 00C056 .Label_C056 +al 00C02C .Label_C02C +al 00C01E .Label_C01E +al 00C002 .Label_C002 +al 00C000 .Reset diff --git a/_wip/Wild Gunman (U)/copilot/reconstructed.map b/Wild Gunman (U)/copilot/reconstructed.map similarity index 61% rename from _wip/Wild Gunman (U)/copilot/reconstructed.map rename to Wild Gunman (U)/copilot/reconstructed.map index aaf7f17..1ad1cc6 100644 --- a/_wip/Wild Gunman (U)/copilot/reconstructed.map +++ b/Wild Gunman (U)/copilot/reconstructed.map @@ -1,13 +1,19 @@ Modules list: ------------- +header.o: + HEADER Offs=000000 Size=000010 Align=00001 Fill=0000 prg.o: PRG Offs=000000 Size=004000 Align=00001 Fill=0000 +chr.o: + CHR Offs=000000 Size=002000 Align=00001 Fill=0000 Segment list: ------------- Name Start End Size Align ---------------------------------------------------- +CHR 000000 001FFF 002000 00001 +HEADER 000000 00000F 000010 00001 PRG 00C000 00FFFF 004000 00001 diff --git a/_wip/Wild Gunman (U)/Wild Gunman (U) [!].nes b/Wild Gunman (U)/copilot/reconstructed.nes similarity index 100% rename from _wip/Wild Gunman (U)/Wild Gunman (U) [!].nes rename to Wild Gunman (U)/copilot/reconstructed.nes diff --git a/Wild Gunman (U)/copilot/rom.nes b/Wild Gunman (U)/copilot/rom.nes new file mode 120000 index 0000000..ba0d050 --- /dev/null +++ b/Wild Gunman (U)/copilot/rom.nes @@ -0,0 +1 @@ +../rom.nes \ No newline at end of file diff --git a/_wip/Wild Gunman (U)/copilot/symbols.inc b/Wild Gunman (U)/copilot/symbols.inc similarity index 100% rename from _wip/Wild Gunman (U)/copilot/symbols.inc rename to Wild Gunman (U)/copilot/symbols.inc diff --git a/_wip/Wild Gunman (U)/copilot/reconstructed_prg.bin b/Wild Gunman (U)/rom.nes similarity index 64% rename from _wip/Wild Gunman (U)/copilot/reconstructed_prg.bin rename to Wild Gunman (U)/rom.nes index 4f66b6b21fe9af049dd307f57f0057d496e751db..77955b3a8258fda57089bea618623a1fb54fe65d 100644 GIT binary patch delta 8265 zcmZWueQ+Dcb>HJbI5-4xP?TD*1mPgdQ-8!Yp;2mrC4{4GCCZGQM4fu3?KlnT$YX0J zss+WZ1ceY5EL|&qctUslN34lQw40eaW2GaeX=5d_O~~{RcB6<&Vn>`>7Eh)lYARYh ziIi|8j<@~2Jsc&wkHYP~{dn)~+xOnST~#W|b5$k&^)LU`8bwi9055g()qAha&(FM2 zyzu=8P+iyc zXgr#`l3FHv^2rh2a6K>cT({+vyt1ZiDhbdmIitbcWbDPW6G zzpAEznGw$vbEy={;qRX~e|~yOc7|FMh+*=+{bi%WpU-0o=Y~7)y04#^`B=r^(T}b;mhAwF8I%(fM|WflP1Q(ZbxkU!L3j^K zEF}{O>tFxv)zPWxX(_<+r&3Wt)--fO)%93gtENXtg6i9c>Vnf+j|D>^Or^prj2W?5 zIE+>;9Byer38BguxXbL@yQeNRIlfZ0EUKVnHwvWdn&t}>jaol`)O3`!74Z<$Zwk1r>+hI^i?)ik&LaX zUouw`zyA4@K%h+meKQJyUO9Yt>Qe$?#r{H4COBh1xv{x#@2(KhQdA8R%}&=2$R$hB zA-!F&3tp*M%;i(;Te)mDnS!PysD6p5HiY*CXEucQU`swI8f;xr)s~P-mHy+8o;eHn zR_ai=Nnk~Y%PMIdRHF%hqN+s=XkgsR$x@h;kPV>12(%R|P>QKP&Ov)Z&2{nZdppx) zRs@W-gk!0E-hS(yQ6WYq_06xnUa2}lcB-mcCV+*{&ej`C-o*vZyEdnEZMBBI!7hbo z9cQs`-@g6x?p61~zD(RwKc}vKW_;G*d+YVnzu&%b-&6JaAKu%U7s8OTYT;>;L->Nj zbqS=TXz7J3Ina%LbOLs(Xjl}LVZ&tPWPk}iabad=#;stqlu=3KNJP)`CGO&ji&w5( zu^l1Yayg&M>%!gB*JW%BfeF}vnyTrsWHKMj2O+2+mTIoJ4az8&OYY)Y!z`D%nVPp3 z8@u_&6loMj&uI_ItxfywlW$w3vaX*U8-mJOpe_uF#nx@!+|~8HJ>Ni-DW^iLK6~*) z)6kSkB@zn3aH{osqXEOg{?Vox3YG1D_9qYo)>f%V^@x!{a%uuhrf2vieK{L1< zOLdxv{eU|@dRaHRHpBjG&e1<-+m)AI+O`f_#xO;Ndl-l&6wM$CnXBViR$+Mf)P$DQWH+ZEf$~Vt*B;>}madQ2`&P15(Nm2C01;dH_IDTgm5;70URl?+qK$qOZD2T1 zr4O(>Z)wRBgIhEE`<~hzSIH;$)V|MJ4};GSZjU_@3^KitG!B~gQ zLZkGzU;>AK=1Zm0vdVa#IB06iifAkr)6{_A;MVTrqiR1}5ZA1ihU1Fk)u)e)7%_4@ zIO5YuR|q&_U%`2{EgV)=uI~l9w0}$b4mz}~V;`KJh5=g?FrrXRId8Ey)E4eLZ zq&SiR&wGhV{3BRM8E)^tC9aZs-w|~)^Ifki&+L~83uqw?wfk;Q1o*$ zI^gri%lL4S{?*9H`x}^nx@oj)EOYxS6V`i;WfH;gYW9FF^y9W!E9%Vl5J4zNI7e}^ z4Le-Mf|XnDxo7Q4hDboM0A_jJWFd~UJQ6DmjroB`3Mr8QPba=YvYN*2orMzDl@PXB ztrSuercs5lnVQC^WLEX9cealtZ#DV;y?o@GQy)rd@wh_s&Gz=Zk^u!ZY2@MPg`A;O zv2PXzp_D^S4!cJ!&&8)w0R!y>a^$sZHr07&rvcMwV8w-1iOAjKdTU$~@jsl79T+fH z48S)Lk7qLEa(!^O>}??y;=&;fgq1vx8F{|XJ6}!wRp2;MzTMn{S=mG_%-k7(_ zY|}&|NYN&6$o|-t-d@{zap%rMLwrcrwm<*;qv%P(GL`%9yKnmwCb<>d31?6!;@Cyb zMenw4cii!l|NQyTkt3&1|Mi0pDJ?CbWGilYA11!c#gC*jOTs3aVnz{x9|bjmMoYbXCXGCEdeFqKevuT@JGrZEND8sDp!!pRtcR z1=ekSv}x7Kb*tB|)4wr0J9XjXkL)HBvJV6TRa4imUrBZM?AeoN&mKAyjTuJ1RCFnM zppwO(Wz}=oR{eQnQe14kX7#3tMo<I?QXnlPZ31bMfOX>!E{L_S!0`!tQ5Z^STJjxc zES9504AOD~LK+|_dJJ8`tx5hh>EQ-N*1{MH+0F>*gmVKL z6=L^e_uQ8L@b^Ehn7VIXvNBGjqDmff;r$HYVyw*rdIH>q>7TxbX=!k8SK96{1*FU?t4`4?_ww|;>| zBFVhSCnH?y6`$-wM}P6jzkkQKa%xOOw}jGhc|9lTvk#4pjXjoK#uM2DpuCKi#$vgm z7{2@s=yZ1f;3?BJ-#Jq`SVG~t}Uf==N4 zRZLTb%L=brb*ojciJMKl%8n128#@mk7x~`m$+5>tL6j2uIXx+=f103Qlu04b$hn1u zh0e|akqTphSP(8$IhIT=d&!W5e$h+7d&{g7aqUj5VC<6T{Q)cJyyYfk{YK#DuX$%r zjYZ9`{FG(1ckpaB({5<3tEQ&rS~X{WCYg-RJEz8LwRcWg zqCJz%cC;I;b#7{ERjVfEqsipVyu%v6r{)?W1UwlH{XZO!8L%kZLc$2%2r0l&7j&qg zk5N=b{1Q6le@Kp)m;^^i#M0mhfdp}YK#Vv*AeulB91!)oN1x*(}_0w7>ri z02#ym0IK)*j|!@j{n20w?hJ$R&=;XPbSO9>P@+#@X=zRpXlaR#kBp4;_xFoTcXv14 zs1R5sK^#p!LCpT(gJZ{F*~!~(+p^_Yf1`2v@@285910o|kz*n|}Ld_M7Hdl~q;>Vl#^}qy$?%YY2tLxC)OZPd?#VgPa)JTh^w#yQ|gv zw{)*@OjEd!!0*&0IXlXK39J8%{QSt zR0-0k0x0{U{6}E{jw~XbW@*1)jG*6#U?HMDBK}^8*TgY#bwo@yaQxXtw|oTmv2JVF zy+%(rJZbVe&hW5qbnp=6&VbC0oj)az2tE=C@Rkt!>CTxme=#3fPSO7B7q1;Vvn!+1 zot_|)xLbmcDTxNDLf(i9wAC5gS`p++0IQ!x1 z_WYZV{F69#=X$Vvnw;ig@2RK7zHOgxQP_h5hws+eKYviT_NhPq&r7F%*O(QH_EmBE zhid-=>swk8J-*YSpT1}aF8C4o?kCJ2`=vPWKppHx`;~6G6$&xvhl=qEm6Ur0A%GSt zN4SkT)tMTKNSxMAfUm^O$yte4({b`r0&-FU?&lM;vq)qmG;pa)#HIG>L&OQ_wl;O*xpZ4wL`!D2kF&6$Pvcf67L;=< z6+Dh-yatUClX@hi9XNol+U=`u3JnhrXA&pQ%UvcZX^hSBD_6!V@1S9j)5TBMyDMOw zvF)MUzN^1!YirZ=o=uPL->=)fqf;+G`!qdGpC6r^bnv+Grw{b>6k%}yOXO%Vk`Mnn0=oDS6#TR!Q$E^j_)k;>d?|i5MQXEcV2%_Ktf$c?1H}&5{d9 zT%h@&4sry<2tk9fsu)LpG6E!1W>uJ;Sg49Omw<;&X)Vp6atcih@Fpo-nq`d}PwXr2 z!ZZoHnh>y}k^nv@!N-I^da-h#HcRQnrBXKTchc84Zr>ZOqsw?x8OvdY!T$t9&lixBynhGI;bV!tc90z_9B~M{@IRR zLFqn0KmiQquL1&`5c&l;t5|k+;>@K0*YKYJpOS#2xj~{ZUN`9%jOXDouY6;JWB{(g z0676mc>n#=LY$sF^TjW!U%WdM)h8#VlTZ2ux-KF zFH5ON_C^`wgm^<*Z=hLXCh2d&m*|L1n^5%|38gl=)f0>|`~fi3vFLy6sB->Ld3jH; zJrX{7_uUV0){4*Hd+%-RtMG8?=RQ%%jhF=$st3@F>7POUGXRYgV+g39%Rw~x(xqi1 zLREt7lcPBAee%gC0~}Qe0p8>%2~ry-2bz&XFt`^t0JKp?Wmkiey(RbwF#$JVovZ^{ zH7y3cg7%Z(1_teTNIMeXgwQX*8Q#Q_YrB@+)|wn4Zr3$J^&9YB#2NYp>u0^&dD(C9 zNlFG-R=_|`z!DB0z9_`SM%R1qRp0wkI%78)fqyz9Xgqm(E)mi_FU4x5C>GaKBg93w;vDDQ=_#Xl<^jw%w>1yoO3#L zjcO^(qfuDM4JDXMAVK}OVKSW%CM?;pVs4><3R`q<))Djl(Ly}@FftYZr-sA$5kes6 t(#N+E9orUM+k%qh_!O`cCr;3mRnqE(I3dXXC6MeAe6g=jYc?zF{{UCDA5{PV delta 9 QcmbPmfU%*0aiM?%021c|L;wH) diff --git a/_wip/Wild Gunman (U)/OVERVIEW.md b/_wip/Wild Gunman (U)/OVERVIEW.md deleted file mode 100644 index d8d8faf..0000000 --- a/_wip/Wild Gunman (U)/OVERVIEW.md +++ /dev/null @@ -1,53 +0,0 @@ -# Wild Gunman (U) — Skeleton Project - -ROM: `_wip/Wild Gunman (U)/Wild Gunman (U) [!].nes` (24,592 bytes, iNES). Status: **SKELETON — not yet disassembled.** The entire 16 KB PRG bank is a single unclassified block; `copilot/prg.s` is the default-project skeleton (`default_project.tar.gz`) that reproduces it as one `.incbin`. The skeleton build is **byte-identical** at the PRG level. - - -## ROM Facts - -| Property | Value | -|----------|-------| -| Mapper | 0 (NROM) — from the iNES header | -| PRG | 16 KB (header claims map at CPU $C000–$FFFF) | -| CHR | 8 KB | -| Mirroring | Horizontal | -| Battery-backed flag | clear | -| ROM SHA-256 | `bee7de2cad3133ee6414423e904597154e70e85340fcce5c0829e78c996d84fc` | -| PRG SHA-256 | `1d22036e41b62ec7645bcbab7604034449988193ef7ddcd59c168bc39b417690` | - -## Interrupt Vectors (taken from PRG $3FFA–$3FFF) - -| Vector | Target | Note | -|--------|--------|------| -| NMI | `$C086` | per-frame heartbeat | -| RESET | `$C000` | cold start at $C000 — the usual pattern in this repo | -| IRQ | `$C000` | redirects to RESET — unused placeholder | - -## `copilot/` Contents - -| File | Purpose | -|------|---------| -| `Wild Gunman (U) [!].nes` | original ROM image (reference) | -| `prg.bin` / `header.bin` / `chr.bin` | split image, produced by `_tools/splitnes.py` | -| `prg.s` | Pass-1 skeleton: `.incbin "prg.bin", $0000, $4000` (whole PRG) | -| `symbols.inc` | shared NES hardware constants (PPU/APU/controller, from the skeleton) | -| `locals.inc` | project-local zero-page aliases — empty for now (filled in Pass 2) | -| `linker.cfg` | PRG at $C000, 16 KB, `fill = yes` | -| `Makefile` | links `reconstructed_prg.bin` and `cmp`s it against `prg.bin` | -| `reconstructed_prg.bin` | build output from the last verified build | - -Header/CHR are reproduced verbatim from `header.bin`/`chr.bin` (not linked): `make` verifies **PRG bytes only** at this stage, which is exactly what a skeleton proves. When this project is promoted to a full disassembly, `header.s` / `chr.s` (as e.g. `Burger Time (U)`) and a full-ROM `make` target get added. - -## Build - -```bash -cd "_wip/Wild Gunman (U)/copilot" -make # → cmp reconstructed_prg.bin prg.bin → "BYTE-IDENTICAL" -``` - -## Next Steps (per `PROMPTS.md`) - -1. **Pass 1** — replace the blanket `.incbin` with classified code/data: trace reachability from RESET ($C000) and NMI ($C086), emit per-instruction `; PRG:$xxxx AA BB` annotations, keep unreached bytes as explicit `.byte` blocks. -2. **Pass 2** — replace `Label_`/`Sub_` names with semantic routine names; fill `locals.inc`. -3. **Pass 3** — name data tables/structures; release provisional flags. -4. **Promotion** — move to a top-level `/copilot/` folder, add full-ROM build (header.s + chr.s + vectors), and write the power-on flow `OVERVIEW.md` in the established style; then it joins the root index's numbered inventory. diff --git a/_wip/Wild Gunman (U)/copilot/Makefile b/_wip/Wild Gunman (U)/copilot/Makefile deleted file mode 100644 index 3f9ba6f..0000000 --- a/_wip/Wild Gunman (U)/copilot/Makefile +++ /dev/null @@ -1,10 +0,0 @@ -all: reconstructed_prg.bin verify -prg.o: prg.s symbols.inc prg.bin - ca65 -g -o $@ prg.s -reconstructed_prg.bin: prg.o linker.cfg - ld65 -C linker.cfg -m reconstructed.map -Ln reconstructed.lbl -o $@ prg.o -verify: reconstructed_prg.bin prg.bin - cmp reconstructed_prg.bin prg.bin - @echo BYTE-IDENTICAL -clean: - rm -f prg.o reconstructed_prg.bin reconstructed.map reconstructed.lbl diff --git a/_wip/Wild Gunman (U)/copilot/linker.cfg b/_wip/Wild Gunman (U)/copilot/linker.cfg deleted file mode 100644 index d9d421d..0000000 --- a/_wip/Wild Gunman (U)/copilot/linker.cfg +++ /dev/null @@ -1,6 +0,0 @@ -MEMORY { - PRG: start = $C000, size = $4000, file = %O, fill = yes; -} -SEGMENTS { - PRG: load = PRG, type = ro; -} diff --git a/_wip/Wild Gunman (U)/copilot/locals.inc b/_wip/Wild Gunman (U)/copilot/locals.inc deleted file mode 100644 index 65e6598..0000000 --- a/_wip/Wild Gunman (U)/copilot/locals.inc +++ /dev/null @@ -1,2 +0,0 @@ -; Wild Gunman (U) zero-page aliases (declared during Pass 2). -; These intentionally conservative names will be refined in Passes 2 and 3. diff --git a/_wip/Wild Gunman (U)/copilot/prg.s b/_wip/Wild Gunman (U)/copilot/prg.s deleted file mode 100644 index e6aba71..0000000 --- a/_wip/Wild Gunman (U)/copilot/prg.s +++ /dev/null @@ -1,12 +0,0 @@ -; Wild Gunman (U) NES disassembly - Pass 1 (skeleton) -; Generated from the supplied 16 KiB PRG image. -; Pass 1 classifies recursively reachable code, inline address tables, vectors, -; and untraced/data regions. All PRG data bytes are emitted explicitly with .byte directives. - -.setcpu "6502" - -.include "symbols.inc" -.include "locals.inc" - -.segment "PRG" -.incbin "prg.bin", $0000, $4000 diff --git a/_wip/Wild Gunman (U)/copilot/reconstructed.lbl b/_wip/Wild Gunman (U)/copilot/reconstructed.lbl deleted file mode 100644 index e69de29..0000000