Files
disasm/NROM/Elevator Action (U)/prg.s
T
tmerritt 0a49ee6da7 Pass 2 _wip: Slalom (U), Kung Fu (U), Othello (U) label replacement complete
Pass 3 _wip: Slalom (U), Kung Fu (U), Othello (U) semantic naming complete
Pass 3 _wip: apply symbols (0 residue) for Slalom (U), Kung Fu (U), Othello (U)
Pass 2/3 _wip: 10 NROM projects (Elevator Action, 1942, Tag Team Wrestling, Galaga, Kung Fu a1, Stack-Up, Magmax, Ms Pac-Man Namco, Soccer, Sqoon)
Promote 13 _wip/NROM projects to NROM/ (Slalom, Kung Fu, Othello, Elevator Action, 1942, Tag Team Wrestling, Galaga, Kung Fu a1, Stack-Up, Magmax, Ms Pac-Man Namco, Soccer, Sqoon)
Pass 2/3 _wip: 5 CNROM games (Tiger-Heli, Paperboy, Last Starfighter, Mighty Bomb Jack, Kung-Fu Heroes)
Docs: document CDL capture + re-trace workflow in TODO.md
Adds more code for
 - Elevator Action (U)
 - Kung Fu (U)
 - Othello (U)
 - Slalom (U)
 - Sqoon (U)
2026-10-21 14:42:00 -04:00

20418 lines
1.2 MiB
Plaintext

; Elevator Action (U) NES disassembly - Pass 1
; Byte-oriented ca65 source generated from the supplied PRG image.
; Recursively reachable instructions are emitted explicitly with address/byte comments.
; Unreached bytes remain explicit .byte blocks; no ROM byte is deleted or reformatted.
; Pass 2 replaces address-derived labels, RAM aliases, and table names while
; preserving byte identity.
;
; Vectors: NMI=$8081 RESET=$8000 IRQ=$8000
; PRG mapped at $8000-$FFFF (NROM, mirrored to the upper half)
;
; Pass 1 trace provenance (the audit trail behind every classification below):
; 3 further routine entries recovered from table references elsewhere in the image:
; $B50D, $B58D, $B591
; entries seeded by hand after inspecting code-shaped but unreferenced blocks:
; $8000, $8027, $819C, $82F0, $844F, $85BD, $85D5, $8602, $973E, $9891, $98D3, $992F, $9956, $998C, $99B1, $99BA, $99DF, $9A84, $9BB9, $9BD6, $9C03, $9C0B, $9C29, $9C42, $9C8E, $9D62, $9E7E, $9F27, $A0E5, $A14F, $A17D, $A1B9, $A1E7, $A228, $A250, $A286, $A30F, $A3E3, $A46F, $A487, $A52A, $A5E9, $A682, $A690, $A749, $BB2B, $BB77, $BBB6, $BCAB, $BD88, $BDCA, $BE56, $BEB7, $BEF2, $BFF0, $BFFC, $C0BE, $C0F9, $C125, $C1D5, $C20F, $C21E, $C22D, $C251, $C293, $C2C3, $C321, $C339, $C3BF, $C838, $C94C, $CA7F, $CAF1, $CB1D, $CB33, $CC41, $CC55, $CD66, $CD84, $CDAB, $D09C, $D0EE, $D2B6, $D2EC, $D38E, $D3C8, $D3E3, $D50A, $D514, $D528, $D59A, $D617, $D73E, $D765, $D78F, $D7A5, $D982, $D997, $D9DA, $D9E5, $D9ED, $DA06, $DA37, $DA70, $DA9C, $DB02, $DB0A, $DB36, $DB4B, $DB5E, $DC49, $DC54, $DC8E, $DD55, $DD5D, $DD6A, $DD96, $DD9E, $DDA9, $DE24, $DE2D, $DE53, $DE64, $DE7B, $DE8B, $DECC, $DEE9, $DEF4, $DF04, $DF3B, $DF5B, $DF66, $DF76, $DF92, $DFA3, $DFBC, $DFCC, $E051, $E06C, $E095, $E0B5, $E291, $E2A3, $E2C8, $E2D2, $E3CB, $E79E, $E7CD, $E852, $E8BC, $E977, $E98A, $E9DB, $E9E3, $E9EE, $E9F6, $EA0F, $EA31, $EA3C, $EA44, $EA4F, $EAE5, $EB17, $EB49, $EBC7, $EBD2, $EBE0, $EBFB, $EC03, $EC11, $EC2F, $EC47, $EC58, $EC62, $EC6A, $EC72, $EC80, $EC88, $ECB6, $ECD3, $EDF0, $EE10, $EE39, $EE79, $EE93, $EF4C, $EFAD, $EFFF, $F02D, $F06A, $F0CE, $F0DA, $F0E7, $F0FB, $F155, $F4DB, $F599, $F5A6, $F64E, $F704, $F7C8, $F89B, $F976, $F9C3
; indirect dispatch through zero page (not followed statically):
; jmp ($00B5) at $F953
;
.setcpu "6502"
.include "symbols.inc"
.include "locals.inc"
.segment "PRG"
; -----------------------------------------------------------------------------
; Routine: Reset
; Global: Routine Reset.
; Local: Part of the routine it belongs to.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Reset:
sei ; CPU:$8000 PRG:0000 78
cld ; CPU:$8001 PRG:0001 D8
ldx #$FF ; CPU:$8002 PRG:0002 A2 FF
txs ; CPU:$8004 PRG:0004 9A
lda #$10 ; CPU:$8005 PRG:0005 A9 10
sta PPUCTRL ; CPU:$8007 PRG:0007 8D 00 20
; -----------------------------------------------------------------------------
; Routine: Reset_OnNonnegative
; Global: Branch target inside Label: taken when 800A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Reset_OnNonnegative:
lda PPUSTATUS ; CPU:$800A PRG:000A AD 02 20
bpl Reset_OnNonnegative ; CPU:$800D PRG:000D 10 FB
lda #$FF ; CPU:$800F PRG:000F A9 FF
ldy #$24 ; CPU:$8011 PRG:0011 A0 24
; -----------------------------------------------------------------------------
; Routine: Reset_OnNonnegative2
; Global: Branch target inside Label: taken when 8013.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Reset_OnNonnegative2:
sta $0200,y ; CPU:$8013 PRG:0013 99 00 02
dey ; CPU:$8016 PRG:0016 88
bpl Reset_OnNonnegative2 ; CPU:$8017 PRG:0017 10 FA
lda $06E3 ; CPU:$8019 PRG:0019 AD E3 06
cmp #$8D ; CPU:$801C PRG:001C C9 8D
bne Reset_Loop ; CPU:$801E PRG:001E D0 07
lda $06E4 ; CPU:$8020 PRG:0020 AD E4 06
cmp #$AB ; CPU:$8023 PRG:0023 C9 AB
beq Reset_Loop2 ; CPU:$8025 PRG:0025 F0 2C
; -----------------------------------------------------------------------------
; Routine: Reset_Loop
; Global: Branch target inside Label: taken when 8027.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Reset_Loop:
ldy #$00 ; CPU:$8027 PRG:0027 A0 00
lda #$03 ; CPU:$8029 PRG:0029 A9 03
sta Zp74 ; CPU:$802B PRG:002B 85 74
lda #$00 ; CPU:$802D PRG:002D A9 00
sta Zp73 ; CPU:$802F PRG:002F 85 73
; -----------------------------------------------------------------------------
; Routine: Reset_OnNonzero
; Global: Branch target inside Label: taken when 8031.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Reset_OnNonzero:
sta (Zp73),y ; CPU:$8031 PRG:0031 91 73
iny ; CPU:$8033 PRG:0033 C8
bne Reset_OnNonzero ; CPU:$8034 PRG:0034 D0 FB
inc Zp74 ; CPU:$8036 PRG:0036 E6 74
ldx Zp74 ; CPU:$8038 PRG:0038 A6 74
cpx #$08 ; CPU:$803A PRG:003A E0 08
bne Reset_OnNonzero ; CPU:$803C PRG:003C D0 F3
lda #$8D ; CPU:$803E PRG:003E A9 8D
sta $06E3 ; CPU:$8040 PRG:0040 8D E3 06
lda #$AB ; CPU:$8043 PRG:0043 A9 AB
sta $06E4 ; CPU:$8045 PRG:0045 8D E4 06
sta $068C ; CPU:$8048 PRG:0048 8D 8C 06
lda #$01 ; CPU:$804B PRG:004B A9 01
sta $0582 ; CPU:$804D PRG:004D 8D 82 05
sta $0572 ; CPU:$8050 PRG:0050 8D 72 05
; -----------------------------------------------------------------------------
; Routine: Reset_Loop2
; Global: Branch target inside Label: taken when 8053.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Reset_Loop2:
lda #$00 ; CPU:$8053 PRG:0053 A9 00
ldx #$00 ; CPU:$8055 PRG:0055 A2 00
; -----------------------------------------------------------------------------
; Routine: Reset_OnNonzero2
; Global: Branch target inside Label: taken when 8057.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Reset_OnNonzero2:
sta Zp00,x ; CPU:$8057 PRG:0057 95 00
inx ; CPU:$8059 PRG:0059 E8
bne Reset_OnNonzero2 ; CPU:$805A PRG:005A D0 FB
lda #$06 ; CPU:$805C PRG:005C A9 06
sta PPUMASK ; CPU:$805E PRG:005E 8D 01 20
lda #$1E ; CPU:$8061 PRG:0061 A9 1E
sta Zp89 ; CPU:$8063 PRG:0063 85 89
lda #$10 ; CPU:$8065 PRG:0065 A9 10
sta PPUCTRL ; CPU:$8067 PRG:0067 8D 00 20
sta Zp88 ; CPU:$806A PRG:006A 85 88
lda #$0F ; CPU:$806C PRG:006C A9 0F
sta APUSTATUS ; CPU:$806E PRG:006E 8D 15 40
lda #$34 ; CPU:$8071 PRG:0071 A9 34
jsr Sub_8224 ; CPU:$8073 PRG:0073 20 24 82
lda #$02 ; CPU:$8076 PRG:0076 A9 02
jsr Sub_8224 ; CPU:$8078 PRG:0078 20 24 82
jsr Sub_F64E ; CPU:$807B PRG:007B 20 4E F6
jmp Sub_82F0 ; CPU:$807E PRG:007E 4C F0 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler
; Global: Routine NmiHandler.
; Local: Part of the routine it belongs to.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler:
sta Zp9A ; CPU:$8081 PRG:0081 85 9A
stx Zp9B ; CPU:$8083 PRG:0083 86 9B
sty Zp9C ; CPU:$8085 PRG:0085 84 9C
lda ZpFA ; CPU:$8087 PRG:0087 A5 FA
beq NmiHandler_Loop ; CPU:$8089 PRG:0089 F0 03
jmp Sub_81D6 ; CPU:$808B PRG:008B 4C D6 81
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop
; Global: Branch target inside Label: taken when 808E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop:
lda Zp88 ; CPU:$808E PRG:008E A5 88
and #$7F ; CPU:$8090 PRG:0090 29 7F
sta PPUCTRL ; CPU:$8092 PRG:0092 8D 00 20
sta Zp88 ; CPU:$8095 PRG:0095 85 88
lda #$00 ; CPU:$8097 PRG:0097 A9 00
sta OAMADDR ; CPU:$8099 PRG:0099 8D 03 20
lda #$02 ; CPU:$809C PRG:009C A9 02
sta OAMDMA ; CPU:$809E PRG:009E 8D 14 40
lda #$00 ; CPU:$80A1 PRG:00A1 A9 00
sta PPUMASK ; CPU:$80A3 PRG:00A3 8D 01 20
lda $0674 ; CPU:$80A6 PRG:00A6 AD 74 06
beq NmiHandler_Loop3 ; CPU:$80A9 PRG:00A9 F0 46
ldx #$00 ; CPU:$80AB PRG:00AB A2 00
; -----------------------------------------------------------------------------
; Routine: Sub_80AD
; Global: Branch target inside Label: taken when 80AD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_80AD:
lda $0675,x ; CPU:$80AD PRG:00AD BD 75 06
beq NmiHandler_Loop2 ; CPU:$80B0 PRG:00B0 F0 2C
sta Zp85 ; CPU:$80B2 PRG:00B2 85 85
inx ; CPU:$80B4 PRG:00B4 E8
lda $0675,x ; CPU:$80B5 PRG:00B5 BD 75 06
sta Zp82 ; CPU:$80B8 PRG:00B8 85 82
inx ; CPU:$80BA PRG:00BA E8
lda $0675,x ; CPU:$80BB PRG:00BB BD 75 06
sta Zp83 ; CPU:$80BE PRG:00BE 85 83
inx ; CPU:$80C0 PRG:00C0 E8
lda $0675,x ; CPU:$80C1 PRG:00C1 BD 75 06
sta PPUADDR ; CPU:$80C4 PRG:00C4 8D 06 20
inx ; CPU:$80C7 PRG:00C7 E8
lda $0675,x ; CPU:$80C8 PRG:00C8 BD 75 06
sta PPUADDR ; CPU:$80CB PRG:00CB 8D 06 20
ldy #$00 ; CPU:$80CE PRG:00CE A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero
; Global: Branch target inside Label: taken when 80D0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero:
lda (Zp82),y ; CPU:$80D0 PRG:00D0 B1 82
sta PPUDATA ; CPU:$80D2 PRG:00D2 8D 07 20
iny ; CPU:$80D5 PRG:00D5 C8
cpy Zp85 ; CPU:$80D6 PRG:00D6 C4 85
bne NmiHandler_OnNonzero ; CPU:$80D8 PRG:00D8 D0 F6
inx ; CPU:$80DA PRG:00DA E8
jmp Sub_80AD ; CPU:$80DB PRG:00DB 4C AD 80
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop2
; Global: Branch target inside Label: taken when 80DE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop2:
lda #$0B ; CPU:$80DE PRG:00DE A9 0B
stx Zp83 ; CPU:$80E0 PRG:00E0 86 83
lsr Zp83 ; CPU:$80E2 PRG:00E2 46 83
sec ; CPU:$80E4 PRG:00E4 38
sbc Zp83 ; CPU:$80E5 PRG:00E5 E5 83
sta Zp81 ; CPU:$80E7 PRG:00E7 85 81
lda #$00 ; CPU:$80E9 PRG:00E9 A9 00
sta $0674 ; CPU:$80EB PRG:00EB 8D 74 06
jmp Sub_80F5 ; CPU:$80EE PRG:00EE 4C F5 80
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop3
; Global: Branch target inside Label: taken when 80F1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop3:
lda #$11 ; CPU:$80F1 PRG:00F1 A9 11
sta Zp81 ; CPU:$80F3 PRG:00F3 85 81
; -----------------------------------------------------------------------------
; Routine: Sub_80F5
; Global: Branch target inside Label: taken when 80F5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_80F5:
ldx Zp80 ; CPU:$80F5 PRG:00F5 A6 80
; -----------------------------------------------------------------------------
; Routine: Sub_80F7
; Global: Branch target inside Label: taken when 80F7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_80F7:
lda $0700,x ; CPU:$80F7 PRG:00F7 BD 00 07
beq NmiHandler_Loop4 ; CPU:$80FA PRG:00FA F0 2E
lda $0700,x ; CPU:$80FC PRG:00FC BD 00 07
sta Zp83 ; CPU:$80FF PRG:00FF 85 83
inx ; CPU:$8101 PRG:0101 E8
lda $0700,x ; CPU:$8102 PRG:0102 BD 00 07
sta Zp82 ; CPU:$8105 PRG:0105 85 82
inx ; CPU:$8107 PRG:0107 E8
lda PPUSTATUS ; CPU:$8108 PRG:0108 AD 02 20
lda $0700,x ; CPU:$810B PRG:010B BD 00 07
sta PPUADDR ; CPU:$810E PRG:010E 8D 06 20
inx ; CPU:$8111 PRG:0111 E8
lda $0700,x ; CPU:$8112 PRG:0112 BD 00 07
sta PPUADDR ; CPU:$8115 PRG:0115 8D 06 20
ldy #$02 ; CPU:$8118 PRG:0118 A0 02
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative
; Global: Branch target inside Label: taken when 811A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative:
lda (Zp82),y ; CPU:$811A PRG:011A B1 82
sta PPUDATA ; CPU:$811C PRG:011C 8D 07 20
dey ; CPU:$811F PRG:011F 88
bpl NmiHandler_OnNonnegative ; CPU:$8120 PRG:0120 10 F8
inx ; CPU:$8122 PRG:0122 E8
dec Zp81 ; CPU:$8123 PRG:0123 C6 81
beq NmiHandler_Loop4 ; CPU:$8125 PRG:0125 F0 03
jmp Sub_80F7 ; CPU:$8127 PRG:0127 4C F7 80
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop4
; Global: Branch target inside Label: taken when 812A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop4:
stx Zp80 ; CPU:$812A PRG:012A 86 80
lda Zp8E ; CPU:$812C PRG:012C A5 8E
sta PPUSCROLL ; CPU:$812E PRG:012E 8D 05 20
lda Zp8F ; CPU:$8131 PRG:0131 A5 8F
sta PPUSCROLL ; CPU:$8133 PRG:0133 8D 05 20
lda Zp88 ; CPU:$8136 PRG:0136 A5 88
sta PPUCTRL ; CPU:$8138 PRG:0138 8D 00 20
lda Zp89 ; CPU:$813B PRG:013B A5 89
sta PPUMASK ; CPU:$813D PRG:013D 8D 01 20
tsx ; CPU:$8140 PRG:0140 BA
stx Zp9D ; CPU:$8141 PRG:0141 86 9D
ldx #$EF ; CPU:$8143 PRG:0143 A2 EF
txs ; CPU:$8145 PRG:0145 9A
jsr Sub_81DD ; CPU:$8146 PRG:0146 20 DD 81
jsr Sub_F75E ; CPU:$8149 PRG:0149 20 5E F7
inc Zp6E ; CPU:$814C PRG:014C E6 6E
ldx #$00 ; CPU:$814E PRG:014E A2 00
lda #$C0 ; CPU:$8150 PRG:0150 A9 C0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero2
; Global: Branch target inside Label: taken when 8152.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero2:
inx ; CPU:$8152 PRG:0152 E8
inx ; CPU:$8153 PRG:0153 E8
lda #$C0 ; CPU:$8154 PRG:0154 A9 C0
cmp Zp02,x ; CPU:$8156 PRG:0156 D5 02
bne NmiHandler_Loop5 ; CPU:$8158 PRG:0158 D0 15
sec ; CPU:$815A PRG:015A 38
lda Zp38,x ; CPU:$815B PRG:015B B5 38
sbc #$01 ; CPU:$815D PRG:015D E9 01
sta Zp38,x ; CPU:$815F PRG:015F 95 38
lda Zp39,x ; CPU:$8161 PRG:0161 B5 39
sbc #$00 ; CPU:$8163 PRG:0163 E9 00
sta Zp39,x ; CPU:$8165 PRG:0165 95 39
bcs NmiHandler_Loop5 ; CPU:$8167 PRG:0167 B0 06
lda Zp02,x ; CPU:$8169 PRG:0169 B5 02
and #$BF ; CPU:$816B PRG:016B 29 BF
sta Zp02,x ; CPU:$816D PRG:016D 95 02
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop5
; Global: Branch target inside Label: taken when 816F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop5:
cpx #$36 ; CPU:$816F PRG:016F E0 36
bne NmiHandler_OnNonzero2 ; CPU:$8171 PRG:0171 D0 DF
lda #$00 ; CPU:$8173 PRG:0173 A9 00
sta $0672 ; CPU:$8175 PRG:0175 8D 72 06
ldx Zp9D ; CPU:$8178 PRG:0178 A6 9D
txs ; CPU:$817A PRG:017A 9A
lda $057F ; CPU:$817B PRG:017B AD 7F 05
beq NmiHandler_Loop7 ; CPU:$817E PRG:017E F0 31
inc Zp9E ; CPU:$8180 PRG:0180 E6 9E
lda Zp9E ; CPU:$8182 PRG:0182 A5 9E
and #$3F ; CPU:$8184 PRG:0184 29 3F
bne NmiHandler_Loop8 ; CPU:$8186 PRG:0186 D0 33
lda Zp9E ; CPU:$8188 PRG:0188 A5 9E
and #$40 ; CPU:$818A PRG:018A 29 40
beq NmiHandler_Loop7 ; CPU:$818C PRG:018C F0 23
lda $0587 ; CPU:$818E PRG:018E AD 87 05
beq NmiHandler_Loop6 ; CPU:$8191 PRG:0191 F0 09
lda #$43 ; CPU:$8193 PRG:0193 A9 43
sta Zp82 ; CPU:$8195 PRG:0195 85 82
lda #$84 ; CPU:$8197 PRG:0197 A9 84
jmp Sub_81A2 ; CPU:$8199 PRG:0199 4C A2 81
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop6
; Global: Branch target inside Label: taken when 819C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop6:
lda #$37 ; CPU:$819C PRG:019C A9 37
sta Zp82 ; CPU:$819E PRG:019E 85 82
lda #$84 ; CPU:$81A0 PRG:01A0 A9 84
; -----------------------------------------------------------------------------
; Routine: Sub_81A2
; Global: Branch target inside Label: taken when 81A2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_81A2:
sta Zp83 ; CPU:$81A2 PRG:01A2 85 83
ldy #$0B ; CPU:$81A4 PRG:01A4 A0 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative2
; Global: Branch target inside Label: taken when 81A6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative2:
lda (Zp82),y ; CPU:$81A6 PRG:01A6 B1 82
sta $0200,y ; CPU:$81A8 PRG:01A8 99 00 02
dey ; CPU:$81AB PRG:01AB 88
bpl NmiHandler_OnNonnegative2 ; CPU:$81AC PRG:01AC 10 F8
jmp NmiHandler_Loop8 ; CPU:$81AE PRG:01AE 4C BB 81
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop7
; Global: Branch target inside Label: taken when 81B1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop7:
lda #$FF ; CPU:$81B1 PRG:01B1 A9 FF
ldy #$0B ; CPU:$81B3 PRG:01B3 A0 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative3
; Global: Branch target inside Label: taken when 81B5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative3:
sta $0200,y ; CPU:$81B5 PRG:01B5 99 00 02
dey ; CPU:$81B8 PRG:01B8 88
bpl NmiHandler_OnNonnegative3 ; CPU:$81B9 PRG:01B9 10 FA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop8
; Global: Branch target inside Label: taken when 81BB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop8:
lda $0683 ; CPU:$81BB PRG:01BB AD 83 06
bne NmiHandler_Loop9 ; CPU:$81BE PRG:01BE D0 0D
lda ZpF6 ; CPU:$81C0 PRG:01C0 A5 F6
clc ; CPU:$81C2 PRG:01C2 18
adc #$01 ; CPU:$81C3 PRG:01C3 69 01
sta ZpF6 ; CPU:$81C5 PRG:01C5 85 F6
lda ZpF7 ; CPU:$81C7 PRG:01C7 A5 F7
adc #$00 ; CPU:$81C9 PRG:01C9 69 00
sta ZpF7 ; CPU:$81CB PRG:01CB 85 F7
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop9
; Global: Branch target inside Label: taken when 81CD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop9:
lda Zp88 ; CPU:$81CD PRG:01CD A5 88
ora #$80 ; CPU:$81CF PRG:01CF 09 80
sta Zp88 ; CPU:$81D1 PRG:01D1 85 88
sta PPUCTRL ; CPU:$81D3 PRG:01D3 8D 00 20
; -----------------------------------------------------------------------------
; Routine: Sub_81D6
; Global: Branch target inside Label: taken when 81D6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_81D6:
ldy Zp9C ; CPU:$81D6 PRG:01D6 A4 9C
ldx Zp9B ; CPU:$81D8 PRG:01D8 A6 9B
lda Zp9A ; CPU:$81DA PRG:01DA A5 9A
rti ; CPU:$81DC PRG:01DC 40
; -----------------------------------------------------------------------------
; Routine: Sub_81DD
; Global: Branch target inside Label: taken when 81DD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_81DD:
lda #$01 ; CPU:$81DD PRG:01DD A9 01
sta JOY1 ; CPU:$81DF PRG:01DF 8D 16 40
lda #$00 ; CPU:$81E2 PRG:01E2 A9 00
sta JOY1 ; CPU:$81E4 PRG:01E4 8D 16 40
sta Zp94 ; CPU:$81E7 PRG:01E7 85 94
ldx #$00 ; CPU:$81E9 PRG:01E9 A2 00
jsr Sub_81F6 ; CPU:$81EB PRG:01EB 20 F6 81
inx ; CPU:$81EE PRG:01EE E8
lda #$00 ; CPU:$81EF PRG:01EF A9 00
sta Zp94 ; CPU:$81F1 PRG:01F1 85 94
jmp Sub_81F6 ; CPU:$81F3 PRG:01F3 4C F6 81
; -----------------------------------------------------------------------------
; Routine: Sub_81F6
; Global: Branch target inside Label: taken when 81F6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_81F6:
ldy #$08 ; CPU:$81F6 PRG:01F6 A0 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero3
; Global: Branch target inside Label: taken when 81F8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero3:
sta Zp94 ; CPU:$81F8 PRG:01F8 85 94
lda JOY1,x ; CPU:$81FA PRG:01FA BD 16 40
sta Zp95 ; CPU:$81FD PRG:01FD 85 95
lsr a ; CPU:$81FF PRG:01FF 4A
ora Zp95 ; CPU:$8200 PRG:0200 05 95
lsr a ; CPU:$8202 PRG:0202 4A
lda Zp94 ; CPU:$8203 PRG:0203 A5 94
rol a ; CPU:$8205 PRG:0205 2A
dey ; CPU:$8206 PRG:0206 88
bne NmiHandler_OnNonzero3 ; CPU:$8207 PRG:0207 D0 EF
stx Zp95 ; CPU:$8209 PRG:0209 86 95
asl Zp95 ; CPU:$820B PRG:020B 06 95
ldx Zp95 ; CPU:$820D PRG:020D A6 95
ldy Zp96,x ; CPU:$820F PRG:020F B4 96
sty Zp95 ; CPU:$8211 PRG:0211 84 95
sta Zp96,x ; CPU:$8213 PRG:0213 95 96
sta Zp97,x ; CPU:$8215 PRG:0215 95 97
and #$FF ; CPU:$8217 PRG:0217 29 FF
bpl NmiHandler_Loop10 ; CPU:$8219 PRG:0219 10 08
bit Zp95 ; CPU:$821B PRG:021B 24 95
bpl NmiHandler_Loop10 ; CPU:$821D PRG:021D 10 04
and #$7F ; CPU:$821F PRG:021F 29 7F
sta Zp97,x ; CPU:$8221 PRG:0221 95 97
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop10
; Global: Branch target inside Label: taken when 8223.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop10:
rts ; CPU:$8223 PRG:0223 60
; -----------------------------------------------------------------------------
; Routine: Sub_8224
; Global: Branch target inside Label: taken when 8224.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_8224:
php ; CPU:$8224 PRG:0224 08
pha ; CPU:$8225 PRG:0225 48
sta Zp75 ; CPU:$8226 PRG:0226 85 75
txa ; CPU:$8228 PRG:0228 8A
pha ; CPU:$8229 PRG:0229 48
tya ; CPU:$822A PRG:022A 98
pha ; CPU:$822B PRG:022B 48
ldx Zp75 ; CPU:$822C PRG:022C A6 75
lda Zp02,x ; CPU:$822E PRG:022E B5 02
and #$80 ; CPU:$8230 PRG:0230 29 80
bne NmiHandler_Loop11 ; CPU:$8232 PRG:0232 D0 2B
lda Zp02,x ; CPU:$8234 PRG:0234 B5 02
ora #$80 ; CPU:$8236 PRG:0236 09 80
sta Zp02,x ; CPU:$8238 PRG:0238 95 02
lda $83CB,x ; CPU:$823A PRG:023A BD CB 83
sec ; CPU:$823D PRG:023D 38
sbc #$02 ; CPU:$823E PRG:023E E9 02
sta Zp71 ; CPU:$8240 PRG:0240 85 71
lda #$01 ; CPU:$8242 PRG:0242 A9 01
sta Zp72 ; CPU:$8244 PRG:0244 85 72
ldy #$00 ; CPU:$8246 PRG:0246 A0 00
lda #$04 ; CPU:$8248 PRG:0248 A9 04
sta (Zp71),y ; CPU:$824A PRG:024A 91 71
iny ; CPU:$824C PRG:024C C8
lda $8401,x ; CPU:$824D PRG:024D BD 01 84
sta (Zp71),y ; CPU:$8250 PRG:0250 91 71
iny ; CPU:$8252 PRG:0252 C8
lda $8402,x ; CPU:$8253 PRG:0253 BD 02 84
sta (Zp71),y ; CPU:$8256 PRG:0256 91 71
sec ; CPU:$8258 PRG:0258 38
lda Zp71 ; CPU:$8259 PRG:0259 A5 71
sbc #$02 ; CPU:$825B PRG:025B E9 02
sta Zp03,x ; CPU:$825D PRG:025D 95 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop11
; Global: Branch target inside Label: taken when 825F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop11:
pla ; CPU:$825F PRG:025F 68
tay ; CPU:$8260 PRG:0260 A8
pla ; CPU:$8261 PRG:0261 68
tax ; CPU:$8262 PRG:0262 AA
pla ; CPU:$8263 PRG:0263 68
plp ; CPU:$8264 PRG:0264 28
rts ; CPU:$8265 PRG:0265 60
; -----------------------------------------------------------------------------
; Routine: Sub_8266
; Global: Branch target inside Label: taken when 8266.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_8266:
ldx Zp00 ; CPU:$8266 PRG:0266 A6 00
lda #$00 ; CPU:$8268 PRG:0268 A9 00
sta Zp02,x ; CPU:$826A PRG:026A 95 02
jmp Sub_82F0 ; CPU:$826C PRG:026C 4C F0 82
; -----------------------------------------------------------------------------
; Routine: Sub_826F
; Global: Branch target inside Label: taken when 826F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_826F:
php ; CPU:$826F PRG:026F 08
pha ; CPU:$8270 PRG:0270 48
sta Zp75 ; CPU:$8271 PRG:0271 85 75
txa ; CPU:$8273 PRG:0273 8A
pha ; CPU:$8274 PRG:0274 48
tya ; CPU:$8275 PRG:0275 98
pha ; CPU:$8276 PRG:0276 48
ldx Zp75 ; CPU:$8277 PRG:0277 A6 75
lda #$00 ; CPU:$8279 PRG:0279 A9 00
sta Zp02,x ; CPU:$827B PRG:027B 95 02
jmp NmiHandler_Loop11 ; CPU:$827D PRG:027D 4C 5F 82
; -----------------------------------------------------------------------------
; Routine: Sub_8280
; Global: Branch target inside Label: taken when 8280.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_8280:
php ; CPU:$8280 PRG:0280 08
pha ; CPU:$8281 PRG:0281 48
txa ; CPU:$8282 PRG:0282 8A
ldx Zp00 ; CPU:$8283 PRG:0283 A6 00
sta $0522,x ; CPU:$8285 PRG:0285 9D 22 05
tya ; CPU:$8288 PRG:0288 98
sta $0523,x ; CPU:$8289 PRG:0289 9D 23 05
tsx ; CPU:$828C PRG:028C BA
txa ; CPU:$828D PRG:028D 8A
ldx Zp00 ; CPU:$828E PRG:028E A6 00
sta Zp03,x ; CPU:$8290 PRG:0290 95 03
lda Zp02,x ; CPU:$8292 PRG:0292 B5 02
ora #$40 ; CPU:$8294 PRG:0294 09 40
sta Zp02,x ; CPU:$8296 PRG:0296 95 02
lda Zp6F ; CPU:$8298 PRG:0298 A5 6F
sta Zp38,x ; CPU:$829A PRG:029A 95 38
lda Zp70 ; CPU:$829C PRG:029C A5 70
sta Zp39,x ; CPU:$829E PRG:029E 95 39
jmp Sub_82F0 ; CPU:$82A0 PRG:02A0 4C F0 82
; -----------------------------------------------------------------------------
; Routine: Sub_82A3
; Global: Branch target inside Label: taken when 82A3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_82A3:
php ; CPU:$82A3 PRG:02A3 08
pha ; CPU:$82A4 PRG:02A4 48
txa ; CPU:$82A5 PRG:02A5 8A
ldx Zp00 ; CPU:$82A6 PRG:02A6 A6 00
sta $0522,x ; CPU:$82A8 PRG:02A8 9D 22 05
tya ; CPU:$82AB PRG:02AB 98
sta $0523,x ; CPU:$82AC PRG:02AC 9D 23 05
tsx ; CPU:$82AF PRG:02AF BA
txa ; CPU:$82B0 PRG:02B0 8A
ldx Zp00 ; CPU:$82B1 PRG:02B1 A6 00
sta Zp03,x ; CPU:$82B3 PRG:02B3 95 03
jmp Sub_82F0 ; CPU:$82B5 PRG:02B5 4C F0 82
; -----------------------------------------------------------------------------
; Routine: Sub_82B8
; Global: Branch target inside Label: taken when 82B8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_82B8:
php ; CPU:$82B8 PRG:02B8 08
pha ; CPU:$82B9 PRG:02B9 48
sta Zp75 ; CPU:$82BA PRG:02BA 85 75
txa ; CPU:$82BC PRG:02BC 8A
pha ; CPU:$82BD PRG:02BD 48
tya ; CPU:$82BE PRG:02BE 98
pha ; CPU:$82BF PRG:02BF 48
ldx Zp75 ; CPU:$82C0 PRG:02C0 A6 75
lda Zp02,x ; CPU:$82C2 PRG:02C2 B5 02
and #$80 ; CPU:$82C4 PRG:02C4 29 80
bne NmiHandler_Loop12 ; CPU:$82C6 PRG:02C6 D0 03
jmp NmiHandler_Loop11 ; CPU:$82C8 PRG:02C8 4C 5F 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop12
; Global: Branch target inside Label: taken when 82CB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop12:
lda Zp02,x ; CPU:$82CB PRG:02CB B5 02
and #$FE ; CPU:$82CD PRG:02CD 29 FE
sta Zp02,x ; CPU:$82CF PRG:02CF 95 02
jmp NmiHandler_Loop11 ; CPU:$82D1 PRG:02D1 4C 5F 82
; -----------------------------------------------------------------------------
; Routine: Sub_82D4
; Global: Branch target inside Label: taken when 82D4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_82D4:
php ; CPU:$82D4 PRG:02D4 08
pha ; CPU:$82D5 PRG:02D5 48
sta Zp75 ; CPU:$82D6 PRG:02D6 85 75
txa ; CPU:$82D8 PRG:02D8 8A
pha ; CPU:$82D9 PRG:02D9 48
tya ; CPU:$82DA PRG:02DA 98
pha ; CPU:$82DB PRG:02DB 48
ldx Zp75 ; CPU:$82DC PRG:02DC A6 75
lda Zp02,x ; CPU:$82DE PRG:02DE B5 02
and #$80 ; CPU:$82E0 PRG:02E0 29 80
bne NmiHandler_Loop13 ; CPU:$82E2 PRG:02E2 D0 03
jmp NmiHandler_Loop11 ; CPU:$82E4 PRG:02E4 4C 5F 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop13
; Global: Branch target inside Label: taken when 82E7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop13:
lda Zp02,x ; CPU:$82E7 PRG:02E7 B5 02
ora #$01 ; CPU:$82E9 PRG:02E9 09 01
sta Zp02,x ; CPU:$82EB PRG:02EB 95 02
jmp NmiHandler_Loop11 ; CPU:$82ED PRG:02ED 4C 5F 82
; -----------------------------------------------------------------------------
; Routine: Sub_82F0
; Global: Branch target inside Label: taken when 82F0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_82F0:
ldx Zp00 ; CPU:$82F0 PRG:02F0 A6 00
cpx #$36 ; CPU:$82F2 PRG:02F2 E0 36
beq NmiHandler_Loop14 ; CPU:$82F4 PRG:02F4 F0 12
lda #$36 ; CPU:$82F6 PRG:02F6 A9 36
sec ; CPU:$82F8 PRG:02F8 38
sbc Zp00 ; CPU:$82F9 PRG:02F9 E5 00
lsr a ; CPU:$82FB PRG:02FB 4A
tay ; CPU:$82FC PRG:02FC A8
lda #$80 ; CPU:$82FD PRG:02FD A9 80
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero4
; Global: Branch target inside Label: taken when 82FF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero4:
inx ; CPU:$82FF PRG:02FF E8
inx ; CPU:$8300 PRG:0300 E8
cmp Zp02,x ; CPU:$8301 PRG:0301 D5 02
beq NmiHandler_Loop16 ; CPU:$8303 PRG:0303 F0 1C
dey ; CPU:$8305 PRG:0305 88
bne NmiHandler_OnNonzero4 ; CPU:$8306 PRG:0306 D0 F7
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop14
; Global: Branch target inside Label: taken when 8308.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop14:
lda #$00 ; CPU:$8308 PRG:0308 A9 00
sta Zp00 ; CPU:$830A PRG:030A 85 00
sta ZpFA ; CPU:$830C PRG:030C 85 FA
ldx #$FF ; CPU:$830E PRG:030E A2 FF
txs ; CPU:$8310 PRG:0310 9A
; -----------------------------------------------------------------------------
; Routine: Sub_8311
; Global: Branch target inside Label: taken when 8311.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_8311:
lda Zp6E ; CPU:$8311 PRG:0311 A5 6E
cmp #$02 ; CPU:$8313 PRG:0313 C9 02
bcs NmiHandler_Loop15 ; CPU:$8315 PRG:0315 B0 03
jmp Sub_8311 ; CPU:$8317 PRG:0317 4C 11 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop15
; Global: Branch target inside Label: taken when 831A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop15:
lda #$00 ; CPU:$831A PRG:031A A9 00
sta Zp6E ; CPU:$831C PRG:031C 85 6E
jmp Sub_82F0 ; CPU:$831E PRG:031E 4C F0 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop16
; Global: Branch target inside Label: taken when 8321.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop16:
stx Zp00 ; CPU:$8321 PRG:0321 86 00
lda Zp03,x ; CPU:$8323 PRG:0323 B5 03
tax ; CPU:$8325 PRG:0325 AA
txs ; CPU:$8326 PRG:0326 9A
ldx Zp00 ; CPU:$8327 PRG:0327 A6 00
lda $0523,x ; CPU:$8329 PRG:0329 BD 23 05
tay ; CPU:$832C PRG:032C A8
lda $0522,x ; CPU:$832D PRG:032D BD 22 05
tax ; CPU:$8330 PRG:0330 AA
pla ; CPU:$8331 PRG:0331 68
plp ; CPU:$8332 PRG:0332 28
rts ; CPU:$8333 PRG:0333 60
; -----------------------------------------------------------------------------
; Routine: Sub_8334
; Global: Branch target inside Label: taken when 8334.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_8334:
ldy #$00 ; CPU:$8334 PRG:0334 A0 00
lda (Zp73),y ; CPU:$8336 PRG:0336 B1 73
sta $0342,x ; CPU:$8338 PRG:0338 9D 42 03
jsr Sub_8610 ; CPU:$833B PRG:033B 20 10 86
lda #$00 ; CPU:$833E PRG:033E A9 00
sta $034F,x ; CPU:$8340 PRG:0340 9D 4F 03
lda Zp73 ; CPU:$8343 PRG:0343 A5 73
sta $035C,x ; CPU:$8345 PRG:0345 9D 5C 03
lda Zp74 ; CPU:$8348 PRG:0348 A5 74
sta $0369,x ; CPU:$834A PRG:034A 9D 69 03
lda Zp73 ; CPU:$834D PRG:034D A5 73
sta $0376,x ; CPU:$834F PRG:034F 9D 76 03
lda Zp74 ; CPU:$8352 PRG:0352 A5 74
sta $0383,x ; CPU:$8354 PRG:0354 9D 83 03
rts ; CPU:$8357 PRG:0357 60
; -----------------------------------------------------------------------------
; Routine: Sub_8358
; Global: Branch target inside Label: taken when 8358.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_8358:
lda $0673 ; CPU:$8358 PRG:0358 AD 73 06
and #$01 ; CPU:$835B PRG:035B 29 01
bne NmiHandler_Loop17 ; CPU:$835D PRG:035D D0 03
jsr Sub_82A3 ; CPU:$835F PRG:035F 20 A3 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop17
; Global: Branch target inside Label: taken when 8362.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop17:
lda $034F,x ; CPU:$8362 PRG:0362 BD 4F 03
beq NmiHandler_Loop19 ; CPU:$8365 PRG:0365 F0 0F
lda $0336,x ; CPU:$8367 PRG:0367 BD 36 03
and #$40 ; CPU:$836A PRG:036A 29 40
bne NmiHandler_Loop18 ; CPU:$836C PRG:036C D0 03
jsr Sub_82A3 ; CPU:$836E PRG:036E 20 A3 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop18
; Global: Branch target inside Label: taken when 8371.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop18:
dec $034F,x ; CPU:$8371 PRG:0371 DE 4F 03
clc ; CPU:$8374 PRG:0374 18
rts ; CPU:$8375 PRG:0375 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop19
; Global: Branch target inside Label: taken when 8376.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop19:
lda $0376,x ; CPU:$8376 PRG:0376 BD 76 03
sta Zp73 ; CPU:$8379 PRG:0379 85 73
lda $0383,x ; CPU:$837B PRG:037B BD 83 03
sta Zp74 ; CPU:$837E PRG:037E 85 74
ldy #$00 ; CPU:$8380 PRG:0380 A0 00
lda (Zp73),y ; CPU:$8382 PRG:0382 B1 73
cmp #$FF ; CPU:$8384 PRG:0384 C9 FF
beq NmiHandler_Loop21 ; CPU:$8386 PRG:0386 F0 26
; -----------------------------------------------------------------------------
; Routine: Sub_8388
; Global: Branch target inside Label: taken when 8388.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_8388:
sta $0314,x ; CPU:$8388 PRG:0388 9D 14 03
jsr Sub_8610 ; CPU:$838B PRG:038B 20 10 86
ldy #$00 ; CPU:$838E PRG:038E A0 00
lda (Zp73),y ; CPU:$8390 PRG:0390 B1 73
sta $034F,x ; CPU:$8392 PRG:0392 9D 4F 03
jsr Sub_8610 ; CPU:$8395 PRG:0395 20 10 86
lda Zp73 ; CPU:$8398 PRG:0398 A5 73
sta $0376,x ; CPU:$839A PRG:039A 9D 76 03
lda Zp74 ; CPU:$839D PRG:039D A5 74
sta $0383,x ; CPU:$839F PRG:039F 9D 83 03
lda $0336,x ; CPU:$83A2 PRG:03A2 BD 36 03
and #$40 ; CPU:$83A5 PRG:03A5 29 40
bne NmiHandler_Loop20 ; CPU:$83A7 PRG:03A7 D0 03
jsr Sub_82A3 ; CPU:$83A9 PRG:03A9 20 A3 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop20
; Global: Branch target inside Label: taken when 83AC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop20:
clc ; CPU:$83AC PRG:03AC 18
rts ; CPU:$83AD PRG:03AD 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop21
; Global: Branch target inside Label: taken when 83AE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop21:
jsr Sub_8610 ; CPU:$83AE PRG:03AE 20 10 86
lda $0342,x ; CPU:$83B1 PRG:03B1 BD 42 03
cmp #$00 ; CPU:$83B4 PRG:03B4 C9 00
beq NmiHandler_Loop22 ; CPU:$83B6 PRG:03B6 F0 02
sec ; CPU:$83B8 PRG:03B8 38
rts ; CPU:$83B9 PRG:03B9 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop22
; Global: Branch target inside Label: taken when 83BA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop22:
lda $035C,x ; CPU:$83BA PRG:03BA BD 5C 03
sta Zp73 ; CPU:$83BD PRG:03BD 85 73
lda $0369,x ; CPU:$83BF PRG:03BF BD 69 03
sta Zp74 ; CPU:$83C2 PRG:03C2 85 74
ldy #$00 ; CPU:$83C4 PRG:03C4 A0 00
lda (Zp73),y ; CPU:$83C6 PRG:03C6 B1 73
jmp Sub_8388 ; CPU:$83C8 PRG:03C8 4C 88 83
; ---- data $83CB-$844E (132 bytes) ----
; referenced by `lda $83CB,x` at $823A (operand $83CB falls inside this region)
; referenced by `lda $8401,x` at $824D (operand $8401 falls inside this region)
; referenced by `lda $8402,x` at $8253 (operand $8402 falls inside this region)
.byte $00, $00, $0F, $00, $1F, $00, $47, $00, $57, $00, $67, $00, $77, $00, $87, $00 ; CPU:$83CB PRG:03CB 00 00 0F 00 1F 00 47 00 57 00 67 00 77 00 87 00
.byte $97, $00, $A7, $00, $B7, $00, $CF, $00, $DF, $00, $47, $00, $57, $00, $67, $00 ; CPU:$83DB PRG:03DB 97 00 A7 00 B7 00 CF 00 DF 00 47 00 57 00 67 00
.byte $77, $00, $87, $00, $97, $00, $A7, $00, $B7, $00, $DF, $00, $57, $00, $57, $00 ; CPU:$83EB PRG:03EB 77 00 87 00 97 00 A7 00 B7 00 DF 00 57 00 57 00
.byte $67, $00, $77, $00, $37, $00, $00, $00, $61, $9D, $2A, $BB, $3D, $D7, $9D, $E7 ; CPU:$83FB PRG:03FB 67 00 77 00 37 00 00 00 61 9D 2A BB 3D D7 9D E7
.byte $A7, $E7, $B1, $E7, $BB, $E7, $29, $D3, $AB, $D4, $B5, $D2, $37, $C8, $99, $D5 ; CPU:$840B PRG:040B A7 E7 B1 E7 BB E7 29 D3 AB D4 B5 D2 37 C8 99 D5
.byte $0D, $E5, $85, $A0, $A8, $A0, $E4, $A0, $12, $A1, $4E, $A1, $7C, $A1, $B8, $A1 ; CPU:$841B PRG:041B 0D E5 85 A0 A8 A0 E4 A0 12 A1 4E A1 7C A1 B8 A1
.byte $E6, $A1, $C2, $CD, $DA, $F4, $56, $F5, $DB, $F5, $4E, $84, $18, $99, $03, $28 ; CPU:$842B PRG:042B E6 A1 C2 CD DA F4 56 F5 DB F5 4E 84 18 99 03 28
.byte $18, $9B, $03, $30, $18, $9C, $03, $38, $18, $9A, $03, $C0, $18, $9B, $03, $C8 ; CPU:$843B PRG:043B 18 9B 03 30 18 9C 03 38 18 9A 03 C0 18 9B 03 C8
.byte $18, $9C, $03, $D0 ; CPU:$844B PRG:044B 18 9C 03 D0
; -----------------------------------------------------------------------------
; Routine: Sub_844F
; Global: Branch target inside Label: taken when 844F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_844F:
lda #$FF ; CPU:$844F PRG:044F A9 FF
sta ZpFA ; CPU:$8451 PRG:0451 85 FA
jsr Sub_A46F ; CPU:$8453 PRG:0453 20 6F A4
lda #$00 ; CPU:$8456 PRG:0456 A9 00
sta ZpFA ; CPU:$8458 PRG:0458 85 FA
ldx #$00 ; CPU:$845A PRG:045A A2 00
ldy #$00 ; CPU:$845C PRG:045C A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero5
; Global: Branch target inside Label: taken when 845E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero5:
lda ZpB7,x ; CPU:$845E PRG:045E B5 B7
bpl NmiHandler_Loop23 ; CPU:$8460 PRG:0460 10 1F
and #$02 ; CPU:$8462 PRG:0462 29 02
bne NmiHandler_Loop23 ; CPU:$8464 PRG:0464 D0 1B
lda $0303,x ; CPU:$8466 PRG:0466 BD 03 03
sta $04DA,y ; CPU:$8469 PRG:0469 99 DA 04
iny ; CPU:$846C PRG:046C C8
lda $0314,x ; CPU:$846D PRG:046D BD 14 03
sta $04DA,y ; CPU:$8470 PRG:0470 99 DA 04
iny ; CPU:$8473 PRG:0473 C8
lda $0325,x ; CPU:$8474 PRG:0474 BD 25 03
sta $04DA,y ; CPU:$8477 PRG:0477 99 DA 04
iny ; CPU:$847A PRG:047A C8
lda ZpC8,x ; CPU:$847B PRG:047B B5 C8
sta $04DA,y ; CPU:$847D PRG:047D 99 DA 04
iny ; CPU:$8480 PRG:0480 C8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop23
; Global: Branch target inside Label: taken when 8481.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop23:
inx ; CPU:$8481 PRG:0481 E8
cpx #$11 ; CPU:$8482 PRG:0482 E0 11
bne NmiHandler_OnNonzero5 ; CPU:$8484 PRG:0484 D0 D8
ldx #$07 ; CPU:$8486 PRG:0486 A2 07
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero6
; Global: Branch target inside Label: taken when 8488.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero6:
lda ZpB7,x ; CPU:$8488 PRG:0488 B5 B7
bpl NmiHandler_Loop24 ; CPU:$848A PRG:048A 10 1F
and #$02 ; CPU:$848C PRG:048C 29 02
beq NmiHandler_Loop24 ; CPU:$848E PRG:048E F0 1B
lda $0303,x ; CPU:$8490 PRG:0490 BD 03 03
sta $04DA,y ; CPU:$8493 PRG:0493 99 DA 04
iny ; CPU:$8496 PRG:0496 C8
lda $0314,x ; CPU:$8497 PRG:0497 BD 14 03
sta $04DA,y ; CPU:$849A PRG:049A 99 DA 04
iny ; CPU:$849D PRG:049D C8
lda $0325,x ; CPU:$849E PRG:049E BD 25 03
sta $04DA,y ; CPU:$84A1 PRG:04A1 99 DA 04
iny ; CPU:$84A4 PRG:04A4 C8
lda ZpC8,x ; CPU:$84A5 PRG:04A5 B5 C8
sta $04DA,y ; CPU:$84A7 PRG:04A7 99 DA 04
iny ; CPU:$84AA PRG:04AA C8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop24
; Global: Branch target inside Label: taken when 84AB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop24:
inx ; CPU:$84AB PRG:04AB E8
cpx #$0C ; CPU:$84AC PRG:04AC E0 0C
bne NmiHandler_OnNonzero6 ; CPU:$84AE PRG:04AE D0 D8
lda #$04 ; CPU:$84B0 PRG:04B0 A9 04
sta Zp70 ; CPU:$84B2 PRG:04B2 85 70
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero7
; Global: Branch target inside Label: taken when 84B4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero7:
lda #$FF ; CPU:$84B4 PRG:04B4 A9 FF
sta $04DA,y ; CPU:$84B6 PRG:04B6 99 DA 04
iny ; CPU:$84B9 PRG:04B9 C8
dec Zp70 ; CPU:$84BA PRG:04BA C6 70
bne NmiHandler_OnNonzero7 ; CPU:$84BC PRG:04BC D0 F6
lda #$DA ; CPU:$84BE PRG:04BE A9 DA
sta Zp76 ; CPU:$84C0 PRG:04C0 85 76
lda #$04 ; CPU:$84C2 PRG:04C2 A9 04
sta Zp77 ; CPU:$84C4 PRG:04C4 85 77
lda #$24 ; CPU:$84C6 PRG:04C6 A9 24
sta Zp78 ; CPU:$84C8 PRG:04C8 85 78
lda #$02 ; CPU:$84CA PRG:04CA A9 02
sta Zp79 ; CPU:$84CC PRG:04CC 85 79
jsr Sub_84F1 ; CPU:$84CE PRG:04CE 20 F1 84
ldy #$00 ; CPU:$84D1 PRG:04D1 A0 00
lda Zp78 ; CPU:$84D3 PRG:04D3 A5 78
sta Zp73 ; CPU:$84D5 PRG:04D5 85 73
lda Zp79 ; CPU:$84D7 PRG:04D7 A5 79
sta Zp74 ; CPU:$84D9 PRG:04D9 85 74
; -----------------------------------------------------------------------------
; Routine: Sub_84DB
; Global: Branch target inside Label: taken when 84DB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_84DB:
lda Zp74 ; CPU:$84DB PRG:04DB A5 74
cmp #$03 ; CPU:$84DD PRG:04DD C9 03
bcs NmiHandler_Loop25 ; CPU:$84DF PRG:04DF B0 0A
lda #$FF ; CPU:$84E1 PRG:04E1 A9 FF
sta (Zp73),y ; CPU:$84E3 PRG:04E3 91 73
jsr Sub_8610 ; CPU:$84E5 PRG:04E5 20 10 86
jmp Sub_84DB ; CPU:$84E8 PRG:04E8 4C DB 84
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop25
; Global: Branch target inside Label: taken when 84EB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop25:
jsr Sub_82A3 ; CPU:$84EB PRG:04EB 20 A3 82
jmp Sub_844F ; CPU:$84EE PRG:04EE 4C 4F 84
; -----------------------------------------------------------------------------
; Routine: Sub_84F1
; Global: Branch target inside Label: taken when 84F1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_84F1:
ldy #$01 ; CPU:$84F1 PRG:04F1 A0 01
lda (Zp76),y ; CPU:$84F3 PRG:04F3 B1 76
cmp #$FF ; CPU:$84F5 PRG:04F5 C9 FF
bne NmiHandler_Loop26 ; CPU:$84F7 PRG:04F7 D0 01
rts ; CPU:$84F9 PRG:04F9 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop26
; Global: Branch target inside Label: taken when 84FA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop26:
ldx #$00 ; CPU:$84FA PRG:04FA A2 00
ldy #$00 ; CPU:$84FC PRG:04FC A0 00
clc ; CPU:$84FE PRG:04FE 18
sta Zp71 ; CPU:$84FF PRG:04FF 85 71
lda #$00 ; CPU:$8501 PRG:0501 A9 00
sta Zp72 ; CPU:$8503 PRG:0503 85 72
asl Zp71 ; CPU:$8505 PRG:0505 06 71
rol Zp72 ; CPU:$8507 PRG:0507 26 72
clc ; CPU:$8509 PRG:0509 18
lda Zp71 ; CPU:$850A PRG:050A A5 71
adc #$28 ; CPU:$850C PRG:050C 69 28
sta Zp71 ; CPU:$850E PRG:050E 85 71
lda Zp72 ; CPU:$8510 PRG:0510 A5 72
adc #$86 ; CPU:$8512 PRG:0512 69 86
sta Zp72 ; CPU:$8514 PRG:0514 85 72
lda (Zp71),y ; CPU:$8516 PRG:0516 B1 71
sta Zp73 ; CPU:$8518 PRG:0518 85 73
iny ; CPU:$851A PRG:051A C8
lda (Zp71),y ; CPU:$851B PRG:051B B1 71
sta Zp74 ; CPU:$851D PRG:051D 85 74
lda (Zp73,x) ; CPU:$851F PRG:051F A1 73
sta Zp70 ; CPU:$8521 PRG:0521 85 70
jsr Sub_8610 ; CPU:$8523 PRG:0523 20 10 86
lda (Zp73,x) ; CPU:$8526 PRG:0526 A1 73
sta Zp71 ; CPU:$8528 PRG:0528 85 71
lda #$00 ; CPU:$852A PRG:052A A9 00
sta Zp72 ; CPU:$852C PRG:052C 85 72
asl Zp71 ; CPU:$852E PRG:052E 06 71
rol Zp72 ; CPU:$8530 PRG:0530 26 72
lda Zp71 ; CPU:$8532 PRG:0532 A5 71
clc ; CPU:$8534 PRG:0534 18
adc #$E2 ; CPU:$8535 PRG:0535 69 E2
sta Zp71 ; CPU:$8537 PRG:0537 85 71
lda Zp72 ; CPU:$8539 PRG:0539 A5 72
adc #$95 ; CPU:$853B PRG:053B 69 95
sta Zp72 ; CPU:$853D PRG:053D 85 72
ldy #$00 ; CPU:$853F PRG:053F A0 00
lda (Zp71),y ; CPU:$8541 PRG:0541 B1 71
sta Zp7A ; CPU:$8543 PRG:0543 85 7A
iny ; CPU:$8545 PRG:0545 C8
lda (Zp71),y ; CPU:$8546 PRG:0546 B1 71
sta Zp7B ; CPU:$8548 PRG:0548 85 7B
jsr Sub_8610 ; CPU:$854A PRG:054A 20 10 86
lda (Zp73,x) ; CPU:$854D PRG:054D A1 73
sta Zp71 ; CPU:$854F PRG:054F 85 71
lda #$00 ; CPU:$8551 PRG:0551 A9 00
sta Zp72 ; CPU:$8553 PRG:0553 85 72
asl Zp71 ; CPU:$8555 PRG:0555 06 71
rol Zp72 ; CPU:$8557 PRG:0557 26 72
lda Zp71 ; CPU:$8559 PRG:0559 A5 71
clc ; CPU:$855B PRG:055B 18
adc #$69 ; CPU:$855C PRG:055C 69 69
sta Zp71 ; CPU:$855E PRG:055E 85 71
lda Zp72 ; CPU:$8560 PRG:0560 A5 72
adc #$93 ; CPU:$8562 PRG:0562 69 93
sta Zp72 ; CPU:$8564 PRG:0564 85 72
ldy #$00 ; CPU:$8566 PRG:0566 A0 00
lda (Zp71),y ; CPU:$8568 PRG:0568 B1 71
sta Zp7C ; CPU:$856A PRG:056A 85 7C
iny ; CPU:$856C PRG:056C C8
lda (Zp71),y ; CPU:$856D PRG:056D B1 71
sta Zp7D ; CPU:$856F PRG:056F 85 7D
jsr Sub_8610 ; CPU:$8571 PRG:0571 20 10 86
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero8
; Global: Branch target inside Label: taken when 8574.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero8:
ldy #$01 ; CPU:$8574 PRG:0574 A0 01
lda (Zp73,x) ; CPU:$8576 PRG:0576 A1 73
cmp #$FF ; CPU:$8578 PRG:0578 C9 FF
beq NmiHandler_Loop29 ; CPU:$857A PRG:057A F0 6D
sta (Zp78),y ; CPU:$857C PRG:057C 91 78
ldy #$03 ; CPU:$857E PRG:057E A0 03
lda (Zp7C,x) ; CPU:$8580 PRG:0580 A1 7C
clc ; CPU:$8582 PRG:0582 18
adc (Zp76),y ; CPU:$8583 PRG:0583 71 76
sta (Zp78),y ; CPU:$8585 PRG:0585 91 78
jsr Sub_8609 ; CPU:$8587 PRG:0587 20 09 86
lda (Zp7C,x) ; CPU:$858A PRG:058A A1 7C
ldy #$00 ; CPU:$858C PRG:058C A0 00
clc ; CPU:$858E PRG:058E 18
adc (Zp76),y ; CPU:$858F PRG:058F 71 76
sta (Zp78),y ; CPU:$8591 PRG:0591 91 78
jsr Sub_8609 ; CPU:$8593 PRG:0593 20 09 86
lda (Zp7A,x) ; CPU:$8596 PRG:0596 A1 7A
ldy #$02 ; CPU:$8598 PRG:0598 A0 02
sta (Zp78),y ; CPU:$859A PRG:059A 91 78
jsr Sub_8610 ; CPU:$859C PRG:059C 20 10 86
lda (Zp76),y ; CPU:$859F PRG:059F B1 76
lsr a ; CPU:$85A1 PRG:05A1 4A
lda (Zp73,x) ; CPU:$85A2 PRG:05A2 A1 73
ror a ; CPU:$85A4 PRG:05A4 6A
ror a ; CPU:$85A5 PRG:05A5 6A
ror a ; CPU:$85A6 PRG:05A6 6A
ora (Zp78),y ; CPU:$85A7 PRG:05A7 11 78
and #$E3 ; CPU:$85A9 PRG:05A9 29 E3
sta (Zp78),y ; CPU:$85AB PRG:05AB 91 78
lda (Zp76),y ; CPU:$85AD PRG:05AD B1 76
and #$30 ; CPU:$85AF PRG:05AF 29 30
beq NmiHandler_Loop27 ; CPU:$85B1 PRG:05B1 F0 0A
sta Zp6F ; CPU:$85B3 PRG:05B3 85 6F
lda (Zp78),y ; CPU:$85B5 PRG:05B5 B1 78
and #$FC ; CPU:$85B7 PRG:05B7 29 FC
ora Zp6F ; CPU:$85B9 PRG:05B9 05 6F
sta (Zp78),y ; CPU:$85BB PRG:05BB 91 78
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop27
; Global: Branch target inside Label: taken when 85BD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop27:
jsr Sub_8610 ; CPU:$85BD PRG:05BD 20 10 86
jsr Sub_8602 ; CPU:$85C0 PRG:05C0 20 02 86
clc ; CPU:$85C3 PRG:05C3 18
lda Zp78 ; CPU:$85C4 PRG:05C4 A5 78
adc #$04 ; CPU:$85C6 PRG:05C6 69 04
sta Zp78 ; CPU:$85C8 PRG:05C8 85 78
lda Zp79 ; CPU:$85CA PRG:05CA A5 79
adc #$00 ; CPU:$85CC PRG:05CC 69 00
sta Zp79 ; CPU:$85CE PRG:05CE 85 79
cmp #$03 ; CPU:$85D0 PRG:05D0 C9 03
bcc NmiHandler_Loop28 ; CPU:$85D2 PRG:05D2 90 01
rts ; CPU:$85D4 PRG:05D4 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop28
; Global: Branch target inside Label: taken when 85D5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop28:
dec Zp70 ; CPU:$85D5 PRG:05D5 C6 70
bne NmiHandler_OnNonzero8 ; CPU:$85D7 PRG:05D7 D0 9B
clc ; CPU:$85D9 PRG:05D9 18
lda Zp76 ; CPU:$85DA PRG:05DA A5 76
adc #$04 ; CPU:$85DC PRG:05DC 69 04
sta Zp76 ; CPU:$85DE PRG:05DE 85 76
lda Zp77 ; CPU:$85E0 PRG:05E0 A5 77
adc #$00 ; CPU:$85E2 PRG:05E2 69 00
sta Zp77 ; CPU:$85E4 PRG:05E4 85 77
jmp Sub_84F1 ; CPU:$85E6 PRG:05E6 4C F1 84
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop29
; Global: Branch target inside Label: taken when 85E9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop29:
jsr Sub_8610 ; CPU:$85E9 PRG:05E9 20 10 86
jsr Sub_8610 ; CPU:$85EC PRG:05EC 20 10 86
jsr Sub_8602 ; CPU:$85EF PRG:05EF 20 02 86
jsr Sub_8609 ; CPU:$85F2 PRG:05F2 20 09 86
jsr Sub_8609 ; CPU:$85F5 PRG:05F5 20 09 86
jmp NmiHandler_Loop28 ; CPU:$85F8 PRG:05F8 4C D5 85
; ---- data $85FB-$8601 (7 bytes) ----
.byte $E6, $76, $D0, $02, $E6, $77, $60 ; CPU:$85FB PRG:05FB E6 76 D0 02 E6 77 60
; -----------------------------------------------------------------------------
; Routine: Sub_8602
; Global: Branch target inside Label: taken when 8602.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_8602:
inc Zp7A ; CPU:$8602 PRG:0602 E6 7A
bne NmiHandler_Loop30 ; CPU:$8604 PRG:0604 D0 02
inc Zp7B ; CPU:$8606 PRG:0606 E6 7B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop30
; Global: Branch target inside Label: taken when 8608.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop30:
rts ; CPU:$8608 PRG:0608 60
; -----------------------------------------------------------------------------
; Routine: Sub_8609
; Global: Branch target inside Label: taken when 8609.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_8609:
inc Zp7C ; CPU:$8609 PRG:0609 E6 7C
bne NmiHandler_Loop31 ; CPU:$860B PRG:060B D0 02
inc Zp7D ; CPU:$860D PRG:060D E6 7D
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop31
; Global: Branch target inside Label: taken when 860F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop31:
rts ; CPU:$860F PRG:060F 60
; -----------------------------------------------------------------------------
; Routine: Sub_8610
; Global: Branch target inside Label: taken when 8610.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_8610:
inc Zp73 ; CPU:$8610 PRG:0610 E6 73
beq NmiHandler_Loop32 ; CPU:$8612 PRG:0612 F0 01
rts ; CPU:$8614 PRG:0614 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop32
; Global: Branch target inside Label: taken when 8615.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop32:
inc Zp74 ; CPU:$8615 PRG:0615 E6 74
rts ; CPU:$8617 PRG:0617 60
; ---- data $8618-$973D (4390 bytes) ----
.byte $E6, $71, $F0, $01, $60, $E6, $72, $60, $E6, $6F, $F0, $01, $60, $E6, $70, $60 ; CPU:$8618 PRG:0618 E6 71 F0 01 60 E6 72 60 E6 6F F0 01 60 E6 70 60
.byte $C2, $87, $D1, $87, $E0, $87, $EF, $87, $FE, $87, $0D, $88, $1C, $88, $2B, $88 ; CPU:$8628 PRG:0628 C2 87 D1 87 E0 87 EF 87 FE 87 0D 88 1C 88 2B 88
.byte $3A, $88, $49, $88, $58, $88, $63, $88, $6E, $88, $7D, $88, $8C, $88, $97, $88 ; CPU:$8638 PRG:0638 3A 88 49 88 58 88 63 88 6E 88 7D 88 8C 88 97 88
.byte $A2, $88, $AD, $88, $B8, $88, $C3, $88, $CE, $88, $D9, $88, $E4, $88, $EF, $88 ; CPU:$8648 PRG:0648 A2 88 AD 88 B8 88 C3 88 CE 88 D9 88 E4 88 EF 88
.byte $FA, $88, $FA, $88, $FA, $88, $FA, $88, $FA, $88, $09, $89, $18, $89, $27, $89 ; CPU:$8658 PRG:0658 FA 88 FA 88 FA 88 FA 88 FA 88 09 89 18 89 27 89
.byte $36, $89, $36, $89, $36, $89, $36, $89, $36, $89, $36, $89, $36, $89, $36, $89 ; CPU:$8668 PRG:0668 36 89 36 89 36 89 36 89 36 89 36 89 36 89 36 89
.byte $36, $89, $45, $89, $54, $89, $63, $89, $72, $89, $81, $89, $90, $89, $9F, $89 ; CPU:$8678 PRG:0678 36 89 45 89 54 89 63 89 72 89 81 89 90 89 9F 89
.byte $AE, $89, $BD, $89, $CC, $89, $D7, $89, $E2, $89, $ED, $89, $F8, $89, $03, $8A ; CPU:$8688 PRG:0688 AE 89 BD 89 CC 89 D7 89 E2 89 ED 89 F8 89 03 8A
.byte $0E, $8A, $19, $8A, $24, $8A, $2F, $8A, $3A, $8A, $45, $8A, $50, $8A, $59, $8A ; CPU:$8698 PRG:0698 0E 8A 19 8A 24 8A 2F 8A 3A 8A 45 8A 50 8A 59 8A
.byte $64, $8A, $6F, $8A, $7A, $8A, $85, $8A, $90, $8A, $95, $8A, $9A, $8A, $9F, $8A ; CPU:$86A8 PRG:06A8 64 8A 6F 8A 7A 8A 85 8A 90 8A 95 8A 9A 8A 9F 8A
.byte $A4, $8A, $A9, $8A, $B8, $8A, $C7, $8A, $CE, $8A, $D5, $8A, $DC, $8A, $E7, $8A ; CPU:$86B8 PRG:06B8 A4 8A A9 8A B8 8A C7 8A CE 8A D5 8A DC 8A E7 8A
.byte $F2, $8A, $01, $8B, $10, $8B, $1F, $8B, $2E, $8B, $3D, $8B, $4C, $8B, $5B, $8B ; CPU:$86C8 PRG:06C8 F2 8A 01 8B 10 8B 1F 8B 2E 8B 3D 8B 4C 8B 5B 8B
.byte $66, $8B, $6B, $8B, $74, $8B, $81, $8B, $90, $8B, $90, $8B, $90, $8B, $90, $8B ; CPU:$86D8 PRG:06D8 66 8B 6B 8B 74 8B 81 8B 90 8B 90 8B 90 8B 90 8B
.byte $90, $8B, $95, $8B, $9A, $8B, $A1, $8B, $A8, $8B, $B5, $8B, $BA, $8B, $C5, $8B ; CPU:$86E8 PRG:06E8 90 8B 95 8B 9A 8B A1 8B A8 8B B5 8B BA 8B C5 8B
.byte $D0, $8B, $DB, $8B, $E6, $8B, $F5, $8B, $04, $8C, $13, $8C, $22, $8C, $27, $8C ; CPU:$86F8 PRG:06F8 D0 8B DB 8B E6 8B F5 8B 04 8C 13 8C 22 8C 27 8C
.byte $2C, $8C, $31, $8C, $36, $8C, $3B, $8C, $40, $8C, $45, $8C, $4A, $8C, $4F, $8C ; CPU:$8708 PRG:0708 2C 8C 31 8C 36 8C 3B 8C 40 8C 45 8C 4A 8C 4F 8C
.byte $56, $8C, $5D, $8C, $6A, $8C, $77, $8C, $88, $8C, $99, $8C, $AE, $8C, $C5, $8C ; CPU:$8718 PRG:0718 56 8C 5D 8C 6A 8C 77 8C 88 8C 99 8C AE 8C C5 8C
.byte $E0, $8C, $FB, $8C, $1A, $8D, $39, $8D, $58, $8D, $77, $8D, $96, $8D, $B5, $8D ; CPU:$8728 PRG:0728 E0 8C FB 8C 1A 8D 39 8D 58 8D 77 8D 96 8D B5 8D
.byte $D4, $8D, $F3, $8D, $06, $8E, $1D, $8E, $34, $8E, $49, $8E, $4E, $8E, $53, $8E ; CPU:$8738 PRG:0738 D4 8D F3 8D 06 8E 1D 8E 34 8E 49 8E 4E 8E 53 8E
.byte $58, $8E, $5D, $8E, $62, $8E, $67, $8E, $6C, $8E, $71, $8E, $76, $8E, $7B, $8E ; CPU:$8748 PRG:0748 58 8E 5D 8E 62 8E 67 8E 6C 8E 71 8E 76 8E 7B 8E
.byte $80, $8E, $85, $8E, $8A, $8E, $8F, $8E, $94, $8E, $99, $8E, $AE, $8E, $C3, $8E ; CPU:$8758 PRG:0758 80 8E 85 8E 8A 8E 8F 8E 94 8E 99 8E AE 8E C3 8E
.byte $D8, $8E, $ED, $8E, $02, $8F, $17, $8F, $34, $8F, $51, $8F, $6E, $8F, $8B, $8F ; CPU:$8768 PRG:0768 D8 8E ED 8E 02 8F 17 8F 34 8F 51 8F 6E 8F 8B 8F
.byte $AC, $8F, $CD, $8F, $E8, $8F, $03, $90, $1E, $90, $39, $90, $50, $90, $67, $90 ; CPU:$8778 PRG:0778 AC 8F CD 8F E8 8F 03 90 1E 90 39 90 50 90 67 90
.byte $82, $90, $9D, $90, $BE, $90, $DF, $90, $FC, $90, $19, $91, $2C, $91, $3F, $91 ; CPU:$8788 PRG:0788 82 90 9D 90 BE 90 DF 90 FC 90 19 91 2C 91 3F 91
.byte $52, $91, $65, $91, $78, $91, $8B, $91, $A6, $91, $C1, $91, $DC, $91, $F7, $91 ; CPU:$8798 PRG:0798 52 91 65 91 78 91 8B 91 A6 91 C1 91 DC 91 F7 91
.byte $16, $92, $35, $92, $4E, $92, $67, $92, $80, $92, $99, $92, $AE, $92, $C3, $92 ; CPU:$87A8 PRG:07A8 16 92 35 92 4E 92 67 92 80 92 99 92 AE 92 C3 92
.byte $DC, $92, $F5, $92, $14, $93, $33, $93, $4E, $93, $06, $02, $02, $04, $00, $05 ; CPU:$87B8 PRG:07B8 DC 92 F5 92 14 93 33 93 4E 93 06 02 02 04 00 05
.byte $00, $02, $00, $03, $00, $00, $00, $01, $00, $06, $03, $02, $05, $01, $04, $01 ; CPU:$87C8 PRG:07C8 00 02 00 03 00 00 00 01 00 06 03 02 05 01 04 01
.byte $03, $01, $02, $01, $01, $01, $00, $01, $06, $02, $02, $09, $00, $FF, $00, $08 ; CPU:$87D8 PRG:07D8 03 01 02 01 01 01 00 01 06 02 02 09 00 FF 00 08
.byte $00, $03, $00, $06, $00, $07, $00, $06, $03, $02, $FF, $00, $09, $01, $03, $01 ; CPU:$87E8 PRG:07E8 00 03 00 06 00 07 00 06 03 02 FF 00 09 01 03 01
.byte $08, $01, $07, $01, $06, $01, $06, $02, $02, $04, $00, $05, $00, $02, $00, $FF ; CPU:$87F8 PRG:07F8 08 01 07 01 06 01 06 02 02 04 00 05 00 02 00 FF
.byte $00, $00, $00, $0A, $00, $06, $03, $02, $05, $01, $04, $01, $FF, $01, $02, $01 ; CPU:$8808 PRG:0808 00 00 00 0A 00 06 03 02 05 01 04 01 FF 01 02 01
.byte $0A, $01, $00, $01, $06, $02, $02, $09, $00, $FF, $00, $08, $00, $FF, $00, $06 ; CPU:$8818 PRG:0818 0A 01 00 01 06 02 02 09 00 FF 00 08 00 FF 00 06
.byte $00, $0B, $00, $06, $03, $02, $FF, $01, $09, $01, $FF, $01, $08, $01, $0B, $01 ; CPU:$8828 PRG:0828 00 0B 00 06 03 02 FF 01 09 01 FF 01 08 01 0B 01
.byte $06, $01, $06, $03, $02, $10, $00, $11, $00, $0E, $00, $0F, $00, $0C, $00, $0D ; CPU:$8838 PRG:0838 06 01 06 03 02 10 00 11 00 0E 00 0F 00 0C 00 0D
.byte $00, $06, $02, $02, $11, $01, $10, $01, $0F, $01, $0E, $01, $0D, $01, $0C, $01 ; CPU:$8848 PRG:0848 00 06 02 02 11 01 10 01 0F 01 0E 01 0D 01 0C 01
.byte $04, $00, $02, $14, $00, $15, $00, $12, $00, $13, $00, $04, $00, $02, $15, $01 ; CPU:$8858 PRG:0858 04 00 02 14 00 15 00 12 00 13 00 04 00 02 15 01
.byte $14, $01, $13, $01, $12, $01, $06, $02, $02, $18, $00, $19, $00, $16, $00, $17 ; CPU:$8868 PRG:0868 14 01 13 01 12 01 06 02 02 18 00 19 00 16 00 17
.byte $00, $06, $00, $0A, $00, $06, $03, $02, $19, $01, $18, $01, $17, $01, $16, $01 ; CPU:$8878 PRG:0878 00 06 00 0A 00 06 03 02 19 01 18 01 17 01 16 01
.byte $0A, $01, $06, $01, $04, $04, $02, $1A, $00, $1B, $00, $06, $00, $0A, $00, $04 ; CPU:$8888 PRG:0888 0A 01 06 01 04 04 02 1A 00 1B 00 06 00 0A 00 04
.byte $05, $02, $1B, $01, $1A, $01, $0A, $01, $06, $01, $04, $04, $02, $1E, $00, $1F ; CPU:$8898 PRG:0898 05 02 1B 01 1A 01 0A 01 06 01 04 04 02 1E 00 1F
.byte $00, $1C, $00, $1D, $00, $04, $05, $02, $1F, $01, $1E, $01, $1D, $01, $1C, $01 ; CPU:$88A8 PRG:08A8 00 1C 00 1D 00 04 05 02 1F 01 1E 01 1D 01 1C 01
.byte $04, $04, $02, $1E, $00, $21, $00, $1C, $00, $20, $00, $04, $05, $02, $21, $01 ; CPU:$88B8 PRG:08B8 04 04 02 1E 00 21 00 1C 00 20 00 04 05 02 21 01
.byte $1E, $01, $20, $01, $1C, $01, $04, $07, $02, $0A, $03, $06, $03, $1B, $03, $1A ; CPU:$88C8 PRG:08C8 1E 01 20 01 1C 01 04 07 02 0A 03 06 03 1B 03 1A
.byte $03, $04, $06, $02, $06, $02, $0A, $02, $1A, $02, $1B, $02, $04, $00, $02, $23 ; CPU:$88D8 PRG:08D8 03 04 06 02 06 02 0A 02 1A 02 1B 02 04 00 02 23
.byte $00, $23, $01, $22, $00, $22, $01, $04, $00, $02, $25, $00, $25, $01, $24, $00 ; CPU:$88E8 PRG:08E8 00 23 01 22 00 22 01 04 00 02 25 00 25 01 24 00
.byte $24, $01, $06, $02, $02, $28, $00, $29, $00, $26, $00, $2E, $00, $00, $00, $0A ; CPU:$88F8 PRG:08F8 24 01 06 02 02 28 00 29 00 26 00 2E 00 00 00 0A
.byte $00, $06, $03, $02, $29, $01, $28, $01, $2E, $01, $26, $01, $0A, $01, $00, $01 ; CPU:$8908 PRG:0908 00 06 03 02 29 01 28 01 2E 01 26 01 0A 01 00 01
.byte $06, $02, $02, $2B, $00, $FF, $00, $2A, $00, $FF, $00, $06, $00, $0B, $00, $06 ; CPU:$8918 PRG:0918 06 02 02 2B 00 FF 00 2A 00 FF 00 06 00 0B 00 06
.byte $03, $02, $FF, $00, $2B, $01, $FF, $01, $2A, $01, $0B, $01, $06, $01, $06, $01 ; CPU:$8928 PRG:0928 03 02 FF 00 2B 01 FF 01 2A 01 0B 01 06 01 06 01
.byte $02, $34, $00, $35, $00, $32, $00, $33, $00, $30, $00, $31, $00, $06, $01, $02 ; CPU:$8938 PRG:0938 02 34 00 35 00 32 00 33 00 30 00 31 00 06 01 02
.byte $35, $01, $34, $01, $33, $01, $32, $01, $31, $01, $30, $01, $06, $01, $02, $3A ; CPU:$8948 PRG:0948 35 01 34 01 33 01 32 01 31 01 30 01 06 01 02 3A
.byte $00, $FF, $00, $38, $00, $39, $00, $36, $00, $37, $00, $06, $01, $02, $FF, $00 ; CPU:$8958 PRG:0958 00 FF 00 38 00 39 00 36 00 37 00 06 01 02 FF 00
.byte $3A, $01, $39, $01, $38, $01, $37, $01, $36, $01, $06, $01, $02, $34, $00, $35 ; CPU:$8968 PRG:0968 3A 01 39 01 38 01 37 01 36 01 06 01 02 34 00 35
.byte $00, $32, $00, $FF, $00, $30, $00, $3B, $00, $06, $01, $02, $35, $01, $34, $01 ; CPU:$8978 PRG:0978 00 32 00 FF 00 30 00 3B 00 06 01 02 35 01 34 01
.byte $FF, $00, $32, $01, $3B, $01, $30, $01, $06, $01, $02, $3A, $00, $FF, $00, $38 ; CPU:$8988 PRG:0988 FF 00 32 01 3B 01 30 01 06 01 02 3A 00 FF 00 38
.byte $00, $FF, $00, $36, $00, $3C, $00, $06, $01, $02, $FF, $00, $3A, $01, $FF, $00 ; CPU:$8998 PRG:0998 00 FF 00 36 00 3C 00 06 01 02 FF 00 3A 01 FF 00
.byte $38, $01, $3C, $01, $36, $01, $06, $01, $02, $41, $00, $42, $00, $3F, $00, $40 ; CPU:$89A8 PRG:09A8 38 01 3C 01 36 01 06 01 02 41 00 42 00 3F 00 40
.byte $00, $3D, $00, $3E, $00, $06, $01, $02, $42, $01, $41, $01, $40, $01, $3F, $01 ; CPU:$89B8 PRG:09B8 00 3D 00 3E 00 06 01 02 42 01 41 01 40 01 3F 01
.byte $3E, $01, $3D, $01, $04, $01, $02, $45, $00, $46, $00, $43, $00, $44, $00, $04 ; CPU:$89C8 PRG:09C8 3E 01 3D 01 04 01 02 45 00 46 00 43 00 44 00 04
.byte $01, $02, $46, $01, $45, $01, $44, $01, $43, $01, $04, $01, $02, $4E, $00, $4F ; CPU:$89D8 PRG:09D8 01 02 46 01 45 01 44 01 43 01 04 01 02 4E 00 4F
.byte $00, $4C, $00, $4D, $00, $04, $01, $02, $4F, $01, $4E, $01, $4D, $01, $4C, $01 ; CPU:$89E8 PRG:09E8 00 4C 00 4D 00 04 01 02 4F 01 4E 01 4D 01 4C 01
.byte $04, $01, $02, $4E, $00, $51, $00, $4C, $00, $50, $00, $04, $01, $02, $51, $01 ; CPU:$89F8 PRG:09F8 04 01 02 4E 00 51 00 4C 00 50 00 04 01 02 51 01
.byte $4E, $01, $50, $01, $4C, $01, $04, $01, $02, $56, $00, $57, $00, $30, $00, $3B ; CPU:$8A08 PRG:0A08 4E 01 50 01 4C 01 04 01 02 56 00 57 00 30 00 3B
.byte $00, $04, $01, $02, $57, $01, $56, $01, $3B, $01, $30, $01, $04, $01, $02, $3B ; CPU:$8A18 PRG:0A18 00 04 01 02 57 01 56 01 3B 01 30 01 04 01 02 3B
.byte $03, $30, $03, $57, $03, $56, $03, $04, $01, $02, $30, $02, $3B, $02, $56, $02 ; CPU:$8A28 PRG:0A28 03 30 03 57 03 56 03 04 01 02 30 02 3B 02 56 02
.byte $57, $02, $04, $01, $01, $47, $00, $48, $00, $49, $00, $4A, $00, $04, $01, $01 ; CPU:$8A38 PRG:0A38 57 02 04 01 01 47 00 48 00 49 00 4A 00 04 01 01
.byte $4A, $01, $49, $01, $48, $01, $47, $01, $03, $01, $01, $47, $00, $48, $00, $4B ; CPU:$8A48 PRG:0A48 4A 01 49 01 48 01 47 01 03 01 01 47 00 48 00 4B
.byte $00, $04, $01, $01, $FF, $00, $4B, $01, $48, $01, $47, $01, $04, $01, $02, $53 ; CPU:$8A58 PRG:0A58 00 04 01 01 FF 00 4B 01 48 01 47 01 04 01 02 53
.byte $00, $53, $01, $52, $00, $52, $01, $04, $01, $02, $55, $00, $55, $01, $54, $00 ; CPU:$8A68 PRG:0A68 00 53 01 52 00 52 01 04 01 02 55 00 55 01 54 00
.byte $54, $01, $04, $09, $02, $62, $00, $63, $00, $60, $00, $61, $00, $04, $09, $02 ; CPU:$8A78 PRG:0A78 54 01 04 09 02 62 00 63 00 60 00 61 00 04 09 02
.byte $66, $00, $67, $00, $64, $00, $65, $00, $01, $09, $00, $68, $00, $01, $09, $00 ; CPU:$8A88 PRG:0A88 66 00 67 00 64 00 65 00 01 09 00 68 00 01 09 00
.byte $68, $01, $01, $09, $00, $6A, $00, $01, $09, $00, $6A, $01, $01, $09, $00, $69 ; CPU:$8A98 PRG:0A98 68 01 01 09 00 6A 00 01 09 00 6A 01 01 09 00 69
.byte $00, $06, $01, $02, $5A, $00, $5B, $00, $58, $00, $59, $00, $30, $00, $3B, $00 ; CPU:$8AA8 PRG:0AA8 00 06 01 02 5A 00 5B 00 58 00 59 00 30 00 3B 00
.byte $06, $01, $02, $5B, $01, $5A, $01, $59, $01, $58, $01, $3B, $01, $30, $01, $02 ; CPU:$8AB8 PRG:0AB8 06 01 02 5B 01 5A 01 59 01 58 01 3B 01 30 01 02
.byte $09, $02, $6B, $00, $6C, $00, $02, $08, $04, $6D, $00, $6E, $00, $02, $08, $04 ; CPU:$8AC8 PRG:0AC8 09 02 6B 00 6C 00 02 08 04 6D 00 6E 00 02 08 04
.byte $6D, $00, $6E, $01, $04, $00, $02, $A8, $00, $A9, $00, $A6, $00, $A7, $00, $04 ; CPU:$8AD8 PRG:0AD8 6D 00 6E 01 04 00 02 A8 00 A9 00 A6 00 A7 00 04
.byte $00, $02, $AC, $00, $AD, $00, $AA, $00, $AB, $00, $06, $00, $02, $E5, $02, $E6 ; CPU:$8AE8 PRG:0AE8 00 02 AC 00 AD 00 AA 00 AB 00 06 00 02 E5 02 E6
.byte $02, $E7, $00, $E8, $00, $E5, $00, $E6, $00, $06, $00, $02, $E5, $02, $E6, $02 ; CPU:$8AF8 PRG:0AF8 02 E7 00 E8 00 E5 00 E6 00 06 00 02 E5 02 E6 02
.byte $EB, $00, $FF, $00, $E9, $00, $EA, $00, $06, $00, $02, $EF, $00, $EF, $01, $ED ; CPU:$8B08 PRG:0B08 EB 00 FF 00 E9 00 EA 00 06 00 02 EF 00 EF 01 ED
.byte $00, $EE, $00, $E5, $00, $EC, $00, $06, $00, $02, $F4, $00, $F4, $00, $F2, $00 ; CPU:$8B18 PRG:0B18 00 EE 00 E5 00 EC 00 06 00 02 F4 00 F4 00 F2 00
.byte $F3, $00, $F0, $00, $F1, $00, $06, $00, $02, $F9, $00, $FA, $00, $F7, $00, $F8 ; CPU:$8B28 PRG:0B28 F3 00 F0 00 F1 00 06 00 02 F9 00 FA 00 F7 00 F8
.byte $00, $F5, $00, $F6, $00, $06, $00, $02, $FB, $02, $FB, $03, $FC, $00, $FC, $01 ; CPU:$8B38 PRG:0B38 00 F5 00 F6 00 06 00 02 FB 02 FB 03 FC 00 FC 01
.byte $FB, $00, $FB, $01, $06, $00, $02, $E9, $02, $FE, $00, $E7, $00, $FD, $00, $E9 ; CPU:$8B48 PRG:0B48 FB 00 FB 01 06 00 02 E9 02 FE 00 E7 00 FD 00 E9
.byte $00, $FB, $01, $04, $09, $02, $5E, $00, $5F, $00, $5C, $00, $5D, $00, $01, $08 ; CPU:$8B58 PRG:0B58 00 FB 01 04 09 02 5E 00 5F 00 5C 00 5D 00 01 08
.byte $06, $BC, $00, $03, $08, $06, $BD, $00, $BE, $00, $BF, $00, $05, $08, $06, $BC ; CPU:$8B68 PRG:0B68 06 BC 00 03 08 06 BD 00 BE 00 BF 00 05 08 06 BC
.byte $00, $BE, $00, $BF, $00, $C0, $00, $C1, $00, $06, $08, $06, $BD, $00, $BE, $00 ; CPU:$8B78 PRG:0B78 00 BE 00 BF 00 C0 00 C1 00 06 08 06 BD 00 BE 00
.byte $BF, $00, $C0, $00, $C1, $00, $BD, $01, $01, $08, $00, $C4, $00, $01, $08, $00 ; CPU:$8B88 PRG:0B88 BF 00 C0 00 C1 00 BD 01 01 08 00 C4 00 01 08 00
.byte $C5, $00, $02, $09, $03, $95, $00, $96, $00, $02, $09, $03, $9D, $00, $9E, $00 ; CPU:$8B98 PRG:0B98 C5 00 02 09 03 95 00 96 00 02 09 03 9D 00 9E 00
.byte $05, $08, $08, $89, $00, $7A, $00, $8E, $00, $8C, $00, $7E, $00, $01, $01, $00 ; CPU:$8BA8 PRG:0BA8 05 08 08 89 00 7A 00 8E 00 8C 00 7E 00 01 01 00
.byte $AE, $00, $04, $04, $02, $1A, $00, $97, $00, $06, $00, $0A, $00, $04, $05, $02 ; CPU:$8BB8 PRG:0BB8 AE 00 04 04 02 1A 00 97 00 06 00 0A 00 04 05 02
.byte $97, $01, $1A, $01, $0A, $01, $06, $01, $04, $04, $02, $2C, $00, $97, $00, $06 ; CPU:$8BC8 PRG:0BC8 97 01 1A 01 0A 01 06 01 04 04 02 2C 00 97 00 06
.byte $00, $0B, $00, $04, $05, $02, $97, $01, $2C, $01, $0B, $01, $06, $01, $06, $02 ; CPU:$8BD8 PRG:0BD8 00 0B 00 04 05 02 97 01 2C 01 0B 01 06 01 06 02
.byte $02, $18, $00, $19, $00, $16, $00, $98, $00, $06, $00, $0A, $00, $06, $03, $02 ; CPU:$8BE8 PRG:0BE8 02 18 00 19 00 16 00 98 00 06 00 0A 00 06 03 02
.byte $19, $01, $18, $01, $98, $01, $16, $01, $0A, $01, $06, $01, $06, $02, $02, $18 ; CPU:$8BF8 PRG:0BF8 19 01 18 01 98 01 16 01 0A 01 06 01 06 02 02 18
.byte $00, $19, $00, $2C, $00, $98, $00, $06, $00, $0B, $00, $06, $03, $02, $19, $01 ; CPU:$8C08 PRG:0C08 00 19 00 2C 00 98 00 06 00 0B 00 06 03 02 19 01
.byte $18, $01, $98, $01, $2C, $01, $0B, $01, $06, $01, $01, $08, $00, $D9, $00, $01 ; CPU:$8C18 PRG:0C18 18 01 98 01 2C 01 0B 01 06 01 01 08 00 D9 00 01
.byte $08, $00, $DA, $00, $01, $08, $00, $DB, $00, $01, $08, $00, $DC, $00, $01, $08 ; CPU:$8C28 PRG:0C28 08 00 DA 00 01 08 00 DB 00 01 08 00 DC 00 01 08
.byte $00, $DD, $00, $01, $08, $00, $DC, $01, $01, $08, $00, $DB, $01, $01, $08, $00 ; CPU:$8C38 PRG:0C38 00 DD 00 01 08 00 DC 01 01 08 00 DB 01 01 08 00
.byte $DA, $01, $01, $0D, $0E, $A2, $00, $02, $0D, $0E, $FF, $00, $A2, $00, $02, $0D ; CPU:$8C48 PRG:0C48 DA 01 01 0D 0E A2 00 02 0D 0E FF 00 A2 00 02 0D
.byte $0E, $A2, $00, $A0, $00, $05, $0D, $0E, $FF, $00, $A2, $00, $A1, $00, $A0, $00 ; CPU:$8C58 PRG:0C58 0E A2 00 A0 00 05 0D 0E FF 00 A2 00 A1 00 A0 00
.byte $A1, $00, $05, $0D, $0E, $A2, $00, $A0, $00, $A1, $00, $A0, $00, $A1, $00, $07 ; CPU:$8C68 PRG:0C68 A1 00 05 0D 0E A2 00 A0 00 A1 00 A0 00 A1 00 07
.byte $0D, $0E, $FF, $00, $A2, $00, $A1, $00, $A0, $00, $A1, $00, $A0, $00, $A1, $00 ; CPU:$8C78 PRG:0C78 0D 0E FF 00 A2 00 A1 00 A0 00 A1 00 A0 00 A1 00
.byte $07, $0D, $0E, $A2, $00, $A0, $00, $A1, $00, $A0, $00, $A1, $00, $A0, $00, $A1 ; CPU:$8C88 PRG:0C88 07 0D 0E A2 00 A0 00 A1 00 A0 00 A1 00 A0 00 A1
.byte $00, $09, $0D, $0E, $FF, $00, $A2, $00, $A1, $00, $A0, $00, $A1, $00, $A0, $00 ; CPU:$8C98 PRG:0C98 00 09 0D 0E FF 00 A2 00 A1 00 A0 00 A1 00 A0 00
.byte $A1, $00, $A0, $00, $A1, $00, $0A, $0D, $0E, $A2, $00, $A0, $00, $A1, $00, $A0 ; CPU:$8CA8 PRG:0CA8 A1 00 A0 00 A1 00 0A 0D 0E A2 00 A0 00 A1 00 A0
.byte $00, $A1, $00, $A0, $00, $A1, $00, $A0, $00, $A1, $00, $A0, $00, $0C, $0D, $0E ; CPU:$8CB8 PRG:0CB8 00 A1 00 A0 00 A1 00 A0 00 A1 00 A0 00 0C 0D 0E
.byte $FF, $00, $A2, $00, $A1, $00, $A0, $00, $A1, $00, $A0, $00, $A1, $00, $A0, $00 ; CPU:$8CC8 PRG:0CC8 FF 00 A2 00 A1 00 A0 00 A1 00 A0 00 A1 00 A0 00
.byte $A1, $00, $A0, $00, $A1, $00, $A0, $00, $0C, $0D, $0E, $A2, $00, $A0, $00, $A1 ; CPU:$8CD8 PRG:0CD8 A1 00 A0 00 A1 00 A0 00 0C 0D 0E A2 00 A0 00 A1
.byte $00, $A0, $00, $A1, $00, $A0, $00, $A1, $00, $A0, $00, $A1, $00, $A0, $00, $A1 ; CPU:$8CE8 PRG:0CE8 00 A0 00 A1 00 A0 00 A1 00 A0 00 A1 00 A0 00 A1
.byte $00, $A0, $00, $0E, $0D, $0E, $A3, $00, $A0, $00, $A1, $00, $A0, $00, $A1, $00 ; CPU:$8CF8 PRG:0CF8 00 A0 00 0E 0D 0E A3 00 A0 00 A1 00 A0 00 A1 00
.byte $A0, $00, $A1, $00, $A0, $00, $A1, $00, $A0, $00, $A1, $00, $A0, $00, $A5, $00 ; CPU:$8D08 PRG:0D08 A0 00 A1 00 A0 00 A1 00 A0 00 A1 00 A0 00 A5 00
.byte $A4, $00, $0E, $0D, $0E, $A3, $00, $A0, $00, $A1, $00, $A0, $00, $A1, $00, $A0 ; CPU:$8D18 PRG:0D18 A4 00 0E 0D 0E A3 00 A0 00 A1 00 A0 00 A1 00 A0
.byte $00, $A1, $00, $A0, $00, $A1, $00, $A0, $00, $A5, $00, $A4, $00, $A5, $00, $A4 ; CPU:$8D28 PRG:0D28 00 A1 00 A0 00 A1 00 A0 00 A5 00 A4 00 A5 00 A4
.byte $00, $0E, $0D, $0E, $A3, $00, $A0, $00, $A1, $00, $A0, $00, $A1, $00, $A0, $00 ; CPU:$8D38 PRG:0D38 00 0E 0D 0E A3 00 A0 00 A1 00 A0 00 A1 00 A0 00
.byte $A1, $00, $A0, $00, $A5, $00, $A4, $00, $A5, $00, $A4, $00, $A5, $00, $A4, $00 ; CPU:$8D48 PRG:0D48 A1 00 A0 00 A5 00 A4 00 A5 00 A4 00 A5 00 A4 00
.byte $0E, $0D, $0E, $A3, $00, $A0, $00, $A1, $00, $A0, $00, $A1, $00, $A0, $00, $A5 ; CPU:$8D58 PRG:0D58 0E 0D 0E A3 00 A0 00 A1 00 A0 00 A1 00 A0 00 A5
.byte $00, $A4, $00, $A5, $00, $A4, $00, $A5, $00, $A4, $00, $A5, $00, $A4, $00, $0E ; CPU:$8D68 PRG:0D68 00 A4 00 A5 00 A4 00 A5 00 A4 00 A5 00 A4 00 0E
.byte $0D, $0E, $A3, $00, $A0, $00, $A1, $00, $A0, $00, $A5, $00, $A4, $00, $A5, $00 ; CPU:$8D78 PRG:0D78 0D 0E A3 00 A0 00 A1 00 A0 00 A5 00 A4 00 A5 00
.byte $A4, $00, $A5, $00, $A4, $00, $A5, $00, $A4, $00, $A5, $00, $A4, $00, $0E, $0D ; CPU:$8D88 PRG:0D88 A4 00 A5 00 A4 00 A5 00 A4 00 A5 00 A4 00 0E 0D
.byte $0E, $A3, $00, $A0, $00, $A5, $00, $A4, $00, $A5, $00, $A4, $00, $A5, $00, $A4 ; CPU:$8D98 PRG:0D98 0E A3 00 A0 00 A5 00 A4 00 A5 00 A4 00 A5 00 A4
.byte $00, $A5, $00, $A4, $00, $A5, $00, $A4, $00, $A5, $00, $A4, $00, $0E, $0D, $0E ; CPU:$8DA8 PRG:0DA8 00 A5 00 A4 00 A5 00 A4 00 A5 00 A4 00 0E 0D 0E
.byte $88, $00, $A4, $00, $A5, $00, $A4, $00, $A5, $00, $A4, $00, $A5, $00, $A4, $00 ; CPU:$8DB8 PRG:0DB8 88 00 A4 00 A5 00 A4 00 A5 00 A4 00 A5 00 A4 00
.byte $A5, $00, $A4, $00, $A5, $00, $A4, $00, $A5, $00, $A4, $00, $0E, $0D, $0E, $FF ; CPU:$8DC8 PRG:0DC8 A5 00 A4 00 A5 00 A4 00 A5 00 A4 00 0E 0D 0E FF
.byte $00, $A4, $00, $FF, $00, $A4, $00, $FF, $00, $A4, $00, $FF, $00, $A4, $00, $FF ; CPU:$8DD8 PRG:0DD8 00 A4 00 FF 00 A4 00 FF 00 A4 00 FF 00 A4 00 FF
.byte $00, $A4, $00, $FF, $00, $A4, $00, $FF, $00, $A4, $00, $08, $0B, $0B, $B0, $00 ; CPU:$8DE8 PRG:0DE8 00 A4 00 FF 00 A4 00 FF 00 A4 00 08 0B 0B B0 00
.byte $B1, $00, $B2, $00, $B3, $00, $B4, $00, $B5, $00, $B6, $00, $B7, $00, $0A, $0C ; CPU:$8DF8 PRG:0DF8 B1 00 B2 00 B3 00 B4 00 B5 00 B6 00 B7 00 0A 0C
.byte $09, $B0, $00, $B1, $00, $B2, $00, $B3, $00, $B4, $00, $B5, $00, $B6, $00, $B7 ; CPU:$8E08 PRG:0E08 09 B0 00 B1 00 B2 00 B3 00 B4 00 B5 00 B6 00 B7
.byte $00, $00, $00, $0A, $00, $0A, $0B, $0B, $B3, $01, $B2, $01, $B1, $01, $B0, $01 ; CPU:$8E18 PRG:0E18 00 00 00 0A 00 0A 0B 0B B3 01 B2 01 B1 01 B0 01
.byte $B7, $01, $B6, $01, $B5, $01, $B4, $01, $0A, $01, $00, $01, $09, $0B, $0C, $C3 ; CPU:$8E28 PRG:0E28 B7 01 B6 01 B5 01 B4 01 0A 01 00 01 09 0B 0C C3
.byte $00, $C2, $00, $B8, $00, $BA, $00, $B8, $01, $B9, $00, $BB, $00, $B9, $01, $AF ; CPU:$8E38 PRG:0E38 00 C2 00 B8 00 BA 00 B8 01 B9 00 BB 00 B9 01 AF
.byte $00, $01, $08, $00, $70, $00, $01, $08, $00, $71, $00, $01, $08, $00, $72, $00 ; CPU:$8E48 PRG:0E48 00 01 08 00 70 00 01 08 00 71 00 01 08 00 72 00
.byte $01, $08, $00, $73, $00, $01, $08, $00, $74, $00, $01, $08, $00, $75, $00, $01 ; CPU:$8E58 PRG:0E58 01 08 00 73 00 01 08 00 74 00 01 08 00 75 00 01
.byte $08, $00, $76, $00, $01, $08, $00, $77, $00, $01, $08, $00, $78, $00, $01, $08 ; CPU:$8E68 PRG:0E68 08 00 76 00 01 08 00 77 00 01 08 00 78 00 01 08
.byte $00, $79, $00, $01, $08, $00, $7B, $00, $01, $08, $00, $70, $00, $01, $08, $00 ; CPU:$8E78 PRG:0E78 00 79 00 01 08 00 7B 00 01 08 00 70 00 01 08 00
.byte $87, $00, $01, $08, $00, $8E, $00, $01, $08, $00, $8C, $00, $01, $00, $00, $FF ; CPU:$8E88 PRG:0E88 87 00 01 08 00 8E 00 01 08 00 8C 00 01 00 00 FF
.byte $00, $09, $0E, $0F, $C8, $00, $C6, $00, $C6, $00, $C6, $00, $C8, $00, $C6, $00 ; CPU:$8E98 PRG:0E98 00 09 0E 0F C8 00 C6 00 C6 00 C6 00 C8 00 C6 00
.byte $C7, $00, $C6, $00, $D8, $00, $09, $0E, $10, $C8, $01, $C6, $01, $C6, $01, $C6 ; CPU:$8EA8 PRG:0EA8 C7 00 C6 00 D8 00 09 0E 10 C8 01 C6 01 C6 01 C6
.byte $01, $C8, $01, $C6, $01, $C7, $01, $C6, $01, $D8, $01, $09, $0E, $0F, $CA, $00 ; CPU:$8EB8 PRG:0EB8 01 C8 01 C6 01 C7 01 C6 01 D8 01 09 0E 0F CA 00
.byte $C6, $00, $C6, $00, $CE, $00, $C9, $00, $CB, $00, $CC, $00, $CD, $00, $D8, $00 ; CPU:$8EC8 PRG:0EC8 C6 00 C6 00 CE 00 C9 00 CB 00 CC 00 CD 00 D8 00
.byte $09, $0E, $10, $CA, $01, $C6, $01, $C6, $01, $CE, $01, $C9, $01, $CB, $01, $CC ; CPU:$8ED8 PRG:0ED8 09 0E 10 CA 01 C6 01 C6 01 CE 01 C9 01 CB 01 CC
.byte $01, $CD, $01, $D8, $01, $09, $0E, $0F, $D0, $00, $C6, $00, $C6, $00, $D3, $00 ; CPU:$8EE8 PRG:0EE8 01 CD 01 D8 01 09 0E 0F D0 00 C6 00 C6 00 D3 00
.byte $CF, $00, $D1, $00, $D1, $02, $D2, $00, $D8, $00, $09, $0E, $10, $D0, $01, $C6 ; CPU:$8EF8 PRG:0EF8 CF 00 D1 00 D1 02 D2 00 D8 00 09 0E 10 D0 01 C6
.byte $01, $C6, $01, $D3, $01, $CF, $01, $D1, $01, $D1, $03, $D2, $01, $D8, $01, $0D ; CPU:$8F08 PRG:0F08 01 C6 01 D3 01 CF 01 D1 01 D1 03 D2 01 D8 01 0D
.byte $0F, $11, $09, $00, $08, $00, $06, $00, $0B, $00, $CA, $00, $C6, $00, $C6, $00 ; CPU:$8F18 PRG:0F18 0F 11 09 00 08 00 06 00 0B 00 CA 00 C6 00 C6 00
.byte $CE, $00, $C9, $00, $CB, $00, $CC, $00, $CD, $00, $D8, $00, $0D, $0F, $12, $09 ; CPU:$8F28 PRG:0F28 CE 00 C9 00 CB 00 CC 00 CD 00 D8 00 0D 0F 12 09
.byte $01, $08, $01, $06, $01, $0B, $01, $CA, $01, $C6, $01, $C6, $01, $CE, $01, $C9 ; CPU:$8F38 PRG:0F38 01 08 01 06 01 0B 01 CA 01 C6 01 C6 01 CE 01 C9
.byte $01, $CB, $01, $CC, $01, $CD, $01, $D8, $01, $0D, $0F, $11, $09, $00, $08, $00 ; CPU:$8F48 PRG:0F48 01 CB 01 CC 01 CD 01 D8 01 0D 0F 11 09 00 08 00
.byte $06, $00, $0B, $00, $D0, $00, $C6, $00, $C6, $00, $D3, $00, $CF, $00, $D1, $00 ; CPU:$8F58 PRG:0F58 06 00 0B 00 D0 00 C6 00 C6 00 D3 00 CF 00 D1 00
.byte $D1, $02, $D2, $00, $D8, $00, $0D, $0F, $12, $09, $01, $08, $01, $06, $01, $0B ; CPU:$8F68 PRG:0F68 D1 02 D2 00 D8 00 0D 0F 12 09 01 08 01 06 01 0B
.byte $01, $D0, $01, $C6, $01, $C6, $01, $D3, $01, $CF, $01, $D1, $01, $D1, $03, $D2 ; CPU:$8F78 PRG:0F78 01 D0 01 C6 01 C6 01 D3 01 CF 01 D1 01 D1 03 D2
.byte $01, $D8, $01, $0F, $10, $13, $D5, $00, $CC, $02, $CB, $02, $D7, $00, $04, $00 ; CPU:$8F88 PRG:0F88 01 D8 01 0F 10 13 D5 00 CC 02 CB 02 D7 00 04 00
.byte $02, $00, $00, $00, $05, $00, $FF, $00, $0A, $00, $D4, $00, $D6, $00, $D6, $00 ; CPU:$8F98 PRG:0F98 02 00 00 00 05 00 FF 00 0A 00 D4 00 D6 00 D6 00
.byte $D6, $00, $D8, $00, $0F, $10, $14, $D5, $01, $CC, $03, $CB, $03, $D7, $01, $04 ; CPU:$8FA8 PRG:0FA8 D6 00 D8 00 0F 10 14 D5 01 CC 03 CB 03 D7 01 04
.byte $01, $02, $01, $00, $01, $05, $01, $FF, $01, $0A, $01, $D4, $01, $D6, $01, $D6 ; CPU:$8FB8 PRG:0FB8 01 02 01 00 01 05 01 FF 01 0A 01 D4 01 D6 01 D6
.byte $01, $D6, $01, $D8, $01, $0C, $11, $15, $D5, $00, $CC, $02, $CB, $02, $D7, $00 ; CPU:$8FC8 PRG:0FC8 01 D6 01 D8 01 0C 11 15 D5 00 CC 02 CB 02 D7 00
.byte $04, $00, $02, $00, $00, $00, $D4, $00, $D6, $00, $D6, $00, $D6, $00, $D8, $00 ; CPU:$8FD8 PRG:0FD8 04 00 02 00 00 00 D4 00 D6 00 D6 00 D6 00 D8 00
.byte $0C, $11, $16, $D5, $00, $CC, $03, $CB, $03, $D7, $01, $04, $01, $02, $01, $00 ; CPU:$8FE8 PRG:0FE8 0C 11 16 D5 00 CC 03 CB 03 D7 01 04 01 02 01 00
.byte $01, $D4, $01, $D6, $01, $D6, $01, $D6, $01, $D8, $01, $0C, $11, $17, $D5, $00 ; CPU:$8FF8 PRG:0FF8 01 D4 01 D6 01 D6 01 D6 01 D8 01 0C 11 17 D5 00
.byte $CC, $02, $CB, $02, $D7, $00, $04, $00, $02, $00, $00, $00, $D4, $00, $D6, $00 ; CPU:$9008 PRG:1008 CC 02 CB 02 D7 00 04 00 02 00 00 00 D4 00 D6 00
.byte $D6, $00, $D6, $00, $D8, $00, $0C, $11, $18, $D5, $01, $CC, $03, $CB, $03, $D7 ; CPU:$9018 PRG:1018 D6 00 D6 00 D8 00 0C 11 18 D5 01 CC 03 CB 03 D7
.byte $01, $04, $01, $02, $01, $00, $01, $D4, $01, $D6, $01, $D6, $01, $D6, $01, $D8 ; CPU:$9028 PRG:1028 01 04 01 02 01 00 01 D4 01 D6 01 D6 01 D6 01 D8
.byte $01, $0A, $12, $19, $D5, $00, $CC, $02, $CB, $02, $D7, $00, $0A, $01, $D4, $00 ; CPU:$9038 PRG:1038 01 0A 12 19 D5 00 CC 02 CB 02 D7 00 0A 01 D4 00
.byte $D6, $00, $D6, $00, $D6, $00, $D8, $00, $0A, $12, $1A, $D5, $01, $CC, $03, $CB ; CPU:$9048 PRG:1048 D6 00 D6 00 D6 00 D8 00 0A 12 1A D5 01 CC 03 CB
.byte $03, $D7, $01, $0A, $00, $D4, $01, $D6, $01, $D6, $01, $D6, $01, $D8, $01, $0C ; CPU:$9058 PRG:1058 03 D7 01 0A 00 D4 01 D6 01 D6 01 D6 01 D8 01 0C
.byte $11, $15, $D5, $00, $CC, $02, $CB, $02, $D7, $00, $29, $01, $2E, $01, $0A, $01 ; CPU:$9068 PRG:1068 11 15 D5 00 CC 02 CB 02 D7 00 29 01 2E 01 0A 01
.byte $D4, $00, $D6, $00, $D6, $00, $D6, $00, $D8, $00, $0C, $11, $16, $D5, $01, $CC ; CPU:$9078 PRG:1078 D4 00 D6 00 D6 00 D6 00 D8 00 0C 11 16 D5 01 CC
.byte $03, $CB, $03, $D7, $01, $29, $00, $2E, $00, $0A, $00, $D4, $01, $D6, $01, $D6 ; CPU:$9088 PRG:1088 03 CB 03 D7 01 29 00 2E 00 0A 00 D4 01 D6 01 D6
.byte $01, $D6, $01, $D8, $01, $0F, $10, $13, $D5, $00, $CC, $02, $CB, $02, $D7, $00 ; CPU:$9098 PRG:1098 01 D6 01 D8 01 0F 10 13 D5 00 CC 02 CB 02 D7 00
.byte $28, $01, $26, $01, $00, $01, $29, $01, $2E, $01, $0A, $01, $D4, $00, $D6, $00 ; CPU:$90A8 PRG:10A8 28 01 26 01 00 01 29 01 2E 01 0A 01 D4 00 D6 00
.byte $D6, $00, $D6, $00, $D8, $00, $0F, $10, $14, $D5, $01, $CC, $03, $CB, $03, $D7 ; CPU:$90B8 PRG:10B8 D6 00 D6 00 D8 00 0F 10 14 D5 01 CC 03 CB 03 D7
.byte $01, $28, $00, $26, $00, $00, $00, $29, $00, $2E, $00, $0A, $00, $D4, $01, $D6 ; CPU:$90C8 PRG:10C8 01 28 00 26 00 00 00 29 00 2E 00 0A 00 D4 01 D6
.byte $01, $D6, $01, $D6, $01, $D8, $01, $0D, $13, $1B, $D0, $00, $C6, $00, $C6, $00 ; CPU:$90D8 PRG:10D8 01 D6 01 D6 01 D8 01 0D 13 1B D0 00 C6 00 C6 00
.byte $D3, $00, $0B, $01, $2B, $01, $2A, $01, $06, $01, $CF, $00, $D1, $00, $D1, $02 ; CPU:$90E8 PRG:10E8 D3 00 0B 01 2B 01 2A 01 06 01 CF 00 D1 00 D1 02
.byte $D2, $00, $D8, $00, $0D, $13, $1C, $D0, $01, $C6, $01, $C6, $01, $D3, $01, $0B ; CPU:$90F8 PRG:10F8 D2 00 D8 00 0D 13 1C D0 01 C6 01 C6 01 D3 01 0B
.byte $00, $2B, $00, $2A, $00, $06, $00, $CF, $01, $D1, $01, $D1, $03, $D2, $01, $D8 ; CPU:$9108 PRG:1108 00 2B 00 2A 00 06 00 CF 01 D1 01 D1 03 D2 01 D8
.byte $01, $08, $0D, $0F, $C8, $00, $C6, $00, $C6, $00, $C6, $00, $C8, $00, $C6, $00 ; CPU:$9118 PRG:1118 01 08 0D 0F C8 00 C6 00 C6 00 C6 00 C8 00 C6 00
.byte $C7, $00, $C6, $00, $08, $0D, $10, $C8, $01, $C6, $01, $C6, $01, $C6, $01, $C8 ; CPU:$9128 PRG:1128 C7 00 C6 00 08 0D 10 C8 01 C6 01 C6 01 C6 01 C8
.byte $01, $C6, $01, $C7, $01, $C6, $01, $08, $0D, $0F, $CA, $00, $C6, $00, $C6, $00 ; CPU:$9138 PRG:1138 01 C6 01 C7 01 C6 01 08 0D 0F CA 00 C6 00 C6 00
.byte $CE, $00, $C9, $00, $CB, $00, $CC, $00, $CD, $00, $08, $0D, $10, $CA, $01, $C6 ; CPU:$9148 PRG:1148 CE 00 C9 00 CB 00 CC 00 CD 00 08 0D 10 CA 01 C6
.byte $01, $C6, $01, $CE, $01, $C9, $01, $CB, $01, $CC, $01, $CD, $01, $08, $0D, $0F ; CPU:$9158 PRG:1158 01 C6 01 CE 01 C9 01 CB 01 CC 01 CD 01 08 0D 0F
.byte $D0, $00, $C6, $00, $C6, $00, $D3, $00, $CF, $00, $D1, $00, $D1, $02, $D2, $00 ; CPU:$9168 PRG:1168 D0 00 C6 00 C6 00 D3 00 CF 00 D1 00 D1 02 D2 00
.byte $08, $0D, $10, $D0, $01, $C6, $01, $C6, $01, $D3, $01, $CF, $01, $D1, $01, $D1 ; CPU:$9178 PRG:1178 08 0D 10 D0 01 C6 01 C6 01 D3 01 CF 01 D1 01 D1
.byte $03, $D2, $01, $0C, $14, $11, $3A, $00, $38, $00, $36, $00, $3C, $00, $CA, $00 ; CPU:$9188 PRG:1188 03 D2 01 0C 14 11 3A 00 38 00 36 00 3C 00 CA 00
.byte $C6, $00, $C6, $00, $CE, $00, $C9, $00, $CB, $00, $CC, $00, $CD, $00, $0C, $14 ; CPU:$9198 PRG:1198 C6 00 C6 00 CE 00 C9 00 CB 00 CC 00 CD 00 0C 14
.byte $12, $3A, $01, $38, $01, $36, $01, $3C, $01, $CA, $01, $C6, $01, $C6, $01, $CE ; CPU:$91A8 PRG:11A8 12 3A 01 38 01 36 01 3C 01 CA 01 C6 01 C6 01 CE
.byte $01, $C9, $01, $CB, $01, $CC, $01, $CD, $01, $0C, $14, $11, $3A, $00, $38, $00 ; CPU:$91B8 PRG:11B8 01 C9 01 CB 01 CC 01 CD 01 0C 14 11 3A 00 38 00
.byte $36, $00, $3C, $00, $D0, $00, $C6, $00, $C6, $00, $D3, $00, $CF, $00, $D1, $00 ; CPU:$91C8 PRG:11C8 36 00 3C 00 D0 00 C6 00 C6 00 D3 00 CF 00 D1 00
.byte $D1, $02, $D2, $00, $0C, $14, $12, $3A, $01, $38, $01, $36, $01, $3C, $01, $D0 ; CPU:$91D8 PRG:11D8 D1 02 D2 00 0C 14 12 3A 01 38 01 36 01 3C 01 D0
.byte $01, $C6, $01, $C6, $01, $D3, $01, $CF, $01, $D1, $01, $D1, $03, $D2, $01, $0E ; CPU:$91E8 PRG:11E8 01 C6 01 C6 01 D3 01 CF 01 D1 01 D1 03 D2 01 0E
.byte $15, $13, $D5, $00, $CC, $02, $CB, $02, $D7, $00, $34, $00, $32, $00, $30, $00 ; CPU:$91F8 PRG:11F8 15 13 D5 00 CC 02 CB 02 D7 00 34 00 32 00 30 00
.byte $35, $00, $FF, $00, $3B, $00, $D4, $00, $D6, $00, $D6, $00, $D6, $00, $0E, $15 ; CPU:$9208 PRG:1208 35 00 FF 00 3B 00 D4 00 D6 00 D6 00 D6 00 0E 15
.byte $14, $D5, $01, $CC, $03, $CB, $03, $D7, $01, $34, $01, $32, $01, $30, $01, $35 ; CPU:$9218 PRG:1218 14 D5 01 CC 03 CB 03 D7 01 34 01 32 01 30 01 35
.byte $01, $FF, $01, $3B, $01, $D4, $01, $D6, $01, $D6, $01, $D6, $01, $0B, $16, $15 ; CPU:$9228 PRG:1228 01 FF 01 3B 01 D4 01 D6 01 D6 01 D6 01 0B 16 15
.byte $D5, $00, $CC, $02, $CB, $02, $D7, $00, $34, $00, $32, $00, $30, $00, $D4, $00 ; CPU:$9238 PRG:1238 D5 00 CC 02 CB 02 D7 00 34 00 32 00 30 00 D4 00
.byte $D6, $00, $D6, $00, $D6, $00, $0B, $16, $16, $D5, $00, $CC, $03, $CB, $03, $D7 ; CPU:$9248 PRG:1248 D6 00 D6 00 D6 00 0B 16 16 D5 00 CC 03 CB 03 D7
.byte $01, $34, $01, $32, $01, $30, $01, $D4, $01, $D6, $01, $D6, $01, $D6, $01, $0B ; CPU:$9258 PRG:1258 01 34 01 32 01 30 01 D4 01 D6 01 D6 01 D6 01 0B
.byte $16, $17, $D5, $00, $CC, $02, $CB, $02, $D7, $00, $34, $00, $32, $00, $30, $00 ; CPU:$9268 PRG:1268 16 17 D5 00 CC 02 CB 02 D7 00 34 00 32 00 30 00
.byte $D4, $00, $D6, $00, $D6, $00, $D6, $00, $0B, $16, $18, $D5, $01, $CC, $03, $CB ; CPU:$9278 PRG:1278 D4 00 D6 00 D6 00 D6 00 0B 16 18 D5 01 CC 03 CB
.byte $03, $D7, $01, $34, $01, $32, $01, $30, $01, $D4, $01, $D6, $01, $D6, $01, $D6 ; CPU:$9288 PRG:1288 03 D7 01 34 01 32 01 30 01 D4 01 D6 01 D6 01 D6
.byte $01, $09, $17, $19, $D5, $00, $CC, $02, $CB, $02, $D7, $00, $3B, $01, $D4, $00 ; CPU:$9298 PRG:1298 01 09 17 19 D5 00 CC 02 CB 02 D7 00 3B 01 D4 00
.byte $D6, $00, $D6, $00, $D6, $00, $09, $17, $1A, $D5, $01, $CC, $03, $CB, $03, $D7 ; CPU:$92A8 PRG:12A8 D6 00 D6 00 D6 00 09 17 1A D5 01 CC 03 CB 03 D7
.byte $01, $3B, $00, $D4, $01, $D6, $01, $D6, $01, $D6, $01, $0B, $16, $15, $D5, $00 ; CPU:$92B8 PRG:12B8 01 3B 00 D4 01 D6 01 D6 01 D6 01 0B 16 15 D5 00
.byte $CC, $02, $CB, $02, $D7, $00, $35, $01, $FF, $01, $3B, $01, $D4, $00, $D6, $00 ; CPU:$92C8 PRG:12C8 CC 02 CB 02 D7 00 35 01 FF 01 3B 01 D4 00 D6 00
.byte $D6, $00, $D6, $00, $0B, $16, $16, $D5, $01, $CC, $03, $CB, $03, $D7, $01, $35 ; CPU:$92D8 PRG:12D8 D6 00 D6 00 0B 16 16 D5 01 CC 03 CB 03 D7 01 35
.byte $00, $FF, $00, $3B, $00, $D4, $01, $D6, $01, $D6, $01, $D6, $01, $0E, $15, $13 ; CPU:$92E8 PRG:12E8 00 FF 00 3B 00 D4 01 D6 01 D6 01 D6 01 0E 15 13
.byte $D5, $00, $CC, $02, $CB, $02, $D7, $00, $34, $01, $32, $01, $30, $01, $35, $01 ; CPU:$92F8 PRG:12F8 D5 00 CC 02 CB 02 D7 00 34 01 32 01 30 01 35 01
.byte $FF, $01, $3B, $01, $D4, $00, $D6, $00, $D6, $00, $D6, $00, $0E, $15, $14, $D5 ; CPU:$9308 PRG:1308 FF 01 3B 01 D4 00 D6 00 D6 00 D6 00 0E 15 14 D5
.byte $01, $CC, $03, $CB, $03, $D7, $01, $34, $00, $32, $00, $30, $00, $35, $00, $FF ; CPU:$9318 PRG:1318 01 CC 03 CB 03 D7 01 34 00 32 00 30 00 35 00 FF
.byte $00, $3B, $00, $D4, $01, $D6, $01, $D6, $01, $D6, $01, $0C, $18, $1B, $D0, $00 ; CPU:$9328 PRG:1328 00 3B 00 D4 01 D6 01 D6 01 D6 01 0C 18 1B D0 00
.byte $C6, $00, $C6, $00, $D3, $00, $3C, $01, $3A, $01, $38, $01, $36, $01, $CF, $00 ; CPU:$9338 PRG:1338 C6 00 C6 00 D3 00 3C 01 3A 01 38 01 36 01 CF 00
.byte $D1, $00, $D1, $02, $D2, $00, $0C, $18, $1C, $D0, $01, $C6, $01, $C6, $01, $D3 ; CPU:$9348 PRG:1348 D1 00 D1 02 D2 00 0C 18 1C D0 01 C6 01 C6 01 D3
.byte $01, $3C, $00, $3A, $00, $38, $00, $36, $00, $CF, $01, $D1, $01, $D1, $03, $D2 ; CPU:$9358 PRG:1358 01 3C 00 3A 00 38 00 36 00 CF 01 D1 01 D1 03 D2
.byte $01, $A3, $93, $A5, $93, $AD, $93, $B9, $93, $C7, $93, $CB, $93, $D3, $93, $DF ; CPU:$9368 PRG:1368 01 A3 93 A5 93 AD 93 B9 93 C7 93 CB 93 D3 93 DF
.byte $93, $EB, $93, $F9, $93, $0D, $94, $2D, $94, $41, $94, $53, $94, $73, $94, $92 ; CPU:$9378 PRG:1378 93 EB 93 F9 93 0D 94 2D 94 41 94 53 94 73 94 92
.byte $94, $A4, $94, $B6, $94, $D0, $94, $EA, $94, $08, $95, $26, $95, $3E, $95, $56 ; CPU:$9388 PRG:1388 94 A4 94 B6 94 D0 94 EA 94 08 95 26 95 3E 95 56
.byte $95, $6E, $95, $86, $95, $9A, $95, $AE, $95, $C8, $95, $FC, $00, $F0, $00, $F8 ; CPU:$9398 PRG:1398 95 6E 95 86 95 9A 95 AE 95 C8 95 FC 00 F0 00 F8
.byte $00, $00, $00, $08, $00, $F8, $00, $00, $00, $F8, $F8, $00, $F8, $F8, $F0, $00 ; CPU:$93A8 PRG:13A8 00 00 00 08 00 F8 00 00 00 F8 F8 00 F8 F8 F0 00
.byte $F0, $F0, $00, $F8, $00, $00, $00, $08, $00, $F0, $F8, $F8, $F8, $00, $F8, $FC ; CPU:$93B8 PRG:13B8 F0 F0 00 F8 00 00 00 08 00 F0 F8 F8 F8 00 F8 FC
.byte $00, $FC, $F8, $F0, $00, $F8, $00, $00, $00, $08, $00, $F8, $00, $F0, $00, $F0 ; CPU:$93C8 PRG:13C8 00 FC F8 F0 00 F8 00 00 00 08 00 F8 00 F0 00 F0
.byte $F8, $E8, $00, $E8, $F8, $E0, $00, $20, $00, $28, $00, $28, $F8, $30, $00, $30 ; CPU:$93D8 PRG:13D8 F8 E8 00 E8 F8 E0 00 20 00 28 00 28 F8 30 00 30
.byte $F8, $38, $00, $EC, $00, $F4, $00, $FC, $00, $04, $00, $0C, $00, $00, $00, $00 ; CPU:$93E8 PRG:13E8 F8 38 00 EC 00 F4 00 FC 00 04 00 0C 00 00 00 00
.byte $00, $00, $00, $08, $00, $10, $00, $18, $00, $00, $F8, $08, $F8, $10, $F8, $18 ; CPU:$93F8 PRG:13F8 00 00 00 08 00 10 00 18 00 00 F8 08 F8 10 F8 18
.byte $F8, $04, $F8, $0C, $F8, $01, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 ; CPU:$9408 PRG:1408 F8 04 F8 0C F8 01 00 00 00 00 00 00 00 00 00 00
.byte $00, $00, $00, $00, $00, $01, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 ; CPU:$9418 PRG:1418 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00
.byte $00, $00, $00, $00, $00, $00, $00, $08, $00, $10, $00, $18, $00, $00, $F8, $08 ; CPU:$9428 PRG:1428 00 00 00 00 00 00 00 08 00 10 00 18 00 00 F8 08
.byte $F8, $10, $F8, $18, $F8, $0C, $F8, $14, $F8, $F0, $00, $F8, $00, $00, $00, $08 ; CPU:$9438 PRG:1438 F8 10 F8 18 F8 0C F8 14 F8 F0 00 F8 00 00 00 08
.byte $00, $10, $00, $00, $F8, $08, $F8, $10, $F8, $08, $F8, $01, $00, $00, $00, $00 ; CPU:$9448 PRG:1448 00 10 00 00 F8 08 F8 10 F8 08 F8 01 00 00 00 00
.byte $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $01, $00, $00, $00, $00 ; CPU:$9458 PRG:1458 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00
.byte $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $F8, $00, $F0, $00, $E8 ; CPU:$9468 PRG:1468 00 00 00 00 00 00 00 00 00 00 00 F8 00 F0 00 E8
.byte $F8, $E0, $F8, $D8, $F0, $D0, $F0, $C8, $E8, $C0, $E8, $B8, $E0, $B0, $E0, $A8 ; CPU:$9478 PRG:1478 F8 E0 F8 D8 F0 D0 F0 C8 E8 C0 E8 B8 E0 B0 E0 A8
.byte $D8, $A0, $D8, $98, $D0, $90, $D0, $88, $C8, $FF, $08, $02, $08, $FA, $08, $F2 ; CPU:$9488 PRG:1488 D8 A0 D8 98 D0 90 D0 88 C8 FF 08 02 08 FA 08 F2
.byte $08, $EA, $00, $02, $00, $FA, $00, $F2, $00, $EA, $FB, $02, $F0, $02, $F0, $FA ; CPU:$9498 PRG:1498 08 EA 00 02 00 FA 00 F2 00 EA FB 02 F0 02 F0 FA
.byte $F0, $F2, $F0, $EA, $F8, $02, $F8, $FA, $F8, $F2, $F8, $EA, $FD, $02, $F8, $00 ; CPU:$94A8 PRG:14A8 F0 F2 F0 EA F8 02 F8 FA F8 F2 F8 EA FD 02 F8 00
.byte $F8, $F8, $F8, $F0, $00, $F0, $08, $02, $08, $FA, $08, $F2, $08, $EA, $00, $02 ; CPU:$94B8 PRG:14B8 F8 F8 F8 F0 00 F0 08 02 08 FA 08 F2 08 EA 00 02
.byte $00, $FA, $00, $F2, $00, $EA, $FB, $02, $00, $00, $00, $F8, $00, $F0, $F8, $F0 ; CPU:$94C8 PRG:14C8 00 FA 00 F2 00 EA FB 02 00 00 00 F8 00 F0 F8 F0
.byte $F0, $02, $F0, $FA, $F0, $F2, $F0, $EA, $F8, $02, $F8, $FA, $F8, $F2, $F8, $EA ; CPU:$94D8 PRG:14D8 F0 02 F0 FA F0 F2 F0 EA F8 02 F8 FA F8 F2 F8 EA
.byte $FD, $02, $08, $02, $08, $FA, $08, $F2, $08, $EA, $FC, $FF, $FC, $F7, $FC, $EF ; CPU:$94E8 PRG:14E8 FD 02 08 02 08 FA 08 F2 08 EA FC FF FC F7 FC EF
.byte $04, $FF, $04, $F7, $04, $EF, $00, $02, $00, $FA, $00, $F2, $00, $EA, $FB, $02 ; CPU:$94F8 PRG:14F8 04 FF 04 F7 04 EF 00 02 00 FA 00 F2 00 EA FB 02
.byte $F0, $02, $F0, $FA, $F0, $F2, $F0, $EA, $FC, $FF, $FC, $F7, $FC, $EF, $F4, $FF ; CPU:$9508 PRG:1508 F0 02 F0 FA F0 F2 F0 EA FC FF FC F7 FC EF F4 FF
.byte $F4, $F7, $F4, $EF, $F8, $02, $F8, $FA, $F8, $F2, $F8, $EA, $FD, $02, $08, $02 ; CPU:$9518 PRG:1518 F4 F7 F4 EF F8 02 F8 FA F8 F2 F8 EA FD 02 08 02
.byte $08, $FA, $08, $F2, $08, $EA, $00, $FF, $00, $F7, $00, $EF, $00, $02, $00, $FA ; CPU:$9528 PRG:1528 08 FA 08 F2 08 EA 00 FF 00 F7 00 EF 00 02 00 FA
.byte $00, $F2, $00, $EA, $FB, $02, $F0, $02, $F0, $FA, $F0, $F2, $F0, $EA, $F8, $FF ; CPU:$9538 PRG:1538 00 F2 00 EA FB 02 F0 02 F0 FA F0 F2 F0 EA F8 FF
.byte $F8, $F7, $F8, $EF, $F8, $02, $F8, $FA, $F8, $F2, $F8, $EA, $FD, $02, $08, $02 ; CPU:$9548 PRG:1548 F8 F7 F8 EF F8 02 F8 FA F8 F2 F8 EA FD 02 08 02
.byte $08, $FA, $08, $F2, $08, $EA, $03, $FE, $03, $F6, $03, $EE, $00, $02, $00, $FA ; CPU:$9558 PRG:1558 08 FA 08 F2 08 EA 03 FE 03 F6 03 EE 00 02 00 FA
.byte $00, $F2, $00, $EA, $FB, $02, $F0, $02, $F0, $FA, $F0, $F2, $F0, $EA, $F5, $FE ; CPU:$9568 PRG:1568 00 F2 00 EA FB 02 F0 02 F0 FA F0 F2 F0 EA F5 FE
.byte $F5, $F6, $F5, $EE, $F8, $02, $F8, $FA, $F8, $F2, $F8, $EA, $FD, $02, $08, $02 ; CPU:$9578 PRG:1578 F5 F6 F5 EE F8 02 F8 FA F8 F2 F8 EA FD 02 08 02
.byte $08, $FA, $08, $F2, $08, $EA, $03, $EE, $00, $02, $00, $FA, $00, $F2, $00, $EA ; CPU:$9588 PRG:1588 08 FA 08 F2 08 EA 03 EE 00 02 00 FA 00 F2 00 EA
.byte $FB, $02, $F0, $02, $F0, $FA, $F0, $F2, $F0, $EA, $F5, $EE, $F8, $02, $F8, $FA ; CPU:$9598 PRG:1598 FB 02 F0 02 F0 FA F0 F2 F0 EA F5 EE F8 02 F8 FA
.byte $F8, $F2, $F8, $EA, $FD, $02, $08, $02, $08, $FA, $08, $F2, $08, $EA, $F6, $F0 ; CPU:$95A8 PRG:15A8 F8 F2 F8 EA FD 02 08 02 08 FA 08 F2 08 EA F6 F0
.byte $FE, $00, $FE, $F8, $FE, $F0, $00, $02, $00, $FA, $00, $F2, $00, $EA, $FB, $02 ; CPU:$95B8 PRG:15B8 FE 00 FE F8 FE F0 00 02 00 FA 00 F2 00 EA FB 02
.byte $F0, $02, $F0, $FA, $F0, $F2, $F0, $EA, $02, $F0, $FA, $00, $FA, $F8, $FA, $F0 ; CPU:$95C8 PRG:15C8 F0 02 F0 FA F0 F2 F0 EA 02 F0 FA 00 FA F8 FA F0
.byte $F8, $02, $F8, $FA, $F8, $F2, $F8, $EA, $FD, $02, $14, $96, $1C, $96, $24, $96 ; CPU:$95D8 PRG:15D8 F8 02 F8 FA F8 F2 F8 EA FD 02 14 96 1C 96 24 96
.byte $2C, $96, $34, $96, $3C, $96, $44, $96, $4C, $96, $54, $96, $5C, $96, $64, $96 ; CPU:$95E8 PRG:15E8 2C 96 34 96 3C 96 44 96 4C 96 54 96 5C 96 64 96
.byte $6C, $96, $7C, $96, $8C, $96, $9C, $96, $AC, $96, $BC, $96, $BE, $96, $CE, $96 ; CPU:$95F8 PRG:15F8 6C 96 7C 96 8C 96 9C 96 AC 96 BC 96 BE 96 CE 96
.byte $DE, $96, $EE, $96, $FE, $96, $0E, $97, $1E, $97, $2E, $97, $00, $00, $00, $00 ; CPU:$9608 PRG:1608 DE 96 EE 96 FE 96 0E 97 1E 97 2E 97 00 00 00 00
.byte $00, $00, $00, $00, $01, $01, $01, $01, $01, $01, $01, $01, $00, $00, $00, $00 ; CPU:$9618 PRG:1618 00 00 00 00 01 01 01 01 01 01 01 01 00 00 00 00
.byte $00, $01, $00, $00, $00, $00, $00, $00, $01, $00, $00, $00, $00, $00, $00, $01 ; CPU:$9628 PRG:1628 00 01 00 00 00 00 00 00 01 00 00 00 00 00 00 01
.byte $00, $00, $00, $00, $00, $00, $01, $00, $00, $00, $00, $00, $00, $01, $00, $00 ; CPU:$9638 PRG:1638 00 00 00 00 00 00 01 00 00 00 00 00 00 01 00 00
.byte $00, $00, $00, $00, $01, $00, $00, $00, $00, $00, $00, $00, $02, $02, $02, $02 ; CPU:$9648 PRG:1648 00 00 00 00 01 00 00 00 00 00 00 00 02 02 02 02
.byte $02, $02, $02, $02, $03, $03, $03, $03, $03, $03, $01, $00, $03, $00, $00, $00 ; CPU:$9658 PRG:1658 02 02 02 02 03 03 03 03 03 03 01 00 03 00 00 00
.byte $00, $00, $00, $00, $03, $03, $03, $03, $03, $03, $03, $03, $01, $00, $00, $00 ; CPU:$9668 PRG:1668 00 00 00 00 03 03 03 03 03 03 03 03 01 00 00 00
.byte $00, $00, $00, $00, $03, $03, $03, $03, $03, $03, $03, $03, $00, $01, $00, $00 ; CPU:$9678 PRG:1678 00 00 00 00 03 03 03 03 03 03 03 03 00 01 00 00
.byte $00, $00, $00, $00, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02 ; CPU:$9688 PRG:1688 00 00 00 00 02 02 02 02 02 02 02 02 02 02 02 02
.byte $02, $02, $02, $02, $03, $03, $03, $03, $03, $03, $03, $03, $03, $03, $03, $03 ; CPU:$9698 PRG:1698 02 02 02 02 03 03 03 03 03 03 03 03 03 03 03 03
.byte $03, $03, $03, $03, $00, $00, $00, $01, $03, $03, $03, $03, $03, $03, $03, $03 ; CPU:$96A8 PRG:16A8 03 03 03 03 00 00 00 01 03 03 03 03 03 03 03 03
.byte $03, $03, $03, $03, $03, $03, $03, $03, $03, $03, $00, $00, $01, $03, $03, $03 ; CPU:$96B8 PRG:16B8 03 03 03 03 03 03 03 03 03 03 00 00 01 03 03 03
.byte $03, $03, $03, $03, $03, $03, $03, $03, $03, $03, $01, $03, $03, $03, $03, $03 ; CPU:$96C8 PRG:16C8 03 03 03 03 03 03 03 03 03 03 01 03 03 03 03 03
.byte $03, $03, $03, $03, $03, $03, $03, $03, $03, $03, $01, $00, $00, $00, $03, $03 ; CPU:$96D8 PRG:16D8 03 03 03 03 03 03 03 03 03 03 01 00 00 00 03 03
.byte $03, $03, $03, $03, $03, $03, $01, $01, $01, $01, $02, $02, $02, $02, $02, $02 ; CPU:$96E8 PRG:16E8 03 03 03 03 03 03 01 01 01 01 02 02 02 02 02 02
.byte $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $01, $01 ; CPU:$96F8 PRG:16F8 02 02 02 02 02 02 02 02 02 02 01 01 01 01 01 01
.byte $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $02, $02, $02 ; CPU:$9708 PRG:1708 02 02 02 02 02 02 02 02 02 02 01 01 01 02 02 02
.byte $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $02, $02, $02, $02, $02 ; CPU:$9718 PRG:1718 02 02 02 02 02 02 02 02 02 02 01 02 02 02 02 02
.byte $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $01, $01, $01, $01, $02, $02 ; CPU:$9728 PRG:1728 02 02 02 02 02 02 02 02 02 02 01 01 01 01 02 02
.byte $02, $02, $02, $02, $02, $02 ; CPU:$9738 PRG:1738 02 02 02 02 02 02
; -----------------------------------------------------------------------------
; Routine: Sub_973E
; Global: Branch target inside Label: taken when 973E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_973E:
lda #$FF ; CPU:$973E PRG:173E A9 FF
sta ZpFA ; CPU:$9740 PRG:1740 85 FA
lda Zp88 ; CPU:$9742 PRG:1742 A5 88
and #$7F ; CPU:$9744 PRG:1744 29 7F
sta Zp88 ; CPU:$9746 PRG:1746 85 88
sta PPUCTRL ; CPU:$9748 PRG:1748 8D 00 20
lda #$00 ; CPU:$974B PRG:174B A9 00
sta PPUMASK ; CPU:$974D PRG:174D 8D 01 20
lda PPUSTATUS ; CPU:$9750 PRG:1750 AD 02 20
lda Zp72 ; CPU:$9753 PRG:1753 A5 72
sta PPUADDR ; CPU:$9755 PRG:1755 8D 06 20
lda Zp71 ; CPU:$9758 PRG:1758 A5 71
sta PPUADDR ; CPU:$975A PRG:175A 8D 06 20
ldy #$00 ; CPU:$975D PRG:175D A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero9
; Global: Branch target inside Label: taken when 975F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero9:
lda (Zp73),y ; CPU:$975F PRG:175F B1 73
sta PPUDATA ; CPU:$9761 PRG:1761 8D 07 20
iny ; CPU:$9764 PRG:1764 C8
dec Zp70 ; CPU:$9765 PRG:1765 C6 70
bne NmiHandler_OnNonzero9 ; CPU:$9767 PRG:1767 D0 F6
lda Zp88 ; CPU:$9769 PRG:1769 A5 88
ora #$80 ; CPU:$976B PRG:176B 09 80
sta Zp88 ; CPU:$976D PRG:176D 85 88
sta PPUCTRL ; CPU:$976F PRG:176F 8D 00 20
lda #$00 ; CPU:$9772 PRG:1772 A9 00
sta ZpFA ; CPU:$9774 PRG:1774 85 FA
rts ; CPU:$9776 PRG:1776 60
; -----------------------------------------------------------------------------
; Routine: Sub_9777
; Global: Branch target inside Label: taken when 9777.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9777:
lda #$20 ; CPU:$9777 PRG:1777 A9 20
sta Zp70 ; CPU:$9779 PRG:1779 85 70
lda #$3F ; CPU:$977B PRG:177B A9 3F
sta Zp72 ; CPU:$977D PRG:177D 85 72
lda #$00 ; CPU:$977F PRG:177F A9 00
sta Zp71 ; CPU:$9781 PRG:1781 85 71
jmp Sub_973E ; CPU:$9783 PRG:1783 4C 3E 97
; -----------------------------------------------------------------------------
; Routine: Sub_9786
; Global: Branch target inside Label: taken when 9786.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9786:
lda #$FF ; CPU:$9786 PRG:1786 A9 FF
sta ZpFA ; CPU:$9788 PRG:1788 85 FA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero10
; Global: Branch target inside Label: taken when 978A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero10:
ldy #$00 ; CPU:$978A PRG:178A A0 00
lda Zp74 ; CPU:$978C PRG:178C A5 74
sta (Zp7E),y ; CPU:$978E PRG:178E 91 7E
inc Zp7E ; CPU:$9790 PRG:1790 E6 7E
lda Zp73 ; CPU:$9792 PRG:1792 A5 73
sta (Zp7E),y ; CPU:$9794 PRG:1794 91 7E
inc Zp7E ; CPU:$9796 PRG:1796 E6 7E
lda Zp72 ; CPU:$9798 PRG:1798 A5 72
sta (Zp7E),y ; CPU:$979A PRG:179A 91 7E
inc Zp7E ; CPU:$979C PRG:179C E6 7E
lda Zp71 ; CPU:$979E PRG:179E A5 71
sta (Zp7E),y ; CPU:$97A0 PRG:17A0 91 7E
inc Zp7E ; CPU:$97A2 PRG:17A2 E6 7E
lda #$20 ; CPU:$97A4 PRG:17A4 A9 20
clc ; CPU:$97A6 PRG:17A6 18
adc Zp71 ; CPU:$97A7 PRG:17A7 65 71
sta Zp71 ; CPU:$97A9 PRG:17A9 85 71
lda #$00 ; CPU:$97AB PRG:17AB A9 00
adc Zp72 ; CPU:$97AD PRG:17AD 65 72
sta Zp72 ; CPU:$97AF PRG:17AF 85 72
lda #$03 ; CPU:$97B1 PRG:17B1 A9 03
clc ; CPU:$97B3 PRG:17B3 18
adc Zp73 ; CPU:$97B4 PRG:17B4 65 73
sta Zp73 ; CPU:$97B6 PRG:17B6 85 73
lda #$00 ; CPU:$97B8 PRG:17B8 A9 00
adc Zp74 ; CPU:$97BA PRG:17BA 65 74
sta Zp74 ; CPU:$97BC PRG:17BC 85 74
lda Zp72 ; CPU:$97BE PRG:17BE A5 72
cmp #$23 ; CPU:$97C0 PRG:17C0 C9 23
bne NmiHandler_Loop33 ; CPU:$97C2 PRG:17C2 D0 17
lda Zp71 ; CPU:$97C4 PRG:17C4 A5 71
cmp #$C0 ; CPU:$97C6 PRG:17C6 C9 C0
bcc NmiHandler_Loop33 ; CPU:$97C8 PRG:17C8 90 11
lda #$3F ; CPU:$97CA PRG:17CA A9 3F
adc Zp71 ; CPU:$97CC PRG:17CC 65 71
sta Zp71 ; CPU:$97CE PRG:17CE 85 71
lda #$00 ; CPU:$97D0 PRG:17D0 A9 00
adc Zp72 ; CPU:$97D2 PRG:17D2 65 72
ora #$08 ; CPU:$97D4 PRG:17D4 09 08
sta Zp72 ; CPU:$97D6 PRG:17D6 85 72
jmp NmiHandler_Loop34 ; CPU:$97D8 PRG:17D8 4C F3 97
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop33
; Global: Branch target inside Label: taken when 97DB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop33:
cmp #$2B ; CPU:$97DB PRG:17DB C9 2B
bne NmiHandler_Loop34 ; CPU:$97DD PRG:17DD D0 14
lda Zp71 ; CPU:$97DF PRG:17DF A5 71
cmp #$C0 ; CPU:$97E1 PRG:17E1 C9 C0
bcc NmiHandler_Loop34 ; CPU:$97E3 PRG:17E3 90 0E
lda #$3F ; CPU:$97E5 PRG:17E5 A9 3F
adc Zp71 ; CPU:$97E7 PRG:17E7 65 71
sta Zp71 ; CPU:$97E9 PRG:17E9 85 71
lda #$00 ; CPU:$97EB PRG:17EB A9 00
adc Zp72 ; CPU:$97ED PRG:17ED 65 72
and #$23 ; CPU:$97EF PRG:17EF 29 23
sta Zp72 ; CPU:$97F1 PRG:17F1 85 72
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop34
; Global: Branch target inside Label: taken when 97F3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop34:
dec Zp6F ; CPU:$97F3 PRG:17F3 C6 6F
bne NmiHandler_OnNonzero10 ; CPU:$97F5 PRG:17F5 D0 93
lda #$00 ; CPU:$97F7 PRG:17F7 A9 00
sta (Zp7E),y ; CPU:$97F9 PRG:17F9 91 7E
sta ZpFA ; CPU:$97FB PRG:17FB 85 FA
rts ; CPU:$97FD PRG:17FD 60
; -----------------------------------------------------------------------------
; Routine: Sub_97FE
; Global: Branch target inside Label: taken when 97FE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_97FE:
lda ZpC8,x ; CPU:$97FE PRG:17FE B5 C8
clc ; CPU:$9800 PRG:1800 18
adc ZpD9,x ; CPU:$9801 PRG:1801 75 D9
adc ZpD9,x ; CPU:$9803 PRG:1803 75 D9
; -----------------------------------------------------------------------------
; Routine: Sub_9805
; Global: Branch target inside Label: taken when 9805.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9805:
sta Zp6F ; CPU:$9805 PRG:1805 85 6F
lda ZpE5,x ; CPU:$9807 PRG:1807 B5 E5
clc ; CPU:$9809 PRG:1809 18
asl a ; CPU:$980A PRG:180A 0A
asl a ; CPU:$980B PRG:180B 0A
adc ZpE5,x ; CPU:$980C PRG:180C 75 E5
clc ; CPU:$980E PRG:180E 18
adc #$A1 ; CPU:$980F PRG:180F 69 A1
sta Zp73 ; CPU:$9811 PRG:1811 85 73
lda #$9C ; CPU:$9813 PRG:1813 A9 9C
adc #$00 ; CPU:$9815 PRG:1815 69 00
sta Zp74 ; CPU:$9817 PRG:1817 85 74
ldy #$00 ; CPU:$9819 PRG:1819 A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero11
; Global: Branch target inside Label: taken when 981B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero11:
lda (Zp73),y ; CPU:$981B PRG:181B B1 73
bmi NmiHandler_Loop36 ; CPU:$981D PRG:181D 30 27
sty Zp70 ; CPU:$981F PRG:181F 84 70
sta $03D7,x ; CPU:$9821 PRG:1821 9D D7 03
asl a ; CPU:$9824 PRG:1824 0A
clc ; CPU:$9825 PRG:1825 18
adc #$41 ; CPU:$9826 PRG:1826 69 41
sta Zp71 ; CPU:$9828 PRG:1828 85 71
lda #$9D ; CPU:$982A PRG:182A A9 9D
adc #$00 ; CPU:$982C PRG:182C 69 00
sta Zp72 ; CPU:$982E PRG:182E 85 72
lda Zp6F ; CPU:$9830 PRG:1830 A5 6F
ldy #$00 ; CPU:$9832 PRG:1832 A0 00
cmp (Zp71),y ; CPU:$9834 PRG:1834 D1 71
bcc NmiHandler_Loop35 ; CPU:$9836 PRG:1836 90 07
iny ; CPU:$9838 PRG:1838 C8
cmp (Zp71),y ; CPU:$9839 PRG:1839 D1 71
bcs NmiHandler_Loop35 ; CPU:$983B PRG:183B B0 02
sec ; CPU:$983D PRG:183D 38
rts ; CPU:$983E PRG:183E 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop35
; Global: Branch target inside Label: taken when 983F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop35:
ldy Zp70 ; CPU:$983F PRG:183F A4 70
iny ; CPU:$9841 PRG:1841 C8
cpy #$05 ; CPU:$9842 PRG:1842 C0 05
bne NmiHandler_OnNonzero11 ; CPU:$9844 PRG:1844 D0 D5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop36
; Global: Branch target inside Label: taken when 9846.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop36:
clc ; CPU:$9846 PRG:1846 18
rts ; CPU:$9847 PRG:1847 60
; -----------------------------------------------------------------------------
; Routine: Sub_9848
; Global: Branch target inside Label: taken when 9848.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9848:
lda ZpE5,x ; CPU:$9848 PRG:1848 B5 E5
cmp #$00 ; CPU:$984A PRG:184A C9 00
beq NmiHandler_Loop40 ; CPU:$984C PRG:184C F0 3A
cmp #$0B ; CPU:$984E PRG:184E C9 0B
beq NmiHandler_Loop38 ; CPU:$9850 PRG:1850 F0 1E
bcs NmiHandler_Loop37 ; CPU:$9852 PRG:1852 B0 0C
lda ZpC8,x ; CPU:$9854 PRG:1854 B5 C8
cmp #$28 ; CPU:$9856 PRG:1856 C9 28
bcc NmiHandler_OnCarryClear ; CPU:$9858 PRG:1858 90 20
cmp #$D0 ; CPU:$985A PRG:185A C9 D0
bcs NmiHandler_OnCarryClear ; CPU:$985C PRG:185C B0 1C
clc ; CPU:$985E PRG:185E 18
rts ; CPU:$985F PRG:185F 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop37
; Global: Branch target inside Label: taken when 9860.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop37:
cmp #$0D ; CPU:$9860 PRG:1860 C9 0D
bne NmiHandler_Loop39 ; CPU:$9862 PRG:1862 D0 18
lda ZpC8,x ; CPU:$9864 PRG:1864 B5 C8
cmp #$74 ; CPU:$9866 PRG:1866 C9 74
bcc NmiHandler_Loop39 ; CPU:$9868 PRG:1868 90 12
cmp #$84 ; CPU:$986A PRG:186A C9 84
bcs NmiHandler_Loop39 ; CPU:$986C PRG:186C B0 0E
sec ; CPU:$986E PRG:186E 38
rts ; CPU:$986F PRG:186F 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop38
; Global: Branch target inside Label: taken when 9870.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop38:
lda ZpC8,x ; CPU:$9870 PRG:1870 B5 C8
cmp #$A4 ; CPU:$9872 PRG:1872 C9 A4
bcc NmiHandler_Loop39 ; CPU:$9874 PRG:1874 90 06
cmp #$B4 ; CPU:$9876 PRG:1876 C9 B4
bcs NmiHandler_Loop39 ; CPU:$9878 PRG:1878 B0 02
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear
; Global: Branch target inside Label: taken when 987A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear:
sec ; CPU:$987A PRG:187A 38
rts ; CPU:$987B PRG:187B 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop39
; Global: Branch target inside Label: taken when 987C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop39:
lda ZpC8,x ; CPU:$987C PRG:187C B5 C8
cmp #$08 ; CPU:$987E PRG:187E C9 08
bcc NmiHandler_OnCarryClear ; CPU:$9880 PRG:1880 90 F8
cmp #$F8 ; CPU:$9882 PRG:1882 C9 F8
bcs NmiHandler_OnCarryClear ; CPU:$9884 PRG:1884 B0 F4
clc ; CPU:$9886 PRG:1886 18
rts ; CPU:$9887 PRG:1887 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop40
; Global: Branch target inside Label: taken when 9888.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop40:
lda ZpC8,x ; CPU:$9888 PRG:1888 B5 C8
cmp #$70 ; CPU:$988A PRG:188A C9 70
bcc NmiHandler_OnCarryClear ; CPU:$988C PRG:188C 90 EC
cmp #$88 ; CPU:$988E PRG:188E C9 88
rts ; CPU:$9890 PRG:1890 60
; -----------------------------------------------------------------------------
; Routine: Sub_9891
; Global: Branch target inside Label: taken when 9891.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9891:
ldy $03D7,x ; CPU:$9891 PRG:1891 BC D7 03
; -----------------------------------------------------------------------------
; Routine: Sub_9894
; Global: Branch target inside Label: taken when 9894.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9894:
lda $0422,y ; CPU:$9894 PRG:1894 B9 22 04
cmp ZpE5,x ; CPU:$9897 PRG:1897 D5 E5
bcc NmiHandler_Loop41 ; CPU:$9899 PRG:1899 90 20
beq NmiHandler_Loop42 ; CPU:$989B PRG:189B F0 36
lda $047D,y ; CPU:$989D PRG:189D B9 7D 04
sec ; CPU:$98A0 PRG:18A0 38
sbc $039D,x ; CPU:$98A1 PRG:18A1 FD 9D 03
sta Zp71 ; CPU:$98A4 PRG:18A4 85 71
lda $048A,y ; CPU:$98A6 PRG:18A6 B9 8A 04
sbc $03AE,x ; CPU:$98A9 PRG:18A9 FD AE 03
bne NmiHandler_Loop43 ; CPU:$98AC PRG:18AC D0 37
lda Zp71 ; CPU:$98AE PRG:18AE A5 71
cmp #$2A ; CPU:$98B0 PRG:18B0 C9 2A
bcc NmiHandler_Loop45 ; CPU:$98B2 PRG:18B2 90 46
cmp #$38 ; CPU:$98B4 PRG:18B4 C9 38
bcs NmiHandler_Loop43 ; CPU:$98B6 PRG:18B6 B0 2D
jmp Sub_9902 ; CPU:$98B8 PRG:18B8 4C 02 99
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop41
; Global: Branch target inside Label: taken when 98BB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop41:
lda $039D,x ; CPU:$98BB PRG:18BB BD 9D 03
sec ; CPU:$98BE PRG:18BE 38
sbc $047D,y ; CPU:$98BF PRG:18BF F9 7D 04
sta Zp71 ; CPU:$98C2 PRG:18C2 85 71
lda $039D,x ; CPU:$98C4 PRG:18C4 BD 9D 03
sbc $047D,y ; CPU:$98C7 PRG:18C7 F9 7D 04
bne NmiHandler_Loop43 ; CPU:$98CA PRG:18CA D0 19
cmp #$18 ; CPU:$98CC PRG:18CC C9 18
bcc NmiHandler_Loop45 ; CPU:$98CE PRG:18CE 90 2A
jmp NmiHandler_Loop43 ; CPU:$98D0 PRG:18D0 4C E5 98
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop42
; Global: Branch target inside Label: taken when 98D3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop42:
lda $047D,y ; CPU:$98D3 PRG:18D3 B9 7D 04
sec ; CPU:$98D6 PRG:18D6 38
sbc $039D,x ; CPU:$98D7 PRG:18D7 FD 9D 03
cmp #$FC ; CPU:$98DA PRG:18DA C9 FC
bcs NmiHandler_Loop46 ; CPU:$98DC PRG:18DC B0 20
cmp #$10 ; CPU:$98DE PRG:18DE C9 10
bcs NmiHandler_Loop45 ; CPU:$98E0 PRG:18E0 B0 18
jmp NmiHandler_Loop46 ; CPU:$98E2 PRG:18E2 4C FE 98
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop43
; Global: Branch target inside Label: taken when 98E5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop43:
lda $03FB,y ; CPU:$98E5 PRG:18E5 B9 FB 03
and #$04 ; CPU:$98E8 PRG:18E8 29 04
beq NmiHandler_Loop44 ; CPU:$98EA PRG:18EA F0 0A
lda $04BE,y ; CPU:$98EC PRG:18EC B9 BE 04
tay ; CPU:$98EF PRG:18EF A8
sta $03D7,x ; CPU:$98F0 PRG:18F0 9D D7 03
jmp Sub_9894 ; CPU:$98F3 PRG:18F3 4C 94 98
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop44
; Global: Branch target inside Label: taken when 98F6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop44:
clc ; CPU:$98F6 PRG:18F6 18
lda #$00 ; CPU:$98F7 PRG:18F7 A9 00
rts ; CPU:$98F9 PRG:18F9 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop45
; Global: Branch target inside Label: taken when 98FA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop45:
clc ; CPU:$98FA PRG:18FA 18
lda #$01 ; CPU:$98FB PRG:18FB A9 01
rts ; CPU:$98FD PRG:18FD 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop46
; Global: Branch target inside Label: taken when 98FE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop46:
sec ; CPU:$98FE PRG:18FE 38
lda #$00 ; CPU:$98FF PRG:18FF A9 00
rts ; CPU:$9901 PRG:1901 60
; -----------------------------------------------------------------------------
; Routine: Sub_9902
; Global: Branch target inside Label: taken when 9902.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9902:
sec ; CPU:$9902 PRG:1902 38
lda #$01 ; CPU:$9903 PRG:1903 A9 01
rts ; CPU:$9905 PRG:1905 60
; -----------------------------------------------------------------------------
; Routine: Sub_9906
; Global: Branch target inside Label: taken when 9906.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9906:
lda ZpC8,x ; CPU:$9906 PRG:1906 B5 C8
jsr Sub_9805 ; CPU:$9908 PRG:1908 20 05 98
bcc NmiHandler_Loop48 ; CPU:$990B PRG:190B 90 28
ldy $03D7,x ; CPU:$990D PRG:190D BC D7 03
lda $04A4,y ; CPU:$9910 PRG:1910 B9 A4 04
jsr Sub_99BD ; CPU:$9913 PRG:1913 20 BD 99
cmp #$01 ; CPU:$9916 PRG:1916 C9 01
beq NmiHandler_Loop47 ; CPU:$9918 PRG:1918 F0 17
jsr Sub_9956 ; CPU:$991A PRG:191A 20 56 99
cmp #$00 ; CPU:$991D PRG:191D C9 00
bne NmiHandler_Loop47 ; CPU:$991F PRG:191F D0 10
jsr Sub_97FE ; CPU:$9921 PRG:1921 20 FE 97
bcs NmiHandler_OnNonzero12 ; CPU:$9924 PRG:1924 B0 09
lda ZpE5,x ; CPU:$9926 PRG:1926 B5 E5
jsr Sub_99BD ; CPU:$9928 PRG:1928 20 BD 99
cmp #$01 ; CPU:$992B PRG:192B C9 01
beq NmiHandler_OnZero ; CPU:$992D PRG:192D F0 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero12
; Global: Branch target inside Label: taken when 992F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero12:
lda #$00 ; CPU:$992F PRG:192F A9 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop47
; Global: Branch target inside Label: taken when 9931.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop47:
rts ; CPU:$9931 PRG:1931 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero
; Global: Branch target inside Label: taken when 9932.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero:
lda #$02 ; CPU:$9932 PRG:1932 A9 02
rts ; CPU:$9934 PRG:1934 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop48
; Global: Branch target inside Label: taken when 9935.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop48:
jsr Sub_DBEE ; CPU:$9935 PRG:1935 20 EE DB
lda ZpE5,x ; CPU:$9938 PRG:1938 B5 E5
jsr Sub_99BD ; CPU:$993A PRG:193A 20 BD 99
cmp #$00 ; CPU:$993D PRG:193D C9 00
bne NmiHandler_Loop47 ; CPU:$993F PRG:193F D0 F0
jsr Sub_97FE ; CPU:$9941 PRG:1941 20 FE 97
bcc NmiHandler_OnNonzero12 ; CPU:$9944 PRG:1944 90 E9
ldy $03D7,x ; CPU:$9946 PRG:1946 BC D7 03
jsr Sub_9956 ; CPU:$9949 PRG:1949 20 56 99
cmp #$02 ; CPU:$994C PRG:194C C9 02
beq NmiHandler_OnZero ; CPU:$994E PRG:194E F0 E2
cmp #$01 ; CPU:$9950 PRG:1950 C9 01
beq NmiHandler_OnZero ; CPU:$9952 PRG:1952 F0 DE
bne NmiHandler_OnNonzero12 ; CPU:$9954 PRG:1954 D0 D9
; -----------------------------------------------------------------------------
; Routine: Sub_9956
; Global: Branch target inside Label: taken when 9956.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9956:
lda $047D,y ; CPU:$9956 PRG:1956 B9 7D 04
sec ; CPU:$9959 PRG:1959 38
sbc $039D,x ; CPU:$995A PRG:195A FD 9D 03
sta Zp73 ; CPU:$995D PRG:195D 85 73
lda $048A,y ; CPU:$995F PRG:195F B9 8A 04
sbc $03AE,x ; CPU:$9962 PRG:1962 FD AE 03
beq NmiHandler_Loop51 ; CPU:$9965 PRG:1965 F0 25
cmp #$FF ; CPU:$9967 PRG:1967 C9 FF
beq NmiHandler_Loop50 ; CPU:$9969 PRG:1969 F0 19
cmp #$00 ; CPU:$996B PRG:196B C9 00
bmi NmiHandler_Loop52 ; CPU:$996D PRG:196D 30 31
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarrySet
; Global: Branch target inside Label: taken when 996F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarrySet:
lda $03D7,x ; CPU:$996F PRG:196F BD D7 03
cmp #$0B ; CPU:$9972 PRG:1972 C9 0B
bcc NmiHandler_Loop49 ; CPU:$9974 PRG:1974 90 04
tay ; CPU:$9976 PRG:1976 A8
lda $04BE,y ; CPU:$9977 PRG:1977 B9 BE 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop49
; Global: Branch target inside Label: taken when 997A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop49:
asl a ; CPU:$997A PRG:197A 0A
tay ; CPU:$997B PRG:197B A8
iny ; CPU:$997C PRG:197C C8
jsr Sub_9A66 ; CPU:$997D PRG:197D 20 66 9A
bcs NmiHandler_OnCarryClear2 ; CPU:$9980 PRG:1980 B0 35
bcc NmiHandler_Loop53 ; CPU:$9982 PRG:1982 90 2D
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop50
; Global: Branch target inside Label: taken when 9984.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop50:
lda Zp73 ; CPU:$9984 PRG:1984 A5 73
cmp #$E8 ; CPU:$9986 PRG:1986 C9 E8
bcc NmiHandler_Loop52 ; CPU:$9988 PRG:1988 90 16
bcs NmiHandler_Loop54 ; CPU:$998A PRG:198A B0 28
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop51
; Global: Branch target inside Label: taken when 998C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop51:
lda Zp73 ; CPU:$998C PRG:198C A5 73
cmp #$06 ; CPU:$998E PRG:198E C9 06
bcc NmiHandler_Loop55 ; CPU:$9990 PRG:1990 90 28
cmp #$1E ; CPU:$9992 PRG:1992 C9 1E
bcc NmiHandler_Loop53 ; CPU:$9994 PRG:1994 90 1B
cmp #$2C ; CPU:$9996 PRG:1996 C9 2C
bcc NmiHandler_Loop54 ; CPU:$9998 PRG:1998 90 1A
cmp #$30 ; CPU:$999A PRG:199A C9 30
bcc NmiHandler_Loop55 ; CPU:$999C PRG:199C 90 1C
bcs NmiHandler_OnCarrySet ; CPU:$999E PRG:199E B0 CF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop52
; Global: Branch target inside Label: taken when 99A0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop52:
lda $03FB,y ; CPU:$99A0 PRG:19A0 B9 FB 03
and #$04 ; CPU:$99A3 PRG:19A3 29 04
beq NmiHandler_Loop53 ; CPU:$99A5 PRG:19A5 F0 0A
lda $04BE,y ; CPU:$99A7 PRG:19A7 B9 BE 04
tay ; CPU:$99AA PRG:19AA A8
sta $03D7,x ; CPU:$99AB PRG:19AB 9D D7 03
jmp Sub_9956 ; CPU:$99AE PRG:19AE 4C 56 99
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop53
; Global: Branch target inside Label: taken when 99B1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop53:
lda #$00 ; CPU:$99B1 PRG:19B1 A9 00
rts ; CPU:$99B3 PRG:19B3 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop54
; Global: Branch target inside Label: taken when 99B4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop54:
lda #$01 ; CPU:$99B4 PRG:19B4 A9 01
rts ; CPU:$99B6 PRG:19B6 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear2
; Global: Branch target inside Label: taken when 99B7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear2:
lda #$02 ; CPU:$99B7 PRG:19B7 A9 02
rts ; CPU:$99B9 PRG:19B9 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop55
; Global: Branch target inside Label: taken when 99BA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop55:
lda #$03 ; CPU:$99BA PRG:19BA A9 03
rts ; CPU:$99BC PRG:19BC 60
; -----------------------------------------------------------------------------
; Routine: Sub_99BD
; Global: Branch target inside Label: taken when 99BD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_99BD:
jsr Sub_9A0B ; CPU:$99BD PRG:19BD 20 0B 9A
lda $039D,x ; CPU:$99C0 PRG:19C0 BD 9D 03
sec ; CPU:$99C3 PRG:19C3 38
sbc Zp73 ; CPU:$99C4 PRG:19C4 E5 73
sta Zp73 ; CPU:$99C6 PRG:19C6 85 73
lda $03AE,x ; CPU:$99C8 PRG:19C8 BD AE 03
sbc Zp74 ; CPU:$99CB PRG:19CB E5 74
beq NmiHandler_Loop56 ; CPU:$99CD PRG:19CD F0 10
cmp #$FF ; CPU:$99CF PRG:19CF C9 FF
bne NmiHandler_Loop53 ; CPU:$99D1 PRG:19D1 D0 DE
lda Zp73 ; CPU:$99D3 PRG:19D3 A5 73
cmp #$FA ; CPU:$99D5 PRG:19D5 C9 FA
bcs NmiHandler_Loop55 ; CPU:$99D7 PRG:19D7 B0 E1
cmp #$EB ; CPU:$99D9 PRG:19D9 C9 EB
bcs NmiHandler_Loop53 ; CPU:$99DB PRG:19DB B0 D4
bcc NmiHandler_Loop54 ; CPU:$99DD PRG:19DD 90 D5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop56
; Global: Branch target inside Label: taken when 99DF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop56:
lda Zp73 ; CPU:$99DF PRG:19DF A5 73
cmp #$14 ; CPU:$99E1 PRG:19E1 C9 14
bcc NmiHandler_OnCarryClear2 ; CPU:$99E3 PRG:19E3 90 D2
bcs NmiHandler_Loop53 ; CPU:$99E5 PRG:19E5 B0 CA
; -----------------------------------------------------------------------------
; Routine: Sub_99E7
; Global: Branch target inside Label: taken when 99E7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_99E7:
lda ZpE5,x ; CPU:$99E7 PRG:19E7 B5 E5
jsr Sub_9A0B ; CPU:$99E9 PRG:19E9 20 0B 9A
lda Zp73 ; CPU:$99EC PRG:19EC A5 73
sta $039D,x ; CPU:$99EE PRG:19EE 9D 9D 03
lda Zp74 ; CPU:$99F1 PRG:19F1 A5 74
sta $03AE,x ; CPU:$99F3 PRG:19F3 9D AE 03
rts ; CPU:$99F6 PRG:19F6 60
; -----------------------------------------------------------------------------
; Routine: Sub_99F7
; Global: Branch target inside Label: taken when 99F7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_99F7:
lda $0422,x ; CPU:$99F7 PRG:19F7 BD 22 04
jsr Sub_9A0B ; CPU:$99FA PRG:19FA 20 0B 9A
lda Zp73 ; CPU:$99FD PRG:19FD A5 73
sta $047D,x ; CPU:$99FF PRG:19FF 9D 7D 04
lda Zp74 ; CPU:$9A02 PRG:1A02 A5 74
sta $048A,x ; CPU:$9A04 PRG:1A04 9D 8A 04
rts ; CPU:$9A07 PRG:1A07 60
; -----------------------------------------------------------------------------
; Routine: Sub_9A08
; Global: Branch target inside Label: taken when 9A08.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9A08:
lda $058F ; CPU:$9A08 PRG:1A08 AD 8F 05
; -----------------------------------------------------------------------------
; Routine: Sub_9A0B
; Global: Branch target inside Label: taken when 9A0B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9A0B:
sta Zp73 ; CPU:$9A0B PRG:1A0B 85 73
lda #$00 ; CPU:$9A0D PRG:1A0D A9 00
sta Zp74 ; CPU:$9A0F PRG:1A0F 85 74
asl Zp73 ; CPU:$9A11 PRG:1A11 06 73
rol Zp74 ; CPU:$9A13 PRG:1A13 26 74
asl Zp73 ; CPU:$9A15 PRG:1A15 06 73
rol Zp74 ; CPU:$9A17 PRG:1A17 26 74
asl Zp73 ; CPU:$9A19 PRG:1A19 06 73
rol Zp74 ; CPU:$9A1B PRG:1A1B 26 74
asl Zp73 ; CPU:$9A1D PRG:1A1D 06 73
rol Zp74 ; CPU:$9A1F PRG:1A1F 26 74
lda Zp73 ; CPU:$9A21 PRG:1A21 A5 73
sta Zp6F ; CPU:$9A23 PRG:1A23 85 6F
lda Zp74 ; CPU:$9A25 PRG:1A25 A5 74
sta Zp70 ; CPU:$9A27 PRG:1A27 85 70
asl Zp73 ; CPU:$9A29 PRG:1A29 06 73
rol Zp74 ; CPU:$9A2B PRG:1A2B 26 74
clc ; CPU:$9A2D PRG:1A2D 18
lda Zp6F ; CPU:$9A2E PRG:1A2E A5 6F
adc Zp73 ; CPU:$9A30 PRG:1A30 65 73
sta Zp73 ; CPU:$9A32 PRG:1A32 85 73
lda Zp70 ; CPU:$9A34 PRG:1A34 A5 70
adc Zp74 ; CPU:$9A36 PRG:1A36 65 74
sta Zp74 ; CPU:$9A38 PRG:1A38 85 74
rts ; CPU:$9A3A PRG:1A3A 60
; -----------------------------------------------------------------------------
; Routine: Sub_9A3B
; Global: Branch target inside Label: taken when 9A3B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9A3B:
lda ZpE5,x ; CPU:$9A3B PRG:1A3B B5 E5
cmp #$00 ; CPU:$9A3D PRG:1A3D C9 00
beq NmiHandler_OnCarrySet2 ; CPU:$9A3F PRG:1A3F F0 43
lda $03D7,x ; CPU:$9A41 PRG:1A41 BD D7 03
cmp #$0B ; CPU:$9A44 PRG:1A44 C9 0B
bcc NmiHandler_Loop57 ; CPU:$9A46 PRG:1A46 90 04
tay ; CPU:$9A48 PRG:1A48 A8
lda $04BE,y ; CPU:$9A49 PRG:1A49 B9 BE 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop57
; Global: Branch target inside Label: taken when 9A4C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop57:
asl a ; CPU:$9A4C PRG:1A4C 0A
tay ; CPU:$9A4D PRG:1A4D A8
lda ZpC8,x ; CPU:$9A4E PRG:1A4E B5 C8
clc ; CPU:$9A50 PRG:1A50 18
adc ZpD9,x ; CPU:$9A51 PRG:1A51 75 D9
adc ZpD9,x ; CPU:$9A53 PRG:1A53 75 D9
cmp $9D41,y ; CPU:$9A55 PRG:1A55 D9 41 9D
bcc NmiHandler_Loop59 ; CPU:$9A58 PRG:1A58 90 30
iny ; CPU:$9A5A PRG:1A5A C8
cmp $9D41,y ; CPU:$9A5B PRG:1A5B D9 41 9D
bcs NmiHandler_Loop59 ; CPU:$9A5E PRG:1A5E B0 2A
lda ZpB7,x ; CPU:$9A60 PRG:1A60 B5 B7
and #$10 ; CPU:$9A62 PRG:1A62 29 10
beq NmiHandler_Loop58 ; CPU:$9A64 PRG:1A64 F0 20
; -----------------------------------------------------------------------------
; Routine: Sub_9A66
; Global: Branch target inside Label: taken when 9A66.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9A66:
lda ZpC8,x ; CPU:$9A66 PRG:1A66 B5 C8
clc ; CPU:$9A68 PRG:1A68 18
adc ZpD9,x ; CPU:$9A69 PRG:1A69 75 D9
adc ZpD9,x ; CPU:$9A6B PRG:1A6B 75 D9
sta Zp6F ; CPU:$9A6D PRG:1A6D 85 6F
lda $9D41,y ; CPU:$9A6F PRG:1A6F B9 41 9D
sec ; CPU:$9A72 PRG:1A72 38
sbc #$08 ; CPU:$9A73 PRG:1A73 E9 08
cmp Zp6F ; CPU:$9A75 PRG:1A75 C5 6F
bcc NmiHandler_Loop58 ; CPU:$9A77 PRG:1A77 90 0D
dey ; CPU:$9A79 PRG:1A79 88
lda $9D41,y ; CPU:$9A7A PRG:1A7A B9 41 9D
clc ; CPU:$9A7D PRG:1A7D 18
adc #$08 ; CPU:$9A7E PRG:1A7E 69 08
cmp Zp6F ; CPU:$9A80 PRG:1A80 C5 6F
bcs NmiHandler_Loop58 ; CPU:$9A82 PRG:1A82 B0 02
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarrySet2
; Global: Branch target inside Label: taken when 9A84.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarrySet2:
sec ; CPU:$9A84 PRG:1A84 38
rts ; CPU:$9A85 PRG:1A85 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop58
; Global: Branch target inside Label: taken when 9A86.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop58:
lda #$00 ; CPU:$9A86 PRG:1A86 A9 00
clc ; CPU:$9A88 PRG:1A88 18
rts ; CPU:$9A89 PRG:1A89 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop59
; Global: Branch target inside Label: taken when 9A8A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop59:
jsr Sub_9A08 ; CPU:$9A8A PRG:1A8A 20 08 9A
sec ; CPU:$9A8D PRG:1A8D 38
lda $0684 ; CPU:$9A8E PRG:1A8E AD 84 06
sbc Zp73 ; CPU:$9A91 PRG:1A91 E5 73
sta Zp73 ; CPU:$9A93 PRG:1A93 85 73
lda $0685 ; CPU:$9A95 PRG:1A95 AD 85 06
sbc Zp74 ; CPU:$9A98 PRG:1A98 E5 74
bcc NmiHandler_OnCarrySet2 ; CPU:$9A9A PRG:1A9A 90 E8
lda Zp73 ; CPU:$9A9C PRG:1A9C A5 73
cmp #$10 ; CPU:$9A9E PRG:1A9E C9 10
bcs NmiHandler_OnCarrySet2 ; CPU:$9AA0 PRG:1AA0 B0 E2
lda #$FF ; CPU:$9AA2 PRG:1AA2 A9 FF
clc ; CPU:$9AA4 PRG:1AA4 18
rts ; CPU:$9AA5 PRG:1AA5 60
; -----------------------------------------------------------------------------
; Routine: Sub_9AA6
; Global: Branch target inside Label: taken when 9AA6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9AA6:
jsr Sub_9848 ; CPU:$9AA6 PRG:1AA6 20 48 98
bcs NmiHandler_Loop60 ; CPU:$9AA9 PRG:1AA9 B0 19
lda ZpC8,x ; CPU:$9AAB PRG:1AAB B5 C8
jsr Sub_9805 ; CPU:$9AAD PRG:1AAD 20 05 98
bcs NmiHandler_Loop61 ; CPU:$9AB0 PRG:1AB0 B0 14
lda ZpE5,x ; CPU:$9AB2 PRG:1AB2 B5 E5
jsr Sub_9A0B ; CPU:$9AB4 PRG:1AB4 20 0B 9A
lda Zp73 ; CPU:$9AB7 PRG:1AB7 A5 73
sec ; CPU:$9AB9 PRG:1AB9 38
sbc $039D,x ; CPU:$9ABA PRG:1ABA FD 9D 03
cmp #$04 ; CPU:$9ABD PRG:1ABD C9 04
bcc NmiHandler_Loop60 ; CPU:$9ABF PRG:1ABF 90 03
cmp #$30 ; CPU:$9AC1 PRG:1AC1 C9 30
rts ; CPU:$9AC3 PRG:1AC3 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop60
; Global: Branch target inside Label: taken when 9AC4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop60:
sec ; CPU:$9AC4 PRG:1AC4 38
rts ; CPU:$9AC5 PRG:1AC5 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop61
; Global: Branch target inside Label: taken when 9AC6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop61:
ldy $03D7,x ; CPU:$9AC6 PRG:1AC6 BC D7 03
; -----------------------------------------------------------------------------
; Routine: Sub_9AC9
; Global: Branch target inside Label: taken when 9AC9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9AC9:
lda $047D,y ; CPU:$9AC9 PRG:1AC9 B9 7D 04
sec ; CPU:$9ACC PRG:1ACC 38
sbc $039D,x ; CPU:$9ACD PRG:1ACD FD 9D 03
sta Zp73 ; CPU:$9AD0 PRG:1AD0 85 73
lda $048A,y ; CPU:$9AD2 PRG:1AD2 B9 8A 04
sbc $03AE,x ; CPU:$9AD5 PRG:1AD5 FD AE 03
beq NmiHandler_Loop62 ; CPU:$9AD8 PRG:1AD8 F0 0F
cmp #$FF ; CPU:$9ADA PRG:1ADA C9 FF
bne NmiHandler_Loop63 ; CPU:$9ADC PRG:1ADC D0 15
lda Zp73 ; CPU:$9ADE PRG:1ADE A5 73
cmp #$FD ; CPU:$9AE0 PRG:1AE0 C9 FD
bcs NmiHandler_Loop63 ; CPU:$9AE2 PRG:1AE2 B0 0F
cmp #$F4 ; CPU:$9AE4 PRG:1AE4 C9 F4
bcc NmiHandler_Loop63 ; CPU:$9AE6 PRG:1AE6 90 0B
rts ; CPU:$9AE8 PRG:1AE8 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop62
; Global: Branch target inside Label: taken when 9AE9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop62:
lda Zp73 ; CPU:$9AE9 PRG:1AE9 A5 73
cmp #$24 ; CPU:$9AEB PRG:1AEB C9 24
bcc NmiHandler_Loop63 ; CPU:$9AED PRG:1AED 90 04
cmp #$2C ; CPU:$9AEF PRG:1AEF C9 2C
bcc NmiHandler_Loop60 ; CPU:$9AF1 PRG:1AF1 90 D1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop63
; Global: Branch target inside Label: taken when 9AF3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop63:
lda $03FB,y ; CPU:$9AF3 PRG:1AF3 B9 FB 03
and #$04 ; CPU:$9AF6 PRG:1AF6 29 04
beq NmiHandler_Loop64 ; CPU:$9AF8 PRG:1AF8 F0 07
lda $04BE,y ; CPU:$9AFA PRG:1AFA B9 BE 04
tay ; CPU:$9AFD PRG:1AFD A8
jmp Sub_9AC9 ; CPU:$9AFE PRG:1AFE 4C C9 9A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop64
; Global: Branch target inside Label: taken when 9B01.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop64:
clc ; CPU:$9B01 PRG:1B01 18
rts ; CPU:$9B02 PRG:1B02 60
; -----------------------------------------------------------------------------
; Routine: Sub_9B03
; Global: Branch target inside Label: taken when 9B03.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9B03:
lda $039D,x ; CPU:$9B03 PRG:1B03 BD 9D 03
sec ; CPU:$9B06 PRG:1B06 38
sbc $0684 ; CPU:$9B07 PRG:1B07 ED 84 06
clc ; CPU:$9B0A PRG:1B0A 18
adc #$89 ; CPU:$9B0B PRG:1B0B 69 89
sta $0303,x ; CPU:$9B0D PRG:1B0D 9D 03 03
rts ; CPU:$9B10 PRG:1B10 60
; -----------------------------------------------------------------------------
; Routine: Sub_9B11
; Global: Branch target inside Label: taken when 9B11.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9B11:
lda ZpB7,x ; CPU:$9B11 PRG:1B11 B5 B7
ora #$08 ; CPU:$9B13 PRG:1B13 09 08
sta ZpB7,x ; CPU:$9B15 PRG:1B15 95 B7
rts ; CPU:$9B17 PRG:1B17 60
; -----------------------------------------------------------------------------
; Routine: Sub_9B18
; Global: Branch target inside Label: taken when 9B18.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9B18:
lda ZpB7,x ; CPU:$9B18 PRG:1B18 B5 B7
and #$F7 ; CPU:$9B1A PRG:1B1A 29 F7
sta ZpB7,x ; CPU:$9B1C PRG:1B1C 95 B7
rts ; CPU:$9B1E PRG:1B1E 60
; -----------------------------------------------------------------------------
; Routine: Sub_9B1F
; Global: Branch target inside Label: taken when 9B1F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9B1F:
lda ZpB7,x ; CPU:$9B1F PRG:1B1F B5 B7
and #$08 ; CPU:$9B21 PRG:1B21 29 08
rts ; CPU:$9B23 PRG:1B23 60
; -----------------------------------------------------------------------------
; Routine: Sub_9B24
; Global: Branch target inside Label: taken when 9B24.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9B24:
lda $03E3,x ; CPU:$9B24 PRG:1B24 BD E3 03
cmp #$02 ; CPU:$9B27 PRG:1B27 C9 02
beq NmiHandler_Loop66 ; CPU:$9B29 PRG:1B29 F0 22
lda ZpE5,x ; CPU:$9B2B PRG:1B2B B5 E5
cmp #$0C ; CPU:$9B2D PRG:1B2D C9 0C
bcc NmiHandler_Loop68 ; CPU:$9B2F PRG:1B2F 90 3C
cmp #$0F ; CPU:$9B31 PRG:1B31 C9 0F
beq NmiHandler_Loop65 ; CPU:$9B33 PRG:1B33 F0 0C
bcs NmiHandler_Loop68 ; CPU:$9B35 PRG:1B35 B0 36
lda ZpC8,x ; CPU:$9B37 PRG:1B37 B5 C8
cmp #$30 ; CPU:$9B39 PRG:1B39 C9 30
bcc NmiHandler_Loop68 ; CPU:$9B3B PRG:1B3B 90 30
cmp #$38 ; CPU:$9B3D PRG:1B3D C9 38
bcc NmiHandler_Loop70 ; CPU:$9B3F PRG:1B3F 90 37
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop65
; Global: Branch target inside Label: taken when 9B41.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop65:
lda ZpC8,x ; CPU:$9B41 PRG:1B41 B5 C8
cmp #$C0 ; CPU:$9B43 PRG:1B43 C9 C0
bcc NmiHandler_Loop68 ; CPU:$9B45 PRG:1B45 90 26
cmp #$C8 ; CPU:$9B47 PRG:1B47 C9 C8
bcc NmiHandler_Loop69 ; CPU:$9B49 PRG:1B49 90 24
bcs NmiHandler_Loop68 ; CPU:$9B4B PRG:1B4B B0 20
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop66
; Global: Branch target inside Label: taken when 9B4D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop66:
lda ZpE5,x ; CPU:$9B4D PRG:1B4D B5 E5
cmp #$0B ; CPU:$9B4F PRG:1B4F C9 0B
bcc NmiHandler_Loop68 ; CPU:$9B51 PRG:1B51 90 1A
cmp #$0E ; CPU:$9B53 PRG:1B53 C9 0E
beq NmiHandler_Loop67 ; CPU:$9B55 PRG:1B55 F0 0C
bcs NmiHandler_Loop68 ; CPU:$9B57 PRG:1B57 B0 14
lda ZpC8,x ; CPU:$9B59 PRG:1B59 B5 C8
cmp #$08 ; CPU:$9B5B PRG:1B5B C9 08
bcc NmiHandler_Loop68 ; CPU:$9B5D PRG:1B5D 90 0E
cmp #$10 ; CPU:$9B5F PRG:1B5F C9 10
bcc NmiHandler_Loop69 ; CPU:$9B61 PRG:1B61 90 0C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop67
; Global: Branch target inside Label: taken when 9B63.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop67:
lda ZpC8,x ; CPU:$9B63 PRG:1B63 B5 C8
cmp #$E8 ; CPU:$9B65 PRG:1B65 C9 E8
bcc NmiHandler_Loop68 ; CPU:$9B67 PRG:1B67 90 04
cmp #$F0 ; CPU:$9B69 PRG:1B69 C9 F0
bcc NmiHandler_Loop70 ; CPU:$9B6B PRG:1B6B 90 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop68
; Global: Branch target inside Label: taken when 9B6D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop68:
clc ; CPU:$9B6D PRG:1B6D 18
rts ; CPU:$9B6E PRG:1B6E 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop69
; Global: Branch target inside Label: taken when 9B6F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop69:
jsr Sub_9B11 ; CPU:$9B6F PRG:1B6F 20 11 9B
lda #$01 ; CPU:$9B72 PRG:1B72 A9 01
sta ZpD9,x ; CPU:$9B74 PRG:1B74 95 D9
sec ; CPU:$9B76 PRG:1B76 38
rts ; CPU:$9B77 PRG:1B77 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop70
; Global: Branch target inside Label: taken when 9B78.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop70:
jsr Sub_9B18 ; CPU:$9B78 PRG:1B78 20 18 9B
lda #$FF ; CPU:$9B7B PRG:1B7B A9 FF
sta ZpD9,x ; CPU:$9B7D PRG:1B7D 95 D9
sec ; CPU:$9B7F PRG:1B7F 38
rts ; CPU:$9B80 PRG:1B80 60
; -----------------------------------------------------------------------------
; Routine: Sub_9B81
; Global: Branch target inside Label: taken when 9B81.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9B81:
lda ZpB7,x ; CPU:$9B81 PRG:1B81 B5 B7
and #$10 ; CPU:$9B83 PRG:1B83 29 10
beq NmiHandler_Loop71 ; CPU:$9B85 PRG:1B85 F0 32
ldy $03D7,x ; CPU:$9B87 PRG:1B87 BC D7 03
lda $04A4,y ; CPU:$9B8A PRG:1B8A B9 A4 04
cmp ZpE5,x ; CPU:$9B8D PRG:1B8D D5 E5
bcc NmiHandler_Loop71 ; CPU:$9B8F PRG:1B8F 90 28
sec ; CPU:$9B91 PRG:1B91 38
sbc #$01 ; CPU:$9B92 PRG:1B92 E9 01
jsr Sub_9A0B ; CPU:$9B94 PRG:1B94 20 0B 9A
lda $039D,x ; CPU:$9B97 PRG:1B97 BD 9D 03
sec ; CPU:$9B9A PRG:1B9A 38
sbc Zp73 ; CPU:$9B9B PRG:1B9B E5 73
sta Zp73 ; CPU:$9B9D PRG:1B9D 85 73
lda $03AE,x ; CPU:$9B9F PRG:1B9F BD AE 03
sbc Zp74 ; CPU:$9BA2 PRG:1BA2 E5 74
bne NmiHandler_Loop71 ; CPU:$9BA4 PRG:1BA4 D0 13
lda #$18 ; CPU:$9BA6 PRG:1BA6 A9 18
cmp Zp73 ; CPU:$9BA8 PRG:1BA8 C5 73
bcc NmiHandler_Loop71 ; CPU:$9BAA PRG:1BAA 90 0D
ldy $03D7,x ; CPU:$9BAC PRG:1BAC BC D7 03
lda $03FB,y ; CPU:$9BAF PRG:1BAF B9 FB 03
ora #$60 ; CPU:$9BB2 PRG:1BB2 09 60
sta $03FB,y ; CPU:$9BB4 PRG:1BB4 99 FB 03
sec ; CPU:$9BB7 PRG:1BB7 38
rts ; CPU:$9BB8 PRG:1BB8 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop71
; Global: Branch target inside Label: taken when 9BB9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop71:
clc ; CPU:$9BB9 PRG:1BB9 18
rts ; CPU:$9BBA PRG:1BBA 60
; -----------------------------------------------------------------------------
; Routine: Sub_9BBB
; Global: Branch target inside Label: taken when 9BBB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9BBB:
lda ZpC8,x ; CPU:$9BBB PRG:1BBB B5 C8
jsr Sub_9805 ; CPU:$9BBD PRG:1BBD 20 05 98
bcs NmiHandler_Loop72 ; CPU:$9BC0 PRG:1BC0 B0 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero13
; Global: Branch target inside Label: taken when 9BC2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero13:
jmp NmiHandler_Loop78 ; CPU:$9BC2 PRG:1BC2 4C 42 9C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop72
; Global: Branch target inside Label: taken when 9BC5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop72:
ldy $03D7,x ; CPU:$9BC5 PRG:1BC5 BC D7 03
lda $03FB,y ; CPU:$9BC8 PRG:1BC8 B9 FB 03
and #$04 ; CPU:$9BCB PRG:1BCB 29 04
beq NmiHandler_Loop73 ; CPU:$9BCD PRG:1BCD F0 07
lda $04BE,y ; CPU:$9BCF PRG:1BCF B9 BE 04
tay ; CPU:$9BD2 PRG:1BD2 A8
sta $03D7,x ; CPU:$9BD3 PRG:1BD3 9D D7 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop73
; Global: Branch target inside Label: taken when 9BD6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop73:
lda ZpE5,x ; CPU:$9BD6 PRG:1BD6 B5 E5
cmp $04CB,y ; CPU:$9BD8 PRG:1BD8 D9 CB 04
bne NmiHandler_OnNonzero13 ; CPU:$9BDB PRG:1BDB D0 E5
lda $039D,x ; CPU:$9BDD PRG:1BDD BD 9D 03
sec ; CPU:$9BE0 PRG:1BE0 38
sbc $047D,y ; CPU:$9BE1 PRG:1BE1 F9 7D 04
sta Zp73 ; CPU:$9BE4 PRG:1BE4 85 73
lda $03AE,x ; CPU:$9BE6 PRG:1BE6 BD AE 03
sbc $048A,y ; CPU:$9BE9 PRG:1BE9 F9 8A 04
bne NmiHandler_Loop78 ; CPU:$9BEC PRG:1BEC D0 54
lda ZpB7,x ; CPU:$9BEE PRG:1BEE B5 B7
and #$01 ; CPU:$9BF0 PRG:1BF0 29 01
bne NmiHandler_Loop74 ; CPU:$9BF2 PRG:1BF2 D0 09
lda Zp73 ; CPU:$9BF4 PRG:1BF4 A5 73
cmp #$1C ; CPU:$9BF6 PRG:1BF6 C9 1C
bcc NmiHandler_Loop75 ; CPU:$9BF8 PRG:1BF8 90 09
jmp NmiHandler_Loop78 ; CPU:$9BFA PRG:1BFA 4C 42 9C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop74
; Global: Branch target inside Label: taken when 9BFD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop74:
lda Zp73 ; CPU:$9BFD PRG:1BFD A5 73
cmp #$15 ; CPU:$9BFF PRG:1BFF C9 15
bcs NmiHandler_Loop78 ; CPU:$9C01 PRG:1C01 B0 3F
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop75
; Global: Branch target inside Label: taken when 9C03.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop75:
cpy #$0B ; CPU:$9C03 PRG:1C03 C0 0B
bcc NmiHandler_Loop76 ; CPU:$9C05 PRG:1C05 90 04
lda $04BE,y ; CPU:$9C07 PRG:1C07 B9 BE 04
tay ; CPU:$9C0A PRG:1C0A A8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop76
; Global: Branch target inside Label: taken when 9C0B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop76:
tya ; CPU:$9C0B PRG:1C0B 98
asl a ; CPU:$9C0C PRG:1C0C 0A
tay ; CPU:$9C0D PRG:1C0D A8
lda $9D41,y ; CPU:$9C0E PRG:1C0E B9 41 9D
sec ; CPU:$9C11 PRG:1C11 38
sbc #$04 ; CPU:$9C12 PRG:1C12 E9 04
cmp ZpC8,x ; CPU:$9C14 PRG:1C14 D5 C8
bcs NmiHandler_Loop78 ; CPU:$9C16 PRG:1C16 B0 2A
adc #$08 ; CPU:$9C18 PRG:1C18 69 08
cmp ZpC8,x ; CPU:$9C1A PRG:1C1A D5 C8
bcc NmiHandler_Loop77 ; CPU:$9C1C PRG:1C1C 90 0B
lda $9D41,y ; CPU:$9C1E PRG:1C1E B9 41 9D
sec ; CPU:$9C21 PRG:1C21 38
sbc #$06 ; CPU:$9C22 PRG:1C22 E9 06
sta ZpC8,x ; CPU:$9C24 PRG:1C24 95 C8
jmp NmiHandler_Loop78 ; CPU:$9C26 PRG:1C26 4C 42 9C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop77
; Global: Branch target inside Label: taken when 9C29.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop77:
iny ; CPU:$9C29 PRG:1C29 C8
lda $9D41,y ; CPU:$9C2A PRG:1C2A B9 41 9D
clc ; CPU:$9C2D PRG:1C2D 18
adc #$04 ; CPU:$9C2E PRG:1C2E 69 04
cmp ZpC8,x ; CPU:$9C30 PRG:1C30 D5 C8
bcc NmiHandler_Loop78 ; CPU:$9C32 PRG:1C32 90 0E
sbc #$08 ; CPU:$9C34 PRG:1C34 E9 08
cmp ZpC8,x ; CPU:$9C36 PRG:1C36 D5 C8
bcs NmiHandler_Loop79 ; CPU:$9C38 PRG:1C38 B0 0A
lda $9D41,y ; CPU:$9C3A PRG:1C3A B9 41 9D
clc ; CPU:$9C3D PRG:1C3D 18
adc #$06 ; CPU:$9C3E PRG:1C3E 69 06
sta ZpC8,x ; CPU:$9C40 PRG:1C40 95 C8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop78
; Global: Branch target inside Label: taken when 9C42.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop78:
clc ; CPU:$9C42 PRG:1C42 18
rts ; CPU:$9C43 PRG:1C43 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop79
; Global: Branch target inside Label: taken when 9C44.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop79:
ldy $03D7,x ; CPU:$9C44 PRG:1C44 BC D7 03
lda $03FB,y ; CPU:$9C47 PRG:1C47 B9 FB 03
ora #$20 ; CPU:$9C4A PRG:1C4A 09 20
and #$BF ; CPU:$9C4C PRG:1C4C 29 BF
sta $03FB,y ; CPU:$9C4E PRG:1C4E 99 FB 03
sec ; CPU:$9C51 PRG:1C51 38
rts ; CPU:$9C52 PRG:1C52 60
; -----------------------------------------------------------------------------
; Routine: Sub_9C53
; Global: Branch target inside Label: taken when 9C53.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9C53:
lda #$FF ; CPU:$9C53 PRG:1C53 A9 FF
sta ZpFA ; CPU:$9C55 PRG:1C55 85 FA
lda #$00 ; CPU:$9C57 PRG:1C57 A9 00
sta Zp7E ; CPU:$9C59 PRG:1C59 85 7E
lda #$07 ; CPU:$9C5B PRG:1C5B A9 07
sta Zp7F ; CPU:$9C5D PRG:1C5D 85 7F
lda #$00 ; CPU:$9C5F PRG:1C5F A9 00
sta Zp80 ; CPU:$9C61 PRG:1C61 85 80
sta $0700 ; CPU:$9C63 PRG:1C63 8D 00 07
sta ZpFA ; CPU:$9C66 PRG:1C66 85 FA
rts ; CPU:$9C68 PRG:1C68 60
; -----------------------------------------------------------------------------
; Routine: Sub_9C69
; Global: Branch target inside Label: taken when 9C69.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9C69:
lda #$0D ; CPU:$9C69 PRG:1C69 A9 0D
jsr Sub_F6DB ; CPU:$9C6B PRG:1C6B 20 DB F6
; -----------------------------------------------------------------------------
; Routine: Sub_9C6E
; Global: Branch target inside Label: taken when 9C6E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9C6E:
lda #$0E ; CPU:$9C6E PRG:1C6E A9 0E
jmp Sub_F6DB ; CPU:$9C70 PRG:1C70 4C DB F6
; -----------------------------------------------------------------------------
; Routine: Sub_9C73
; Global: Branch target inside Label: taken when 9C73.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9C73:
lda #$0D ; CPU:$9C73 PRG:1C73 A9 0D
jsr Sub_F704 ; CPU:$9C75 PRG:1C75 20 04 F7
lda #$0E ; CPU:$9C78 PRG:1C78 A9 0E
jmp Sub_F704 ; CPU:$9C7A PRG:1C7A 4C 04 F7
; -----------------------------------------------------------------------------
; Routine: Sub_9C7D
; Global: Branch target inside Label: taken when 9C7D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9C7D:
lda ZpB7,x ; CPU:$9C7D PRG:1C7D B5 B7
and #$04 ; CPU:$9C7F PRG:1C7F 29 04
beq NmiHandler_Loop81 ; CPU:$9C81 PRG:1C81 F0 17
; -----------------------------------------------------------------------------
; Routine: Sub_9C83
; Global: Branch target inside Label: taken when 9C83.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9C83:
ldy $03D7,x ; CPU:$9C83 PRG:1C83 BC D7 03
cpy #$0B ; CPU:$9C86 PRG:1C86 C0 0B
bcc NmiHandler_Loop80 ; CPU:$9C88 PRG:1C88 90 04
lda $04BE,y ; CPU:$9C8A PRG:1C8A B9 BE 04
tay ; CPU:$9C8D PRG:1C8D A8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop80
; Global: Branch target inside Label: taken when 9C8E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop80:
lda $9D57,y ; CPU:$9C8E PRG:1C8E B9 57 9D
cmp ZpC8,x ; CPU:$9C91 PRG:1C91 D5 C8
bcs NmiHandler_Loop82 ; CPU:$9C93 PRG:1C93 B0 06
clc ; CPU:$9C95 PRG:1C95 18
adc #$04 ; CPU:$9C96 PRG:1C96 69 04
sta ZpC8,x ; CPU:$9C98 PRG:1C98 95 C8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop81
; Global: Branch target inside Label: taken when 9C9A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop81:
rts ; CPU:$9C9A PRG:1C9A 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop82
; Global: Branch target inside Label: taken when 9C9B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop82:
sec ; CPU:$9C9B PRG:1C9B 38
sbc #$04 ; CPU:$9C9C PRG:1C9C E9 04
sta ZpC8,x ; CPU:$9C9E PRG:1C9E 95 C8
rts ; CPU:$9CA0 PRG:1CA0 60
; ---- data $9CA1-$9D61 (193 bytes) ----
; referenced by `cmp $9D41,y` at $9A55 (operand $9D41 falls inside this region)
; referenced by `cmp $9D41,y` at $9A5B (operand $9D41 falls inside this region)
; referenced by `lda $9D41,y` at $9A6F (operand $9D41 falls inside this region)
; referenced by `lda $9D41,y` at $9A7A (operand $9D41 falls inside this region)
; referenced by `lda $9D41,y` at $9C0E (operand $9D41 falls inside this region)
; referenced by `lda $9D41,y` at $9C1E (operand $9D41 falls inside this region)
; ... and 3 further references from decoded code
.byte $00, $FF, $FF, $FF, $FF, $00, $FF, $FF, $FF, $FF, $00, $FF, $FF, $FF, $FF, $00 ; CPU:$9CA1 PRG:1CA1 00 FF FF FF FF 00 FF FF FF FF 00 FF FF FF FF 00
.byte $FF, $FF, $FF, $FF, $00, $FF, $FF, $FF, $FF, $00, $FF, $FF, $FF, $FF, $00, $FF ; CPU:$9CB1 PRG:1CB1 FF FF FF FF 00 FF FF FF FF 00 FF FF FF FF 00 FF
.byte $FF, $FF, $FF, $00, $FF, $FF, $FF, $FF, $00, $FF, $FF, $FF, $FF, $00, $FF, $FF ; CPU:$9CC1 PRG:1CC1 FF FF FF 00 FF FF FF FF 00 FF FF FF FF 00 FF FF
.byte $FF, $FF, $00, $FF, $FF, $FF, $FF, $00, $FF, $FF, $FF, $FF, $00, $FF, $FF, $FF ; CPU:$9CD1 PRG:1CD1 FF FF 00 FF FF FF FF 00 FF FF FF FF 00 FF FF FF
.byte $FF, $FF, $FF, $FF, $FF, $FF, $01, $FF, $FF, $FF, $FF, $01, $FF, $FF, $FF, $FF ; CPU:$9CE1 PRG:1CE1 FF FF FF FF FF FF 01 FF FF FF FF 01 FF FF FF FF
.byte $01, $02, $FF, $FF, $FF, $02, $FF, $FF, $FF, $FF, $02, $04, $FF, $FF, $FF, $03 ; CPU:$9CF1 PRG:1CF1 01 02 FF FF FF 02 FF FF FF FF 02 04 FF FF FF 03
.byte $04, $FF, $FF, $FF, $03, $04, $05, $FF, $FF, $03, $04, $05, $FF, $FF, $04, $05 ; CPU:$9D01 PRG:1D01 04 FF FF FF 03 04 05 FF FF 03 04 05 FF FF 04 05
.byte $FF, $FF, $FF, $04, $05, $FF, $FF, $FF, $04, $05, $06, $07, $09, $06, $07, $09 ; CPU:$9D11 PRG:1D11 FF FF FF 04 05 FF FF FF 04 05 06 07 09 06 07 09
.byte $0A, $FF, $06, $07, $08, $09, $0A, $06, $07, $08, $09, $0A, $06, $07, $08, $09 ; CPU:$9D21 PRG:1D21 0A FF 06 07 08 09 0A 06 07 08 09 0A 06 07 08 09
.byte $0A, $06, $07, $08, $09, $0A, $06, $07, $08, $09, $0A, $06, $07, $08, $09, $0A ; CPU:$9D31 PRG:1D31 0A 06 07 08 09 0A 06 07 08 09 0A 06 07 08 09 0A
.byte $70, $88, $70, $88, $10, $28, $70, $88, $D0, $E8, $10, $28, $B0, $C8, $90, $A8 ; CPU:$9D41 PRG:1D41 70 88 70 88 10 28 70 88 D0 E8 10 28 B0 C8 90 A8
.byte $70, $88, $50, $68, $30, $48, $7C, $7C, $1C, $7C, $DC, $1C, $BC, $9C, $7C, $5C ; CPU:$9D51 PRG:1D51 70 88 50 68 30 48 7C 7C 1C 7C DC 1C BC 9C 7C 5C
.byte $3C ; CPU:$9D61 PRG:1D61 3C
; -----------------------------------------------------------------------------
; Routine: Sub_9D62
; Global: Branch target inside Label: taken when 9D62.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9D62:
jsr Sub_9E9D ; CPU:$9D62 PRG:1D62 20 9D 9E
lda #$00 ; CPU:$9D65 PRG:1D65 A9 00
sta ZpBF ; CPU:$9D67 PRG:1D67 85 BF
jsr Sub_9EB0 ; CPU:$9D69 PRG:1D69 20 B0 9E
lda #$1C ; CPU:$9D6C PRG:1D6C A9 1C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero14
; Global: Branch target inside Label: taken when 9D6E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero14:
jsr Sub_826F ; CPU:$9D6E PRG:1D6E 20 6F 82
clc ; CPU:$9D71 PRG:1D71 18
adc #$02 ; CPU:$9D72 PRG:1D72 69 02
cmp #$2C ; CPU:$9D74 PRG:1D74 C9 2C
bne NmiHandler_OnNonzero14 ; CPU:$9D76 PRG:1D76 D0 F6
lda #$00 ; CPU:$9D78 PRG:1D78 A9 00
sta ZpB7 ; CPU:$9D7A PRG:1D7A 85 B7
sta ZpB9 ; CPU:$9D7C PRG:1D7C 85 B9
sta ZpBB ; CPU:$9D7E PRG:1D7E 85 BB
sta ZpBD ; CPU:$9D80 PRG:1D80 85 BD
; -----------------------------------------------------------------------------
; Routine: Sub_9D82
; Global: Branch target inside Label: taken when 9D82.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9D82:
jsr Sub_9F27 ; CPU:$9D82 PRG:1D82 20 27 9F
jsr Sub_A286 ; CPU:$9D85 PRG:1D85 20 86 A2
lda #$1E ; CPU:$9D88 PRG:1D88 A9 1E
sta $055C ; CPU:$9D8A PRG:1D8A 8D 5C 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero15
; Global: Branch target inside Label: taken when 9D8D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero15:
jsr Sub_82A3 ; CPU:$9D8D PRG:1D8D 20 A3 82
dec $055C ; CPU:$9D90 PRG:1D90 CE 5C 05
beq NmiHandler_Loop83 ; CPU:$9D93 PRG:1D93 F0 06
lda Zp96 ; CPU:$9D95 PRG:1D95 A5 96
and #$10 ; CPU:$9D97 PRG:1D97 29 10
bne NmiHandler_OnNonzero15 ; CPU:$9D99 PRG:1D99 D0 F2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop83
; Global: Branch target inside Label: taken when 9D9B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop83:
lda #$2C ; CPU:$9D9B PRG:1D9B A9 2C
sta $0558 ; CPU:$9D9D PRG:1D9D 8D 58 05
lda #$01 ; CPU:$9DA0 PRG:1DA0 A9 01
sta $0559 ; CPU:$9DA2 PRG:1DA2 8D 59 05
lda #$01 ; CPU:$9DA5 PRG:1DA5 A9 01
sta $055C ; CPU:$9DA7 PRG:1DA7 8D 5C 05
lda #$80 ; CPU:$9DAA PRG:1DAA A9 80
sta ZpBF ; CPU:$9DAC PRG:1DAC 85 BF
lda #$98 ; CPU:$9DAE PRG:1DAE A9 98
sta $030B ; CPU:$9DB0 PRG:1DB0 8D 0B 03
sta $055B ; CPU:$9DB3 PRG:1DB3 8D 5B 05
lda #$50 ; CPU:$9DB6 PRG:1DB6 A9 50
sta ZpD0 ; CPU:$9DB8 PRG:1DB8 85 D0
lda #$65 ; CPU:$9DBA PRG:1DBA A9 65
sta $031C ; CPU:$9DBC PRG:1DBC 8D 1C 03
lda #$00 ; CPU:$9DBF PRG:1DBF A9 00
sta $032D ; CPU:$9DC1 PRG:1DC1 8D 2D 03
sta $0301 ; CPU:$9DC4 PRG:1DC4 8D 01 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero16
; Global: Branch target inside Label: taken when 9DC7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero16:
lda Zp96 ; CPU:$9DC7 PRG:1DC7 A5 96
and #$10 ; CPU:$9DC9 PRG:1DC9 29 10
beq NmiHandler_Loop84 ; CPU:$9DCB PRG:1DCB F0 0C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero17
; Global: Branch target inside Label: taken when 9DCD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero17:
jsr Sub_82A3 ; CPU:$9DCD PRG:1DCD 20 A3 82
lda Zp96 ; CPU:$9DD0 PRG:1DD0 A5 96
and #$10 ; CPU:$9DD2 PRG:1DD2 29 10
bne NmiHandler_OnNonzero17 ; CPU:$9DD4 PRG:1DD4 D0 F7
jmp Sub_9E7E ; CPU:$9DD6 PRG:1DD6 4C 7E 9E
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop84
; Global: Branch target inside Label: taken when 9DD9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop84:
lda Zp96 ; CPU:$9DD9 PRG:1DD9 A5 96
and #$20 ; CPU:$9DDB PRG:1DDB 29 20
bne NmiHandler_Loop85 ; CPU:$9DDD PRG:1DDD D0 08
lda #$01 ; CPU:$9DDF PRG:1DDF A9 01
sta $055C ; CPU:$9DE1 PRG:1DE1 8D 5C 05
jmp NmiHandler_Loop87 ; CPU:$9DE4 PRG:1DE4 4C 0C 9E
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop85
; Global: Branch target inside Label: taken when 9DE7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop85:
dec $055C ; CPU:$9DE7 PRG:1DE7 CE 5C 05
bne NmiHandler_Loop87 ; CPU:$9DEA PRG:1DEA D0 20
lda #$1E ; CPU:$9DEC PRG:1DEC A9 1E
sta $055C ; CPU:$9DEE PRG:1DEE 8D 5C 05
lda $055B ; CPU:$9DF1 PRG:1DF1 AD 5B 05
cmp #$98 ; CPU:$9DF4 PRG:1DF4 C9 98
beq NmiHandler_Loop86 ; CPU:$9DF6 PRG:1DF6 F0 07
ldx #$00 ; CPU:$9DF8 PRG:1DF8 A2 00
lda #$98 ; CPU:$9DFA PRG:1DFA A9 98
jmp Sub_9E03 ; CPU:$9DFC PRG:1DFC 4C 03 9E
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop86
; Global: Branch target inside Label: taken when 9DFF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop86:
ldx #$01 ; CPU:$9DFF PRG:1DFF A2 01
lda #$A8 ; CPU:$9E01 PRG:1E01 A9 A8
; -----------------------------------------------------------------------------
; Routine: Sub_9E03
; Global: Branch target inside Label: taken when 9E03.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9E03:
sta $055B ; CPU:$9E03 PRG:1E03 8D 5B 05
sta $030B ; CPU:$9E06 PRG:1E06 8D 0B 03
stx $0301 ; CPU:$9E09 PRG:1E09 8E 01 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop87
; Global: Branch target inside Label: taken when 9E0C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop87:
lda $0558 ; CPU:$9E0C PRG:1E0C AD 58 05
beq NmiHandler_Loop88 ; CPU:$9E0F PRG:1E0F F0 06
dec $0558 ; CPU:$9E11 PRG:1E11 CE 58 05
jmp Sub_9E1D ; CPU:$9E14 PRG:1E14 4C 1D 9E
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop88
; Global: Branch target inside Label: taken when 9E17.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop88:
dec $0558 ; CPU:$9E17 PRG:1E17 CE 58 05
dec $0559 ; CPU:$9E1A PRG:1E1A CE 59 05
; -----------------------------------------------------------------------------
; Routine: Sub_9E1D
; Global: Branch target inside Label: taken when 9E1D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9E1D:
jsr Sub_82A3 ; CPU:$9E1D PRG:1E1D 20 A3 82
lda $0558 ; CPU:$9E20 PRG:1E20 AD 58 05
bne NmiHandler_OnNonzero16 ; CPU:$9E23 PRG:1E23 D0 A2
lda $0559 ; CPU:$9E25 PRG:1E25 AD 59 05
bne NmiHandler_OnNonzero16 ; CPU:$9E28 PRG:1E28 D0 9D
lda #$FF ; CPU:$9E2A PRG:1E2A A9 FF
sta $0580 ; CPU:$9E2C PRG:1E2C 8D 80 05
lda $0689 ; CPU:$9E2F PRG:1E2F AD 89 06
sta ZpFC ; CPU:$9E32 PRG:1E32 85 FC
lda #$00 ; CPU:$9E34 PRG:1E34 A9 00
sta $057E ; CPU:$9E36 PRG:1E36 8D 7E 05
sta $0689 ; CPU:$9E39 PRG:1E39 8D 89 06
lda #$04 ; CPU:$9E3C PRG:1E3C A9 04
jsr Sub_8224 ; CPU:$9E3E PRG:1E3E 20 24 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero2
; Global: Branch target inside Label: taken when 9E41.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero2:
jsr Sub_82A3 ; CPU:$9E41 PRG:1E41 20 A3 82
lda Zp96 ; CPU:$9E44 PRG:1E44 A5 96
and #$10 ; CPU:$9E46 PRG:1E46 29 10
bne NmiHandler_Loop89 ; CPU:$9E48 PRG:1E48 D0 10
lda $057E ; CPU:$9E4A PRG:1E4A AD 7E 05
beq NmiHandler_OnZero2 ; CPU:$9E4D PRG:1E4D F0 F2
lda ZpFC ; CPU:$9E4F PRG:1E4F A5 FC
sta $0689 ; CPU:$9E51 PRG:1E51 8D 89 06
jsr Sub_F64E ; CPU:$9E54 PRG:1E54 20 4E F6
jmp Sub_9D62 ; CPU:$9E57 PRG:1E57 4C 62 9D
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop89
; Global: Branch target inside Label: taken when 9E5A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop89:
jsr Sub_9E9D ; CPU:$9E5A PRG:1E5A 20 9D 9E
jsr Sub_BCFD ; CPU:$9E5D PRG:1E5D 20 FD BC
jsr Sub_F64E ; CPU:$9E60 PRG:1E60 20 4E F6
lda #$04 ; CPU:$9E63 PRG:1E63 A9 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero18
; Global: Branch target inside Label: taken when 9E65.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero18:
jsr Sub_826F ; CPU:$9E65 PRG:1E65 20 6F 82
clc ; CPU:$9E68 PRG:1E68 18
adc #$02 ; CPU:$9E69 PRG:1E69 69 02
cmp #$34 ; CPU:$9E6B PRG:1E6B C9 34
bne NmiHandler_OnNonzero18 ; CPU:$9E6D PRG:1E6D D0 F6
lda #$00 ; CPU:$9E6F PRG:1E6F A9 00
ldx #$10 ; CPU:$9E71 PRG:1E71 A2 10
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative4
; Global: Branch target inside Label: taken when 9E73.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative4:
sta ZpB7,x ; CPU:$9E73 PRG:1E73 95 B7
dex ; CPU:$9E75 PRG:1E75 CA
bpl NmiHandler_OnNonnegative4 ; CPU:$9E76 PRG:1E76 10 FB
jsr Sub_BCAB ; CPU:$9E78 PRG:1E78 20 AB BC
jmp Sub_9D82 ; CPU:$9E7B PRG:1E7B 4C 82 9D
; -----------------------------------------------------------------------------
; Routine: Sub_9E7E
; Global: Branch target inside Label: taken when 9E7E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9E7E:
lda #$00 ; CPU:$9E7E PRG:1E7E A9 00
sta ZpB8 ; CPU:$9E80 PRG:1E80 85 B8
sta ZpBA ; CPU:$9E82 PRG:1E82 85 BA
sta ZpBC ; CPU:$9E84 PRG:1E84 85 BC
sta ZpBE ; CPU:$9E86 PRG:1E86 85 BE
sta ZpBF ; CPU:$9E88 PRG:1E88 85 BF
lda #$00 ; CPU:$9E8A PRG:1E8A A9 00
sta $0580 ; CPU:$9E8C PRG:1E8C 8D 80 05
lda $0301 ; CPU:$9E8F PRG:1E8F AD 01 03
sta $068C ; CPU:$9E92 PRG:1E92 8D 8C 06
lda #$04 ; CPU:$9E95 PRG:1E95 A9 04
jsr Sub_8224 ; CPU:$9E97 PRG:1E97 20 24 82
jsr Sub_8266 ; CPU:$9E9A PRG:1E9A 20 66 82
; -----------------------------------------------------------------------------
; Routine: Sub_9E9D
; Global: Branch target inside Label: taken when 9E9D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9E9D:
lda #$00 ; CPU:$9E9D PRG:1E9D A9 00
sta Zp81 ; CPU:$9E9F PRG:1E9F 85 81
sta $055D ; CPU:$9EA1 PRG:1EA1 8D 5D 05
sta $058F ; CPU:$9EA4 PRG:1EA4 8D 8F 05
sta $057F ; CPU:$9EA7 PRG:1EA7 8D 7F 05
jsr Sub_BDCA ; CPU:$9EAA PRG:1EAA 20 CA BD
jmp Sub_9C53 ; CPU:$9EAD PRG:1EAD 4C 53 9C
; -----------------------------------------------------------------------------
; Routine: Sub_9EB0
; Global: Branch target inside Label: taken when 9EB0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9EB0:
lda #$00 ; CPU:$9EB0 PRG:1EB0 A9 00
sta Zp8E ; CPU:$9EB2 PRG:1EB2 85 8E
sta Zp8F ; CPU:$9EB4 PRG:1EB4 85 8F
sta $055A ; CPU:$9EB6 PRG:1EB6 8D 5A 05
jsr Sub_82A3 ; CPU:$9EB9 PRG:1EB9 20 A3 82
jsr Sub_BCB6 ; CPU:$9EBC PRG:1EBC 20 B6 BC
jsr Sub_A26E ; CPU:$9EBF PRG:1EBF 20 6E A2
lda #$1C ; CPU:$9EC2 PRG:1EC2 A9 1C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero19
; Global: Branch target inside Label: taken when 9EC4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero19:
jsr Sub_8224 ; CPU:$9EC4 PRG:1EC4 20 24 82
clc ; CPU:$9EC7 PRG:1EC7 18
adc #$02 ; CPU:$9EC8 PRG:1EC8 69 02
cmp #$2C ; CPU:$9ECA PRG:1ECA C9 2C
bne NmiHandler_OnNonzero19 ; CPU:$9ECC PRG:1ECC D0 F6
; -----------------------------------------------------------------------------
; Routine: Sub_9ECE
; Global: Branch target inside Label: taken when 9ECE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9ECE:
lda Zp96 ; CPU:$9ECE PRG:1ECE A5 96
and #$10 ; CPU:$9ED0 PRG:1ED0 29 10
beq NmiHandler_Loop90 ; CPU:$9ED2 PRG:1ED2 F0 01
rts ; CPU:$9ED4 PRG:1ED4 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop90
; Global: Branch target inside Label: taken when 9ED5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop90:
lda $055A ; CPU:$9ED5 PRG:1ED5 AD 5A 05
cmp #$FF ; CPU:$9ED8 PRG:1ED8 C9 FF
beq NmiHandler_Loop91 ; CPU:$9EDA PRG:1EDA F0 06
jsr Sub_82A3 ; CPU:$9EDC PRG:1EDC 20 A3 82
jmp Sub_9ECE ; CPU:$9EDF PRG:1EDF 4C CE 9E
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop91
; Global: Branch target inside Label: taken when 9EE2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop91:
jsr Sub_A285 ; CPU:$9EE2 PRG:1EE2 20 85 A2
jsr Sub_9FB3 ; CPU:$9EE5 PRG:1EE5 20 B3 9F
jsr Sub_9F15 ; CPU:$9EE8 PRG:1EE8 20 15 9F
bcc NmiHandler_Loop92 ; CPU:$9EEB PRG:1EEB 90 01
rts ; CPU:$9EED PRG:1EED 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop92
; Global: Branch target inside Label: taken when 9EEE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop92:
jsr Sub_9FC4 ; CPU:$9EEE PRG:1EEE 20 C4 9F
jsr Sub_9F15 ; CPU:$9EF1 PRG:1EF1 20 15 9F
bcc NmiHandler_Loop93 ; CPU:$9EF4 PRG:1EF4 90 01
rts ; CPU:$9EF6 PRG:1EF6 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop93
; Global: Branch target inside Label: taken when 9EF7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop93:
jsr Sub_9FD5 ; CPU:$9EF7 PRG:1EF7 20 D5 9F
jsr Sub_9F15 ; CPU:$9EFA PRG:1EFA 20 15 9F
bcc NmiHandler_Loop94 ; CPU:$9EFD PRG:1EFD 90 01
rts ; CPU:$9EFF PRG:1EFF 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop94
; Global: Branch target inside Label: taken when 9F00.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop94:
jsr Sub_9FE6 ; CPU:$9F00 PRG:1F00 20 E6 9F
jsr Sub_9F15 ; CPU:$9F03 PRG:1F03 20 15 9F
bcc NmiHandler_Loop95 ; CPU:$9F06 PRG:1F06 90 01
rts ; CPU:$9F08 PRG:1F08 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop95
; Global: Branch target inside Label: taken when 9F09.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop95:
jsr Sub_9FF7 ; CPU:$9F09 PRG:1F09 20 F7 9F
jsr Sub_9F15 ; CPU:$9F0C PRG:1F0C 20 15 9F
bcc NmiHandler_Loop96 ; CPU:$9F0F PRG:1F0F 90 01
rts ; CPU:$9F11 PRG:1F11 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop96
; Global: Branch target inside Label: taken when 9F12.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop96:
jsr Sub_A00E ; CPU:$9F12 PRG:1F12 20 0E A0
; -----------------------------------------------------------------------------
; Routine: Sub_9F15
; Global: Branch target inside Label: taken when 9F15.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9F15:
ldy #$0F ; CPU:$9F15 PRG:1F15 A0 0F
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero20
; Global: Branch target inside Label: taken when 9F17.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero20:
jsr Sub_82A3 ; CPU:$9F17 PRG:1F17 20 A3 82
lda Zp96 ; CPU:$9F1A PRG:1F1A A5 96
and #$10 ; CPU:$9F1C PRG:1F1C 29 10
beq NmiHandler_Loop97 ; CPU:$9F1E PRG:1F1E F0 02
sec ; CPU:$9F20 PRG:1F20 38
rts ; CPU:$9F21 PRG:1F21 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop97
; Global: Branch target inside Label: taken when 9F22.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop97:
dey ; CPU:$9F22 PRG:1F22 88
bne NmiHandler_OnNonzero20 ; CPU:$9F23 PRG:1F23 D0 F2
clc ; CPU:$9F25 PRG:1F25 18
rts ; CPU:$9F26 PRG:1F26 60
; -----------------------------------------------------------------------------
; Routine: Sub_9F27
; Global: Branch target inside Label: taken when 9F27.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9F27:
jsr Sub_A26E ; CPU:$9F27 PRG:1F27 20 6E A2
jsr Sub_9FB3 ; CPU:$9F2A PRG:1F2A 20 B3 9F
jsr Sub_9FC4 ; CPU:$9F2D PRG:1F2D 20 C4 9F
jsr Sub_9FD5 ; CPU:$9F30 PRG:1F30 20 D5 9F
jsr Sub_9FE6 ; CPU:$9F33 PRG:1F33 20 E6 9F
jsr Sub_9FF7 ; CPU:$9F36 PRG:1F36 20 F7 9F
jsr Sub_A00E ; CPU:$9F39 PRG:1F39 20 0E A0
jsr Sub_A03C ; CPU:$9F3C PRG:1F3C 20 3C A0
jsr Sub_A04D ; CPU:$9F3F PRG:1F3F 20 4D A0
jsr Sub_A05E ; CPU:$9F42 PRG:1F42 20 5E A0
jsr Sub_A06F ; CPU:$9F45 PRG:1F45 20 6F A0
lda #$80 ; CPU:$9F48 PRG:1F48 A9 80
sta ZpB8 ; CPU:$9F4A PRG:1F4A 85 B8
sta ZpBA ; CPU:$9F4C PRG:1F4C 85 BA
sta ZpBC ; CPU:$9F4E PRG:1F4E 85 BC
sta ZpBE ; CPU:$9F50 PRG:1F50 85 BE
lda #$47 ; CPU:$9F52 PRG:1F52 A9 47
sta $0304 ; CPU:$9F54 PRG:1F54 8D 04 03
sta $0306 ; CPU:$9F57 PRG:1F57 8D 06 03
sta $0308 ; CPU:$9F5A PRG:1F5A 8D 08 03
sta $030A ; CPU:$9F5D PRG:1F5D 8D 0A 03
lda #$50 ; CPU:$9F60 PRG:1F60 A9 50
sta ZpC9 ; CPU:$9F62 PRG:1F62 85 C9
lda #$70 ; CPU:$9F64 PRG:1F64 A9 70
sta ZpCB ; CPU:$9F66 PRG:1F66 85 CB
lda #$90 ; CPU:$9F68 PRG:1F68 A9 90
sta ZpCD ; CPU:$9F6A PRG:1F6A 85 CD
lda #$B0 ; CPU:$9F6C PRG:1F6C A9 B0
sta ZpCF ; CPU:$9F6E PRG:1F6E 85 CF
lda #$51 ; CPU:$9F70 PRG:1F70 A9 51
sta $0315 ; CPU:$9F72 PRG:1F72 8D 15 03
lda #$52 ; CPU:$9F75 PRG:1F75 A9 52
sta $0317 ; CPU:$9F77 PRG:1F77 8D 17 03
lda #$54 ; CPU:$9F7A PRG:1F7A A9 54
sta $0319 ; CPU:$9F7C PRG:1F7C 8D 19 03
lda #$56 ; CPU:$9F7F PRG:1F7F A9 56
sta $031B ; CPU:$9F81 PRG:1F81 8D 1B 03
lda #$A3 ; CPU:$9F84 PRG:1F84 A9 A3
sta Zp74 ; CPU:$9F86 PRG:1F86 85 74
lda #$F9 ; CPU:$9F88 PRG:1F88 A9 F9
sta Zp73 ; CPU:$9F8A PRG:1F8A 85 73
lda #$22 ; CPU:$9F8C PRG:1F8C A9 22
sta Zp72 ; CPU:$9F8E PRG:1F8E 85 72
lda #$6C ; CPU:$9F90 PRG:1F90 A9 6C
sta Zp71 ; CPU:$9F92 PRG:1F92 85 71
lda #$09 ; CPU:$9F94 PRG:1F94 A9 09
sta Zp70 ; CPU:$9F96 PRG:1F96 85 70
jsr Sub_973E ; CPU:$9F98 PRG:1F98 20 3E 97
lda #$A4 ; CPU:$9F9B PRG:1F9B A9 A4
sta Zp74 ; CPU:$9F9D PRG:1F9D 85 74
lda #$02 ; CPU:$9F9F PRG:1F9F A9 02
sta Zp73 ; CPU:$9FA1 PRG:1FA1 85 73
lda #$22 ; CPU:$9FA3 PRG:1FA3 A9 22
sta Zp72 ; CPU:$9FA5 PRG:1FA5 85 72
lda #$AC ; CPU:$9FA7 PRG:1FA7 A9 AC
sta Zp71 ; CPU:$9FA9 PRG:1FA9 85 71
lda #$09 ; CPU:$9FAB PRG:1FAB A9 09
sta Zp70 ; CPU:$9FAD PRG:1FAD 85 70
jsr Sub_973E ; CPU:$9FAF PRG:1FAF 20 3E 97
rts ; CPU:$9FB2 PRG:1FB2 60
; -----------------------------------------------------------------------------
; Routine: Sub_9FB3
; Global: Branch target inside Label: taken when 9FB3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9FB3:
lda #$68 ; CPU:$9FB3 PRG:1FB3 A9 68
sta Zp73 ; CPU:$9FB5 PRG:1FB5 85 73
lda #$A3 ; CPU:$9FB7 PRG:1FB7 A9 A3
sta Zp74 ; CPU:$9FB9 PRG:1FB9 85 74
lda #$A6 ; CPU:$9FBB PRG:1FBB A9 A6
sta Zp71 ; CPU:$9FBD PRG:1FBD 85 71
lda #$21 ; CPU:$9FBF PRG:1FBF A9 21
jmp Sub_A005 ; CPU:$9FC1 PRG:1FC1 4C 05 A0
; -----------------------------------------------------------------------------
; Routine: Sub_9FC4
; Global: Branch target inside Label: taken when 9FC4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9FC4:
lda #$74 ; CPU:$9FC4 PRG:1FC4 A9 74
sta Zp73 ; CPU:$9FC6 PRG:1FC6 85 73
lda #$A3 ; CPU:$9FC8 PRG:1FC8 A9 A3
sta Zp74 ; CPU:$9FCA PRG:1FCA 85 74
lda #$A9 ; CPU:$9FCC PRG:1FCC A9 A9
sta Zp71 ; CPU:$9FCE PRG:1FCE 85 71
lda #$21 ; CPU:$9FD0 PRG:1FD0 A9 21
jmp Sub_A005 ; CPU:$9FD2 PRG:1FD2 4C 05 A0
; -----------------------------------------------------------------------------
; Routine: Sub_9FD5
; Global: Branch target inside Label: taken when 9FD5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9FD5:
lda #$80 ; CPU:$9FD5 PRG:1FD5 A9 80
sta Zp73 ; CPU:$9FD7 PRG:1FD7 85 73
lda #$A3 ; CPU:$9FD9 PRG:1FD9 A9 A3
sta Zp74 ; CPU:$9FDB PRG:1FDB 85 74
lda #$AC ; CPU:$9FDD PRG:1FDD A9 AC
sta Zp71 ; CPU:$9FDF PRG:1FDF 85 71
lda #$21 ; CPU:$9FE1 PRG:1FE1 A9 21
jmp Sub_A005 ; CPU:$9FE3 PRG:1FE3 4C 05 A0
; -----------------------------------------------------------------------------
; Routine: Sub_9FE6
; Global: Branch target inside Label: taken when 9FE6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9FE6:
lda #$8C ; CPU:$9FE6 PRG:1FE6 A9 8C
sta Zp73 ; CPU:$9FE8 PRG:1FE8 85 73
lda #$A3 ; CPU:$9FEA PRG:1FEA A9 A3
sta Zp74 ; CPU:$9FEC PRG:1FEC 85 74
lda #$AF ; CPU:$9FEE PRG:1FEE A9 AF
sta Zp71 ; CPU:$9FF0 PRG:1FF0 85 71
lda #$21 ; CPU:$9FF2 PRG:1FF2 A9 21
jmp Sub_A005 ; CPU:$9FF4 PRG:1FF4 4C 05 A0
; -----------------------------------------------------------------------------
; Routine: Sub_9FF7
; Global: Branch target inside Label: taken when 9FF7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_9FF7:
lda #$98 ; CPU:$9FF7 PRG:1FF7 A9 98
sta Zp73 ; CPU:$9FF9 PRG:1FF9 85 73
lda #$A3 ; CPU:$9FFB PRG:1FFB A9 A3
sta Zp74 ; CPU:$9FFD PRG:1FFD 85 74
lda #$B1 ; CPU:$9FFF PRG:1FFF A9 B1
sta Zp71 ; CPU:$A001 PRG:2001 85 71
lda #$21 ; CPU:$A003 PRG:2003 A9 21
; -----------------------------------------------------------------------------
; Routine: Sub_A005
; Global: Branch target inside Label: taken when A005.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A005:
sta Zp72 ; CPU:$A005 PRG:2005 85 72
lda #$04 ; CPU:$A007 PRG:2007 A9 04
sta Zp6F ; CPU:$A009 PRG:2009 85 6F
jmp Sub_9786 ; CPU:$A00B PRG:200B 4C 86 97
; -----------------------------------------------------------------------------
; Routine: Sub_A00E
; Global: Branch target inside Label: taken when A00E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A00E:
lda #$A4 ; CPU:$A00E PRG:200E A9 A4
sta Zp73 ; CPU:$A010 PRG:2010 85 73
lda #$A3 ; CPU:$A012 PRG:2012 A9 A3
sta Zp74 ; CPU:$A014 PRG:2014 85 74
lda #$74 ; CPU:$A016 PRG:2016 A9 74
sta Zp71 ; CPU:$A018 PRG:2018 85 71
lda #$21 ; CPU:$A01A PRG:201A A9 21
sta Zp72 ; CPU:$A01C PRG:201C 85 72
lda #$06 ; CPU:$A01E PRG:201E A9 06
sta Zp6F ; CPU:$A020 PRG:2020 85 6F
jsr Sub_9786 ; CPU:$A022 PRG:2022 20 86 97
lda #$B6 ; CPU:$A025 PRG:2025 A9 B6
sta Zp73 ; CPU:$A027 PRG:2027 85 73
lda #$A3 ; CPU:$A029 PRG:2029 A9 A3
sta Zp74 ; CPU:$A02B PRG:202B 85 74
lda #$77 ; CPU:$A02D PRG:202D A9 77
sta Zp71 ; CPU:$A02F PRG:202F 85 71
lda #$21 ; CPU:$A031 PRG:2031 A9 21
sta Zp72 ; CPU:$A033 PRG:2033 85 72
lda #$06 ; CPU:$A035 PRG:2035 A9 06
sta Zp6F ; CPU:$A037 PRG:2037 85 6F
jmp Sub_9786 ; CPU:$A039 PRG:2039 4C 86 97
; -----------------------------------------------------------------------------
; Routine: Sub_A03C
; Global: Branch target inside Label: taken when A03C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A03C:
lda #$C8 ; CPU:$A03C PRG:203C A9 C8
sta Zp73 ; CPU:$A03E PRG:203E 85 73
lda #$A3 ; CPU:$A040 PRG:2040 A9 A3
sta Zp74 ; CPU:$A042 PRG:2042 85 74
lda #$E7 ; CPU:$A044 PRG:2044 A9 E7
sta Zp71 ; CPU:$A046 PRG:2046 85 71
lda #$20 ; CPU:$A048 PRG:2048 A9 20
jmp Sub_A07D ; CPU:$A04A PRG:204A 4C 7D A0
; -----------------------------------------------------------------------------
; Routine: Sub_A04D
; Global: Branch target inside Label: taken when A04D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A04D:
lda #$C8 ; CPU:$A04D PRG:204D A9 C8
sta Zp73 ; CPU:$A04F PRG:204F 85 73
lda #$A3 ; CPU:$A051 PRG:2051 A9 A3
sta Zp74 ; CPU:$A053 PRG:2053 85 74
lda #$EB ; CPU:$A055 PRG:2055 A9 EB
sta Zp71 ; CPU:$A057 PRG:2057 85 71
lda #$20 ; CPU:$A059 PRG:2059 A9 20
jmp Sub_A07D ; CPU:$A05B PRG:205B 4C 7D A0
; -----------------------------------------------------------------------------
; Routine: Sub_A05E
; Global: Branch target inside Label: taken when A05E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A05E:
lda #$D1 ; CPU:$A05E PRG:205E A9 D1
sta Zp73 ; CPU:$A060 PRG:2060 85 73
lda #$A3 ; CPU:$A062 PRG:2062 A9 A3
sta Zp74 ; CPU:$A064 PRG:2064 85 74
lda #$EF ; CPU:$A066 PRG:2066 A9 EF
sta Zp71 ; CPU:$A068 PRG:2068 85 71
lda #$20 ; CPU:$A06A PRG:206A A9 20
jmp Sub_A07D ; CPU:$A06C PRG:206C 4C 7D A0
; -----------------------------------------------------------------------------
; Routine: Sub_A06F
; Global: Branch target inside Label: taken when A06F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A06F:
lda #$DA ; CPU:$A06F PRG:206F A9 DA
sta Zp73 ; CPU:$A071 PRG:2071 85 73
lda #$A3 ; CPU:$A073 PRG:2073 A9 A3
sta Zp74 ; CPU:$A075 PRG:2075 85 74
lda #$F3 ; CPU:$A077 PRG:2077 A9 F3
sta Zp71 ; CPU:$A079 PRG:2079 85 71
lda #$20 ; CPU:$A07B PRG:207B A9 20
; -----------------------------------------------------------------------------
; Routine: Sub_A07D
; Global: Branch target inside Label: taken when A07D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A07D:
sta Zp72 ; CPU:$A07D PRG:207D 85 72
lda #$03 ; CPU:$A07F PRG:207F A9 03
sta Zp6F ; CPU:$A081 PRG:2081 85 6F
jmp Sub_9786 ; CPU:$A083 PRG:2083 4C 86 97
; ---- data $A086-$A0E4 (95 bytes) ----
.byte $A2, $00, $20, $28, $A2, $20, $A3, $82, $20, $50, $A2, $C9, $C0, $90, $F6, $20 ; CPU:$A086 PRG:2086 A2 00 20 28 A2 20 A3 82 20 50 A2 C9 C0 90 F6 20
.byte $A3, $82, $20, $64, $A2, $C9, $47, $B0, $F6, $A9, $00, $85, $B7, $20, $3C, $A0 ; CPU:$A096 PRG:2096 A3 82 20 64 A2 C9 47 B0 F6 A9 00 85 B7 20 3C A0
.byte $20, $66, $82, $A2, $01, $20, $28, $A2, $A9, $0A, $85, $6F, $A9, $00, $85, $70 ; CPU:$A0A6 PRG:20A6 20 66 82 A2 01 20 28 A2 A9 0A 85 6F A9 00 85 70
.byte $20, $80, $82, $20, $A3, $82, $20, $50, $A2, $C9, $C0, $90, $F6, $20, $A3, $82 ; CPU:$A0B6 PRG:20B6 20 80 82 20 A3 82 20 50 A2 C9 C0 90 F6 20 A3 82
.byte $20, $5A, $A2, $30, $F8, $20, $A3, $82, $20, $5A, $A2, $10, $F8, $20, $A3, $82 ; CPU:$A0C6 PRG:20C6 20 5A A2 30 F8 20 A3 82 20 5A A2 10 F8 20 A3 82
.byte $20, $50, $A2, $C9, $47, $90, $F6, $A9, $47, $8D, $04, $03, $20, $66, $82 ; CPU:$A0D6 PRG:20D6 20 50 A2 C9 47 90 F6 A9 47 8D 04 03 20 66 82
; -----------------------------------------------------------------------------
; Routine: Label_A0E5
; Global: Branch target inside Label: taken when A0E5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_A0E5:
ldx #$02 ; CPU:$A0E5 PRG:20E5 A2 02
jsr Sub_A228 ; CPU:$A0E7 PRG:20E7 20 28 A2
lda #$14 ; CPU:$A0EA PRG:20EA A9 14
sta Zp6F ; CPU:$A0EC PRG:20EC 85 6F
lda #$00 ; CPU:$A0EE PRG:20EE A9 00
sta Zp70 ; CPU:$A0F0 PRG:20F0 85 70
jsr Sub_8280 ; CPU:$A0F2 PRG:20F2 20 80 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear3
; Global: Branch target inside Label: taken when A0F5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear3:
jsr Sub_82A3 ; CPU:$A0F5 PRG:20F5 20 A3 82
jsr Sub_A250 ; CPU:$A0F8 PRG:20F8 20 50 A2
cmp #$C0 ; CPU:$A0FB PRG:20FB C9 C0
bcc NmiHandler_OnCarryClear3 ; CPU:$A0FD PRG:20FD 90 F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarrySet3
; Global: Branch target inside Label: taken when A0FF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarrySet3:
jsr Sub_82A3 ; CPU:$A0FF PRG:20FF 20 A3 82
jsr Sub_A264 ; CPU:$A102 PRG:2102 20 64 A2
cmp #$47 ; CPU:$A105 PRG:2105 C9 47
bcs NmiHandler_OnCarrySet3 ; CPU:$A107 PRG:2107 B0 F6
lda #$00 ; CPU:$A109 PRG:2109 A9 00
sta ZpB9 ; CPU:$A10B PRG:210B 85 B9
jsr Sub_A04D ; CPU:$A10D PRG:210D 20 4D A0
jsr Sub_8266 ; CPU:$A110 PRG:2110 20 66 82
ldx #$03 ; CPU:$A113 PRG:2113 A2 03
jsr Sub_A228 ; CPU:$A115 PRG:2115 20 28 A2
lda #$1E ; CPU:$A118 PRG:2118 A9 1E
sta Zp6F ; CPU:$A11A PRG:211A 85 6F
lda #$00 ; CPU:$A11C PRG:211C A9 00
sta Zp70 ; CPU:$A11E PRG:211E 85 70
jsr Sub_8280 ; CPU:$A120 PRG:2120 20 80 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear4
; Global: Branch target inside Label: taken when A123.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear4:
jsr Sub_82A3 ; CPU:$A123 PRG:2123 20 A3 82
jsr Sub_A250 ; CPU:$A126 PRG:2126 20 50 A2
cmp #$C0 ; CPU:$A129 PRG:2129 C9 C0
bcc NmiHandler_OnCarryClear4 ; CPU:$A12B PRG:212B 90 F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNegative
; Global: Branch target inside Label: taken when A12D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNegative:
jsr Sub_82A3 ; CPU:$A12D PRG:212D 20 A3 82
jsr Sub_A25A ; CPU:$A130 PRG:2130 20 5A A2
bmi NmiHandler_OnNegative ; CPU:$A133 PRG:2133 30 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative5
; Global: Branch target inside Label: taken when A135.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative5:
jsr Sub_82A3 ; CPU:$A135 PRG:2135 20 A3 82
jsr Sub_A25A ; CPU:$A138 PRG:2138 20 5A A2
bpl NmiHandler_OnNonnegative5 ; CPU:$A13B PRG:213B 10 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear5
; Global: Branch target inside Label: taken when A13D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear5:
jsr Sub_82A3 ; CPU:$A13D PRG:213D 20 A3 82
jsr Sub_A250 ; CPU:$A140 PRG:2140 20 50 A2
cmp #$47 ; CPU:$A143 PRG:2143 C9 47
bcc NmiHandler_OnCarryClear5 ; CPU:$A145 PRG:2145 90 F6
lda #$47 ; CPU:$A147 PRG:2147 A9 47
sta $0306 ; CPU:$A149 PRG:2149 8D 06 03
jsr Sub_8266 ; CPU:$A14C PRG:214C 20 66 82
; -----------------------------------------------------------------------------
; Routine: Label_A14F
; Global: Branch target inside Label: taken when A14F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_A14F:
ldx #$04 ; CPU:$A14F PRG:214F A2 04
jsr Sub_A228 ; CPU:$A151 PRG:2151 20 28 A2
lda #$28 ; CPU:$A154 PRG:2154 A9 28
sta Zp6F ; CPU:$A156 PRG:2156 85 6F
lda #$00 ; CPU:$A158 PRG:2158 A9 00
sta Zp70 ; CPU:$A15A PRG:215A 85 70
jsr Sub_8280 ; CPU:$A15C PRG:215C 20 80 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear6
; Global: Branch target inside Label: taken when A15F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear6:
jsr Sub_82A3 ; CPU:$A15F PRG:215F 20 A3 82
jsr Sub_A250 ; CPU:$A162 PRG:2162 20 50 A2
cmp #$C0 ; CPU:$A165 PRG:2165 C9 C0
bcc NmiHandler_OnCarryClear6 ; CPU:$A167 PRG:2167 90 F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarrySet4
; Global: Branch target inside Label: taken when A169.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarrySet4:
jsr Sub_82A3 ; CPU:$A169 PRG:2169 20 A3 82
jsr Sub_A264 ; CPU:$A16C PRG:216C 20 64 A2
cmp #$47 ; CPU:$A16F PRG:216F C9 47
bcs NmiHandler_OnCarrySet4 ; CPU:$A171 PRG:2171 B0 F6
lda #$00 ; CPU:$A173 PRG:2173 A9 00
sta ZpBB ; CPU:$A175 PRG:2175 85 BB
jsr Sub_A05E ; CPU:$A177 PRG:2177 20 5E A0
jsr Sub_8266 ; CPU:$A17A PRG:217A 20 66 82
; -----------------------------------------------------------------------------
; Routine: Label_A17D
; Global: Branch target inside Label: taken when A17D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_A17D:
ldx #$05 ; CPU:$A17D PRG:217D A2 05
jsr Sub_A228 ; CPU:$A17F PRG:217F 20 28 A2
lda #$32 ; CPU:$A182 PRG:2182 A9 32
sta Zp6F ; CPU:$A184 PRG:2184 85 6F
lda #$00 ; CPU:$A186 PRG:2186 A9 00
sta Zp70 ; CPU:$A188 PRG:2188 85 70
jsr Sub_8280 ; CPU:$A18A PRG:218A 20 80 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear7
; Global: Branch target inside Label: taken when A18D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear7:
jsr Sub_82A3 ; CPU:$A18D PRG:218D 20 A3 82
jsr Sub_A250 ; CPU:$A190 PRG:2190 20 50 A2
cmp #$C0 ; CPU:$A193 PRG:2193 C9 C0
bcc NmiHandler_OnCarryClear7 ; CPU:$A195 PRG:2195 90 F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNegative2
; Global: Branch target inside Label: taken when A197.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNegative2:
jsr Sub_82A3 ; CPU:$A197 PRG:2197 20 A3 82
jsr Sub_A25A ; CPU:$A19A PRG:219A 20 5A A2
bmi NmiHandler_OnNegative2 ; CPU:$A19D PRG:219D 30 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative6
; Global: Branch target inside Label: taken when A19F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative6:
jsr Sub_82A3 ; CPU:$A19F PRG:219F 20 A3 82
jsr Sub_A25A ; CPU:$A1A2 PRG:21A2 20 5A A2
bpl NmiHandler_OnNonnegative6 ; CPU:$A1A5 PRG:21A5 10 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear8
; Global: Branch target inside Label: taken when A1A7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear8:
jsr Sub_82A3 ; CPU:$A1A7 PRG:21A7 20 A3 82
jsr Sub_A250 ; CPU:$A1AA PRG:21AA 20 50 A2
cmp #$47 ; CPU:$A1AD PRG:21AD C9 47
bcc NmiHandler_OnCarryClear8 ; CPU:$A1AF PRG:21AF 90 F6
lda #$47 ; CPU:$A1B1 PRG:21B1 A9 47
sta $0308 ; CPU:$A1B3 PRG:21B3 8D 08 03
jsr Sub_8266 ; CPU:$A1B6 PRG:21B6 20 66 82
; -----------------------------------------------------------------------------
; Routine: Label_A1B9
; Global: Branch target inside Label: taken when A1B9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_A1B9:
ldx #$06 ; CPU:$A1B9 PRG:21B9 A2 06
jsr Sub_A228 ; CPU:$A1BB PRG:21BB 20 28 A2
lda #$3C ; CPU:$A1BE PRG:21BE A9 3C
sta Zp6F ; CPU:$A1C0 PRG:21C0 85 6F
lda #$00 ; CPU:$A1C2 PRG:21C2 A9 00
sta Zp70 ; CPU:$A1C4 PRG:21C4 85 70
jsr Sub_8280 ; CPU:$A1C6 PRG:21C6 20 80 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear9
; Global: Branch target inside Label: taken when A1C9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear9:
jsr Sub_82A3 ; CPU:$A1C9 PRG:21C9 20 A3 82
jsr Sub_A250 ; CPU:$A1CC PRG:21CC 20 50 A2
cmp #$C0 ; CPU:$A1CF PRG:21CF C9 C0
bcc NmiHandler_OnCarryClear9 ; CPU:$A1D1 PRG:21D1 90 F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarrySet5
; Global: Branch target inside Label: taken when A1D3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarrySet5:
jsr Sub_82A3 ; CPU:$A1D3 PRG:21D3 20 A3 82
jsr Sub_A264 ; CPU:$A1D6 PRG:21D6 20 64 A2
cmp #$47 ; CPU:$A1D9 PRG:21D9 C9 47
bcs NmiHandler_OnCarrySet5 ; CPU:$A1DB PRG:21DB B0 F6
lda #$00 ; CPU:$A1DD PRG:21DD A9 00
sta ZpBD ; CPU:$A1DF PRG:21DF 85 BD
jsr Sub_A06F ; CPU:$A1E1 PRG:21E1 20 6F A0
jsr Sub_8266 ; CPU:$A1E4 PRG:21E4 20 66 82
; -----------------------------------------------------------------------------
; Routine: Label_A1E7
; Global: Branch target inside Label: taken when A1E7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_A1E7:
ldx #$07 ; CPU:$A1E7 PRG:21E7 A2 07
jsr Sub_A228 ; CPU:$A1E9 PRG:21E9 20 28 A2
lda #$46 ; CPU:$A1EC PRG:21EC A9 46
sta Zp6F ; CPU:$A1EE PRG:21EE 85 6F
lda #$00 ; CPU:$A1F0 PRG:21F0 A9 00
sta Zp70 ; CPU:$A1F2 PRG:21F2 85 70
jsr Sub_8280 ; CPU:$A1F4 PRG:21F4 20 80 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear10
; Global: Branch target inside Label: taken when A1F7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear10:
jsr Sub_82A3 ; CPU:$A1F7 PRG:21F7 20 A3 82
jsr Sub_A250 ; CPU:$A1FA PRG:21FA 20 50 A2
cmp #$C0 ; CPU:$A1FD PRG:21FD C9 C0
bcc NmiHandler_OnCarryClear10 ; CPU:$A1FF PRG:21FF 90 F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNegative3
; Global: Branch target inside Label: taken when A201.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNegative3:
jsr Sub_82A3 ; CPU:$A201 PRG:2201 20 A3 82
jsr Sub_A25A ; CPU:$A204 PRG:2204 20 5A A2
bmi NmiHandler_OnNegative3 ; CPU:$A207 PRG:2207 30 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative7
; Global: Branch target inside Label: taken when A209.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative7:
jsr Sub_82A3 ; CPU:$A209 PRG:2209 20 A3 82
jsr Sub_A25A ; CPU:$A20C PRG:220C 20 5A A2
bpl NmiHandler_OnNonnegative7 ; CPU:$A20F PRG:220F 10 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear11
; Global: Branch target inside Label: taken when A211.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear11:
jsr Sub_82A3 ; CPU:$A211 PRG:2211 20 A3 82
jsr Sub_A250 ; CPU:$A214 PRG:2214 20 50 A2
cmp #$47 ; CPU:$A217 PRG:2217 C9 47
bcc NmiHandler_OnCarryClear11 ; CPU:$A219 PRG:2219 90 F6
lda #$47 ; CPU:$A21B PRG:221B A9 47
sta $030A ; CPU:$A21D PRG:221D 8D 0A 03
lda #$FF ; CPU:$A220 PRG:2220 A9 FF
sta $055A ; CPU:$A222 PRG:2222 8D 5A 05
jsr Sub_8266 ; CPU:$A225 PRG:2225 20 66 82
; -----------------------------------------------------------------------------
; Routine: Sub_A228
; Global: Branch target inside Label: taken when A228.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A228:
lda #$80 ; CPU:$A228 PRG:2228 A9 80
sta ZpB7,x ; CPU:$A22A PRG:222A 95 B7
lda #$00 ; CPU:$A22C PRG:222C A9 00
sta $0303,x ; CPU:$A22E PRG:222E 9D 03 03
sta $0325,x ; CPU:$A231 PRG:2231 9D 25 03
lda $A240,x ; CPU:$A234 PRG:2234 BD 40 A2
sta ZpC8,x ; CPU:$A237 PRG:2237 95 C8
lda $A248,x ; CPU:$A239 PRG:2239 BD 48 A2
sta $0314,x ; CPU:$A23C PRG:223C 9D 14 03
rts ; CPU:$A23F PRG:223F 60
; ---- data $A240-$A24F (16 bytes) ----
; referenced by `lda $A240,x` at $A234 (operand $A240 falls inside this region)
; referenced by `lda $A248,x` at $A239 (operand $A248 falls inside this region)
.byte $40, $50, $60, $70, $80, $90, $A0, $B0, $50, $51, $50, $52, $53, $54, $55, $56 ; CPU:$A240 PRG:2240 40 50 60 70 80 90 A0 B0 50 51 50 52 53 54 55 56
; -----------------------------------------------------------------------------
; Routine: Sub_A250
; Global: Branch target inside Label: taken when A250.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A250:
inc $0303,x ; CPU:$A250 PRG:2250 FE 03 03
inc $0303,x ; CPU:$A253 PRG:2253 FE 03 03
lda $0303,x ; CPU:$A256 PRG:2256 BD 03 03
rts ; CPU:$A259 PRG:2259 60
; -----------------------------------------------------------------------------
; Routine: Sub_A25A
; Global: Branch target inside Label: taken when A25A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A25A:
dec $0303,x ; CPU:$A25A PRG:225A DE 03 03
dec $0303,x ; CPU:$A25D PRG:225D DE 03 03
lda $0303,x ; CPU:$A260 PRG:2260 BD 03 03
rts ; CPU:$A263 PRG:2263 60
; -----------------------------------------------------------------------------
; Routine: Sub_A264
; Global: Branch target inside Label: taken when A264.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A264:
lda $0303,x ; CPU:$A264 PRG:2264 BD 03 03
sec ; CPU:$A267 PRG:2267 38
sbc #$04 ; CPU:$A268 PRG:2268 E9 04
sta $0303,x ; CPU:$A26A PRG:226A 9D 03 03
rts ; CPU:$A26D PRG:226D 60
; -----------------------------------------------------------------------------
; Routine: Sub_A26E
; Global: Branch target inside Label: taken when A26E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A26E:
lda #$00 ; CPU:$A26E PRG:226E A9 00
sta PPUCTRL ; CPU:$A270 PRG:2270 8D 00 20
sta PPUMASK ; CPU:$A273 PRG:2273 8D 01 20
lda PPUSTATUS ; CPU:$A276 PRG:2276 AD 02 20
lda #$16 ; CPU:$A279 PRG:2279 A9 16
sta PPUADDR ; CPU:$A27B PRG:227B 8D 06 20
jmp Sub_A3E3 ; CPU:$A27E PRG:227E 4C E3 A3
; ---- data $A281-$A284 (4 bytes) ----
.byte $E3, $A3, $3E, $97 ; CPU:$A281 PRG:2281 E3 A3 3E 97
; -----------------------------------------------------------------------------
; Routine: Sub_A285
; Global: Branch target inside Label: taken when A285.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A285:
rts ; CPU:$A285 PRG:2285 60
; -----------------------------------------------------------------------------
; Routine: Sub_A286
; Global: Branch target inside Label: taken when A286.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A286:
lda #$48 ; CPU:$A286 PRG:2286 A9 48
sta Zp73 ; CPU:$A288 PRG:2288 85 73
lda #$A3 ; CPU:$A28A PRG:228A A9 A3
sta Zp74 ; CPU:$A28C PRG:228C 85 74
lda #$60 ; CPU:$A28E PRG:228E A9 60
sta Zp71 ; CPU:$A290 PRG:2290 85 71
lda #$20 ; CPU:$A292 PRG:2292 A9 20
sta Zp72 ; CPU:$A294 PRG:2294 85 72
lda #$20 ; CPU:$A296 PRG:2296 A9 20
sta Zp70 ; CPU:$A298 PRG:2298 85 70
jsr Sub_973E ; CPU:$A29A PRG:229A 20 3E 97
ldy #$00 ; CPU:$A29D PRG:229D A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero21
; Global: Branch target inside Label: taken when A29F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero21:
lda $056B,y ; CPU:$A29F PRG:229F B9 6B 05
and #$0F ; CPU:$A2A2 PRG:22A2 29 0F
ora #$90 ; CPU:$A2A4 PRG:22A4 09 90
sta $056B,y ; CPU:$A2A6 PRG:22A6 99 6B 05
iny ; CPU:$A2A9 PRG:22A9 C8
cpy #$12 ; CPU:$A2AA PRG:22AA C0 12
bne NmiHandler_OnNonzero21 ; CPU:$A2AC PRG:22AC D0 F1
lda #$6B ; CPU:$A2AE PRG:22AE A9 6B
sta Zp73 ; CPU:$A2B0 PRG:22B0 85 73
lda #$05 ; CPU:$A2B2 PRG:22B2 A9 05
sta Zp74 ; CPU:$A2B4 PRG:22B4 85 74
lda #$84 ; CPU:$A2B6 PRG:22B6 A9 84
sta Zp71 ; CPU:$A2B8 PRG:22B8 85 71
lda #$20 ; CPU:$A2BA PRG:22BA A9 20
sta Zp72 ; CPU:$A2BC PRG:22BC 85 72
lda #$06 ; CPU:$A2BE PRG:22BE A9 06
sta Zp70 ; CPU:$A2C0 PRG:22C0 85 70
jsr Sub_973E ; CPU:$A2C2 PRG:22C2 20 3E 97
lda #$71 ; CPU:$A2C5 PRG:22C5 A9 71
sta Zp73 ; CPU:$A2C7 PRG:22C7 85 73
lda #$05 ; CPU:$A2C9 PRG:22C9 A9 05
sta Zp74 ; CPU:$A2CB PRG:22CB 85 74
lda #$8D ; CPU:$A2CD PRG:22CD A9 8D
sta Zp71 ; CPU:$A2CF PRG:22CF 85 71
lda #$20 ; CPU:$A2D1 PRG:22D1 A9 20
sta Zp72 ; CPU:$A2D3 PRG:22D3 85 72
lda #$06 ; CPU:$A2D5 PRG:22D5 A9 06
sta Zp70 ; CPU:$A2D7 PRG:22D7 85 70
jsr Sub_973E ; CPU:$A2D9 PRG:22D9 20 3E 97
lda $068C ; CPU:$A2DC PRG:22DC AD 8C 06
beq NmiHandler_Loop98 ; CPU:$A2DF PRG:22DF F0 17
lda #$77 ; CPU:$A2E1 PRG:22E1 A9 77
sta Zp73 ; CPU:$A2E3 PRG:22E3 85 73
lda #$05 ; CPU:$A2E5 PRG:22E5 A9 05
sta Zp74 ; CPU:$A2E7 PRG:22E7 85 74
lda #$96 ; CPU:$A2E9 PRG:22E9 A9 96
sta Zp71 ; CPU:$A2EB PRG:22EB 85 71
lda #$20 ; CPU:$A2ED PRG:22ED A9 20
sta Zp72 ; CPU:$A2EF PRG:22EF 85 72
lda #$06 ; CPU:$A2F1 PRG:22F1 A9 06
sta Zp70 ; CPU:$A2F3 PRG:22F3 85 70
jmp Sub_973E ; CPU:$A2F5 PRG:22F5 4C 3E 97
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop98
; Global: Branch target inside Label: taken when A2F8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop98:
lda #$DA ; CPU:$A2F8 PRG:22F8 A9 DA
sta Zp73 ; CPU:$A2FA PRG:22FA 85 73
lda #$FF ; CPU:$A2FC PRG:22FC A9 FF
sta Zp74 ; CPU:$A2FE PRG:22FE 85 74
lda #$76 ; CPU:$A300 PRG:2300 A9 76
sta Zp71 ; CPU:$A302 PRG:2302 85 71
lda #$20 ; CPU:$A304 PRG:2304 A9 20
sta Zp72 ; CPU:$A306 PRG:2306 85 72
lda #$06 ; CPU:$A308 PRG:2308 A9 06
sta Zp70 ; CPU:$A30A PRG:230A 85 70
jmp Sub_973E ; CPU:$A30C PRG:230C 4C 3E 97
; -----------------------------------------------------------------------------
; Routine: Sub_A30F
; Global: Branch target inside Label: taken when A30F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A30F:
lda #$0B ; CPU:$A30F PRG:230F A9 0B
sta Zp73 ; CPU:$A311 PRG:2311 85 73
lda #$A4 ; CPU:$A313 PRG:2313 A9 A4
sta Zp74 ; CPU:$A315 PRG:2315 85 74
jsr Sub_9777 ; CPU:$A317 PRG:2317 20 77 97
lda #$2B ; CPU:$A31A PRG:231A A9 2B
sta Zp73 ; CPU:$A31C PRG:231C 85 73
lda #$A4 ; CPU:$A31E PRG:231E A9 A4
sta Zp74 ; CPU:$A320 PRG:2320 85 74
lda #$C0 ; CPU:$A322 PRG:2322 A9 C0
sta Zp71 ; CPU:$A324 PRG:2324 85 71
lda #$23 ; CPU:$A326 PRG:2326 A9 23
sta Zp72 ; CPU:$A328 PRG:2328 85 72
lda #$20 ; CPU:$A32A PRG:232A A9 20
sta Zp70 ; CPU:$A32C PRG:232C 85 70
jsr Sub_973E ; CPU:$A32E PRG:232E 20 3E 97
lda #$4B ; CPU:$A331 PRG:2331 A9 4B
sta Zp73 ; CPU:$A333 PRG:2333 85 73
lda #$A4 ; CPU:$A335 PRG:2335 A9 A4
sta Zp74 ; CPU:$A337 PRG:2337 85 74
lda #$E0 ; CPU:$A339 PRG:2339 A9 E0
sta Zp71 ; CPU:$A33B PRG:233B 85 71
lda #$23 ; CPU:$A33D PRG:233D A9 23
sta Zp72 ; CPU:$A33F PRG:233F 85 72
lda #$20 ; CPU:$A341 PRG:2341 A9 20
sta Zp70 ; CPU:$A343 PRG:2343 85 70
jmp Sub_973E ; CPU:$A345 PRG:2345 4C 3E 97
; ---- data $A348-$A3E2 (155 bytes) ----
.byte $FF, $FF, $FF, $FF, $FF, $91, $A7, $A2, $FF, $FF, $FF, $FF, $8A, $8B, $71, $A5 ; CPU:$A348 PRG:2348 FF FF FF FF FF 91 A7 A2 FF FF FF FF 8A 8B 71 A5
.byte $9C, $90, $A4, $9E, $FF, $FF, $FF, $FF, $92, $A7, $A2, $FF, $FF, $FF, $FF, $FF ; CPU:$A358 PRG:2358 9C 90 A4 9E FF FF FF FF 92 A7 A2 FF FF FF FF FF
.byte $FF, $C0, $FF, $C3, $C2, $C1, $C6, $C5, $C4, $C9, $C8, $C7, $CC, $CB, $CA, $CF ; CPU:$A368 PRG:2368 FF C0 FF C3 C2 C1 C6 C5 C4 C9 C8 C7 CC CB CA CF
.byte $CE, $CD, $D2, $D1, $D0, $D5, $D4, $D3, $D8, $D7, $D6, $DB, $DA, $D9, $FF, $DA ; CPU:$A378 PRG:2378 CE CD D2 D1 D0 D5 D4 D3 D8 D7 D6 DB DA D9 FF DA
.byte $FF, $DE, $DD, $DC, $FF, $E0, $DF, $FF, $E2, $E1, $FF, $E2, $E1, $FF, $E4, $E3 ; CPU:$A388 PRG:2388 FF DE DD DC FF E0 DF FF E2 E1 FF E2 E1 FF E4 E3
.byte $E6, $E5, $CA, $E7, $CE, $CD, $E8, $D1, $D0, $D5, $D4, $D3, $FF, $F5, $F4, $FF ; CPU:$A398 PRG:2398 E6 E5 CA E7 CE CD E8 D1 D0 D5 D4 D3 FF F5 F4 FF
.byte $F7, $F6, $FF, $F9, $F8, $EB, $EA, $E9, $EF, $EE, $E1, $F1, $E4, $E3, $FF, $FF ; CPU:$A3A8 PRG:23A8 F7 F6 FF F9 F8 EB EA E9 EF EE E1 F1 E4 E3 FF FF
.byte $FA, $FF, $FC, $FB, $FF, $FE, $FD, $FF, $ED, $EC, $FF, $E2, $F0, $FF, $F3, $F2 ; CPU:$A3B8 PRG:23B8 FA FF FC FB FF FE FD FF ED EC FF E2 F0 FF F3 F2
.byte $FF, $AF, $AE, $FF, $B1, $B0, $FF, $B3, $B2, $FF, $B5, $B4, $FF, $B7, $B6, $FF ; CPU:$A3C8 PRG:23C8 FF AF AE FF B1 B0 FF B3 B2 FF B5 B4 FF B7 B6 FF
.byte $B8, $B8, $FF, $BB, $BA, $FF, $BD, $BC, $FF, $BF, $BE ; CPU:$A3D8 PRG:23D8 B8 B8 FF BB BA FF BD BC FF BF BE
; -----------------------------------------------------------------------------
; Routine: Sub_A3E3
; Global: Branch target inside Label: taken when A3E3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A3E3:
lda #$70 ; CPU:$A3E3 PRG:23E3 A9 70
sta PPUADDR ; CPU:$A3E5 PRG:23E5 8D 06 20
ldy #$00 ; CPU:$A3E8 PRG:23E8 A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero22
; Global: Branch target inside Label: taken when A3EA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero22:
lda PPUDATA ; CPU:$A3EA PRG:23EA AD 07 20
sta $0200,y ; CPU:$A3ED PRG:23ED 99 00 02
iny ; CPU:$A3F0 PRG:23F0 C8
bne NmiHandler_OnNonzero22 ; CPU:$A3F1 PRG:23F1 D0 F7
jsr $0201 ; CPU:$A3F3 PRG:23F3 20 01 02
jmp Sub_BCAB ; CPU:$A3F6 PRG:23F6 4C AB BC
; ---- data $A3F9-$A46E (118 bytes) ----
.byte $91, $FF, $A2, $8E, $9A, $AB, $9E, $A4, $FF, $92, $FF, $A2, $8E, $9A, $AB, $9E ; CPU:$A3F9 PRG:23F9 91 FF A2 8E 9A AB 9E A4 FF 92 FF A2 8E 9A AB 9E
.byte $A4, $A5, $0F, $19, $27, $0F, $0F, $16, $27, $11, $0F, $36, $30, $07, $0F, $30 ; CPU:$A409 PRG:2409 A4 A5 0F 19 27 0F 0F 16 27 11 0F 36 30 07 0F 30
.byte $36, $11, $0F, $19, $00, $00, $0F, $36, $22, $00, $0F, $00, $00, $30, $0F, $00 ; CPU:$A419 PRG:2419 36 11 0F 19 00 00 0F 36 22 00 0F 00 00 30 0F 00
.byte $00, $00, $55, $55, $55, $55, $55, $55, $55, $55, $0F, $0F, $0F, $0F, $0F, $0F ; CPU:$A429 PRG:2429 00 00 55 55 55 55 55 55 55 55 0F 0F 0F 0F 0F 0F
.byte $0F, $0F, $00, $00, $00, $00, $00, $E0, $30, $00, $00, $44, $55, $55, $55, $5E ; CPU:$A439 PRG:2439 0F 0F 00 00 00 00 00 E0 30 00 00 44 55 55 55 5E
.byte $13, $00, $F0, $F4, $F5, $F5, $F5, $F5, $F1, $F0, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$A449 PRG:2449 13 00 F0 F4 F5 F5 F5 F5 F1 F0 FF FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $00, $00 ; CPU:$A459 PRG:2459 FF FF FF FF FF FF FF FF FF FF FF FF FF FF 00 00
.byte $00, $00, $00, $00, $00, $00 ; CPU:$A469 PRG:2469 00 00 00 00 00 00
; -----------------------------------------------------------------------------
; Routine: Sub_A46F
; Global: Branch target inside Label: taken when A46F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A46F:
lda #$00 ; CPU:$A46F PRG:246F A9 00
sta $0674 ; CPU:$A471 PRG:2471 8D 74 06
inc $0673 ; CPU:$A474 PRG:2474 EE 73 06
; -----------------------------------------------------------------------------
; Routine: Sub_A477
; Global: Branch target inside Label: taken when A477.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A477:
lda $055D ; CPU:$A477 PRG:2477 AD 5D 05
bpl NmiHandler_Loop99 ; CPU:$A47A PRG:247A 10 03
jmp Sub_A51D ; CPU:$A47C PRG:247C 4C 1D A5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop99
; Global: Branch target inside Label: taken when A47F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop99:
bne NmiHandler_Loop100 ; CPU:$A47F PRG:247F D0 06
jmp Sub_A5A9 ; CPU:$A481 PRG:2481 4C A9 A5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero23
; Global: Branch target inside Label: taken when A484.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero23:
jmp NmiHandler_Loop105 ; CPU:$A484 PRG:2484 4C 13 A5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop100
; Global: Branch target inside Label: taken when A487.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop100:
lda $0566 ; CPU:$A487 PRG:2487 AD 66 05
cmp #$F3 ; CPU:$A48A PRG:248A C9 F3
bcc NmiHandler_Loop101 ; CPU:$A48C PRG:248C 90 08
bne NmiHandler_OnNonzero23 ; CPU:$A48E PRG:248E D0 F4
lda Zp8F ; CPU:$A490 PRG:2490 A5 8F
and #$06 ; CPU:$A492 PRG:2492 29 06
beq NmiHandler_Loop105 ; CPU:$A494 PRG:2494 F0 7D
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop101
; Global: Branch target inside Label: taken when A496.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop101:
jsr Sub_A617 ; CPU:$A496 PRG:2496 20 17 A6
lda Zp8F ; CPU:$A499 PRG:2499 A5 8F
sec ; CPU:$A49B PRG:249B 38
sbc #$F0 ; CPU:$A49C PRG:249C E9 F0
bcc NmiHandler_Loop102 ; CPU:$A49E PRG:249E 90 05
sta Zp8F ; CPU:$A4A0 PRG:24A0 85 8F
jsr Sub_A516 ; CPU:$A4A2 PRG:24A2 20 16 A5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop102
; Global: Branch target inside Label: taken when A4A5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop102:
lda $0680 ; CPU:$A4A5 PRG:24A5 AD 80 06
clc ; CPU:$A4A8 PRG:24A8 18
adc $055D ; CPU:$A4A9 PRG:24A9 6D 5D 05
sta $0680 ; CPU:$A4AC PRG:24AC 8D 80 06
sec ; CPU:$A4AF PRG:24AF 38
sbc #$30 ; CPU:$A4B0 PRG:24B0 E9 30
bcc NmiHandler_Loop104 ; CPU:$A4B2 PRG:24B2 90 1D
sta $0680 ; CPU:$A4B4 PRG:24B4 8D 80 06
inc $058F ; CPU:$A4B7 PRG:24B7 EE 8F 05
lda $058F ; CPU:$A4BA PRG:24BA AD 8F 05
cmp #$1C ; CPU:$A4BD PRG:24BD C9 1C
bne NmiHandler_Loop103 ; CPU:$A4BF PRG:24BF D0 03
jsr Sub_C450 ; CPU:$A4C1 PRG:24C1 20 50 C4
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop103
; Global: Branch target inside Label: taken when A4C4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop103:
ldy $058F ; CPU:$A4C4 PRG:24C4 AC 8F 05
iny ; CPU:$A4C7 PRG:24C7 C8
iny ; CPU:$A4C8 PRG:24C8 C8
lda $05BA,y ; CPU:$A4C9 PRG:24C9 B9 BA 05
beq NmiHandler_Loop104 ; CPU:$A4CC PRG:24CC F0 03
jsr Sub_D0EE ; CPU:$A4CE PRG:24CE 20 EE D0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop104
; Global: Branch target inside Label: taken when A4D1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop104:
jsr Sub_A63F ; CPU:$A4D1 PRG:24D1 20 3F A6
bcc NmiHandler_Loop105 ; CPU:$A4D4 PRG:24D4 90 3D
lda $055E ; CPU:$A4D6 PRG:24D6 AD 5E 05
sta Zp71 ; CPU:$A4D9 PRG:24D9 85 71
lda $055F ; CPU:$A4DB PRG:24DB AD 5F 05
sta Zp72 ; CPU:$A4DE PRG:24DE 85 72
lda $0566 ; CPU:$A4E0 PRG:24E0 AD 66 05
jsr Sub_A863 ; CPU:$A4E3 PRG:24E3 20 63 A8
jsr Sub_A749 ; CPU:$A4E6 PRG:24E6 20 49 A7
jsr Sub_A761 ; CPU:$A4E9 PRG:24E9 20 61 A7
inc $0566 ; CPU:$A4EC PRG:24EC EE 66 05
inc $0567 ; CPU:$A4EF PRG:24EF EE 67 05
jsr Sub_A6CF ; CPU:$A4F2 PRG:24F2 20 CF A6
bcc NmiHandler_Loop105 ; CPU:$A4F5 PRG:24F5 90 1C
lda $0562 ; CPU:$A4F7 PRG:24F7 AD 62 05
sta Zp71 ; CPU:$A4FA PRG:24FA 85 71
lda $0563 ; CPU:$A4FC PRG:24FC AD 63 05
sta Zp72 ; CPU:$A4FF PRG:24FF 85 72
lda $0568 ; CPU:$A501 PRG:2501 AD 68 05
jsr Sub_AA2F ; CPU:$A504 PRG:2504 20 2F AA
jsr Sub_A803 ; CPU:$A507 PRG:2507 20 03 A8
jsr Sub_A81B ; CPU:$A50A PRG:250A 20 1B A8
inc $0568 ; CPU:$A50D PRG:250D EE 68 05
inc $0569 ; CPU:$A510 PRG:2510 EE 69 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop105
; Global: Branch target inside Label: taken when A513.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop105:
jmp NmiHandler_OnZero3 ; CPU:$A513 PRG:2513 4C A3 A5
; -----------------------------------------------------------------------------
; Routine: Sub_A516
; Global: Branch target inside Label: taken when A516.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A516:
lda Zp88 ; CPU:$A516 PRG:2516 A5 88
eor #$02 ; CPU:$A518 PRG:2518 49 02
sta Zp88 ; CPU:$A51A PRG:251A 85 88
rts ; CPU:$A51C PRG:251C 60
; -----------------------------------------------------------------------------
; Routine: Sub_A51D
; Global: Branch target inside Label: taken when A51D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A51D:
lda $0567 ; CPU:$A51D PRG:251D AD 67 05
cmp #$08 ; CPU:$A520 PRG:2520 C9 08
bne NmiHandler_Loop106 ; CPU:$A522 PRG:2522 D0 06
lda Zp8F ; CPU:$A524 PRG:2524 A5 8F
and #$07 ; CPU:$A526 PRG:2526 29 07
beq NmiHandler_OnZero3 ; CPU:$A528 PRG:2528 F0 79
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop106
; Global: Branch target inside Label: taken when A52A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop106:
jsr Sub_A617 ; CPU:$A52A PRG:252A 20 17 A6
lda Zp8F ; CPU:$A52D PRG:252D A5 8F
cmp #$F0 ; CPU:$A52F PRG:252F C9 F0
bcc NmiHandler_Loop107 ; CPU:$A531 PRG:2531 90 08
clc ; CPU:$A533 PRG:2533 18
adc #$F0 ; CPU:$A534 PRG:2534 69 F0
sta Zp8F ; CPU:$A536 PRG:2536 85 8F
jsr Sub_A516 ; CPU:$A538 PRG:2538 20 16 A5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop107
; Global: Branch target inside Label: taken when A53B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop107:
lda $0680 ; CPU:$A53B PRG:253B AD 80 06
clc ; CPU:$A53E PRG:253E 18
adc $055D ; CPU:$A53F PRG:253F 6D 5D 05
sta $0680 ; CPU:$A542 PRG:2542 8D 80 06
beq NmiHandler_Loop108 ; CPU:$A545 PRG:2545 F0 02
bpl NmiHandler_Loop109 ; CPU:$A547 PRG:2547 10 18
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop108
; Global: Branch target inside Label: taken when A549.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop108:
clc ; CPU:$A549 PRG:2549 18
adc #$30 ; CPU:$A54A PRG:254A 69 30
sta $0680 ; CPU:$A54C PRG:254C 8D 80 06
dec $058F ; CPU:$A54F PRG:254F CE 8F 05
ldy $058F ; CPU:$A552 PRG:2552 AC 8F 05
dey ; CPU:$A555 PRG:2555 88
dey ; CPU:$A556 PRG:2556 88
dey ; CPU:$A557 PRG:2557 88
dey ; CPU:$A558 PRG:2558 88
lda $05BA,y ; CPU:$A559 PRG:2559 B9 BA 05
beq NmiHandler_Loop109 ; CPU:$A55C PRG:255C F0 03
jsr Sub_D0EE ; CPU:$A55E PRG:255E 20 EE D0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop109
; Global: Branch target inside Label: taken when A561.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop109:
jsr Sub_A63F ; CPU:$A561 PRG:2561 20 3F A6
bcc NmiHandler_OnZero3 ; CPU:$A564 PRG:2564 90 3D
lda $0560 ; CPU:$A566 PRG:2566 AD 60 05
sta Zp71 ; CPU:$A569 PRG:2569 85 71
lda $0561 ; CPU:$A56B PRG:256B AD 61 05
sta Zp72 ; CPU:$A56E PRG:256E 85 72
lda $0567 ; CPU:$A570 PRG:2570 AD 67 05
jsr Sub_A863 ; CPU:$A573 PRG:2573 20 63 A8
jsr Sub_A779 ; CPU:$A576 PRG:2576 20 79 A7
jsr Sub_A791 ; CPU:$A579 PRG:2579 20 91 A7
dec $0566 ; CPU:$A57C PRG:257C CE 66 05
dec $0567 ; CPU:$A57F PRG:257F CE 67 05
jsr Sub_A6CF ; CPU:$A582 PRG:2582 20 CF A6
bcc NmiHandler_OnZero3 ; CPU:$A585 PRG:2585 90 1C
lda $0564 ; CPU:$A587 PRG:2587 AD 64 05
sta Zp71 ; CPU:$A58A PRG:258A 85 71
lda $0565 ; CPU:$A58C PRG:258C AD 65 05
sta Zp72 ; CPU:$A58F PRG:258F 85 72
lda $0569 ; CPU:$A591 PRG:2591 AD 69 05
jsr Sub_AA2F ; CPU:$A594 PRG:2594 20 2F AA
jsr Sub_A84B ; CPU:$A597 PRG:2597 20 4B A8
jsr Sub_A833 ; CPU:$A59A PRG:259A 20 33 A8
dec $0569 ; CPU:$A59D PRG:259D CE 69 05
dec $0568 ; CPU:$A5A0 PRG:25A0 CE 68 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero3
; Global: Branch target inside Label: taken when A5A3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero3:
lda #$00 ; CPU:$A5A3 PRG:25A3 A9 00
sta $055D ; CPU:$A5A5 PRG:25A5 8D 5D 05
rts ; CPU:$A5A8 PRG:25A8 60
; -----------------------------------------------------------------------------
; Routine: Sub_A5A9
; Global: Branch target inside Label: taken when A5A9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A5A9:
lda ZpBE ; CPU:$A5A9 PRG:25A9 A5 BE
and #$01 ; CPU:$A5AB PRG:25AB 29 01
bne NmiHandler_OnZero3 ; CPU:$A5AD PRG:25AD D0 F4
lda ZpBE ; CPU:$A5AF PRG:25AF A5 BE
and #$54 ; CPU:$A5B1 PRG:25B1 29 54
beq NmiHandler_Loop110 ; CPU:$A5B3 PRG:25B3 F0 0E
and #$14 ; CPU:$A5B5 PRG:25B5 29 14
beq NmiHandler_OnZero3 ; CPU:$A5B7 PRG:25B7 F0 EA
ldy $03DE ; CPU:$A5B9 PRG:25B9 AC DE 03
lda $0408,y ; CPU:$A5BC PRG:25BC B9 08 04
cmp #$18 ; CPU:$A5BF PRG:25BF C9 18
bne NmiHandler_OnZero3 ; CPU:$A5C1 PRG:25C1 D0 E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop110
; Global: Branch target inside Label: taken when A5C3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop110:
jsr Sub_9A08 ; CPU:$A5C3 PRG:25C3 20 08 9A
sec ; CPU:$A5C6 PRG:25C6 38
lda Zp73 ; CPU:$A5C7 PRG:25C7 A5 73
sbc $0684 ; CPU:$A5C9 PRG:25C9 ED 84 06
sta Zp73 ; CPU:$A5CC PRG:25CC 85 73
lda Zp74 ; CPU:$A5CE PRG:25CE A5 74
sbc $0685 ; CPU:$A5D0 PRG:25D0 ED 85 06
bmi NmiHandler_Loop111 ; CPU:$A5D3 PRG:25D3 30 0C
lda Zp73 ; CPU:$A5D5 PRG:25D5 A5 73
beq NmiHandler_OnZero3 ; CPU:$A5D7 PRG:25D7 F0 CA
cmp #$08 ; CPU:$A5D9 PRG:25D9 C9 08
bcc NmiHandler_Loop112 ; CPU:$A5DB PRG:25DB 90 0C
lda #$08 ; CPU:$A5DD PRG:25DD A9 08
bne NmiHandler_Loop112 ; CPU:$A5DF PRG:25DF D0 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop111
; Global: Branch target inside Label: taken when A5E1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop111:
lda Zp73 ; CPU:$A5E1 PRG:25E1 A5 73
cmp #$F8 ; CPU:$A5E3 PRG:25E3 C9 F8
bcs NmiHandler_Loop112 ; CPU:$A5E5 PRG:25E5 B0 02
lda #$F8 ; CPU:$A5E7 PRG:25E7 A9 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop112
; Global: Branch target inside Label: taken when A5E9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop112:
sta $055D ; CPU:$A5E9 PRG:25E9 8D 5D 05
jmp Sub_A477 ; CPU:$A5EC PRG:25EC 4C 77 A4
; -----------------------------------------------------------------------------
; Routine: Sub_A5EF
; Global: Branch target inside Label: taken when A5EF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A5EF:
ldy $058F ; CPU:$A5EF PRG:25EF AC 8F 05
cpy #$1F ; CPU:$A5F2 PRG:25F2 C0 1F
beq NmiHandler_OnZero3 ; CPU:$A5F4 PRG:25F4 F0 AD
lda $BADB,y ; CPU:$A5F6 PRG:25F6 B9 DB BA
sta Zp8F ; CPU:$A5F9 PRG:25F9 85 8F
lda Zp88 ; CPU:$A5FB PRG:25FB A5 88
and #$FD ; CPU:$A5FD PRG:25FD 29 FD
eor $BB03,y ; CPU:$A5FF PRG:25FF 59 03 BB
sta Zp88 ; CPU:$A602 PRG:2602 85 88
jsr Sub_9A08 ; CPU:$A604 PRG:2604 20 08 9A
lda Zp73 ; CPU:$A607 PRG:2607 A5 73
sta $0684 ; CPU:$A609 PRG:2609 8D 84 06
lda Zp74 ; CPU:$A60C PRG:260C A5 74
sta $0685 ; CPU:$A60E PRG:260E 8D 85 06
lda #$18 ; CPU:$A611 PRG:2611 A9 18
sta $0680 ; CPU:$A613 PRG:2613 8D 80 06
rts ; CPU:$A616 PRG:2616 60
; -----------------------------------------------------------------------------
; Routine: Sub_A617
; Global: Branch target inside Label: taken when A617.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A617:
lda Zp8F ; CPU:$A617 PRG:2617 A5 8F
sta $056A ; CPU:$A619 PRG:2619 8D 6A 05
clc ; CPU:$A61C PRG:261C 18
adc $055D ; CPU:$A61D PRG:261D 6D 5D 05
sta Zp8F ; CPU:$A620 PRG:2620 85 8F
lda #$00 ; CPU:$A622 PRG:2622 A9 00
sta Zp70 ; CPU:$A624 PRG:2624 85 70
lda $055D ; CPU:$A626 PRG:2626 AD 5D 05
bpl NmiHandler_Loop113 ; CPU:$A629 PRG:2629 10 04
ldy #$FF ; CPU:$A62B PRG:262B A0 FF
sty Zp70 ; CPU:$A62D PRG:262D 84 70
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop113
; Global: Branch target inside Label: taken when A62F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop113:
clc ; CPU:$A62F PRG:262F 18
adc $0684 ; CPU:$A630 PRG:2630 6D 84 06
sta $0684 ; CPU:$A633 PRG:2633 8D 84 06
lda Zp70 ; CPU:$A636 PRG:2636 A5 70
adc $0685 ; CPU:$A638 PRG:2638 6D 85 06
sta $0685 ; CPU:$A63B PRG:263B 8D 85 06
rts ; CPU:$A63E PRG:263E 60
; -----------------------------------------------------------------------------
; Routine: Sub_A63F
; Global: Branch target inside Label: taken when A63F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A63F:
lda Zp8F ; CPU:$A63F PRG:263F A5 8F
and #$08 ; CPU:$A641 PRG:2641 29 08
sta Zp6F ; CPU:$A643 PRG:2643 85 6F
lda $056A ; CPU:$A645 PRG:2645 AD 6A 05
and #$08 ; CPU:$A648 PRG:2648 29 08
cmp Zp6F ; CPU:$A64A PRG:264A C5 6F
bne NmiHandler_Loop114 ; CPU:$A64C PRG:264C D0 02
clc ; CPU:$A64E PRG:264E 18
rts ; CPU:$A64F PRG:264F 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop114
; Global: Branch target inside Label: taken when A650.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop114:
lda #$00 ; CPU:$A650 PRG:2650 A9 00
sta $06E5 ; CPU:$A652 PRG:2652 8D E5 06
lda $055D ; CPU:$A655 PRG:2655 AD 5D 05
bpl NmiHandler_Loop117 ; CPU:$A658 PRG:2658 10 36
sta $06E5 ; CPU:$A65A PRG:265A 8D E5 06
lda $04D8 ; CPU:$A65D PRG:265D AD D8 04
sec ; CPU:$A660 PRG:2660 38
sbc #$20 ; CPU:$A661 PRG:2661 E9 20
sta $04D8 ; CPU:$A663 PRG:2663 8D D8 04
lda $04D9 ; CPU:$A666 PRG:2666 AD D9 04
sbc #$00 ; CPU:$A669 PRG:2669 E9 00
sta $04D9 ; CPU:$A66B PRG:266B 8D D9 04
cmp #$1F ; CPU:$A66E PRG:266E C9 1F
beq NmiHandler_Loop115 ; CPU:$A670 PRG:2670 F0 06
cmp #$27 ; CPU:$A672 PRG:2672 C9 27
beq NmiHandler_Loop116 ; CPU:$A674 PRG:2674 F0 0E
sec ; CPU:$A676 PRG:2676 38
rts ; CPU:$A677 PRG:2677 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop115
; Global: Branch target inside Label: taken when A678.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop115:
lda #$A0 ; CPU:$A678 PRG:2678 A9 A0
sta $04D8 ; CPU:$A67A PRG:267A 8D D8 04
lda #$2B ; CPU:$A67D PRG:267D A9 2B
sta $04D9 ; CPU:$A67F PRG:267F 8D D9 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero24
; Global: Branch target inside Label: taken when A682.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero24:
sec ; CPU:$A682 PRG:2682 38
rts ; CPU:$A683 PRG:2683 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop116
; Global: Branch target inside Label: taken when A684.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop116:
lda #$A0 ; CPU:$A684 PRG:2684 A9 A0
sta $04D8 ; CPU:$A686 PRG:2686 8D D8 04
lda #$23 ; CPU:$A689 PRG:2689 A9 23
sta $04D9 ; CPU:$A68B PRG:268B 8D D9 04
sec ; CPU:$A68E PRG:268E 38
rts ; CPU:$A68F PRG:268F 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop117
; Global: Branch target inside Label: taken when A690.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop117:
lda $04D8 ; CPU:$A690 PRG:2690 AD D8 04
clc ; CPU:$A693 PRG:2693 18
adc #$20 ; CPU:$A694 PRG:2694 69 20
sta $04D8 ; CPU:$A696 PRG:2696 8D D8 04
lda $04D9 ; CPU:$A699 PRG:2699 AD D9 04
adc #$00 ; CPU:$A69C PRG:269C 69 00
sta $04D9 ; CPU:$A69E PRG:269E 8D D9 04
cmp #$23 ; CPU:$A6A1 PRG:26A1 C9 23
bne NmiHandler_Loop118 ; CPU:$A6A3 PRG:26A3 D0 13
lda $04D8 ; CPU:$A6A5 PRG:26A5 AD D8 04
cmp #$C0 ; CPU:$A6A8 PRG:26A8 C9 C0
bne NmiHandler_OnNonzero24 ; CPU:$A6AA PRG:26AA D0 D6
lda #$00 ; CPU:$A6AC PRG:26AC A9 00
sta $04D8 ; CPU:$A6AE PRG:26AE 8D D8 04
lda #$28 ; CPU:$A6B1 PRG:26B1 A9 28
sta $04D9 ; CPU:$A6B3 PRG:26B3 8D D9 04
sec ; CPU:$A6B6 PRG:26B6 38
rts ; CPU:$A6B7 PRG:26B7 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop118
; Global: Branch target inside Label: taken when A6B8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop118:
cmp #$2B ; CPU:$A6B8 PRG:26B8 C9 2B
bne NmiHandler_OnNonzero24 ; CPU:$A6BA PRG:26BA D0 C6
lda $04D8 ; CPU:$A6BC PRG:26BC AD D8 04
cmp #$C0 ; CPU:$A6BF PRG:26BF C9 C0
bne NmiHandler_OnNonzero24 ; CPU:$A6C1 PRG:26C1 D0 BF
lda #$00 ; CPU:$A6C3 PRG:26C3 A9 00
sta $04D8 ; CPU:$A6C5 PRG:26C5 8D D8 04
lda #$20 ; CPU:$A6C8 PRG:26C8 A9 20
sta $04D9 ; CPU:$A6CA PRG:26CA 8D D9 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero25
; Global: Branch target inside Label: taken when A6CD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero25:
sec ; CPU:$A6CD PRG:26CD 38
rts ; CPU:$A6CE PRG:26CE 60
; -----------------------------------------------------------------------------
; Routine: Sub_A6CF
; Global: Branch target inside Label: taken when A6CF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A6CF:
lda Zp8F ; CPU:$A6CF PRG:26CF A5 8F
and #$20 ; CPU:$A6D1 PRG:26D1 29 20
sta Zp6F ; CPU:$A6D3 PRG:26D3 85 6F
lda $056A ; CPU:$A6D5 PRG:26D5 AD 6A 05
and #$20 ; CPU:$A6D8 PRG:26D8 29 20
cmp Zp6F ; CPU:$A6DA PRG:26DA C5 6F
bne NmiHandler_OnNonzero25 ; CPU:$A6DC PRG:26DC D0 EF
lda Zp8F ; CPU:$A6DE PRG:26DE A5 8F
and #$80 ; CPU:$A6E0 PRG:26E0 29 80
sta Zp6F ; CPU:$A6E2 PRG:26E2 85 6F
lda $056A ; CPU:$A6E4 PRG:26E4 AD 6A 05
and #$80 ; CPU:$A6E7 PRG:26E7 29 80
cmp Zp6F ; CPU:$A6E9 PRG:26E9 C5 6F
bne NmiHandler_OnNonzero25 ; CPU:$A6EB PRG:26EB D0 E0
clc ; CPU:$A6ED PRG:26ED 18
rts ; CPU:$A6EE PRG:26EE 60
; -----------------------------------------------------------------------------
; Routine: Sub_A6EF
; Global: Branch target inside Label: taken when A6EF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A6EF:
clc ; CPU:$A6EF PRG:26EF 18
lda Zp73 ; CPU:$A6F0 PRG:26F0 A5 73
adc #$20 ; CPU:$A6F2 PRG:26F2 69 20
sta Zp73 ; CPU:$A6F4 PRG:26F4 85 73
lda Zp74 ; CPU:$A6F6 PRG:26F6 A5 74
adc #$00 ; CPU:$A6F8 PRG:26F8 69 00
sta Zp74 ; CPU:$A6FA PRG:26FA 85 74
cmp #$23 ; CPU:$A6FC PRG:26FC C9 23
bne NmiHandler_Loop119 ; CPU:$A6FE PRG:26FE D0 0F
lda Zp73 ; CPU:$A700 PRG:2700 A5 73
cmp #$C0 ; CPU:$A702 PRG:2702 C9 C0
bcc NmiHandler_OnNonzero26 ; CPU:$A704 PRG:2704 90 08
lda #$00 ; CPU:$A706 PRG:2706 A9 00
sta Zp73 ; CPU:$A708 PRG:2708 85 73
lda #$28 ; CPU:$A70A PRG:270A A9 28
sta Zp74 ; CPU:$A70C PRG:270C 85 74
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero26
; Global: Branch target inside Label: taken when A70E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero26:
rts ; CPU:$A70E PRG:270E 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop119
; Global: Branch target inside Label: taken when A70F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop119:
cmp #$2B ; CPU:$A70F PRG:270F C9 2B
bne NmiHandler_OnNonzero26 ; CPU:$A711 PRG:2711 D0 FB
lda Zp73 ; CPU:$A713 PRG:2713 A5 73
cmp #$C0 ; CPU:$A715 PRG:2715 C9 C0
bcc NmiHandler_OnNonzero26 ; CPU:$A717 PRG:2717 90 F5
lda #$00 ; CPU:$A719 PRG:2719 A9 00
sta Zp73 ; CPU:$A71B PRG:271B 85 73
lda #$20 ; CPU:$A71D PRG:271D A9 20
sta Zp74 ; CPU:$A71F PRG:271F 85 74
rts ; CPU:$A721 PRG:2721 60
; -----------------------------------------------------------------------------
; Routine: Sub_A722
; Global: Branch target inside Label: taken when A722.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A722:
sec ; CPU:$A722 PRG:2722 38
lda Zp73 ; CPU:$A723 PRG:2723 A5 73
sbc #$20 ; CPU:$A725 PRG:2725 E9 20
sta Zp73 ; CPU:$A727 PRG:2727 85 73
lda Zp74 ; CPU:$A729 PRG:2729 A5 74
sbc #$00 ; CPU:$A72B PRG:272B E9 00
sta Zp74 ; CPU:$A72D PRG:272D 85 74
cmp #$1F ; CPU:$A72F PRG:272F C9 1F
bne NmiHandler_Loop120 ; CPU:$A731 PRG:2731 D0 09
lda #$A0 ; CPU:$A733 PRG:2733 A9 A0
sta Zp73 ; CPU:$A735 PRG:2735 85 73
lda #$2B ; CPU:$A737 PRG:2737 A9 2B
sta Zp74 ; CPU:$A739 PRG:2739 85 74
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero27
; Global: Branch target inside Label: taken when A73B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero27:
rts ; CPU:$A73B PRG:273B 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop120
; Global: Branch target inside Label: taken when A73C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop120:
cmp #$27 ; CPU:$A73C PRG:273C C9 27
bne NmiHandler_OnNonzero27 ; CPU:$A73E PRG:273E D0 FB
lda #$A0 ; CPU:$A740 PRG:2740 A9 A0
sta Zp73 ; CPU:$A742 PRG:2742 85 73
lda #$23 ; CPU:$A744 PRG:2744 A9 23
sta Zp74 ; CPU:$A746 PRG:2746 85 74
rts ; CPU:$A748 PRG:2748 60
; -----------------------------------------------------------------------------
; Routine: Sub_A749
; Global: Branch target inside Label: taken when A749.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A749:
lda $055E ; CPU:$A749 PRG:2749 AD 5E 05
sta Zp73 ; CPU:$A74C PRG:274C 85 73
lda $055F ; CPU:$A74E PRG:274E AD 5F 05
sta Zp74 ; CPU:$A751 PRG:2751 85 74
jsr Sub_A6EF ; CPU:$A753 PRG:2753 20 EF A6
lda Zp73 ; CPU:$A756 PRG:2756 A5 73
sta $055E ; CPU:$A758 PRG:2758 8D 5E 05
lda Zp74 ; CPU:$A75B PRG:275B A5 74
sta $055F ; CPU:$A75D PRG:275D 8D 5F 05
rts ; CPU:$A760 PRG:2760 60
; -----------------------------------------------------------------------------
; Routine: Sub_A761
; Global: Branch target inside Label: taken when A761.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A761:
lda $0560 ; CPU:$A761 PRG:2761 AD 60 05
sta Zp73 ; CPU:$A764 PRG:2764 85 73
lda $0561 ; CPU:$A766 PRG:2766 AD 61 05
sta Zp74 ; CPU:$A769 PRG:2769 85 74
jsr Sub_A6EF ; CPU:$A76B PRG:276B 20 EF A6
lda Zp73 ; CPU:$A76E PRG:276E A5 73
sta $0560 ; CPU:$A770 PRG:2770 8D 60 05
lda Zp74 ; CPU:$A773 PRG:2773 A5 74
sta $0561 ; CPU:$A775 PRG:2775 8D 61 05
rts ; CPU:$A778 PRG:2778 60
; -----------------------------------------------------------------------------
; Routine: Sub_A779
; Global: Branch target inside Label: taken when A779.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A779:
lda $055E ; CPU:$A779 PRG:2779 AD 5E 05
sta Zp73 ; CPU:$A77C PRG:277C 85 73
lda $055F ; CPU:$A77E PRG:277E AD 5F 05
sta Zp74 ; CPU:$A781 PRG:2781 85 74
jsr Sub_A722 ; CPU:$A783 PRG:2783 20 22 A7
lda Zp73 ; CPU:$A786 PRG:2786 A5 73
sta $055E ; CPU:$A788 PRG:2788 8D 5E 05
lda Zp74 ; CPU:$A78B PRG:278B A5 74
sta $055F ; CPU:$A78D PRG:278D 8D 5F 05
rts ; CPU:$A790 PRG:2790 60
; -----------------------------------------------------------------------------
; Routine: Sub_A791
; Global: Branch target inside Label: taken when A791.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A791:
lda $0560 ; CPU:$A791 PRG:2791 AD 60 05
sta Zp73 ; CPU:$A794 PRG:2794 85 73
lda $0561 ; CPU:$A796 PRG:2796 AD 61 05
sta Zp74 ; CPU:$A799 PRG:2799 85 74
jsr Sub_A722 ; CPU:$A79B PRG:279B 20 22 A7
lda Zp73 ; CPU:$A79E PRG:279E A5 73
sta $0560 ; CPU:$A7A0 PRG:27A0 8D 60 05
lda Zp74 ; CPU:$A7A3 PRG:27A3 A5 74
sta $0561 ; CPU:$A7A5 PRG:27A5 8D 61 05
rts ; CPU:$A7A8 PRG:27A8 60
; -----------------------------------------------------------------------------
; Routine: Sub_A7A9
; Global: Branch target inside Label: taken when A7A9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A7A9:
clc ; CPU:$A7A9 PRG:27A9 18
lda Zp73 ; CPU:$A7AA PRG:27AA A5 73
adc #$08 ; CPU:$A7AC PRG:27AC 69 08
sta Zp73 ; CPU:$A7AE PRG:27AE 85 73
lda Zp74 ; CPU:$A7B0 PRG:27B0 A5 74
adc #$00 ; CPU:$A7B2 PRG:27B2 69 00
sta Zp74 ; CPU:$A7B4 PRG:27B4 85 74
cmp #$24 ; CPU:$A7B6 PRG:27B6 C9 24
bne NmiHandler_Loop121 ; CPU:$A7B8 PRG:27B8 D0 09
lda #$C0 ; CPU:$A7BA PRG:27BA A9 C0
sta Zp73 ; CPU:$A7BC PRG:27BC 85 73
lda #$2B ; CPU:$A7BE PRG:27BE A9 2B
sta Zp74 ; CPU:$A7C0 PRG:27C0 85 74
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero28
; Global: Branch target inside Label: taken when A7C2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero28:
rts ; CPU:$A7C2 PRG:27C2 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop121
; Global: Branch target inside Label: taken when A7C3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop121:
cmp #$2C ; CPU:$A7C3 PRG:27C3 C9 2C
bne NmiHandler_OnNonzero28 ; CPU:$A7C5 PRG:27C5 D0 FB
lda #$C0 ; CPU:$A7C7 PRG:27C7 A9 C0
sta Zp73 ; CPU:$A7C9 PRG:27C9 85 73
lda #$23 ; CPU:$A7CB PRG:27CB A9 23
sta Zp74 ; CPU:$A7CD PRG:27CD 85 74
rts ; CPU:$A7CF PRG:27CF 60
; -----------------------------------------------------------------------------
; Routine: Sub_A7D0
; Global: Branch target inside Label: taken when A7D0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A7D0:
sec ; CPU:$A7D0 PRG:27D0 38
lda Zp73 ; CPU:$A7D1 PRG:27D1 A5 73
sbc #$08 ; CPU:$A7D3 PRG:27D3 E9 08
sta Zp73 ; CPU:$A7D5 PRG:27D5 85 73
lda Zp74 ; CPU:$A7D7 PRG:27D7 A5 74
sbc #$00 ; CPU:$A7D9 PRG:27D9 E9 00
sta Zp74 ; CPU:$A7DB PRG:27DB 85 74
cmp #$23 ; CPU:$A7DD PRG:27DD C9 23
bne NmiHandler_Loop122 ; CPU:$A7DF PRG:27DF D0 0F
lda Zp73 ; CPU:$A7E1 PRG:27E1 A5 73
cmp #$B8 ; CPU:$A7E3 PRG:27E3 C9 B8
bne NmiHandler_OnNonzero29 ; CPU:$A7E5 PRG:27E5 D0 08
lda #$F8 ; CPU:$A7E7 PRG:27E7 A9 F8
sta Zp73 ; CPU:$A7E9 PRG:27E9 85 73
lda #$2B ; CPU:$A7EB PRG:27EB A9 2B
sta Zp74 ; CPU:$A7ED PRG:27ED 85 74
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero29
; Global: Branch target inside Label: taken when A7EF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero29:
rts ; CPU:$A7EF PRG:27EF 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop122
; Global: Branch target inside Label: taken when A7F0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop122:
cmp #$2B ; CPU:$A7F0 PRG:27F0 C9 2B
bne NmiHandler_OnNonzero29 ; CPU:$A7F2 PRG:27F2 D0 FB
lda Zp73 ; CPU:$A7F4 PRG:27F4 A5 73
cmp #$B8 ; CPU:$A7F6 PRG:27F6 C9 B8
bne NmiHandler_OnNonzero29 ; CPU:$A7F8 PRG:27F8 D0 F5
lda #$F8 ; CPU:$A7FA PRG:27FA A9 F8
sta Zp73 ; CPU:$A7FC PRG:27FC 85 73
lda #$23 ; CPU:$A7FE PRG:27FE A9 23
sta Zp74 ; CPU:$A800 PRG:2800 85 74
rts ; CPU:$A802 PRG:2802 60
; -----------------------------------------------------------------------------
; Routine: Sub_A803
; Global: Branch target inside Label: taken when A803.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A803:
lda $0562 ; CPU:$A803 PRG:2803 AD 62 05
sta Zp73 ; CPU:$A806 PRG:2806 85 73
lda $0563 ; CPU:$A808 PRG:2808 AD 63 05
sta Zp74 ; CPU:$A80B PRG:280B 85 74
jsr Sub_A7A9 ; CPU:$A80D PRG:280D 20 A9 A7
lda Zp73 ; CPU:$A810 PRG:2810 A5 73
sta $0562 ; CPU:$A812 PRG:2812 8D 62 05
lda Zp74 ; CPU:$A815 PRG:2815 A5 74
sta $0563 ; CPU:$A817 PRG:2817 8D 63 05
rts ; CPU:$A81A PRG:281A 60
; -----------------------------------------------------------------------------
; Routine: Sub_A81B
; Global: Branch target inside Label: taken when A81B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A81B:
lda $0564 ; CPU:$A81B PRG:281B AD 64 05
sta Zp73 ; CPU:$A81E PRG:281E 85 73
lda $0565 ; CPU:$A820 PRG:2820 AD 65 05
sta Zp74 ; CPU:$A823 PRG:2823 85 74
jsr Sub_A7A9 ; CPU:$A825 PRG:2825 20 A9 A7
lda Zp73 ; CPU:$A828 PRG:2828 A5 73
sta $0564 ; CPU:$A82A PRG:282A 8D 64 05
lda Zp74 ; CPU:$A82D PRG:282D A5 74
sta $0565 ; CPU:$A82F PRG:282F 8D 65 05
rts ; CPU:$A832 PRG:2832 60
; -----------------------------------------------------------------------------
; Routine: Sub_A833
; Global: Branch target inside Label: taken when A833.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A833:
lda $0562 ; CPU:$A833 PRG:2833 AD 62 05
sta Zp73 ; CPU:$A836 PRG:2836 85 73
lda $0563 ; CPU:$A838 PRG:2838 AD 63 05
sta Zp74 ; CPU:$A83B PRG:283B 85 74
jsr Sub_A7D0 ; CPU:$A83D PRG:283D 20 D0 A7
lda Zp73 ; CPU:$A840 PRG:2840 A5 73
sta $0562 ; CPU:$A842 PRG:2842 8D 62 05
lda Zp74 ; CPU:$A845 PRG:2845 A5 74
sta $0563 ; CPU:$A847 PRG:2847 8D 63 05
rts ; CPU:$A84A PRG:284A 60
; -----------------------------------------------------------------------------
; Routine: Sub_A84B
; Global: Branch target inside Label: taken when A84B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A84B:
lda $0564 ; CPU:$A84B PRG:284B AD 64 05
sta Zp73 ; CPU:$A84E PRG:284E 85 73
lda $0565 ; CPU:$A850 PRG:2850 AD 65 05
sta Zp74 ; CPU:$A853 PRG:2853 85 74
jsr Sub_A7D0 ; CPU:$A855 PRG:2855 20 D0 A7
lda Zp73 ; CPU:$A858 PRG:2858 A5 73
sta $0564 ; CPU:$A85A PRG:285A 8D 64 05
lda Zp74 ; CPU:$A85D PRG:285D A5 74
sta $0565 ; CPU:$A85F PRG:285F 8D 65 05
rts ; CPU:$A862 PRG:2862 60
; -----------------------------------------------------------------------------
; Routine: Sub_A863
; Global: Branch target inside Label: taken when A863.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A863:
ldy #$00 ; CPU:$A863 PRG:2863 A0 00
clc ; CPU:$A865 PRG:2865 18
adc #$9B ; CPU:$A866 PRG:2866 69 9B
sta Zp73 ; CPU:$A868 PRG:2868 85 73
lda #$AA ; CPU:$A86A PRG:286A A9 AA
adc #$00 ; CPU:$A86C PRG:286C 69 00
sta Zp74 ; CPU:$A86E PRG:286E 85 74
lda (Zp73),y ; CPU:$A870 PRG:2870 B1 73
sta Zp74 ; CPU:$A872 PRG:2872 85 74
lda #$00 ; CPU:$A874 PRG:2874 A9 00
sta Zp73 ; CPU:$A876 PRG:2876 85 73
lsr Zp74 ; CPU:$A878 PRG:2878 46 74
ror Zp73 ; CPU:$A87A PRG:287A 66 73
lsr Zp74 ; CPU:$A87C PRG:287C 46 74
ror Zp73 ; CPU:$A87E PRG:287E 66 73
lsr Zp74 ; CPU:$A880 PRG:2880 46 74
ror Zp73 ; CPU:$A882 PRG:2882 66 73
lda Zp73 ; CPU:$A884 PRG:2884 A5 73
adc #$8B ; CPU:$A886 PRG:2886 69 8B
sta Zp73 ; CPU:$A888 PRG:2888 85 73
lda Zp74 ; CPU:$A88A PRG:288A A5 74
adc #$AB ; CPU:$A88C PRG:288C 69 AB
sta Zp74 ; CPU:$A88E PRG:288E 85 74
lda #$01 ; CPU:$A890 PRG:2890 A9 01
sta Zp6F ; CPU:$A892 PRG:2892 85 6F
lda #$20 ; CPU:$A894 PRG:2894 A9 20
sta $0675 ; CPU:$A896 PRG:2896 8D 75 06
lda Zp73 ; CPU:$A899 PRG:2899 A5 73
sta $0676 ; CPU:$A89B PRG:289B 8D 76 06
lda Zp74 ; CPU:$A89E PRG:289E A5 74
sta $0677 ; CPU:$A8A0 PRG:28A0 8D 77 06
lda Zp72 ; CPU:$A8A3 PRG:28A3 A5 72
sta $0678 ; CPU:$A8A5 PRG:28A5 8D 78 06
lda Zp71 ; CPU:$A8A8 PRG:28A8 A5 71
sta $0679 ; CPU:$A8AA PRG:28AA 8D 79 06
lda #$00 ; CPU:$A8AD PRG:28AD A9 00
sta $067A ; CPU:$A8AF PRG:28AF 8D 7A 06
lda #$FF ; CPU:$A8B2 PRG:28B2 A9 FF
sta $0674 ; CPU:$A8B4 PRG:28B4 8D 74 06
rts ; CPU:$A8B7 PRG:28B7 60
; -----------------------------------------------------------------------------
; Routine: Sub_A8B8
; Global: Branch target inside Label: taken when A8B8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A8B8:
ldy #$00 ; CPU:$A8B8 PRG:28B8 A0 00
clc ; CPU:$A8BA PRG:28BA 18
adc #$9B ; CPU:$A8BB PRG:28BB 69 9B
sta Zp73 ; CPU:$A8BD PRG:28BD 85 73
lda #$AA ; CPU:$A8BF PRG:28BF A9 AA
adc #$00 ; CPU:$A8C1 PRG:28C1 69 00
sta Zp74 ; CPU:$A8C3 PRG:28C3 85 74
lda (Zp73),y ; CPU:$A8C5 PRG:28C5 B1 73
sta Zp74 ; CPU:$A8C7 PRG:28C7 85 74
lda #$00 ; CPU:$A8C9 PRG:28C9 A9 00
sta Zp73 ; CPU:$A8CB PRG:28CB 85 73
lsr Zp74 ; CPU:$A8CD PRG:28CD 46 74
ror Zp73 ; CPU:$A8CF PRG:28CF 66 73
lsr Zp74 ; CPU:$A8D1 PRG:28D1 46 74
ror Zp73 ; CPU:$A8D3 PRG:28D3 66 73
lsr Zp74 ; CPU:$A8D5 PRG:28D5 46 74
ror Zp73 ; CPU:$A8D7 PRG:28D7 66 73
lda Zp73 ; CPU:$A8D9 PRG:28D9 A5 73
adc #$8B ; CPU:$A8DB PRG:28DB 69 8B
sta Zp73 ; CPU:$A8DD PRG:28DD 85 73
lda Zp74 ; CPU:$A8DF PRG:28DF A5 74
adc #$AB ; CPU:$A8E1 PRG:28E1 69 AB
sta Zp74 ; CPU:$A8E3 PRG:28E3 85 74
lda #$20 ; CPU:$A8E5 PRG:28E5 A9 20
sta Zp70 ; CPU:$A8E7 PRG:28E7 85 70
jmp Sub_973E ; CPU:$A8E9 PRG:28E9 4C 3E 97
; -----------------------------------------------------------------------------
; Routine: Sub_A8EC
; Global: Branch target inside Label: taken when A8EC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A8EC:
jsr Sub_A5EF ; CPU:$A8EC PRG:28EC 20 EF A5
lda $058F ; CPU:$A8EF PRG:28EF AD 8F 05
sec ; CPU:$A8F2 PRG:28F2 38
sbc #$03 ; CPU:$A8F3 PRG:28F3 E9 03
bcs NmiHandler_Loop123 ; CPU:$A8F5 PRG:28F5 B0 02
adc #$0A ; CPU:$A8F7 PRG:28F7 69 0A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop123
; Global: Branch target inside Label: taken when A8F9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop123:
jsr Sub_D0B5 ; CPU:$A8F9 PRG:28F9 20 B5 D0
lda ZpA1 ; CPU:$A8FC PRG:28FC A5 A1
clc ; CPU:$A8FE PRG:28FE 18
adc #$A0 ; CPU:$A8FF PRG:28FF 69 A0
sta $04D8 ; CPU:$A901 PRG:2901 8D D8 04
lda ZpA2 ; CPU:$A904 PRG:2904 A5 A2
adc #$00 ; CPU:$A906 PRG:2906 69 00
sta $04D9 ; CPU:$A908 PRG:2908 8D D9 04
ldy $058F ; CPU:$A90B PRG:290B AC 8F 05
lda $BA7B,y ; CPU:$A90E PRG:290E B9 7B BA
sta $0567 ; CPU:$A911 PRG:2911 8D 67 05
sta ZpA3 ; CPU:$A914 PRG:2914 85 A3
clc ; CPU:$A916 PRG:2916 18
adc #$37 ; CPU:$A917 PRG:2917 69 37
sta $0566 ; CPU:$A919 PRG:2919 8D 66 05
lda $058F ; CPU:$A91C PRG:291C AD 8F 05
sta Zp73 ; CPU:$A91F PRG:291F 85 73
lda #$00 ; CPU:$A921 PRG:2921 A9 00
sta Zp74 ; CPU:$A923 PRG:2923 85 74
asl Zp73 ; CPU:$A925 PRG:2925 06 73
rol Zp74 ; CPU:$A927 PRG:2927 26 74
clc ; CPU:$A929 PRG:2929 18
lda #$9B ; CPU:$A92A PRG:292A A9 9B
adc Zp73 ; CPU:$A92C PRG:292C 65 73
sta Zp73 ; CPU:$A92E PRG:292E 85 73
lda #$BA ; CPU:$A930 PRG:2930 A9 BA
adc Zp74 ; CPU:$A932 PRG:2932 65 74
sta Zp74 ; CPU:$A934 PRG:2934 85 74
ldy #$00 ; CPU:$A936 PRG:2936 A0 00
lda (Zp73),y ; CPU:$A938 PRG:2938 B1 73
sta $0560 ; CPU:$A93A PRG:293A 8D 60 05
sta ZpA1 ; CPU:$A93D PRG:293D 85 A1
iny ; CPU:$A93F PRG:293F C8
lda (Zp73),y ; CPU:$A940 PRG:2940 B1 73
sta $0561 ; CPU:$A942 PRG:2942 8D 61 05
sta ZpA2 ; CPU:$A945 PRG:2945 85 A2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero30
; Global: Branch target inside Label: taken when A947.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero30:
lda ZpA1 ; CPU:$A947 PRG:2947 A5 A1
sta Zp71 ; CPU:$A949 PRG:2949 85 71
lda ZpA2 ; CPU:$A94B PRG:294B A5 A2
sta Zp72 ; CPU:$A94D PRG:294D 85 72
lda ZpA3 ; CPU:$A94F PRG:294F A5 A3
jsr Sub_A8B8 ; CPU:$A951 PRG:2951 20 B8 A8
lda ZpA3 ; CPU:$A954 PRG:2954 A5 A3
cmp $0566 ; CPU:$A956 PRG:2956 CD 66 05
bne NmiHandler_Loop124 ; CPU:$A959 PRG:2959 D0 0D
lda ZpA1 ; CPU:$A95B PRG:295B A5 A1
sta $055E ; CPU:$A95D PRG:295D 8D 5E 05
lda ZpA2 ; CPU:$A960 PRG:2960 A5 A2
sta $055F ; CPU:$A962 PRG:2962 8D 5F 05
jmp Sub_A9A1 ; CPU:$A965 PRG:2965 4C A1 A9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop124
; Global: Branch target inside Label: taken when A968.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop124:
lda ZpA1 ; CPU:$A968 PRG:2968 A5 A1
clc ; CPU:$A96A PRG:296A 18
adc #$20 ; CPU:$A96B PRG:296B 69 20
sta ZpA1 ; CPU:$A96D PRG:296D 85 A1
lda ZpA2 ; CPU:$A96F PRG:296F A5 A2
adc #$00 ; CPU:$A971 PRG:2971 69 00
sta ZpA2 ; CPU:$A973 PRG:2973 85 A2
inc ZpA3 ; CPU:$A975 PRG:2975 E6 A3
cmp #$23 ; CPU:$A977 PRG:2977 C9 23
bne NmiHandler_Loop125 ; CPU:$A979 PRG:2979 D0 11
lda ZpA1 ; CPU:$A97B PRG:297B A5 A1
cmp #$C0 ; CPU:$A97D PRG:297D C9 C0
bne NmiHandler_OnNonzero30 ; CPU:$A97F PRG:297F D0 C6
lda #$00 ; CPU:$A981 PRG:2981 A9 00
sta ZpA1 ; CPU:$A983 PRG:2983 85 A1
lda #$28 ; CPU:$A985 PRG:2985 A9 28
sta ZpA2 ; CPU:$A987 PRG:2987 85 A2
jmp NmiHandler_OnNonzero30 ; CPU:$A989 PRG:2989 4C 47 A9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop125
; Global: Branch target inside Label: taken when A98C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop125:
cmp #$2B ; CPU:$A98C PRG:298C C9 2B
bne NmiHandler_OnNonzero30 ; CPU:$A98E PRG:298E D0 B7
lda ZpA1 ; CPU:$A990 PRG:2990 A5 A1
cmp #$C0 ; CPU:$A992 PRG:2992 C9 C0
bne NmiHandler_OnNonzero30 ; CPU:$A994 PRG:2994 D0 B1
lda #$00 ; CPU:$A996 PRG:2996 A9 00
sta ZpA1 ; CPU:$A998 PRG:2998 85 A1
lda #$20 ; CPU:$A99A PRG:299A A9 20
sta ZpA2 ; CPU:$A99C PRG:299C 85 A2
jmp NmiHandler_OnNonzero30 ; CPU:$A99E PRG:299E 4C 47 A9
; -----------------------------------------------------------------------------
; Routine: Sub_A9A1
; Global: Branch target inside Label: taken when A9A1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_A9A1:
ldy $058F ; CPU:$A9A1 PRG:29A1 AC 8F 05
lda $B82B,y ; CPU:$A9A4 PRG:29A4 B9 2B B8
sta $0569 ; CPU:$A9A7 PRG:29A7 8D 69 05
sta ZpA3 ; CPU:$A9AA PRG:29AA 85 A3
clc ; CPU:$A9AC PRG:29AC 18
adc #$0E ; CPU:$A9AD PRG:29AD 69 0E
sta $0568 ; CPU:$A9AF PRG:29AF 8D 68 05
lda $058F ; CPU:$A9B2 PRG:29B2 AD 8F 05
sta Zp73 ; CPU:$A9B5 PRG:29B5 85 73
lda #$00 ; CPU:$A9B7 PRG:29B7 A9 00
sta Zp74 ; CPU:$A9B9 PRG:29B9 85 74
asl Zp73 ; CPU:$A9BB PRG:29BB 06 73
rol Zp74 ; CPU:$A9BD PRG:29BD 26 74
clc ; CPU:$A9BF PRG:29BF 18
lda #$4B ; CPU:$A9C0 PRG:29C0 A9 4B
adc Zp73 ; CPU:$A9C2 PRG:29C2 65 73
sta Zp73 ; CPU:$A9C4 PRG:29C4 85 73
lda #$B8 ; CPU:$A9C6 PRG:29C6 A9 B8
adc Zp74 ; CPU:$A9C8 PRG:29C8 65 74
sta Zp74 ; CPU:$A9CA PRG:29CA 85 74
ldy #$00 ; CPU:$A9CC PRG:29CC A0 00
lda (Zp73),y ; CPU:$A9CE PRG:29CE B1 73
sta $0564 ; CPU:$A9D0 PRG:29D0 8D 64 05
sta ZpA1 ; CPU:$A9D3 PRG:29D3 85 A1
iny ; CPU:$A9D5 PRG:29D5 C8
lda (Zp73),y ; CPU:$A9D6 PRG:29D6 B1 73
sta $0565 ; CPU:$A9D8 PRG:29D8 8D 65 05
sta ZpA2 ; CPU:$A9DB PRG:29DB 85 A2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero31
; Global: Branch target inside Label: taken when A9DD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero31:
lda ZpA1 ; CPU:$A9DD PRG:29DD A5 A1
sta Zp71 ; CPU:$A9DF PRG:29DF 85 71
lda ZpA2 ; CPU:$A9E1 PRG:29E1 A5 A2
sta Zp72 ; CPU:$A9E3 PRG:29E3 85 72
lda ZpA3 ; CPU:$A9E5 PRG:29E5 A5 A3
jsr Sub_AA73 ; CPU:$A9E7 PRG:29E7 20 73 AA
lda ZpA3 ; CPU:$A9EA PRG:29EA A5 A3
cmp $0568 ; CPU:$A9EC PRG:29EC CD 68 05
bne NmiHandler_Loop126 ; CPU:$A9EF PRG:29EF D0 0D
lda ZpA1 ; CPU:$A9F1 PRG:29F1 A5 A1
sta $0562 ; CPU:$A9F3 PRG:29F3 8D 62 05
lda ZpA2 ; CPU:$A9F6 PRG:29F6 A5 A2
sta $0563 ; CPU:$A9F8 PRG:29F8 8D 63 05
jmp Sub_D154 ; CPU:$A9FB PRG:29FB 4C 54 D1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop126
; Global: Branch target inside Label: taken when A9FE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop126:
lda ZpA1 ; CPU:$A9FE PRG:29FE A5 A1
clc ; CPU:$AA00 PRG:2A00 18
adc #$08 ; CPU:$AA01 PRG:2A01 69 08
sta ZpA1 ; CPU:$AA03 PRG:2A03 85 A1
lda ZpA2 ; CPU:$AA05 PRG:2A05 A5 A2
adc #$00 ; CPU:$AA07 PRG:2A07 69 00
sta ZpA2 ; CPU:$AA09 PRG:2A09 85 A2
inc ZpA3 ; CPU:$AA0B PRG:2A0B E6 A3
lda ZpA1 ; CPU:$AA0D PRG:2A0D A5 A1
cmp #$00 ; CPU:$AA0F PRG:2A0F C9 00
bne NmiHandler_OnNonzero31 ; CPU:$AA11 PRG:2A11 D0 CA
lda ZpA2 ; CPU:$AA13 PRG:2A13 A5 A2
cmp #$24 ; CPU:$AA15 PRG:2A15 C9 24
bne NmiHandler_Loop127 ; CPU:$AA17 PRG:2A17 D0 0B
lda #$C0 ; CPU:$AA19 PRG:2A19 A9 C0
sta ZpA1 ; CPU:$AA1B PRG:2A1B 85 A1
lda #$2B ; CPU:$AA1D PRG:2A1D A9 2B
sta ZpA2 ; CPU:$AA1F PRG:2A1F 85 A2
jmp NmiHandler_OnNonzero31 ; CPU:$AA21 PRG:2A21 4C DD A9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop127
; Global: Branch target inside Label: taken when AA24.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop127:
lda #$C0 ; CPU:$AA24 PRG:2A24 A9 C0
sta ZpA1 ; CPU:$AA26 PRG:2A26 85 A1
lda #$23 ; CPU:$AA28 PRG:2A28 A9 23
sta ZpA2 ; CPU:$AA2A PRG:2A2A 85 A2
jmp NmiHandler_OnNonzero31 ; CPU:$AA2C PRG:2A2C 4C DD A9
; -----------------------------------------------------------------------------
; Routine: Sub_AA2F
; Global: Branch target inside Label: taken when AA2F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_AA2F:
ldy #$00 ; CPU:$AA2F PRG:2A2F A0 00
sta Zp73 ; CPU:$AA31 PRG:2A31 85 73
lda #$00 ; CPU:$AA33 PRG:2A33 A9 00
sta Zp74 ; CPU:$AA35 PRG:2A35 85 74
asl Zp73 ; CPU:$AA37 PRG:2A37 06 73
rol Zp74 ; CPU:$AA39 PRG:2A39 26 74
asl Zp73 ; CPU:$AA3B PRG:2A3B 06 73
rol Zp74 ; CPU:$AA3D PRG:2A3D 26 74
asl Zp73 ; CPU:$AA3F PRG:2A3F 06 73
rol Zp74 ; CPU:$AA41 PRG:2A41 26 74
lda Zp73 ; CPU:$AA43 PRG:2A43 A5 73
clc ; CPU:$AA45 PRG:2A45 18
adc #$8B ; CPU:$AA46 PRG:2A46 69 8B
sta Zp73 ; CPU:$AA48 PRG:2A48 85 73
lda Zp74 ; CPU:$AA4A PRG:2A4A A5 74
adc #$B8 ; CPU:$AA4C PRG:2A4C 69 B8
sta Zp74 ; CPU:$AA4E PRG:2A4E 85 74
lda #$01 ; CPU:$AA50 PRG:2A50 A9 01
sta Zp6F ; CPU:$AA52 PRG:2A52 85 6F
lda #$08 ; CPU:$AA54 PRG:2A54 A9 08
sta $067A ; CPU:$AA56 PRG:2A56 8D 7A 06
lda Zp73 ; CPU:$AA59 PRG:2A59 A5 73
sta $067B ; CPU:$AA5B PRG:2A5B 8D 7B 06
lda Zp74 ; CPU:$AA5E PRG:2A5E A5 74
sta $067C ; CPU:$AA60 PRG:2A60 8D 7C 06
lda Zp72 ; CPU:$AA63 PRG:2A63 A5 72
sta $067D ; CPU:$AA65 PRG:2A65 8D 7D 06
lda Zp71 ; CPU:$AA68 PRG:2A68 A5 71
sta $067E ; CPU:$AA6A PRG:2A6A 8D 7E 06
lda #$00 ; CPU:$AA6D PRG:2A6D A9 00
sta $067F ; CPU:$AA6F PRG:2A6F 8D 7F 06
rts ; CPU:$AA72 PRG:2A72 60
; -----------------------------------------------------------------------------
; Routine: Sub_AA73
; Global: Branch target inside Label: taken when AA73.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_AA73:
ldy #$00 ; CPU:$AA73 PRG:2A73 A0 00
sta Zp73 ; CPU:$AA75 PRG:2A75 85 73
lda #$00 ; CPU:$AA77 PRG:2A77 A9 00
sta Zp74 ; CPU:$AA79 PRG:2A79 85 74
asl Zp73 ; CPU:$AA7B PRG:2A7B 06 73
rol Zp74 ; CPU:$AA7D PRG:2A7D 26 74
asl Zp73 ; CPU:$AA7F PRG:2A7F 06 73
rol Zp74 ; CPU:$AA81 PRG:2A81 26 74
asl Zp73 ; CPU:$AA83 PRG:2A83 06 73
rol Zp74 ; CPU:$AA85 PRG:2A85 26 74
lda Zp73 ; CPU:$AA87 PRG:2A87 A5 73
clc ; CPU:$AA89 PRG:2A89 18
adc #$8B ; CPU:$AA8A PRG:2A8A 69 8B
sta Zp73 ; CPU:$AA8C PRG:2A8C 85 73
lda Zp74 ; CPU:$AA8E PRG:2A8E A5 74
adc #$B8 ; CPU:$AA90 PRG:2A90 69 B8
sta Zp74 ; CPU:$AA92 PRG:2A92 85 74
lda #$08 ; CPU:$AA94 PRG:2A94 A9 08
sta Zp70 ; CPU:$AA96 PRG:2A96 85 70
jmp Sub_973E ; CPU:$AA98 PRG:2A98 4C 3E 97
; ---- data $AA9B-$B50C (2674 bytes) ----
.byte $64, $64, $64, $64, $64, $64, $64, $64, $64, $64, $64, $64, $64, $64, $64, $64 ; CPU:$AA9B PRG:2A9B 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64
.byte $64, $64, $64, $64, $64, $64, $64, $64, $64, $64, $64, $64, $64, $64, $64, $64 ; CPU:$AAAB PRG:2AAB 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64
.byte $00, $01, $01, $01, $02, $03, $04, $05, $06, $07, $08, $07, $09, $0A, $06, $07 ; CPU:$AABB PRG:2ABB 00 01 01 01 02 03 04 05 06 07 08 07 09 0A 06 07
.byte $08, $07, $09, $0B, $06, $07, $08, $07, $09, $0C, $06, $07, $08, $07, $09, $0D ; CPU:$AACB PRG:2ACB 08 07 09 0B 06 07 08 07 09 0C 06 07 08 07 09 0D
.byte $06, $07, $08, $07, $09, $0E, $06, $07, $08, $07, $09, $0F, $06, $07, $08, $07 ; CPU:$AADB PRG:2ADB 06 07 08 07 09 0E 06 07 08 07 09 0F 06 07 08 07
.byte $09, $10, $06, $07, $08, $07, $09, $11, $06, $07, $08, $07, $09, $12, $06, $07 ; CPU:$AAEB PRG:2AEB 09 10 06 07 08 07 09 11 06 07 08 07 09 12 06 07
.byte $13, $14, $15, $16, $17, $18, $19, $1A, $1B, $1C, $1D, $1E, $1F, $20, $21, $22 ; CPU:$AAFB PRG:2AFB 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22
.byte $23, $24, $25, $26, $27, $28, $29, $2A, $2B, $2C, $2D, $2E, $2F, $30, $31, $32 ; CPU:$AB0B PRG:2B0B 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32
.byte $33, $34, $35, $35, $35, $35, $36, $37, $38, $38, $38, $38, $39, $3A, $3B, $3B ; CPU:$AB1B PRG:2B1B 33 34 35 35 35 35 36 37 38 38 38 38 39 3A 3B 3B
.byte $3B, $3B, $3C, $3D, $3E, $3E, $3E, $3E, $3F, $40, $41, $41, $41, $41, $42, $43 ; CPU:$AB2B PRG:2B2B 3B 3B 3C 3D 3E 3E 3E 3E 3F 40 41 41 41 41 42 43
.byte $44, $45, $46, $45, $47, $48, $49, $4A, $4B, $4A, $4C, $4D, $49, $4A, $4B, $4A ; CPU:$AB3B PRG:2B3B 44 45 46 45 47 48 49 4A 4B 4A 4C 4D 49 4A 4B 4A
.byte $4C, $4E, $4F, $4F, $4F, $4F, $50, $51, $52, $53, $54, $53, $55, $56, $57, $58 ; CPU:$AB4B PRG:2B4B 4C 4E 4F 4F 4F 4F 50 51 52 53 54 53 55 56 57 58
.byte $59, $58, $5A, $5B, $57, $58, $59, $58, $5A, $5C, $57, $58, $59, $58, $5A, $5D ; CPU:$AB5B PRG:2B5B 59 58 5A 5B 57 58 59 58 5A 5C 57 58 59 58 5A 5D
.byte $57, $58, $59, $58, $5A, $5E, $57, $58, $59, $58, $5F, $60, $61, $61, $61, $61 ; CPU:$AB6B PRG:2B6B 57 58 59 58 5A 5E 57 58 59 58 5F 60 61 61 61 61
.byte $62, $63, $63, $63, $63, $63, $63, $63, $63, $63, $63, $63, $63, $63, $63, $63 ; CPU:$AB7B PRG:2B7B 62 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63
.byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $28, $00, $00 ; CPU:$AB8B PRG:2B8B FF FF FF FF FF FF FF FF FF FF FF FF FF 28 00 00
.byte $00, $29, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$AB9B PRG:2B9B 00 29 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:$ABAB PRG:2BAB FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
.byte $FF, $08, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ABBB PRG:2BBB FF 08 FF FF FF FF FF FF FF FF FF FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $FF, $04, $02, $01, $01, $01, $01, $01, $01, $01, $FF, $FF ; CPU:$ABCB PRG:2BCB FF FF FF FF FF 04 02 01 01 01 01 01 01 01 FF FF
.byte $FF, $09, $01, $01, $01, $01, $01, $01, $03, $05, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ABDB PRG:2BDB FF 09 01 01 01 01 01 01 03 05 FF FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $04, $02, $01, $01, $01, $01, $01, $01, $01, $01, $FF, $FF ; CPU:$ABEB PRG:2BEB FF FF FF FF 04 02 01 01 01 01 01 01 01 01 FF FF
.byte $FF, $09, $01, $01, $01, $01, $01, $01, $01, $03, $05, $FF, $FF, $FF, $FF, $FF ; CPU:$ABFB PRG:2BFB FF 09 01 01 01 01 01 01 01 03 05 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $06, $00, $00, $00, $00, $00, $00, $00, $00, $00, $FF, $FF ; CPU:$AC0B PRG:2C0B FF FF FF FF 06 00 00 00 00 00 00 00 00 00 FF FF
.byte $FF, $0A, $00, $00, $00, $00, $00, $00, $00, $00, $07, $FF, $FF, $FF, $FF, $FF ; CPU:$AC1B PRG:2C1B FF 0A 00 00 00 00 00 00 00 00 07 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $12, $17, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$AC2B PRG:2C2B FF FF FF FF 12 17 17 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $93, $90, $13, $FF, $FF, $FF, $FF, $FF ; CPU:$AC3B PRG:2C3B FF 17 17 0E 0F 10 0E 0F 93 90 13 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $12, $17, $17, $46, $46, $17, $46, $46, $17, $17, $FF, $FF ; CPU:$AC4B PRG:2C4B FF FF FF FF 12 17 17 46 46 17 46 46 17 17 FF FF
.byte $FF, $17, $17, $46, $46, $17, $46, $46, $17, $17, $13, $FF, $FF, $FF, $FF, $FF ; CPU:$AC5B PRG:2C5B FF 17 17 46 46 17 46 46 17 17 13 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $12, $17, $17, $44, $44, $17, $44, $44, $17, $17, $FF, $FF ; CPU:$AC6B PRG:2C6B FF FF FF FF 12 17 17 44 44 17 44 44 17 17 FF FF
.byte $FF, $17, $17, $44, $44, $17, $44, $44, $17, $17, $13, $FF, $FF, $FF, $FF, $FF ; CPU:$AC7B PRG:2C7B FF 17 17 44 44 17 44 44 17 17 13 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $12, $17, $17, $48, $44, $17, $48, $44, $17, $17, $FF, $FF ; CPU:$AC8B PRG:2C8B FF FF FF FF 12 17 17 48 44 17 48 44 17 17 FF FF
.byte $FF, $17, $17, $44, $49, $17, $44, $49, $17, $17, $13, $FF, $FF, $FF, $FF, $FF ; CPU:$AC9B PRG:2C9B FF 17 17 44 49 17 44 49 17 17 13 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $14, $16, $16, $16, $16, $16, $16, $16, $16, $60, $FF, $FF ; CPU:$ACAB PRG:2CAB FF FF FF FF 14 16 16 16 16 16 16 16 16 60 FF FF
.byte $FF, $60, $16, $16, $16, $16, $16, $16, $16, $16, $15, $FF, $FF, $FF, $FF, $FF ; CPU:$ACBB PRG:2CBB FF 60 16 16 16 16 16 16 16 16 15 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $12, $17, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$ACCB PRG:2CCB FF FF FF FF 12 17 17 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $92, $99, $13, $FF, $FF, $FF, $FF, $FF ; CPU:$ACDB PRG:2CDB FF 17 17 0E 0F 10 0E 0F 92 99 13 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $12, $17, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$ACEB PRG:2CEB FF FF FF FF 12 17 17 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $92, $98, $13, $FF, $FF, $FF, $FF, $FF ; CPU:$ACFB PRG:2CFB FF 17 17 0E 0F 10 0E 0F 92 98 13 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $12, $17, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$AD0B PRG:2D0B FF FF FF FF 12 17 17 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $92, $97, $13, $FF, $FF, $FF, $FF, $FF ; CPU:$AD1B PRG:2D1B FF 17 17 0E 0F 10 0E 0F 92 97 13 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $12, $17, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$AD2B PRG:2D2B FF FF FF FF 12 17 17 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $92, $96, $13, $FF, $FF, $FF, $FF, $FF ; CPU:$AD3B PRG:2D3B FF 17 17 0E 0F 10 0E 0F 92 96 13 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $12, $17, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$AD4B PRG:2D4B FF FF FF FF 12 17 17 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $92, $95, $13, $FF, $FF, $FF, $FF, $FF ; CPU:$AD5B PRG:2D5B FF 17 17 0E 0F 10 0E 0F 92 95 13 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $12, $17, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$AD6B PRG:2D6B FF FF FF FF 12 17 17 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $92, $94, $13, $FF, $FF, $FF, $FF, $FF ; CPU:$AD7B PRG:2D7B FF 17 17 0E 0F 10 0E 0F 92 94 13 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $12, $17, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$AD8B PRG:2D8B FF FF FF FF 12 17 17 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $92, $93, $13, $FF, $FF, $FF, $FF, $FF ; CPU:$AD9B PRG:2D9B FF 17 17 0E 0F 10 0E 0F 92 93 13 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $12, $17, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$ADAB PRG:2DAB FF FF FF FF 12 17 17 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $92, $92, $13, $FF, $FF, $FF, $FF, $FF ; CPU:$ADBB PRG:2DBB FF 17 17 0E 0F 10 0E 0F 92 92 13 FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $12, $17, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$ADCB PRG:2DCB FF FF FF FF 12 17 17 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $92, $91, $13, $FF, $FF, $FF, $FF, $FF ; CPU:$ADDB PRG:2DDB FF 17 17 0E 0F 10 0E 0F 92 91 13 FF FF FF FF FF
.byte $FF, $04, $02, $01, $12, $17, $17, $48, $44, $17, $48, $44, $17, $17, $FF, $FF ; CPU:$ADEB PRG:2DEB FF 04 02 01 12 17 17 48 44 17 48 44 17 17 FF FF
.byte $FF, $17, $17, $44, $49, $17, $44, $49, $17, $17, $13, $01, $01, $03, $05, $FF ; CPU:$ADFB PRG:2DFB FF 17 17 44 49 17 44 49 17 17 13 01 01 03 05 FF
.byte $04, $02, $01, $01, $12, $17, $17, $44, $44, $17, $44, $44, $17, $17, $FF, $FF ; CPU:$AE0B PRG:2E0B 04 02 01 01 12 17 17 44 44 17 44 44 17 17 FF FF
.byte $FF, $17, $17, $44, $44, $17, $44, $44, $17, $17, $13, $01, $01, $01, $03, $05 ; CPU:$AE1B PRG:2E1B FF 17 17 44 44 17 44 44 17 17 13 01 01 01 03 05
.byte $06, $00, $00, $00, $14, $16, $16, $16, $16, $16, $16, $16, $16, $60, $FF, $FF ; CPU:$AE2B PRG:2E2B 06 00 00 00 14 16 16 16 16 16 16 16 16 60 FF FF
.byte $FF, $60, $16, $16, $16, $16, $16, $16, $16, $16, $15, $00, $00, $00, $00, $07 ; CPU:$AE3B PRG:2E3B FF 60 16 16 16 16 16 16 16 16 15 00 00 00 00 07
.byte $1C, $1E, $1F, $17, $17, $17, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$AE4B PRG:2E4B 1C 1E 1F 17 17 17 17 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $0C, $0E, $0F, $17, $17, $17, $17, $1F, $92, $90, $13 ; CPU:$AE5B PRG:2E5B FF 17 17 0E 0F 0C 0E 0F 17 17 17 17 1F 92 90 13
.byte $1C, $20, $FF, $34, $17, $17, $17, $46, $46, $17, $46, $46, $17, $17, $FF, $FF ; CPU:$AE6B PRG:2E6B 1C 20 FF 34 17 17 17 46 46 17 46 46 17 17 FF FF
.byte $FF, $17, $17, $46, $46, $0C, $46, $46, $17, $17, $17, $35, $FF, $21, $39, $13 ; CPU:$AE7B PRG:2E7B FF 17 17 46 46 0C 46 46 17 17 17 35 FF 21 39 13
.byte $1C, $20, $FF, $36, $17, $17, $17, $44, $44, $17, $44, $44, $17, $17, $FF, $FF ; CPU:$AE8B PRG:2E8B 1C 20 FF 36 17 17 17 44 44 17 44 44 17 17 FF FF
.byte $FF, $17, $17, $44, $44, $0C, $44, $44, $17, $17, $17, $37, $FF, $21, $39, $13 ; CPU:$AE9B PRG:2E9B FF 17 17 44 44 0C 44 44 17 17 17 37 FF 21 39 13
.byte $1C, $20, $FF, $FF, $34, $17, $17, $48, $44, $17, $48, $44, $17, $17, $FF, $FF ; CPU:$AEAB PRG:2EAB 1C 20 FF FF 34 17 17 48 44 17 48 44 17 17 FF FF
.byte $FF, $17, $17, $48, $44, $0C, $44, $49, $17, $17, $35, $FF, $FF, $21, $39, $13 ; CPU:$AEBB PRG:2EBB FF 17 17 48 44 0C 44 49 17 17 35 FF FF 21 39 13
.byte $1C, $22, $2A, $2C, $36, $17, $17, $44, $44, $17, $44, $44, $17, $17, $FF, $FF ; CPU:$AECB PRG:2ECB 1C 22 2A 2C 36 17 17 44 44 17 44 44 17 17 FF FF
.byte $FF, $17, $17, $44, $44, $0C, $44, $44, $17, $17, $37, $2D, $2B, $23, $39, $13 ; CPU:$AEDB PRG:2EDB FF 17 17 44 44 0C 44 44 17 17 37 2D 2B 23 39 13
.byte $14, $24, $16, $16, $16, $16, $16, $16, $16, $16, $16, $16, $16, $60, $FF, $FF ; CPU:$AEEB PRG:2EEB 14 24 16 16 16 16 16 16 16 16 16 16 16 60 FF FF
.byte $FF, $60, $16, $16, $16, $0D, $16, $16, $16, $16, $16, $16, $16, $25, $16, $15 ; CPU:$AEFB PRG:2EFB FF 60 16 16 16 0D 16 16 16 16 16 16 16 25 16 15
.byte $1C, $1E, $38, $17, $2C, $FF, $1A, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$AF0B PRG:2F0B 1C 1E 38 17 2C FF 1A 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $1B, $FF, $2D, $17, $1F, $91, $99, $13 ; CPU:$AF1B PRG:2F1B FF 17 17 0E 0F 10 0E 0F 1B FF 2D 17 1F 91 99 13
.byte $1C, $20, $FF, $34, $2E, $30, $1A, $46, $46, $17, $46, $46, $17, $17, $FF, $FF ; CPU:$AF2B PRG:2F2B 1C 20 FF 34 2E 30 1A 46 46 17 46 46 17 17 FF FF
.byte $FF, $17, $17, $46, $46, $17, $46, $46, $1B, $31, $2F, $35, $FF, $21, $39, $13 ; CPU:$AF3B PRG:2F3B FF 17 17 46 46 17 46 46 1B 31 2F 35 FF 21 39 13
.byte $1C, $20, $FF, $36, $17, $2C, $1A, $44, $44, $17, $44, $44, $17, $17, $FF, $FF ; CPU:$AF4B PRG:2F4B 1C 20 FF 36 17 2C 1A 44 44 17 44 44 17 17 FF FF
.byte $FF, $17, $17, $44, $44, $17, $44, $44, $1B, $2D, $17, $37, $FF, $21, $39, $13 ; CPU:$AF5B PRG:2F5B FF 17 17 44 44 17 44 44 1B 2D 17 37 FF 21 39 13
.byte $1C, $20, $FF, $FF, $34, $2E, $32, $48, $44, $17, $48, $44, $17, $17, $FF, $FF ; CPU:$AF6B PRG:2F6B 1C 20 FF FF 34 2E 32 48 44 17 48 44 17 17 FF FF
.byte $FF, $17, $17, $44, $49, $17, $44, $49, $33, $2F, $35, $FF, $FF, $21, $39, $13 ; CPU:$AF7B PRG:2F7B FF 17 17 44 49 17 44 49 33 2F 35 FF FF 21 39 13
.byte $1C, $22, $2A, $2C, $36, $17, $26, $44, $44, $17, $44, $44, $17, $17, $FF, $FF ; CPU:$AF8B PRG:2F8B 1C 22 2A 2C 36 17 26 44 44 17 44 44 17 17 FF FF
.byte $FF, $17, $17, $44, $44, $17, $44, $44, $27, $17, $37, $2D, $2B, $23, $39, $13 ; CPU:$AF9B PRG:2F9B FF 17 17 44 44 17 44 44 27 17 37 2D 2B 23 39 13
.byte $14, $24, $16, $16, $16, $16, $24, $16, $16, $16, $16, $16, $16, $60, $61, $61 ; CPU:$AFAB PRG:2FAB 14 24 16 16 16 16 24 16 16 16 16 16 16 60 61 61
.byte $61, $60, $16, $16, $16, $16, $16, $16, $25, $16, $16, $16, $16, $25, $16, $15 ; CPU:$AFBB PRG:2FBB 61 60 16 16 16 16 16 16 25 16 16 16 16 25 16 15
.byte $1C, $1E, $38, $17, $2C, $FF, $1A, $0E, $0F, $10, $0E, $0F, $17, $0E, $0F, $0C ; CPU:$AFCB PRG:2FCB 1C 1E 38 17 2C FF 1A 0E 0F 10 0E 0F 17 0E 0F 0C
.byte $0E, $0F, $17, $0E, $0F, $10, $0E, $0F, $1B, $FF, $2D, $17, $1F, $91, $98, $13 ; CPU:$AFDB PRG:2FDB 0E 0F 17 0E 0F 10 0E 0F 1B FF 2D 17 1F 91 98 13
.byte $1C, $20, $FF, $34, $2E, $30, $1A, $46, $46, $17, $46, $46, $17, $46, $46, $0C ; CPU:$AFEB PRG:2FEB 1C 20 FF 34 2E 30 1A 46 46 17 46 46 17 46 46 0C
.byte $46, $46, $17, $46, $46, $17, $46, $46, $1B, $31, $2F, $35, $FF, $21, $39, $13 ; CPU:$AFFB PRG:2FFB 46 46 17 46 46 17 46 46 1B 31 2F 35 FF 21 39 13
.byte $1C, $20, $FF, $36, $17, $2C, $1A, $44, $44, $17, $44, $44, $17, $44, $44, $0C ; CPU:$B00B PRG:300B 1C 20 FF 36 17 2C 1A 44 44 17 44 44 17 44 44 0C
.byte $44, $44, $17, $44, $44, $17, $44, $44, $1B, $2D, $17, $37, $FF, $21, $39, $13 ; CPU:$B01B PRG:301B 44 44 17 44 44 17 44 44 1B 2D 17 37 FF 21 39 13
.byte $1C, $20, $FF, $FF, $34, $2E, $32, $48, $44, $17, $48, $44, $17, $48, $44, $0C ; CPU:$B02B PRG:302B 1C 20 FF FF 34 2E 32 48 44 17 48 44 17 48 44 0C
.byte $44, $49, $17, $44, $49, $17, $44, $49, $33, $2F, $35, $FF, $FF, $21, $39, $13 ; CPU:$B03B PRG:303B 44 49 17 44 49 17 44 49 33 2F 35 FF FF 21 39 13
.byte $1C, $22, $2A, $2C, $36, $17, $26, $44, $44, $17, $44, $44, $17, $44, $44, $0C ; CPU:$B04B PRG:304B 1C 22 2A 2C 36 17 26 44 44 17 44 44 17 44 44 0C
.byte $44, $44, $17, $44, $44, $17, $44, $44, $27, $17, $37, $2D, $2B, $23, $39, $13 ; CPU:$B05B PRG:305B 44 44 17 44 44 17 44 44 27 17 37 2D 2B 23 39 13
.byte $14, $24, $16, $16, $16, $16, $24, $16, $16, $16, $16, $16, $16, $16, $16, $0D ; CPU:$B06B PRG:306B 14 24 16 16 16 16 24 16 16 16 16 16 16 16 16 0D
.byte $16, $16, $16, $16, $16, $16, $16, $16, $25, $16, $16, $16, $16, $25, $16, $15 ; CPU:$B07B PRG:307B 16 16 16 16 16 16 16 16 25 16 16 16 16 25 16 15
.byte $12, $17, $17, $17, $2C, $FF, $1A, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$B08B PRG:308B 12 17 17 17 2C FF 1A 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $1B, $FF, $2D, $17, $1F, $91, $97, $13 ; CPU:$B09B PRG:309B FF 17 17 0E 0F 10 0E 0F 1B FF 2D 17 1F 91 97 13
.byte $12, $17, $17, $17, $2E, $30, $1A, $46, $46, $17, $46, $46, $17, $17, $FF, $FF ; CPU:$B0AB PRG:30AB 12 17 17 17 2E 30 1A 46 46 17 46 46 17 17 FF FF
.byte $FF, $17, $17, $46, $46, $17, $46, $46, $1B, $31, $2F, $35, $FF, $21, $39, $13 ; CPU:$B0BB PRG:30BB FF 17 17 46 46 17 46 46 1B 31 2F 35 FF 21 39 13
.byte $12, $17, $17, $17, $17, $2C, $1A, $44, $44, $17, $44, $44, $17, $17, $FF, $FF ; CPU:$B0CB PRG:30CB 12 17 17 17 17 2C 1A 44 44 17 44 44 17 17 FF FF
.byte $FF, $17, $17, $44, $44, $17, $44, $44, $1B, $2D, $17, $37, $FF, $21, $39, $13 ; CPU:$B0DB PRG:30DB FF 17 17 44 44 17 44 44 1B 2D 17 37 FF 21 39 13
.byte $12, $17, $17, $17, $17, $2E, $32, $48, $44, $17, $48, $44, $17, $17, $FF, $FF ; CPU:$B0EB PRG:30EB 12 17 17 17 17 2E 32 48 44 17 48 44 17 17 FF FF
.byte $FF, $17, $17, $44, $49, $17, $44, $49, $33, $2F, $35, $FF, $FF, $21, $39, $13 ; CPU:$B0FB PRG:30FB FF 17 17 44 49 17 44 49 33 2F 35 FF FF 21 39 13
.byte $12, $17, $17, $17, $17, $17, $26, $44, $44, $17, $44, $44, $17, $17, $FF, $FF ; CPU:$B10B PRG:310B 12 17 17 17 17 17 26 44 44 17 44 44 17 17 FF FF
.byte $FF, $17, $17, $44, $44, $17, $44, $44, $27, $17, $37, $2D, $2B, $23, $39, $13 ; CPU:$B11B PRG:311B FF 17 17 44 44 17 44 44 27 17 37 2D 2B 23 39 13
.byte $14, $16, $16, $16, $16, $16, $24, $16, $16, $16, $16, $16, $16, $60, $FF, $FF ; CPU:$B12B PRG:312B 14 16 16 16 16 16 24 16 16 16 16 16 16 60 FF FF
.byte $FF, $60, $16, $16, $16, $16, $16, $16, $25, $16, $16, $16, $16, $25, $16, $15 ; CPU:$B13B PRG:313B FF 60 16 16 16 16 16 16 25 16 16 16 16 25 16 15
.byte $12, $17, $17, $17, $0E, $0F, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$B14B PRG:314B 12 17 17 17 0E 0F 17 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $1B, $FF, $2D, $17, $17, $91, $96, $13 ; CPU:$B15B PRG:315B FF 17 17 0E 0F 10 0E 0F 1B FF 2D 17 17 91 96 13
.byte $12, $17, $17, $17, $46, $46, $17, $46, $46, $17, $46, $46, $17, $17, $FF, $FF ; CPU:$B16B PRG:316B 12 17 17 17 46 46 17 46 46 17 46 46 17 17 FF FF
.byte $FF, $17, $17, $46, $46, $17, $46, $46, $1B, $31, $2F, $17, $17, $17, $17, $13 ; CPU:$B17B PRG:317B FF 17 17 46 46 17 46 46 1B 31 2F 17 17 17 17 13
.byte $12, $17, $17, $17, $44, $44, $17, $44, $44, $17, $44, $44, $17, $17, $FF, $FF ; CPU:$B18B PRG:318B 12 17 17 17 44 44 17 44 44 17 44 44 17 17 FF FF
.byte $FF, $17, $17, $44, $44, $17, $44, $44, $1B, $2D, $17, $17, $17, $17, $17, $13 ; CPU:$B19B PRG:319B FF 17 17 44 44 17 44 44 1B 2D 17 17 17 17 17 13
.byte $12, $17, $17, $17, $48, $44, $17, $48, $44, $17, $48, $44, $17, $17, $FF, $FF ; CPU:$B1AB PRG:31AB 12 17 17 17 48 44 17 48 44 17 48 44 17 17 FF FF
.byte $FF, $17, $17, $44, $49, $17, $44, $49, $33, $2F, $17, $17, $17, $17, $17, $13 ; CPU:$B1BB PRG:31BB FF 17 17 44 49 17 44 49 33 2F 17 17 17 17 17 13
.byte $12, $17, $17, $17, $44, $44, $17, $44, $44, $17, $44, $44, $17, $17, $FF, $FF ; CPU:$B1CB PRG:31CB 12 17 17 17 44 44 17 44 44 17 44 44 17 17 FF FF
.byte $FF, $17, $17, $44, $44, $17, $44, $44, $27, $17, $17, $17, $17, $17, $17, $13 ; CPU:$B1DB PRG:31DB FF 17 17 44 44 17 44 44 27 17 17 17 17 17 17 13
.byte $14, $16, $16, $16, $16, $16, $16, $16, $16, $16, $16, $16, $16, $60, $FF, $FF ; CPU:$B1EB PRG:31EB 14 16 16 16 16 16 16 16 16 16 16 16 16 60 FF FF
.byte $FF, $60, $16, $16, $16, $16, $16, $16, $25, $16, $16, $16, $16, $16, $16, $15 ; CPU:$B1FB PRG:31FB FF 60 16 16 16 16 16 16 25 16 16 16 16 16 16 15
.byte $3A, $3F, $FF, $FF, $FF, $3F, $3F, $40, $41, $3F, $40, $41, $3F, $3F, $FF, $FF ; CPU:$B20B PRG:320B 3A 3F FF FF FF 3F 3F 40 41 3F 40 41 3F 3F FF FF
.byte $FF, $3F, $3F, $40, $41, $3F, $40, $41, $3F, $40, $41, $3F, $3F, $91, $95, $3B ; CPU:$B21B PRG:321B FF 3F 3F 40 41 3F 40 41 3F 40 41 3F 3F 91 95 3B
.byte $3A, $3F, $FF, $FF, $FF, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $FF, $FF ; CPU:$B22B PRG:322B 3A 3F FF FF FF 3F 3F 3F 3F 3F 3F 3F 3F 3F FF FF
.byte $FF, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3B ; CPU:$B23B PRG:323B FF 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3B
.byte $3C, $62, $FF, $FF, $FF, $62, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $62, $63, $63 ; CPU:$B24B PRG:324B 3C 62 FF FF FF 62 3E 3E 3E 3E 3E 3E 3E 62 63 63
.byte $63, $62, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3D ; CPU:$B25B PRG:325B 63 62 3E 3E 3E 3E 3E 3E 3E 3E 3E 3E 3E 3E 3E 3D
.byte $3A, $3F, $FF, $FF, $FF, $3F, $3F, $40, $41, $3F, $40, $41, $3F, $40, $41, $3F ; CPU:$B26B PRG:326B 3A 3F FF FF FF 3F 3F 40 41 3F 40 41 3F 40 41 3F
.byte $40, $41, $3F, $40, $41, $3F, $40, $41, $3F, $40, $41, $3F, $3F, $91, $94, $3B ; CPU:$B27B PRG:327B 40 41 3F 40 41 3F 40 41 3F 40 41 3F 3F 91 94 3B
.byte $3A, $3F, $FF, $FF, $FF, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F ; CPU:$B28B PRG:328B 3A 3F FF FF FF 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F
.byte $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3B ; CPU:$B29B PRG:329B 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3B
.byte $3C, $62, $FF, $FF, $FF, $62, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E ; CPU:$B2AB PRG:32AB 3C 62 FF FF FF 62 3E 3E 3E 3E 3E 3E 3E 3E 3E 3E
.byte $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3D ; CPU:$B2BB PRG:32BB 3E 3E 3E 3E 3E 3E 3E 3E 3E 3E 3E 3E 3E 3E 3E 3D
.byte $3A, $3F, $FF, $FF, $FF, $3F, $3F, $40, $41, $3F, $40, $41, $3F, $40, $41, $3F ; CPU:$B2CB PRG:32CB 3A 3F FF FF FF 3F 3F 40 41 3F 40 41 3F 40 41 3F
.byte $40, $41, $3F, $40, $41, $3F, $40, $41, $3F, $3F, $FF, $FF, $FF, $91, $93, $3B ; CPU:$B2DB PRG:32DB 40 41 3F 40 41 3F 40 41 3F 3F FF FF FF 91 93 3B
.byte $3A, $3F, $FF, $FF, $FF, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F ; CPU:$B2EB PRG:32EB 3A 3F FF FF FF 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F
.byte $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $FF, $FF, $FF, $3F, $3F, $3B ; CPU:$B2FB PRG:32FB 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F FF FF FF 3F 3F 3B
.byte $3C, $62, $63, $63, $63, $63, $62, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E ; CPU:$B30B PRG:330B 3C 62 63 63 63 63 62 3E 3E 3E 3E 3E 3E 3E 3E 3E
.byte $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $62, $FF, $FF, $FF, $62, $3E, $3D ; CPU:$B31B PRG:331B 3E 3E 3E 3E 3E 3E 3E 3E 3E 62 FF FF FF 62 3E 3D
.byte $3A, $3F, $3F, $3F, $40, $41, $3F, $40, $41, $3F, $40, $41, $3F, $3F, $FF, $FF ; CPU:$B32B PRG:332B 3A 3F 3F 3F 40 41 3F 40 41 3F 40 41 3F 3F FF FF
.byte $FF, $3F, $3F, $40, $41, $3F, $40, $41, $3F, $3F, $FF, $FF, $FF, $91, $92, $3B ; CPU:$B33B PRG:333B FF 3F 3F 40 41 3F 40 41 3F 3F FF FF FF 91 92 3B
.byte $3A, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $FF, $FF ; CPU:$B34B PRG:334B 3A 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F FF FF
.byte $FF, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $FF, $FF, $FF, $3F, $3F, $3B ; CPU:$B35B PRG:335B FF 3F 3F 3F 3F 3F 3F 3F 3F 3F FF FF FF 3F 3F 3B
.byte $3C, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $62, $FF, $FF ; CPU:$B36B PRG:336B 3C 3E 3E 3E 3E 3E 3E 3E 3E 3E 3E 3E 3E 62 FF FF
.byte $FF, $62, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $62, $FF, $FF, $FF, $62, $3E, $3D ; CPU:$B37B PRG:337B FF 62 3E 3E 3E 3E 3E 3E 3E 62 FF FF FF 62 3E 3D
.byte $3A, $3F, $FF, $FF, $FF, $3F, $3F, $40, $41, $3F, $40, $41, $3F, $3F, $FF, $FF ; CPU:$B38B PRG:338B 3A 3F FF FF FF 3F 3F 40 41 3F 40 41 3F 3F FF FF
.byte $FF, $3F, $3F, $40, $41, $3F, $40, $41, $3F, $3F, $FF, $FF, $FF, $91, $91, $3B ; CPU:$B39B PRG:339B FF 3F 3F 40 41 3F 40 41 3F 3F FF FF FF 91 91 3B
.byte $3A, $3F, $FF, $FF, $FF, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $FF, $FF ; CPU:$B3AB PRG:33AB 3A 3F FF FF FF 3F 3F 3F 3F 3F 3F 3F 3F 3F FF FF
.byte $FF, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $3F, $FF, $FF, $FF, $3F, $3F, $3B ; CPU:$B3BB PRG:33BB FF 3F 3F 3F 3F 3F 3F 3F 3F 3F FF FF FF 3F 3F 3B
.byte $3C, $62, $FF, $FF, $FF, $62, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $62, $FF, $FF ; CPU:$B3CB PRG:33CB 3C 62 FF FF FF 62 3E 3E 3E 3E 3E 3E 3E 62 FF FF
.byte $FF, $62, $3E, $3E, $3E, $3E, $3E, $3E, $3E, $62, $FF, $FF, $FF, $62, $3E, $3D ; CPU:$B3DB PRG:33DB FF 62 3E 3E 3E 3E 3E 3E 3E 62 FF FF FF 62 3E 3D
.byte $12, $17, $FF, $FF, $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF ; CPU:$B3EB PRG:33EB 12 17 FF FF FF 17 17 0E 0F 10 0E 0F 17 17 FF FF
.byte $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF, $FF, $91, $90, $13 ; CPU:$B3FB PRG:33FB FF 17 17 0E 0F 10 0E 0F 17 17 FF FF FF 91 90 13
.byte $12, $17, $FF, $FF, $FF, $17, $17, $46, $46, $17, $46, $46, $17, $17, $FF, $FF ; CPU:$B40B PRG:340B 12 17 FF FF FF 17 17 46 46 17 46 46 17 17 FF FF
.byte $FF, $17, $17, $46, $46, $17, $46, $46, $17, $17, $FF, $FF, $FF, $17, $17, $13 ; CPU:$B41B PRG:341B FF 17 17 46 46 17 46 46 17 17 FF FF FF 17 17 13
.byte $12, $17, $FF, $FF, $FF, $17, $17, $44, $44, $17, $44, $44, $17, $17, $FF, $FF ; CPU:$B42B PRG:342B 12 17 FF FF FF 17 17 44 44 17 44 44 17 17 FF FF
.byte $FF, $17, $17, $44, $44, $17, $44, $44, $17, $17, $FF, $FF, $FF, $17, $17, $13 ; CPU:$B43B PRG:343B FF 17 17 44 44 17 44 44 17 17 FF FF FF 17 17 13
.byte $12, $17, $FF, $FF, $FF, $17, $17, $48, $44, $17, $48, $44, $17, $17, $FF, $FF ; CPU:$B44B PRG:344B 12 17 FF FF FF 17 17 48 44 17 48 44 17 17 FF FF
.byte $FF, $17, $17, $44, $49, $17, $44, $49, $17, $17, $FF, $FF, $FF, $17, $17, $13 ; CPU:$B45B PRG:345B FF 17 17 44 49 17 44 49 17 17 FF FF FF 17 17 13
.byte $14, $60, $FF, $FF, $FF, $60, $16, $16, $16, $16, $16, $16, $16, $60, $61, $61 ; CPU:$B46B PRG:346B 14 60 FF FF FF 60 16 16 16 16 16 16 16 60 61 61
.byte $61, $60, $16, $16, $16, $16, $16, $16, $16, $60, $FF, $FF, $FF, $60, $16, $15 ; CPU:$B47B PRG:347B 61 60 16 16 16 16 16 16 16 60 FF FF FF 60 16 15
.byte $12, $17, $FF, $FF, $FF, $17, $17, $0E, $0F, $10, $0E, $0F, $17, $0E, $0F, $17 ; CPU:$B48B PRG:348B 12 17 FF FF FF 17 17 0E 0F 10 0E 0F 17 0E 0F 17
.byte $0E, $0F, $17, $0E, $0F, $10, $0E, $0F, $17, $17, $FF, $FF, $FF, $FF, $99, $13 ; CPU:$B49B PRG:349B 0E 0F 17 0E 0F 10 0E 0F 17 17 FF FF FF FF 99 13
.byte $12, $17, $FF, $FF, $FF, $17, $17, $46, $46, $17, $46, $46, $17, $46, $46, $17 ; CPU:$B4AB PRG:34AB 12 17 FF FF FF 17 17 46 46 17 46 46 17 46 46 17
.byte $46, $46, $17, $46, $46, $17, $46, $46, $17, $17, $FF, $FF, $FF, $17, $17, $13 ; CPU:$B4BB PRG:34BB 46 46 17 46 46 17 46 46 17 17 FF FF FF 17 17 13
.byte $12, $17, $FF, $FF, $FF, $17, $17, $44, $44, $17, $44, $44, $17, $44, $44, $17 ; CPU:$B4CB PRG:34CB 12 17 FF FF FF 17 17 44 44 17 44 44 17 44 44 17
.byte $44, $44, $17, $44, $44, $17, $44, $44, $17, $17, $FF, $FF, $FF, $17, $17, $13 ; CPU:$B4DB PRG:34DB 44 44 17 44 44 17 44 44 17 17 FF FF FF 17 17 13
.byte $12, $17, $FF, $FF, $FF, $17, $17, $48, $44, $17, $48, $44, $17, $48, $44, $17 ; CPU:$B4EB PRG:34EB 12 17 FF FF FF 17 17 48 44 17 48 44 17 48 44 17
.byte $44, $49, $17, $44, $49, $17, $44, $49, $17, $17, $FF, $FF, $FF, $17, $17, $13 ; CPU:$B4FB PRG:34FB 44 49 17 44 49 17 44 49 17 17 FF FF FF 17 17 13
.byte $14, $60 ; CPU:$B50B PRG:350B 14 60
; -----------------------------------------------------------------------------
; Routine: Label_B50D
; Global: Branch target inside Label: taken when B50D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_B50D:
.byte $FF, $FF, $FF ; CPU:$B50D PRG:350D FF FF FF -- isc $FFFF,x (undocumented; ca65 cannot encode)
adc (Zp16,x) ; CPU:$B510 PRG:3510 61 16
asl Zp16,x ; CPU:$B512 PRG:3512 16 16
asl Zp16,x ; CPU:$B514 PRG:3514 16 16
asl Zp16,x ; CPU:$B516 PRG:3516 16 16
asl Zp16,x ; CPU:$B518 PRG:3518 16 16
asl Zp16,x ; CPU:$B51A PRG:351A 16 16
asl Zp16,x ; CPU:$B51C PRG:351C 16 16
asl Zp16,x ; CPU:$B51E PRG:351E 16 16
asl Zp16,x ; CPU:$B520 PRG:3520 16 16
asl Zp16,x ; CPU:$B522 PRG:3522 16 16
rts ; CPU:$B524 PRG:3524 60
; ---- data $B525-$B58C (104 bytes) ----
.byte $FF, $FF, $FF, $60, $16, $15, $12, $17, $FF, $FF, $FF, $17, $17, $0E, $0F, $10 ; CPU:$B525 PRG:3525 FF FF FF 60 16 15 12 17 FF FF FF 17 17 0E 0F 10
.byte $0E, $0F, $17, $0E, $0F, $17, $0E, $0F, $17, $0E, $0F, $10, $0E, $0F, $17, $17 ; CPU:$B535 PRG:3535 0E 0F 17 0E 0F 17 0E 0F 17 0E 0F 10 0E 0F 17 17
.byte $FF, $FF, $FF, $FF, $98, $13, $12, $17, $FF, $FF, $FF, $17, $17, $17, $17, $17 ; CPU:$B545 PRG:3545 FF FF FF FF 98 13 12 17 FF FF FF 17 17 17 17 17
.byte $FF, $FF, $FF, $17, $17, $17, $17, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17 ; CPU:$B555 PRG:3555 FF FF FF 17 17 17 17 17 FF FF FF 17 FF FF FF 17
.byte $FF, $FF, $FF, $FF, $97, $13, $12, $17, $FF, $FF, $FF, $17, $17, $17, $17, $17 ; CPU:$B565 PRG:3565 FF FF FF FF 97 13 12 17 FF FF FF 17 17 17 17 17
.byte $FF, $FF, $FF, $17, $17, $17, $17, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17 ; CPU:$B575 PRG:3575 FF FF FF 17 17 17 17 17 FF FF FF 17 FF FF FF 17
.byte $FF, $FF, $FF, $17, $17, $13, $14, $60 ; CPU:$B585 PRG:3585 FF FF FF 17 17 13 14 60
; -----------------------------------------------------------------------------
; Routine: Label_B58D
; Global: Branch target inside Label: taken when B58D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_B58D:
adc (Zp61,x) ; CPU:$B58D PRG:358D 61 61
adc (Zp60,x) ; CPU:$B58F PRG:358F 61 60
; -----------------------------------------------------------------------------
; Routine: Label_B591
; Global: Branch target inside Label: taken when B591.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_B591:
asl Zp16,x ; CPU:$B591 PRG:3591 16 16
asl Zp60,x ; CPU:$B593 PRG:3593 16 60
.byte $FF, $FF, $FF ; CPU:$B595 PRG:3595 FF FF FF -- isc $FFFF,x (undocumented; ca65 cannot encode)
rts ; CPU:$B598 PRG:3598 60
; ---- data $B599-$BB2A (1426 bytes) ----
; referenced by `lda $BADB,y` at $A5F6 (operand $BADB falls inside this region)
; referenced by `eor $BB03,y` at $A5FF (operand $BB03 falls inside this region)
; referenced by `lda $BA7B,y` at $A90E (operand $BA7B falls inside this region)
; referenced by `lda $B82B,y` at $A9A4 (operand $B82B falls inside this region)
.byte $16, $16, $16, $60, $FF, $FF, $FF, $60, $FF, $FF, $FF, $60, $61, $61, $61, $60 ; CPU:$B599 PRG:3599 16 16 16 60 FF FF FF 60 FF FF FF 60 61 61 61 60
.byte $16, $15, $12, $17, $17, $17, $17, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17 ; CPU:$B5A9 PRG:35A9 16 15 12 17 17 17 17 17 FF FF FF 17 FF FF FF 17
.byte $17, $17, $17, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $17, $17, $17, $FF ; CPU:$B5B9 PRG:35B9 17 17 17 17 FF FF FF 17 FF FF FF 17 17 17 17 FF
.byte $96, $13, $12, $17, $17, $46, $46, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17 ; CPU:$B5C9 PRG:35C9 96 13 12 17 17 46 46 17 FF FF FF 17 FF FF FF 17
.byte $17, $17, $17, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $46, $46, $17, $17 ; CPU:$B5D9 PRG:35D9 17 17 17 17 FF FF FF 17 FF FF FF 17 46 46 17 17
.byte $17, $13, $12, $17, $17, $44, $44, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17 ; CPU:$B5E9 PRG:35E9 17 13 12 17 17 44 44 17 FF FF FF 17 FF FF FF 17
.byte $17, $17, $17, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $44, $44, $17, $17 ; CPU:$B5F9 PRG:35F9 17 17 17 17 FF FF FF 17 FF FF FF 17 44 44 17 17
.byte $17, $13, $12, $17, $17, $48, $44, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17 ; CPU:$B609 PRG:3609 17 13 12 17 17 48 44 17 FF FF FF 17 FF FF FF 17
.byte $17, $17, $17, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $44, $49, $17, $17 ; CPU:$B619 PRG:3619 17 17 17 17 FF FF FF 17 FF FF FF 17 44 49 17 17
.byte $17, $13, $14, $16, $16, $16, $16, $60, $FF, $FF, $FF, $60, $FF, $FF, $FF, $60 ; CPU:$B629 PRG:3629 17 13 14 16 16 16 16 60 FF FF FF 60 FF FF FF 60
.byte $16, $16, $16, $60, $FF, $FF, $FF, $60, $FF, $FF, $FF, $60, $16, $16, $16, $16 ; CPU:$B639 PRG:3639 16 16 16 60 FF FF FF 60 FF FF FF 60 16 16 16 16
.byte $16, $15, $12, $17, $17, $17, $17, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17 ; CPU:$B649 PRG:3649 16 15 12 17 17 17 17 17 FF FF FF 17 FF FF FF 17
.byte $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $17, $17, $17, $FF ; CPU:$B659 PRG:3659 FF FF FF 17 FF FF FF 17 FF FF FF 17 17 17 17 FF
.byte $95, $13, $12, $17, $17, $46, $46, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17 ; CPU:$B669 PRG:3669 95 13 12 17 17 46 46 17 FF FF FF 17 FF FF FF 17
.byte $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $46, $46, $17, $17 ; CPU:$B679 PRG:3679 FF FF FF 17 FF FF FF 17 FF FF FF 17 46 46 17 17
.byte $17, $13, $12, $17, $17, $44, $44, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17 ; CPU:$B689 PRG:3689 17 13 12 17 17 44 44 17 FF FF FF 17 FF FF FF 17
.byte $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $44, $44, $17, $17 ; CPU:$B699 PRG:3699 FF FF FF 17 FF FF FF 17 FF FF FF 17 44 44 17 17
.byte $17, $13, $12, $17, $17, $48, $44, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17 ; CPU:$B6A9 PRG:36A9 17 13 12 17 17 48 44 17 FF FF FF 17 FF FF FF 17
.byte $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $44, $49, $17, $17 ; CPU:$B6B9 PRG:36B9 FF FF FF 17 FF FF FF 17 FF FF FF 17 44 49 17 17
.byte $17, $13, $14, $16, $16, $16, $16, $60, $FF, $FF, $FF, $60, $FF, $FF, $FF, $60 ; CPU:$B6C9 PRG:36C9 17 13 14 16 16 16 16 60 FF FF FF 60 FF FF FF 60
.byte $FF, $FF, $FF, $60, $FF, $FF, $FF, $60, $FF, $FF, $FF, $60, $16, $16, $16, $16 ; CPU:$B6D9 PRG:36D9 FF FF FF 60 FF FF FF 60 FF FF FF 60 16 16 16 16
.byte $16, $15, $12, $17, $17, $17, $17, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17 ; CPU:$B6E9 PRG:36E9 16 15 12 17 17 17 17 17 FF FF FF 17 FF FF FF 17
.byte $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $17, $17, $17, $FF ; CPU:$B6F9 PRG:36F9 FF FF FF 17 FF FF FF 17 FF FF FF 17 17 17 17 FF
.byte $94, $13, $12, $17, $17, $17, $17, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17 ; CPU:$B709 PRG:3709 94 13 12 17 17 17 17 17 FF FF FF 17 FF FF FF 17
.byte $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $17, $17, $17, $FF ; CPU:$B719 PRG:3719 FF FF FF 17 FF FF FF 17 FF FF FF 17 17 17 17 FF
.byte $93, $13, $12, $17, $17, $17, $17, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17 ; CPU:$B729 PRG:3729 93 13 12 17 17 17 17 17 FF FF FF 17 FF FF FF 17
.byte $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $17, $17, $17, $FF ; CPU:$B739 PRG:3739 FF FF FF 17 FF FF FF 17 FF FF FF 17 17 17 17 FF
.byte $92, $13, $12, $17, $17, $17, $17, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17 ; CPU:$B749 PRG:3749 92 13 12 17 17 17 17 17 FF FF FF 17 FF FF FF 17
.byte $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $FF, $FF, $FF, $17, $17, $17, $17, $FF ; CPU:$B759 PRG:3759 FF FF FF 17 FF FF FF 17 FF FF FF 17 17 17 17 FF
.byte $91, $13, $14, $16, $16, $16, $16, $60, $61, $61, $61, $60, $61, $61, $61, $60 ; CPU:$B769 PRG:3769 91 13 14 16 16 16 16 60 61 61 61 60 61 61 61 60
.byte $61, $61, $61, $60, $61, $61, $61, $60, $61, $61, $61, $60, $16, $16, $16, $16 ; CPU:$B779 PRG:3779 61 61 61 60 61 61 61 60 61 61 61 60 16 16 16 16
.byte $16, $15, $FF, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B ; CPU:$B789 PRG:3789 16 15 FF 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B
.byte $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $9B ; CPU:$B799 PRG:3799 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 9B
.byte $91, $5E, $FF, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B ; CPU:$B7A9 PRG:37A9 91 5E FF 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B
.byte $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B, $0B ; CPU:$B7B9 PRG:37B9 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B
.byte $0B, $5E, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F ; CPU:$B7C9 PRG:37C9 0B 5E 5F 5F 5F 5F 5F 5F 5F 5F 5F 5F 5F 5F 5F 5F
.byte $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F, $5F ; CPU:$B7D9 PRG:37D9 5F 5F 5F 5F 5F 5F 5F 5F 5F 5F 5F 5F 5F 5F 5F 5F
.byte $5F, $15, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01 ; CPU:$B7E9 PRG:37E9 5F 15 01 01 01 01 01 01 01 01 01 01 01 01 01 01
.byte $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01, $01 ; CPU:$B7F9 PRG:37F9 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
.byte $01, $01, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$B809 PRG:3809 01 01 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:$B819 PRG:3819 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
.byte $FF, $FF, $00, $02, $04, $05, $07, $08, $0A, $0C, $0D, $0F, $10, $12, $14, $15 ; CPU:$B829 PRG:3829 FF FF 00 02 04 05 07 08 0A 0C 0D 0F 10 12 14 15
.byte $17, $18, $1A, $1C, $1D, $1F, $20, $22, $24, $25, $27, $28, $2A, $2C, $2D, $2F ; CPU:$B839 PRG:3839 17 18 1A 1C 1D 1F 20 22 24 25 27 28 2A 2C 2D 2F
.byte $30, $32, $E0, $2B, $F0, $2B, $C0, $23, $C8, $23, $D8, $23, $E0, $23, $F0, $23 ; CPU:$B849 PRG:3849 30 32 E0 2B F0 2B C0 23 C8 23 D8 23 E0 23 F0 23
.byte $C0, $2B, $C8, $2B, $D8, $2B, $E0, $2B, $F0, $2B, $C0, $23, $C8, $23, $D8, $23 ; CPU:$B859 PRG:3859 C0 2B C8 2B D8 2B E0 2B F0 2B C0 23 C8 23 D8 23
.byte $E0, $23, $F0, $23, $C0, $2B, $C8, $2B, $D8, $2B, $E0, $2B, $F0, $2B, $C0, $23 ; CPU:$B869 PRG:3869 E0 23 F0 23 C0 2B C8 2B D8 2B E0 2B F0 2B C0 23
.byte $C8, $23, $D8, $23, $E0, $23, $F0, $23, $C0, $2B, $C8, $2B, $D8, $2B, $E0, $2B ; CPU:$B879 PRG:3879 C8 23 D8 23 E0 23 F0 23 C0 2B C8 2B D8 2B E0 2B
.byte $F0, $2B, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 ; CPU:$B889 PRG:3889 F0 2B 00 00 00 00 00 00 00 00 00 00 00 00 00 00
.byte $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 ; CPU:$B899 PRG:3899 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
.byte $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 ; CPU:$B8A9 PRG:38A9 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
.byte $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $88, $22, $00 ; CPU:$B8B9 PRG:38B9 00 00 00 00 00 00 00 00 00 00 00 00 00 88 22 00
.byte $00, $00, $00, $00, $00, $88, $22, $00, $20, $00, $00, $44, $55, $88, $66, $55 ; CPU:$B8C9 PRG:38C9 00 00 00 00 00 88 22 00 20 00 00 44 55 88 66 55
.byte $00, $00, $00, $40, $50, $88, $62, $50, $02, $00, $00, $04, $05, $08, $06, $05 ; CPU:$B8D9 PRG:38D9 00 00 00 40 50 88 62 50 02 00 00 04 05 08 06 05
.byte $00, $00, $00, $40, $50, $88, $62, $50, $02, $00, $00, $04, $05, $88, $26, $05 ; CPU:$B8E9 PRG:38E9 00 00 00 40 50 88 62 50 02 00 00 04 05 88 26 05
.byte $20, $00, $00, $44, $55, $99, $66, $55, $00, $00, $00, $40, $50, $88, $62, $50 ; CPU:$B8F9 PRG:38F9 20 00 00 44 55 99 66 55 00 00 00 40 50 88 62 50
.byte $02, $00, $00, $04, $05, $88, $26, $05, $20, $00, $00, $44, $55, $88, $66, $55 ; CPU:$B909 PRG:3909 02 00 00 04 05 88 26 05 20 00 00 44 55 88 66 55
.byte $00, $00, $00, $40, $50, $88, $62, $50, $02, $00, $00, $04, $05, $08, $06, $05 ; CPU:$B919 PRG:3919 00 00 00 40 50 88 62 50 02 00 00 04 05 08 06 05
.byte $00, $00, $00, $40, $50, $98, $62, $50, $02, $00, $00, $04, $05, $89, $26, $05 ; CPU:$B929 PRG:3929 00 00 00 40 50 98 62 50 02 00 00 04 05 89 26 05
.byte $20, $00, $00, $44, $55, $88, $66, $55, $00, $00, $00, $40, $50, $88, $62, $50 ; CPU:$B939 PRG:3939 20 00 00 44 55 88 66 55 00 00 00 40 50 88 62 50
.byte $02, $00, $00, $04, $05, $88, $26, $05, $00, $A0, $00, $44, $55, $88, $66, $55 ; CPU:$B949 PRG:3949 02 00 00 04 05 88 26 05 00 A0 00 44 55 88 66 55
.byte $00, $00, $00, $40, $50, $88, $62, $50, $00, $0A, $00, $04, $05, $08, $06, $05 ; CPU:$B959 PRG:3959 00 00 00 40 50 88 62 50 00 0A 00 04 05 08 06 05
.byte $00, $00, $00, $40, $50, $50, $50, $50, $00, $0A, $00, $04, $05, $85, $25, $05 ; CPU:$B969 PRG:3969 00 00 00 40 50 50 50 50 00 0A 00 04 05 85 25 05
.byte $00, $A0, $00, $44, $55, $88, $66, $55, $50, $80, $00, $50, $50, $88, $62, $50 ; CPU:$B979 PRG:3979 00 A0 00 44 55 88 66 55 50 80 00 50 50 88 62 50
.byte $00, $0A, $80, $25, $05, $88, $26, $05, $00, $A0, $88, $66, $55, $88, $66, $55 ; CPU:$B989 PRG:3989 00 0A 80 25 05 88 26 05 00 A0 88 66 55 88 66 55
.byte $55, $00, $88, $62, $50, $50, $50, $50, $50, $0A, $08, $06, $05, $05, $05, $05 ; CPU:$B999 PRG:3999 55 00 88 62 50 50 50 50 50 0A 08 06 05 05 05 05
.byte $05, $00, $88, $62, $50, $50, $50, $50, $88, $2A, $08, $06, $05, $85, $25, $05 ; CPU:$B9A9 PRG:39A9 05 00 88 62 50 50 50 50 88 2A 08 06 05 85 25 05
.byte $88, $A2, $00, $55, $55, $88, $66, $55, $88, $22, $88, $62, $50, $88, $62, $50 ; CPU:$B9B9 PRG:39B9 88 A2 00 55 55 88 66 55 88 22 88 62 50 88 62 50
.byte $88, $2A, $88, $26, $05, $88, $26, $05, $88, $A2, $88, $66, $55, $88, $66, $55 ; CPU:$B9C9 PRG:39C9 88 2A 88 26 05 88 26 05 88 A2 88 66 55 88 66 55
.byte $88, $22, $88, $62, $50, $50, $50, $50, $88, $2A, $08, $06, $05, $05, $05, $05 ; CPU:$B9D9 PRG:39D9 88 22 88 62 50 50 50 50 88 2A 08 06 05 05 05 05
.byte $08, $02, $88, $62, $50, $50, $50, $50, $88, $2A, $88, $26, $85, $25, $85, $A5 ; CPU:$B9E9 PRG:39E9 08 02 88 62 50 50 50 50 88 2A 88 26 85 25 85 A5
.byte $A8, $A2, $88, $22, $88, $22, $88, $AA, $AA, $22, $48, $98, $AA, $22, $88, $AA ; CPU:$B9F9 PRG:39F9 A8 A2 88 22 88 22 88 AA AA 22 48 98 AA 22 88 AA
.byte $62, $0A, $04, $89, $AA, $A2, $A8, $AA, $A6, $A0, $44, $99, $AA, $AA, $AA, $AA ; CPU:$BA09 PRG:3A09 62 0A 04 89 AA A2 A8 AA A6 A0 44 99 AA AA AA AA
.byte $66, $00, $40, $98, $AA, $AA, $AA, $AA, $62, $08, $04, $09, $0A, $0A, $0A, $0A ; CPU:$BA19 PRG:3A19 66 00 40 98 AA AA AA AA 62 08 04 09 0A 0A 0A 0A
.byte $06, $00, $40, $98, $AA, $AA, $AA, $AA, $62, $08, $04, $89, $AA, $AA, $AA, $AA ; CPU:$BA29 PRG:3A29 06 00 40 98 AA AA AA AA 62 08 04 89 AA AA AA AA
.byte $26, $80, $44, $99, $AA, $AA, $AA, $AA, $66, $00, $40, $98, $AA, $AA, $AA, $AA ; CPU:$BA39 PRG:3A39 26 80 44 99 AA AA AA AA 66 00 40 98 AA AA AA AA
.byte $62, $08, $A6, $A9, $AA, $AA, $AA, $AA, $A6, $AA, $AA, $AA, $AA, $AA, $AA, $AA ; CPU:$BA49 PRG:3A49 62 08 A6 A9 AA AA AA AA A6 AA AA AA AA AA AA AA
.byte $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA ; CPU:$BA59 PRG:3A59 AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA
.byte $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA, $AA ; CPU:$BA69 PRG:3A69 AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA AA
.byte $AA, $AA, $08, $0E, $14, $1A, $20, $26, $2C, $32, $38, $3E, $44, $4A, $50, $56 ; CPU:$BA79 PRG:3A79 AA AA 08 0E 14 1A 20 26 2C 32 38 3E 44 4A 50 56
.byte $5C, $62, $68, $6E, $74, $7A, $80, $86, $8C, $92, $98, $9E, $A4, $AA, $B0, $B6 ; CPU:$BA89 PRG:3A89 5C 62 68 6E 74 7A 80 86 8C 92 98 9E A4 AA B0 B6
.byte $BC, $C2, $40, $2A, $00, $2B, $00, $20, $C0, $20, $80, $21, $40, $22, $00, $23 ; CPU:$BA99 PRG:3A99 BC C2 40 2A 00 2B 00 20 C0 20 80 21 40 22 00 23
.byte $00, $28, $C0, $28, $80, $29, $40, $2A, $00, $2B, $00, $20, $C0, $20, $80, $21 ; CPU:$BAA9 PRG:3AA9 00 28 C0 28 80 29 40 2A 00 2B 00 20 C0 20 80 21
.byte $40, $22, $00, $23, $00, $28, $C0, $28, $80, $29, $40, $2A, $00, $2B, $00, $20 ; CPU:$BAB9 PRG:3AB9 40 22 00 23 00 28 C0 28 80 29 40 2A 00 2B 00 20
.byte $C0, $20, $80, $21, $40, $22, $00, $23, $00, $28, $C0, $28, $80, $29, $40, $2A ; CPU:$BAC9 PRG:3AC9 C0 20 80 21 40 22 00 23 00 28 C0 28 80 29 40 2A
.byte $00, $2B, $00, $30, $60, $90, $C0, $00, $30, $60, $90, $C0, $00, $30, $60, $90 ; CPU:$BAD9 PRG:3AD9 00 2B 00 30 60 90 C0 00 30 60 90 C0 00 30 60 90
.byte $C0, $00, $30, $60, $90, $C0, $00, $30, $60, $90, $C0, $00, $30, $60, $90, $C0 ; CPU:$BAE9 PRG:3AE9 C0 00 30 60 90 C0 00 30 60 90 C0 00 30 60 90 C0
.byte $00, $30, $60, $90, $C0, $00, $30, $60, $90, $C0, $00, $00, $00, $00, $00, $02 ; CPU:$BAF9 PRG:3AF9 00 30 60 90 C0 00 30 60 90 C0 00 00 00 00 00 02
.byte $02, $02, $02, $02, $00, $00, $00, $00, $00, $02, $02, $02, $02, $02, $00, $00 ; CPU:$BB09 PRG:3B09 02 02 02 02 00 00 00 00 00 02 02 02 02 02 00 00
.byte $00, $00, $00, $02, $02, $02, $02, $02, $00, $00, $00, $00, $00, $02, $02, $02 ; CPU:$BB19 PRG:3B19 00 00 00 02 02 02 02 02 00 00 00 00 00 02 02 02
.byte $02, $02 ; CPU:$BB29 PRG:3B29 02 02
; -----------------------------------------------------------------------------
; Routine: Label_BB2B
; Global: Branch target inside Label: taken when BB2B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_BB2B:
jsr Sub_BD36 ; CPU:$BB2B PRG:3B2B 20 36 BD
lda #$1B ; CPU:$BB2E PRG:3B2E A9 1B
sta ZpA5 ; CPU:$BB30 PRG:3B30 85 A5
lda #$C5 ; CPU:$BB32 PRG:3B32 A9 C5
sta ZpA6 ; CPU:$BB34 PRG:3B34 85 A6
lda #$02 ; CPU:$BB36 PRG:3B36 A9 02
sta $0590 ; CPU:$BB38 PRG:3B38 8D 90 05
lda #$00 ; CPU:$BB3B PRG:3B3B A9 00
sta $0587 ; CPU:$BB3D PRG:3B3D 8D 87 05
lda $0580 ; CPU:$BB40 PRG:3B40 AD 80 05
bne NmiHandler_Loop128 ; CPU:$BB43 PRG:3B43 D0 07
lda $0301 ; CPU:$BB45 PRG:3B45 AD 01 03
cmp #$01 ; CPU:$BB48 PRG:3B48 C9 01
beq NmiHandler_Loop132 ; CPU:$BB4A PRG:3B4A F0 72
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop128
; Global: Branch target inside Label: taken when BB4C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop128:
lda #$FF ; CPU:$BB4C PRG:3B4C A9 FF
sta $0688 ; CPU:$BB4E PRG:3B4E 8D 88 06
lda $0580 ; CPU:$BB51 PRG:3B51 AD 80 05
bne NmiHandler_Loop129 ; CPU:$BB54 PRG:3B54 D0 0F
sta $057D ; CPU:$BB56 PRG:3B56 8D 7D 05
sta $058E ; CPU:$BB59 PRG:3B59 8D 8E 05
sta $058F ; CPU:$BB5C PRG:3B5C 8D 8F 05
jsr Sub_BD58 ; CPU:$BB5F PRG:3B5F 20 58 BD
jmp NmiHandler_OnNonzero32 ; CPU:$BB62 PRG:3B62 4C 77 BB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop129
; Global: Branch target inside Label: taken when BB65.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop129:
lda #$FF ; CPU:$BB65 PRG:3B65 A9 FF
sta $057D ; CPU:$BB67 PRG:3B67 8D 7D 05
lda #$00 ; CPU:$BB6A PRG:3B6A A9 00
sta $058E ; CPU:$BB6C PRG:3B6C 8D 8E 05
sta $05C2 ; CPU:$BB6F PRG:3B6F 8D C2 05
lda #$07 ; CPU:$BB72 PRG:3B72 A9 07
sta $058F ; CPU:$BB74 PRG:3B74 8D 8F 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero32
; Global: Branch target inside Label: taken when BB77.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero32:
jsr Sub_BE56 ; CPU:$BB77 PRG:3B77 20 56 BE
lda #$00 ; CPU:$BB7A PRG:3B7A A9 00
sta $057F ; CPU:$BB7C PRG:3B7C 8D 7F 05
lda $0580 ; CPU:$BB7F PRG:3B7F AD 80 05
bne NmiHandler_Loop130 ; CPU:$BB82 PRG:3B82 D0 1D
lda $0590 ; CPU:$BB84 PRG:3B84 AD 90 05
beq NmiHandler_Loop130 ; CPU:$BB87 PRG:3B87 F0 18
dec $0590 ; CPU:$BB89 PRG:3B89 CE 90 05
lda #$00 ; CPU:$BB8C PRG:3B8C A9 00
sta $0688 ; CPU:$BB8E PRG:3B8E 8D 88 06
jsr Sub_BCB6 ; CPU:$BB91 PRG:3B91 20 B6 BC
jsr Sub_BCAB ; CPU:$BB94 PRG:3B94 20 AB BC
jsr Sub_BD58 ; CPU:$BB97 PRG:3B97 20 58 BD
lda #$FF ; CPU:$BB9A PRG:3B9A A9 FF
sta $057D ; CPU:$BB9C PRG:3B9C 8D 7D 05
bne NmiHandler_OnNonzero32 ; CPU:$BB9F PRG:3B9F D0 D6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop130
; Global: Branch target inside Label: taken when BBA1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop130:
jsr Sub_BDE6 ; CPU:$BBA1 PRG:3BA1 20 E6 BD
lda #$00 ; CPU:$BBA4 PRG:3BA4 A9 00
sta $057F ; CPU:$BBA6 PRG:3BA6 8D 7F 05
lda $0580 ; CPU:$BBA9 PRG:3BA9 AD 80 05
beq NmiHandler_Loop131 ; CPU:$BBAC PRG:3BAC F0 08
lda #$FF ; CPU:$BBAE PRG:3BAE A9 FF
sta $057E ; CPU:$BBB0 PRG:3BB0 8D 7E 05
jsr Sub_8266 ; CPU:$BBB3 PRG:3BB3 20 66 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop131
; Global: Branch target inside Label: taken when BBB6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop131:
lda #$02 ; CPU:$BBB6 PRG:3BB6 A9 02
jsr Sub_8224 ; CPU:$BBB8 PRG:3BB8 20 24 82
jsr Sub_8266 ; CPU:$BBBB PRG:3BBB 20 66 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop132
; Global: Branch target inside Label: taken when BBBE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop132:
lda #$00 ; CPU:$BBBE PRG:3BBE A9 00
sta $057D ; CPU:$BBC0 PRG:3BC0 8D 7D 05
sta $058E ; CPU:$BBC3 PRG:3BC3 8D 8E 05
sta $058F ; CPU:$BBC6 PRG:3BC6 8D 8F 05
lda #$FF ; CPU:$BBC9 PRG:3BC9 A9 FF
sta $0688 ; CPU:$BBCB PRG:3BCB 8D 88 06
jsr Sub_BD58 ; CPU:$BBCE PRG:3BCE 20 58 BD
jsr Sub_BE56 ; CPU:$BBD1 PRG:3BD1 20 56 BE
lda #$00 ; CPU:$BBD4 PRG:3BD4 A9 00
sta $057F ; CPU:$BBD6 PRG:3BD6 8D 7F 05
dec $0590 ; CPU:$BBD9 PRG:3BD9 CE 90 05
jsr Sub_BE1E ; CPU:$BBDC PRG:3BDC 20 1E BE
lda #$00 ; CPU:$BBDF PRG:3BDF A9 00
sta $057D ; CPU:$BBE1 PRG:3BE1 8D 7D 05
sta $058E ; CPU:$BBE4 PRG:3BE4 8D 8E 05
sta $058F ; CPU:$BBE7 PRG:3BE7 8D 8F 05
lda #$02 ; CPU:$BBEA PRG:3BEA A9 02
sta $0590 ; CPU:$BBEC PRG:3BEC 8D 90 05
lda #$FF ; CPU:$BBEF PRG:3BEF A9 FF
sta $0688 ; CPU:$BBF1 PRG:3BF1 8D 88 06
jsr Sub_BD58 ; CPU:$BBF4 PRG:3BF4 20 58 BD
jsr Sub_BE56 ; CPU:$BBF7 PRG:3BF7 20 56 BE
lda #$00 ; CPU:$BBFA PRG:3BFA A9 00
sta $057F ; CPU:$BBFC PRG:3BFC 8D 7F 05
dec $0590 ; CPU:$BBFF PRG:3BFF CE 90 05
; -----------------------------------------------------------------------------
; Routine: Sub_BC02
; Global: Branch target inside Label: taken when BC02.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BC02:
lda #$00 ; CPU:$BC02 PRG:3C02 A9 00
sta $0688 ; CPU:$BC04 PRG:3C04 8D 88 06
lda #$FF ; CPU:$BC07 PRG:3C07 A9 FF
sta $057D ; CPU:$BC09 PRG:3C09 8D 7D 05
jsr Sub_BE3A ; CPU:$BC0C PRG:3C0C 20 3A BE
jsr Sub_BD58 ; CPU:$BC0F PRG:3C0F 20 58 BD
jsr Sub_BE56 ; CPU:$BC12 PRG:3C12 20 56 BE
lda #$00 ; CPU:$BC15 PRG:3C15 A9 00
sta $057F ; CPU:$BC17 PRG:3C17 8D 7F 05
lda $0590 ; CPU:$BC1A PRG:3C1A AD 90 05
beq NmiHandler_Loop133 ; CPU:$BC1D PRG:3C1D F0 26
dec $0590 ; CPU:$BC1F PRG:3C1F CE 90 05
lda #$00 ; CPU:$BC22 PRG:3C22 A9 00
sta $0688 ; CPU:$BC24 PRG:3C24 8D 88 06
lda #$FF ; CPU:$BC27 PRG:3C27 A9 FF
sta $057D ; CPU:$BC29 PRG:3C29 8D 7D 05
jsr Sub_BE1E ; CPU:$BC2C PRG:3C2C 20 1E BE
jsr Sub_BD58 ; CPU:$BC2F PRG:3C2F 20 58 BD
jsr Sub_BE56 ; CPU:$BC32 PRG:3C32 20 56 BE
lda #$00 ; CPU:$BC35 PRG:3C35 A9 00
sta $057F ; CPU:$BC37 PRG:3C37 8D 7F 05
lda $0590 ; CPU:$BC3A PRG:3C3A AD 90 05
beq NmiHandler_Loop134 ; CPU:$BC3D PRG:3C3D F0 31
dec $0590 ; CPU:$BC3F PRG:3C3F CE 90 05
jmp Sub_BC02 ; CPU:$BC42 PRG:3C42 4C 02 BC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop133
; Global: Branch target inside Label: taken when BC45.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop133:
jsr Sub_BDE6 ; CPU:$BC45 PRG:3C45 20 E6 BD
lda #$00 ; CPU:$BC48 PRG:3C48 A9 00
sta $057F ; CPU:$BC4A PRG:3C4A 8D 7F 05
jsr Sub_BE1E ; CPU:$BC4D PRG:3C4D 20 1E BE
; -----------------------------------------------------------------------------
; Routine: Sub_BC50
; Global: Branch target inside Label: taken when BC50.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BC50:
lda #$00 ; CPU:$BC50 PRG:3C50 A9 00
sta $0688 ; CPU:$BC52 PRG:3C52 8D 88 06
lda #$FF ; CPU:$BC55 PRG:3C55 A9 FF
sta $057D ; CPU:$BC57 PRG:3C57 8D 7D 05
jsr Sub_BD58 ; CPU:$BC5A PRG:3C5A 20 58 BD
jsr Sub_BE56 ; CPU:$BC5D PRG:3C5D 20 56 BE
lda #$00 ; CPU:$BC60 PRG:3C60 A9 00
sta $057F ; CPU:$BC62 PRG:3C62 8D 7F 05
lda $0590 ; CPU:$BC65 PRG:3C65 AD 90 05
beq NmiHandler_Loop135 ; CPU:$BC68 PRG:3C68 F0 31
dec $0590 ; CPU:$BC6A PRG:3C6A CE 90 05
jmp Sub_BC50 ; CPU:$BC6D PRG:3C6D 4C 50 BC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop134
; Global: Branch target inside Label: taken when BC70.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop134:
jsr Sub_BDE6 ; CPU:$BC70 PRG:3C70 20 E6 BD
lda #$00 ; CPU:$BC73 PRG:3C73 A9 00
sta $057F ; CPU:$BC75 PRG:3C75 8D 7F 05
jsr Sub_BE3A ; CPU:$BC78 PRG:3C78 20 3A BE
; -----------------------------------------------------------------------------
; Routine: Sub_BC7B
; Global: Branch target inside Label: taken when BC7B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BC7B:
lda #$00 ; CPU:$BC7B PRG:3C7B A9 00
sta $0688 ; CPU:$BC7D PRG:3C7D 8D 88 06
lda #$FF ; CPU:$BC80 PRG:3C80 A9 FF
sta $057D ; CPU:$BC82 PRG:3C82 8D 7D 05
jsr Sub_BD58 ; CPU:$BC85 PRG:3C85 20 58 BD
jsr Sub_BE56 ; CPU:$BC88 PRG:3C88 20 56 BE
lda #$00 ; CPU:$BC8B PRG:3C8B A9 00
sta $057F ; CPU:$BC8D PRG:3C8D 8D 7F 05
lda $0590 ; CPU:$BC90 PRG:3C90 AD 90 05
beq NmiHandler_Loop135 ; CPU:$BC93 PRG:3C93 F0 06
dec $0590 ; CPU:$BC95 PRG:3C95 CE 90 05
jmp Sub_BC7B ; CPU:$BC98 PRG:3C98 4C 7B BC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop135
; Global: Branch target inside Label: taken when BC9B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop135:
jsr Sub_BDE6 ; CPU:$BC9B PRG:3C9B 20 E6 BD
lda #$00 ; CPU:$BC9E PRG:3C9E A9 00
sta $057F ; CPU:$BCA0 PRG:3CA0 8D 7F 05
lda #$02 ; CPU:$BCA3 PRG:3CA3 A9 02
jsr Sub_8224 ; CPU:$BCA5 PRG:3CA5 20 24 82
jsr Sub_8266 ; CPU:$BCA8 PRG:3CA8 20 66 82
; -----------------------------------------------------------------------------
; Routine: Sub_BCAB
; Global: Branch target inside Label: taken when BCAB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BCAB:
lda #$FF ; CPU:$BCAB PRG:3CAB A9 FF
ldy #$00 ; CPU:$BCAD PRG:3CAD A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero33
; Global: Branch target inside Label: taken when BCAF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero33:
sta $0200,y ; CPU:$BCAF PRG:3CAF 99 00 02
dey ; CPU:$BCB2 PRG:3CB2 88
bne NmiHandler_OnNonzero33 ; CPU:$BCB3 PRG:3CB3 D0 FA
rts ; CPU:$BCB5 PRG:3CB5 60
; -----------------------------------------------------------------------------
; Routine: Sub_BCB6
; Global: Branch target inside Label: taken when BCB6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BCB6:
jsr Sub_9C53 ; CPU:$BCB6 PRG:3CB6 20 53 9C
lda #$20 ; CPU:$BCB9 PRG:3CB9 A9 20
sta Zp72 ; CPU:$BCBB PRG:3CBB 85 72
lda #$00 ; CPU:$BCBD PRG:3CBD A9 00
sta Zp71 ; CPU:$BCBF PRG:3CBF 85 71
lda #$FF ; CPU:$BCC1 PRG:3CC1 A9 FF
sta Zp74 ; CPU:$BCC3 PRG:3CC3 85 74
lda #$DA ; CPU:$BCC5 PRG:3CC5 A9 DA
sta Zp73 ; CPU:$BCC7 PRG:3CC7 85 73
lda #$1E ; CPU:$BCC9 PRG:3CC9 A9 1E
sta Zp6F ; CPU:$BCCB PRG:3CCB 85 6F
jsr NmiHandler_OnNonzero34 ; CPU:$BCCD PRG:3CCD 20 E4 BC
lda #$28 ; CPU:$BCD0 PRG:3CD0 A9 28
sta Zp72 ; CPU:$BCD2 PRG:3CD2 85 72
lda #$00 ; CPU:$BCD4 PRG:3CD4 A9 00
sta Zp71 ; CPU:$BCD6 PRG:3CD6 85 71
lda #$FF ; CPU:$BCD8 PRG:3CD8 A9 FF
sta Zp74 ; CPU:$BCDA PRG:3CDA 85 74
lda #$DA ; CPU:$BCDC PRG:3CDC A9 DA
sta Zp73 ; CPU:$BCDE PRG:3CDE 85 73
lda #$1E ; CPU:$BCE0 PRG:3CE0 A9 1E
sta Zp6F ; CPU:$BCE2 PRG:3CE2 85 6F
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero34
; Global: Branch target inside Label: taken when BCE4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero34:
lda #$20 ; CPU:$BCE4 PRG:3CE4 A9 20
sta Zp70 ; CPU:$BCE6 PRG:3CE6 85 70
jsr Sub_973E ; CPU:$BCE8 PRG:3CE8 20 3E 97
clc ; CPU:$BCEB PRG:3CEB 18
lda Zp71 ; CPU:$BCEC PRG:3CEC A5 71
adc #$20 ; CPU:$BCEE PRG:3CEE 69 20
sta Zp71 ; CPU:$BCF0 PRG:3CF0 85 71
lda Zp72 ; CPU:$BCF2 PRG:3CF2 A5 72
adc #$00 ; CPU:$BCF4 PRG:3CF4 69 00
sta Zp72 ; CPU:$BCF6 PRG:3CF6 85 72
dec Zp6F ; CPU:$BCF8 PRG:3CF8 C6 6F
bne NmiHandler_OnNonzero34 ; CPU:$BCFA PRG:3CFA D0 E8
rts ; CPU:$BCFC PRG:3CFC 60
; -----------------------------------------------------------------------------
; Routine: Sub_BCFD
; Global: Branch target inside Label: taken when BCFD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BCFD:
lda #$03 ; CPU:$BCFD PRG:3CFD A9 03
sta Zp74 ; CPU:$BCFF PRG:3CFF 85 74
lda #$03 ; CPU:$BD01 PRG:3D01 A9 03
sta Zp73 ; CPU:$BD03 PRG:3D03 85 73
lda #$01 ; CPU:$BD05 PRG:3D05 A9 01
sta Zp70 ; CPU:$BD07 PRG:3D07 85 70
lda #$D5 ; CPU:$BD09 PRG:3D09 A9 D5
sta Zp6F ; CPU:$BD0B PRG:3D0B 85 6F
ldy #$00 ; CPU:$BD0D PRG:3D0D A0 00
lda Zp70 ; CPU:$BD0F PRG:3D0F A5 70
beq NmiHandler_Loop136 ; CPU:$BD11 PRG:3D11 F0 0D
lda #$00 ; CPU:$BD13 PRG:3D13 A9 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero35
; Global: Branch target inside Label: taken when BD15.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero35:
sta (Zp73),y ; CPU:$BD15 PRG:3D15 91 73
iny ; CPU:$BD17 PRG:3D17 C8
bne NmiHandler_OnNonzero35 ; CPU:$BD18 PRG:3D18 D0 FB
inc Zp74 ; CPU:$BD1A PRG:3D1A E6 74
dec Zp70 ; CPU:$BD1C PRG:3D1C C6 70
bne NmiHandler_OnNonzero35 ; CPU:$BD1E PRG:3D1E D0 F5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop136
; Global: Branch target inside Label: taken when BD20.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop136:
ldy Zp6F ; CPU:$BD20 PRG:3D20 A4 6F
beq NmiHandler_Loop137 ; CPU:$BD22 PRG:3D22 F0 07
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero36
; Global: Branch target inside Label: taken when BD24.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero36:
sta (Zp73),y ; CPU:$BD24 PRG:3D24 91 73
dey ; CPU:$BD26 PRG:3D26 88
cpy #$FF ; CPU:$BD27 PRG:3D27 C0 FF
bne NmiHandler_OnNonzero36 ; CPU:$BD29 PRG:3D29 D0 F9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop137
; Global: Branch target inside Label: taken when BD2B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop137:
ldy #$10 ; CPU:$BD2B PRG:3D2B A0 10
lda #$00 ; CPU:$BD2D PRG:3D2D A9 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative8
; Global: Branch target inside Label: taken when BD2F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative8:
sta a:ZpB7,y ; CPU:$BD2F PRG:3D2F 99 B7 00
dey ; CPU:$BD32 PRG:3D32 88
bpl NmiHandler_OnNonnegative8 ; CPU:$BD33 PRG:3D33 10 FA
rts ; CPU:$BD35 PRG:3D35 60
; -----------------------------------------------------------------------------
; Routine: Sub_BD36
; Global: Branch target inside Label: taken when BD36.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BD36:
lda $0580 ; CPU:$BD36 PRG:3D36 AD 80 05
bne NmiHandler_Loop138 ; CPU:$BD39 PRG:3D39 D0 0A
ldx #$E4 ; CPU:$BD3B PRG:3D3B A2 E4
lda #$00 ; CPU:$BD3D PRG:3D3D A9 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero37
; Global: Branch target inside Label: taken when BD3F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero37:
sta $0587,x ; CPU:$BD3F PRG:3D3F 9D 87 05
dex ; CPU:$BD42 PRG:3D42 CA
bne NmiHandler_OnNonzero37 ; CPU:$BD43 PRG:3D43 D0 FA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop138
; Global: Branch target inside Label: taken when BD45.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop138:
rts ; CPU:$BD45 PRG:3D45 60
; -----------------------------------------------------------------------------
; Routine: Sub_BD46
; Global: Branch target inside Label: taken when BD46.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BD46:
lda #$08 ; CPU:$BD46 PRG:3D46 A9 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero38
; Global: Branch target inside Label: taken when BD48.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero38:
jsr Sub_826F ; CPU:$BD48 PRG:3D48 20 6F 82
clc ; CPU:$BD4B PRG:3D4B 18
adc #$02 ; CPU:$BD4C PRG:3D4C 69 02
cmp #$36 ; CPU:$BD4E PRG:3D4E C9 36
bne NmiHandler_OnNonzero38 ; CPU:$BD50 PRG:3D50 D0 F6
lda #$34 ; CPU:$BD52 PRG:3D52 A9 34
jsr Sub_8224 ; CPU:$BD54 PRG:3D54 20 24 82
rts ; CPU:$BD57 PRG:3D57 60
; -----------------------------------------------------------------------------
; Routine: Sub_BD58
; Global: Branch target inside Label: taken when BD58.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BD58:
lda #$34 ; CPU:$BD58 PRG:3D58 A9 34
jsr Sub_826F ; CPU:$BD5A PRG:3D5A 20 6F 82
jsr Sub_BDCA ; CPU:$BD5D PRG:3D5D 20 CA BD
lda #$BD ; CPU:$BD60 PRG:3D60 A9 BD
sta Zp74 ; CPU:$BD62 PRG:3D62 85 74
lda #$B5 ; CPU:$BD64 PRG:3D64 A9 B5
sta Zp73 ; CPU:$BD66 PRG:3D66 85 73
lda #$22 ; CPU:$BD68 PRG:3D68 A9 22
sta Zp72 ; CPU:$BD6A PRG:3D6A 85 72
lda #$0E ; CPU:$BD6C PRG:3D6C A9 0E
sta Zp71 ; CPU:$BD6E PRG:3D6E 85 71
lda #$05 ; CPU:$BD70 PRG:3D70 A9 05
sta Zp70 ; CPU:$BD72 PRG:3D72 85 70
jsr Sub_973E ; CPU:$BD74 PRG:3D74 20 3E 97
; -----------------------------------------------------------------------------
; Routine: Sub_BD77
; Global: Branch target inside Label: taken when BD77.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BD77:
lda $0587 ; CPU:$BD77 PRG:3D77 AD 87 05
cmp #$00 ; CPU:$BD7A PRG:3D7A C9 00
beq NmiHandler_Loop139 ; CPU:$BD7C PRG:3D7C F0 0A
lda #$C2 ; CPU:$BD7E PRG:3D7E A9 C2
sta Zp73 ; CPU:$BD80 PRG:3D80 85 73
lda #$BD ; CPU:$BD82 PRG:3D82 A9 BD
sta Zp74 ; CPU:$BD84 PRG:3D84 85 74
bne NmiHandler_Loop140 ; CPU:$BD86 PRG:3D86 D0 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop139
; Global: Branch target inside Label: taken when BD88.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop139:
lda #$BD ; CPU:$BD88 PRG:3D88 A9 BD
sta Zp74 ; CPU:$BD8A PRG:3D8A 85 74
lda #$BA ; CPU:$BD8C PRG:3D8C A9 BA
sta Zp73 ; CPU:$BD8E PRG:3D8E 85 73
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop140
; Global: Branch target inside Label: taken when BD90.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop140:
lda #$21 ; CPU:$BD90 PRG:3D90 A9 21
sta Zp72 ; CPU:$BD92 PRG:3D92 85 72
lda #$CC ; CPU:$BD94 PRG:3D94 A9 CC
sta Zp71 ; CPU:$BD96 PRG:3D96 85 71
lda #$08 ; CPU:$BD98 PRG:3D98 A9 08
sta Zp70 ; CPU:$BD9A PRG:3D9A 85 70
jsr Sub_973E ; CPU:$BD9C PRG:3D9C 20 3E 97
lda #$00 ; CPU:$BD9F PRG:3D9F A9 00
sta Zp70 ; CPU:$BDA1 PRG:3DA1 85 70
lda #$78 ; CPU:$BDA3 PRG:3DA3 A9 78
sta Zp6F ; CPU:$BDA5 PRG:3DA5 85 6F
jsr Sub_8280 ; CPU:$BDA7 PRG:3DA7 20 80 82
lda #$FF ; CPU:$BDAA PRG:3DAA A9 FF
sta $057F ; CPU:$BDAC PRG:3DAC 8D 7F 05
lda #$34 ; CPU:$BDAF PRG:3DAF A9 34
jsr Sub_8224 ; CPU:$BDB1 PRG:3DB1 20 24 82
rts ; CPU:$BDB4 PRG:3DB4 60
; ---- data $BDB5-$BDC9 (21 bytes) ----
.byte $A4, $9E, $9A, $9D, $AB, $A2, $8E, $9A, $AB, $9E, $A4, $FF, $91, $A2, $8E, $9A ; CPU:$BDB5 PRG:3DB5 A4 9E 9A 9D AB A2 8E 9A AB 9E A4 FF 91 A2 8E 9A
.byte $AB, $9E, $A4, $FF, $92 ; CPU:$BDC5 PRG:3DC5 AB 9E A4 FF 92
; -----------------------------------------------------------------------------
; Routine: Sub_BDCA
; Global: Branch target inside Label: taken when BDCA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BDCA:
jsr Sub_BCAB ; CPU:$BDCA PRG:3DCA 20 AB BC
jsr Sub_BCB6 ; CPU:$BDCD PRG:3DCD 20 B6 BC
lda #$00 ; CPU:$BDD0 PRG:3DD0 A9 00
sta Zp8E ; CPU:$BDD2 PRG:3DD2 85 8E
sta Zp8F ; CPU:$BDD4 PRG:3DD4 85 8F
sta $0685 ; CPU:$BDD6 PRG:3DD6 8D 85 06
sta $0684 ; CPU:$BDD9 PRG:3DD9 8D 84 06
jsr Sub_A30F ; CPU:$BDDC PRG:3DDC 20 0F A3
lda Zp88 ; CPU:$BDDF PRG:3DDF A5 88
and #$FD ; CPU:$BDE1 PRG:3DE1 29 FD
sta Zp88 ; CPU:$BDE3 PRG:3DE3 85 88
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero39
; Global: Branch target inside Label: taken when BDE5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero39:
rts ; CPU:$BDE5 PRG:3DE5 60
; -----------------------------------------------------------------------------
; Routine: Sub_BDE6
; Global: Branch target inside Label: taken when BDE6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BDE6:
jsr Sub_F64E ; CPU:$BDE6 PRG:3DE6 20 4E F6
jsr Sub_BDCA ; CPU:$BDE9 PRG:3DE9 20 CA BD
lda $0580 ; CPU:$BDEC PRG:3DEC AD 80 05
bne NmiHandler_OnNonzero39 ; CPU:$BDEF PRG:3DEF D0 F4
lda #$13 ; CPU:$BDF1 PRG:3DF1 A9 13
jsr Sub_F6DB ; CPU:$BDF3 PRG:3DF3 20 DB F6
lda #$00 ; CPU:$BDF6 PRG:3DF6 A9 00
sta $058F ; CPU:$BDF8 PRG:3DF8 8D 8F 05
lda #$BE ; CPU:$BDFB PRG:3DFB A9 BE
sta Zp74 ; CPU:$BDFD PRG:3DFD 85 74
lda #$15 ; CPU:$BDFF PRG:3DFF A9 15
sta Zp73 ; CPU:$BE01 PRG:3E01 85 73
lda #$22 ; CPU:$BE03 PRG:3E03 A9 22
sta Zp72 ; CPU:$BE05 PRG:3E05 85 72
lda #$0C ; CPU:$BE07 PRG:3E07 A9 0C
sta Zp71 ; CPU:$BE09 PRG:3E09 85 71
lda #$09 ; CPU:$BE0B PRG:3E0B A9 09
sta Zp70 ; CPU:$BE0D PRG:3E0D 85 70
jsr Sub_973E ; CPU:$BE0F PRG:3E0F 20 3E 97
jmp Sub_BD77 ; CPU:$BE12 PRG:3E12 4C 77 BD
; ---- data $BE15-$BE1D (9 bytes) ----
.byte $89, $9A, $8F, $9E, $FF, $90, $A8, $9E, $A4 ; CPU:$BE15 PRG:3E15 89 9A 8F 9E FF 90 A8 9E A4
; -----------------------------------------------------------------------------
; Routine: Sub_BE1E
; Global: Branch target inside Label: taken when BE1E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BE1E:
ldx #$4C ; CPU:$BE1E PRG:3E1E A2 4C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero40
; Global: Branch target inside Label: taken when BE20.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero40:
lda $0587,x ; CPU:$BE20 PRG:3E20 BD 87 05
sta $05D3,x ; CPU:$BE23 PRG:3E23 9D D3 05
dex ; CPU:$BE26 PRG:3E26 CA
bne NmiHandler_OnNonzero40 ; CPU:$BE27 PRG:3E27 D0 F7
ldx #$4C ; CPU:$BE29 PRG:3E29 A2 4C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero41
; Global: Branch target inside Label: taken when BE2B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero41:
lda $061F,x ; CPU:$BE2B PRG:3E2B BD 1F 06
sta $0587,x ; CPU:$BE2E PRG:3E2E 9D 87 05
dex ; CPU:$BE31 PRG:3E31 CA
bne NmiHandler_OnNonzero41 ; CPU:$BE32 PRG:3E32 D0 F7
lda #$01 ; CPU:$BE34 PRG:3E34 A9 01
sta $0587 ; CPU:$BE36 PRG:3E36 8D 87 05
rts ; CPU:$BE39 PRG:3E39 60
; -----------------------------------------------------------------------------
; Routine: Sub_BE3A
; Global: Branch target inside Label: taken when BE3A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BE3A:
ldx #$4C ; CPU:$BE3A PRG:3E3A A2 4C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero42
; Global: Branch target inside Label: taken when BE3C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero42:
lda $0587,x ; CPU:$BE3C PRG:3E3C BD 87 05
sta $061F,x ; CPU:$BE3F PRG:3E3F 9D 1F 06
dex ; CPU:$BE42 PRG:3E42 CA
bne NmiHandler_OnNonzero42 ; CPU:$BE43 PRG:3E43 D0 F7
ldx #$4C ; CPU:$BE45 PRG:3E45 A2 4C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero43
; Global: Branch target inside Label: taken when BE47.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero43:
lda $05D3,x ; CPU:$BE47 PRG:3E47 BD D3 05
sta $0587,x ; CPU:$BE4A PRG:3E4A 9D 87 05
dex ; CPU:$BE4D PRG:3E4D CA
bne NmiHandler_OnNonzero43 ; CPU:$BE4E PRG:3E4E D0 F7
lda #$00 ; CPU:$BE50 PRG:3E50 A9 00
sta $0587 ; CPU:$BE52 PRG:3E52 8D 87 05
rts ; CPU:$BE55 PRG:3E55 60
; -----------------------------------------------------------------------------
; Routine: Sub_BE56
; Global: Branch target inside Label: taken when BE56.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BE56:
lda #$00 ; CPU:$BE56 PRG:3E56 A9 00
sta $0683 ; CPU:$BE58 PRG:3E58 8D 83 06
jsr Sub_F64E ; CPU:$BE5B PRG:3E5B 20 4E F6
jsr Sub_F744 ; CPU:$BE5E PRG:3E5E 20 44 F7
jsr Sub_BCFD ; CPU:$BE61 PRG:3E61 20 FD BC
jsr Sub_C293 ; CPU:$BE64 PRG:3E64 20 93 C2
lda #$18 ; CPU:$BE67 PRG:3E67 A9 18
sta $0680 ; CPU:$BE69 PRG:3E69 8D 80 06
jsr Sub_C474 ; CPU:$BE6C PRG:3E6C 20 74 C4
lda $058E ; CPU:$BE6F PRG:3E6F AD 8E 05
asl a ; CPU:$BE72 PRG:3E72 0A
asl a ; CPU:$BE73 PRG:3E73 0A
asl a ; CPU:$BE74 PRG:3E74 0A
asl a ; CPU:$BE75 PRG:3E75 0A
sta ZpF7 ; CPU:$BE76 PRG:3E76 85 F7
jsr Sub_A8EC ; CPU:$BE78 PRG:3E78 20 EC A8
jsr Sub_C321 ; CPU:$BE7B PRG:3E7B 20 21 C3
lda $057D ; CPU:$BE7E PRG:3E7E AD 7D 05
beq NmiHandler_Loop145 ; CPU:$BE81 PRG:3E81 F0 6F
ldx $05D1 ; CPU:$BE83 PRG:3E83 AE D1 05
lda $03FB,x ; CPU:$BE86 PRG:3E86 BD FB 03
ora #$04 ; CPU:$BE89 PRG:3E89 09 04
sta $03FB,x ; CPU:$BE8B PRG:3E8B 9D FB 03
stx $04C9 ; CPU:$BE8E PRG:3E8E 8E C9 04
lda #$0B ; CPU:$BE91 PRG:3E91 A9 0B
sta $04BE,x ; CPU:$BE93 PRG:3E93 9D BE 04
ldx $05D2 ; CPU:$BE96 PRG:3E96 AE D2 05
lda $03FB,x ; CPU:$BE99 PRG:3E99 BD FB 03
ora #$04 ; CPU:$BE9C PRG:3E9C 09 04
sta $03FB,x ; CPU:$BE9E PRG:3E9E 9D FB 03
stx $04CA ; CPU:$BEA1 PRG:3EA1 8E CA 04
lda #$0C ; CPU:$BEA4 PRG:3EA4 A9 0C
sta $04BE,x ; CPU:$BEA6 PRG:3EA6 9D BE 04
lda #$88 ; CPU:$BEA9 PRG:3EA9 A9 88
sta $030A ; CPU:$BEAB PRG:3EAB 8D 0A 03
lda $058F ; CPU:$BEAE PRG:3EAE AD 8F 05
cmp #$00 ; CPU:$BEB1 PRG:3EB1 C9 00
bne NmiHandler_Loop141 ; CPU:$BEB3 PRG:3EB3 D0 02
lda #$01 ; CPU:$BEB5 PRG:3EB5 A9 01
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop141
; Global: Branch target inside Label: taken when BEB7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop141:
sta ZpEC ; CPU:$BEB7 PRG:3EB7 85 EC
ldy #$09 ; CPU:$BEB9 PRG:3EB9 A0 09
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative9
; Global: Branch target inside Label: taken when BEBB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative9:
ldx $0592,y ; CPU:$BEBB PRG:3EBB BE 92 05
bpl NmiHandler_Loop142 ; CPU:$BEBE PRG:3EBE 10 05
cmp $059C,y ; CPU:$BEC0 PRG:3EC0 D9 9C 05
beq NmiHandler_Loop143 ; CPU:$BEC3 PRG:3EC3 F0 0F
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop142
; Global: Branch target inside Label: taken when BEC5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop142:
dey ; CPU:$BEC5 PRG:3EC5 88
bpl NmiHandler_OnNonnegative9 ; CPU:$BEC6 PRG:3EC6 10 F3
lda #$6C ; CPU:$BEC8 PRG:3EC8 A9 6C
sta ZpCF ; CPU:$BECA PRG:3ECA 85 CF
ldx #$07 ; CPU:$BECC PRG:3ECC A2 07
jsr Sub_9B11 ; CPU:$BECE PRG:3ECE 20 11 9B
jmp Sub_BF91 ; CPU:$BED1 PRG:3ED1 4C 91 BF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop143
; Global: Branch target inside Label: taken when BED4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop143:
ldx #$07 ; CPU:$BED4 PRG:3ED4 A2 07
lda $05A6,y ; CPU:$BED6 PRG:3ED6 B9 A6 05
tay ; CPU:$BED9 PRG:3ED9 A8
bmi NmiHandler_Loop144 ; CPU:$BEDA PRG:3EDA 30 0B
clc ; CPU:$BEDC PRG:3EDC 18
adc #$08 ; CPU:$BEDD PRG:3EDD 69 08
sta ZpCF ; CPU:$BEDF PRG:3EDF 85 CF
jsr Sub_9B11 ; CPU:$BEE1 PRG:3EE1 20 11 9B
jmp Sub_BF91 ; CPU:$BEE4 PRG:3EE4 4C 91 BF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop144
; Global: Branch target inside Label: taken when BEE7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop144:
sec ; CPU:$BEE7 PRG:3EE7 38
sbc #$08 ; CPU:$BEE8 PRG:3EE8 E9 08
sta ZpCF ; CPU:$BEEA PRG:3EEA 85 CF
jsr Sub_9B18 ; CPU:$BEEC PRG:3EEC 20 18 9B
jmp Sub_BF91 ; CPU:$BEEF PRG:3EEF 4C 91 BF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop145
; Global: Branch target inside Label: taken when BEF2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop145:
lda #$00 ; CPU:$BEF2 PRG:3EF2 A9 00
sta $066C ; CPU:$BEF4 PRG:3EF4 8D 6C 06
lda #$2C ; CPU:$BEF7 PRG:3EF7 A9 2C
jsr Sub_8224 ; CPU:$BEF9 PRG:3EF9 20 24 82
ldx #$0C ; CPU:$BEFC PRG:3EFC A2 0C
lda #$80 ; CPU:$BEFE PRG:3EFE A9 80
sta ZpC3 ; CPU:$BF00 PRG:3F00 85 C3
lda #$00 ; CPU:$BF02 PRG:3F02 A9 00
sta ZpD4 ; CPU:$BF04 PRG:3F04 85 D4
lda #$28 ; CPU:$BF06 PRG:3F06 A9 28
sta $030F ; CPU:$BF08 PRG:3F08 8D 0F 03
lda #$69 ; CPU:$BF0B PRG:3F0B A9 69
sta Zp73 ; CPU:$BF0D PRG:3F0D 85 73
lda #$C5 ; CPU:$BF0F PRG:3F0F A9 C5
sta Zp74 ; CPU:$BF11 PRG:3F11 85 74
jsr Sub_8334 ; CPU:$BF13 PRG:3F13 20 34 83
jsr Sub_9C69 ; CPU:$BF16 PRG:3F16 20 69 9C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear12
; Global: Branch target inside Label: taken when BF19.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear12:
jsr Sub_C14E ; CPU:$BF19 PRG:3F19 20 4E C1
inc ZpD4 ; CPU:$BF1C PRG:3F1C E6 D4
inc ZpD4 ; CPU:$BF1E PRG:3F1E E6 D4
inc $030F ; CPU:$BF20 PRG:3F20 EE 0F 03
jsr NmiHandler_Loop17 ; CPU:$BF23 PRG:3F23 20 62 83
bcc NmiHandler_OnCarryClear12 ; CPU:$BF26 PRG:3F26 90 F1
lda #$0B ; CPU:$BF28 PRG:3F28 A9 0B
jsr Sub_F6DB ; CPU:$BF2A PRG:3F2A 20 DB F6
lda #$0C ; CPU:$BF2D PRG:3F2D A9 0C
jsr Sub_F6DB ; CPU:$BF2F PRG:3F2F 20 DB F6
lda #$81 ; CPU:$BF32 PRG:3F32 A9 81
sta Zp73 ; CPU:$BF34 PRG:3F34 85 73
lda #$C5 ; CPU:$BF36 PRG:3F36 A9 C5
sta Zp74 ; CPU:$BF38 PRG:3F38 85 74
jsr Sub_8334 ; CPU:$BF3A PRG:3F3A 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear13
; Global: Branch target inside Label: taken when BF3D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear13:
jsr Sub_C14E ; CPU:$BF3D PRG:3F3D 20 4E C1
jsr NmiHandler_Loop17 ; CPU:$BF40 PRG:3F40 20 62 83
bcc NmiHandler_OnCarryClear13 ; CPU:$BF43 PRG:3F43 90 F8
lda #$0A ; CPU:$BF45 PRG:3F45 A9 0A
jsr Sub_F6DB ; CPU:$BF47 PRG:3F47 20 DB F6
lda #$00 ; CPU:$BF4A PRG:3F4A A9 00
sta $0302 ; CPU:$BF4C PRG:3F4C 8D 02 03
lda #$1A ; CPU:$BF4F PRG:3F4F A9 1A
jsr Sub_8224 ; CPU:$BF51 PRG:3F51 20 24 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero4
; Global: Branch target inside Label: taken when BF54.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero4:
jsr Sub_C14E ; CPU:$BF54 PRG:3F54 20 4E C1
jsr Sub_82A3 ; CPU:$BF57 PRG:3F57 20 A3 82
lda $0302 ; CPU:$BF5A PRG:3F5A AD 02 03
beq NmiHandler_OnZero4 ; CPU:$BF5D PRG:3F5D F0 F5
lda #$91 ; CPU:$BF5F PRG:3F5F A9 91
sta Zp73 ; CPU:$BF61 PRG:3F61 85 73
lda #$C5 ; CPU:$BF63 PRG:3F63 A9 C5
sta Zp74 ; CPU:$BF65 PRG:3F65 85 74
jsr Sub_8334 ; CPU:$BF67 PRG:3F67 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear14
; Global: Branch target inside Label: taken when BF6A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear14:
jsr Sub_C14E ; CPU:$BF6A PRG:3F6A 20 4E C1
jsr NmiHandler_Loop17 ; CPU:$BF6D PRG:3F6D 20 62 83
bcc NmiHandler_OnCarryClear14 ; CPU:$BF70 PRG:3F70 90 F8
lda #$00 ; CPU:$BF72 PRG:3F72 A9 00
sta ZpC3 ; CPU:$BF74 PRG:3F74 85 C3
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero44
; Global: Branch target inside Label: taken when BF76.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero44:
jsr Sub_C14E ; CPU:$BF76 PRG:3F76 20 4E C1
jsr Sub_82A3 ; CPU:$BF79 PRG:3F79 20 A3 82
lda $0302 ; CPU:$BF7C PRG:3F7C AD 02 03
bne NmiHandler_OnNonzero44 ; CPU:$BF7F PRG:3F7F D0 F5
lda #$FF ; CPU:$BF81 PRG:3F81 A9 FF
sta $066C ; CPU:$BF83 PRG:3F83 8D 6C 06
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero45
; Global: Branch target inside Label: taken when BF86.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero45:
jsr Sub_C14E ; CPU:$BF86 PRG:3F86 20 4E C1
jsr Sub_82A3 ; CPU:$BF89 PRG:3F89 20 A3 82
lda $066C ; CPU:$BF8C PRG:3F8C AD 6C 06
bne NmiHandler_OnNonzero45 ; CPU:$BF8F PRG:3F8F D0 F5
; -----------------------------------------------------------------------------
; Routine: Sub_BF91
; Global: Branch target inside Label: taken when BF91.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BF91:
lda #$18 ; CPU:$BF91 PRG:3F91 A9 18
jsr Sub_F6DB ; CPU:$BF93 PRG:3F93 20 DB F6
lda #$27 ; CPU:$BF96 PRG:3F96 A9 27
jsr Sub_F6DB ; CPU:$BF98 PRG:3F98 20 DB F6
lda #$18 ; CPU:$BF9B PRG:3F9B A9 18
sta $0680 ; CPU:$BF9D PRG:3F9D 8D 80 06
lda #$00 ; CPU:$BFA0 PRG:3FA0 A9 00
sta $0687 ; CPU:$BFA2 PRG:3FA2 8D 87 06
lda #$06 ; CPU:$BFA5 PRG:3FA5 A9 06
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero46
; Global: Branch target inside Label: taken when BFA7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero46:
jsr Sub_8224 ; CPU:$BFA7 PRG:3FA7 20 24 82
clc ; CPU:$BFAA PRG:3FAA 18
adc #$02 ; CPU:$BFAB PRG:3FAB 69 02
cmp #$18 ; CPU:$BFAD PRG:3FAD C9 18
bne NmiHandler_OnNonzero46 ; CPU:$BFAF PRG:3FAF D0 F6
ldx $0591 ; CPU:$BFB1 PRG:3FB1 AE 91 05
lda $03FB,x ; CPU:$BFB4 PRG:3FB4 BD FB 03
ora #$08 ; CPU:$BFB7 PRG:3FB7 09 08
sta $03FB,x ; CPU:$BFB9 PRG:3FB9 9D FB 03
lda #$00 ; CPU:$BFBC PRG:3FBC A9 00
sta $0690 ; CPU:$BFBE PRG:3FBE 8D 90 06
sta $0691 ; CPU:$BFC1 PRG:3FC1 8D 91 06
sta ZpFD ; CPU:$BFC4 PRG:3FC4 85 FD
sta Zp96 ; CPU:$BFC6 PRG:3FC6 85 96
sta $0300 ; CPU:$BFC8 PRG:3FC8 8D 00 03
sta $0686 ; CPU:$BFCB PRG:3FCB 8D 86 06
lda #$FF ; CPU:$BFCE PRG:3FCE A9 FF
sta ZpFE ; CPU:$BFD0 PRG:3FD0 85 FE
; -----------------------------------------------------------------------------
; Routine: Sub_BFD2
; Global: Branch target inside Label: taken when BFD2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BFD2:
lda $0580 ; CPU:$BFD2 PRG:3FD2 AD 80 05
beq NmiHandler_Loop147 ; CPU:$BFD5 PRG:3FD5 F0 19
lda ZpFD ; CPU:$BFD7 PRG:3FD7 A5 FD
bne NmiHandler_Loop146 ; CPU:$BFD9 PRG:3FD9 D0 0B
ldy ZpFE ; CPU:$BFDB PRG:3FDB A4 FE
iny ; CPU:$BFDD PRG:3FDD C8
lda $FF6A,y ; CPU:$BFDE PRG:3FDE B9 6A FF
sta ZpFD ; CPU:$BFE1 PRG:3FE1 85 FD
iny ; CPU:$BFE3 PRG:3FE3 C8
sty ZpFE ; CPU:$BFE4 PRG:3FE4 84 FE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop146
; Global: Branch target inside Label: taken when BFE6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop146:
dec ZpFD ; CPU:$BFE6 PRG:3FE6 C6 FD
ldy ZpFE ; CPU:$BFE8 PRG:3FE8 A4 FE
lda $FF6A,y ; CPU:$BFEA PRG:3FEA B9 6A FF
jmp Sub_BFFC ; CPU:$BFED PRG:3FED 4C FC BF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop147
; Global: Branch target inside Label: taken when BFF0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop147:
lda $0587 ; CPU:$BFF0 PRG:3FF0 AD 87 05
bne NmiHandler_Loop148 ; CPU:$BFF3 PRG:3FF3 D0 05
lda Zp96 ; CPU:$BFF5 PRG:3FF5 A5 96
jmp Sub_BFFC ; CPU:$BFF7 PRG:3FF7 4C FC BF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop148
; Global: Branch target inside Label: taken when BFFA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop148:
lda Zp98 ; CPU:$BFFA PRG:3FFA A5 98
; -----------------------------------------------------------------------------
; Routine: Sub_BFFC
; Global: Branch target inside Label: taken when BFFC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_BFFC:
sta $0300 ; CPU:$BFFC PRG:3FFC 8D 00 03
lda $0686 ; CPU:$BFFF PRG:3FFF AD 86 06
beq NmiHandler_Loop149 ; CPU:$C002 PRG:4002 F0 03
jsr Sub_C125 ; CPU:$C004 PRG:4004 20 25 C1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop149
; Global: Branch target inside Label: taken when C007.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop149:
lda $0690 ; CPU:$C007 PRG:4007 AD 90 06
bne NmiHandler_Loop154 ; CPU:$C00A PRG:400A D0 6F
lda #$00 ; CPU:$C00C PRG:400C A9 00
sta ZpBD ; CPU:$C00E PRG:400E 85 BD
lda $058F ; CPU:$C010 PRG:4010 AD 8F 05
cmp #$1D ; CPU:$C013 PRG:4013 C9 1D
bcc NmiHandler_Loop150 ; CPU:$C015 PRG:4015 90 1E
lda $0692 ; CPU:$C017 PRG:4017 AD 92 06
bne NmiHandler_Loop150 ; CPU:$C01A PRG:401A D0 19
lda #$80 ; CPU:$C01C PRG:401C A9 80
sta ZpBD ; CPU:$C01E PRG:401E 85 BD
lda #$1F ; CPU:$C020 PRG:4020 A9 1F
sta ZpEB ; CPU:$C022 PRG:4022 85 EB
lda #$89 ; CPU:$C024 PRG:4024 A9 89
sta $031A ; CPU:$C026 PRG:4026 8D 1A 03
lda #$10 ; CPU:$C029 PRG:4029 A9 10
sta ZpCE ; CPU:$C02B PRG:402B 85 CE
ldx #$06 ; CPU:$C02D PRG:402D A2 06
jsr Sub_99E7 ; CPU:$C02F PRG:402F 20 E7 99
jsr Sub_9B03 ; CPU:$C032 PRG:4032 20 03 9B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop150
; Global: Branch target inside Label: taken when C035.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop150:
lda $0681 ; CPU:$C035 PRG:4035 AD 81 06
beq NmiHandler_Loop151 ; CPU:$C038 PRG:4038 F0 0D
dec $0682 ; CPU:$C03A PRG:403A CE 82 06
bne NmiHandler_Loop151 ; CPU:$C03D PRG:403D D0 08
lda #$00 ; CPU:$C03F PRG:403F A9 00
sta $0681 ; CPU:$C041 PRG:4041 8D 81 06
jsr Sub_C474 ; CPU:$C044 PRG:4044 20 74 C4
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop151
; Global: Branch target inside Label: taken when C047.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop151:
lda $0691 ; CPU:$C047 PRG:4047 AD 91 06
bne NmiHandler_Loop155 ; CPU:$C04A PRG:404A D0 72
lda ZpBE ; CPU:$C04C PRG:404C A5 BE
and #$41 ; CPU:$C04E PRG:404E 29 41
bne NmiHandler_Loop152 ; CPU:$C050 PRG:4050 D0 05
lda ZpEC ; CPU:$C052 PRG:4052 A5 EC
sta $058F ; CPU:$C054 PRG:4054 8D 8F 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop152
; Global: Branch target inside Label: taken when C057.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop152:
jsr Sub_C14E ; CPU:$C057 PRG:4057 20 4E C1
jsr Sub_82A3 ; CPU:$C05A PRG:405A 20 A3 82
lda $0687 ; CPU:$C05D PRG:405D AD 87 06
cmp #$FF ; CPU:$C060 PRG:4060 C9 FF
beq NmiHandler_Loop153 ; CPU:$C062 PRG:4062 F0 03
jmp Sub_BFD2 ; CPU:$C064 PRG:4064 4C D2 BF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop153
; Global: Branch target inside Label: taken when C067.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop153:
lda #$00 ; CPU:$C067 PRG:4067 A9 00
sta $055D ; CPU:$C069 PRG:4069 8D 5D 05
jsr Sub_C10A ; CPU:$C06C PRG:406C 20 0A C1
jsr Sub_BD46 ; CPU:$C06F PRG:406F 20 46 BD
jsr Sub_F64E ; CPU:$C072 PRG:4072 20 4E F6
jsr Sub_F744 ; CPU:$C075 PRG:4075 20 44 F7
jmp Sub_BCFD ; CPU:$C078 PRG:4078 4C FD BC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop154
; Global: Branch target inside Label: taken when C07B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop154:
jsr Sub_F64E ; CPU:$C07B PRG:407B 20 4E F6
jsr Sub_C118 ; CPU:$C07E PRG:407E 20 18 C1
jsr NmiHandler_Loop137 ; CPU:$C081 PRG:4081 20 2B BD
lda #$14 ; CPU:$C084 PRG:4084 A9 14
jsr Sub_F6DB ; CPU:$C086 PRG:4086 20 DB F6
lda #$15 ; CPU:$C089 PRG:4089 A9 15
jsr Sub_F6DB ; CPU:$C08B PRG:408B 20 DB F6
lda #$16 ; CPU:$C08E PRG:408E A9 16
jsr Sub_F6DB ; CPU:$C090 PRG:4090 20 DB F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear15
; Global: Branch target inside Label: taken when C093.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear15:
lda #$FE ; CPU:$C093 PRG:4093 A9 FE
sta $055D ; CPU:$C095 PRG:4095 8D 5D 05
jsr Sub_82A3 ; CPU:$C098 PRG:4098 20 A3 82
lda ZpF8 ; CPU:$C09B PRG:409B A5 F8
cmp $058F ; CPU:$C09D PRG:409D CD 8F 05
bcc NmiHandler_OnCarryClear15 ; CPU:$C0A0 PRG:40A0 90 F1
jsr Sub_F64E ; CPU:$C0A2 PRG:40A2 20 4E F6
lda #$00 ; CPU:$C0A5 PRG:40A5 A9 00
sta $0688 ; CPU:$C0A7 PRG:40A7 8D 88 06
sta $055D ; CPU:$C0AA PRG:40AA 8D 5D 05
sta $0692 ; CPU:$C0AD PRG:40AD 8D 92 06
lda #$FF ; CPU:$C0B0 PRG:40B0 A9 FF
sta $057D ; CPU:$C0B2 PRG:40B2 8D 7D 05
jsr Sub_C10A ; CPU:$C0B5 PRG:40B5 20 0A C1
jsr Sub_BD46 ; CPU:$C0B8 PRG:40B8 20 46 BD
jmp Sub_BE56 ; CPU:$C0BB PRG:40BB 4C 56 BE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop155
; Global: Branch target inside Label: taken when C0BE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop155:
jsr Sub_BD46 ; CPU:$C0BE PRG:40BE 20 46 BD
inc $058E ; CPU:$C0C1 PRG:40C1 EE 8E 05
lda #$FF ; CPU:$C0C4 PRG:40C4 A9 FF
sta $0688 ; CPU:$C0C6 PRG:40C6 8D 88 06
sta $057D ; CPU:$C0C9 PRG:40C9 8D 7D 05
lda #$00 ; CPU:$C0CC PRG:40CC A9 00
sta $0692 ; CPU:$C0CE PRG:40CE 8D 92 06
sta $0691 ; CPU:$C0D1 PRG:40D1 8D 91 06
lda #$01 ; CPU:$C0D4 PRG:40D4 A9 01
sta ZpEC ; CPU:$C0D6 PRG:40D6 85 EC
sta $058F ; CPU:$C0D8 PRG:40D8 8D 8F 05
ldy #$16 ; CPU:$C0DB PRG:40DB A0 16
lda #$00 ; CPU:$C0DD PRG:40DD A9 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative10
; Global: Branch target inside Label: taken when C0DF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative10:
sta $05BA,y ; CPU:$C0DF PRG:40DF 99 BA 05
dey ; CPU:$C0E2 PRG:40E2 88
bpl NmiHandler_OnNonnegative10 ; CPU:$C0E3 PRG:40E3 10 FA
lda $0399 ; CPU:$C0E5 PRG:40E5 AD 99 03
sec ; CPU:$C0E8 PRG:40E8 38
sbc #$8D ; CPU:$C0E9 PRG:40E9 E9 8D
sta Zp71 ; CPU:$C0EB PRG:40EB 85 71
lda $0398 ; CPU:$C0ED PRG:40ED AD 98 03
sec ; CPU:$C0F0 PRG:40F0 38
sbc #$8D ; CPU:$C0F1 PRG:40F1 E9 8D
cmp #$0F ; CPU:$C0F3 PRG:40F3 C9 0F
bne NmiHandler_Loop156 ; CPU:$C0F5 PRG:40F5 D0 02
lda #$00 ; CPU:$C0F7 PRG:40F7 A9 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop156
; Global: Branch target inside Label: taken when C0F9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop156:
sta Zp72 ; CPU:$C0F9 PRG:40F9 85 72
lda #$00 ; CPU:$C0FB PRG:40FB A9 00
sta Zp73 ; CPU:$C0FD PRG:40FD 85 73
sta Zp74 ; CPU:$C0FF PRG:40FF 85 74
jsr Sub_C1DB ; CPU:$C101 PRG:4101 20 DB C1
jsr Sub_F744 ; CPU:$C104 PRG:4104 20 44 F7
jmp Sub_BE56 ; CPU:$C107 PRG:4107 4C 56 BE
; -----------------------------------------------------------------------------
; Routine: Sub_C10A
; Global: Branch target inside Label: taken when C10A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C10A:
ldy #$09 ; CPU:$C10A PRG:410A A0 09
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative11
; Global: Branch target inside Label: taken when C10C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative11:
lda $0592,y ; CPU:$C10C PRG:410C B9 92 05
and #$FE ; CPU:$C10F PRG:410F 29 FE
sta $0592,y ; CPU:$C111 PRG:4111 99 92 05
dey ; CPU:$C114 PRG:4114 88
bpl NmiHandler_OnNonnegative11 ; CPU:$C115 PRG:4115 10 F5
rts ; CPU:$C117 PRG:4117 60
; -----------------------------------------------------------------------------
; Routine: Sub_C118
; Global: Branch target inside Label: taken when C118.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C118:
lda #$08 ; CPU:$C118 PRG:4118 A9 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero47
; Global: Branch target inside Label: taken when C11A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero47:
jsr Sub_826F ; CPU:$C11A PRG:411A 20 6F 82
clc ; CPU:$C11D PRG:411D 18
adc #$02 ; CPU:$C11E PRG:411E 69 02
cmp #$14 ; CPU:$C120 PRG:4120 C9 14
bne NmiHandler_OnNonzero47 ; CPU:$C122 PRG:4122 D0 F6
rts ; CPU:$C124 PRG:4124 60
; -----------------------------------------------------------------------------
; Routine: Sub_C125
; Global: Branch target inside Label: taken when C125.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C125:
inc $068E ; CPU:$C125 PRG:4125 EE 8E 06
lda $068E ; CPU:$C128 PRG:4128 AD 8E 06
cmp #$5A ; CPU:$C12B PRG:412B C9 5A
bcc NmiHandler_Loop157 ; CPU:$C12D PRG:412D 90 0B
lda #$00 ; CPU:$C12F PRG:412F A9 00
sta $0686 ; CPU:$C131 PRG:4131 8D 86 06
sta $068E ; CPU:$C134 PRG:4134 8D 8E 06
sta ZpC3 ; CPU:$C137 PRG:4137 85 C3
rts ; CPU:$C139 PRG:4139 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop157
; Global: Branch target inside Label: taken when C13A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop157:
ldx #$0C ; CPU:$C13A PRG:413A A2 0C
ldy #$62 ; CPU:$C13C PRG:413C A0 62
and #$04 ; CPU:$C13E PRG:413E 29 04
beq NmiHandler_Loop158 ; CPU:$C140 PRG:4140 F0 02
ldy #$63 ; CPU:$C142 PRG:4142 A0 63
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop158
; Global: Branch target inside Label: taken when C144.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop158:
sty $0320 ; CPU:$C144 PRG:4144 8C 20 03
lda #$80 ; CPU:$C147 PRG:4147 A9 80
sta ZpC3 ; CPU:$C149 PRG:4149 85 C3
jmp Sub_9B03 ; CPU:$C14B PRG:414B 4C 03 9B
; -----------------------------------------------------------------------------
; Routine: Sub_C14E
; Global: Branch target inside Label: taken when C14E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C14E:
lda $0580 ; CPU:$C14E PRG:414E AD 80 05
bne NmiHandler_Loop159 ; CPU:$C151 PRG:4151 D0 06
lda Zp96 ; CPU:$C153 PRG:4153 A5 96
and #$10 ; CPU:$C155 PRG:4155 29 10
bne NmiHandler_Loop160 ; CPU:$C157 PRG:4157 D0 01
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop159
; Global: Branch target inside Label: taken when C159.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop159:
rts ; CPU:$C159 PRG:4159 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop160
; Global: Branch target inside Label: taken when C15A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop160:
ldy #$00 ; CPU:$C15A PRG:415A A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero48
; Global: Branch target inside Label: taken when C15C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero48:
lda $C507,y ; CPU:$C15C PRG:415C B9 07 C5
sta $0224,y ; CPU:$C15F PRG:415F 99 24 02
iny ; CPU:$C162 PRG:4162 C8
cpy #$14 ; CPU:$C163 PRG:4163 C0 14
bne NmiHandler_OnNonzero48 ; CPU:$C165 PRG:4165 D0 F5
lda #$FF ; CPU:$C167 PRG:4167 A9 FF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero49
; Global: Branch target inside Label: taken when C169.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero49:
sta $0224,y ; CPU:$C169 PRG:4169 99 24 02
iny ; CPU:$C16C PRG:416C C8
cpy #$C8 ; CPU:$C16D PRG:416D C0 C8
bne NmiHandler_OnNonzero49 ; CPU:$C16F PRG:416F D0 F8
lda #$06 ; CPU:$C171 PRG:4171 A9 06
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero50
; Global: Branch target inside Label: taken when C173.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero50:
jsr Sub_82D4 ; CPU:$C173 PRG:4173 20 D4 82
clc ; CPU:$C176 PRG:4176 18
adc #$02 ; CPU:$C177 PRG:4177 69 02
cmp #$36 ; CPU:$C179 PRG:4179 C9 36
bne NmiHandler_OnNonzero50 ; CPU:$C17B PRG:417B D0 F6
lda #$03 ; CPU:$C17D PRG:417D A9 03
jsr Sub_F6DB ; CPU:$C17F PRG:417F 20 DB F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero5
; Global: Branch target inside Label: taken when C182.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero5:
jsr Sub_82A3 ; CPU:$C182 PRG:4182 20 A3 82
ldy #$05 ; CPU:$C185 PRG:4185 A0 05
lda #$03 ; CPU:$C187 PRG:4187 A9 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative12
; Global: Branch target inside Label: taken when C189.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative12:
cmp $06DA,y ; CPU:$C189 PRG:4189 D9 DA 06
beq NmiHandler_OnZero5 ; CPU:$C18C PRG:418C F0 F4
dey ; CPU:$C18E PRG:418E 88
bpl NmiHandler_OnNonnegative12 ; CPU:$C18F PRG:418F 10 F8
lda #$00 ; CPU:$C191 PRG:4191 A9 00
jsr Sub_F6DB ; CPU:$C193 PRG:4193 20 DB F6
lda #$01 ; CPU:$C196 PRG:4196 A9 01
jsr Sub_F6DB ; CPU:$C198 PRG:4198 20 DB F6
lda #$02 ; CPU:$C19B PRG:419B A9 02
jsr Sub_F6DB ; CPU:$C19D PRG:419D 20 DB F6
jsr Sub_F744 ; CPU:$C1A0 PRG:41A0 20 44 F7
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero51
; Global: Branch target inside Label: taken when C1A3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero51:
jsr Sub_82A3 ; CPU:$C1A3 PRG:41A3 20 A3 82
lda #$FF ; CPU:$C1A6 PRG:41A6 A9 FF
sta $0683 ; CPU:$C1A8 PRG:41A8 8D 83 06
lda Zp96 ; CPU:$C1AB PRG:41AB A5 96
and #$10 ; CPU:$C1AD PRG:41AD 29 10
bne NmiHandler_OnNonzero51 ; CPU:$C1AF PRG:41AF D0 F2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero6
; Global: Branch target inside Label: taken when C1B1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero6:
jsr Sub_82A3 ; CPU:$C1B1 PRG:41B1 20 A3 82
lda Zp96 ; CPU:$C1B4 PRG:41B4 A5 96
and #$10 ; CPU:$C1B6 PRG:41B6 29 10
beq NmiHandler_OnZero6 ; CPU:$C1B8 PRG:41B8 F0 F7
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero52
; Global: Branch target inside Label: taken when C1BA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero52:
jsr Sub_82A3 ; CPU:$C1BA PRG:41BA 20 A3 82
lda Zp96 ; CPU:$C1BD PRG:41BD A5 96
and #$10 ; CPU:$C1BF PRG:41BF 29 10
bne NmiHandler_OnNonzero52 ; CPU:$C1C1 PRG:41C1 D0 F7
lda #$06 ; CPU:$C1C3 PRG:41C3 A9 06
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero53
; Global: Branch target inside Label: taken when C1C5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero53:
jsr Sub_82B8 ; CPU:$C1C5 PRG:41C5 20 B8 82
clc ; CPU:$C1C8 PRG:41C8 18
adc #$02 ; CPU:$C1C9 PRG:41C9 69 02
cmp #$36 ; CPU:$C1CB PRG:41CB C9 36
bne NmiHandler_OnNonzero53 ; CPU:$C1CD PRG:41CD D0 F6
lda #$00 ; CPU:$C1CF PRG:41CF A9 00
sta $0683 ; CPU:$C1D1 PRG:41D1 8D 83 06
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero54
; Global: Branch target inside Label: taken when C1D4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero54:
rts ; CPU:$C1D4 PRG:41D4 60
; -----------------------------------------------------------------------------
; Routine: Sub_C1D5
; Global: Branch target inside Label: taken when C1D5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C1D5:
lda #$00 ; CPU:$C1D5 PRG:41D5 A9 00
sta Zp72 ; CPU:$C1D7 PRG:41D7 85 72
sta Zp71 ; CPU:$C1D9 PRG:41D9 85 71
; -----------------------------------------------------------------------------
; Routine: Sub_C1DB
; Global: Branch target inside Label: taken when C1DB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C1DB:
lda $0580 ; CPU:$C1DB PRG:41DB AD 80 05
bne NmiHandler_OnNonzero54 ; CPU:$C1DE PRG:41DE D0 F4
stx ZpA0 ; CPU:$C1E0 PRG:41E0 86 A0
sty Zp9F ; CPU:$C1E2 PRG:41E2 84 9F
lda $058C ; CPU:$C1E4 PRG:41E4 AD 8C 05
clc ; CPU:$C1E7 PRG:41E7 18
adc Zp73 ; CPU:$C1E8 PRG:41E8 65 73
cmp #$0A ; CPU:$C1EA PRG:41EA C9 0A
bcc NmiHandler_Loop161 ; CPU:$C1EC PRG:41EC 90 03
sec ; CPU:$C1EE PRG:41EE 38
sbc #$0A ; CPU:$C1EF PRG:41EF E9 0A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop161
; Global: Branch target inside Label: taken when C1F1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop161:
sta $058C ; CPU:$C1F1 PRG:41F1 8D 8C 05
lda $058B ; CPU:$C1F4 PRG:41F4 AD 8B 05
adc Zp74 ; CPU:$C1F7 PRG:41F7 65 74
cmp #$0A ; CPU:$C1F9 PRG:41F9 C9 0A
bcc NmiHandler_Loop162 ; CPU:$C1FB PRG:41FB 90 03
sec ; CPU:$C1FD PRG:41FD 38
sbc #$0A ; CPU:$C1FE PRG:41FE E9 0A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop162
; Global: Branch target inside Label: taken when C200.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop162:
sta $058B ; CPU:$C200 PRG:4200 8D 8B 05
lda $058A ; CPU:$C203 PRG:4203 AD 8A 05
adc Zp71 ; CPU:$C206 PRG:4206 65 71
cmp #$0A ; CPU:$C208 PRG:4208 C9 0A
bcc NmiHandler_Loop163 ; CPU:$C20A PRG:420A 90 03
sec ; CPU:$C20C PRG:420C 38
sbc #$0A ; CPU:$C20D PRG:420D E9 0A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop163
; Global: Branch target inside Label: taken when C20F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop163:
sta $058A ; CPU:$C20F PRG:420F 8D 8A 05
lda $0589 ; CPU:$C212 PRG:4212 AD 89 05
adc Zp72 ; CPU:$C215 PRG:4215 65 72
cmp #$0A ; CPU:$C217 PRG:4217 C9 0A
bcc NmiHandler_Loop164 ; CPU:$C219 PRG:4219 90 03
sec ; CPU:$C21B PRG:421B 38
sbc #$0A ; CPU:$C21C PRG:421C E9 0A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop164
; Global: Branch target inside Label: taken when C21E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop164:
sta $0589 ; CPU:$C21E PRG:421E 8D 89 05
lda $0588 ; CPU:$C221 PRG:4221 AD 88 05
adc #$00 ; CPU:$C224 PRG:4224 69 00
cmp #$0A ; CPU:$C226 PRG:4226 C9 0A
bcc NmiHandler_Loop165 ; CPU:$C228 PRG:4228 90 03
sec ; CPU:$C22A PRG:422A 38
sbc #$0A ; CPU:$C22B PRG:422B E9 0A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop165
; Global: Branch target inside Label: taken when C22D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop165:
sta $0588 ; CPU:$C22D PRG:422D 8D 88 05
jsr Sub_C293 ; CPU:$C230 PRG:4230 20 93 C2
ldy #$01 ; CPU:$C233 PRG:4233 A0 01
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative13
; Global: Branch target inside Label: taken when C235.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative13:
lda $0588,y ; CPU:$C235 PRG:4235 B9 88 05
bne NmiHandler_Loop166 ; CPU:$C238 PRG:4238 D0 05
dey ; CPU:$C23A PRG:423A 88
bpl NmiHandler_OnNonnegative13 ; CPU:$C23B PRG:423B 10 F8
bmi NmiHandler_Loop167 ; CPU:$C23D PRG:423D 30 12
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop166
; Global: Branch target inside Label: taken when C23F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop166:
lda $05D3 ; CPU:$C23F PRG:423F AD D3 05
bne NmiHandler_Loop167 ; CPU:$C242 PRG:4242 D0 0D
lda #$FF ; CPU:$C244 PRG:4244 A9 FF
sta $05D3 ; CPU:$C246 PRG:4246 8D D3 05
inc $0590 ; CPU:$C249 PRG:4249 EE 90 05
lda #$1B ; CPU:$C24C PRG:424C A9 1B
jsr Sub_F6DB ; CPU:$C24E PRG:424E 20 DB F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop167
; Global: Branch target inside Label: taken when C251.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop167:
ldy #$00 ; CPU:$C251 PRG:4251 A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero55
; Global: Branch target inside Label: taken when C253.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero55:
lda $0581,y ; CPU:$C253 PRG:4253 B9 81 05
cmp $0588,y ; CPU:$C256 PRG:4256 D9 88 05
bcc NmiHandler_Loop168 ; CPU:$C259 PRG:4259 90 0C
bne NmiHandler_OnNegative4 ; CPU:$C25B PRG:425B D0 05
iny ; CPU:$C25D PRG:425D C8
cpy #$06 ; CPU:$C25E PRG:425E C0 06
bne NmiHandler_OnNonzero55 ; CPU:$C260 PRG:4260 D0 F1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNegative4
; Global: Branch target inside Label: taken when C262.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNegative4:
ldx ZpA0 ; CPU:$C262 PRG:4262 A6 A0
ldy Zp9F ; CPU:$C264 PRG:4264 A4 9F
rts ; CPU:$C266 PRG:4266 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop168
; Global: Branch target inside Label: taken when C267.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop168:
ldy #$00 ; CPU:$C267 PRG:4267 A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero56
; Global: Branch target inside Label: taken when C269.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero56:
lda $0588,y ; CPU:$C269 PRG:4269 B9 88 05
sta $0581,y ; CPU:$C26C PRG:426C 99 81 05
iny ; CPU:$C26F PRG:426F C8
cpy #$06 ; CPU:$C270 PRG:4270 C0 06
bne NmiHandler_OnNonzero56 ; CPU:$C272 PRG:4272 D0 F5
lda $0587 ; CPU:$C274 PRG:4274 AD 87 05
bne NmiHandler_Loop169 ; CPU:$C277 PRG:4277 D0 0D
ldy #$05 ; CPU:$C279 PRG:4279 A0 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative14
; Global: Branch target inside Label: taken when C27B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative14:
lda $056B,y ; CPU:$C27B PRG:427B B9 6B 05
sta $0571,y ; CPU:$C27E PRG:427E 99 71 05
dey ; CPU:$C281 PRG:4281 88
bpl NmiHandler_OnNonnegative14 ; CPU:$C282 PRG:4282 10 F7
bmi NmiHandler_OnNegative4 ; CPU:$C284 PRG:4284 30 DC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop169
; Global: Branch target inside Label: taken when C286.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop169:
ldy #$05 ; CPU:$C286 PRG:4286 A0 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative15
; Global: Branch target inside Label: taken when C288.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative15:
lda $0577,y ; CPU:$C288 PRG:4288 B9 77 05
sta $0571,y ; CPU:$C28B PRG:428B 99 71 05
dey ; CPU:$C28E PRG:428E 88
bpl NmiHandler_OnNonnegative15 ; CPU:$C28F PRG:428F 10 F7
bmi NmiHandler_OnNegative4 ; CPU:$C291 PRG:4291 30 CF
; -----------------------------------------------------------------------------
; Routine: Sub_C293
; Global: Branch target inside Label: taken when C293.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C293:
lda $0580 ; CPU:$C293 PRG:4293 AD 80 05
bne NmiHandler_OnZero7 ; CPU:$C296 PRG:4296 D0 58
ldy #$00 ; CPU:$C298 PRG:4298 A0 00
ldx #$00 ; CPU:$C29A PRG:429A A2 00
lda $0587 ; CPU:$C29C PRG:429C AD 87 05
bne NmiHandler_Loop170 ; CPU:$C29F PRG:429F D0 12
lda #$6B ; CPU:$C2A1 PRG:42A1 A9 6B
sta Zp73 ; CPU:$C2A3 PRG:42A3 85 73
lda #$05 ; CPU:$C2A5 PRG:42A5 A9 05
sta Zp74 ; CPU:$C2A7 PRG:42A7 85 74
lda #$F1 ; CPU:$C2A9 PRG:42A9 A9 F1
sta Zp71 ; CPU:$C2AB PRG:42AB 85 71
lda #$C2 ; CPU:$C2AD PRG:42AD A9 C2
sta Zp72 ; CPU:$C2AF PRG:42AF 85 72
bne NmiHandler_OnNonzero57 ; CPU:$C2B1 PRG:42B1 D0 10
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop170
; Global: Branch target inside Label: taken when C2B3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop170:
lda #$77 ; CPU:$C2B3 PRG:42B3 A9 77
sta Zp73 ; CPU:$C2B5 PRG:42B5 85 73
lda #$05 ; CPU:$C2B7 PRG:42B7 A9 05
sta Zp74 ; CPU:$C2B9 PRG:42B9 85 74
lda #$09 ; CPU:$C2BB PRG:42BB A9 09
sta Zp71 ; CPU:$C2BD PRG:42BD 85 71
lda #$C3 ; CPU:$C2BF PRG:42BF A9 C3
sta Zp72 ; CPU:$C2C1 PRG:42C1 85 72
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero57
; Global: Branch target inside Label: taken when C2C3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero57:
lda $0588,x ; CPU:$C2C3 PRG:42C3 BD 88 05
and #$0F ; CPU:$C2C6 PRG:42C6 29 0F
ora #$70 ; CPU:$C2C8 PRG:42C8 09 70
sta (Zp73),y ; CPU:$C2CA PRG:42CA 91 73
iny ; CPU:$C2CC PRG:42CC C8
inx ; CPU:$C2CD PRG:42CD E8
cpx #$06 ; CPU:$C2CE PRG:42CE E0 06
bne NmiHandler_OnNonzero57 ; CPU:$C2D0 PRG:42D0 D0 F1
ldy #$00 ; CPU:$C2D2 PRG:42D2 A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero58
; Global: Branch target inside Label: taken when C2D4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero58:
lda (Zp71),y ; CPU:$C2D4 PRG:42D4 B1 71
sta $020C,y ; CPU:$C2D6 PRG:42D6 99 0C 02
iny ; CPU:$C2D9 PRG:42D9 C8
cpy #$18 ; CPU:$C2DA PRG:42DA C0 18
bne NmiHandler_OnNonzero58 ; CPU:$C2DC PRG:42DC D0 F6
ldy #$00 ; CPU:$C2DE PRG:42DE A0 00
ldx #$01 ; CPU:$C2E0 PRG:42E0 A2 01
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero59
; Global: Branch target inside Label: taken when C2E2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero59:
lda (Zp73),y ; CPU:$C2E2 PRG:42E2 B1 73
sta $020C,x ; CPU:$C2E4 PRG:42E4 9D 0C 02
iny ; CPU:$C2E7 PRG:42E7 C8
inx ; CPU:$C2E8 PRG:42E8 E8
inx ; CPU:$C2E9 PRG:42E9 E8
inx ; CPU:$C2EA PRG:42EA E8
inx ; CPU:$C2EB PRG:42EB E8
cpy #$06 ; CPU:$C2EC PRG:42EC C0 06
bne NmiHandler_OnNonzero59 ; CPU:$C2EE PRG:42EE D0 F2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero7
; Global: Branch target inside Label: taken when C2F0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero7:
rts ; CPU:$C2F0 PRG:42F0 60
; ---- data $C2F1-$C320 (48 bytes) ----
.byte $20, $FF, $02, $20, $20, $FF, $02, $28, $20, $FF, $02, $30, $20, $FF, $02, $38 ; CPU:$C2F1 PRG:42F1 20 FF 02 20 20 FF 02 28 20 FF 02 30 20 FF 02 38
.byte $20, $FF, $02, $40, $20, $FF, $02, $48, $20, $FF, $02, $B0, $20, $FF, $02, $B8 ; CPU:$C301 PRG:4301 20 FF 02 40 20 FF 02 48 20 FF 02 B0 20 FF 02 B8
.byte $20, $FF, $02, $C0, $20, $FF, $02, $C8, $20, $FF, $02, $D0, $20, $FF, $02, $D8 ; CPU:$C311 PRG:4311 20 FF 02 C0 20 FF 02 C8 20 FF 02 D0 20 FF 02 D8
; -----------------------------------------------------------------------------
; Routine: Sub_C321
; Global: Branch target inside Label: taken when C321.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C321:
lda $0688 ; CPU:$C321 PRG:4321 AD 88 06
beq NmiHandler_OnZero7 ; CPU:$C324 PRG:4324 F0 CA
lda #$00 ; CPU:$C326 PRG:4326 A9 00
ldx #$0B ; CPU:$C328 PRG:4328 A2 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero60
; Global: Branch target inside Label: taken when C32A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero60:
sta $0591,x ; CPU:$C32A PRG:432A 9D 91 05
dex ; CPU:$C32D PRG:432D CA
bne NmiHandler_OnNonzero60 ; CPU:$C32E PRG:432E D0 FA
lda $058E ; CPU:$C330 PRG:4330 AD 8E 05
cmp #$08 ; CPU:$C333 PRG:4333 C9 08
bcc NmiHandler_Loop171 ; CPU:$C335 PRG:4335 90 02
lda #$08 ; CPU:$C337 PRG:4337 A9 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop171
; Global: Branch target inside Label: taken when C339.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop171:
asl a ; CPU:$C339 PRG:4339 0A
adc #$A1 ; CPU:$C33A PRG:433A 69 A1
sta Zp71 ; CPU:$C33C PRG:433C 85 71
lda #$C5 ; CPU:$C33E PRG:433E A9 C5
adc #$00 ; CPU:$C340 PRG:4340 69 00
sta Zp72 ; CPU:$C342 PRG:4342 85 72
ldy #$00 ; CPU:$C344 PRG:4344 A0 00
lda (Zp71),y ; CPU:$C346 PRG:4346 B1 71
sta Zp73 ; CPU:$C348 PRG:4348 85 73
iny ; CPU:$C34A PRG:434A C8
lda (Zp71),y ; CPU:$C34B PRG:434B B1 71
sta Zp74 ; CPU:$C34D PRG:434D 85 74
inc $0689 ; CPU:$C34F PRG:434F EE 89 06
lda $0689 ; CPU:$C352 PRG:4352 AD 89 06
and #$07 ; CPU:$C355 PRG:4355 29 07
sta $0689 ; CPU:$C357 PRG:4357 8D 89 06
asl a ; CPU:$C35A PRG:435A 0A
clc ; CPU:$C35B PRG:435B 18
adc $0689 ; CPU:$C35C PRG:435C 6D 89 06
clc ; CPU:$C35F PRG:435F 18
adc Zp73 ; CPU:$C360 PRG:4360 65 73
sta Zp73 ; CPU:$C362 PRG:4362 85 73
lda #$00 ; CPU:$C364 PRG:4364 A9 00
adc Zp74 ; CPU:$C366 PRG:4366 65 74
sta Zp74 ; CPU:$C368 PRG:4368 85 74
ldy #$00 ; CPU:$C36A PRG:436A A0 00
lda (Zp73),y ; CPU:$C36C PRG:436C B1 73
asl a ; CPU:$C36E PRG:436E 0A
clc ; CPU:$C36F PRG:436F 18
adc #$8B ; CPU:$C370 PRG:4370 69 8B
sta Zp9F ; CPU:$C372 PRG:4372 85 9F
lda #$C6 ; CPU:$C374 PRG:4374 A9 C6
adc #$00 ; CPU:$C376 PRG:4376 69 00
sta ZpA0 ; CPU:$C378 PRG:4378 85 A0
iny ; CPU:$C37A PRG:437A C8
lda (Zp73),y ; CPU:$C37B PRG:437B B1 73
asl a ; CPU:$C37D PRG:437D 0A
clc ; CPU:$C37E PRG:437E 18
adc #$A5 ; CPU:$C37F PRG:437F 69 A5
sta ZpA1 ; CPU:$C381 PRG:4381 85 A1
lda #$C6 ; CPU:$C383 PRG:4383 A9 C6
adc #$00 ; CPU:$C385 PRG:4385 69 00
sta ZpA2 ; CPU:$C387 PRG:4387 85 A2
iny ; CPU:$C389 PRG:4389 C8
lda (Zp73),y ; CPU:$C38A PRG:438A B1 73
asl a ; CPU:$C38C PRG:438C 0A
clc ; CPU:$C38D PRG:438D 18
adc #$BB ; CPU:$C38E PRG:438E 69 BB
sta ZpA3 ; CPU:$C390 PRG:4390 85 A3
lda #$C6 ; CPU:$C392 PRG:4392 A9 C6
adc #$00 ; CPU:$C394 PRG:4394 69 00
sta ZpA4 ; CPU:$C396 PRG:4396 85 A4
ldy #$00 ; CPU:$C398 PRG:4398 A0 00
lda (Zp9F),y ; CPU:$C39A PRG:439A B1 9F
sta Zp73 ; CPU:$C39C PRG:439C 85 73
iny ; CPU:$C39E PRG:439E C8
lda (Zp9F),y ; CPU:$C39F PRG:439F B1 9F
sta Zp74 ; CPU:$C3A1 PRG:43A1 85 74
ldy #$00 ; CPU:$C3A3 PRG:43A3 A0 00
ldx #$00 ; CPU:$C3A5 PRG:43A5 A2 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero61
; Global: Branch target inside Label: taken when C3A7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero61:
lda (Zp73),y ; CPU:$C3A7 PRG:43A7 B1 73
bmi NmiHandler_Loop172 ; CPU:$C3A9 PRG:43A9 30 14
sta $059C,x ; CPU:$C3AB PRG:43AB 9D 9C 05
iny ; CPU:$C3AE PRG:43AE C8
lda (Zp73),y ; CPU:$C3AF PRG:43AF B1 73
sta $05A6,x ; CPU:$C3B1 PRG:43B1 9D A6 05
iny ; CPU:$C3B4 PRG:43B4 C8
lda #$80 ; CPU:$C3B5 PRG:43B5 A9 80
sta $0592,x ; CPU:$C3B7 PRG:43B7 9D 92 05
inx ; CPU:$C3BA PRG:43BA E8
cpy #$04 ; CPU:$C3BB PRG:43BB C0 04
bne NmiHandler_OnNonzero61 ; CPU:$C3BD PRG:43BD D0 E8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop172
; Global: Branch target inside Label: taken when C3BF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop172:
ldy #$00 ; CPU:$C3BF PRG:43BF A0 00
lda (ZpA1),y ; CPU:$C3C1 PRG:43C1 B1 A1
sta Zp73 ; CPU:$C3C3 PRG:43C3 85 73
iny ; CPU:$C3C5 PRG:43C5 C8
lda (ZpA1),y ; CPU:$C3C6 PRG:43C6 B1 A1
sta Zp74 ; CPU:$C3C8 PRG:43C8 85 74
ldy #$00 ; CPU:$C3CA PRG:43CA A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero62
; Global: Branch target inside Label: taken when C3CC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero62:
lda (Zp73),y ; CPU:$C3CC PRG:43CC B1 73
bmi NmiHandler_Loop173 ; CPU:$C3CE PRG:43CE 30 14
sta $059C,x ; CPU:$C3D0 PRG:43D0 9D 9C 05
iny ; CPU:$C3D3 PRG:43D3 C8
lda (Zp73),y ; CPU:$C3D4 PRG:43D4 B1 73
sta $05A6,x ; CPU:$C3D6 PRG:43D6 9D A6 05
lda #$80 ; CPU:$C3D9 PRG:43D9 A9 80
sta $0592,x ; CPU:$C3DB PRG:43DB 9D 92 05
iny ; CPU:$C3DE PRG:43DE C8
inx ; CPU:$C3DF PRG:43DF E8
cpy #$0A ; CPU:$C3E0 PRG:43E0 C0 0A
bne NmiHandler_OnNonzero62 ; CPU:$C3E2 PRG:43E2 D0 E8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop173
; Global: Branch target inside Label: taken when C3E4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop173:
ldy #$00 ; CPU:$C3E4 PRG:43E4 A0 00
lda (ZpA3),y ; CPU:$C3E6 PRG:43E6 B1 A3
sta Zp73 ; CPU:$C3E8 PRG:43E8 85 73
iny ; CPU:$C3EA PRG:43EA C8
lda (ZpA3),y ; CPU:$C3EB PRG:43EB B1 A3
sta Zp74 ; CPU:$C3ED PRG:43ED 85 74
ldy #$00 ; CPU:$C3EF PRG:43EF A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero63
; Global: Branch target inside Label: taken when C3F1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero63:
lda (Zp73),y ; CPU:$C3F1 PRG:43F1 B1 73
bmi NmiHandler_Loop174 ; CPU:$C3F3 PRG:43F3 30 14
sta $059C,x ; CPU:$C3F5 PRG:43F5 9D 9C 05
iny ; CPU:$C3F8 PRG:43F8 C8
lda (Zp73),y ; CPU:$C3F9 PRG:43F9 B1 73
sta $05A6,x ; CPU:$C3FB PRG:43FB 9D A6 05
lda #$80 ; CPU:$C3FE PRG:43FE A9 80
sta $0592,x ; CPU:$C400 PRG:4400 9D 92 05
inx ; CPU:$C403 PRG:4403 E8
iny ; CPU:$C404 PRG:4404 C8
cpy #$0A ; CPU:$C405 PRG:4405 C0 0A
bne NmiHandler_OnNonzero63 ; CPU:$C407 PRG:4407 D0 E8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop174
; Global: Branch target inside Label: taken when C409.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop174:
ldy $06E0 ; CPU:$C409 PRG:4409 AC E0 06
ldx $C52B,y ; CPU:$C40C PRG:440C BE 2B C5
stx $0591 ; CPU:$C40F PRG:440F 8E 91 05
inc $06E0 ; CPU:$C412 PRG:4412 EE E0 06
lda $06E0 ; CPU:$C415 PRG:4415 AD E0 06
and #$1F ; CPU:$C418 PRG:4418 29 1F
sta $06E0 ; CPU:$C41A PRG:441A 8D E0 06
lda $0689 ; CPU:$C41D PRG:441D AD 89 06
asl a ; CPU:$C420 PRG:4420 0A
tay ; CPU:$C421 PRG:4421 A8
ldx $C54B,y ; CPU:$C422 PRG:4422 BE 4B C5
lda $03FB,x ; CPU:$C425 PRG:4425 BD FB 03
ora #$04 ; CPU:$C428 PRG:4428 09 04
sta $03FB,x ; CPU:$C42A PRG:442A 9D FB 03
stx $04C9 ; CPU:$C42D PRG:442D 8E C9 04
lda #$0B ; CPU:$C430 PRG:4430 A9 0B
sta $04BE,x ; CPU:$C432 PRG:4432 9D BE 04
stx $05D1 ; CPU:$C435 PRG:4435 8E D1 05
iny ; CPU:$C438 PRG:4438 C8
ldx $C54B,y ; CPU:$C439 PRG:4439 BE 4B C5
lda $03FB,x ; CPU:$C43C PRG:443C BD FB 03
ora #$04 ; CPU:$C43F PRG:443F 09 04
sta $03FB,x ; CPU:$C441 PRG:4441 9D FB 03
stx $04CA ; CPU:$C444 PRG:4444 8E CA 04
lda #$0C ; CPU:$C447 PRG:4447 A9 0C
sta $04BE,x ; CPU:$C449 PRG:4449 9D BE 04
stx $05D2 ; CPU:$C44C PRG:444C 8E D2 05
rts ; CPU:$C44F PRG:444F 60
; -----------------------------------------------------------------------------
; Routine: Sub_C450
; Global: Branch target inside Label: taken when C450.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C450:
lda #$06 ; CPU:$C450 PRG:4450 A9 06
sta Zp6F ; CPU:$C452 PRG:4452 85 6F
lda #$03 ; CPU:$C454 PRG:4454 A9 03
sta Zp70 ; CPU:$C456 PRG:4456 85 70
lda #$DA ; CPU:$C458 PRG:4458 A9 DA
sta Zp73 ; CPU:$C45A PRG:445A 85 73
lda #$FF ; CPU:$C45C PRG:445C A9 FF
sta Zp74 ; CPU:$C45E PRG:445E 85 74
ldx $0591 ; CPU:$C460 PRG:4460 AE 91 05
lda $0463,x ; CPU:$C463 PRG:4463 BD 63 04
clc ; CPU:$C466 PRG:4466 18
adc #$40 ; CPU:$C467 PRG:4467 69 40
sta Zp71 ; CPU:$C469 PRG:4469 85 71
lda #$22 ; CPU:$C46B PRG:446B A9 22
adc #$00 ; CPU:$C46D PRG:446D 69 00
sta Zp72 ; CPU:$C46F PRG:446F 85 72
jmp Sub_9786 ; CPU:$C471 PRG:4471 4C 86 97
; -----------------------------------------------------------------------------
; Routine: Sub_C474
; Global: Branch target inside Label: taken when C474.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C474:
jsr Sub_D69C ; CPU:$C474 PRG:4474 20 9C D6
lda Zp73 ; CPU:$C477 PRG:4477 A5 73
clc ; CPU:$C479 PRG:4479 18
adc #$87 ; CPU:$C47A PRG:447A 69 87
sta Zp73 ; CPU:$C47C PRG:447C 85 73
lda Zp74 ; CPU:$C47E PRG:447E A5 74
adc #$C4 ; CPU:$C480 PRG:4480 69 C4
sta Zp74 ; CPU:$C482 PRG:4482 85 74
jmp Sub_9777 ; CPU:$C484 PRG:4484 4C 77 97
; ---- data $C487-$C837 (945 bytes) ----
; referenced by `lda $C507,y` at $C15C (operand $C507 falls inside this region)
; referenced by `ldx $C52B,y` at $C40C (operand $C52B falls inside this region)
; referenced by `ldx $C54B,y` at $C422 (operand $C54B falls inside this region)
; referenced by `ldx $C54B,y` at $C439 (operand $C54B falls inside this region)
.byte $0F, $20, $00, $1C, $0F, $20, $03, $1C, $0F, $35, $00, $1C, $0F, $20, $16, $1C ; CPU:$C487 PRG:4487 0F 20 00 1C 0F 20 03 1C 0F 35 00 1C 0F 20 16 1C
.byte $0F, $36, $17, $07, $0F, $36, $17, $0F, $0F, $0F, $30, $02, $0F, $0F, $30, $16 ; CPU:$C497 PRG:4497 0F 36 17 07 0F 36 17 0F 0F 0F 30 02 0F 0F 30 16
.byte $0F, $20, $00, $14, $0F, $20, $03, $14, $0F, $3C, $00, $14, $0F, $20, $16, $14 ; CPU:$C4A7 PRG:44A7 0F 20 00 14 0F 20 03 14 0F 3C 00 14 0F 20 16 14
.byte $0F, $36, $17, $07, $0F, $36, $17, $0F, $0F, $0F, $30, $02, $0F, $0F, $30, $16 ; CPU:$C4B7 PRG:44B7 0F 36 17 07 0F 36 17 0F 0F 0F 30 02 0F 0F 30 16
.byte $0F, $20, $00, $2C, $0F, $20, $03, $2C, $0F, $25, $00, $2C, $0F, $20, $16, $2C ; CPU:$C4C7 PRG:44C7 0F 20 00 2C 0F 20 03 2C 0F 25 00 2C 0F 20 16 2C
.byte $0F, $36, $17, $07, $0F, $36, $17, $0F, $0F, $0F, $30, $02, $0F, $0F, $30, $16 ; CPU:$C4D7 PRG:44D7 0F 36 17 07 0F 36 17 0F 0F 0F 30 02 0F 0F 30 16
.byte $0F, $20, $10, $00, $0F, $20, $03, $00, $0F, $2C, $10, $00, $0F, $20, $16, $00 ; CPU:$C4E7 PRG:44E7 0F 20 10 00 0F 20 03 00 0F 2C 10 00 0F 20 16 00
.byte $0F, $36, $17, $07, $0F, $36, $17, $0F, $0F, $0F, $30, $02, $0F, $0F, $30, $16 ; CPU:$C4F7 PRG:44F7 0F 36 17 07 0F 36 17 0F 0F 0F 30 02 0F 0F 30 16
.byte $68, $89, $02, $68, $68, $7A, $02, $70, $68, $8E, $02, $78, $68, $8C, $02, $80 ; CPU:$C507 PRG:4507 68 89 02 68 68 7A 02 70 68 8E 02 78 68 8C 02 80
.byte $68, $7E, $02, $88, $FF, $00, $00, $FF, $01, $00, $FF, $00, $01, $00, $01, $00 ; CPU:$C517 PRG:4517 68 7E 02 88 FF 00 00 FF 01 00 FF 00 01 00 01 00
.byte $FF, $01, $00, $00, $06, $0A, $06, $06, $09, $08, $09, $0A, $0A, $0A, $06, $09 ; CPU:$C527 PRG:4527 FF 01 00 00 06 0A 06 06 09 08 09 0A 0A 0A 06 09
.byte $06, $08, $07, $08, $06, $06, $08, $0A, $07, $08, $07, $07, $06, $09, $07, $08 ; CPU:$C537 PRG:4537 06 08 07 08 06 06 08 0A 07 08 07 07 06 09 07 08
.byte $06, $09, $08, $09, $04, $0A, $04, $0A, $05, $06, $04, $09, $05, $07, $05, $08 ; CPU:$C547 PRG:4547 06 09 08 09 04 0A 04 0A 05 06 04 09 05 07 05 08
.byte $04, $07, $04, $08, $05, $06, $04, $09, $05, $07, $05, $08, $05, $06, $04, $09 ; CPU:$C557 PRG:4557 04 07 04 08 05 06 04 09 05 07 05 08 05 06 04 09
.byte $05, $08, $01, $76, $04, $77, $04, $78, $04, $79, $04, $7A, $04, $7B, $04, $7C ; CPU:$C567 PRG:4567 05 08 01 76 04 77 04 78 04 79 04 7A 04 7B 04 7C
.byte $04, $7D, $04, $7E, $04, $7F, $04, $80, $04, $FF, $01, $81, $04, $82, $04, $83 ; CPU:$C577 PRG:4577 04 7D 04 7E 04 7F 04 80 04 FF 01 81 04 82 04 83
.byte $04, $84, $04, $85, $04, $86, $04, $87, $04, $FF, $01, $88, $04, $88, $04, $88 ; CPU:$C587 PRG:4587 04 84 04 85 04 86 04 87 04 FF 01 88 04 88 04 88
.byte $04, $88, $04, $88, $04, $88, $04, $88, $04, $FF, $B3, $C5, $CB, $C5, $E3, $C5 ; CPU:$C597 PRG:4597 04 88 04 88 04 88 04 88 04 FF B3 C5 CB C5 E3 C5
.byte $FB, $C5, $13, $C6, $2B, $C6, $43, $C6, $5B, $C6, $73, $C6, $00, $00, $00, $00 ; CPU:$C5A7 PRG:45A7 FB C5 13 C6 2B C6 43 C6 5B C6 73 C6 00 00 00 00
.byte $01, $00, $00, $02, $00, $00, $03, $00, $00, $04, $00, $00, $05, $00, $00, $06 ; CPU:$C5B7 PRG:45B7 01 00 00 02 00 00 03 00 00 04 00 00 05 00 00 06
.byte $00, $00, $07, $00, $00, $08, $01, $00, $09, $01, $00, $0A, $02, $00, $00, $03 ; CPU:$C5C7 PRG:45C7 00 00 07 00 00 08 01 00 09 01 00 0A 02 00 00 03
.byte $00, $01, $04, $00, $02, $05, $00, $03, $06, $00, $04, $07, $00, $05, $08, $00 ; CPU:$C5D7 PRG:45D7 00 01 04 00 02 05 00 03 06 00 04 07 00 05 08 00
.byte $06, $09, $00, $07, $0A, $00, $08, $0B, $00, $09, $08, $00, $0A, $09, $00, $00 ; CPU:$C5E7 PRG:45E7 06 09 00 07 0A 00 08 0B 00 09 08 00 0A 09 00 00
.byte $0A, $00, $01, $0B, $01, $02, $08, $02, $03, $09, $03, $04, $0A, $04, $05, $0B ; CPU:$C5F7 PRG:45F7 0A 00 01 0B 01 02 08 02 03 09 03 04 0A 04 05 0B
.byte $01, $06, $08, $02, $07, $09, $03, $08, $0A, $04, $09, $0B, $05, $0A, $08, $06 ; CPU:$C607 PRG:4607 01 06 08 02 07 09 03 08 0A 04 09 0B 05 0A 08 06
.byte $00, $09, $07, $01, $0A, $08, $02, $0B, $05, $03, $08, $06, $04, $09, $07, $05 ; CPU:$C617 PRG:4617 00 09 07 01 0A 08 02 0B 05 03 08 06 04 09 07 05
.byte $0A, $08, $06, $0B, $09, $07, $08, $0A, $08, $09, $0B, $09, $0A, $0C, $0A, $0B ; CPU:$C627 PRG:4627 0A 08 06 0B 09 07 08 0A 08 09 0B 09 0A 0C 0A 0B
.byte $09, $00, $08, $0A, $01, $09, $0B, $02, $0A, $0C, $03, $0B, $05, $04, $0C, $06 ; CPU:$C637 PRG:4637 09 00 08 0A 01 09 0B 02 0A 0C 03 0B 05 04 0C 06
.byte $05, $0D, $07, $06, $0E, $08, $07, $0F, $05, $08, $0C, $06, $09, $0D, $07, $0A ; CPU:$C647 PRG:4647 05 0D 07 06 0E 08 07 0F 05 08 0C 06 09 0D 07 0A
.byte $0E, $08, $00, $0F, $01, $01, $10, $02, $02, $11, $03, $03, $12, $04, $04, $13 ; CPU:$C657 PRG:4657 0E 08 00 0F 01 01 10 02 02 11 03 03 12 04 04 13
.byte $01, $05, $10, $02, $06, $11, $03, $07, $12, $04, $08, $13, $00, $09, $14, $00 ; CPU:$C667 PRG:4667 01 05 10 02 06 11 03 07 12 04 08 13 00 09 14 00
.byte $0A, $15, $00, $00, $16, $00, $01, $17, $00, $02, $14, $00, $03, $15, $00, $04 ; CPU:$C677 PRG:4677 0A 15 00 00 16 00 01 17 00 02 14 00 03 15 00 04
.byte $16, $00, $05, $17, $EB, $C6, $EC, $C6, $EF, $C6, $F2, $C6, $F5, $C6, $F8, $C6 ; CPU:$C687 PRG:4687 16 00 05 17 EB C6 EC C6 EF C6 F2 C6 F5 C6 F8 C6
.byte $FD, $C6, $02, $C7, $07, $C7, $0C, $C7, $13, $C7, $1A, $C7, $21, $C7, $28, $C7 ; CPU:$C697 PRG:4697 FD C6 02 C7 07 C7 0C C7 13 C7 1A C7 21 C7 28 C7
.byte $33, $C7, $3E, $C7, $49, $C7, $54, $C7, $5F, $C7, $6A, $C7, $75, $C7, $80, $C7 ; CPU:$C6A7 PRG:46A7 33 C7 3E C7 49 C7 54 C7 5F C7 6A C7 75 C7 80 C7
.byte $8B, $C7, $96, $C7, $A1, $C7, $A2, $C7, $A5, $C7, $A8, $C7, $AB, $C7, $AE, $C7 ; CPU:$C6B7 PRG:46B7 8B C7 96 C7 A1 C7 A2 C7 A5 C7 A8 C7 AB C7 AE C7
.byte $B1, $C7, $B4, $C7, $B7, $C7, $BC, $C7, $C1, $C7, $C6, $C7, $CB, $C7, $D2, $C7 ; CPU:$C6C7 PRG:46C7 B1 C7 B4 C7 B7 C7 BC C7 C1 C7 C6 C7 CB C7 D2 C7
.byte $D9, $C7, $E0, $C7, $E7, $C7, $F0, $C7, $F9, $C7, $02, $C8, $0B, $C8, $16, $C8 ; CPU:$C6D7 PRG:46D7 D9 C7 E0 C7 E7 C7 F0 C7 F9 C7 02 C8 0B C8 16 C8
.byte $21, $C8, $2C, $C8, $FF, $0A, $38, $FF, $07, $C0, $FF, $04, $50, $FF, $02, $C0 ; CPU:$C6E7 PRG:46E7 21 C8 2C C8 FF 0A 38 FF 07 C0 FF 04 50 FF 02 C0
.byte $FF, $04, $A8, $0A, $38, $FF, $01, $C0, $09, $C0, $FF, $04, $38, $07, $50, $FF ; CPU:$C6F7 PRG:46F7 FF 04 A8 0A 38 FF 01 C0 09 C0 FF 04 38 07 50 FF
.byte $02, $38, $03, $C0, $FF, $01, $38, $04, $50, $07, $A8, $FF, $03, $50, $06, $C0 ; CPU:$C707 PRG:4707 02 38 03 C0 FF 01 38 04 50 07 A8 FF 03 50 06 C0
.byte $09, $A8, $FF, $02, $50, $05, $50, $08, $C0, $FF, $04, $38, $07, $50, $0A, $A8 ; CPU:$C717 PRG:4717 09 A8 FF 02 50 05 50 08 C0 FF 04 38 07 50 0A A8
.byte $FF, $0B, $38, $0F, $A8, $11, $A8, $14, $38, $16, $90, $FF, $0B, $38, $0E, $A8 ; CPU:$C727 PRG:4727 FF 0B 38 0F A8 11 A8 14 38 16 90 FF 0B 38 0E A8
.byte $11, $A8, $14, $C0, $16, $68, $FF, $0D, $68, $0F, $A8, $11, $A8, $13, $38, $15 ; CPU:$C737 PRG:4737 11 A8 14 C0 16 68 FF 0D 68 0F A8 11 A8 13 38 15
.byte $A8, $FF, $0C, $50, $0F, $20, $11, $A8, $14, $50, $16, $68, $FF, $0C, $C0, $0F ; CPU:$C747 PRG:4747 A8 FF 0C 50 0F 20 11 A8 14 50 16 68 FF 0C C0 0F
.byte $38, $11, $38, $14, $A8, $16, $68, $FF, $0B, $C0, $10, $C0, $12, $A8, $14, $38 ; CPU:$C757 PRG:4757 38 11 38 14 A8 16 68 FF 0B C0 10 C0 12 A8 14 38
.byte $15, $50, $FF, $0B, $C0, $0E, $50, $12, $90, $15, $50, $16, $90, $FF, $0D, $90 ; CPU:$C767 PRG:4767 15 50 FF 0B C0 0E 50 12 90 15 50 16 90 FF 0D 90
.byte $0F, $A8, $12, $50, $14, $A8, $16, $68, $FF, $0C, $50, $0E, $50, $11, $A8, $14 ; CPU:$C777 PRG:4777 0F A8 12 50 14 A8 16 68 FF 0C 50 0E 50 11 A8 14
.byte $C0, $16, $50, $FF, $0B, $C0, $0F, $A8, $12, $50, $14, $38, $16, $68, $FF, $0B ; CPU:$C787 PRG:4787 C0 16 50 FF 0B C0 0F A8 12 50 14 38 16 68 FF 0B
.byte $38, $0E, $A8, $11, $A8, $14, $50, $16, $68, $FF, $FF, $1B, $18, $FF, $1C, $E0 ; CPU:$C797 PRG:4797 38 0E A8 11 A8 14 50 16 68 FF FF 1B 18 FF 1C E0
.byte $FF, $1E, $E0, $FF, $1D, $E0, $FF, $1B, $E0, $FF, $1C, $18, $FF, $19, $E0, $FF ; CPU:$C7A7 PRG:47A7 FF 1E E0 FF 1D E0 FF 1B E0 FF 1C 18 FF 19 E0 FF
.byte $19, $E0, $1D, $E0, $FF, $1A, $18, $1C, $E0, $FF, $19, $18, $1B, $18, $FF, $19 ; CPU:$C7B7 PRG:47B7 19 E0 1D E0 FF 1A 18 1C E0 FF 19 18 1B 18 FF 19
.byte $E0, $1D, $E0, $FF, $19, $E0, $1B, $E0, $1D, $18, $FF, $19, $E0, $1C, $E0, $1E ; CPU:$C7C7 PRG:47C7 E0 1D E0 FF 19 E0 1B E0 1D 18 FF 19 E0 1C E0 1E
.byte $E0, $FF, $19, $18, $1B, $E0, $1E, $18, $FF, $1A, $18, $1C, $18, $1E, $E0, $FF ; CPU:$C7D7 PRG:47D7 E0 FF 19 18 1B E0 1E 18 FF 1A 18 1C 18 1E E0 FF
.byte $19, $E0, $1B, $E0, $1D, $18, $1E, $E0, $FF, $1A, $18, $1B, $18, $1C, $E0, $1E ; CPU:$C7E7 PRG:47E7 19 E0 1B E0 1D 18 1E E0 FF 1A 18 1B 18 1C E0 1E
.byte $E0, $FF, $19, $18, $1B, $18, $1C, $E0, $1E, $18, $FF, $1A, $E0, $1B, $E0, $1D ; CPU:$C7F7 PRG:47F7 E0 FF 19 18 1B 18 1C E0 1E 18 FF 1A E0 1B E0 1D
.byte $18, $1E, $18, $FF, $19, $18, $1A, $E0, $1B, $E0, $1C, $E0, $1E, $E0, $FF, $1A ; CPU:$C807 PRG:4807 18 1E 18 FF 19 18 1A E0 1B E0 1C E0 1E E0 FF 1A
.byte $18, $1B, $18, $1C, $18, $1D, $E0, $1E, $18, $FF, $19, $E0, $1A, $18, $1C, $E0 ; CPU:$C817 PRG:4817 18 1B 18 1C 18 1D E0 1E 18 FF 19 E0 1A 18 1C E0
.byte $1D, $18, $1E, $E0, $FF, $1A, $E0, $1B, $E0, $1B, $18, $1C, $18, $1E, $18, $FF ; CPU:$C827 PRG:4827 1D 18 1E E0 FF 1A E0 1B E0 1B 18 1C 18 1E 18 FF
.byte $FF ; CPU:$C837 PRG:4837 FF
; -----------------------------------------------------------------------------
; Routine: Label_C838
; Global: Branch target inside Label: taken when C838.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_C838:
ldy #$00 ; CPU:$C838 PRG:4838 A0 00
sty ZpFB ; CPU:$C83A PRG:483A 84 FB
ldx #$0A ; CPU:$C83C PRG:483C A2 0A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative16
; Global: Branch target inside Label: taken when C83E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative16:
lda $D0CD,y ; CPU:$C83E PRG:483E B9 CD D0
sta $042F,x ; CPU:$C841 PRG:4841 9D 2F 04
sta $04A4,x ; CPU:$C844 PRG:4844 9D A4 04
iny ; CPU:$C847 PRG:4847 C8
lda $D0CD,y ; CPU:$C848 PRG:4848 B9 CD D0
sta $043C,x ; CPU:$C84B PRG:484B 9D 3C 04
sta $04CB,x ; CPU:$C84E PRG:484E 9D CB 04
iny ; CPU:$C851 PRG:4851 C8
lda $D0CD,y ; CPU:$C852 PRG:4852 B9 CD D0
sta $0463,x ; CPU:$C855 PRG:4855 9D 63 04
lda #$02 ; CPU:$C858 PRG:4858 A9 02
sta $0470,x ; CPU:$C85A PRG:485A 9D 70 04
iny ; CPU:$C85D PRG:485D C8
dex ; CPU:$C85E PRG:485E CA
bpl NmiHandler_OnNonnegative16 ; CPU:$C85F PRG:485F 10 DD
inc $042F ; CPU:$C861 PRG:4861 EE 2F 04
ldx #$06 ; CPU:$C864 PRG:4864 A2 06
; -----------------------------------------------------------------------------
; Routine: Sub_C866
; Global: Branch target inside Label: taken when C866.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C866:
lda $03FB,x ; CPU:$C866 PRG:4866 BD FB 03
and #$08 ; CPU:$C869 PRG:4869 29 08
bne NmiHandler_Loop175 ; CPU:$C86B PRG:486B D0 04
inx ; CPU:$C86D PRG:486D E8
jmp Sub_C866 ; CPU:$C86E PRG:486E 4C 66 C8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop175
; Global: Branch target inside Label: taken when C871.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop175:
lda #$1F ; CPU:$C871 PRG:4871 A9 1F
sta $043C,x ; CPU:$C873 PRG:4873 9D 3C 04
sta $04CB,x ; CPU:$C876 PRG:4876 9D CB 04
ldx #$04 ; CPU:$C879 PRG:4879 A2 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero64
; Global: Branch target inside Label: taken when C87B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero64:
jsr Sub_D169 ; CPU:$C87B PRG:487B 20 69 D1
beq NmiHandler_Loop176 ; CPU:$C87E PRG:487E F0 06
dec $043C,x ; CPU:$C880 PRG:4880 DE 3C 04
dec $043C,x ; CPU:$C883 PRG:4883 DE 3C 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop176
; Global: Branch target inside Label: taken when C886.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop176:
inx ; CPU:$C886 PRG:4886 E8
cpx #$0B ; CPU:$C887 PRG:4887 E0 0B
bne NmiHandler_OnNonzero64 ; CPU:$C889 PRG:4889 D0 F0
ldx #$00 ; CPU:$C88B PRG:488B A2 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero65
; Global: Branch target inside Label: taken when C88D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero65:
ldy $068D ; CPU:$C88D PRG:488D AC 8D 06
lda $C91A,y ; CPU:$C890 PRG:4890 B9 1A C9
and #$1F ; CPU:$C893 PRG:4893 29 1F
adc #$20 ; CPU:$C895 PRG:4895 69 20
sta $0497,x ; CPU:$C897 PRG:4897 9D 97 04
inc $068D ; CPU:$C89A PRG:489A EE 8D 06
lda $C91A,y ; CPU:$C89D PRG:489D B9 1A C9
bmi NmiHandler_Loop177 ; CPU:$C8A0 PRG:48A0 30 04
lda #$02 ; CPU:$C8A2 PRG:48A2 A9 02
bne NmiHandler_Loop178 ; CPU:$C8A4 PRG:48A4 D0 02
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop177
; Global: Branch target inside Label: taken when C8A6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop177:
lda #$FE ; CPU:$C8A6 PRG:48A6 A9 FE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop178
; Global: Branch target inside Label: taken when C8A8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop178:
sta ZpD9,x ; CPU:$C8A8 PRG:48A8 95 D9
lda ZpEC ; CPU:$C8AA PRG:48AA A5 EC
cmp $043C,x ; CPU:$C8AC PRG:48AC DD 3C 04
beq NmiHandler_Loop179 ; CPU:$C8AF PRG:48AF F0 07
bcs NmiHandler_Loop180 ; CPU:$C8B1 PRG:48B1 B0 0B
cmp $042F,x ; CPU:$C8B3 PRG:48B3 DD 2F 04
bcc NmiHandler_Loop181 ; CPU:$C8B6 PRG:48B6 90 0F
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop179
; Global: Branch target inside Label: taken when C8B8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop179:
sta $0422,x ; CPU:$C8B8 PRG:48B8 9D 22 04
jmp Sub_C8CD ; CPU:$C8BB PRG:48BB 4C CD C8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop180
; Global: Branch target inside Label: taken when C8BE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop180:
lda $043C,x ; CPU:$C8BE PRG:48BE BD 3C 04
sta $0422,x ; CPU:$C8C1 PRG:48C1 9D 22 04
jmp Sub_C8CD ; CPU:$C8C4 PRG:48C4 4C CD C8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop181
; Global: Branch target inside Label: taken when C8C7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop181:
lda $042F,x ; CPU:$C8C7 PRG:48C7 BD 2F 04
sta $0422,x ; CPU:$C8CA PRG:48CA 9D 22 04
; -----------------------------------------------------------------------------
; Routine: Sub_C8CD
; Global: Branch target inside Label: taken when C8CD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C8CD:
inx ; CPU:$C8CD PRG:48CD E8
cpx #$0B ; CPU:$C8CE PRG:48CE E0 0B
bne NmiHandler_OnNonzero65 ; CPU:$C8D0 PRG:48D0 D0 BB
ldx #$0B ; CPU:$C8D2 PRG:48D2 A2 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero66
; Global: Branch target inside Label: taken when C8D4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero66:
lda $03FB,x ; CPU:$C8D4 PRG:48D4 BD FB 03
ora #$02 ; CPU:$C8D7 PRG:48D7 09 02
sta $03FB,x ; CPU:$C8D9 PRG:48D9 9D FB 03
ldy $04BE,x ; CPU:$C8DC PRG:48DC BC BE 04
lda $042F,y ; CPU:$C8DF PRG:48DF B9 2F 04
sta $042F,x ; CPU:$C8E2 PRG:48E2 9D 2F 04
sta $04A4,x ; CPU:$C8E5 PRG:48E5 9D A4 04
inc $042F,x ; CPU:$C8E8 PRG:48E8 FE 2F 04
inc $042F,x ; CPU:$C8EB PRG:48EB FE 2F 04
lda $04CB,y ; CPU:$C8EE PRG:48EE B9 CB 04
sta $043C,x ; CPU:$C8F1 PRG:48F1 9D 3C 04
sta $04CB,x ; CPU:$C8F4 PRG:48F4 9D CB 04
lda $0463,y ; CPU:$C8F7 PRG:48F7 B9 63 04
sta $0463,x ; CPU:$C8FA PRG:48FA 9D 63 04
lda $0470,y ; CPU:$C8FD PRG:48FD B9 70 04
sta $0470,x ; CPU:$C900 PRG:4900 9D 70 04
lda $0422,y ; CPU:$C903 PRG:4903 B9 22 04
sta $0422,x ; CPU:$C906 PRG:4906 9D 22 04
inc $0422,x ; CPU:$C909 PRG:4909 FE 22 04
inc $0422,x ; CPU:$C90C PRG:490C FE 22 04
lda $0497,y ; CPU:$C90F PRG:490F B9 97 04
sta $0497,x ; CPU:$C912 PRG:4912 9D 97 04
inx ; CPU:$C915 PRG:4915 E8
cpx #$0D ; CPU:$C916 PRG:4916 E0 0D
bne NmiHandler_OnNonzero66 ; CPU:$C918 PRG:4918 D0 BA
; -----------------------------------------------------------------------------
; Routine: Sub_C91A
; Global: Branch target inside Label: taken when C91A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C91A:
ldx #$00 ; CPU:$C91A PRG:491A A2 00
; -----------------------------------------------------------------------------
; Routine: Sub_C91C
; Global: Branch target inside Label: taken when C91C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C91C:
jsr Sub_CA29 ; CPU:$C91C PRG:491C 20 29 CA
bcc NmiHandler_Loop182 ; CPU:$C91F PRG:491F 90 03
jmp NmiHandler_Loop191 ; CPU:$C921 PRG:4921 4C E2 C9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop182
; Global: Branch target inside Label: taken when C924.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop182:
lda $03FB,x ; CPU:$C924 PRG:4924 BD FB 03
bpl NmiHandler_Loop183 ; CPU:$C927 PRG:4927 10 03
jmp Sub_C9B5 ; CPU:$C929 PRG:4929 4C B5 C9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop183
; Global: Branch target inside Label: taken when C92C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop183:
jsr Sub_C9F8 ; CPU:$C92C PRG:492C 20 F8 C9
bcs NmiHandler_Loop186 ; CPU:$C92F PRG:492F B0 1E
lda $0422,x ; CPU:$C931 PRG:4931 BD 22 04
cmp $058F ; CPU:$C934 PRG:4934 CD 8F 05
bcs NmiHandler_Loop184 ; CPU:$C937 PRG:4937 B0 0B
cmp $043C,x ; CPU:$C939 PRG:4939 DD 3C 04
beq NmiHandler_Loop185 ; CPU:$C93C PRG:493C F0 0E
inc $0422,x ; CPU:$C93E PRG:493E FE 22 04
jmp NmiHandler_Loop190 ; CPU:$C941 PRG:4941 4C DA C9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop184
; Global: Branch target inside Label: taken when C944.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop184:
cmp $042F,x ; CPU:$C944 PRG:4944 DD 2F 04
beq NmiHandler_Loop185 ; CPU:$C947 PRG:4947 F0 03
dec $0422,x ; CPU:$C949 PRG:4949 DE 22 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop185
; Global: Branch target inside Label: taken when C94C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop185:
jmp NmiHandler_Loop190 ; CPU:$C94C PRG:494C 4C DA C9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop186
; Global: Branch target inside Label: taken when C94F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop186:
lda $0422,x ; CPU:$C94F PRG:494F BD 22 04
jsr Sub_D0B5 ; CPU:$C952 PRG:4952 20 B5 D0
lda ZpA1 ; CPU:$C955 PRG:4955 A5 A1
sta $0449,x ; CPU:$C957 PRG:4957 9D 49 04
lda ZpA2 ; CPU:$C95A PRG:495A A5 A2
sta $0456,x ; CPU:$C95C PRG:495C 9D 56 04
lda $03FB,x ; CPU:$C95F PRG:495F BD FB 03
ora #$80 ; CPU:$C962 PRG:4962 09 80
sta $03FB,x ; CPU:$C964 PRG:4964 9D FB 03
lda #$18 ; CPU:$C967 PRG:4967 A9 18
sta $0408,x ; CPU:$C969 PRG:4969 9D 08 04
lda #$00 ; CPU:$C96C PRG:496C A9 00
sta $0415,x ; CPU:$C96E PRG:496E 9D 15 04
lda $0422,x ; CPU:$C971 PRG:4971 BD 22 04
cmp $04CB,x ; CPU:$C974 PRG:4974 DD CB 04
bne NmiHandler_Loop187 ; CPU:$C977 PRG:4977 D0 05
lda #$08 ; CPU:$C979 PRG:4979 A9 08
sta $0415,x ; CPU:$C97B PRG:497B 9D 15 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop187
; Global: Branch target inside Label: taken when C97E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop187:
lda $03FB,x ; CPU:$C97E PRG:497E BD FB 03
and #$06 ; CPU:$C981 PRG:4981 29 06
beq NmiHandler_Loop188 ; CPU:$C983 PRG:4983 F0 1F
ldy $04BE,x ; CPU:$C985 PRG:4985 BC BE 04
lda $03FB,y ; CPU:$C988 PRG:4988 B9 FB 03
bpl NmiHandler_Loop188 ; CPU:$C98B PRG:498B 10 17
lda $0470,y ; CPU:$C98D PRG:498D B9 70 04
sta $0470,x ; CPU:$C990 PRG:4990 9D 70 04
lda $03FB,y ; CPU:$C993 PRG:4993 B9 FB 03
and #$10 ; CPU:$C996 PRG:4996 29 10
ora $03FB,x ; CPU:$C998 PRG:4998 1D FB 03
sta $03FB,x ; CPU:$C99B PRG:499B 9D FB 03
lda $0497,y ; CPU:$C99E PRG:499E B9 97 04
sta $0497,x ; CPU:$C9A1 PRG:49A1 9D 97 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop188
; Global: Branch target inside Label: taken when C9A4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop188:
jsr Sub_99F7 ; CPU:$C9A4 PRG:49A4 20 F7 99
jsr Sub_CF7B ; CPU:$C9A7 PRG:49A7 20 7B CF
jsr Sub_CE64 ; CPU:$C9AA PRG:49AA 20 64 CE
lda #$00 ; CPU:$C9AD PRG:49AD A9 00
sta $0415,x ; CPU:$C9AF PRG:49AF 9D 15 04
jmp NmiHandler_Loop190 ; CPU:$C9B2 PRG:49B2 4C DA C9
; -----------------------------------------------------------------------------
; Routine: Sub_C9B5
; Global: Branch target inside Label: taken when C9B5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C9B5:
jsr Sub_CA29 ; CPU:$C9B5 PRG:49B5 20 29 CA
bcs NmiHandler_Loop191 ; CPU:$C9B8 PRG:49B8 B0 28
jsr Sub_D02A ; CPU:$C9BA PRG:49BA 20 2A D0
jsr Sub_C9F8 ; CPU:$C9BD PRG:49BD 20 F8 C9
bcs NmiHandler_Loop189 ; CPU:$C9C0 PRG:49C0 B0 0E
lda $03FB,x ; CPU:$C9C2 PRG:49C2 BD FB 03
and #$7F ; CPU:$C9C5 PRG:49C5 29 7F
sta $03FB,x ; CPU:$C9C7 PRG:49C7 9D FB 03
jsr Sub_CE64 ; CPU:$C9CA PRG:49CA 20 64 CE
jmp NmiHandler_Loop190 ; CPU:$C9CD PRG:49CD 4C DA C9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop189
; Global: Branch target inside Label: taken when C9D0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop189:
lda $03FB,x ; CPU:$C9D0 PRG:49D0 BD FB 03
and #$01 ; CPU:$C9D3 PRG:49D3 29 01
bne NmiHandler_Loop190 ; CPU:$C9D5 PRG:49D5 D0 03
jsr Sub_CA41 ; CPU:$C9D7 PRG:49D7 20 41 CA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop190
; Global: Branch target inside Label: taken when C9DA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop190:
lda $03FB,x ; CPU:$C9DA PRG:49DA BD FB 03
and #$DF ; CPU:$C9DD PRG:49DD 29 DF
sta $03FB,x ; CPU:$C9DF PRG:49DF 9D FB 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop191
; Global: Branch target inside Label: taken when C9E2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop191:
inx ; CPU:$C9E2 PRG:49E2 E8
cpx #$0D ; CPU:$C9E3 PRG:49E3 E0 0D
bcs NmiHandler_Loop192 ; CPU:$C9E5 PRG:49E5 B0 03
jmp Sub_C91C ; CPU:$C9E7 PRG:49E7 4C 1C C9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop192
; Global: Branch target inside Label: taken when C9EA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop192:
jsr Sub_82A3 ; CPU:$C9EA PRG:49EA 20 A3 82
lda ZpFB ; CPU:$C9ED PRG:49ED A5 FB
cmp #$02 ; CPU:$C9EF PRG:49EF C9 02
bcs NmiHandler_Loop193 ; CPU:$C9F1 PRG:49F1 B0 02
inc ZpFB ; CPU:$C9F3 PRG:49F3 E6 FB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop193
; Global: Branch target inside Label: taken when C9F5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop193:
jmp Sub_C91A ; CPU:$C9F5 PRG:49F5 4C 1A C9
; -----------------------------------------------------------------------------
; Routine: Sub_C9F8
; Global: Branch target inside Label: taken when C9F8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_C9F8:
ldy #$04 ; CPU:$C9F8 PRG:49F8 A0 04
sty Zp6F ; CPU:$C9FA PRG:49FA 84 6F
ldy #$FD ; CPU:$C9FC PRG:49FC A0 FD
sty Zp70 ; CPU:$C9FE PRG:49FE 84 70
lda $03FB,x ; CPU:$CA00 PRG:4A00 BD FB 03
and #$06 ; CPU:$CA03 PRG:4A03 29 06
beq NmiHandler_Loop195 ; CPU:$CA05 PRG:4A05 F0 0F
and #$04 ; CPU:$CA07 PRG:4A07 29 04
bne NmiHandler_Loop194 ; CPU:$CA09 PRG:4A09 D0 07
lda #$FB ; CPU:$CA0B PRG:4A0B A9 FB
sta Zp70 ; CPU:$CA0D PRG:4A0D 85 70
jmp NmiHandler_Loop195 ; CPU:$CA0F PRG:4A0F 4C 16 CA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop194
; Global: Branch target inside Label: taken when CA12.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop194:
lda #$06 ; CPU:$CA12 PRG:4A12 A9 06
sta Zp6F ; CPU:$CA14 PRG:4A14 85 6F
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop195
; Global: Branch target inside Label: taken when CA16.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop195:
lda $058F ; CPU:$CA16 PRG:4A16 AD 8F 05
sec ; CPU:$CA19 PRG:4A19 38
sbc $0422,x ; CPU:$CA1A PRG:4A1A FD 22 04
cmp Zp6F ; CPU:$CA1D PRG:4A1D C5 6F
bcc NmiHandler_Loop196 ; CPU:$CA1F PRG:4A1F 90 06
cmp Zp70 ; CPU:$CA21 PRG:4A21 C5 70
bcs NmiHandler_Loop196 ; CPU:$CA23 PRG:4A23 B0 02
clc ; CPU:$CA25 PRG:4A25 18
rts ; CPU:$CA26 PRG:4A26 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop196
; Global: Branch target inside Label: taken when CA27.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop196:
sec ; CPU:$CA27 PRG:4A27 38
rts ; CPU:$CA28 PRG:4A28 60
; -----------------------------------------------------------------------------
; Routine: Sub_CA29
; Global: Branch target inside Label: taken when CA29.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CA29:
cpx #$0B ; CPU:$CA29 PRG:4A29 E0 0B
bcc NmiHandler_Loop197 ; CPU:$CA2B PRG:4A2B 90 09
lda $0673 ; CPU:$CA2D PRG:4A2D AD 73 06
and #$01 ; CPU:$CA30 PRG:4A30 29 01
beq NmiHandler_Loop198 ; CPU:$CA32 PRG:4A32 F0 0B
clc ; CPU:$CA34 PRG:4A34 18
rts ; CPU:$CA35 PRG:4A35 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop197
; Global: Branch target inside Label: taken when CA36.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop197:
lda $0673 ; CPU:$CA36 PRG:4A36 AD 73 06
and #$01 ; CPU:$CA39 PRG:4A39 29 01
bne NmiHandler_Loop198 ; CPU:$CA3B PRG:4A3B D0 02
clc ; CPU:$CA3D PRG:4A3D 18
rts ; CPU:$CA3E PRG:4A3E 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop198
; Global: Branch target inside Label: taken when CA3F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop198:
sec ; CPU:$CA3F PRG:4A3F 38
rts ; CPU:$CA40 PRG:4A40 60
; -----------------------------------------------------------------------------
; Routine: Sub_CA41
; Global: Branch target inside Label: taken when CA41.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CA41:
lda $04B1,x ; CPU:$CA41 PRG:4A41 BD B1 04
and #$01 ; CPU:$CA44 PRG:4A44 29 01
bne NmiHandler_Loop199 ; CPU:$CA46 PRG:4A46 D0 11
lda $03FB,x ; CPU:$CA48 PRG:4A48 BD FB 03
and #$06 ; CPU:$CA4B PRG:4A4B 29 06
beq NmiHandler_Loop200 ; CPU:$CA4D PRG:4A4D F0 0F
ldy $04BE,x ; CPU:$CA4F PRG:4A4F BC BE 04
lda $04B1,y ; CPU:$CA52 PRG:4A52 B9 B1 04
and #$01 ; CPU:$CA55 PRG:4A55 29 01
beq NmiHandler_Loop200 ; CPU:$CA57 PRG:4A57 F0 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop199
; Global: Branch target inside Label: taken when CA59.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop199:
lda $03EA ; CPU:$CA59 PRG:4A59 AD EA 03
bne NmiHandler_Loop207 ; CPU:$CA5C PRG:4A5C D0 64
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop200
; Global: Branch target inside Label: taken when CA5E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop200:
lda $04B1,x ; CPU:$CA5E PRG:4A5E BD B1 04
and #$80 ; CPU:$CA61 PRG:4A61 29 80
bne NmiHandler_Loop204 ; CPU:$CA63 PRG:4A63 D0 34
lda $0408,x ; CPU:$CA65 PRG:4A65 BD 08 04
cmp #$18 ; CPU:$CA68 PRG:4A68 C9 18
beq NmiHandler_Loop201 ; CPU:$CA6A PRG:4A6A F0 07
lda $03FB,x ; CPU:$CA6C PRG:4A6C BD FB 03
and #$10 ; CPU:$CA6F PRG:4A6F 29 10
bne NmiHandler_Loop208 ; CPU:$CA71 PRG:4A71 D0 5D
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop201
; Global: Branch target inside Label: taken when CA73.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop201:
lda $0422,x ; CPU:$CA73 PRG:4A73 BD 22 04
cmp #$1F ; CPU:$CA76 PRG:4A76 C9 1F
bne NmiHandler_Loop202 ; CPU:$CA78 PRG:4A78 D0 05
lda #$FF ; CPU:$CA7A PRG:4A7A A9 FF
sta $068F ; CPU:$CA7C PRG:4A7C 8D 8F 06
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop202
; Global: Branch target inside Label: taken when CA7F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop202:
dec $0497,x ; CPU:$CA7F PRG:4A7F DE 97 04
beq NmiHandler_Loop204 ; CPU:$CA82 PRG:4A82 F0 15
lda $0497,x ; CPU:$CA84 PRG:4A84 BD 97 04
and #$03 ; CPU:$CA87 PRG:4A87 29 03
bne NmiHandler_Loop203 ; CPU:$CA89 PRG:4A89 D0 03
jsr Sub_CE64 ; CPU:$CA8B PRG:4A8B 20 64 CE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop203
; Global: Branch target inside Label: taken when CA8E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop203:
lda $03FB,x ; CPU:$CA8E PRG:4A8E BD FB 03
and #$EF ; CPU:$CA91 PRG:4A91 29 EF
sta $03FB,x ; CPU:$CA93 PRG:4A93 9D FB 03
jmp Sub_CD26 ; CPU:$CA96 PRG:4A96 4C 26 CD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop204
; Global: Branch target inside Label: taken when CA99.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop204:
lda $04B1,x ; CPU:$CA99 PRG:4A99 BD B1 04
bne NmiHandler_Loop205 ; CPU:$CA9C PRG:4A9C D0 0F
lda $03FB,x ; CPU:$CA9E PRG:4A9E BD FB 03
and #$06 ; CPU:$CAA1 PRG:4AA1 29 06
beq NmiHandler_Loop206 ; CPU:$CAA3 PRG:4AA3 F0 1A
ldy $04BE,x ; CPU:$CAA5 PRG:4AA5 BC BE 04
lda $04B1,y ; CPU:$CAA8 PRG:4AA8 B9 B1 04
beq NmiHandler_Loop206 ; CPU:$CAAB PRG:4AAB F0 12
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop205
; Global: Branch target inside Label: taken when CAAD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop205:
jsr Sub_D09C ; CPU:$CAAD PRG:4AAD 20 9C D0
bcs NmiHandler_Loop206 ; CPU:$CAB0 PRG:4AB0 B0 0D
lda a:ZpB7,y ; CPU:$CAB2 PRG:4AB2 B9 B7 00
and #$10 ; CPU:$CAB5 PRG:4AB5 29 10
bne NmiHandler_Loop206 ; CPU:$CAB7 PRG:4AB7 D0 06
lda $03E3,y ; CPU:$CAB9 PRG:4AB9 B9 E3 03
sta $0470,x ; CPU:$CABC PRG:4ABC 9D 70 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop206
; Global: Branch target inside Label: taken when CABF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop206:
jmp Sub_CAC8 ; CPU:$CABF PRG:4ABF 4C C8 CA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop207
; Global: Branch target inside Label: taken when CAC2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop207:
lda $03EA ; CPU:$CAC2 PRG:4AC2 AD EA 03
sta $0470,x ; CPU:$CAC5 PRG:4AC5 9D 70 04
; -----------------------------------------------------------------------------
; Routine: Sub_CAC8
; Global: Branch target inside Label: taken when CAC8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CAC8:
lda $03FB,x ; CPU:$CAC8 PRG:4AC8 BD FB 03
ora #$10 ; CPU:$CACB PRG:4ACB 09 10
sta $03FB,x ; CPU:$CACD PRG:4ACD 9D FB 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop208
; Global: Branch target inside Label: taken when CAD0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop208:
lda $04B1,x ; CPU:$CAD0 PRG:4AD0 BD B1 04
and #$7F ; CPU:$CAD3 PRG:4AD3 29 7F
sta $04B1,x ; CPU:$CAD5 PRG:4AD5 9D B1 04
jsr Sub_D16F ; CPU:$CAD8 PRG:4AD8 20 6F D1
beq NmiHandler_Loop210 ; CPU:$CADB PRG:4ADB F0 21
lda $03FB,x ; CPU:$CADD PRG:4ADD BD FB 03
and #$40 ; CPU:$CAE0 PRG:4AE0 29 40
bne NmiHandler_Loop209 ; CPU:$CAE2 PRG:4AE2 D0 08
lda $0470,x ; CPU:$CAE4 PRG:4AE4 BD 70 04
bmi NmiHandler_Loop210 ; CPU:$CAE7 PRG:4AE7 30 15
jmp Sub_CAF1 ; CPU:$CAE9 PRG:4AE9 4C F1 CA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop209
; Global: Branch target inside Label: taken when CAEC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop209:
lda $0470,x ; CPU:$CAEC PRG:4AEC BD 70 04
bpl NmiHandler_Loop210 ; CPU:$CAEF PRG:4AEF 10 0D
; -----------------------------------------------------------------------------
; Routine: Sub_CAF1
; Global: Branch target inside Label: taken when CAF1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CAF1:
inc $0497,x ; CPU:$CAF1 PRG:4AF1 FE 97 04
lda $0497,x ; CPU:$CAF4 PRG:4AF4 BD 97 04
and #$01 ; CPU:$CAF7 PRG:4AF7 29 01
beq NmiHandler_Loop211 ; CPU:$CAF9 PRG:4AF9 F0 10
jmp Sub_CC21 ; CPU:$CAFB PRG:4AFB 4C 21 CC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop210
; Global: Branch target inside Label: taken when CAFE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop210:
lda #$1E ; CPU:$CAFE PRG:4AFE A9 1E
sta $0497,x ; CPU:$CB00 PRG:4B00 9D 97 04
lda $0470,x ; CPU:$CB03 PRG:4B03 BD 70 04
bpl NmiHandler_Loop211 ; CPU:$CB06 PRG:4B06 10 03
jmp Sub_CC21 ; CPU:$CB08 PRG:4B08 4C 21 CC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop211
; Global: Branch target inside Label: taken when CB0B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop211:
cpx #$0B ; CPU:$CB0B PRG:4B0B E0 0B
bcc NmiHandler_Loop212 ; CPU:$CB0D PRG:4B0D 90 0E
jsr Sub_D17C ; CPU:$CB0F PRG:4B0F 20 7C D1
cmp #$61 ; CPU:$CB12 PRG:4B12 C9 61
bcc NmiHandler_Loop214 ; CPU:$CB14 PRG:4B14 90 2E
lda $0470,y ; CPU:$CB16 PRG:4B16 B9 70 04
sta $0470,x ; CPU:$CB19 PRG:4B19 9D 70 04
rts ; CPU:$CB1C PRG:4B1C 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop212
; Global: Branch target inside Label: taken when CB1D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop212:
jsr Sub_D169 ; CPU:$CB1D PRG:4B1D 20 69 D1
beq NmiHandler_Loop214 ; CPU:$CB20 PRG:4B20 F0 22
ldy $04BE,x ; CPU:$CB22 PRG:4B22 BC BE 04
jsr Sub_D16F ; CPU:$CB25 PRG:4B25 20 6F D1
beq NmiHandler_Loop213 ; CPU:$CB28 PRG:4B28 F0 09
lda $0470,x ; CPU:$CB2A PRG:4B2A BD 70 04
sta $0470,y ; CPU:$CB2D PRG:4B2D 99 70 04
jmp NmiHandler_Loop214 ; CPU:$CB30 PRG:4B30 4C 44 CB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop213
; Global: Branch target inside Label: taken when CB33.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop213:
lda $047D,y ; CPU:$CB33 PRG:4B33 B9 7D 04
sec ; CPU:$CB36 PRG:4B36 38
sbc $047D,x ; CPU:$CB37 PRG:4B37 FD 7D 04
cmp #$60 ; CPU:$CB3A PRG:4B3A C9 60
bcs NmiHandler_Loop214 ; CPU:$CB3C PRG:4B3C B0 06
lda #$01 ; CPU:$CB3E PRG:4B3E A9 01
sta $0497,y ; CPU:$CB40 PRG:4B40 99 97 04
rts ; CPU:$CB43 PRG:4B43 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop214
; Global: Branch target inside Label: taken when CB44.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop214:
lda $04B1,x ; CPU:$CB44 PRG:4B44 BD B1 04
and #$01 ; CPU:$CB47 PRG:4B47 29 01
beq NmiHandler_Loop215 ; CPU:$CB49 PRG:4B49 F0 05
lda #$02 ; CPU:$CB4B PRG:4B4B A9 02
sta $055D ; CPU:$CB4D PRG:4B4D 8D 5D 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop215
; Global: Branch target inside Label: taken when CB50.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop215:
lda $0415,x ; CPU:$CB50 PRG:4B50 BD 15 04
bne NmiHandler_Loop218 ; CPU:$CB53 PRG:4B53 D0 4E
cpx #$0B ; CPU:$CB55 PRG:4B55 E0 0B
bcs NmiHandler_Loop216 ; CPU:$CB57 PRG:4B57 B0 0E
lda $058F ; CPU:$CB59 PRG:4B59 AD 8F 05
clc ; CPU:$CB5C PRG:4B5C 18
adc #$03 ; CPU:$CB5D PRG:4B5D 69 03
cmp $0422,x ; CPU:$CB5F PRG:4B5F DD 22 04
beq NmiHandler_Loop217 ; CPU:$CB62 PRG:4B62 F0 16
jmp Sub_CB72 ; CPU:$CB64 PRG:4B64 4C 72 CB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop216
; Global: Branch target inside Label: taken when CB67.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop216:
lda $058F ; CPU:$CB67 PRG:4B67 AD 8F 05
clc ; CPU:$CB6A PRG:4B6A 18
adc #$05 ; CPU:$CB6B PRG:4B6B 69 05
cmp $0422,x ; CPU:$CB6D PRG:4B6D DD 22 04
beq NmiHandler_Loop217 ; CPU:$CB70 PRG:4B70 F0 08
; -----------------------------------------------------------------------------
; Routine: Sub_CB72
; Global: Branch target inside Label: taken when CB72.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CB72:
lda $043C,x ; CPU:$CB72 PRG:4B72 BD 3C 04
cmp $0422,x ; CPU:$CB75 PRG:4B75 DD 22 04
bne NmiHandler_Loop218 ; CPU:$CB78 PRG:4B78 D0 29
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop217
; Global: Branch target inside Label: taken when CB7A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop217:
asl a ; CPU:$CB7A PRG:4B7A 0A
clc ; CPU:$CB7B PRG:4B7B 18
adc #$76 ; CPU:$CB7C PRG:4B7C 69 76
sta Zp73 ; CPU:$CB7E PRG:4B7E 85 73
lda #$D2 ; CPU:$CB80 PRG:4B80 A9 D2
adc #$00 ; CPU:$CB82 PRG:4B82 69 00
sta Zp74 ; CPU:$CB84 PRG:4B84 85 74
ldy #$00 ; CPU:$CB86 PRG:4B86 A0 00
lda (Zp73),y ; CPU:$CB88 PRG:4B88 B1 73
sta Zp71 ; CPU:$CB8A PRG:4B8A 85 71
iny ; CPU:$CB8C PRG:4B8C C8
lda (Zp73),y ; CPU:$CB8D PRG:4B8D B1 73
cmp $0456,x ; CPU:$CB8F PRG:4B8F DD 56 04
bne NmiHandler_Loop218 ; CPU:$CB92 PRG:4B92 D0 0F
lda $0449,x ; CPU:$CB94 PRG:4B94 BD 49 04
cmp Zp71 ; CPU:$CB97 PRG:4B97 C5 71
bne NmiHandler_Loop218 ; CPU:$CB99 PRG:4B99 D0 08
lda #$FE ; CPU:$CB9B PRG:4B9B A9 FE
sta $0470,x ; CPU:$CB9D PRG:4B9D 9D 70 04
jmp Sub_CDAB ; CPU:$CBA0 PRG:4BA0 4C AB CD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop218
; Global: Branch target inside Label: taken when CBA3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop218:
inc $0408,x ; CPU:$CBA3 PRG:4BA3 FE 08 04
inc $0408,x ; CPU:$CBA6 PRG:4BA6 FE 08 04
inc $0415,x ; CPU:$CBA9 PRG:4BA9 FE 15 04
inc $0415,x ; CPU:$CBAC PRG:4BAC FE 15 04
lda #$02 ; CPU:$CBAF PRG:4BAF A9 02
clc ; CPU:$CBB1 PRG:4BB1 18
adc $047D,x ; CPU:$CBB2 PRG:4BB2 7D 7D 04
sta $047D,x ; CPU:$CBB5 PRG:4BB5 9D 7D 04
lda $048A,x ; CPU:$CBB8 PRG:4BB8 BD 8A 04
adc #$00 ; CPU:$CBBB PRG:4BBB 69 00
sta $048A,x ; CPU:$CBBD PRG:4BBD 9D 8A 04
jsr Sub_CD26 ; CPU:$CBC0 PRG:4BC0 20 26 CD
jsr Sub_CE64 ; CPU:$CBC3 PRG:4BC3 20 64 CE
lda $0415,x ; CPU:$CBC6 PRG:4BC6 BD 15 04
cmp #$08 ; CPU:$CBC9 PRG:4BC9 C9 08
bne NmiHandler_Loop220 ; CPU:$CBCB PRG:4BCB D0 43
lda #$00 ; CPU:$CBCD PRG:4BCD A9 00
sta $0415,x ; CPU:$CBCF PRG:4BCF 9D 15 04
lda $0449,x ; CPU:$CBD2 PRG:4BD2 BD 49 04
clc ; CPU:$CBD5 PRG:4BD5 18
adc #$20 ; CPU:$CBD6 PRG:4BD6 69 20
sta $0449,x ; CPU:$CBD8 PRG:4BD8 9D 49 04
lda $0456,x ; CPU:$CBDB PRG:4BDB BD 56 04
adc #$00 ; CPU:$CBDE PRG:4BDE 69 00
sta $0456,x ; CPU:$CBE0 PRG:4BE0 9D 56 04
cmp #$23 ; CPU:$CBE3 PRG:4BE3 C9 23
bne NmiHandler_Loop219 ; CPU:$CBE5 PRG:4BE5 D0 14
lda $0449,x ; CPU:$CBE7 PRG:4BE7 BD 49 04
cmp #$C0 ; CPU:$CBEA PRG:4BEA C9 C0
bne NmiHandler_Loop220 ; CPU:$CBEC PRG:4BEC D0 22
lda #$00 ; CPU:$CBEE PRG:4BEE A9 00
sta $0449,x ; CPU:$CBF0 PRG:4BF0 9D 49 04
lda #$28 ; CPU:$CBF3 PRG:4BF3 A9 28
sta $0456,x ; CPU:$CBF5 PRG:4BF5 9D 56 04
jmp NmiHandler_Loop220 ; CPU:$CBF8 PRG:4BF8 4C 10 CC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop219
; Global: Branch target inside Label: taken when CBFB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop219:
cmp #$2B ; CPU:$CBFB PRG:4BFB C9 2B
bne NmiHandler_Loop220 ; CPU:$CBFD PRG:4BFD D0 11
lda $0449,x ; CPU:$CBFF PRG:4BFF BD 49 04
cmp #$C0 ; CPU:$CC02 PRG:4C02 C9 C0
bne NmiHandler_Loop220 ; CPU:$CC04 PRG:4C04 D0 0A
lda #$00 ; CPU:$CC06 PRG:4C06 A9 00
sta $0449,x ; CPU:$CC08 PRG:4C08 9D 49 04
lda #$20 ; CPU:$CC0B PRG:4C0B A9 20
sta $0456,x ; CPU:$CC0D PRG:4C0D 9D 56 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop220
; Global: Branch target inside Label: taken when CC10.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop220:
lda $0408,x ; CPU:$CC10 PRG:4C10 BD 08 04
cmp #$30 ; CPU:$CC13 PRG:4C13 C9 30
beq NmiHandler_Loop221 ; CPU:$CC15 PRG:4C15 F0 01
rts ; CPU:$CC17 PRG:4C17 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop221
; Global: Branch target inside Label: taken when CC18.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop221:
lda #$00 ; CPU:$CC18 PRG:4C18 A9 00
sta $0408,x ; CPU:$CC1A PRG:4C1A 9D 08 04
inc $0422,x ; CPU:$CC1D PRG:4C1D FE 22 04
rts ; CPU:$CC20 PRG:4C20 60
; -----------------------------------------------------------------------------
; Routine: Sub_CC21
; Global: Branch target inside Label: taken when CC21.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CC21:
cpx #$0B ; CPU:$CC21 PRG:4C21 E0 0B
bcc NmiHandler_Loop223 ; CPU:$CC23 PRG:4C23 90 1C
jsr Sub_D17C ; CPU:$CC25 PRG:4C25 20 7C D1
cmp #$60 ; CPU:$CC28 PRG:4C28 C9 60
bcs NmiHandler_Loop224 ; CPU:$CC2A PRG:4C2A B0 29
jsr Sub_D16F ; CPU:$CC2C PRG:4C2C 20 6F D1
beq NmiHandler_Loop222 ; CPU:$CC2F PRG:4C2F F0 09
lda $0470,x ; CPU:$CC31 PRG:4C31 BD 70 04
sta $0470,y ; CPU:$CC34 PRG:4C34 99 70 04
jmp NmiHandler_Loop224 ; CPU:$CC37 PRG:4C37 4C 55 CC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop222
; Global: Branch target inside Label: taken when CC3A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop222:
lda $0470,y ; CPU:$CC3A PRG:4C3A B9 70 04
sta $0470,x ; CPU:$CC3D PRG:4C3D 9D 70 04
rts ; CPU:$CC40 PRG:4C40 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop223
; Global: Branch target inside Label: taken when CC41.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop223:
jsr Sub_D169 ; CPU:$CC41 PRG:4C41 20 69 D1
beq NmiHandler_Loop224 ; CPU:$CC44 PRG:4C44 F0 0F
ldy $04BE,x ; CPU:$CC46 PRG:4C46 BC BE 04
lda $047D,y ; CPU:$CC49 PRG:4C49 B9 7D 04
sec ; CPU:$CC4C PRG:4C4C 38
sbc $047D,x ; CPU:$CC4D PRG:4C4D FD 7D 04
cmp #$61 ; CPU:$CC50 PRG:4C50 C9 61
bcc NmiHandler_Loop224 ; CPU:$CC52 PRG:4C52 90 01
rts ; CPU:$CC54 PRG:4C54 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop224
; Global: Branch target inside Label: taken when CC55.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop224:
lda $04B1,x ; CPU:$CC55 PRG:4C55 BD B1 04
and #$01 ; CPU:$CC58 PRG:4C58 29 01
beq NmiHandler_Loop225 ; CPU:$CC5A PRG:4C5A F0 05
lda #$FE ; CPU:$CC5C PRG:4C5C A9 FE
sta $055D ; CPU:$CC5E PRG:4C5E 8D 5D 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop225
; Global: Branch target inside Label: taken when CC61.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop225:
lda $0415,x ; CPU:$CC61 PRG:4C61 BD 15 04
bne NmiHandler_Loop228 ; CPU:$CC64 PRG:4C64 D0 4F
lda $042F,x ; CPU:$CC66 PRG:4C66 BD 2F 04
cmp $0422,x ; CPU:$CC69 PRG:4C69 DD 22 04
beq NmiHandler_Loop227 ; CPU:$CC6C PRG:4C6C F0 1E
jsr Sub_D169 ; CPU:$CC6E PRG:4C6E 20 69 D1
bne NmiHandler_Loop226 ; CPU:$CC71 PRG:4C71 D0 0E
lda $058F ; CPU:$CC73 PRG:4C73 AD 8F 05
sec ; CPU:$CC76 PRG:4C76 38
sbc #$03 ; CPU:$CC77 PRG:4C77 E9 03
cmp $0422,x ; CPU:$CC79 PRG:4C79 DD 22 04
beq NmiHandler_Loop227 ; CPU:$CC7C PRG:4C7C F0 0E
jmp NmiHandler_Loop228 ; CPU:$CC7E PRG:4C7E 4C B5 CC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop226
; Global: Branch target inside Label: taken when CC81.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop226:
lda $058F ; CPU:$CC81 PRG:4C81 AD 8F 05
sec ; CPU:$CC84 PRG:4C84 38
sbc #$05 ; CPU:$CC85 PRG:4C85 E9 05
cmp $0422,x ; CPU:$CC87 PRG:4C87 DD 22 04
bne NmiHandler_Loop228 ; CPU:$CC8A PRG:4C8A D0 29
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop227
; Global: Branch target inside Label: taken when CC8C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop227:
asl a ; CPU:$CC8C PRG:4C8C 0A
clc ; CPU:$CC8D PRG:4C8D 18
adc #$76 ; CPU:$CC8E PRG:4C8E 69 76
sta Zp73 ; CPU:$CC90 PRG:4C90 85 73
lda #$D2 ; CPU:$CC92 PRG:4C92 A9 D2
adc #$00 ; CPU:$CC94 PRG:4C94 69 00
sta Zp74 ; CPU:$CC96 PRG:4C96 85 74
ldy #$00 ; CPU:$CC98 PRG:4C98 A0 00
lda (Zp73),y ; CPU:$CC9A PRG:4C9A B1 73
sta Zp71 ; CPU:$CC9C PRG:4C9C 85 71
iny ; CPU:$CC9E PRG:4C9E C8
lda (Zp73),y ; CPU:$CC9F PRG:4C9F B1 73
cmp $0456,x ; CPU:$CCA1 PRG:4CA1 DD 56 04
bne NmiHandler_Loop228 ; CPU:$CCA4 PRG:4CA4 D0 0F
lda $0449,x ; CPU:$CCA6 PRG:4CA6 BD 49 04
cmp Zp71 ; CPU:$CCA9 PRG:4CA9 C5 71
bne NmiHandler_Loop228 ; CPU:$CCAB PRG:4CAB D0 08
lda #$02 ; CPU:$CCAD PRG:4CAD A9 02
sta $0470,x ; CPU:$CCAF PRG:4CAF 9D 70 04
jmp Sub_CDAB ; CPU:$CCB2 PRG:4CB2 4C AB CD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop228
; Global: Branch target inside Label: taken when CCB5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop228:
lda $0415,x ; CPU:$CCB5 PRG:4CB5 BD 15 04
bne NmiHandler_Loop230 ; CPU:$CCB8 PRG:4CB8 D0 3C
lda #$08 ; CPU:$CCBA PRG:4CBA A9 08
sta $0415,x ; CPU:$CCBC PRG:4CBC 9D 15 04
sec ; CPU:$CCBF PRG:4CBF 38
lda $0449,x ; CPU:$CCC0 PRG:4CC0 BD 49 04
sbc #$20 ; CPU:$CCC3 PRG:4CC3 E9 20
sta $0449,x ; CPU:$CCC5 PRG:4CC5 9D 49 04
lda $0456,x ; CPU:$CCC8 PRG:4CC8 BD 56 04
sbc #$00 ; CPU:$CCCB PRG:4CCB E9 00
sta $0456,x ; CPU:$CCCD PRG:4CCD 9D 56 04
cmp #$1F ; CPU:$CCD0 PRG:4CD0 C9 1F
bne NmiHandler_Loop229 ; CPU:$CCD2 PRG:4CD2 D0 0D
lda #$2B ; CPU:$CCD4 PRG:4CD4 A9 2B
sta $0456,x ; CPU:$CCD6 PRG:4CD6 9D 56 04
lda #$A0 ; CPU:$CCD9 PRG:4CD9 A9 A0
sta $0449,x ; CPU:$CCDB PRG:4CDB 9D 49 04
jmp NmiHandler_Loop230 ; CPU:$CCDE PRG:4CDE 4C F6 CC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop229
; Global: Branch target inside Label: taken when CCE1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop229:
cmp #$27 ; CPU:$CCE1 PRG:4CE1 C9 27
bne NmiHandler_Loop230 ; CPU:$CCE3 PRG:4CE3 D0 11
lda $0449,x ; CPU:$CCE5 PRG:4CE5 BD 49 04
cmp #$E0 ; CPU:$CCE8 PRG:4CE8 C9 E0
bne NmiHandler_Loop230 ; CPU:$CCEA PRG:4CEA D0 0A
lda #$A0 ; CPU:$CCEC PRG:4CEC A9 A0
sta $0449,x ; CPU:$CCEE PRG:4CEE 9D 49 04
lda #$23 ; CPU:$CCF1 PRG:4CF1 A9 23
sta $0456,x ; CPU:$CCF3 PRG:4CF3 9D 56 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop230
; Global: Branch target inside Label: taken when CCF6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop230:
lda $0408,x ; CPU:$CCF6 PRG:4CF6 BD 08 04
bne NmiHandler_Loop231 ; CPU:$CCF9 PRG:4CF9 D0 08
lda #$30 ; CPU:$CCFB PRG:4CFB A9 30
sta $0408,x ; CPU:$CCFD PRG:4CFD 9D 08 04
dec $0422,x ; CPU:$CD00 PRG:4D00 DE 22 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop231
; Global: Branch target inside Label: taken when CD03.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop231:
dec $0408,x ; CPU:$CD03 PRG:4D03 DE 08 04
dec $0408,x ; CPU:$CD06 PRG:4D06 DE 08 04
dec $0415,x ; CPU:$CD09 PRG:4D09 DE 15 04
dec $0415,x ; CPU:$CD0C PRG:4D0C DE 15 04
lda $047D,x ; CPU:$CD0F PRG:4D0F BD 7D 04
sec ; CPU:$CD12 PRG:4D12 38
sbc #$02 ; CPU:$CD13 PRG:4D13 E9 02
sta $047D,x ; CPU:$CD15 PRG:4D15 9D 7D 04
lda $048A,x ; CPU:$CD18 PRG:4D18 BD 8A 04
sbc #$00 ; CPU:$CD1B PRG:4D1B E9 00
sta $048A,x ; CPU:$CD1D PRG:4D1D 9D 8A 04
jsr Sub_CD26 ; CPU:$CD20 PRG:4D20 20 26 CD
jmp Sub_CE64 ; CPU:$CD23 PRG:4D23 4C 64 CE
; -----------------------------------------------------------------------------
; Routine: Sub_CD26
; Global: Branch target inside Label: taken when CD26.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CD26:
lda $04B1,x ; CPU:$CD26 PRG:4D26 BD B1 04
sta Zp72 ; CPU:$CD29 PRG:4D29 85 72
ldy #$07 ; CPU:$CD2B PRG:4D2B A0 07
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero67
; Global: Branch target inside Label: taken when CD2D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero67:
lsr Zp72 ; CPU:$CD2D PRG:4D2D 46 72
bcs NmiHandler_Loop233 ; CPU:$CD2F PRG:4D2F B0 08
beq NmiHandler_Loop232 ; CPU:$CD31 PRG:4D31 F0 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero8
; Global: Branch target inside Label: taken when CD33.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero8:
iny ; CPU:$CD33 PRG:4D33 C8
cpy #$0C ; CPU:$CD34 PRG:4D34 C0 0C
bne NmiHandler_OnNonzero67 ; CPU:$CD36 PRG:4D36 D0 F5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop232
; Global: Branch target inside Label: taken when CD38.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop232:
rts ; CPU:$CD38 PRG:4D38 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop233
; Global: Branch target inside Label: taken when CD39.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop233:
lda a:ZpB7,y ; CPU:$CD39 PRG:4D39 B9 B7 00
and #$20 ; CPU:$CD3C PRG:4D3C 29 20
beq NmiHandler_Loop236 ; CPU:$CD3E PRG:4D3E F0 44
lda #$00 ; CPU:$CD40 PRG:4D40 A9 00
sta Zp6F ; CPU:$CD42 PRG:4D42 85 6F
lda $03FB,x ; CPU:$CD44 PRG:4D44 BD FB 03
and #$10 ; CPU:$CD47 PRG:4D47 29 10
beq NmiHandler_OnZero9 ; CPU:$CD49 PRG:4D49 F0 1B
lda $0470,x ; CPU:$CD4B PRG:4D4B BD 70 04
bpl NmiHandler_Loop234 ; CPU:$CD4E PRG:4D4E 10 04
lda #$FF ; CPU:$CD50 PRG:4D50 A9 FF
sta Zp6F ; CPU:$CD52 PRG:4D52 85 6F
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop234
; Global: Branch target inside Label: taken when CD54.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop234:
lda $0470,x ; CPU:$CD54 PRG:4D54 BD 70 04
clc ; CPU:$CD57 PRG:4D57 18
adc $039D,y ; CPU:$CD58 PRG:4D58 79 9D 03
sta $039D,y ; CPU:$CD5B PRG:4D5B 99 9D 03
lda Zp6F ; CPU:$CD5E PRG:4D5E A5 6F
adc $03AE,y ; CPU:$CD60 PRG:4D60 79 AE 03
sta $03AE,y ; CPU:$CD63 PRG:4D63 99 AE 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero9
; Global: Branch target inside Label: taken when CD66.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero9:
lda $0422,x ; CPU:$CD66 PRG:4D66 BD 22 04
sta a:ZpE5,y ; CPU:$CD69 PRG:4D69 99 E5 00
lda a:ZpB7,y ; CPU:$CD6C PRG:4D6C B9 B7 00
and #$10 ; CPU:$CD6F PRG:4D6F 29 10
beq NmiHandler_OnZero8 ; CPU:$CD71 PRG:4D71 F0 C0
jsr Sub_D175 ; CPU:$CD73 PRG:4D73 20 75 D1
beq NmiHandler_Loop235 ; CPU:$CD76 PRG:4D76 F0 09
lda a:ZpE5,y ; CPU:$CD78 PRG:4D78 B9 E5 00
sec ; CPU:$CD7B PRG:4D7B 38
sbc #$01 ; CPU:$CD7C PRG:4D7C E9 01
sta a:ZpE5,y ; CPU:$CD7E PRG:4D7E 99 E5 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop235
; Global: Branch target inside Label: taken when CD81.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop235:
jmp NmiHandler_OnZero8 ; CPU:$CD81 PRG:4D81 4C 33 CD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop236
; Global: Branch target inside Label: taken when CD84.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop236:
lda $047D,x ; CPU:$CD84 PRG:4D84 BD 7D 04
sta $039D,y ; CPU:$CD87 PRG:4D87 99 9D 03
lda $048A,x ; CPU:$CD8A PRG:4D8A BD 8A 04
sta $03AE,y ; CPU:$CD8D PRG:4D8D 99 AE 03
lda a:ZpB7,y ; CPU:$CD90 PRG:4D90 B9 B7 00
and #$10 ; CPU:$CD93 PRG:4D93 29 10
beq NmiHandler_OnZero9 ; CPU:$CD95 PRG:4D95 F0 CF
lda $039D,y ; CPU:$CD97 PRG:4D97 B9 9D 03
sec ; CPU:$CD9A PRG:4D9A 38
sbc #$30 ; CPU:$CD9B PRG:4D9B E9 30
sta $039D,y ; CPU:$CD9D PRG:4D9D 99 9D 03
lda $03AE,y ; CPU:$CDA0 PRG:4DA0 B9 AE 03
sbc #$00 ; CPU:$CDA3 PRG:4DA3 E9 00
sta $03AE,y ; CPU:$CDA5 PRG:4DA5 99 AE 03
jmp NmiHandler_OnZero9 ; CPU:$CDA8 PRG:4DA8 4C 66 CD
; -----------------------------------------------------------------------------
; Routine: Sub_CDAB
; Global: Branch target inside Label: taken when CDAB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CDAB:
lda $03FB,x ; CPU:$CDAB PRG:4DAB BD FB 03
and #$EF ; CPU:$CDAE PRG:4DAE 29 EF
sta $03FB,x ; CPU:$CDB0 PRG:4DB0 9D FB 03
jsr Sub_CD26 ; CPU:$CDB3 PRG:4DB3 20 26 CD
lda $04B1,x ; CPU:$CDB6 PRG:4DB6 BD B1 04
and #$01 ; CPU:$CDB9 PRG:4DB9 29 01
beq NmiHandler_Loop237 ; CPU:$CDBB PRG:4DBB F0 05
lda #$00 ; CPU:$CDBD PRG:4DBD A9 00
sta $055D ; CPU:$CDBF PRG:4DBF 8D 5D 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop237
; Global: Branch target inside Label: taken when CDC2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop237:
rts ; CPU:$CDC2 PRG:4DC2 60
; ---- data $CDC3-$CE63 (161 bytes) ----
.byte $A2, $00, $20, $8D, $D0, $AD, $76, $D2, $8D, $49, $04, $AD, $77, $D2, $8D, $56 ; CPU:$CDC3 PRG:4DC3 A2 00 20 8D D0 AD 76 D2 8D 49 04 AD 77 D2 8D 56
.byte $04, $A9, $00, $8D, $2F, $04, $8D, $A4, $04, $A9, $0C, $8D, $3C, $04, $8D, $CB ; CPU:$CDD3 PRG:4DD3 04 A9 00 8D 2F 04 8D A4 04 A9 0C 8D 3C 04 8D CB
.byte $04, $A9, $0E, $8D, $63, $04, $A9, $C0, $8D, $FB, $03, $A9, $18, $8D, $08, $04 ; CPU:$CDE3 PRG:4DE3 04 A9 0E 8D 63 04 A9 C0 8D FB 03 A9 18 8D 08 04
.byte $20, $64, $CE, $20, $A3, $82, $AD, $6C, $06, $F0, $F8, $AD, $73, $06, $29, $01 ; CPU:$CDF3 PRG:4DF3 20 64 CE 20 A3 82 AD 6C 06 F0 F8 AD 73 06 29 01
.byte $D0, $14, $A9, $02, $8D, $5D, $05, $EE, $08, $04, $EE, $08, $04, $EE, $15, $04 ; CPU:$CE03 PRG:4E03 D0 14 A9 02 8D 5D 05 EE 08 04 EE 08 04 EE 15 04
.byte $EE, $15, $04, $20, $64, $CE, $20, $A3, $82, $AD, $15, $04, $C9, $08, $D0, $16 ; CPU:$CE13 PRG:4E13 EE 15 04 20 64 CE 20 A3 82 AD 15 04 C9 08 D0 16
.byte $A9, $00, $8D, $15, $04, $18, $A9, $20, $6D, $49, $04, $8D, $49, $04, $A9, $00 ; CPU:$CE23 PRG:4E23 A9 00 8D 15 04 18 A9 20 6D 49 04 8D 49 04 A9 00
.byte $6D, $56, $04, $8D, $56, $04, $AD, $08, $04, $C9, $48, $D0, $BE, $A9, $C0, $8D ; CPU:$CE33 PRG:4E33 6D 56 04 8D 56 04 AD 08 04 C9 48 D0 BE A9 C0 8D
.byte $FB, $03, $A9, $01, $8D, $B1, $04, $A9, $00, $8D, $6C, $06, $A9, $01, $8D, $22 ; CPU:$CE43 PRG:4E43 FB 03 A9 01 8D B1 04 A9 00 8D 6C 06 A9 01 8D 22
.byte $04, $20, $F7, $99, $A9, $18, $8D, $08, $04, $A9, $00, $8D, $15, $04, $20, $66 ; CPU:$CE53 PRG:4E53 04 20 F7 99 A9 18 8D 08 04 A9 00 8D 15 04 20 66
.byte $82 ; CPU:$CE63 PRG:4E63 82
; -----------------------------------------------------------------------------
; Routine: Sub_CE64
; Global: Branch target inside Label: taken when CE64.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CE64:
lda $047D,x ; CPU:$CE64 PRG:4E64 BD 7D 04
sta Zp71 ; CPU:$CE67 PRG:4E67 85 71
lda $048A,x ; CPU:$CE69 PRG:4E69 BD 8A 04
sta Zp72 ; CPU:$CE6C PRG:4E6C 85 72
lda $0684 ; CPU:$CE6E PRG:4E6E AD 84 06
sec ; CPU:$CE71 PRG:4E71 38
sbc Zp71 ; CPU:$CE72 PRG:4E72 E5 71
sta Zp71 ; CPU:$CE74 PRG:4E74 85 71
lda $0685 ; CPU:$CE76 PRG:4E76 AD 85 06
sbc Zp72 ; CPU:$CE79 PRG:4E79 E5 72
beq NmiHandler_Loop238 ; CPU:$CE7B PRG:4E7B F0 05
cmp #$FF ; CPU:$CE7D PRG:4E7D C9 FF
beq NmiHandler_Loop239 ; CPU:$CE7F PRG:4E7F F0 08
rts ; CPU:$CE81 PRG:4E81 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop238
; Global: Branch target inside Label: taken when CE82.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop238:
lda Zp71 ; CPU:$CE82 PRG:4E82 A5 71
cmp #$C0 ; CPU:$CE84 PRG:4E84 C9 C0
bcc NmiHandler_Loop240 ; CPU:$CE86 PRG:4E86 90 08
rts ; CPU:$CE88 PRG:4E88 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop239
; Global: Branch target inside Label: taken when CE89.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop239:
lda Zp71 ; CPU:$CE89 PRG:4E89 A5 71
cmp #$40 ; CPU:$CE8B PRG:4E8B C9 40
bcs NmiHandler_Loop240 ; CPU:$CE8D PRG:4E8D B0 01
rts ; CPU:$CE8F PRG:4E8F 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop240
; Global: Branch target inside Label: taken when CE90.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop240:
lda $0449,x ; CPU:$CE90 PRG:4E90 BD 49 04
sta Zp71 ; CPU:$CE93 PRG:4E93 85 71
lda $0456,x ; CPU:$CE95 PRG:4E95 BD 56 04
sta Zp72 ; CPU:$CE98 PRG:4E98 85 72
jsr Sub_D175 ; CPU:$CE9A PRG:4E9A 20 75 D1
bne NmiHandler_Loop241 ; CPU:$CE9D PRG:4E9D D0 07
lda $0408,x ; CPU:$CE9F PRG:4E9F BD 08 04
cmp #$22 ; CPU:$CEA2 PRG:4EA2 C9 22
bcc NmiHandler_Loop242 ; CPU:$CEA4 PRG:4EA4 90 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop241
; Global: Branch target inside Label: taken when CEA6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop241:
jmp Sub_CEE0 ; CPU:$CEA6 PRG:4EA6 4C E0 CE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop242
; Global: Branch target inside Label: taken when CEA9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop242:
lda $0415,x ; CPU:$CEA9 PRG:4EA9 BD 15 04
sta ZpA4 ; CPU:$CEAC PRG:4EAC 85 A4
lda #$20 ; CPU:$CEAE PRG:4EAE A9 20
clc ; CPU:$CEB0 PRG:4EB0 18
adc Zp71 ; CPU:$CEB1 PRG:4EB1 65 71
sta Zp71 ; CPU:$CEB3 PRG:4EB3 85 71
lda #$00 ; CPU:$CEB5 PRG:4EB5 A9 00
adc Zp72 ; CPU:$CEB7 PRG:4EB7 65 72
sta Zp72 ; CPU:$CEB9 PRG:4EB9 85 72
lda $0463,x ; CPU:$CEBB PRG:4EBB BD 63 04
clc ; CPU:$CEBE PRG:4EBE 18
adc Zp71 ; CPU:$CEBF PRG:4EBF 65 71
sta Zp71 ; CPU:$CEC1 PRG:4EC1 85 71
lda #$00 ; CPU:$CEC3 PRG:4EC3 A9 00
adc Zp72 ; CPU:$CEC5 PRG:4EC5 65 72
sta Zp72 ; CPU:$CEC7 PRG:4EC7 85 72
jsr Sub_CF4C ; CPU:$CEC9 PRG:4EC9 20 4C CF
lda Zp9F ; CPU:$CECC PRG:4ECC A5 9F
clc ; CPU:$CECE PRG:4ECE 18
adc #$03 ; CPU:$CECF PRG:4ECF 69 03
sta Zp9F ; CPU:$CED1 PRG:4ED1 85 9F
lda ZpA0 ; CPU:$CED3 PRG:4ED3 A5 A0
adc #$00 ; CPU:$CED5 PRG:4ED5 69 00
sta ZpA0 ; CPU:$CED7 PRG:4ED7 85 A0
lda #$07 ; CPU:$CED9 PRG:4ED9 A9 07
sta Zp6F ; CPU:$CEDB PRG:4EDB 85 6F
jmp Sub_CF41 ; CPU:$CEDD PRG:4EDD 4C 41 CF
; -----------------------------------------------------------------------------
; Routine: Sub_CEE0
; Global: Branch target inside Label: taken when CEE0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CEE0:
lda $0415,x ; CPU:$CEE0 PRG:4EE0 BD 15 04
sta ZpA4 ; CPU:$CEE3 PRG:4EE3 85 A4
lda $0422,x ; CPU:$CEE5 PRG:4EE5 BD 22 04
cmp $04CB,x ; CPU:$CEE8 PRG:4EE8 DD CB 04
bcc NmiHandler_Loop245 ; CPU:$CEEB PRG:4EEB 90 2F
lda $0408,x ; CPU:$CEED PRG:4EED BD 08 04
cmp #$10 ; CPU:$CEF0 PRG:4EF0 C9 10
bcc NmiHandler_Loop245 ; CPU:$CEF2 PRG:4EF2 90 28
beq NmiHandler_Loop244 ; CPU:$CEF4 PRG:4EF4 F0 21
lda $0422,x ; CPU:$CEF6 PRG:4EF6 BD 22 04
sec ; CPU:$CEF9 PRG:4EF9 38
sbc #$01 ; CPU:$CEFA PRG:4EFA E9 01
jsr Sub_D0B5 ; CPU:$CEFC PRG:4EFC 20 B5 D0
lda $0415,x ; CPU:$CEFF PRG:4EFF BD 15 04
cmp #$00 ; CPU:$CF02 PRG:4F02 C9 00
bne NmiHandler_Loop243 ; CPU:$CF04 PRG:4F04 D0 04
lda #$08 ; CPU:$CF06 PRG:4F06 A9 08
sta ZpA2 ; CPU:$CF08 PRG:4F08 85 A2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop243
; Global: Branch target inside Label: taken when CF0A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop243:
lda ZpA1 ; CPU:$CF0A PRG:4F0A A5 A1
clc ; CPU:$CF0C PRG:4F0C 18
adc #$A0 ; CPU:$CF0D PRG:4F0D 69 A0
sta Zp71 ; CPU:$CF0F PRG:4F0F 85 71
lda ZpA2 ; CPU:$CF11 PRG:4F11 A5 A2
adc #$00 ; CPU:$CF13 PRG:4F13 69 00
sta Zp72 ; CPU:$CF15 PRG:4F15 85 72
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop244
; Global: Branch target inside Label: taken when CF17.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop244:
lda #$07 ; CPU:$CF17 PRG:4F17 A9 07
jmp Sub_CF1E ; CPU:$CF19 PRG:4F19 4C 1E CF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop245
; Global: Branch target inside Label: taken when CF1C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop245:
lda #$08 ; CPU:$CF1C PRG:4F1C A9 08
; -----------------------------------------------------------------------------
; Routine: Sub_CF1E
; Global: Branch target inside Label: taken when CF1E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CF1E:
sta Zp6F ; CPU:$CF1E PRG:4F1E 85 6F
lda $0463,x ; CPU:$CF20 PRG:4F20 BD 63 04
clc ; CPU:$CF23 PRG:4F23 18
adc Zp71 ; CPU:$CF24 PRG:4F24 65 71
sta Zp71 ; CPU:$CF26 PRG:4F26 85 71
lda #$00 ; CPU:$CF28 PRG:4F28 A9 00
adc Zp72 ; CPU:$CF2A PRG:4F2A 65 72
sta Zp72 ; CPU:$CF2C PRG:4F2C 85 72
lda $03FB,x ; CPU:$CF2E PRG:4F2E BD FB 03
bmi NmiHandler_Loop246 ; CPU:$CF31 PRG:4F31 30 0B
lda #$DA ; CPU:$CF33 PRG:4F33 A9 DA
sta Zp9F ; CPU:$CF35 PRG:4F35 85 9F
lda #$FF ; CPU:$CF37 PRG:4F37 A9 FF
sta ZpA0 ; CPU:$CF39 PRG:4F39 85 A0
jmp Sub_CF41 ; CPU:$CF3B PRG:4F3B 4C 41 CF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop246
; Global: Branch target inside Label: taken when CF3E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop246:
jsr Sub_CF4C ; CPU:$CF3E PRG:4F3E 20 4C CF
; -----------------------------------------------------------------------------
; Routine: Sub_CF41
; Global: Branch target inside Label: taken when CF41.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CF41:
lda ZpA0 ; CPU:$CF41 PRG:4F41 A5 A0
sta Zp74 ; CPU:$CF43 PRG:4F43 85 74
lda Zp9F ; CPU:$CF45 PRG:4F45 A5 9F
sta Zp73 ; CPU:$CF47 PRG:4F47 85 73
jmp Sub_9786 ; CPU:$CF49 PRG:4F49 4C 86 97
; -----------------------------------------------------------------------------
; Routine: Sub_CF4C
; Global: Branch target inside Label: taken when CF4C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CF4C:
lda #$8A ; CPU:$CF4C PRG:4F4C A9 8A
sta ZpA1 ; CPU:$CF4E PRG:4F4E 85 A1
lda #$D1 ; CPU:$CF50 PRG:4F50 A9 D1
sta ZpA2 ; CPU:$CF52 PRG:4F52 85 A2
jsr Sub_D169 ; CPU:$CF54 PRG:4F54 20 69 D1
beq NmiHandler_Loop247 ; CPU:$CF57 PRG:4F57 F0 08
lda #$94 ; CPU:$CF59 PRG:4F59 A9 94
sta ZpA1 ; CPU:$CF5B PRG:4F5B 85 A1
lda #$D1 ; CPU:$CF5D PRG:4F5D A9 D1
sta ZpA2 ; CPU:$CF5F PRG:4F5F 85 A2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop247
; Global: Branch target inside Label: taken when CF61.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop247:
lda $0415,x ; CPU:$CF61 PRG:4F61 BD 15 04
clc ; CPU:$CF64 PRG:4F64 18
adc ZpA1 ; CPU:$CF65 PRG:4F65 65 A1
sta Zp73 ; CPU:$CF67 PRG:4F67 85 73
lda ZpA2 ; CPU:$CF69 PRG:4F69 A5 A2
adc #$00 ; CPU:$CF6B PRG:4F6B 69 00
sta Zp74 ; CPU:$CF6D PRG:4F6D 85 74
ldy #$00 ; CPU:$CF6F PRG:4F6F A0 00
lda (Zp73),y ; CPU:$CF71 PRG:4F71 B1 73
sta Zp9F ; CPU:$CF73 PRG:4F73 85 9F
iny ; CPU:$CF75 PRG:4F75 C8
lda (Zp73),y ; CPU:$CF76 PRG:4F76 B1 73
sta ZpA0 ; CPU:$CF78 PRG:4F78 85 A0
rts ; CPU:$CF7A PRG:4F7A 60
; -----------------------------------------------------------------------------
; Routine: Sub_CF7B
; Global: Branch target inside Label: taken when CF7B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CF7B:
cpx #$0B ; CPU:$CF7B PRG:4F7B E0 0B
bcs NmiHandler_Loop249 ; CPU:$CF7D PRG:4F7D B0 0C
lda ZpFB ; CPU:$CF7F PRG:4F7F A5 FB
cmp #$02 ; CPU:$CF81 PRG:4F81 C9 02
bcs NmiHandler_Loop248 ; CPU:$CF83 PRG:4F83 B0 05
jsr Sub_D175 ; CPU:$CF85 PRG:4F85 20 75 D1
bne NmiHandler_Loop250 ; CPU:$CF88 PRG:4F88 D0 29
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop248
; Global: Branch target inside Label: taken when CF8A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop248:
rts ; CPU:$CF8A PRG:4F8A 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop249
; Global: Branch target inside Label: taken when CF8B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop249:
lda $0422,x ; CPU:$CF8B PRG:4F8B BD 22 04
sec ; CPU:$CF8E PRG:4F8E 38
sbc #$01 ; CPU:$CF8F PRG:4F8F E9 01
jsr Sub_D0B5 ; CPU:$CF91 PRG:4F91 20 B5 D0
lda ZpA1 ; CPU:$CF94 PRG:4F94 A5 A1
clc ; CPU:$CF96 PRG:4F96 18
adc $0463,x ; CPU:$CF97 PRG:4F97 7D 63 04
adc #$20 ; CPU:$CF9A PRG:4F9A 69 20
sta Zp71 ; CPU:$CF9C PRG:4F9C 85 71
lda ZpA2 ; CPU:$CF9E PRG:4F9E A5 A2
adc #$00 ; CPU:$CFA0 PRG:4FA0 69 00
sta Zp72 ; CPU:$CFA2 PRG:4FA2 85 72
lda #$9E ; CPU:$CFA4 PRG:4FA4 A9 9E
sta Zp73 ; CPU:$CFA6 PRG:4FA6 85 73
lda #$D1 ; CPU:$CFA8 PRG:4FA8 A9 D1
sta Zp74 ; CPU:$CFAA PRG:4FAA 85 74
lda #$05 ; CPU:$CFAC PRG:4FAC A9 05
sta Zp6F ; CPU:$CFAE PRG:4FAE 85 6F
jmp Sub_9786 ; CPU:$CFB0 PRG:4FB0 4C 86 97
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop250
; Global: Branch target inside Label: taken when CFB3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop250:
lda $058F ; CPU:$CFB3 PRG:4FB3 AD 8F 05
sec ; CPU:$CFB6 PRG:4FB6 38
sbc $04A4,x ; CPU:$CFB7 PRG:4FB7 FD A4 04
cmp #$04 ; CPU:$CFBA PRG:4FBA C9 04
bcc NmiHandler_Loop251 ; CPU:$CFBC PRG:4FBC 90 0F
cmp #$FD ; CPU:$CFBE PRG:4FBE C9 FD
bcs NmiHandler_Loop251 ; CPU:$CFC0 PRG:4FC0 B0 0B
lda $058F ; CPU:$CFC2 PRG:4FC2 AD 8F 05
sec ; CPU:$CFC5 PRG:4FC5 38
sbc #$03 ; CPU:$CFC6 PRG:4FC6 E9 03
sta ZpA3 ; CPU:$CFC8 PRG:4FC8 85 A3
jmp NmiHandler_OnCarryClear16 ; CPU:$CFCA PRG:4FCA 4C E7 CF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop251
; Global: Branch target inside Label: taken when CFCD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop251:
lda $04A4,x ; CPU:$CFCD PRG:4FCD BD A4 04
sta ZpA3 ; CPU:$CFD0 PRG:4FD0 85 A3
jsr Sub_D0B5 ; CPU:$CFD2 PRG:4FD2 20 B5 D0
lda ZpA1 ; CPU:$CFD5 PRG:4FD5 A5 A1
clc ; CPU:$CFD7 PRG:4FD7 18
adc #$20 ; CPU:$CFD8 PRG:4FD8 69 20
sta ZpA1 ; CPU:$CFDA PRG:4FDA 85 A1
lda ZpA2 ; CPU:$CFDC PRG:4FDC A5 A2
adc #$00 ; CPU:$CFDE PRG:4FDE 69 00
sta ZpA2 ; CPU:$CFE0 PRG:4FE0 85 A2
ldy #$05 ; CPU:$CFE2 PRG:4FE2 A0 05
jmp Sub_CFEE ; CPU:$CFE4 PRG:4FE4 4C EE CF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear16
; Global: Branch target inside Label: taken when CFE7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear16:
lda ZpA3 ; CPU:$CFE7 PRG:4FE7 A5 A3
jsr Sub_D0B5 ; CPU:$CFE9 PRG:4FE9 20 B5 D0
ldy #$06 ; CPU:$CFEC PRG:4FEC A0 06
; -----------------------------------------------------------------------------
; Routine: Sub_CFEE
; Global: Branch target inside Label: taken when CFEE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_CFEE:
sty ZpA4 ; CPU:$CFEE PRG:4FEE 84 A4
lda $0463,x ; CPU:$CFF0 PRG:4FF0 BD 63 04
clc ; CPU:$CFF3 PRG:4FF3 18
adc ZpA1 ; CPU:$CFF4 PRG:4FF4 65 A1
sta ZpA1 ; CPU:$CFF6 PRG:4FF6 85 A1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero68
; Global: Branch target inside Label: taken when CFF8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero68:
lda ZpA1 ; CPU:$CFF8 PRG:4FF8 A5 A1
sta Zp71 ; CPU:$CFFA PRG:4FFA 85 71
lda ZpA2 ; CPU:$CFFC PRG:4FFC A5 A2
sta Zp72 ; CPU:$CFFE PRG:4FFE 85 72
lda #$AA ; CPU:$D000 PRG:5000 A9 AA
sta Zp73 ; CPU:$D002 PRG:5002 85 73
lda #$D1 ; CPU:$D004 PRG:5004 A9 D1
sta Zp74 ; CPU:$D006 PRG:5006 85 74
lda #$03 ; CPU:$D008 PRG:5008 A9 03
sta Zp70 ; CPU:$D00A PRG:500A 85 70
jsr Sub_973E ; CPU:$D00C PRG:500C 20 3E 97
lda #$20 ; CPU:$D00F PRG:500F A9 20
clc ; CPU:$D011 PRG:5011 18
adc ZpA1 ; CPU:$D012 PRG:5012 65 A1
sta ZpA1 ; CPU:$D014 PRG:5014 85 A1
lda ZpA2 ; CPU:$D016 PRG:5016 A5 A2
adc #$00 ; CPU:$D018 PRG:5018 69 00
sta ZpA2 ; CPU:$D01A PRG:501A 85 A2
dec ZpA4 ; CPU:$D01C PRG:501C C6 A4
bne NmiHandler_OnNonzero68 ; CPU:$D01E PRG:501E D0 D8
inc ZpA3 ; CPU:$D020 PRG:5020 E6 A3
lda ZpA3 ; CPU:$D022 PRG:5022 A5 A3
cmp $0422,x ; CPU:$D024 PRG:5024 DD 22 04
bcc NmiHandler_OnCarryClear16 ; CPU:$D027 PRG:5027 90 BE
rts ; CPU:$D029 PRG:5029 60
; -----------------------------------------------------------------------------
; Routine: Sub_D02A
; Global: Branch target inside Label: taken when D02A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D02A:
cpx #$0B ; CPU:$D02A PRG:502A E0 0B
bcs NmiHandler_OnCarryClear17 ; CPU:$D02C PRG:502C B0 05
lda $06E5 ; CPU:$D02E PRG:502E AD E5 06
bne NmiHandler_Loop252 ; CPU:$D031 PRG:5031 D0 01
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear17
; Global: Branch target inside Label: taken when D033.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear17:
rts ; CPU:$D033 PRG:5033 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop252
; Global: Branch target inside Label: taken when D034.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop252:
lda $04A4,x ; CPU:$D034 PRG:5034 BD A4 04
jsr Sub_9A0B ; CPU:$D037 PRG:5037 20 0B 9A
lda $0684 ; CPU:$D03A PRG:503A AD 84 06
sec ; CPU:$D03D PRG:503D 38
sbc Zp73 ; CPU:$D03E PRG:503E E5 73
sta Zp73 ; CPU:$D040 PRG:5040 85 73
lda $0685 ; CPU:$D042 PRG:5042 AD 85 06
sbc Zp74 ; CPU:$D045 PRG:5045 E5 74
bcc NmiHandler_OnCarryClear17 ; CPU:$D047 PRG:5047 90 EA
bne NmiHandler_Loop253 ; CPU:$D049 PRG:5049 D0 06
lda Zp73 ; CPU:$D04B PRG:504B A5 73
cmp #$71 ; CPU:$D04D PRG:504D C9 71
bcc NmiHandler_OnCarryClear17 ; CPU:$D04F PRG:504F 90 E2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop253
; Global: Branch target inside Label: taken when D051.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop253:
lda $0422,x ; CPU:$D051 PRG:5051 BD 22 04
jsr Sub_9A0B ; CPU:$D054 PRG:5054 20 0B 9A
lda $0684 ; CPU:$D057 PRG:5057 AD 84 06
sec ; CPU:$D05A PRG:505A 38
sbc Zp73 ; CPU:$D05B PRG:505B E5 73
sta Zp73 ; CPU:$D05D PRG:505D 85 73
lda $0685 ; CPU:$D05F PRG:505F AD 85 06
sbc Zp74 ; CPU:$D062 PRG:5062 E5 74
bcc NmiHandler_Loop254 ; CPU:$D064 PRG:5064 90 08
bne NmiHandler_OnCarryClear17 ; CPU:$D066 PRG:5066 D0 CB
lda Zp73 ; CPU:$D068 PRG:5068 A5 73
cmp #$61 ; CPU:$D06A PRG:506A C9 61
bcs NmiHandler_OnCarryClear17 ; CPU:$D06C PRG:506C B0 C5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop254
; Global: Branch target inside Label: taken when D06E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop254:
lda $04D8 ; CPU:$D06E PRG:506E AD D8 04
clc ; CPU:$D071 PRG:5071 18
adc $0463,x ; CPU:$D072 PRG:5072 7D 63 04
sta Zp71 ; CPU:$D075 PRG:5075 85 71
lda $04D9 ; CPU:$D077 PRG:5077 AD D9 04
adc #$00 ; CPU:$D07A PRG:507A 69 00
sta Zp72 ; CPU:$D07C PRG:507C 85 72
lda #$AA ; CPU:$D07E PRG:507E A9 AA
sta Zp73 ; CPU:$D080 PRG:5080 85 73
lda #$D1 ; CPU:$D082 PRG:5082 A9 D1
sta Zp74 ; CPU:$D084 PRG:5084 85 74
lda #$01 ; CPU:$D086 PRG:5086 A9 01
sta Zp6F ; CPU:$D088 PRG:5088 85 6F
jmp Sub_9786 ; CPU:$D08A PRG:508A 4C 86 97
; ---- data $D08D-$D09B (15 bytes) ----
.byte $A9, $00, $9D, $FB, $03, $9D, $08, $04, $9D, $70, $04, $60, $BD, $B1, $04 ; CPU:$D08D PRG:508D A9 00 9D FB 03 9D 08 04 9D 70 04 60 BD B1 04
; -----------------------------------------------------------------------------
; Routine: Sub_D09C
; Global: Branch target inside Label: taken when D09C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D09C:
lsr a ; CPU:$D09C PRG:509C 4A
sta Zp72 ; CPU:$D09D PRG:509D 85 72
ldy #$08 ; CPU:$D09F PRG:509F A0 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero69
; Global: Branch target inside Label: taken when D0A1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero69:
lsr Zp72 ; CPU:$D0A1 PRG:50A1 46 72
bcs NmiHandler_Loop255 ; CPU:$D0A3 PRG:50A3 B0 07
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero70
; Global: Branch target inside Label: taken when D0A5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero70:
iny ; CPU:$D0A5 PRG:50A5 C8
cpy #$0C ; CPU:$D0A6 PRG:50A6 C0 0C
bne NmiHandler_OnNonzero69 ; CPU:$D0A8 PRG:50A8 D0 F7
sec ; CPU:$D0AA PRG:50AA 38
rts ; CPU:$D0AB PRG:50AB 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop255
; Global: Branch target inside Label: taken when D0AC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop255:
lda a:ZpB7,y ; CPU:$D0AC PRG:50AC B9 B7 00
and #$10 ; CPU:$D0AF PRG:50AF 29 10
bne NmiHandler_OnNonzero70 ; CPU:$D0B1 PRG:50B1 D0 F2
clc ; CPU:$D0B3 PRG:50B3 18
rts ; CPU:$D0B4 PRG:50B4 60
; -----------------------------------------------------------------------------
; Routine: Sub_D0B5
; Global: Branch target inside Label: taken when D0B5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D0B5:
asl a ; CPU:$D0B5 PRG:50B5 0A
clc ; CPU:$D0B6 PRG:50B6 18
adc #$76 ; CPU:$D0B7 PRG:50B7 69 76
sta Zp73 ; CPU:$D0B9 PRG:50B9 85 73
lda #$D2 ; CPU:$D0BB PRG:50BB A9 D2
adc #$00 ; CPU:$D0BD PRG:50BD 69 00
sta Zp74 ; CPU:$D0BF PRG:50BF 85 74
ldy #$00 ; CPU:$D0C1 PRG:50C1 A0 00
lda (Zp73),y ; CPU:$D0C3 PRG:50C3 B1 73
sta ZpA1 ; CPU:$D0C5 PRG:50C5 85 A1
iny ; CPU:$D0C7 PRG:50C7 C8
lda (Zp73),y ; CPU:$D0C8 PRG:50C8 B1 73
sta ZpA2 ; CPU:$D0CA PRG:50CA 85 A2
rts ; CPU:$D0CC PRG:50CC 60
; ---- data $D0CD-$D0ED (33 bytes) ----
; referenced by `lda $D0CD,y` at $C83E (operand $D0CD falls inside this region)
; referenced by `lda $D0CD,y` at $C848 (operand $D0CD falls inside this region)
; referenced by `lda $D0CD,y` at $C852 (operand $D0CD falls inside this region)
.byte $19, $1E, $06, $18, $1E, $0A, $1A, $1E, $0E, $18, $1E, $12, $18, $1E, $16, $14 ; CPU:$D0CD PRG:50CD 19 1E 06 18 1E 0A 1A 1E 0E 18 1E 12 18 1E 16 14
.byte $18, $02, $12, $18, $1A, $13, $15, $0E, $10, $12, $02, $0E, $10, $0E, $00, $0C ; CPU:$D0DD PRG:50DD 18 02 12 18 1A 13 15 0E 10 12 02 0E 10 0E 00 0C
.byte $0E ; CPU:$D0ED PRG:50ED 0E
; -----------------------------------------------------------------------------
; Routine: Sub_D0EE
; Global: Branch target inside Label: taken when D0EE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D0EE:
cpy #$17 ; CPU:$D0EE PRG:50EE C0 17
bcs NmiHandler_Loop257 ; CPU:$D0F0 PRG:50F0 B0 18
lda $05BA,y ; CPU:$D0F2 PRG:50F2 B9 BA 05
and #$01 ; CPU:$D0F5 PRG:50F5 29 01
beq NmiHandler_Loop256 ; CPU:$D0F7 PRG:50F7 F0 05
lda #$08 ; CPU:$D0F9 PRG:50F9 A9 08
jsr Sub_D10B ; CPU:$D0FB PRG:50FB 20 0B D1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop256
; Global: Branch target inside Label: taken when D0FE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop256:
lda $05BA,y ; CPU:$D0FE PRG:50FE B9 BA 05
and #$02 ; CPU:$D101 PRG:5101 29 02
beq NmiHandler_Loop257 ; CPU:$D103 PRG:5103 F0 05
lda #$14 ; CPU:$D105 PRG:5105 A9 14
jmp Sub_D10B ; CPU:$D107 PRG:5107 4C 0B D1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop257
; Global: Branch target inside Label: taken when D10A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop257:
rts ; CPU:$D10A PRG:510A 60
; -----------------------------------------------------------------------------
; Routine: Sub_D10B
; Global: Branch target inside Label: taken when D10B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D10B:
sta Zp70 ; CPU:$D10B PRG:510B 85 70
tya ; CPU:$D10D PRG:510D 98
pha ; CPU:$D10E PRG:510E 48
iny ; CPU:$D10F PRG:510F C8
tya ; CPU:$D110 PRG:5110 98
asl a ; CPU:$D111 PRG:5111 0A
clc ; CPU:$D112 PRG:5112 18
adc #$76 ; CPU:$D113 PRG:5113 69 76
sta Zp73 ; CPU:$D115 PRG:5115 85 73
lda #$D2 ; CPU:$D117 PRG:5117 A9 D2
adc #$00 ; CPU:$D119 PRG:5119 69 00
sta Zp74 ; CPU:$D11B PRG:511B 85 74
ldy #$00 ; CPU:$D11D PRG:511D A0 00
lda (Zp73),y ; CPU:$D11F PRG:511F B1 73
sta Zp71 ; CPU:$D121 PRG:5121 85 71
iny ; CPU:$D123 PRG:5123 C8
lda (Zp73),y ; CPU:$D124 PRG:5124 B1 73
sta Zp72 ; CPU:$D126 PRG:5126 85 72
lda #$20 ; CPU:$D128 PRG:5128 A9 20
clc ; CPU:$D12A PRG:512A 18
adc Zp71 ; CPU:$D12B PRG:512B 65 71
sta Zp71 ; CPU:$D12D PRG:512D 85 71
lda Zp72 ; CPU:$D12F PRG:512F A5 72
adc #$00 ; CPU:$D131 PRG:5131 69 00
sta Zp72 ; CPU:$D133 PRG:5133 85 72
lda Zp70 ; CPU:$D135 PRG:5135 A5 70
clc ; CPU:$D137 PRG:5137 18
adc Zp71 ; CPU:$D138 PRG:5138 65 71
sta Zp71 ; CPU:$D13A PRG:513A 85 71
lda Zp72 ; CPU:$D13C PRG:513C A5 72
adc #$00 ; CPU:$D13E PRG:513E 69 00
sta Zp72 ; CPU:$D140 PRG:5140 85 72
lda #$87 ; CPU:$D142 PRG:5142 A9 87
sta Zp73 ; CPU:$D144 PRG:5144 85 73
lda #$D1 ; CPU:$D146 PRG:5146 A9 D1
sta Zp74 ; CPU:$D148 PRG:5148 85 74
lda #$01 ; CPU:$D14A PRG:514A A9 01
sta Zp6F ; CPU:$D14C PRG:514C 85 6F
jsr Sub_9786 ; CPU:$D14E PRG:514E 20 86 97
pla ; CPU:$D151 PRG:5151 68
tay ; CPU:$D152 PRG:5152 A8
rts ; CPU:$D153 PRG:5153 60
; -----------------------------------------------------------------------------
; Routine: Sub_D154
; Global: Branch target inside Label: taken when D154.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D154:
lda $058F ; CPU:$D154 PRG:5154 AD 8F 05
sec ; CPU:$D157 PRG:5157 38
sbc #$03 ; CPU:$D158 PRG:5158 E9 03
tay ; CPU:$D15A PRG:515A A8
clc ; CPU:$D15B PRG:515B 18
adc #$06 ; CPU:$D15C PRG:515C 69 06
sta ZpA1 ; CPU:$D15E PRG:515E 85 A1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero71
; Global: Branch target inside Label: taken when D160.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero71:
jsr Sub_D0EE ; CPU:$D160 PRG:5160 20 EE D0
iny ; CPU:$D163 PRG:5163 C8
cpy ZpA1 ; CPU:$D164 PRG:5164 C4 A1
bne NmiHandler_OnNonzero71 ; CPU:$D166 PRG:5166 D0 F8
rts ; CPU:$D168 PRG:5168 60
; -----------------------------------------------------------------------------
; Routine: Sub_D169
; Global: Branch target inside Label: taken when D169.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D169:
lda $03FB,x ; CPU:$D169 PRG:5169 BD FB 03
and #$04 ; CPU:$D16C PRG:516C 29 04
rts ; CPU:$D16E PRG:516E 60
; -----------------------------------------------------------------------------
; Routine: Sub_D16F
; Global: Branch target inside Label: taken when D16F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D16F:
lda $03FB,x ; CPU:$D16F PRG:516F BD FB 03
and #$20 ; CPU:$D172 PRG:5172 29 20
rts ; CPU:$D174 PRG:5174 60
; -----------------------------------------------------------------------------
; Routine: Sub_D175
; Global: Branch target inside Label: taken when D175.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D175:
lda $0422,x ; CPU:$D175 PRG:5175 BD 22 04
cmp $04A4,x ; CPU:$D178 PRG:5178 DD A4 04
rts ; CPU:$D17B PRG:517B 60
; -----------------------------------------------------------------------------
; Routine: Sub_D17C
; Global: Branch target inside Label: taken when D17C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D17C:
ldy $04BE,x ; CPU:$D17C PRG:517C BC BE 04
lda $047D,x ; CPU:$D17F PRG:517F BD 7D 04
sec ; CPU:$D182 PRG:5182 38
sbc $047D,y ; CPU:$D183 PRG:5183 F9 7D 04
rts ; CPU:$D186 PRG:5186 60
; ---- data $D187-$D2B5 (303 bytes) ----
.byte $0E, $11, $0F, $AD, $D1, $C5, $D1, $DD, $D1, $F5, $D1, $AA, $D1, $10, $D2, $28 ; CPU:$D187 PRG:5187 0E 11 0F AD D1 C5 D1 DD D1 F5 D1 AA D1 10 D2 28
.byte $D2, $40, $D2, $58, $D2, $0D, $D2, $FF, $87, $FF, $FF, $87, $FF, $FF, $87, $FF ; CPU:$D197 PRG:5197 D2 40 D2 58 D2 0D D2 FF 87 FF FF 87 FF FF 87 FF
.byte $FF, $87, $FF, $FF, $87, $FF, $73, $74, $73, $88, $88, $88, $88, $88, $88, $88 ; CPU:$D1A7 PRG:51A7 FF 87 FF FF 87 FF 73 74 73 88 88 88 88 88 88 88
.byte $88, $88, $88, $88, $88, $88, $88, $88, $73, $73, $73, $FF, $FF, $FF, $75, $77 ; CPU:$D1B7 PRG:51B7 88 88 88 88 88 88 88 88 73 73 73 FF FF FF 75 77
.byte $75, $7E, $7E, $7E, $88, $88, $88, $88, $88, $88, $88, $88, $88, $88, $88, $88 ; CPU:$D1C7 PRG:51C7 75 7E 7E 7E 88 88 88 88 88 88 88 88 88 88 88 88
.byte $76, $76, $76, $7F, $7F, $7F, $78, $7A, $78, $80, $80, $80, $88, $88, $88, $88 ; CPU:$D1D7 PRG:51D7 76 76 76 7F 7F 7F 78 7A 78 80 80 80 88 88 88 88
.byte $88, $88, $88, $88, $88, $88, $88, $88, $79, $79, $79, $81, $81, $81, $7B, $7D ; CPU:$D1E7 PRG:51E7 88 88 88 88 88 88 88 88 79 79 79 81 81 81 7B 7D
.byte $7B, $82, $82, $82, $88, $88, $88, $88, $88, $88, $88, $88, $88, $88, $88, $88 ; CPU:$D1F7 PRG:51F7 7B 82 82 82 88 88 88 88 88 88 88 88 88 88 88 88
.byte $7C, $7C, $7C, $83, $83, $83, $FF, $87, $FF, $73, $74, $73, $88, $88, $88, $88 ; CPU:$D207 PRG:5207 7C 7C 7C 83 83 83 FF 87 FF 73 74 73 88 88 88 88
.byte $88, $88, $88, $88, $88, $88, $88, $88, $88, $88, $88, $73, $73, $73, $FF, $87 ; CPU:$D217 PRG:5217 88 88 88 88 88 88 88 88 88 88 88 73 73 73 FF 87
.byte $FF, $75, $77, $75, $7E, $7E, $7E, $88, $88, $88, $88, $88, $88, $88, $88, $88 ; CPU:$D227 PRG:5227 FF 75 77 75 7E 7E 7E 88 88 88 88 88 88 88 88 88
.byte $88, $88, $88, $76, $76, $76, $7F, $84, $7F, $78, $7A, $78, $80, $80, $80, $88 ; CPU:$D237 PRG:5237 88 88 88 76 76 76 7F 84 7F 78 7A 78 80 80 80 88
.byte $88, $88, $88, $88, $88, $88, $88, $88, $88, $88, $88, $79, $79, $79, $81, $85 ; CPU:$D247 PRG:5247 88 88 88 88 88 88 88 88 88 88 88 79 79 79 81 85
.byte $81, $7B, $7D, $7B, $82, $82, $82, $88, $88, $88, $88, $88, $88, $88, $88, $88 ; CPU:$D257 PRG:5257 81 7B 7D 7B 82 82 82 88 88 88 88 88 88 88 88 88
.byte $88, $88, $88, $7C, $7C, $7C, $83, $86, $83, $00, $2B, $00, $20, $C0, $20, $80 ; CPU:$D267 PRG:5267 88 88 88 7C 7C 7C 83 86 83 00 2B 00 20 C0 20 80
.byte $21, $40, $22, $00, $23, $00, $28, $C0, $28, $80, $29, $40, $2A, $00, $2B, $00 ; CPU:$D277 PRG:5277 21 40 22 00 23 00 28 C0 28 80 29 40 2A 00 2B 00
.byte $20, $C0, $20, $80, $21, $40, $22, $00, $23, $00, $28, $C0, $28, $80, $29, $40 ; CPU:$D287 PRG:5287 20 C0 20 80 21 40 22 00 23 00 28 C0 28 80 29 40
.byte $2A, $00, $2B, $00, $20, $C0, $20, $80, $21, $40, $22, $00, $23, $00, $28, $C0 ; CPU:$D297 PRG:5297 2A 00 2B 00 20 C0 20 80 21 40 22 00 23 00 28 C0
.byte $28, $80, $29, $40, $2A, $00, $2B, $00, $20, $C0, $20, $80, $21, $40, $22 ; CPU:$D2A7 PRG:52A7 28 80 29 40 2A 00 2B 00 20 C0 20 80 21 40 22
; -----------------------------------------------------------------------------
; Routine: Sub_D2B6
; Global: Branch target inside Label: taken when D2B6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D2B6:
ldx #$0D ; CPU:$D2B6 PRG:52B6 A2 0D
lda #$00 ; CPU:$D2B8 PRG:52B8 A9 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero72
; Global: Branch target inside Label: taken when D2BA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero72:
sta ZpB7,x ; CPU:$D2BA PRG:52BA 95 B7
inx ; CPU:$D2BC PRG:52BC E8
cpx #$11 ; CPU:$D2BD PRG:52BD E0 11
bne NmiHandler_OnNonzero72 ; CPU:$D2BF PRG:52BF D0 F9
ldy #$00 ; CPU:$D2C1 PRG:52C1 A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero73
; Global: Branch target inside Label: taken when D2C3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero73:
lda $0592,y ; CPU:$D2C3 PRG:52C3 B9 92 05
bne NmiHandler_Loop258 ; CPU:$D2C6 PRG:52C6 D0 12
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero10
; Global: Branch target inside Label: taken when D2C8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero10:
iny ; CPU:$D2C8 PRG:52C8 C8
cpy #$0A ; CPU:$D2C9 PRG:52C9 C0 0A
bne NmiHandler_OnNonzero73 ; CPU:$D2CB PRG:52CB D0 F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero11
; Global: Branch target inside Label: taken when D2CD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero11:
jsr Sub_82A3 ; CPU:$D2CD PRG:52CD 20 A3 82
lda $0673 ; CPU:$D2D0 PRG:52D0 AD 73 06
and #$01 ; CPU:$D2D3 PRG:52D3 29 01
beq NmiHandler_OnZero11 ; CPU:$D2D5 PRG:52D5 F0 F6
jmp Sub_D2B6 ; CPU:$D2D7 PRG:52D7 4C B6 D2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop258
; Global: Branch target inside Label: taken when D2DA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop258:
jsr Sub_D31A ; CPU:$D2DA PRG:52DA 20 1A D3
bcc NmiHandler_OnZero10 ; CPU:$D2DD PRG:52DD 90 E9
ldx #$0D ; CPU:$D2DF PRG:52DF A2 0D
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero74
; Global: Branch target inside Label: taken when D2E1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero74:
lda ZpB7,x ; CPU:$D2E1 PRG:52E1 B5 B7
beq NmiHandler_Loop259 ; CPU:$D2E3 PRG:52E3 F0 07
inx ; CPU:$D2E5 PRG:52E5 E8
cpx #$11 ; CPU:$D2E6 PRG:52E6 E0 11
bne NmiHandler_OnNonzero74 ; CPU:$D2E8 PRG:52E8 D0 F7
beq NmiHandler_OnZero10 ; CPU:$D2EA PRG:52EA F0 DC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop259
; Global: Branch target inside Label: taken when D2EC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop259:
lda #$81 ; CPU:$D2EC PRG:52EC A9 81
sta $0592,y ; CPU:$D2EE PRG:52EE 99 92 05
sta ZpB7,x ; CPU:$D2F1 PRG:52F1 95 B7
txa ; CPU:$D2F3 PRG:52F3 8A
sta $05B0,y ; CPU:$D2F4 PRG:52F4 99 B0 05
tya ; CPU:$D2F7 PRG:52F7 98
sta $03C6,x ; CPU:$D2F8 PRG:52F8 9D C6 03
lda $059C,y ; CPU:$D2FB PRG:52FB B9 9C 05
sta ZpE5,x ; CPU:$D2FE PRG:52FE 95 E5
jsr Sub_99E7 ; CPU:$D300 PRG:5300 20 E7 99
jsr Sub_9B03 ; CPU:$D303 PRG:5303 20 03 9B
lda $05A6,y ; CPU:$D306 PRG:5306 B9 A6 05
sta ZpC8,x ; CPU:$D309 PRG:5309 95 C8
bmi NmiHandler_Loop260 ; CPU:$D30B PRG:530B 30 05
lda #$9D ; CPU:$D30D PRG:530D A9 9D
jmp Sub_D314 ; CPU:$D30F PRG:530F 4C 14 D3
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop260
; Global: Branch target inside Label: taken when D312.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop260:
lda #$9E ; CPU:$D312 PRG:5312 A9 9E
; -----------------------------------------------------------------------------
; Routine: Sub_D314
; Global: Branch target inside Label: taken when D314.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D314:
sta $0314,x ; CPU:$D314 PRG:5314 9D 14 03
jmp NmiHandler_OnZero10 ; CPU:$D317 PRG:5317 4C C8 D2
; -----------------------------------------------------------------------------
; Routine: Sub_D31A
; Global: Branch target inside Label: taken when D31A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D31A:
lda $059C,y ; CPU:$D31A PRG:531A B9 9C 05
sec ; CPU:$D31D PRG:531D 38
sbc $058F ; CPU:$D31E PRG:531E ED 8F 05
cmp #$03 ; CPU:$D321 PRG:5321 C9 03
bcc NmiHandler_Loop261 ; CPU:$D323 PRG:5323 90 03
cmp #$FE ; CPU:$D325 PRG:5325 C9 FE
rts ; CPU:$D327 PRG:5327 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop261
; Global: Branch target inside Label: taken when D328.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop261:
sec ; CPU:$D328 PRG:5328 38
rts ; CPU:$D329 PRG:5329 60
; -----------------------------------------------------------------------------
; Routine: Sub_D32A
; Global: Branch target inside Label: taken when D32A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D32A:
ldx #$03 ; CPU:$D32A PRG:532A A2 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero75
; Global: Branch target inside Label: taken when D32C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero75:
lda ZpB7,x ; CPU:$D32C PRG:532C B5 B7
bmi NmiHandler_Loop262 ; CPU:$D32E PRG:532E 30 0B
; -----------------------------------------------------------------------------
; Routine: Sub_D330
; Global: Branch target inside Label: taken when D330.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D330:
inx ; CPU:$D330 PRG:5330 E8
cpx #$06 ; CPU:$D331 PRG:5331 E0 06
bne NmiHandler_OnNonzero75 ; CPU:$D333 PRG:5333 D0 F7
jsr Sub_82A3 ; CPU:$D335 PRG:5335 20 A3 82
jmp Sub_D32A ; CPU:$D338 PRG:5338 4C 2A D3
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop262
; Global: Branch target inside Label: taken when D33B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop262:
cmp #$84 ; CPU:$D33B PRG:533B C9 84
bne NmiHandler_Loop263 ; CPU:$D33D PRG:533D D0 07
lda #$00 ; CPU:$D33F PRG:533F A9 00
sta ZpB7,x ; CPU:$D341 PRG:5341 95 B7
jmp Sub_D330 ; CPU:$D343 PRG:5343 4C 30 D3
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop263
; Global: Branch target inside Label: taken when D346.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop263:
cmp #$88 ; CPU:$D346 PRG:5346 C9 88
beq NmiHandler_Loop264 ; CPU:$D348 PRG:5348 F0 04
cmp #$81 ; CPU:$D34A PRG:534A C9 81
bne NmiHandler_Loop265 ; CPU:$D34C PRG:534C D0 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop264
; Global: Branch target inside Label: taken when D34E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop264:
lda #$48 ; CPU:$D34E PRG:534E A9 48
sta $0314,x ; CPU:$D350 PRG:5350 9D 14 03
lda #$88 ; CPU:$D353 PRG:5353 A9 88
sta ZpB7,x ; CPU:$D355 PRG:5355 95 B7
bne NmiHandler_Loop266 ; CPU:$D357 PRG:5357 D0 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop265
; Global: Branch target inside Label: taken when D359.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop265:
jsr Sub_D570 ; CPU:$D359 PRG:5359 20 70 D5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop266
; Global: Branch target inside Label: taken when D35C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop266:
ldy #$08 ; CPU:$D35C PRG:535C A0 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero76
; Global: Branch target inside Label: taken when D35E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero76:
lda a:ZpB7,y ; CPU:$D35E PRG:535E B9 B7 00
bmi NmiHandler_Loop267 ; CPU:$D361 PRG:5361 30 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarrySet6
; Global: Branch target inside Label: taken when D363.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarrySet6:
iny ; CPU:$D363 PRG:5363 C8
cpy #$0C ; CPU:$D364 PRG:5364 C0 0C
bne NmiHandler_OnNonzero76 ; CPU:$D366 PRG:5366 D0 F6
jmp Sub_D425 ; CPU:$D368 PRG:5368 4C 25 D4
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop267
; Global: Branch target inside Label: taken when D36B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop267:
and #$43 ; CPU:$D36B PRG:536B 29 43
beq NmiHandler_Loop269 ; CPU:$D36D PRG:536D F0 30
and #$02 ; CPU:$D36F PRG:536F 29 02
beq NmiHandler_OnCarrySet6 ; CPU:$D371 PRG:5371 F0 F0
lda $0303,y ; CPU:$D373 PRG:5373 B9 03 03
sec ; CPU:$D376 PRG:5376 38
sbc $0303,x ; CPU:$D377 PRG:5377 FD 03 03
cmp #$1C ; CPU:$D37A PRG:537A C9 1C
bcs NmiHandler_OnCarrySet6 ; CPU:$D37C PRG:537C B0 E5
lda a:ZpB7,y ; CPU:$D37E PRG:537E B9 B7 00
and #$08 ; CPU:$D381 PRG:5381 29 08
beq NmiHandler_Loop268 ; CPU:$D383 PRG:5383 F0 09
lda a:ZpC8,y ; CPU:$D385 PRG:5385 B9 C8 00
sec ; CPU:$D388 PRG:5388 38
sbc ZpC8,x ; CPU:$D389 PRG:5389 F5 C8
jmp Sub_D394 ; CPU:$D38B PRG:538B 4C 94 D3
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop268
; Global: Branch target inside Label: taken when D38E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop268:
lda ZpC8,x ; CPU:$D38E PRG:538E B5 C8
sec ; CPU:$D390 PRG:5390 38
sbc a:ZpC8,y ; CPU:$D391 PRG:5391 F9 C8 00
; -----------------------------------------------------------------------------
; Routine: Sub_D394
; Global: Branch target inside Label: taken when D394.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D394:
cmp #$08 ; CPU:$D394 PRG:5394 C9 08
bcc NmiHandler_OnCarrySet6 ; CPU:$D396 PRG:5396 90 CB
cmp #$10 ; CPU:$D398 PRG:5398 C9 10
bcs NmiHandler_OnCarrySet6 ; CPU:$D39A PRG:539A B0 C7
jmp NmiHandler_Loop276 ; CPU:$D39C PRG:539C 4C 2A D4
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop269
; Global: Branch target inside Label: taken when D39F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop269:
lda $0336,y ; CPU:$D39F PRG:539F B9 36 03
and #$01 ; CPU:$D3A2 PRG:53A2 29 01
bne NmiHandler_Loop271 ; CPU:$D3A4 PRG:53A4 D0 22
lda $0336,y ; CPU:$D3A6 PRG:53A6 B9 36 03
and #$02 ; CPU:$D3A9 PRG:53A9 29 02
beq NmiHandler_Loop273 ; CPU:$D3AB PRG:53AB F0 36
lda $0303,y ; CPU:$D3AD PRG:53AD B9 03 03
sec ; CPU:$D3B0 PRG:53B0 38
sbc $0303,x ; CPU:$D3B1 PRG:53B1 FD 03 03
cmp #$08 ; CPU:$D3B4 PRG:53B4 C9 08
bcs NmiHandler_OnCarrySet6 ; CPU:$D3B6 PRG:53B6 B0 AB
lda a:ZpC8,y ; CPU:$D3B8 PRG:53B8 B9 C8 00
sbc ZpC8,x ; CPU:$D3BB PRG:53BB F5 C8
cmp #$10 ; CPU:$D3BD PRG:53BD C9 10
bcc NmiHandler_Loop270 ; CPU:$D3BF PRG:53BF 90 04
cmp #$F0 ; CPU:$D3C1 PRG:53C1 C9 F0
bcc NmiHandler_OnCarrySet6 ; CPU:$D3C3 PRG:53C3 90 9E
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop270
; Global: Branch target inside Label: taken when D3C5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop270:
jmp NmiHandler_Loop275 ; CPU:$D3C5 PRG:53C5 4C FF D3
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop271
; Global: Branch target inside Label: taken when D3C8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop271:
lda $0303,y ; CPU:$D3C8 PRG:53C8 B9 03 03
sec ; CPU:$D3CB PRG:53CB 38
sbc $0303,x ; CPU:$D3CC PRG:53CC FD 03 03
cmp #$0E ; CPU:$D3CF PRG:53CF C9 0E
bcs NmiHandler_OnCarrySet6 ; CPU:$D3D1 PRG:53D1 B0 90
lda a:ZpC8,y ; CPU:$D3D3 PRG:53D3 B9 C8 00
sbc ZpC8,x ; CPU:$D3D6 PRG:53D6 F5 C8
cmp #$08 ; CPU:$D3D8 PRG:53D8 C9 08
bcc NmiHandler_Loop272 ; CPU:$D3DA PRG:53DA 90 04
cmp #$F8 ; CPU:$D3DC PRG:53DC C9 F8
bcc NmiHandler_OnCarrySet6 ; CPU:$D3DE PRG:53DE 90 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop272
; Global: Branch target inside Label: taken when D3E0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop272:
jmp NmiHandler_Loop275 ; CPU:$D3E0 PRG:53E0 4C FF D3
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop273
; Global: Branch target inside Label: taken when D3E3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop273:
lda $0303,y ; CPU:$D3E3 PRG:53E3 B9 03 03
sec ; CPU:$D3E6 PRG:53E6 38
sbc $0303,x ; CPU:$D3E7 PRG:53E7 FD 03 03
cmp #$18 ; CPU:$D3EA PRG:53EA C9 18
bcs NmiHandler_Loop274 ; CPU:$D3EC PRG:53EC B0 0E
lda a:ZpC8,y ; CPU:$D3EE PRG:53EE B9 C8 00
sec ; CPU:$D3F1 PRG:53F1 38
sbc ZpC8,x ; CPU:$D3F2 PRG:53F2 F5 C8
cmp #$06 ; CPU:$D3F4 PRG:53F4 C9 06
bcc NmiHandler_Loop275 ; CPU:$D3F6 PRG:53F6 90 07
cmp #$FA ; CPU:$D3F8 PRG:53F8 C9 FA
bcs NmiHandler_Loop275 ; CPU:$D3FA PRG:53FA B0 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop274
; Global: Branch target inside Label: taken when D3FC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop274:
jmp NmiHandler_OnCarrySet6 ; CPU:$D3FC PRG:53FC 4C 63 D3
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop275
; Global: Branch target inside Label: taken when D3FF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop275:
lda a:ZpB7,y ; CPU:$D3FF PRG:53FF B9 B7 00
ora #$01 ; CPU:$D402 PRG:5402 09 01
sta a:ZpB7,y ; CPU:$D404 PRG:5404 99 B7 00
lda #$00 ; CPU:$D407 PRG:5407 A9 00
sta Zp73 ; CPU:$D409 PRG:5409 85 73
lda #$01 ; CPU:$D40B PRG:540B A9 01
sta Zp74 ; CPU:$D40D PRG:540D 85 74
jsr Sub_C1D5 ; CPU:$D40F PRG:540F 20 D5 C1
lda $0681 ; CPU:$D412 PRG:5412 AD 81 06
beq NmiHandler_Loop276 ; CPU:$D415 PRG:5415 F0 13
lda #$05 ; CPU:$D417 PRG:5417 A9 05
sta Zp73 ; CPU:$D419 PRG:5419 85 73
lda #$00 ; CPU:$D41B PRG:541B A9 00
sta Zp74 ; CPU:$D41D PRG:541D 85 74
jsr Sub_C1D5 ; CPU:$D41F PRG:541F 20 D5 C1
jmp NmiHandler_Loop276 ; CPU:$D422 PRG:5422 4C 2A D4
; -----------------------------------------------------------------------------
; Routine: Sub_D425
; Global: Branch target inside Label: taken when D425.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D425:
jsr Sub_9AA6 ; CPU:$D425 PRG:5425 20 A6 9A
bcc NmiHandler_Loop277 ; CPU:$D428 PRG:5428 90 06
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop276
; Global: Branch target inside Label: taken when D42A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop276:
jsr Sub_D55D ; CPU:$D42A PRG:542A 20 5D D5
jmp Sub_D330 ; CPU:$D42D PRG:542D 4C 30 D3
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop277
; Global: Branch target inside Label: taken when D430.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop277:
lda ZpBD ; CPU:$D430 PRG:5430 A5 BD
bne NmiHandler_Loop280 ; CPU:$D432 PRG:5432 D0 3D
lda $0681 ; CPU:$D434 PRG:5434 AD 81 06
bne NmiHandler_Loop280 ; CPU:$D437 PRG:5437 D0 38
ldy ZpE5,x ; CPU:$D439 PRG:5439 B4 E5
cpy #$18 ; CPU:$D43B PRG:543B C0 18
bcs NmiHandler_Loop280 ; CPU:$D43D PRG:543D B0 32
cpy #$15 ; CPU:$D43F PRG:543F C0 15
bcs NmiHandler_Loop278 ; CPU:$D441 PRG:5441 B0 04
cpy #$10 ; CPU:$D443 PRG:5443 C0 10
bcs NmiHandler_Loop280 ; CPU:$D445 PRG:5445 B0 2A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop278
; Global: Branch target inside Label: taken when D447.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop278:
dey ; CPU:$D447 PRG:5447 88
lda $05BA,y ; CPU:$D448 PRG:5448 B9 BA 05
and #$01 ; CPU:$D44B PRG:544B 29 01
bne NmiHandler_Loop279 ; CPU:$D44D PRG:544D D0 0A
lda ZpC8,x ; CPU:$D44F PRG:544F B5 C8
cmp #$48 ; CPU:$D451 PRG:5451 C9 48
bcc NmiHandler_Loop280 ; CPU:$D453 PRG:5453 90 1C
cmp #$50 ; CPU:$D455 PRG:5455 C9 50
bcc NmiHandler_Loop281 ; CPU:$D457 PRG:5457 90 21
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop279
; Global: Branch target inside Label: taken when D459.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop279:
ldy ZpE5,x ; CPU:$D459 PRG:5459 B4 E5
cpy #$0B ; CPU:$D45B PRG:545B C0 0B
beq NmiHandler_Loop280 ; CPU:$D45D PRG:545D F0 12
dey ; CPU:$D45F PRG:545F 88
lda $05BA,y ; CPU:$D460 PRG:5460 B9 BA 05
and #$02 ; CPU:$D463 PRG:5463 29 02
bne NmiHandler_Loop280 ; CPU:$D465 PRG:5465 D0 0A
lda ZpC8,x ; CPU:$D467 PRG:5467 B5 C8
cmp #$A8 ; CPU:$D469 PRG:5469 C9 A8
bcc NmiHandler_Loop280 ; CPU:$D46B PRG:546B 90 04
cmp #$B0 ; CPU:$D46D PRG:546D C9 B0
bcc NmiHandler_Loop281 ; CPU:$D46F PRG:546F 90 09
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop280
; Global: Branch target inside Label: taken when D471.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop280:
jsr Sub_DFF1 ; CPU:$D471 PRG:5471 20 F1 DF
jsr Sub_9B03 ; CPU:$D474 PRG:5474 20 03 9B
jmp Sub_D330 ; CPU:$D477 PRG:5477 4C 30 D3
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop281
; Global: Branch target inside Label: taken when D47A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop281:
lda ZpE5,x ; CPU:$D47A PRG:547A B5 E5
jsr Sub_9A0B ; CPU:$D47C PRG:547C 20 0B 9A
sec ; CPU:$D47F PRG:547F 38
lda Zp73 ; CPU:$D480 PRG:5480 A5 73
sbc $039D,x ; CPU:$D482 PRG:5482 FD 9D 03
sta Zp73 ; CPU:$D485 PRG:5485 85 73
lda Zp74 ; CPU:$D487 PRG:5487 A5 74
sbc $03AE,x ; CPU:$D489 PRG:5489 FD AE 03
bne NmiHandler_Loop280 ; CPU:$D48C PRG:548C D0 E3
lda Zp73 ; CPU:$D48E PRG:548E A5 73
cmp #$20 ; CPU:$D490 PRG:5490 C9 20
bcc NmiHandler_Loop280 ; CPU:$D492 PRG:5492 90 DD
cmp #$30 ; CPU:$D494 PRG:5494 C9 30
bcs NmiHandler_Loop280 ; CPU:$D496 PRG:5496 B0 D9
lda #$18 ; CPU:$D498 PRG:5498 A9 18
jsr Sub_8224 ; CPU:$D49A PRG:549A 20 24 82
lda #$01 ; CPU:$D49D PRG:549D A9 01
sta ZpBD ; CPU:$D49F PRG:549F 85 BD
lda ZpE5,x ; CPU:$D4A1 PRG:54A1 B5 E5
sta ZpEB ; CPU:$D4A3 PRG:54A3 85 EB
lda ZpC8,x ; CPU:$D4A5 PRG:54A5 B5 C8
sta ZpCE ; CPU:$D4A7 PRG:54A7 85 CE
jmp NmiHandler_Loop276 ; CPU:$D4A9 PRG:54A9 4C 2A D4
; -----------------------------------------------------------------------------
; Routine: Sub_D4AC
; Global: Branch target inside Label: taken when D4AC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D4AC:
ldx #$00 ; CPU:$D4AC PRG:54AC A2 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero77
; Global: Branch target inside Label: taken when D4AE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero77:
lda #$00 ; CPU:$D4AE PRG:54AE A9 00
sta $0325,x ; CPU:$D4B0 PRG:54B0 9D 25 03
lda ZpB7,x ; CPU:$D4B3 PRG:54B3 B5 B7
bmi NmiHandler_Loop282 ; CPU:$D4B5 PRG:54B5 30 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero12
; Global: Branch target inside Label: taken when D4B7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero12:
inx ; CPU:$D4B7 PRG:54B7 E8
cpx #$03 ; CPU:$D4B8 PRG:54B8 E0 03
bne NmiHandler_OnNonzero77 ; CPU:$D4BA PRG:54BA D0 F2
jsr Sub_82A3 ; CPU:$D4BC PRG:54BC 20 A3 82
jmp Sub_D4AC ; CPU:$D4BF PRG:54BF 4C AC D4
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop282
; Global: Branch target inside Label: taken when D4C2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop282:
cmp #$84 ; CPU:$D4C2 PRG:54C2 C9 84
bne NmiHandler_Loop283 ; CPU:$D4C4 PRG:54C4 D0 06
lda #$00 ; CPU:$D4C6 PRG:54C6 A9 00
sta ZpB7,x ; CPU:$D4C8 PRG:54C8 95 B7
beq NmiHandler_OnZero12 ; CPU:$D4CA PRG:54CA F0 EB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop283
; Global: Branch target inside Label: taken when D4CC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop283:
cmp #$88 ; CPU:$D4CC PRG:54CC C9 88
beq NmiHandler_Loop284 ; CPU:$D4CE PRG:54CE F0 04
cmp #$81 ; CPU:$D4D0 PRG:54D0 C9 81
bne NmiHandler_Loop285 ; CPU:$D4D2 PRG:54D2 D0 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop284
; Global: Branch target inside Label: taken when D4D4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop284:
lda #$48 ; CPU:$D4D4 PRG:54D4 A9 48
sta $0314,x ; CPU:$D4D6 PRG:54D6 9D 14 03
lda #$88 ; CPU:$D4D9 PRG:54D9 A9 88
sta ZpB7,x ; CPU:$D4DB PRG:54DB 95 B7
bne NmiHandler_Loop286 ; CPU:$D4DD PRG:54DD D0 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop285
; Global: Branch target inside Label: taken when D4DF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop285:
jsr Sub_D570 ; CPU:$D4DF PRG:54DF 20 70 D5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop286
; Global: Branch target inside Label: taken when D4E2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop286:
lda ZpBE ; CPU:$D4E2 PRG:54E2 A5 BE
and #$43 ; CPU:$D4E4 PRG:54E4 29 43
beq NmiHandler_Loop288 ; CPU:$D4E6 PRG:54E6 F0 2C
and #$02 ; CPU:$D4E8 PRG:54E8 29 02
beq NmiHandler_Loop292 ; CPU:$D4EA PRG:54EA F0 5D
lda $030A ; CPU:$D4EC PRG:54EC AD 0A 03
sec ; CPU:$D4EF PRG:54EF 38
sbc $0303,x ; CPU:$D4F0 PRG:54F0 FD 03 03
cmp #$1C ; CPU:$D4F3 PRG:54F3 C9 1C
bcs NmiHandler_Loop292 ; CPU:$D4F5 PRG:54F5 B0 52
lda ZpBE ; CPU:$D4F7 PRG:54F7 A5 BE
and #$08 ; CPU:$D4F9 PRG:54F9 29 08
beq NmiHandler_Loop287 ; CPU:$D4FB PRG:54FB F0 08
lda ZpCF ; CPU:$D4FD PRG:54FD A5 CF
sec ; CPU:$D4FF PRG:54FF 38
sbc ZpC8,x ; CPU:$D500 PRG:5500 F5 C8
jmp Sub_D50A ; CPU:$D502 PRG:5502 4C 0A D5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop287
; Global: Branch target inside Label: taken when D505.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop287:
lda ZpC8,x ; CPU:$D505 PRG:5505 B5 C8
sec ; CPU:$D507 PRG:5507 38
sbc ZpCF ; CPU:$D508 PRG:5508 E5 CF
; -----------------------------------------------------------------------------
; Routine: Sub_D50A
; Global: Branch target inside Label: taken when D50A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D50A:
cmp #$08 ; CPU:$D50A PRG:550A C9 08
bcc NmiHandler_Loop292 ; CPU:$D50C PRG:550C 90 3B
cmp #$10 ; CPU:$D50E PRG:550E C9 10
bcs NmiHandler_Loop292 ; CPU:$D510 PRG:5510 B0 37
bcc NmiHandler_Loop293 ; CPU:$D512 PRG:5512 90 3A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop288
; Global: Branch target inside Label: taken when D514.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop288:
lda $033D ; CPU:$D514 PRG:5514 AD 3D 03
and #$01 ; CPU:$D517 PRG:5517 29 01
beq NmiHandler_Loop289 ; CPU:$D519 PRG:5519 F0 0D
lda $030A ; CPU:$D51B PRG:551B AD 0A 03
sec ; CPU:$D51E PRG:551E 38
sbc $0303,x ; CPU:$D51F PRG:551F FD 03 03
cmp #$0E ; CPU:$D522 PRG:5522 C9 0E
bcs NmiHandler_Loop292 ; CPU:$D524 PRG:5524 B0 23
bcc NmiHandler_Loop290 ; CPU:$D526 PRG:5526 90 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop289
; Global: Branch target inside Label: taken when D528.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop289:
lda $030A ; CPU:$D528 PRG:5528 AD 0A 03
sec ; CPU:$D52B PRG:552B 38
sbc $0303,x ; CPU:$D52C PRG:552C FD 03 03
cmp #$18 ; CPU:$D52F PRG:552F C9 18
bcs NmiHandler_Loop292 ; CPU:$D531 PRG:5531 B0 16
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop290
; Global: Branch target inside Label: taken when D533.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop290:
lda ZpCF ; CPU:$D533 PRG:5533 A5 CF
sec ; CPU:$D535 PRG:5535 38
sbc ZpC8,x ; CPU:$D536 PRG:5536 F5 C8
cmp #$08 ; CPU:$D538 PRG:5538 C9 08
bcc NmiHandler_Loop291 ; CPU:$D53A PRG:553A 90 04
cmp #$F8 ; CPU:$D53C PRG:553C C9 F8
bcc NmiHandler_Loop292 ; CPU:$D53E PRG:553E 90 09
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop291
; Global: Branch target inside Label: taken when D540.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop291:
lda ZpBE ; CPU:$D540 PRG:5540 A5 BE
ora #$01 ; CPU:$D542 PRG:5542 09 01
sta ZpBE ; CPU:$D544 PRG:5544 85 BE
jmp NmiHandler_Loop293 ; CPU:$D546 PRG:5546 4C 4E D5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop292
; Global: Branch target inside Label: taken when D549.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop292:
jsr Sub_9AA6 ; CPU:$D549 PRG:5549 20 A6 9A
bcc NmiHandler_Loop294 ; CPU:$D54C PRG:554C 90 06
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop293
; Global: Branch target inside Label: taken when D54E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop293:
jsr Sub_D55D ; CPU:$D54E PRG:554E 20 5D D5
jmp NmiHandler_OnZero12 ; CPU:$D551 PRG:5551 4C B7 D4
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop294
; Global: Branch target inside Label: taken when D554.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop294:
jsr Sub_DFF1 ; CPU:$D554 PRG:5554 20 F1 DF
jsr Sub_9B03 ; CPU:$D557 PRG:5557 20 03 9B
jmp NmiHandler_OnZero12 ; CPU:$D55A PRG:555A 4C B7 D4
; -----------------------------------------------------------------------------
; Routine: Sub_D55D
; Global: Branch target inside Label: taken when D55D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D55D:
lda ZpD9,x ; CPU:$D55D PRG:555D B5 D9
bpl NmiHandler_Loop295 ; CPU:$D55F PRG:555F 10 05
lda #$47 ; CPU:$D561 PRG:5561 A9 47
jmp Sub_D568 ; CPU:$D563 PRG:5563 4C 68 D5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop295
; Global: Branch target inside Label: taken when D566.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop295:
lda #$46 ; CPU:$D566 PRG:5566 A9 46
; -----------------------------------------------------------------------------
; Routine: Sub_D568
; Global: Branch target inside Label: taken when D568.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D568:
sta $0314,x ; CPU:$D568 PRG:5568 9D 14 03
lda #$84 ; CPU:$D56B PRG:556B A9 84
sta ZpB7,x ; CPU:$D56D PRG:556D 95 B7
rts ; CPU:$D56F PRG:556F 60
; -----------------------------------------------------------------------------
; Routine: Sub_D570
; Global: Branch target inside Label: taken when D570.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D570:
jsr Sub_9B03 ; CPU:$D570 PRG:5570 20 03 9B
lda #$81 ; CPU:$D573 PRG:5573 A9 81
sta ZpB7,x ; CPU:$D575 PRG:5575 95 B7
lda ZpD9,x ; CPU:$D577 PRG:5577 B5 D9
bpl NmiHandler_Loop296 ; CPU:$D579 PRG:5579 10 05
lda #$45 ; CPU:$D57B PRG:557B A9 45
jmp Sub_D582 ; CPU:$D57D PRG:557D 4C 82 D5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop296
; Global: Branch target inside Label: taken when D580.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop296:
lda #$44 ; CPU:$D580 PRG:5580 A9 44
; -----------------------------------------------------------------------------
; Routine: Sub_D582
; Global: Branch target inside Label: taken when D582.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D582:
sta $0314,x ; CPU:$D582 PRG:5582 9D 14 03
rts ; CPU:$D585 PRG:5585 60
; ---- data $D586-$D599 (20 bytes) ----
.byte $00, $48, $02, $FF, $01, $45, $02, $FF, $01, $44, $02, $FF, $01, $47, $02, $FF ; CPU:$D586 PRG:5586 00 48 02 FF 01 45 02 FF 01 44 02 FF 01 47 02 FF
.byte $01, $46, $02, $FF ; CPU:$D596 PRG:5596 01 46 02 FF
; -----------------------------------------------------------------------------
; Routine: Label_D59A
; Global: Branch target inside Label: taken when D59A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_D59A:
ldx #$06 ; CPU:$D59A PRG:559A A2 06
jsr Sub_99E7 ; CPU:$D59C PRG:559C 20 E7 99
lda $039D,x ; CPU:$D59F PRG:559F BD 9D 03
sec ; CPU:$D5A2 PRG:55A2 38
sbc #$20 ; CPU:$D5A3 PRG:55A3 E9 20
sta $039D,x ; CPU:$D5A5 PRG:55A5 9D 9D 03
lda $03AE,x ; CPU:$D5A8 PRG:55A8 BD AE 03
sbc #$00 ; CPU:$D5AB PRG:55AB E9 00
sta $03AE,x ; CPU:$D5AD PRG:55AD 9D AE 03
ldy ZpE5,x ; CPU:$D5B0 PRG:55B0 B4 E5
dey ; CPU:$D5B2 PRG:55B2 88
lda ZpC8,x ; CPU:$D5B3 PRG:55B3 B5 C8
bmi NmiHandler_Loop297 ; CPU:$D5B5 PRG:55B5 30 0B
lda $05BA,y ; CPU:$D5B7 PRG:55B7 B9 BA 05
ora #$01 ; CPU:$D5BA PRG:55BA 09 01
pha ; CPU:$D5BC PRG:55BC 48
lda #$4C ; CPU:$D5BD PRG:55BD A9 4C
jmp Sub_D5CA ; CPU:$D5BF PRG:55BF 4C CA D5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop297
; Global: Branch target inside Label: taken when D5C2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop297:
lda $05BA,y ; CPU:$D5C2 PRG:55C2 B9 BA 05
ora #$02 ; CPU:$D5C5 PRG:55C5 09 02
pha ; CPU:$D5C7 PRG:55C7 48
lda #$AC ; CPU:$D5C8 PRG:55C8 A9 AC
; -----------------------------------------------------------------------------
; Routine: Sub_D5CA
; Global: Branch target inside Label: taken when D5CA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D5CA:
sta ZpCE ; CPU:$D5CA PRG:55CA 85 CE
pla ; CPU:$D5CC PRG:55CC 68
sta $05BA,y ; CPU:$D5CD PRG:55CD 99 BA 05
jsr Sub_D0EE ; CPU:$D5D0 PRG:55D0 20 EE D0
lda ZpF7 ; CPU:$D5D3 PRG:55D3 A5 F7
lsr a ; CPU:$D5D5 PRG:55D5 4A
sta Zp70 ; CPU:$D5D6 PRG:55D6 85 70
lda #$96 ; CPU:$D5D8 PRG:55D8 A9 96
sec ; CPU:$D5DA PRG:55DA 38
sbc Zp70 ; CPU:$D5DB PRG:55DB E5 70
sta $0682 ; CPU:$D5DD PRG:55DD 8D 82 06
lda #$FF ; CPU:$D5E0 PRG:55E0 A9 FF
sta $0681 ; CPU:$D5E2 PRG:55E2 8D 81 06
lda #$B4 ; CPU:$D5E5 PRG:55E5 A9 B4
sta Zp73 ; CPU:$D5E7 PRG:55E7 85 73
lda #$D6 ; CPU:$D5E9 PRG:55E9 A9 D6
sta Zp74 ; CPU:$D5EB PRG:55EB 85 74
jsr Sub_8334 ; CPU:$D5ED PRG:55ED 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear18
; Global: Branch target inside Label: taken when D5F0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear18:
jsr Sub_9B03 ; CPU:$D5F0 PRG:55F0 20 03 9B
lda #$80 ; CPU:$D5F3 PRG:55F3 A9 80
sta ZpB7,x ; CPU:$D5F5 PRG:55F5 95 B7
jsr NmiHandler_Loop17 ; CPU:$D5F7 PRG:55F7 20 62 83
bcc NmiHandler_OnCarryClear18 ; CPU:$D5FA PRG:55FA 90 F4
jsr Sub_9C6E ; CPU:$D5FC PRG:55FC 20 6E 9C
lda #$B8 ; CPU:$D5FF PRG:55FF A9 B8
sta Zp73 ; CPU:$D601 PRG:5601 85 73
lda #$D6 ; CPU:$D603 PRG:5603 A9 D6
sta Zp74 ; CPU:$D605 PRG:5605 85 74
jsr Sub_8334 ; CPU:$D607 PRG:5607 20 34 83
lda #$20 ; CPU:$D60A PRG:560A A9 20
sta $03BA,x ; CPU:$D60C PRG:560C 9D BA 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero78
; Global: Branch target inside Label: taken when D60F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero78:
inc $039D,x ; CPU:$D60F PRG:560F FE 9D 03
bne NmiHandler_Loop298 ; CPU:$D612 PRG:5612 D0 03
inc $03AE,x ; CPU:$D614 PRG:5614 FE AE 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop298
; Global: Branch target inside Label: taken when D617.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop298:
jsr Sub_9B03 ; CPU:$D617 PRG:5617 20 03 9B
ldy #$08 ; CPU:$D61A PRG:561A A0 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero79
; Global: Branch target inside Label: taken when D61C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero79:
lda a:ZpB7,y ; CPU:$D61C PRG:561C B9 B7 00
bpl NmiHandler_Loop300 ; CPU:$D61F PRG:561F 10 39
and #$01 ; CPU:$D621 PRG:5621 29 01
bne NmiHandler_Loop300 ; CPU:$D623 PRG:5623 D0 35
lda ZpE5,x ; CPU:$D625 PRG:5625 B5 E5
cmp a:ZpE5,y ; CPU:$D627 PRG:5627 D9 E5 00
bne NmiHandler_Loop300 ; CPU:$D62A PRG:562A D0 2E
lda ZpC8,x ; CPU:$D62C PRG:562C B5 C8
sec ; CPU:$D62E PRG:562E 38
sbc a:ZpC8,y ; CPU:$D62F PRG:562F F9 C8 00
beq NmiHandler_Loop299 ; CPU:$D632 PRG:5632 F0 08
cmp #$0D ; CPU:$D634 PRG:5634 C9 0D
bcc NmiHandler_Loop299 ; CPU:$D636 PRG:5636 90 04
cmp #$F3 ; CPU:$D638 PRG:5638 C9 F3
bcc NmiHandler_Loop300 ; CPU:$D63A PRG:563A 90 1E
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop299
; Global: Branch target inside Label: taken when D63C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop299:
lda $0303,y ; CPU:$D63C PRG:563C B9 03 03
sec ; CPU:$D63F PRG:563F 38
sbc $0303,x ; CPU:$D640 PRG:5640 FD 03 03
cmp #$18 ; CPU:$D643 PRG:5643 C9 18
bcs NmiHandler_Loop300 ; CPU:$D645 PRG:5645 B0 13
lda a:ZpB7,y ; CPU:$D647 PRG:5647 B9 B7 00
ora #$01 ; CPU:$D64A PRG:564A 09 01
sta a:ZpB7,y ; CPU:$D64C PRG:564C 99 B7 00
lda #$00 ; CPU:$D64F PRG:564F A9 00
sta Zp73 ; CPU:$D651 PRG:5651 85 73
lda #$03 ; CPU:$D653 PRG:5653 A9 03
sta Zp74 ; CPU:$D655 PRG:5655 85 74
jsr Sub_C1D5 ; CPU:$D657 PRG:5657 20 D5 C1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop300
; Global: Branch target inside Label: taken when D65A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop300:
iny ; CPU:$D65A PRG:565A C8
cpy #$0C ; CPU:$D65B PRG:565B C0 0C
bne NmiHandler_OnNonzero79 ; CPU:$D65D PRG:565D D0 BD
lda #$80 ; CPU:$D65F PRG:565F A9 80
sta ZpB7,x ; CPU:$D661 PRG:5661 95 B7
jsr NmiHandler_Loop17 ; CPU:$D663 PRG:5663 20 62 83
dec $03BA,x ; CPU:$D666 PRG:5666 DE BA 03
bne NmiHandler_OnNonzero78 ; CPU:$D669 PRG:5669 D0 A4
jsr Sub_D69C ; CPU:$D66B PRG:566B 20 9C D6
lda #$BE ; CPU:$D66E PRG:566E A9 BE
clc ; CPU:$D670 PRG:5670 18
adc Zp73 ; CPU:$D671 PRG:5671 65 73
sta Zp73 ; CPU:$D673 PRG:5673 85 73
lda #$D6 ; CPU:$D675 PRG:5675 A9 D6
adc #$00 ; CPU:$D677 PRG:5677 69 00
sta Zp74 ; CPU:$D679 PRG:5679 85 74
jsr Sub_9777 ; CPU:$D67B PRG:567B 20 77 97
lda #$FF ; CPU:$D67E PRG:567E A9 FF
sta $0681 ; CPU:$D680 PRG:5680 8D 81 06
lda #$78 ; CPU:$D683 PRG:5683 A9 78
sta $0682 ; CPU:$D685 PRG:5685 8D 82 06
lda #$1F ; CPU:$D688 PRG:5688 A9 1F
jsr Sub_9C73 ; CPU:$D68A PRG:568A 20 73 9C
jsr Sub_F6DB ; CPU:$D68D PRG:568D 20 DB F6
lda #$20 ; CPU:$D690 PRG:5690 A9 20
jsr Sub_F6DB ; CPU:$D692 PRG:5692 20 DB F6
lda #$00 ; CPU:$D695 PRG:5695 A9 00
sta ZpB7,x ; CPU:$D697 PRG:5697 95 B7
jsr Sub_8266 ; CPU:$D699 PRG:5699 20 66 82
; -----------------------------------------------------------------------------
; Routine: Sub_D69C
; Global: Branch target inside Label: taken when D69C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D69C:
lda $058E ; CPU:$D69C PRG:569C AD 8E 05
and #$03 ; CPU:$D69F PRG:569F 29 03
sta Zp74 ; CPU:$D6A1 PRG:56A1 85 74
lda #$00 ; CPU:$D6A3 PRG:56A3 A9 00
sta Zp73 ; CPU:$D6A5 PRG:56A5 85 73
lsr Zp74 ; CPU:$D6A7 PRG:56A7 46 74
ror Zp73 ; CPU:$D6A9 PRG:56A9 66 73
lsr Zp74 ; CPU:$D6AB PRG:56AB 46 74
ror Zp73 ; CPU:$D6AD PRG:56AD 66 73
lsr Zp74 ; CPU:$D6AF PRG:56AF 46 74
ror Zp73 ; CPU:$D6B1 PRG:56B1 66 73
rts ; CPU:$D6B3 PRG:56B3 60
; ---- data $D6B4-$D73D (138 bytes) ----
.byte $01, $4B, $03, $FF, $00, $4C, $03, $4D, $03, $FF, $0F, $20, $03, $0F, $0F, $20 ; CPU:$D6B4 PRG:56B4 01 4B 03 FF 00 4C 03 4D 03 FF 0F 20 03 0F 0F 20
.byte $03, $0F, $0F, $35, $03, $0F, $0F, $20, $22, $0F, $0F, $36, $17, $07, $0F, $36 ; CPU:$D6C4 PRG:56C4 03 0F 0F 35 03 0F 0F 20 22 0F 0F 36 17 07 0F 36
.byte $17, $0F, $0F, $0F, $30, $02, $0F, $0F, $30, $16, $0F, $20, $03, $0F, $0F, $20 ; CPU:$D6D4 PRG:56D4 17 0F 0F 0F 30 02 0F 0F 30 16 0F 20 03 0F 0F 20
.byte $03, $0F, $0F, $3C, $03, $0F, $0F, $20, $22, $0F, $0F, $36, $17, $07, $0F, $36 ; CPU:$D6E4 PRG:56E4 03 0F 0F 3C 03 0F 0F 20 22 0F 0F 36 17 07 0F 36
.byte $17, $0F, $0F, $0F, $30, $02, $0F, $0F, $30, $16, $0F, $20, $03, $0F, $0F, $20 ; CPU:$D6F4 PRG:56F4 17 0F 0F 0F 30 02 0F 0F 30 16 0F 20 03 0F 0F 20
.byte $03, $0F, $0F, $25, $03, $0F, $0F, $20, $22, $0F, $0F, $36, $17, $07, $0F, $36 ; CPU:$D704 PRG:5704 03 0F 0F 25 03 0F 0F 20 22 0F 0F 36 17 07 0F 36
.byte $17, $0F, $0F, $0F, $30, $02, $0F, $0F, $30, $16, $0F, $20, $03, $0F, $0F, $20 ; CPU:$D714 PRG:5714 17 0F 0F 0F 30 02 0F 0F 30 16 0F 20 03 0F 0F 20
.byte $03, $0F, $0F, $2C, $03, $0F, $0F, $20, $22, $0F, $0F, $36, $17, $07, $0F, $36 ; CPU:$D724 PRG:5724 03 0F 0F 2C 03 0F 0F 20 22 0F 0F 36 17 07 0F 36
.byte $17, $0F, $0F, $0F, $30, $02, $0F, $0F, $30, $16 ; CPU:$D734 PRG:5734 17 0F 0F 0F 30 02 0F 0F 30 16
; -----------------------------------------------------------------------------
; Routine: Label_D73E
; Global: Branch target inside Label: taken when D73E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_D73E:
ldx #$07 ; CPU:$D73E PRG:573E A2 07
lda #$00 ; CPU:$D740 PRG:5740 A9 00
sta $033D ; CPU:$D742 PRG:5742 8D 3D 03
jsr Sub_99E7 ; CPU:$D745 PRG:5745 20 E7 99
jsr Sub_D920 ; CPU:$D748 PRG:5748 20 20 D9
lda ZpBE ; CPU:$D74B PRG:574B A5 BE
ora #$80 ; CPU:$D74D PRG:574D 09 80
and #$8C ; CPU:$D74F PRG:574F 29 8C
sta ZpBE ; CPU:$D751 PRG:5751 85 BE
and #$04 ; CPU:$D753 PRG:5753 29 04
beq NmiHandler_Loop301 ; CPU:$D755 PRG:5755 F0 03
jmp Sub_DAE7 ; CPU:$D757 PRG:5757 4C E7 DA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop301
; Global: Branch target inside Label: taken when D75A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop301:
jmp Sub_D907 ; CPU:$D75A PRG:575A 4C 07 D9
; -----------------------------------------------------------------------------
; Routine: Sub_D75D
; Global: Branch target inside Label: taken when D75D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D75D:
jsr Sub_9BBB ; CPU:$D75D PRG:575D 20 BB 9B
bcc NmiHandler_Loop302 ; CPU:$D760 PRG:5760 90 03
jmp Sub_E23A ; CPU:$D762 PRG:5762 4C 3A E2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop302
; Global: Branch target inside Label: taken when D765.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop302:
lda ZpCF ; CPU:$D765 PRG:5765 A5 CF
jsr Sub_9805 ; CPU:$D767 PRG:5767 20 05 98
bcc NmiHandler_Loop305 ; CPU:$D76A PRG:576A 90 23
jsr Sub_9891 ; CPU:$D76C PRG:576C 20 91 98
bcc NmiHandler_Loop303 ; CPU:$D76F PRG:576F 90 09
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero13
; Global: Branch target inside Label: taken when D771.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero13:
jsr Sub_DA1A ; CPU:$D771 PRG:5771 20 1A DA
jsr Sub_9C7D ; CPU:$D774 PRG:5774 20 7D 9C
jmp Sub_DAE7 ; CPU:$D777 PRG:5777 4C E7 DA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop303
; Global: Branch target inside Label: taken when D77A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop303:
cmp #$00 ; CPU:$D77A PRG:577A C9 00
beq NmiHandler_Loop304 ; CPU:$D77C PRG:577C F0 04
lda #$00 ; CPU:$D77E PRG:577E A9 00
beq NmiHandler_OnZero13 ; CPU:$D780 PRG:5780 F0 EF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop304
; Global: Branch target inside Label: taken when D782.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop304:
ldy $03DE ; CPU:$D782 PRG:5782 AC DE 03
lda $043C,y ; CPU:$D785 PRG:5785 B9 3C 04
cmp ZpEC ; CPU:$D788 PRG:5788 C5 EC
beq NmiHandler_Loop305 ; CPU:$D78A PRG:578A F0 03
jmp Sub_E174 ; CPU:$D78C PRG:578C 4C 74 E1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop305
; Global: Branch target inside Label: taken when D78F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop305:
jsr Sub_E077 ; CPU:$D78F PRG:578F 20 77 E0
jsr Sub_E2D2 ; CPU:$D792 PRG:5792 20 D2 E2
beq NmiHandler_Loop306 ; CPU:$D795 PRG:5795 F0 03
jmp Sub_E0FD ; CPU:$D797 PRG:5797 4C FD E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop306
; Global: Branch target inside Label: taken when D79A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop306:
jsr Sub_DE06 ; CPU:$D79A PRG:579A 20 06 DE
jsr Sub_E4E2 ; CPU:$D79D PRG:579D 20 E2 E4
bcc NmiHandler_Loop307 ; CPU:$D7A0 PRG:57A0 90 03
jmp Sub_DC05 ; CPU:$D7A2 PRG:57A2 4C 05 DC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop307
; Global: Branch target inside Label: taken when D7A5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop307:
lda $03EA ; CPU:$D7A5 PRG:57A5 AD EA 03
cmp #$02 ; CPU:$D7A8 PRG:57A8 C9 02
bne NmiHandler_Loop308 ; CPU:$D7AA PRG:57AA D0 03
jmp Sub_DDAC ; CPU:$D7AC PRG:57AC 4C AC DD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop308
; Global: Branch target inside Label: taken when D7AF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop308:
jsr Sub_E617 ; CPU:$D7AF PRG:57AF 20 17 E6
beq NmiHandler_Loop310 ; CPU:$D7B2 PRG:57B2 F0 11
jsr Sub_9B1F ; CPU:$D7B4 PRG:57B4 20 1F 9B
bne NmiHandler_Loop309 ; CPU:$D7B7 PRG:57B7 D0 07
lda #$FD ; CPU:$D7B9 PRG:57B9 A9 FD
sta ZpE0 ; CPU:$D7BB PRG:57BB 85 E0
jmp Sub_DA11 ; CPU:$D7BD PRG:57BD 4C 11 DA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop309
; Global: Branch target inside Label: taken when D7C0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop309:
jsr Sub_9B18 ; CPU:$D7C0 PRG:57C0 20 18 9B
bne NmiHandler_Loop312 ; CPU:$D7C3 PRG:57C3 D0 14
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop310
; Global: Branch target inside Label: taken when D7C5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop310:
jsr Sub_E611 ; CPU:$D7C5 PRG:57C5 20 11 E6
beq NmiHandler_Loop313 ; CPU:$D7C8 PRG:57C8 F0 12
jsr Sub_9B1F ; CPU:$D7CA PRG:57CA 20 1F 9B
beq NmiHandler_Loop311 ; CPU:$D7CD PRG:57CD F0 07
lda #$03 ; CPU:$D7CF PRG:57CF A9 03
sta ZpE0 ; CPU:$D7D1 PRG:57D1 85 E0
jmp Sub_DA11 ; CPU:$D7D3 PRG:57D3 4C 11 DA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop311
; Global: Branch target inside Label: taken when D7D6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop311:
jsr Sub_9B11 ; CPU:$D7D6 PRG:57D6 20 11 9B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop312
; Global: Branch target inside Label: taken when D7D9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop312:
jsr Sub_D920 ; CPU:$D7D9 PRG:57D9 20 20 D9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop313
; Global: Branch target inside Label: taken when D7DC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop313:
jsr Sub_E139 ; CPU:$D7DC PRG:57DC 20 39 E1
bcc NmiHandler_Loop314 ; CPU:$D7DF PRG:57DF 90 06
jsr Sub_E0B5 ; CPU:$D7E1 PRG:57E1 20 B5 E0
jsr Sub_D95F ; CPU:$D7E4 PRG:57E4 20 5F D9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop314
; Global: Branch target inside Label: taken when D7E7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop314:
jsr Sub_99E7 ; CPU:$D7E7 PRG:57E7 20 E7 99
jsr Sub_9B03 ; CPU:$D7EA PRG:57EA 20 03 9B
dec $03EF,x ; CPU:$D7ED PRG:57ED DE EF 03
bne NmiHandler_Loop315 ; CPU:$D7F0 PRG:57F0 D0 03
jsr Sub_DDC7 ; CPU:$D7F2 PRG:57F2 20 C7 DD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop315
; Global: Branch target inside Label: taken when D7F5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop315:
jsr Sub_8358 ; CPU:$D7F5 PRG:57F5 20 58 83
bcs NmiHandler_Loop316 ; CPU:$D7F8 PRG:57F8 B0 03
jmp Sub_D75D ; CPU:$D7FA PRG:57FA 4C 5D D7
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop316
; Global: Branch target inside Label: taken when D7FD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop316:
ldy #$0D ; CPU:$D7FD PRG:57FD A0 0D
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero80
; Global: Branch target inside Label: taken when D7FF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero80:
lda a:ZpB7,y ; CPU:$D7FF PRG:57FF B9 B7 00
beq NmiHandler_OnNonzero81 ; CPU:$D802 PRG:5802 F0 07
lda a:ZpE5,y ; CPU:$D804 PRG:5804 B9 E5 00
cmp ZpEC ; CPU:$D807 PRG:5807 C5 EC
beq NmiHandler_Loop317 ; CPU:$D809 PRG:5809 F0 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero81
; Global: Branch target inside Label: taken when D80B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero81:
iny ; CPU:$D80B PRG:580B C8
cpy #$11 ; CPU:$D80C PRG:580C C0 11
bne NmiHandler_OnNonzero80 ; CPU:$D80E PRG:580E D0 EF
jsr Sub_D920 ; CPU:$D810 PRG:5810 20 20 D9
jmp Sub_D75D ; CPU:$D813 PRG:5813 4C 5D D7
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop317
; Global: Branch target inside Label: taken when D816.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop317:
lda $0314,y ; CPU:$D816 PRG:5816 B9 14 03
cmp #$9D ; CPU:$D819 PRG:5819 C9 9D
bne NmiHandler_Loop318 ; CPU:$D81B PRG:581B D0 07
jsr Sub_9B1F ; CPU:$D81D PRG:581D 20 1F 9B
beq NmiHandler_OnNonzero81 ; CPU:$D820 PRG:5820 F0 E9
bne NmiHandler_Loop319 ; CPU:$D822 PRG:5822 D0 09
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop318
; Global: Branch target inside Label: taken when D824.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop318:
cmp #$9E ; CPU:$D824 PRG:5824 C9 9E
bne NmiHandler_OnNonzero81 ; CPU:$D826 PRG:5826 D0 E3
jsr Sub_9B1F ; CPU:$D828 PRG:5828 20 1F 9B
bne NmiHandler_OnNonzero81 ; CPU:$D82B PRG:582B D0 DE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop319
; Global: Branch target inside Label: taken when D82D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop319:
lda a:ZpC8,y ; CPU:$D82D PRG:582D B9 C8 00
sec ; CPU:$D830 PRG:5830 38
sbc ZpC8,x ; CPU:$D831 PRG:5831 F5 C8
cmp #$04 ; CPU:$D833 PRG:5833 C9 04
bcc NmiHandler_Loop320 ; CPU:$D835 PRG:5835 90 04
cmp #$FC ; CPU:$D837 PRG:5837 C9 FC
bcc NmiHandler_OnNonzero81 ; CPU:$D839 PRG:5839 90 D0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop320
; Global: Branch target inside Label: taken when D83B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop320:
lda a:ZpC8,y ; CPU:$D83B PRG:583B B9 C8 00
sta ZpCF ; CPU:$D83E PRG:583E 85 CF
lda ZpBE ; CPU:$D840 PRG:5840 A5 BE
ora #$02 ; CPU:$D842 PRG:5842 09 02
sta ZpBE ; CPU:$D844 PRG:5844 85 BE
lda #$00 ; CPU:$D846 PRG:5846 A9 00
sta a:ZpB7,y ; CPU:$D848 PRG:5848 99 B7 00
lda $03C6,y ; CPU:$D84B PRG:584B B9 C6 03
tay ; CPU:$D84E PRG:584E A8
lda #$00 ; CPU:$D84F PRG:584F A9 00
sta $0592,y ; CPU:$D851 PRG:5851 99 92 05
jsr Sub_9B1F ; CPU:$D854 PRG:5854 20 1F 9B
bne NmiHandler_Loop321 ; CPU:$D857 PRG:5857 D0 0A
lda #$6A ; CPU:$D859 PRG:5859 A9 6A
sta Zp73 ; CPU:$D85B PRG:585B 85 73
lda #$E7 ; CPU:$D85D PRG:585D A9 E7
sta Zp74 ; CPU:$D85F PRG:585F 85 74
bne NmiHandler_Loop322 ; CPU:$D861 PRG:5861 D0 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop321
; Global: Branch target inside Label: taken when D863.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop321:
lda #$4A ; CPU:$D863 PRG:5863 A9 4A
sta Zp73 ; CPU:$D865 PRG:5865 85 73
lda #$E7 ; CPU:$D867 PRG:5867 A9 E7
sta Zp74 ; CPU:$D869 PRG:5869 85 74
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop322
; Global: Branch target inside Label: taken when D86B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop322:
jsr Sub_8334 ; CPU:$D86B PRG:586B 20 34 83
lda #$1E ; CPU:$D86E PRG:586E A9 1E
jsr Sub_F6DB ; CPU:$D870 PRG:5870 20 DB F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear19
; Global: Branch target inside Label: taken when D873.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear19:
jsr Sub_8358 ; CPU:$D873 PRG:5873 20 58 83
bcc NmiHandler_OnCarryClear19 ; CPU:$D876 PRG:5876 90 FB
lda #$96 ; CPU:$D878 PRG:5878 A9 96
sta $03C1 ; CPU:$D87A PRG:587A 8D C1 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero82
; Global: Branch target inside Label: taken when D87D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero82:
jsr Sub_9B1F ; CPU:$D87D PRG:587D 20 1F 9B
bne NmiHandler_Loop323 ; CPU:$D880 PRG:5880 D0 07
jsr Sub_E611 ; CPU:$D882 PRG:5882 20 11 E6
beq NmiHandler_Loop324 ; CPU:$D885 PRG:5885 F0 07
bne NmiHandler_Loop325 ; CPU:$D887 PRG:5887 D0 0D
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop323
; Global: Branch target inside Label: taken when D889.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop323:
jsr Sub_E617 ; CPU:$D889 PRG:5889 20 17 E6
bne NmiHandler_Loop325 ; CPU:$D88C PRG:588C D0 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop324
; Global: Branch target inside Label: taken when D88E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop324:
jsr Sub_82A3 ; CPU:$D88E PRG:588E 20 A3 82
dec $03C1 ; CPU:$D891 PRG:5891 CE C1 03
bne NmiHandler_OnNonzero82 ; CPU:$D894 PRG:5894 D0 E7
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop325
; Global: Branch target inside Label: taken when D896.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop325:
jsr Sub_9B1F ; CPU:$D896 PRG:5896 20 1F 9B
beq NmiHandler_Loop326 ; CPU:$D899 PRG:5899 F0 0D
lda #$5C ; CPU:$D89B PRG:589B A9 5C
sta Zp73 ; CPU:$D89D PRG:589D 85 73
lda #$E7 ; CPU:$D89F PRG:589F A9 E7
sta Zp74 ; CPU:$D8A1 PRG:58A1 85 74
jsr Sub_9B11 ; CPU:$D8A3 PRG:58A3 20 11 9B
bne NmiHandler_Loop327 ; CPU:$D8A6 PRG:58A6 D0 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop326
; Global: Branch target inside Label: taken when D8A8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop326:
lda #$7C ; CPU:$D8A8 PRG:58A8 A9 7C
sta Zp73 ; CPU:$D8AA PRG:58AA 85 73
lda #$E7 ; CPU:$D8AC PRG:58AC A9 E7
sta Zp74 ; CPU:$D8AE PRG:58AE 85 74
jsr Sub_9B18 ; CPU:$D8B0 PRG:58B0 20 18 9B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop327
; Global: Branch target inside Label: taken when D8B3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop327:
jsr Sub_8334 ; CPU:$D8B3 PRG:58B3 20 34 83
lda #$1C ; CPU:$D8B6 PRG:58B6 A9 1C
jsr Sub_F6DB ; CPU:$D8B8 PRG:58B8 20 DB F6
lda #$1D ; CPU:$D8BB PRG:58BB A9 1D
jsr Sub_F6DB ; CPU:$D8BD PRG:58BD 20 DB F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear20
; Global: Branch target inside Label: taken when D8C0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear20:
jsr Sub_8358 ; CPU:$D8C0 PRG:58C0 20 58 83
bcc NmiHandler_OnCarryClear20 ; CPU:$D8C3 PRG:58C3 90 FB
lda #$FF ; CPU:$D8C5 PRG:58C5 A9 FF
sta $0686 ; CPU:$D8C7 PRG:58C7 8D 86 06
lda ZpCF ; CPU:$D8CA PRG:58CA A5 CF
bmi NmiHandler_Loop328 ; CPU:$D8CC PRG:58CC 30 03
clc ; CPU:$D8CE PRG:58CE 18
adc #$10 ; CPU:$D8CF PRG:58CF 69 10
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop328
; Global: Branch target inside Label: taken when D8D1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop328:
sta ZpD4 ; CPU:$D8D1 PRG:58D1 85 D4
lda $03A4 ; CPU:$D8D3 PRG:58D3 AD A4 03
sec ; CPU:$D8D6 PRG:58D6 38
sbc #$12 ; CPU:$D8D7 PRG:58D7 E9 12
sta $03A9 ; CPU:$D8D9 PRG:58D9 8D A9 03
lda $03B5 ; CPU:$D8DC PRG:58DC AD B5 03
sbc #$00 ; CPU:$D8DF PRG:58DF E9 00
sta $03BA ; CPU:$D8E1 PRG:58E1 8D BA 03
lda #$00 ; CPU:$D8E4 PRG:58E4 A9 00
sta Zp73 ; CPU:$D8E6 PRG:58E6 85 73
lda #$05 ; CPU:$D8E8 PRG:58E8 A9 05
sta Zp74 ; CPU:$D8EA PRG:58EA 85 74
stx ZpA0 ; CPU:$D8EC PRG:58EC 86 A0
jsr Sub_C1D5 ; CPU:$D8EE PRG:58EE 20 D5 C1
ldx ZpA0 ; CPU:$D8F1 PRG:58F1 A6 A0
jsr Sub_D920 ; CPU:$D8F3 PRG:58F3 20 20 D9
lda ZpBE ; CPU:$D8F6 PRG:58F6 A5 BE
and #$FD ; CPU:$D8F8 PRG:58F8 29 FD
sta ZpBE ; CPU:$D8FA PRG:58FA 85 BE
lda $033D ; CPU:$D8FC PRG:58FC AD 3D 03
ora #$20 ; CPU:$D8FF PRG:58FF 09 20
sta $033D ; CPU:$D901 PRG:5901 8D 3D 03
jmp Sub_D75D ; CPU:$D904 PRG:5904 4C 5D D7
; -----------------------------------------------------------------------------
; Routine: Sub_D907
; Global: Branch target inside Label: taken when D907.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D907:
jsr Sub_F1D3 ; CPU:$D907 PRG:5907 20 D3 F1
jsr Sub_9B1F ; CPU:$D90A PRG:590A 20 1F 9B
bne NmiHandler_Loop329 ; CPU:$D90D PRG:590D D0 04
lda #$01 ; CPU:$D90F PRG:590F A9 01
bne NmiHandler_Loop330 ; CPU:$D911 PRG:5911 D0 02
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop329
; Global: Branch target inside Label: taken when D913.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop329:
lda #$FF ; CPU:$D913 PRG:5913 A9 FF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop330
; Global: Branch target inside Label: taken when D915.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop330:
sta ZpE0 ; CPU:$D915 PRG:5915 85 E0
jsr Sub_D920 ; CPU:$D917 PRG:5917 20 20 D9
jsr Sub_DBEE ; CPU:$D91A PRG:591A 20 EE DB
jmp Sub_D75D ; CPU:$D91D PRG:591D 4C 5D D7
; -----------------------------------------------------------------------------
; Routine: Sub_D920
; Global: Branch target inside Label: taken when D920.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D920:
jsr Sub_9B1F ; CPU:$D920 PRG:5920 20 1F 9B
beq NmiHandler_Loop332 ; CPU:$D923 PRG:5923 F0 1D
lda $0336,x ; CPU:$D925 PRG:5925 BD 36 03
and #$20 ; CPU:$D928 PRG:5928 29 20
bne NmiHandler_Loop331 ; CPU:$D92A PRG:592A D0 0B
lda #$7A ; CPU:$D92C PRG:592C A9 7A
sta Zp73 ; CPU:$D92E PRG:592E 85 73
lda #$E6 ; CPU:$D930 PRG:5930 A9 E6
sta Zp74 ; CPU:$D932 PRG:5932 85 74
jmp Sub_8334 ; CPU:$D934 PRG:5934 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop331
; Global: Branch target inside Label: taken when D937.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop331:
lda #$8A ; CPU:$D937 PRG:5937 A9 8A
sta Zp73 ; CPU:$D939 PRG:5939 85 73
lda #$E7 ; CPU:$D93B PRG:593B A9 E7
sta Zp74 ; CPU:$D93D PRG:593D 85 74
jmp Sub_8334 ; CPU:$D93F PRG:593F 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop332
; Global: Branch target inside Label: taken when D942.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop332:
lda $0336,x ; CPU:$D942 PRG:5942 BD 36 03
and #$20 ; CPU:$D945 PRG:5945 29 20
bne NmiHandler_Loop333 ; CPU:$D947 PRG:5947 D0 0B
lda #$7E ; CPU:$D949 PRG:5949 A9 7E
sta Zp73 ; CPU:$D94B PRG:594B 85 73
lda #$E6 ; CPU:$D94D PRG:594D A9 E6
sta Zp74 ; CPU:$D94F PRG:594F 85 74
jmp Sub_8334 ; CPU:$D951 PRG:5951 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop333
; Global: Branch target inside Label: taken when D954.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop333:
lda #$8E ; CPU:$D954 PRG:5954 A9 8E
sta Zp73 ; CPU:$D956 PRG:5956 85 73
lda #$E7 ; CPU:$D958 PRG:5958 A9 E7
sta Zp74 ; CPU:$D95A PRG:595A 85 74
jmp Sub_8334 ; CPU:$D95C PRG:595C 4C 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_D95F
; Global: Branch target inside Label: taken when D95F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D95F:
jsr Sub_9B1F ; CPU:$D95F PRG:595F 20 1F 9B
beq NmiHandler_Loop334 ; CPU:$D962 PRG:5962 F0 0B
lda #$C8 ; CPU:$D964 PRG:5964 A9 C8
sta Zp73 ; CPU:$D966 PRG:5966 85 73
lda #$E6 ; CPU:$D968 PRG:5968 A9 E6
sta Zp74 ; CPU:$D96A PRG:596A 85 74
jmp Sub_8334 ; CPU:$D96C PRG:596C 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop334
; Global: Branch target inside Label: taken when D96F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop334:
lda #$CE ; CPU:$D96F PRG:596F A9 CE
sta Zp73 ; CPU:$D971 PRG:5971 85 73
lda #$E6 ; CPU:$D973 PRG:5973 A9 E6
sta Zp74 ; CPU:$D975 PRG:5975 85 74
jmp Sub_8334 ; CPU:$D977 PRG:5977 4C 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_D97A
; Global: Branch target inside Label: taken when D97A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_D97A:
jsr Sub_E2D2 ; CPU:$D97A PRG:597A 20 D2 E2
beq NmiHandler_Loop335 ; CPU:$D97D PRG:597D F0 03
jmp Sub_E0FD ; CPU:$D97F PRG:597F 4C FD E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop335
; Global: Branch target inside Label: taken when D982.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop335:
jsr Sub_DE06 ; CPU:$D982 PRG:5982 20 06 DE
jsr Sub_E4E2 ; CPU:$D985 PRG:5985 20 E2 E4
bcc NmiHandler_Loop336 ; CPU:$D988 PRG:5988 90 03
jmp Sub_DC05 ; CPU:$D98A PRG:598A 4C 05 DC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop336
; Global: Branch target inside Label: taken when D98D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop336:
lda $03EA ; CPU:$D98D PRG:598D AD EA 03
cmp #$02 ; CPU:$D990 PRG:5990 C9 02
bne NmiHandler_Loop337 ; CPU:$D992 PRG:5992 D0 03
jmp Sub_DDAC ; CPU:$D994 PRG:5994 4C AC DD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop337
; Global: Branch target inside Label: taken when D997.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop337:
jsr Sub_E617 ; CPU:$D997 PRG:5997 20 17 E6
bne NmiHandler_Loop338 ; CPU:$D99A PRG:599A D0 02
beq NmiHandler_Loop339 ; CPU:$D99C PRG:599C F0 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop338
; Global: Branch target inside Label: taken when D99E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop338:
jsr Sub_9B1F ; CPU:$D99E PRG:599E 20 1F 9B
beq NmiHandler_Loop341 ; CPU:$D9A1 PRG:59A1 F0 16
jsr Sub_9B18 ; CPU:$D9A3 PRG:59A3 20 18 9B
jmp Sub_D907 ; CPU:$D9A6 PRG:59A6 4C 07 D9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop339
; Global: Branch target inside Label: taken when D9A9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop339:
jsr Sub_E611 ; CPU:$D9A9 PRG:59A9 20 11 E6
beq NmiHandler_Loop340 ; CPU:$D9AC PRG:59AC F0 08
jsr Sub_9B1F ; CPU:$D9AE PRG:59AE 20 1F 9B
bne NmiHandler_Loop341 ; CPU:$D9B1 PRG:59B1 D0 06
jsr Sub_9B11 ; CPU:$D9B3 PRG:59B3 20 11 9B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop340
; Global: Branch target inside Label: taken when D9B6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop340:
jmp Sub_D907 ; CPU:$D9B6 PRG:59B6 4C 07 D9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop341
; Global: Branch target inside Label: taken when D9B9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop341:
jsr Sub_97FE ; CPU:$D9B9 PRG:59B9 20 FE 97
bcc NmiHandler_Loop343 ; CPU:$D9BC PRG:59BC 90 1C
jsr Sub_9891 ; CPU:$D9BE PRG:59BE 20 91 98
bcc NmiHandler_Loop342 ; CPU:$D9C1 PRG:59C1 90 06
jsr Sub_DA1A ; CPU:$D9C3 PRG:59C3 20 1A DA
jmp Sub_E06C ; CPU:$D9C6 PRG:59C6 4C 6C E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop342
; Global: Branch target inside Label: taken when D9C9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop342:
cmp #$00 ; CPU:$D9C9 PRG:59C9 C9 00
bne NmiHandler_Loop344 ; CPU:$D9CB PRG:59CB D0 18
ldy $03DE ; CPU:$D9CD PRG:59CD AC DE 03
lda $043C,y ; CPU:$D9D0 PRG:59D0 B9 3C 04
cmp ZpEC ; CPU:$D9D3 PRG:59D3 C5 EC
beq NmiHandler_Loop343 ; CPU:$D9D5 PRG:59D5 F0 03
jmp Sub_DD4A ; CPU:$D9D7 PRG:59D7 4C 4A DD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop343
; Global: Branch target inside Label: taken when D9DA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop343:
jsr Sub_DFF1 ; CPU:$D9DA PRG:59DA 20 F1 DF
jsr Sub_9848 ; CPU:$D9DD PRG:59DD 20 48 98
bcc NmiHandler_Loop344 ; CPU:$D9E0 PRG:59E0 90 03
jsr Sub_DFF9 ; CPU:$D9E2 PRG:59E2 20 F9 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop344
; Global: Branch target inside Label: taken when D9E5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop344:
jsr Sub_9BBB ; CPU:$D9E5 PRG:59E5 20 BB 9B
bcc NmiHandler_Loop345 ; CPU:$D9E8 PRG:59E8 90 03
jmp Sub_E23A ; CPU:$D9EA PRG:59EA 4C 3A E2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop345
; Global: Branch target inside Label: taken when D9ED.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop345:
jsr Sub_E139 ; CPU:$D9ED PRG:59ED 20 39 E1
bcc NmiHandler_Loop346 ; CPU:$D9F0 PRG:59F0 90 06
jsr Sub_E0B5 ; CPU:$D9F2 PRG:59F2 20 B5 E0
jsr Sub_DBD4 ; CPU:$D9F5 PRG:59F5 20 D4 DB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop346
; Global: Branch target inside Label: taken when D9F8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop346:
jsr Sub_99E7 ; CPU:$D9F8 PRG:59F8 20 E7 99
jsr Sub_9B03 ; CPU:$D9FB PRG:59FB 20 03 9B
dec $03EF,x ; CPU:$D9FE PRG:59FE DE EF 03
bne NmiHandler_Loop347 ; CPU:$DA01 PRG:5A01 D0 03
jsr Sub_DDC7 ; CPU:$DA03 PRG:5A03 20 C7 DD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop347
; Global: Branch target inside Label: taken when DA06.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop347:
jsr Sub_8358 ; CPU:$DA06 PRG:5A06 20 58 83
bcc NmiHandler_Loop348 ; CPU:$DA09 PRG:5A09 90 03
jsr Sub_DB95 ; CPU:$DA0B PRG:5A0B 20 95 DB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop348
; Global: Branch target inside Label: taken when DA0E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop348:
jmp Sub_D97A ; CPU:$DA0E PRG:5A0E 4C 7A D9
; -----------------------------------------------------------------------------
; Routine: Sub_DA11
; Global: Branch target inside Label: taken when DA11.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DA11:
jsr Sub_F1D3 ; CPU:$DA11 PRG:5A11 20 D3 F1
jsr Sub_DB95 ; CPU:$DA14 PRG:5A14 20 95 DB
jmp NmiHandler_Loop344 ; CPU:$DA17 PRG:5A17 4C E5 D9
; -----------------------------------------------------------------------------
; Routine: Sub_DA1A
; Global: Branch target inside Label: taken when DA1A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DA1A:
cmp #$00 ; CPU:$DA1A PRG:5A1A C9 00
bne NmiHandler_Loop349 ; CPU:$DA1C PRG:5A1C D0 13
lda ZpB7,x ; CPU:$DA1E PRG:5A1E B5 B7
ora #$04 ; CPU:$DA20 PRG:5A20 09 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero83
; Global: Branch target inside Label: taken when DA22.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero83:
sta ZpB7,x ; CPU:$DA22 PRG:5A22 95 B7
ldy $03D7,x ; CPU:$DA24 PRG:5A24 BC D7 03
lda $04B1,y ; CPU:$DA27 PRG:5A27 B9 B1 04
ora $E633,x ; CPU:$DA2A PRG:5A2A 1D 33 E6
sta $04B1,y ; CPU:$DA2D PRG:5A2D 99 B1 04
rts ; CPU:$DA30 PRG:5A30 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop349
; Global: Branch target inside Label: taken when DA31.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop349:
lda ZpB7,x ; CPU:$DA31 PRG:5A31 B5 B7
ora #$14 ; CPU:$DA33 PRG:5A33 09 14
bne NmiHandler_OnNonzero83 ; CPU:$DA35 PRG:5A35 D0 EB
; -----------------------------------------------------------------------------
; Routine: Sub_DA37
; Global: Branch target inside Label: taken when DA37.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DA37:
lda ZpEC ; CPU:$DA37 PRG:5A37 A5 EC
cmp #$1F ; CPU:$DA39 PRG:5A39 C9 1F
beq NmiHandler_Loop350 ; CPU:$DA3B PRG:5A3B F0 1A
cmp #$1E ; CPU:$DA3D PRG:5A3D C9 1E
bne NmiHandler_Loop351 ; CPU:$DA3F PRG:5A3F D0 1B
lda ZpBE ; CPU:$DA41 PRG:5A41 A5 BE
and #$04 ; CPU:$DA43 PRG:5A43 29 04
beq NmiHandler_Loop351 ; CPU:$DA45 PRG:5A45 F0 15
lda ZpBE ; CPU:$DA47 PRG:5A47 A5 BE
and #$10 ; CPU:$DA49 PRG:5A49 29 10
bne NmiHandler_Loop351 ; CPU:$DA4B PRG:5A4B D0 0F
ldy $03DE ; CPU:$DA4D PRG:5A4D AC DE 03
lda $0408,y ; CPU:$DA50 PRG:5A50 B9 08 04
cmp #$1B ; CPU:$DA53 PRG:5A53 C9 1B
bcc NmiHandler_Loop351 ; CPU:$DA55 PRG:5A55 90 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop350
; Global: Branch target inside Label: taken when DA57.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop350:
pla ; CPU:$DA57 PRG:5A57 68
pla ; CPU:$DA58 PRG:5A58 68
jmp NmiHandler_OnNonzero86 ; CPU:$DA59 PRG:5A59 4C DC E2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop351
; Global: Branch target inside Label: taken when DA5C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop351:
rts ; CPU:$DA5C PRG:5A5C 60
; -----------------------------------------------------------------------------
; Routine: Sub_DA5D
; Global: Branch target inside Label: taken when DA5D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DA5D:
jsr Sub_DA37 ; CPU:$DA5D PRG:5A5D 20 37 DA
jsr Sub_E2D7 ; CPU:$DA60 PRG:5A60 20 D7 E2
beq NmiHandler_Loop352 ; CPU:$DA63 PRG:5A63 F0 03
jmp Sub_E0FD ; CPU:$DA65 PRG:5A65 4C FD E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop352
; Global: Branch target inside Label: taken when DA68.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop352:
jsr Sub_9B81 ; CPU:$DA68 PRG:5A68 20 81 9B
bcc NmiHandler_Loop353 ; CPU:$DA6B PRG:5A6B 90 03
jmp Sub_E23A ; CPU:$DA6D PRG:5A6D 4C 3A E2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop353
; Global: Branch target inside Label: taken when DA70.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop353:
jsr Sub_DE06 ; CPU:$DA70 PRG:5A70 20 06 DE
lda #$00 ; CPU:$DA73 PRG:5A73 A9 00
sta $03EA ; CPU:$DA75 PRG:5A75 8D EA 03
lda $0300 ; CPU:$DA78 PRG:5A78 AD 00 03
and #$08 ; CPU:$DA7B PRG:5A7B 29 08
beq NmiHandler_Loop354 ; CPU:$DA7D PRG:5A7D F0 0D
lda ZpBE ; CPU:$DA7F PRG:5A7F A5 BE
and #$10 ; CPU:$DA81 PRG:5A81 29 10
bne NmiHandler_Loop354 ; CPU:$DA83 PRG:5A83 D0 07
lda #$FE ; CPU:$DA85 PRG:5A85 A9 FE
sta $03EA ; CPU:$DA87 PRG:5A87 8D EA 03
bne NmiHandler_Loop356 ; CPU:$DA8A PRG:5A8A D0 15
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop354
; Global: Branch target inside Label: taken when DA8C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop354:
lda $0300 ; CPU:$DA8C PRG:5A8C AD 00 03
and #$04 ; CPU:$DA8F PRG:5A8F 29 04
beq NmiHandler_Loop356 ; CPU:$DA91 PRG:5A91 F0 0E
lda ZpBE ; CPU:$DA93 PRG:5A93 A5 BE
and #$10 ; CPU:$DA95 PRG:5A95 29 10
beq NmiHandler_Loop355 ; CPU:$DA97 PRG:5A97 F0 03
jmp Sub_DDAC ; CPU:$DA99 PRG:5A99 4C AC DD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop355
; Global: Branch target inside Label: taken when DA9C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop355:
lda #$02 ; CPU:$DA9C PRG:5A9C A9 02
sta $03EA ; CPU:$DA9E PRG:5A9E 8D EA 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop356
; Global: Branch target inside Label: taken when DAA1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop356:
jsr Sub_E617 ; CPU:$DAA1 PRG:5AA1 20 17 E6
beq NmiHandler_Loop358 ; CPU:$DAA4 PRG:5AA4 F0 11
jsr Sub_9B1F ; CPU:$DAA6 PRG:5AA6 20 1F 9B
bne NmiHandler_Loop357 ; CPU:$DAA9 PRG:5AA9 D0 07
lda #$FD ; CPU:$DAAB PRG:5AAB A9 FD
sta ZpE0 ; CPU:$DAAD PRG:5AAD 85 E0
jmp Sub_DB89 ; CPU:$DAAF PRG:5AAF 4C 89 DB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop357
; Global: Branch target inside Label: taken when DAB2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop357:
jsr Sub_9B18 ; CPU:$DAB2 PRG:5AB2 20 18 9B
bne NmiHandler_Loop360 ; CPU:$DAB5 PRG:5AB5 D0 14
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop358
; Global: Branch target inside Label: taken when DAB7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop358:
jsr Sub_E611 ; CPU:$DAB7 PRG:5AB7 20 11 E6
beq NmiHandler_Loop361 ; CPU:$DABA PRG:5ABA F0 12
jsr Sub_9B1F ; CPU:$DABC PRG:5ABC 20 1F 9B
beq NmiHandler_Loop359 ; CPU:$DABF PRG:5ABF F0 07
lda #$03 ; CPU:$DAC1 PRG:5AC1 A9 03
sta ZpE0 ; CPU:$DAC3 PRG:5AC3 85 E0
jmp Sub_DB89 ; CPU:$DAC5 PRG:5AC5 4C 89 DB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop359
; Global: Branch target inside Label: taken when DAC8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop359:
jsr Sub_9B11 ; CPU:$DAC8 PRG:5AC8 20 11 9B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop360
; Global: Branch target inside Label: taken when DACB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop360:
jsr Sub_D920 ; CPU:$DACB PRG:5ACB 20 20 D9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop361
; Global: Branch target inside Label: taken when DACE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop361:
jsr Sub_E139 ; CPU:$DACE PRG:5ACE 20 39 E1
bcc NmiHandler_Loop362 ; CPU:$DAD1 PRG:5AD1 90 06
jsr Sub_E0B5 ; CPU:$DAD3 PRG:5AD3 20 B5 E0
jsr Sub_D95F ; CPU:$DAD6 PRG:5AD6 20 5F D9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop362
; Global: Branch target inside Label: taken when DAD9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop362:
jsr Sub_9B03 ; CPU:$DAD9 PRG:5AD9 20 03 9B
jsr Sub_8358 ; CPU:$DADC PRG:5ADC 20 58 83
bcc NmiHandler_Loop363 ; CPU:$DADF PRG:5ADF 90 03
jsr Sub_D920 ; CPU:$DAE1 PRG:5AE1 20 20 D9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop363
; Global: Branch target inside Label: taken when DAE4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop363:
jmp Sub_DA5D ; CPU:$DAE4 PRG:5AE4 4C 5D DA
; -----------------------------------------------------------------------------
; Routine: Sub_DAE7
; Global: Branch target inside Label: taken when DAE7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DAE7:
jsr Sub_E072 ; CPU:$DAE7 PRG:5AE7 20 72 E0
jsr Sub_DDC7 ; CPU:$DAEA PRG:5AEA 20 C7 DD
lda #$00 ; CPU:$DAED PRG:5AED A9 00
sta ZpD9,x ; CPU:$DAEF PRG:5AEF 95 D9
jsr Sub_F1D3 ; CPU:$DAF1 PRG:5AF1 20 D3 F1
jsr Sub_D920 ; CPU:$DAF4 PRG:5AF4 20 20 D9
jmp Sub_DA5D ; CPU:$DAF7 PRG:5AF7 4C 5D DA
; -----------------------------------------------------------------------------
; Routine: Sub_DAFA
; Global: Branch target inside Label: taken when DAFA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DAFA:
jsr Sub_E2D7 ; CPU:$DAFA PRG:5AFA 20 D7 E2
beq NmiHandler_Loop364 ; CPU:$DAFD PRG:5AFD F0 03
jmp Sub_E0FD ; CPU:$DAFF PRG:5AFF 4C FD E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop364
; Global: Branch target inside Label: taken when DB02.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop364:
jsr Sub_9B81 ; CPU:$DB02 PRG:5B02 20 81 9B
bcc NmiHandler_Loop365 ; CPU:$DB05 PRG:5B05 90 03
jmp Sub_E23A ; CPU:$DB07 PRG:5B07 4C 3A E2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop365
; Global: Branch target inside Label: taken when DB0A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop365:
jsr Sub_DE06 ; CPU:$DB0A PRG:5B0A 20 06 DE
lda #$00 ; CPU:$DB0D PRG:5B0D A9 00
sta $03EA ; CPU:$DB0F PRG:5B0F 8D EA 03
lda $0300 ; CPU:$DB12 PRG:5B12 AD 00 03
and #$08 ; CPU:$DB15 PRG:5B15 29 08
beq NmiHandler_Loop366 ; CPU:$DB17 PRG:5B17 F0 0D
lda ZpBE ; CPU:$DB19 PRG:5B19 A5 BE
and #$10 ; CPU:$DB1B PRG:5B1B 29 10
bne NmiHandler_Loop366 ; CPU:$DB1D PRG:5B1D D0 07
lda #$FE ; CPU:$DB1F PRG:5B1F A9 FE
sta $03EA ; CPU:$DB21 PRG:5B21 8D EA 03
bne NmiHandler_Loop368 ; CPU:$DB24 PRG:5B24 D0 15
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop366
; Global: Branch target inside Label: taken when DB26.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop366:
lda $0300 ; CPU:$DB26 PRG:5B26 AD 00 03
and #$04 ; CPU:$DB29 PRG:5B29 29 04
beq NmiHandler_Loop368 ; CPU:$DB2B PRG:5B2B F0 0E
lda ZpBE ; CPU:$DB2D PRG:5B2D A5 BE
and #$10 ; CPU:$DB2F PRG:5B2F 29 10
beq NmiHandler_Loop367 ; CPU:$DB31 PRG:5B31 F0 03
jmp Sub_DDAC ; CPU:$DB33 PRG:5B33 4C AC DD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop367
; Global: Branch target inside Label: taken when DB36.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop367:
lda #$02 ; CPU:$DB36 PRG:5B36 A9 02
sta $03EA ; CPU:$DB38 PRG:5B38 8D EA 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop368
; Global: Branch target inside Label: taken when DB3B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop368:
jsr Sub_E611 ; CPU:$DB3B PRG:5B3B 20 11 E6
beq NmiHandler_Loop369 ; CPU:$DB3E PRG:5B3E F0 0B
jsr Sub_9B1F ; CPU:$DB40 PRG:5B40 20 1F 9B
bne NmiHandler_Loop371 ; CPU:$DB43 PRG:5B43 D0 19
jsr Sub_9B11 ; CPU:$DB45 PRG:5B45 20 11 9B
jmp Sub_DAE7 ; CPU:$DB48 PRG:5B48 4C E7 DA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop369
; Global: Branch target inside Label: taken when DB4B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop369:
jsr Sub_E617 ; CPU:$DB4B PRG:5B4B 20 17 E6
bne NmiHandler_Loop370 ; CPU:$DB4E PRG:5B4E D0 03
jmp Sub_DAE7 ; CPU:$DB50 PRG:5B50 4C E7 DA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop370
; Global: Branch target inside Label: taken when DB53.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop370:
jsr Sub_9B1F ; CPU:$DB53 PRG:5B53 20 1F 9B
beq NmiHandler_Loop371 ; CPU:$DB56 PRG:5B56 F0 06
jsr Sub_9B18 ; CPU:$DB58 PRG:5B58 20 18 9B
jmp Sub_DAE7 ; CPU:$DB5B PRG:5B5B 4C E7 DA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop371
; Global: Branch target inside Label: taken when DB5E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop371:
jsr Sub_9A3B ; CPU:$DB5E PRG:5B5E 20 3B 9A
bcs NmiHandler_Loop373 ; CPU:$DB61 PRG:5B61 B0 0D
cmp #$00 ; CPU:$DB63 PRG:5B63 C9 00
beq NmiHandler_Loop372 ; CPU:$DB65 PRG:5B65 F0 06
jsr Sub_DBEE ; CPU:$DB67 PRG:5B67 20 EE DB
jmp Sub_E07C ; CPU:$DB6A PRG:5B6A 4C 7C E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop372
; Global: Branch target inside Label: taken when DB6D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop372:
jsr Sub_DFF1 ; CPU:$DB6D PRG:5B6D 20 F1 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop373
; Global: Branch target inside Label: taken when DB70.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop373:
jsr Sub_E139 ; CPU:$DB70 PRG:5B70 20 39 E1
bcc NmiHandler_Loop374 ; CPU:$DB73 PRG:5B73 90 06
jsr Sub_E0B5 ; CPU:$DB75 PRG:5B75 20 B5 E0
jsr Sub_DBD4 ; CPU:$DB78 PRG:5B78 20 D4 DB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop374
; Global: Branch target inside Label: taken when DB7B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop374:
jsr Sub_9B03 ; CPU:$DB7B PRG:5B7B 20 03 9B
jsr Sub_8358 ; CPU:$DB7E PRG:5B7E 20 58 83
bcc NmiHandler_Loop375 ; CPU:$DB81 PRG:5B81 90 03
jsr Sub_DB95 ; CPU:$DB83 PRG:5B83 20 95 DB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop375
; Global: Branch target inside Label: taken when DB86.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop375:
jmp Sub_DAFA ; CPU:$DB86 PRG:5B86 4C FA DA
; -----------------------------------------------------------------------------
; Routine: Sub_DB89
; Global: Branch target inside Label: taken when DB89.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DB89:
jsr Sub_F1D3 ; CPU:$DB89 PRG:5B89 20 D3 F1
jsr Sub_DDC7 ; CPU:$DB8C PRG:5B8C 20 C7 DD
jsr Sub_DB95 ; CPU:$DB8F PRG:5B8F 20 95 DB
jmp NmiHandler_Loop373 ; CPU:$DB92 PRG:5B92 4C 70 DB
; -----------------------------------------------------------------------------
; Routine: Sub_DB95
; Global: Branch target inside Label: taken when DB95.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DB95:
jsr Sub_9B1F ; CPU:$DB95 PRG:5B95 20 1F 9B
beq NmiHandler_Loop377 ; CPU:$DB98 PRG:5B98 F0 1D
lda $0336,x ; CPU:$DB9A PRG:5B9A BD 36 03
and #$20 ; CPU:$DB9D PRG:5B9D 29 20
bne NmiHandler_Loop376 ; CPU:$DB9F PRG:5B9F D0 0B
lda #$B6 ; CPU:$DBA1 PRG:5BA1 A9 B6
sta Zp73 ; CPU:$DBA3 PRG:5BA3 85 73
lda #$E6 ; CPU:$DBA5 PRG:5BA5 A9 E6
sta Zp74 ; CPU:$DBA7 PRG:5BA7 85 74
jmp Sub_8334 ; CPU:$DBA9 PRG:5BA9 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop376
; Global: Branch target inside Label: taken when DBAC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop376:
lda #$92 ; CPU:$DBAC PRG:5BAC A9 92
sta Zp73 ; CPU:$DBAE PRG:5BAE 85 73
lda #$E7 ; CPU:$DBB0 PRG:5BB0 A9 E7
sta Zp74 ; CPU:$DBB2 PRG:5BB2 85 74
jmp Sub_8334 ; CPU:$DBB4 PRG:5BB4 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop377
; Global: Branch target inside Label: taken when DBB7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop377:
lda $0336,x ; CPU:$DBB7 PRG:5BB7 BD 36 03
and #$20 ; CPU:$DBBA PRG:5BBA 29 20
bne NmiHandler_Loop378 ; CPU:$DBBC PRG:5BBC D0 0B
lda #$BC ; CPU:$DBBE PRG:5BBE A9 BC
sta Zp73 ; CPU:$DBC0 PRG:5BC0 85 73
lda #$E6 ; CPU:$DBC2 PRG:5BC2 A9 E6
sta Zp74 ; CPU:$DBC4 PRG:5BC4 85 74
jmp Sub_8334 ; CPU:$DBC6 PRG:5BC6 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop378
; Global: Branch target inside Label: taken when DBC9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop378:
lda #$98 ; CPU:$DBC9 PRG:5BC9 A9 98
sta Zp73 ; CPU:$DBCB PRG:5BCB 85 73
lda #$E7 ; CPU:$DBCD PRG:5BCD A9 E7
sta Zp74 ; CPU:$DBCF PRG:5BCF 85 74
jmp Sub_8334 ; CPU:$DBD1 PRG:5BD1 4C 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_DBD4
; Global: Branch target inside Label: taken when DBD4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DBD4:
jsr Sub_9B1F ; CPU:$DBD4 PRG:5BD4 20 1F 9B
beq NmiHandler_Loop379 ; CPU:$DBD7 PRG:5BD7 F0 0A
lda #$3E ; CPU:$DBD9 PRG:5BD9 A9 3E
sta Zp73 ; CPU:$DBDB PRG:5BDB 85 73
lda #$E7 ; CPU:$DBDD PRG:5BDD A9 E7
sta Zp74 ; CPU:$DBDF PRG:5BDF 85 74
bne NmiHandler_Loop380 ; CPU:$DBE1 PRG:5BE1 D0 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop379
; Global: Branch target inside Label: taken when DBE3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop379:
lda #$44 ; CPU:$DBE3 PRG:5BE3 A9 44
sta Zp73 ; CPU:$DBE5 PRG:5BE5 85 73
lda #$E7 ; CPU:$DBE7 PRG:5BE7 A9 E7
sta Zp74 ; CPU:$DBE9 PRG:5BE9 85 74
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop380
; Global: Branch target inside Label: taken when DBEB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop380:
jmp Sub_8334 ; CPU:$DBEB PRG:5BEB 4C 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_DBEE
; Global: Branch target inside Label: taken when DBEE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DBEE:
lda ZpB7,x ; CPU:$DBEE PRG:5BEE B5 B7
and #$EB ; CPU:$DBF0 PRG:5BF0 29 EB
sta ZpB7,x ; CPU:$DBF2 PRG:5BF2 95 B7
ldy #$00 ; CPU:$DBF4 PRG:5BF4 A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero84
; Global: Branch target inside Label: taken when DBF6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero84:
lda $04B1,y ; CPU:$DBF6 PRG:5BF6 B9 B1 04
and $E638,x ; CPU:$DBF9 PRG:5BF9 3D 38 E6
sta $04B1,y ; CPU:$DBFC PRG:5BFC 99 B1 04
iny ; CPU:$DBFF PRG:5BFF C8
cpy #$0D ; CPU:$DC00 PRG:5C00 C0 0D
bne NmiHandler_OnNonzero84 ; CPU:$DC02 PRG:5C02 D0 F2
rts ; CPU:$DC04 PRG:5C04 60
; -----------------------------------------------------------------------------
; Routine: Sub_DC05
; Global: Branch target inside Label: taken when DC05.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DC05:
jsr Sub_F1D3 ; CPU:$DC05 PRG:5C05 20 D3 F1
jsr Sub_DDC7 ; CPU:$DC08 PRG:5C08 20 C7 DD
lda ZpBE ; CPU:$DC0B PRG:5C0B A5 BE
ora #$40 ; CPU:$DC0D PRG:5C0D 09 40
sta ZpBE ; CPU:$DC0F PRG:5C0F 85 BE
and #$08 ; CPU:$DC11 PRG:5C11 29 08
beq NmiHandler_Loop381 ; CPU:$DC13 PRG:5C13 F0 0A
lda #$A2 ; CPU:$DC15 PRG:5C15 A9 A2
sta Zp73 ; CPU:$DC17 PRG:5C17 85 73
lda #$E6 ; CPU:$DC19 PRG:5C19 A9 E6
sta Zp74 ; CPU:$DC1B PRG:5C1B 85 74
bne NmiHandler_Loop382 ; CPU:$DC1D PRG:5C1D D0 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop381
; Global: Branch target inside Label: taken when DC1F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop381:
lda #$A8 ; CPU:$DC1F PRG:5C1F A9 A8
sta Zp73 ; CPU:$DC21 PRG:5C21 85 73
lda #$E6 ; CPU:$DC23 PRG:5C23 A9 E6
sta Zp74 ; CPU:$DC25 PRG:5C25 85 74
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop382
; Global: Branch target inside Label: taken when DC27.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop382:
jsr Sub_8334 ; CPU:$DC27 PRG:5C27 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear21
; Global: Branch target inside Label: taken when DC2A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear21:
jsr Sub_8358 ; CPU:$DC2A PRG:5C2A 20 58 83
bcc NmiHandler_OnCarryClear21 ; CPU:$DC2D PRG:5C2D 90 FB
jsr Sub_E072 ; CPU:$DC2F PRG:5C2F 20 72 E0
lda ZpBE ; CPU:$DC32 PRG:5C32 A5 BE
ora #$40 ; CPU:$DC34 PRG:5C34 09 40
sta ZpBE ; CPU:$DC36 PRG:5C36 85 BE
lda ZpCF ; CPU:$DC38 PRG:5C38 A5 CF
bpl NmiHandler_Loop384 ; CPU:$DC3A PRG:5C3A 10 0D
lda $03EA ; CPU:$DC3C PRG:5C3C AD EA 03
bmi NmiHandler_Loop383 ; CPU:$DC3F PRG:5C3F 30 04
lda #$E0 ; CPU:$DC41 PRG:5C41 A9 E0
bne NmiHandler_Loop386 ; CPU:$DC43 PRG:5C43 D0 0F
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop383
; Global: Branch target inside Label: taken when DC45.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop383:
lda #$C8 ; CPU:$DC45 PRG:5C45 A9 C8
bne NmiHandler_Loop386 ; CPU:$DC47 PRG:5C47 D0 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop384
; Global: Branch target inside Label: taken when DC49.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop384:
lda $03EA ; CPU:$DC49 PRG:5C49 AD EA 03
bmi NmiHandler_Loop385 ; CPU:$DC4C PRG:5C4C 30 04
lda #$18 ; CPU:$DC4E PRG:5C4E A9 18
bne NmiHandler_Loop386 ; CPU:$DC50 PRG:5C50 D0 02
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop385
; Global: Branch target inside Label: taken when DC52.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop385:
lda #$30 ; CPU:$DC52 PRG:5C52 A9 30
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop386
; Global: Branch target inside Label: taken when DC54.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop386:
sta ZpCF ; CPU:$DC54 PRG:5C54 85 CF
lda #$01 ; CPU:$DC56 PRG:5C56 A9 01
sta $032C ; CPU:$DC58 PRG:5C58 8D 2C 03
; -----------------------------------------------------------------------------
; Routine: Sub_DC5B
; Global: Branch target inside Label: taken when DC5B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DC5B:
lda $0673 ; CPU:$DC5B PRG:5C5B AD 73 06
and #$01 ; CPU:$DC5E PRG:5C5E 29 01
bne NmiHandler_Loop390 ; CPU:$DC60 PRG:5C60 D0 2C
lda $03EA ; CPU:$DC62 PRG:5C62 AD EA 03
sta $055D ; CPU:$DC65 PRG:5C65 8D 5D 05
jsr Sub_DFF1 ; CPU:$DC68 PRG:5C68 20 F1 DF
lda $03EA ; CPU:$DC6B PRG:5C6B AD EA 03
bmi NmiHandler_Loop388 ; CPU:$DC6E PRG:5C6E 30 10
lda ZpCF ; CPU:$DC70 PRG:5C70 A5 CF
bmi NmiHandler_Loop387 ; CPU:$DC72 PRG:5C72 30 06
cmp #$30 ; CPU:$DC74 PRG:5C74 C9 30
beq NmiHandler_Loop391 ; CPU:$DC76 PRG:5C76 F0 1C
bne NmiHandler_Loop390 ; CPU:$DC78 PRG:5C78 D0 14
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop387
; Global: Branch target inside Label: taken when DC7A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop387:
cmp #$C8 ; CPU:$DC7A PRG:5C7A C9 C8
beq NmiHandler_Loop391 ; CPU:$DC7C PRG:5C7C F0 16
bne NmiHandler_Loop390 ; CPU:$DC7E PRG:5C7E D0 0E
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop388
; Global: Branch target inside Label: taken when DC80.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop388:
lda ZpCF ; CPU:$DC80 PRG:5C80 A5 CF
bmi NmiHandler_Loop389 ; CPU:$DC82 PRG:5C82 30 06
cmp #$18 ; CPU:$DC84 PRG:5C84 C9 18
beq NmiHandler_Loop391 ; CPU:$DC86 PRG:5C86 F0 0C
bne NmiHandler_Loop390 ; CPU:$DC88 PRG:5C88 D0 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop389
; Global: Branch target inside Label: taken when DC8A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop389:
cmp #$E0 ; CPU:$DC8A PRG:5C8A C9 E0
beq NmiHandler_Loop391 ; CPU:$DC8C PRG:5C8C F0 06
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop390
; Global: Branch target inside Label: taken when DC8E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop390:
jsr Sub_82A3 ; CPU:$DC8E PRG:5C8E 20 A3 82
jmp Sub_DC5B ; CPU:$DC91 PRG:5C91 4C 5B DC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop391
; Global: Branch target inside Label: taken when DC94.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop391:
jsr Sub_E077 ; CPU:$DC94 PRG:5C94 20 77 E0
jsr Sub_9B1F ; CPU:$DC97 PRG:5C97 20 1F 9B
beq NmiHandler_Loop392 ; CPU:$DC9A PRG:5C9A F0 0A
lda #$A2 ; CPU:$DC9C PRG:5C9C A9 A2
sta Zp73 ; CPU:$DC9E PRG:5C9E 85 73
lda #$E6 ; CPU:$DCA0 PRG:5CA0 A9 E6
sta Zp74 ; CPU:$DCA2 PRG:5CA2 85 74
bne NmiHandler_Loop393 ; CPU:$DCA4 PRG:5CA4 D0 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop392
; Global: Branch target inside Label: taken when DCA6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop392:
lda #$A8 ; CPU:$DCA6 PRG:5CA6 A9 A8
sta Zp73 ; CPU:$DCA8 PRG:5CA8 85 73
lda #$E6 ; CPU:$DCAA PRG:5CAA A9 E6
sta Zp74 ; CPU:$DCAC PRG:5CAC 85 74
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop393
; Global: Branch target inside Label: taken when DCAE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop393:
jsr Sub_8334 ; CPU:$DCAE PRG:5CAE 20 34 83
lda #$00 ; CPU:$DCB1 PRG:5CB1 A9 00
sta $032C ; CPU:$DCB3 PRG:5CB3 8D 2C 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear22
; Global: Branch target inside Label: taken when DCB6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear22:
lda #$00 ; CPU:$DCB6 PRG:5CB6 A9 00
sta $055D ; CPU:$DCB8 PRG:5CB8 8D 5D 05
jsr Sub_9848 ; CPU:$DCBB PRG:5CBB 20 48 98
bcs NmiHandler_Loop394 ; CPU:$DCBE PRG:5CBE B0 03
jsr Sub_DFF1 ; CPU:$DCC0 PRG:5CC0 20 F1 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop394
; Global: Branch target inside Label: taken when DCC3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop394:
jsr Sub_8358 ; CPU:$DCC3 PRG:5CC3 20 58 83
bcc NmiHandler_OnCarryClear22 ; CPU:$DCC6 PRG:5CC6 90 EE
lda $058F ; CPU:$DCC8 PRG:5CC8 AD 8F 05
sta ZpEC ; CPU:$DCCB PRG:5CCB 85 EC
lda ZpBE ; CPU:$DCCD PRG:5CCD A5 BE
and #$BF ; CPU:$DCCF PRG:5CCF 29 BF
sta ZpBE ; CPU:$DCD1 PRG:5CD1 85 BE
jsr Sub_99E7 ; CPU:$DCD3 PRG:5CD3 20 E7 99
jmp Sub_D907 ; CPU:$DCD6 PRG:5CD6 4C 07 D9
; -----------------------------------------------------------------------------
; Routine: Sub_DCD9
; Global: Branch target inside Label: taken when DCD9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DCD9:
jsr Sub_E2D2 ; CPU:$DCD9 PRG:5CD9 20 D2 E2
beq NmiHandler_Loop395 ; CPU:$DCDC PRG:5CDC F0 03
jmp Sub_E0FD ; CPU:$DCDE PRG:5CDE 4C FD E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop395
; Global: Branch target inside Label: taken when DCE1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop395:
jsr Sub_DE06 ; CPU:$DCE1 PRG:5CE1 20 06 DE
lda $0300 ; CPU:$DCE4 PRG:5CE4 AD 00 03
and #$04 ; CPU:$DCE7 PRG:5CE7 29 04
beq NmiHandler_Loop396 ; CPU:$DCE9 PRG:5CE9 F0 03
jmp Sub_DDAC ; CPU:$DCEB PRG:5CEB 4C AC DD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop396
; Global: Branch target inside Label: taken when DCEE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop396:
jsr Sub_E617 ; CPU:$DCEE PRG:5CEE 20 17 E6
beq NmiHandler_Loop397 ; CPU:$DCF1 PRG:5CF1 F0 0B
jsr Sub_9B1F ; CPU:$DCF3 PRG:5CF3 20 1F 9B
beq NmiHandler_Loop399 ; CPU:$DCF6 PRG:5CF6 F0 19
jsr Sub_9B18 ; CPU:$DCF8 PRG:5CF8 20 18 9B
jmp Sub_D907 ; CPU:$DCFB PRG:5CFB 4C 07 D9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop397
; Global: Branch target inside Label: taken when DCFE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop397:
jsr Sub_E611 ; CPU:$DCFE PRG:5CFE 20 11 E6
bne NmiHandler_Loop398 ; CPU:$DD01 PRG:5D01 D0 03
jmp Sub_D907 ; CPU:$DD03 PRG:5D03 4C 07 D9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop398
; Global: Branch target inside Label: taken when DD06.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop398:
jsr Sub_9B1F ; CPU:$DD06 PRG:5D06 20 1F 9B
bne NmiHandler_Loop399 ; CPU:$DD09 PRG:5D09 D0 06
jsr Sub_9B11 ; CPU:$DD0B PRG:5D0B 20 11 9B
jmp Sub_D907 ; CPU:$DD0E PRG:5D0E 4C 07 D9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop399
; Global: Branch target inside Label: taken when DD11.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop399:
jsr Sub_9891 ; CPU:$DD11 PRG:5D11 20 91 98
bcc NmiHandler_Loop401 ; CPU:$DD14 PRG:5D14 90 16
cmp #$00 ; CPU:$DD16 PRG:5D16 C9 00
bne NmiHandler_Loop400 ; CPU:$DD18 PRG:5D18 D0 09
lda ZpBE ; CPU:$DD1A PRG:5D1A A5 BE
ora #$04 ; CPU:$DD1C PRG:5D1C 09 04
sta ZpBE ; CPU:$DD1E PRG:5D1E 85 BE
jmp Sub_DB89 ; CPU:$DD20 PRG:5D20 4C 89 DB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop400
; Global: Branch target inside Label: taken when DD23.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop400:
lda ZpBE ; CPU:$DD23 PRG:5D23 A5 BE
ora #$14 ; CPU:$DD25 PRG:5D25 09 14
sta ZpBE ; CPU:$DD27 PRG:5D27 85 BE
jmp Sub_DB89 ; CPU:$DD29 PRG:5D29 4C 89 DB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop401
; Global: Branch target inside Label: taken when DD2C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop401:
jsr Sub_E139 ; CPU:$DD2C PRG:5D2C 20 39 E1
bcc NmiHandler_Loop402 ; CPU:$DD2F PRG:5D2F 90 06
jsr Sub_E0B5 ; CPU:$DD31 PRG:5D31 20 B5 E0
jsr Sub_DBD4 ; CPU:$DD34 PRG:5D34 20 D4 DB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop402
; Global: Branch target inside Label: taken when DD37.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop402:
jsr Sub_8358 ; CPU:$DD37 PRG:5D37 20 58 83
bcc NmiHandler_Loop403 ; CPU:$DD3A PRG:5D3A 90 03
jsr Sub_DB95 ; CPU:$DD3C PRG:5D3C 20 95 DB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop403
; Global: Branch target inside Label: taken when DD3F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop403:
dec $03C1 ; CPU:$DD3F PRG:5D3F CE C1 03
beq NmiHandler_Loop404 ; CPU:$DD42 PRG:5D42 F0 03
jmp Sub_DCD9 ; CPU:$DD44 PRG:5D44 4C D9 DC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop404
; Global: Branch target inside Label: taken when DD47.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop404:
jmp Sub_E174 ; CPU:$DD47 PRG:5D47 4C 74 E1
; -----------------------------------------------------------------------------
; Routine: Sub_DD4A
; Global: Branch target inside Label: taken when DD4A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DD4A:
jsr Sub_DDC7 ; CPU:$DD4A PRG:5D4A 20 C7 DD
lda #$05 ; CPU:$DD4D PRG:5D4D A9 05
sta $03C1 ; CPU:$DD4F PRG:5D4F 8D C1 03
jmp Sub_DCD9 ; CPU:$DD52 PRG:5D52 4C D9 DC
; -----------------------------------------------------------------------------
; Routine: Sub_DD55
; Global: Branch target inside Label: taken when DD55.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DD55:
jsr Sub_E2D7 ; CPU:$DD55 PRG:5D55 20 D7 E2
beq NmiHandler_Loop405 ; CPU:$DD58 PRG:5D58 F0 03
jmp Sub_E0FD ; CPU:$DD5A PRG:5D5A 4C FD E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop405
; Global: Branch target inside Label: taken when DD5D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop405:
jsr Sub_97FE ; CPU:$DD5D PRG:5D5D 20 FE 97
bcc NmiHandler_Loop406 ; CPU:$DD60 PRG:5D60 90 08
jsr Sub_9891 ; CPU:$DD62 PRG:5D62 20 91 98
bcc NmiHandler_Loop406 ; CPU:$DD65 PRG:5D65 90 03
jsr Sub_DA1A ; CPU:$DD67 PRG:5D67 20 1A DA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop406
; Global: Branch target inside Label: taken when DD6A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop406:
jsr Sub_DE06 ; CPU:$DD6A PRG:5D6A 20 06 DE
lda $0300 ; CPU:$DD6D PRG:5D6D AD 00 03
and #$08 ; CPU:$DD70 PRG:5D70 29 08
beq NmiHandler_Loop407 ; CPU:$DD72 PRG:5D72 F0 03
jmp Sub_D907 ; CPU:$DD74 PRG:5D74 4C 07 D9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop407
; Global: Branch target inside Label: taken when DD77.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop407:
jsr Sub_E025 ; CPU:$DD77 PRG:5D77 20 25 E0
jsr Sub_DDD0 ; CPU:$DD7A PRG:5D7A 20 D0 DD
; -----------------------------------------------------------------------------
; Routine: Sub_DD7D
; Global: Branch target inside Label: taken when DD7D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DD7D:
jsr Sub_E139 ; CPU:$DD7D PRG:5D7D 20 39 E1
bcc NmiHandler_Loop408 ; CPU:$DD80 PRG:5D80 90 06
jsr Sub_E0B9 ; CPU:$DD82 PRG:5D82 20 B9 E0
jsr Sub_DDEB ; CPU:$DD85 PRG:5D85 20 EB DD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop408
; Global: Branch target inside Label: taken when DD88.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop408:
lda ZpBE ; CPU:$DD88 PRG:5D88 A5 BE
and #$10 ; CPU:$DD8A PRG:5D8A 29 10
beq NmiHandler_Loop409 ; CPU:$DD8C PRG:5D8C F0 08
jsr Sub_9B81 ; CPU:$DD8E PRG:5D8E 20 81 9B
bcc NmiHandler_Loop410 ; CPU:$DD91 PRG:5D91 90 0B
jmp Sub_E23A ; CPU:$DD93 PRG:5D93 4C 3A E2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop409
; Global: Branch target inside Label: taken when DD96.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop409:
jsr Sub_9BBB ; CPU:$DD96 PRG:5D96 20 BB 9B
bcc NmiHandler_Loop410 ; CPU:$DD99 PRG:5D99 90 03
jmp Sub_E23A ; CPU:$DD9B PRG:5D9B 4C 3A E2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop410
; Global: Branch target inside Label: taken when DD9E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop410:
jsr Sub_9B03 ; CPU:$DD9E PRG:5D9E 20 03 9B
jsr Sub_8358 ; CPU:$DDA1 PRG:5DA1 20 58 83
bcc NmiHandler_Loop411 ; CPU:$DDA4 PRG:5DA4 90 03
jsr Sub_DDD0 ; CPU:$DDA6 PRG:5DA6 20 D0 DD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop411
; Global: Branch target inside Label: taken when DDA9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop411:
jmp Sub_DD55 ; CPU:$DDA9 PRG:5DA9 4C 55 DD
; -----------------------------------------------------------------------------
; Routine: Sub_DDAC
; Global: Branch target inside Label: taken when DDAC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DDAC:
lda $033D ; CPU:$DDAC PRG:5DAC AD 3D 03
ora #$01 ; CPU:$DDAF PRG:5DAF 09 01
sta $033D ; CPU:$DDB1 PRG:5DB1 8D 3D 03
jsr Sub_DDC7 ; CPU:$DDB4 PRG:5DB4 20 C7 DD
lda #$00 ; CPU:$DDB7 PRG:5DB7 A9 00
sta ZpD9,x ; CPU:$DDB9 PRG:5DB9 95 D9
jsr Sub_DDD0 ; CPU:$DDBB PRG:5DBB 20 D0 DD
jsr Sub_99E7 ; CPU:$DDBE PRG:5DBE 20 E7 99
jsr Sub_9C7D ; CPU:$DDC1 PRG:5DC1 20 7D 9C
jmp Sub_DD7D ; CPU:$DDC4 PRG:5DC4 4C 7D DD
; -----------------------------------------------------------------------------
; Routine: Sub_DDC7
; Global: Branch target inside Label: taken when DDC7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DDC7:
lda $0336,x ; CPU:$DDC7 PRG:5DC7 BD 36 03
and #$DF ; CPU:$DDCA PRG:5DCA 29 DF
sta $0336,x ; CPU:$DDCC PRG:5DCC 9D 36 03
rts ; CPU:$DDCF PRG:5DCF 60
; -----------------------------------------------------------------------------
; Routine: Sub_DDD0
; Global: Branch target inside Label: taken when DDD0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DDD0:
jsr Sub_9B1F ; CPU:$DDD0 PRG:5DD0 20 1F 9B
beq NmiHandler_Loop412 ; CPU:$DDD3 PRG:5DD3 F0 0B
lda #$AE ; CPU:$DDD5 PRG:5DD5 A9 AE
sta Zp73 ; CPU:$DDD7 PRG:5DD7 85 73
lda #$E6 ; CPU:$DDD9 PRG:5DD9 A9 E6
sta Zp74 ; CPU:$DDDB PRG:5DDB 85 74
jmp Sub_8334 ; CPU:$DDDD PRG:5DDD 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop412
; Global: Branch target inside Label: taken when DDE0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop412:
lda #$B2 ; CPU:$DDE0 PRG:5DE0 A9 B2
sta Zp73 ; CPU:$DDE2 PRG:5DE2 85 73
lda #$E6 ; CPU:$DDE4 PRG:5DE4 A9 E6
sta Zp74 ; CPU:$DDE6 PRG:5DE6 85 74
jmp Sub_8334 ; CPU:$DDE8 PRG:5DE8 4C 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_DDEB
; Global: Branch target inside Label: taken when DDEB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DDEB:
jsr Sub_9B1F ; CPU:$DDEB PRG:5DEB 20 1F 9B
beq NmiHandler_Loop413 ; CPU:$DDEE PRG:5DEE F0 0B
lda #$D4 ; CPU:$DDF0 PRG:5DF0 A9 D4
sta Zp73 ; CPU:$DDF2 PRG:5DF2 85 73
lda #$E6 ; CPU:$DDF4 PRG:5DF4 A9 E6
sta Zp74 ; CPU:$DDF6 PRG:5DF6 85 74
jmp Sub_8334 ; CPU:$DDF8 PRG:5DF8 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop413
; Global: Branch target inside Label: taken when DDFB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop413:
lda #$DA ; CPU:$DDFB PRG:5DFB A9 DA
sta Zp73 ; CPU:$DDFD PRG:5DFD 85 73
lda #$E6 ; CPU:$DDFF PRG:5DFF A9 E6
sta Zp74 ; CPU:$DE01 PRG:5E01 85 74
jmp Sub_8334 ; CPU:$DE03 PRG:5E03 4C 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_DE06
; Global: Branch target inside Label: taken when DE06.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DE06:
lda $0300 ; CPU:$DE06 PRG:5E06 AD 00 03
and #$80 ; CPU:$DE09 PRG:5E09 29 80
beq NmiHandler_Loop416 ; CPU:$DE0B PRG:5E0B F0 25
lda ZpF9 ; CPU:$DE0D PRG:5E0D A5 F9
bne NmiHandler_Loop417 ; CPU:$DE0F PRG:5E0F D0 25
lda #$FF ; CPU:$DE11 PRG:5E11 A9 FF
sta ZpF9 ; CPU:$DE13 PRG:5E13 85 F9
lda #$00 ; CPU:$DE15 PRG:5E15 A9 00
sta ZpE0 ; CPU:$DE17 PRG:5E17 85 E0
jsr Sub_E617 ; CPU:$DE19 PRG:5E19 20 17 E6
beq NmiHandler_Loop414 ; CPU:$DE1C PRG:5E1C F0 06
lda #$FE ; CPU:$DE1E PRG:5E1E A9 FE
sta ZpE0 ; CPU:$DE20 PRG:5E20 85 E0
bne NmiHandler_Loop415 ; CPU:$DE22 PRG:5E22 D0 09
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop414
; Global: Branch target inside Label: taken when DE24.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop414:
jsr Sub_E611 ; CPU:$DE24 PRG:5E24 20 11 E6
beq NmiHandler_Loop415 ; CPU:$DE27 PRG:5E27 F0 04
lda #$02 ; CPU:$DE29 PRG:5E29 A9 02
sta ZpE0 ; CPU:$DE2B PRG:5E2B 85 E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop415
; Global: Branch target inside Label: taken when DE2D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop415:
pla ; CPU:$DE2D PRG:5E2D 68
pla ; CPU:$DE2E PRG:5E2E 68
jmp Sub_DFD8 ; CPU:$DE2F PRG:5E2F 4C D8 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop416
; Global: Branch target inside Label: taken when DE32.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop416:
lda #$00 ; CPU:$DE32 PRG:5E32 A9 00
sta ZpF9 ; CPU:$DE34 PRG:5E34 85 F9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop417
; Global: Branch target inside Label: taken when DE36.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop417:
clc ; CPU:$DE36 PRG:5E36 18
rts ; CPU:$DE37 PRG:5E37 60
; -----------------------------------------------------------------------------
; Routine: Sub_DE38
; Global: Branch target inside Label: taken when DE38.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DE38:
jsr Sub_DFEC ; CPU:$DE38 PRG:5E38 20 EC DF
; -----------------------------------------------------------------------------
; Routine: Sub_DE3B
; Global: Branch target inside Label: taken when DE3B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DE3B:
ldy $0397 ; CPU:$DE3B PRG:5E3B AC 97 03
cpy #$02 ; CPU:$DE3E PRG:5E3E C0 02
bcs NmiHandler_Loop424 ; CPU:$DE40 PRG:5E40 B0 67
jsr Sub_E2D7 ; CPU:$DE42 PRG:5E42 20 D7 E2
beq NmiHandler_Loop418 ; CPU:$DE45 PRG:5E45 F0 0C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero14
; Global: Branch target inside Label: taken when DE47.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero14:
lda #$02 ; CPU:$DE47 PRG:5E47 A9 02
sec ; CPU:$DE49 PRG:5E49 38
sbc $0397 ; CPU:$DE4A PRG:5E4A ED 97 03
sta $0397 ; CPU:$DE4D PRG:5E4D 8D 97 03
jmp Sub_DF84 ; CPU:$DE50 PRG:5E50 4C 84 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop418
; Global: Branch target inside Label: taken when DE53.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop418:
jsr Sub_E025 ; CPU:$DE53 PRG:5E53 20 25 E0
jsr Sub_DE8E ; CPU:$DE56 PRG:5E56 20 8E DE
jsr Sub_E139 ; CPU:$DE59 PRG:5E59 20 39 E1
bcc NmiHandler_Loop419 ; CPU:$DE5C PRG:5E5C 90 06
jsr Sub_E0B5 ; CPU:$DE5E PRG:5E5E 20 B5 E0
jsr Sub_E036 ; CPU:$DE61 PRG:5E61 20 36 E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop419
; Global: Branch target inside Label: taken when DE64.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop419:
jsr Sub_9906 ; CPU:$DE64 PRG:5E64 20 06 99
tay ; CPU:$DE67 PRG:5E67 A8
beq NmiHandler_Loop420 ; CPU:$DE68 PRG:5E68 F0 06
dey ; CPU:$DE6A PRG:5E6A 88
beq NmiHandler_OnZero14 ; CPU:$DE6B PRG:5E6B F0 DA
dey ; CPU:$DE6D PRG:5E6D 88
beq NmiHandler_Loop421 ; CPU:$DE6E PRG:5E6E F0 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop420
; Global: Branch target inside Label: taken when DE70.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop420:
jsr Sub_DFF1 ; CPU:$DE70 PRG:5E70 20 F1 DF
jsr Sub_9848 ; CPU:$DE73 PRG:5E73 20 48 98
bcc NmiHandler_Loop421 ; CPU:$DE76 PRG:5E76 90 03
jsr Sub_DFF9 ; CPU:$DE78 PRG:5E78 20 F9 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop421
; Global: Branch target inside Label: taken when DE7B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop421:
ldy $0397 ; CPU:$DE7B PRG:5E7B AC 97 03
lda $E62B,y ; CPU:$DE7E PRG:5E7E B9 2B E6
sta Zp6F ; CPU:$DE81 PRG:5E81 85 6F
jsr Sub_E001 ; CPU:$DE83 PRG:5E83 20 01 E0
bcc NmiHandler_Loop422 ; CPU:$DE86 PRG:5E86 90 03
jsr Sub_DE8E ; CPU:$DE88 PRG:5E88 20 8E DE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop422
; Global: Branch target inside Label: taken when DE8B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop422:
jmp Sub_DE3B ; CPU:$DE8B PRG:5E8B 4C 3B DE
; -----------------------------------------------------------------------------
; Routine: Sub_DE8E
; Global: Branch target inside Label: taken when DE8E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DE8E:
jsr Sub_9B1F ; CPU:$DE8E PRG:5E8E 20 1F 9B
beq NmiHandler_Loop423 ; CPU:$DE91 PRG:5E91 F0 0B
lda #$82 ; CPU:$DE93 PRG:5E93 A9 82
sta Zp73 ; CPU:$DE95 PRG:5E95 85 73
lda #$E6 ; CPU:$DE97 PRG:5E97 A9 E6
sta Zp74 ; CPU:$DE99 PRG:5E99 85 74
jmp Sub_8334 ; CPU:$DE9B PRG:5E9B 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop423
; Global: Branch target inside Label: taken when DE9E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop423:
lda #$86 ; CPU:$DE9E PRG:5E9E A9 86
sta Zp73 ; CPU:$DEA0 PRG:5EA0 85 73
lda #$E6 ; CPU:$DEA2 PRG:5EA2 A9 E6
sta Zp74 ; CPU:$DEA4 PRG:5EA4 85 74
jmp Sub_8334 ; CPU:$DEA6 PRG:5EA6 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop424
; Global: Branch target inside Label: taken when DEA9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop424:
lda #$00 ; CPU:$DEA9 PRG:5EA9 A9 00
sta $0397 ; CPU:$DEAB PRG:5EAB 8D 97 03
jsr Sub_DF07 ; CPU:$DEAE PRG:5EAE 20 07 DF
jmp Sub_DEBB ; CPU:$DEB1 PRG:5EB1 4C BB DE
; -----------------------------------------------------------------------------
; Routine: Sub_DEB4
; Global: Branch target inside Label: taken when DEB4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DEB4:
ldy $0397 ; CPU:$DEB4 PRG:5EB4 AC 97 03
cpy #$07 ; CPU:$DEB7 PRG:5EB7 C0 07
bcs NmiHandler_Loop431 ; CPU:$DEB9 PRG:5EB9 B0 67
; -----------------------------------------------------------------------------
; Routine: Sub_DEBB
; Global: Branch target inside Label: taken when DEBB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DEBB:
jsr Sub_E2D7 ; CPU:$DEBB PRG:5EBB 20 D7 E2
beq NmiHandler_Loop425 ; CPU:$DEBE PRG:5EBE F0 0C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero15
; Global: Branch target inside Label: taken when DEC0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero15:
lda #$07 ; CPU:$DEC0 PRG:5EC0 A9 07
sec ; CPU:$DEC2 PRG:5EC2 38
sbc $0397 ; CPU:$DEC3 PRG:5EC3 ED 97 03
sta $0397 ; CPU:$DEC6 PRG:5EC6 8D 97 03
jmp Sub_DF2D ; CPU:$DEC9 PRG:5EC9 4C 2D DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop425
; Global: Branch target inside Label: taken when DECC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop425:
jsr Sub_E025 ; CPU:$DECC PRG:5ECC 20 25 E0
jsr Sub_DF07 ; CPU:$DECF PRG:5ECF 20 07 DF
jsr Sub_E139 ; CPU:$DED2 PRG:5ED2 20 39 E1
bcc NmiHandler_Loop426 ; CPU:$DED5 PRG:5ED5 90 06
jsr Sub_E0B9 ; CPU:$DED7 PRG:5ED7 20 B9 E0
jsr Sub_E051 ; CPU:$DEDA PRG:5EDA 20 51 E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop426
; Global: Branch target inside Label: taken when DEDD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop426:
jsr Sub_9906 ; CPU:$DEDD PRG:5EDD 20 06 99
tay ; CPU:$DEE0 PRG:5EE0 A8
beq NmiHandler_Loop427 ; CPU:$DEE1 PRG:5EE1 F0 06
dey ; CPU:$DEE3 PRG:5EE3 88
beq NmiHandler_OnZero15 ; CPU:$DEE4 PRG:5EE4 F0 DA
dey ; CPU:$DEE6 PRG:5EE6 88
beq NmiHandler_Loop428 ; CPU:$DEE7 PRG:5EE7 F0 0B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop427
; Global: Branch target inside Label: taken when DEE9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop427:
jsr Sub_DFF1 ; CPU:$DEE9 PRG:5EE9 20 F1 DF
jsr Sub_9848 ; CPU:$DEEC PRG:5EEC 20 48 98
bcc NmiHandler_Loop428 ; CPU:$DEEF PRG:5EEF 90 03
jsr Sub_DFF9 ; CPU:$DEF1 PRG:5EF1 20 F9 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop428
; Global: Branch target inside Label: taken when DEF4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop428:
ldy $0397 ; CPU:$DEF4 PRG:5EF4 AC 97 03
lda $E61D,y ; CPU:$DEF7 PRG:5EF7 B9 1D E6
sta Zp6F ; CPU:$DEFA PRG:5EFA 85 6F
jsr Sub_E001 ; CPU:$DEFC PRG:5EFC 20 01 E0
bcc NmiHandler_Loop429 ; CPU:$DEFF PRG:5EFF 90 03
jsr Sub_DF07 ; CPU:$DF01 PRG:5F01 20 07 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop429
; Global: Branch target inside Label: taken when DF04.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop429:
jmp Sub_DEB4 ; CPU:$DF04 PRG:5F04 4C B4 DE
; -----------------------------------------------------------------------------
; Routine: Sub_DF07
; Global: Branch target inside Label: taken when DF07.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DF07:
jsr Sub_9B1F ; CPU:$DF07 PRG:5F07 20 1F 9B
beq NmiHandler_Loop430 ; CPU:$DF0A PRG:5F0A F0 0B
lda #$8A ; CPU:$DF0C PRG:5F0C A9 8A
sta Zp73 ; CPU:$DF0E PRG:5F0E 85 73
lda #$E6 ; CPU:$DF10 PRG:5F10 A9 E6
sta Zp74 ; CPU:$DF12 PRG:5F12 85 74
jmp Sub_8334 ; CPU:$DF14 PRG:5F14 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop430
; Global: Branch target inside Label: taken when DF17.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop430:
lda #$8E ; CPU:$DF17 PRG:5F17 A9 8E
sta Zp73 ; CPU:$DF19 PRG:5F19 85 73
lda #$E6 ; CPU:$DF1B PRG:5F1B A9 E6
sta Zp74 ; CPU:$DF1D PRG:5F1D 85 74
jmp Sub_8334 ; CPU:$DF1F PRG:5F1F 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop431
; Global: Branch target inside Label: taken when DF22.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop431:
lda #$00 ; CPU:$DF22 PRG:5F22 A9 00
sta $0397 ; CPU:$DF24 PRG:5F24 8D 97 03
jsr Sub_DF07 ; CPU:$DF27 PRG:5F27 20 07 DF
jmp Sub_DF34 ; CPU:$DF2A PRG:5F2A 4C 34 DF
; -----------------------------------------------------------------------------
; Routine: Sub_DF2D
; Global: Branch target inside Label: taken when DF2D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DF2D:
ldy $0397 ; CPU:$DF2D PRG:5F2D AC 97 03
cpy #$07 ; CPU:$DF30 PRG:5F30 C0 07
bcs NmiHandler_Loop438 ; CPU:$DF32 PRG:5F32 B0 45
; -----------------------------------------------------------------------------
; Routine: Sub_DF34
; Global: Branch target inside Label: taken when DF34.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DF34:
jsr Sub_E2D7 ; CPU:$DF34 PRG:5F34 20 D7 E2
beq NmiHandler_Loop432 ; CPU:$DF37 PRG:5F37 F0 02
bne NmiHandler_Loop436 ; CPU:$DF39 PRG:5F39 D0 2B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop432
; Global: Branch target inside Label: taken when DF3B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop432:
jsr Sub_E025 ; CPU:$DF3B PRG:5F3B 20 25 E0
jsr Sub_DF07 ; CPU:$DF3E PRG:5F3E 20 07 DF
jsr Sub_E139 ; CPU:$DF41 PRG:5F41 20 39 E1
bcc NmiHandler_Loop433 ; CPU:$DF44 PRG:5F44 90 06
jsr Sub_E0B9 ; CPU:$DF46 PRG:5F46 20 B9 E0
jsr Sub_E051 ; CPU:$DF49 PRG:5F49 20 51 E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop433
; Global: Branch target inside Label: taken when DF4C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop433:
jsr Sub_9906 ; CPU:$DF4C PRG:5F4C 20 06 99
tay ; CPU:$DF4F PRG:5F4F A8
beq NmiHandler_Loop435 ; CPU:$DF50 PRG:5F50 F0 09
dey ; CPU:$DF52 PRG:5F52 88
beq NmiHandler_Loop434 ; CPU:$DF53 PRG:5F53 F0 03
dey ; CPU:$DF55 PRG:5F55 88
beq NmiHandler_Loop436 ; CPU:$DF56 PRG:5F56 F0 0E
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop434
; Global: Branch target inside Label: taken when DF58.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop434:
jmp NmiHandler_Loop444 ; CPU:$DF58 PRG:5F58 4C CF DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop435
; Global: Branch target inside Label: taken when DF5B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop435:
jsr Sub_DFF1 ; CPU:$DF5B PRG:5F5B 20 F1 DF
jsr Sub_9848 ; CPU:$DF5E PRG:5F5E 20 48 98
bcc NmiHandler_Loop436 ; CPU:$DF61 PRG:5F61 90 03
jsr Sub_DFF9 ; CPU:$DF63 PRG:5F63 20 F9 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop436
; Global: Branch target inside Label: taken when DF66.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop436:
ldy $0397 ; CPU:$DF66 PRG:5F66 AC 97 03
lda $E624,y ; CPU:$DF69 PRG:5F69 B9 24 E6
sta Zp6F ; CPU:$DF6C PRG:5F6C 85 6F
jsr Sub_E001 ; CPU:$DF6E PRG:5F6E 20 01 E0
bcc NmiHandler_Loop437 ; CPU:$DF71 PRG:5F71 90 03
jsr Sub_DF07 ; CPU:$DF73 PRG:5F73 20 07 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop437
; Global: Branch target inside Label: taken when DF76.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop437:
jmp Sub_DF2D ; CPU:$DF76 PRG:5F76 4C 2D DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop438
; Global: Branch target inside Label: taken when DF79.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop438:
lda #$00 ; CPU:$DF79 PRG:5F79 A9 00
sta $0397 ; CPU:$DF7B PRG:5F7B 8D 97 03
jsr Sub_DE8E ; CPU:$DF7E PRG:5F7E 20 8E DE
jmp Sub_DF8B ; CPU:$DF81 PRG:5F81 4C 8B DF
; -----------------------------------------------------------------------------
; Routine: Sub_DF84
; Global: Branch target inside Label: taken when DF84.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DF84:
ldy $0397 ; CPU:$DF84 PRG:5F84 AC 97 03
cpy #$02 ; CPU:$DF87 PRG:5F87 C0 02
bcs NmiHandler_Loop444 ; CPU:$DF89 PRG:5F89 B0 44
; -----------------------------------------------------------------------------
; Routine: Sub_DF8B
; Global: Branch target inside Label: taken when DF8B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DF8B:
jsr Sub_E2D7 ; CPU:$DF8B PRG:5F8B 20 D7 E2
beq NmiHandler_Loop439 ; CPU:$DF8E PRG:5F8E F0 02
bne NmiHandler_Loop442 ; CPU:$DF90 PRG:5F90 D0 2A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop439
; Global: Branch target inside Label: taken when DF92.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop439:
jsr Sub_E025 ; CPU:$DF92 PRG:5F92 20 25 E0
jsr Sub_DE8E ; CPU:$DF95 PRG:5F95 20 8E DE
jsr Sub_E139 ; CPU:$DF98 PRG:5F98 20 39 E1
bcc NmiHandler_Loop440 ; CPU:$DF9B PRG:5F9B 90 06
jsr Sub_E0B5 ; CPU:$DF9D PRG:5F9D 20 B5 E0
jsr Sub_E036 ; CPU:$DFA0 PRG:5FA0 20 36 E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop440
; Global: Branch target inside Label: taken when DFA3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop440:
jsr Sub_9906 ; CPU:$DFA3 PRG:5FA3 20 06 99
tay ; CPU:$DFA6 PRG:5FA6 A8
beq NmiHandler_Loop441 ; CPU:$DFA7 PRG:5FA7 F0 08
dey ; CPU:$DFA9 PRG:5FA9 88
beq NmiHandler_Loop444 ; CPU:$DFAA PRG:5FAA F0 23
dey ; CPU:$DFAC PRG:5FAC 88
beq NmiHandler_Loop442 ; CPU:$DFAD PRG:5FAD F0 0D
bne NmiHandler_Loop444 ; CPU:$DFAF PRG:5FAF D0 1E
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop441
; Global: Branch target inside Label: taken when DFB1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop441:
jsr Sub_DFF1 ; CPU:$DFB1 PRG:5FB1 20 F1 DF
jsr Sub_9848 ; CPU:$DFB4 PRG:5FB4 20 48 98
bcc NmiHandler_Loop442 ; CPU:$DFB7 PRG:5FB7 90 03
jsr Sub_DFF9 ; CPU:$DFB9 PRG:5FB9 20 F9 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop442
; Global: Branch target inside Label: taken when DFBC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop442:
ldy $0397 ; CPU:$DFBC PRG:5FBC AC 97 03
lda $E62D,y ; CPU:$DFBF PRG:5FBF B9 2D E6
sta Zp6F ; CPU:$DFC2 PRG:5FC2 85 6F
jsr Sub_E001 ; CPU:$DFC4 PRG:5FC4 20 01 E0
bcc NmiHandler_Loop443 ; CPU:$DFC7 PRG:5FC7 90 03
jsr Sub_DE8E ; CPU:$DFC9 PRG:5FC9 20 8E DE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop443
; Global: Branch target inside Label: taken when DFCC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop443:
jmp Sub_DF84 ; CPU:$DFCC PRG:5FCC 4C 84 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop444
; Global: Branch target inside Label: taken when DFCF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop444:
lda ZpBE ; CPU:$DFCF PRG:5FCF A5 BE
and #$DF ; CPU:$DFD1 PRG:5FD1 29 DF
sta ZpBE ; CPU:$DFD3 PRG:5FD3 85 BE
jmp Sub_D907 ; CPU:$DFD5 PRG:5FD5 4C 07 D9
; -----------------------------------------------------------------------------
; Routine: Sub_DFD8
; Global: Branch target inside Label: taken when DFD8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DFD8:
lda #$00 ; CPU:$DFD8 PRG:5FD8 A9 00
sta $0397 ; CPU:$DFDA PRG:5FDA 8D 97 03
lda ZpBE ; CPU:$DFDD PRG:5FDD A5 BE
ora #$20 ; CPU:$DFDF PRG:5FDF 09 20
sta ZpBE ; CPU:$DFE1 PRG:5FE1 85 BE
jsr Sub_DE8E ; CPU:$DFE3 PRG:5FE3 20 8E DE
jsr Sub_DDC7 ; CPU:$DFE6 PRG:5FE6 20 C7 DD
jmp Sub_DE38 ; CPU:$DFE9 PRG:5FE9 4C 38 DE
; -----------------------------------------------------------------------------
; Routine: Sub_DFEC
; Global: Branch target inside Label: taken when DFEC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DFEC:
lda #$22 ; CPU:$DFEC PRG:5FEC A9 22
jmp Sub_F6DB ; CPU:$DFEE PRG:5FEE 4C DB F6
; -----------------------------------------------------------------------------
; Routine: Sub_DFF1
; Global: Branch target inside Label: taken when DFF1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DFF1:
lda ZpD9,x ; CPU:$DFF1 PRG:5FF1 B5 D9
clc ; CPU:$DFF3 PRG:5FF3 18
adc ZpC8,x ; CPU:$DFF4 PRG:5FF4 75 C8
sta ZpC8,x ; CPU:$DFF6 PRG:5FF6 95 C8
rts ; CPU:$DFF8 PRG:5FF8 60
; -----------------------------------------------------------------------------
; Routine: Sub_DFF9
; Global: Branch target inside Label: taken when DFF9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_DFF9:
lda ZpC8,x ; CPU:$DFF9 PRG:5FF9 B5 C8
sec ; CPU:$DFFB PRG:5FFB 38
sbc ZpD9,x ; CPU:$DFFC PRG:5FFC F5 D9
sta ZpC8,x ; CPU:$DFFE PRG:5FFE 95 C8
rts ; CPU:$E000 PRG:6000 60
; -----------------------------------------------------------------------------
; Routine: Sub_E001
; Global: Branch target inside Label: taken when E001.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E001:
lda #$00 ; CPU:$E001 PRG:6001 A9 00
sta Zp70 ; CPU:$E003 PRG:6003 85 70
lda Zp6F ; CPU:$E005 PRG:6005 A5 6F
bpl NmiHandler_Loop445 ; CPU:$E007 PRG:6007 10 04
ldy #$FF ; CPU:$E009 PRG:6009 A0 FF
sty Zp70 ; CPU:$E00B PRG:600B 84 70
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop445
; Global: Branch target inside Label: taken when E00D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop445:
clc ; CPU:$E00D PRG:600D 18
adc $03A4 ; CPU:$E00E PRG:600E 6D A4 03
sta $03A4 ; CPU:$E011 PRG:6011 8D A4 03
lda $03B5 ; CPU:$E014 PRG:6014 AD B5 03
adc Zp70 ; CPU:$E017 PRG:6017 65 70
sta $03B5 ; CPU:$E019 PRG:6019 8D B5 03
inc $0397 ; CPU:$E01C PRG:601C EE 97 03
jsr Sub_9B03 ; CPU:$E01F PRG:601F 20 03 9B
jmp Sub_8358 ; CPU:$E022 PRG:6022 4C 58 83
; -----------------------------------------------------------------------------
; Routine: Sub_E025
; Global: Branch target inside Label: taken when E025.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E025:
jsr Sub_E617 ; CPU:$E025 PRG:6025 20 17 E6
beq NmiHandler_Loop446 ; CPU:$E028 PRG:6028 F0 03
jmp Sub_9B18 ; CPU:$E02A PRG:602A 4C 18 9B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop446
; Global: Branch target inside Label: taken when E02D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop446:
jsr Sub_E611 ; CPU:$E02D PRG:602D 20 11 E6
beq NmiHandler_Loop447 ; CPU:$E030 PRG:6030 F0 03
jmp Sub_9B11 ; CPU:$E032 PRG:6032 4C 11 9B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop447
; Global: Branch target inside Label: taken when E035.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop447:
rts ; CPU:$E035 PRG:6035 60
; -----------------------------------------------------------------------------
; Routine: Sub_E036
; Global: Branch target inside Label: taken when E036.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E036:
jsr Sub_9B1F ; CPU:$E036 PRG:6036 20 1F 9B
beq NmiHandler_Loop448 ; CPU:$E039 PRG:6039 F0 0B
lda #$9A ; CPU:$E03B PRG:603B A9 9A
sta Zp73 ; CPU:$E03D PRG:603D 85 73
lda #$E6 ; CPU:$E03F PRG:603F A9 E6
sta Zp74 ; CPU:$E041 PRG:6041 85 74
jmp Sub_8334 ; CPU:$E043 PRG:6043 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop448
; Global: Branch target inside Label: taken when E046.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop448:
lda #$9E ; CPU:$E046 PRG:6046 A9 9E
sta Zp73 ; CPU:$E048 PRG:6048 85 73
lda #$E6 ; CPU:$E04A PRG:604A A9 E6
sta Zp74 ; CPU:$E04C PRG:604C 85 74
jmp Sub_8334 ; CPU:$E04E PRG:604E 4C 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_E051
; Global: Branch target inside Label: taken when E051.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E051:
jsr Sub_9B1F ; CPU:$E051 PRG:6051 20 1F 9B
beq NmiHandler_Loop449 ; CPU:$E054 PRG:6054 F0 0B
lda #$92 ; CPU:$E056 PRG:6056 A9 92
sta Zp73 ; CPU:$E058 PRG:6058 85 73
lda #$E6 ; CPU:$E05A PRG:605A A9 E6
sta Zp74 ; CPU:$E05C PRG:605C 85 74
jmp Sub_8334 ; CPU:$E05E PRG:605E 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop449
; Global: Branch target inside Label: taken when E061.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop449:
lda #$96 ; CPU:$E061 PRG:6061 A9 96
sta Zp73 ; CPU:$E063 PRG:6063 85 73
lda #$E6 ; CPU:$E065 PRG:6065 A9 E6
sta Zp74 ; CPU:$E067 PRG:6067 85 74
jmp Sub_8334 ; CPU:$E069 PRG:6069 4C 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_E06C
; Global: Branch target inside Label: taken when E06C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E06C:
jsr Sub_E085 ; CPU:$E06C PRG:606C 20 85 E0
jmp Sub_DAE7 ; CPU:$E06F PRG:606F 4C E7 DA
; -----------------------------------------------------------------------------
; Routine: Sub_E072
; Global: Branch target inside Label: taken when E072.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E072:
lda #$24 ; CPU:$E072 PRG:6072 A9 24
jmp Sub_F6DB ; CPU:$E074 PRG:6074 4C DB F6
; -----------------------------------------------------------------------------
; Routine: Sub_E077
; Global: Branch target inside Label: taken when E077.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E077:
lda #$24 ; CPU:$E077 PRG:6077 A9 24
jmp Sub_F704 ; CPU:$E079 PRG:6079 4C 04 F7
; -----------------------------------------------------------------------------
; Routine: Sub_E07C
; Global: Branch target inside Label: taken when E07C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E07C:
jsr Sub_E077 ; CPU:$E07C PRG:607C 20 77 E0
jsr Sub_E085 ; CPU:$E07F PRG:607F 20 85 E0
jmp Sub_D907 ; CPU:$E082 PRG:6082 4C 07 D9
; -----------------------------------------------------------------------------
; Routine: Sub_E085
; Global: Branch target inside Label: taken when E085.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E085:
lda #$03 ; CPU:$E085 PRG:6085 A9 03
sta $0397 ; CPU:$E087 PRG:6087 8D 97 03
jsr Sub_DE8E ; CPU:$E08A PRG:608A 20 8E DE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear23
; Global: Branch target inside Label: taken when E08D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear23:
jsr Sub_E2D2 ; CPU:$E08D PRG:608D 20 D2 E2
beq NmiHandler_Loop450 ; CPU:$E090 PRG:6090 F0 03
jmp Sub_E0FD ; CPU:$E092 PRG:6092 4C FD E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop450
; Global: Branch target inside Label: taken when E095.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop450:
lda ZpE0 ; CPU:$E095 PRG:6095 A5 E0
clc ; CPU:$E097 PRG:6097 18
adc ZpCF ; CPU:$E098 PRG:6098 65 CF
sta ZpCF ; CPU:$E09A PRG:609A 85 CF
ldy $0397 ; CPU:$E09C PRG:609C AC 97 03
lda $E62F,y ; CPU:$E09F PRG:609F B9 2F E6
clc ; CPU:$E0A2 PRG:60A2 18
adc $030A ; CPU:$E0A3 PRG:60A3 6D 0A 03
dec $0397 ; CPU:$E0A6 PRG:60A6 CE 97 03
beq NmiHandler_Loop451 ; CPU:$E0A9 PRG:60A9 F0 05
jsr Sub_8358 ; CPU:$E0AB PRG:60AB 20 58 83
bcc NmiHandler_OnCarryClear23 ; CPU:$E0AE PRG:60AE 90 DD
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop451
; Global: Branch target inside Label: taken when E0B0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop451:
rts ; CPU:$E0B0 PRG:60B0 60
; -----------------------------------------------------------------------------
; Routine: Sub_E0B1
; Global: Branch target inside Label: taken when E0B1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E0B1:
lda #$04 ; CPU:$E0B1 PRG:60B1 A9 04
bne NmiHandler_Loop452 ; CPU:$E0B3 PRG:60B3 D0 06
; -----------------------------------------------------------------------------
; Routine: Sub_E0B5
; Global: Branch target inside Label: taken when E0B5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E0B5:
lda #$0E ; CPU:$E0B5 PRG:60B5 A9 0E
bne NmiHandler_Loop452 ; CPU:$E0B7 PRG:60B7 D0 02
; -----------------------------------------------------------------------------
; Routine: Sub_E0B9
; Global: Branch target inside Label: taken when E0B9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E0B9:
lda #$06 ; CPU:$E0B9 PRG:60B9 A9 06
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop452
; Global: Branch target inside Label: taken when E0BB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop452:
sta Zp70 ; CPU:$E0BB PRG:60BB 85 70
lda $039D,x ; CPU:$E0BD PRG:60BD BD 9D 03
sec ; CPU:$E0C0 PRG:60C0 38
sbc $0684 ; CPU:$E0C1 PRG:60C1 ED 84 06
clc ; CPU:$E0C4 PRG:60C4 18
adc #$89 ; CPU:$E0C5 PRG:60C5 69 89
sec ; CPU:$E0C7 PRG:60C7 38
sbc $0303,x ; CPU:$E0C8 PRG:60C8 FD 03 03
clc ; CPU:$E0CB PRG:60CB 18
adc Zp70 ; CPU:$E0CC PRG:60CC 65 70
sta Zp70 ; CPU:$E0CE PRG:60CE 85 70
lda $039D,x ; CPU:$E0D0 PRG:60D0 BD 9D 03
sec ; CPU:$E0D3 PRG:60D3 38
sbc Zp70 ; CPU:$E0D4 PRG:60D4 E5 70
sta $039D,y ; CPU:$E0D6 PRG:60D6 99 9D 03
lda $03AE,x ; CPU:$E0D9 PRG:60D9 BD AE 03
sbc #$00 ; CPU:$E0DC PRG:60DC E9 00
sta $03AE,y ; CPU:$E0DE PRG:60DE 99 AE 03
lda ZpE5,x ; CPU:$E0E1 PRG:60E1 B5 E5
sta a:ZpE5,y ; CPU:$E0E3 PRG:60E3 99 E5 00
jsr Sub_9B1F ; CPU:$E0E6 PRG:60E6 20 1F 9B
beq NmiHandler_Loop453 ; CPU:$E0E9 PRG:60E9 F0 05
lda ZpC8,x ; CPU:$E0EB PRG:60EB B5 C8
jmp Sub_E0F5 ; CPU:$E0ED PRG:60ED 4C F5 E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop453
; Global: Branch target inside Label: taken when E0F0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop453:
lda ZpC8,x ; CPU:$E0F0 PRG:60F0 B5 C8
sec ; CPU:$E0F2 PRG:60F2 38
sbc #$04 ; CPU:$E0F3 PRG:60F3 E9 04
; -----------------------------------------------------------------------------
; Routine: Sub_E0F5
; Global: Branch target inside Label: taken when E0F5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E0F5:
sta a:ZpC8,y ; CPU:$E0F5 PRG:60F5 99 C8 00
lda #$21 ; CPU:$E0F8 PRG:60F8 A9 21
jmp Sub_F6DB ; CPU:$E0FA PRG:60FA 4C DB F6
; -----------------------------------------------------------------------------
; Routine: Sub_E0FD
; Global: Branch target inside Label: taken when E0FD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E0FD:
lda ZpBE ; CPU:$E0FD PRG:60FD A5 BE
ora #$01 ; CPU:$E0FF PRG:60FF 09 01
sta ZpBE ; CPU:$E101 PRG:6101 85 BE
jsr Sub_F64E ; CPU:$E103 PRG:6103 20 4E F6
lda #$1A ; CPU:$E106 PRG:6106 A9 1A
jsr Sub_F6DB ; CPU:$E108 PRG:6108 20 DB F6
jsr Sub_9B1F ; CPU:$E10B PRG:610B 20 1F 9B
beq NmiHandler_Loop454 ; CPU:$E10E PRG:610E F0 0B
lda #$0A ; CPU:$E110 PRG:6110 A9 0A
sta Zp73 ; CPU:$E112 PRG:6112 85 73
lda #$E7 ; CPU:$E114 PRG:6114 A9 E7
sta Zp74 ; CPU:$E116 PRG:6116 85 74
jmp Sub_E123 ; CPU:$E118 PRG:6118 4C 23 E1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop454
; Global: Branch target inside Label: taken when E11B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop454:
lda #$24 ; CPU:$E11B PRG:611B A9 24
sta Zp73 ; CPU:$E11D PRG:611D 85 73
lda #$E7 ; CPU:$E11F PRG:611F A9 E7
sta Zp74 ; CPU:$E121 PRG:6121 85 74
; -----------------------------------------------------------------------------
; Routine: Sub_E123
; Global: Branch target inside Label: taken when E123.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E123:
jsr Sub_8334 ; CPU:$E123 PRG:6123 20 34 83
lda #$46 ; CPU:$E126 PRG:6126 A9 46
sta $03C1 ; CPU:$E128 PRG:6128 8D C1 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero85
; Global: Branch target inside Label: taken when E12B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero85:
jsr Sub_9B03 ; CPU:$E12B PRG:612B 20 03 9B
jsr Sub_8358 ; CPU:$E12E PRG:612E 20 58 83
dec $03C1 ; CPU:$E131 PRG:6131 CE C1 03
bne NmiHandler_OnNonzero85 ; CPU:$E134 PRG:6134 D0 F5
jmp Sub_E2A3 ; CPU:$E136 PRG:6136 4C A3 E2
; -----------------------------------------------------------------------------
; Routine: Sub_E139
; Global: Branch target inside Label: taken when E139.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E139:
lda $0300 ; CPU:$E139 PRG:6139 AD 00 03
and #$40 ; CPU:$E13C PRG:613C 29 40
beq NmiHandler_Loop459 ; CPU:$E13E PRG:613E F0 2D
lda $068B ; CPU:$E140 PRG:6140 AD 8B 06
bne NmiHandler_Loop455 ; CPU:$E143 PRG:6143 D0 11
lda #$FF ; CPU:$E145 PRG:6145 A9 FF
sta $068B ; CPU:$E147 PRG:6147 8D 8B 06
ldy #$03 ; CPU:$E14A PRG:614A A0 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear24
; Global: Branch target inside Label: taken when E14C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear24:
lda a:ZpB7,y ; CPU:$E14C PRG:614C B9 B7 00
bpl NmiHandler_Loop456 ; CPU:$E14F PRG:614F 10 07
iny ; CPU:$E151 PRG:6151 C8
cpy #$06 ; CPU:$E152 PRG:6152 C0 06
bcc NmiHandler_OnCarryClear24 ; CPU:$E154 PRG:6154 90 F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop455
; Global: Branch target inside Label: taken when E156.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop455:
clc ; CPU:$E156 PRG:6156 18
rts ; CPU:$E157 PRG:6157 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop456
; Global: Branch target inside Label: taken when E158.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop456:
lda #$80 ; CPU:$E158 PRG:6158 A9 80
sta a:ZpB7,y ; CPU:$E15A PRG:615A 99 B7 00
jsr Sub_9B1F ; CPU:$E15D PRG:615D 20 1F 9B
beq NmiHandler_Loop457 ; CPU:$E160 PRG:6160 F0 04
lda #$08 ; CPU:$E162 PRG:6162 A9 08
bne NmiHandler_Loop458 ; CPU:$E164 PRG:6164 D0 02
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop457
; Global: Branch target inside Label: taken when E166.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop457:
lda #$F8 ; CPU:$E166 PRG:6166 A9 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop458
; Global: Branch target inside Label: taken when E168.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop458:
sta a:ZpD9,y ; CPU:$E168 PRG:6168 99 D9 00
sec ; CPU:$E16B PRG:616B 38
rts ; CPU:$E16C PRG:616C 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop459
; Global: Branch target inside Label: taken when E16D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop459:
lda #$00 ; CPU:$E16D PRG:616D A9 00
sta $068B ; CPU:$E16F PRG:616F 8D 8B 06
clc ; CPU:$E172 PRG:6172 18
rts ; CPU:$E173 PRG:6173 60
; -----------------------------------------------------------------------------
; Routine: Sub_E174
; Global: Branch target inside Label: taken when E174.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E174:
lda ZpBE ; CPU:$E174 PRG:6174 A5 BE
ora #$01 ; CPU:$E176 PRG:6176 09 01
sta ZpBE ; CPU:$E178 PRG:6178 85 BE
jsr Sub_9C83 ; CPU:$E17A PRG:617A 20 83 9C
jsr Sub_9C69 ; CPU:$E17D PRG:617D 20 69 9C
jsr Sub_9B1F ; CPU:$E180 PRG:6180 20 1F 9B
bne NmiHandler_Loop460 ; CPU:$E183 PRG:6183 D0 0C
lda #$E6 ; CPU:$E185 PRG:6185 A9 E6
sta Zp73 ; CPU:$E187 PRG:6187 85 73
lda #$E6 ; CPU:$E189 PRG:6189 A9 E6
sta Zp74 ; CPU:$E18B PRG:618B 85 74
lda #$FC ; CPU:$E18D PRG:618D A9 FC
bne NmiHandler_Loop461 ; CPU:$E18F PRG:618F D0 0A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop460
; Global: Branch target inside Label: taken when E191.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop460:
lda #$E0 ; CPU:$E191 PRG:6191 A9 E0
sta Zp73 ; CPU:$E193 PRG:6193 85 73
lda #$E6 ; CPU:$E195 PRG:6195 A9 E6
sta Zp74 ; CPU:$E197 PRG:6197 85 74
lda #$04 ; CPU:$E199 PRG:6199 A9 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop461
; Global: Branch target inside Label: taken when E19B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop461:
clc ; CPU:$E19B PRG:619B 18
adc ZpC8,x ; CPU:$E19C PRG:619C 75 C8
sta ZpC8,x ; CPU:$E19E PRG:619E 95 C8
jsr Sub_8334 ; CPU:$E1A0 PRG:61A0 20 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_E1A3
; Global: Branch target inside Label: taken when E1A3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E1A3:
lda #$02 ; CPU:$E1A3 PRG:61A3 A9 02
sta $055D ; CPU:$E1A5 PRG:61A5 8D 5D 05
jsr Sub_E1C3 ; CPU:$E1A8 PRG:61A8 20 C3 E1
bcc NmiHandler_Loop463 ; CPU:$E1AB PRG:61AB 90 10
cmp #$00 ; CPU:$E1AD PRG:61AD C9 00
beq NmiHandler_Loop462 ; CPU:$E1AF PRG:61AF F0 06
jsr Sub_9C73 ; CPU:$E1B1 PRG:61B1 20 73 9C
jmp Sub_E2A3 ; CPU:$E1B4 PRG:61B4 4C A3 E2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop462
; Global: Branch target inside Label: taken when E1B7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop462:
jsr Sub_9C73 ; CPU:$E1B7 PRG:61B7 20 73 9C
jmp Sub_E0FD ; CPU:$E1BA PRG:61BA 4C FD E0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop463
; Global: Branch target inside Label: taken when E1BD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop463:
jsr Sub_8358 ; CPU:$E1BD PRG:61BD 20 58 83
jmp Sub_E1A3 ; CPU:$E1C0 PRG:61C0 4C A3 E1
; -----------------------------------------------------------------------------
; Routine: Sub_E1C3
; Global: Branch target inside Label: taken when E1C3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E1C3:
jsr Sub_97FE ; CPU:$E1C3 PRG:61C3 20 FE 97
lda $039D,x ; CPU:$E1C6 PRG:61C6 BD 9D 03
clc ; CPU:$E1C9 PRG:61C9 18
adc #$06 ; CPU:$E1CA PRG:61CA 69 06
sta $039D,x ; CPU:$E1CC PRG:61CC 9D 9D 03
lda $03AE,x ; CPU:$E1CF PRG:61CF BD AE 03
adc #$00 ; CPU:$E1D2 PRG:61D2 69 00
sta $03AE,x ; CPU:$E1D4 PRG:61D4 9D AE 03
jsr Sub_9B03 ; CPU:$E1D7 PRG:61D7 20 03 9B
lda $0303,x ; CPU:$E1DA PRG:61DA BD 03 03
cmp #$E8 ; CPU:$E1DD PRG:61DD C9 E8
bcc NmiHandler_Loop464 ; CPU:$E1DF PRG:61DF 90 08
inc ZpE5,x ; CPU:$E1E1 PRG:61E1 F6 E5
inc ZpE5,x ; CPU:$E1E3 PRG:61E3 F6 E5
lda #$01 ; CPU:$E1E5 PRG:61E5 A9 01
sec ; CPU:$E1E7 PRG:61E7 38
rts ; CPU:$E1E8 PRG:61E8 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop464
; Global: Branch target inside Label: taken when E1E9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop464:
ldy $03D7,x ; CPU:$E1E9 PRG:61E9 BC D7 03
lda $047D,y ; CPU:$E1EC PRG:61EC B9 7D 04
sec ; CPU:$E1EF PRG:61EF 38
sbc $039D,x ; CPU:$E1F0 PRG:61F0 FD 9D 03
sta Zp73 ; CPU:$E1F3 PRG:61F3 85 73
lda $048A,y ; CPU:$E1F5 PRG:61F5 B9 8A 04
sbc $03AE,x ; CPU:$E1F8 PRG:61F8 FD AE 03
bne NmiHandler_Loop465 ; CPU:$E1FB PRG:61FB D0 0C
lda Zp73 ; CPU:$E1FD PRG:61FD A5 73
cmp #$30 ; CPU:$E1FF PRG:61FF C9 30
bcs NmiHandler_Loop465 ; CPU:$E201 PRG:6201 B0 06
jsr NmiHandler_Loop349 ; CPU:$E203 PRG:6203 20 31 DA
jmp Sub_E221 ; CPU:$E206 PRG:6206 4C 21 E2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop465
; Global: Branch target inside Label: taken when E209.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop465:
lda $04CB,y ; CPU:$E209 PRG:6209 B9 CB 04
jsr Sub_9A0B ; CPU:$E20C PRG:620C 20 0B 9A
lda $039D,x ; CPU:$E20F PRG:620F BD 9D 03
sec ; CPU:$E212 PRG:6212 38
sbc Zp73 ; CPU:$E213 PRG:6213 E5 73
lda $03AE,x ; CPU:$E215 PRG:6215 BD AE 03
sbc Zp74 ; CPU:$E218 PRG:6218 E5 74
bcc NmiHandler_Loop466 ; CPU:$E21A PRG:621A 90 09
lda $04CB,y ; CPU:$E21C PRG:621C B9 CB 04
sta ZpE5,x ; CPU:$E21F PRG:621F 95 E5
; -----------------------------------------------------------------------------
; Routine: Sub_E221
; Global: Branch target inside Label: taken when E221.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E221:
lda #$00 ; CPU:$E221 PRG:6221 A9 00
sec ; CPU:$E223 PRG:6223 38
rts ; CPU:$E224 PRG:6224 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop466
; Global: Branch target inside Label: taken when E225.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop466:
ldy $03D7,x ; CPU:$E225 PRG:6225 BC D7 03
lda $03FB,y ; CPU:$E228 PRG:6228 B9 FB 03
and #$04 ; CPU:$E22B PRG:622B 29 04
beq NmiHandler_Loop467 ; CPU:$E22D PRG:622D F0 09
lda $04BE,y ; CPU:$E22F PRG:622F B9 BE 04
sta $03D7,x ; CPU:$E232 PRG:6232 9D D7 03
jmp NmiHandler_Loop464 ; CPU:$E235 PRG:6235 4C E9 E1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop467
; Global: Branch target inside Label: taken when E238.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop467:
clc ; CPU:$E238 PRG:6238 18
rts ; CPU:$E239 PRG:6239 60
; -----------------------------------------------------------------------------
; Routine: Sub_E23A
; Global: Branch target inside Label: taken when E23A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E23A:
lda #$23 ; CPU:$E23A PRG:623A A9 23
jsr Sub_F6DB ; CPU:$E23C PRG:623C 20 DB F6
jsr Sub_9B1F ; CPU:$E23F PRG:623F 20 1F 9B
beq NmiHandler_Loop468 ; CPU:$E242 PRG:6242 F0 0A
lda #$EC ; CPU:$E244 PRG:6244 A9 EC
sta Zp73 ; CPU:$E246 PRG:6246 85 73
lda #$E6 ; CPU:$E248 PRG:6248 A9 E6
sta Zp74 ; CPU:$E24A PRG:624A 85 74
bne NmiHandler_Loop469 ; CPU:$E24C PRG:624C D0 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop468
; Global: Branch target inside Label: taken when E24E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop468:
lda #$F6 ; CPU:$E24E PRG:624E A9 F6
sta Zp73 ; CPU:$E250 PRG:6250 85 73
lda #$E6 ; CPU:$E252 PRG:6252 A9 E6
sta Zp74 ; CPU:$E254 PRG:6254 85 74
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop469
; Global: Branch target inside Label: taken when E256.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop469:
jsr Sub_8334 ; CPU:$E256 PRG:6256 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear25
; Global: Branch target inside Label: taken when E259.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear25:
jsr Sub_E291 ; CPU:$E259 PRG:6259 20 91 E2
bcc NmiHandler_OnCarryClear25 ; CPU:$E25C PRG:625C 90 FB
lda $033D ; CPU:$E25E PRG:625E AD 3D 03
ora #$01 ; CPU:$E261 PRG:6261 09 01
sta $033D ; CPU:$E263 PRG:6263 8D 3D 03
lda #$00 ; CPU:$E266 PRG:6266 A9 00
sta Zp73 ; CPU:$E268 PRG:6268 85 73
lda #$E7 ; CPU:$E26A PRG:626A A9 E7
sta Zp74 ; CPU:$E26C PRG:626C 85 74
jsr Sub_8334 ; CPU:$E26E PRG:626E 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear26
; Global: Branch target inside Label: taken when E271.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear26:
jsr Sub_E291 ; CPU:$E271 PRG:6271 20 91 E2
bcc NmiHandler_OnCarryClear26 ; CPU:$E274 PRG:6274 90 FB
lda $033D ; CPU:$E276 PRG:6276 AD 3D 03
ora #$02 ; CPU:$E279 PRG:6279 09 02
sta $033D ; CPU:$E27B PRG:627B 8D 3D 03
lda #$04 ; CPU:$E27E PRG:627E A9 04
sta Zp73 ; CPU:$E280 PRG:6280 85 73
lda #$E7 ; CPU:$E282 PRG:6282 A9 E7
sta Zp74 ; CPU:$E284 PRG:6284 85 74
jsr Sub_8334 ; CPU:$E286 PRG:6286 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear27
; Global: Branch target inside Label: taken when E289.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear27:
jsr Sub_E291 ; CPU:$E289 PRG:6289 20 91 E2
bcc NmiHandler_OnCarryClear27 ; CPU:$E28C PRG:628C 90 FB
jmp Sub_E2A3 ; CPU:$E28E PRG:628E 4C A3 E2
; -----------------------------------------------------------------------------
; Routine: Sub_E291
; Global: Branch target inside Label: taken when E291.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E291:
lda ZpB7,x ; CPU:$E291 PRG:6291 B5 B7
and #$10 ; CPU:$E293 PRG:6293 29 10
bne NmiHandler_Loop470 ; CPU:$E295 PRG:6295 D0 06
jsr Sub_9BBB ; CPU:$E297 PRG:6297 20 BB 9B
jmp Sub_8358 ; CPU:$E29A PRG:629A 4C 58 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop470
; Global: Branch target inside Label: taken when E29D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop470:
jsr Sub_9B81 ; CPU:$E29D PRG:629D 20 81 9B
jmp Sub_8358 ; CPU:$E2A0 PRG:62A0 4C 58 83
; -----------------------------------------------------------------------------
; Routine: Sub_E2A3
; Global: Branch target inside Label: taken when E2A3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E2A3:
lda #$00 ; CPU:$E2A3 PRG:62A3 A9 00
sta $055D ; CPU:$E2A5 PRG:62A5 8D 5D 05
sta ZpBE ; CPU:$E2A8 PRG:62A8 85 BE
jsr Sub_DBEE ; CPU:$E2AA PRG:62AA 20 EE DB
lda #$2D ; CPU:$E2AD PRG:62AD A9 2D
sta Zp6F ; CPU:$E2AF PRG:62AF 85 6F
lda #$00 ; CPU:$E2B1 PRG:62B1 A9 00
sta Zp70 ; CPU:$E2B3 PRG:62B3 85 70
jsr Sub_8280 ; CPU:$E2B5 PRG:62B5 20 80 82
lda #$FF ; CPU:$E2B8 PRG:62B8 A9 FF
sta $0687 ; CPU:$E2BA PRG:62BA 8D 87 06
jsr Sub_BD46 ; CPU:$E2BD PRG:62BD 20 46 BD
lda ZpEC ; CPU:$E2C0 PRG:62C0 A5 EC
cmp #$1A ; CPU:$E2C2 PRG:62C2 C9 1A
bcc NmiHandler_Loop471 ; CPU:$E2C4 PRG:62C4 90 02
lda #$1A ; CPU:$E2C6 PRG:62C6 A9 1A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop471
; Global: Branch target inside Label: taken when E2C8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop471:
sta $058F ; CPU:$E2C8 PRG:62C8 8D 8F 05
sta ZpEC ; CPU:$E2CB PRG:62CB 85 EC
jsr Sub_8266 ; CPU:$E2CD PRG:62CD 20 66 82
clc ; CPU:$E2D0 PRG:62D0 18
rts ; CPU:$E2D1 PRG:62D1 60
; -----------------------------------------------------------------------------
; Routine: Sub_E2D2
; Global: Branch target inside Label: taken when E2D2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E2D2:
lda #$00 ; CPU:$E2D2 PRG:62D2 A9 00
sta $055D ; CPU:$E2D4 PRG:62D4 8D 5D 05
; -----------------------------------------------------------------------------
; Routine: Sub_E2D7
; Global: Branch target inside Label: taken when E2D7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E2D7:
lda ZpB7,x ; CPU:$E2D7 PRG:62D7 B5 B7
and #$01 ; CPU:$E2D9 PRG:62D9 29 01
rts ; CPU:$E2DB PRG:62DB 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero86
; Global: Branch target inside Label: taken when E2DC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero86:
lda #$02 ; CPU:$E2DC PRG:62DC A9 02
sta $03EA ; CPU:$E2DE PRG:62DE 8D EA 03
jsr Sub_82A3 ; CPU:$E2E1 PRG:62E1 20 A3 82
jsr Sub_9B03 ; CPU:$E2E4 PRG:62E4 20 03 9B
lda ZpEC ; CPU:$E2E7 PRG:62E7 A5 EC
cmp #$1F ; CPU:$E2E9 PRG:62E9 C9 1F
bne NmiHandler_OnNonzero86 ; CPU:$E2EB PRG:62EB D0 EF
jsr Sub_F64E ; CPU:$E2ED PRG:62ED 20 4E F6
jsr Sub_D920 ; CPU:$E2F0 PRG:62F0 20 20 D9
lda #$00 ; CPU:$E2F3 PRG:62F3 A9 00
sta $068F ; CPU:$E2F5 PRG:62F5 8D 8F 06
jsr NmiHandler_Loop17 ; CPU:$E2F8 PRG:62F8 20 62 83
lda ZpBE ; CPU:$E2FB PRG:62FB A5 BE
sta ZpA1 ; CPU:$E2FD PRG:62FD 85 A1
lda #$08 ; CPU:$E2FF PRG:62FF A9 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear28
; Global: Branch target inside Label: taken when E301.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear28:
jsr Sub_826F ; CPU:$E301 PRG:6301 20 6F 82
clc ; CPU:$E304 PRG:6304 18
adc #$02 ; CPU:$E305 PRG:6305 69 02
cmp #$14 ; CPU:$E307 PRG:6307 C9 14
bcc NmiHandler_OnCarryClear28 ; CPU:$E309 PRG:6309 90 F6
ldy #$00 ; CPU:$E30B PRG:630B A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero87
; Global: Branch target inside Label: taken when E30D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero87:
lda #$00 ; CPU:$E30D PRG:630D A9 00
sta a:ZpB7,y ; CPU:$E30F PRG:630F 99 B7 00
iny ; CPU:$E312 PRG:6312 C8
cpy #$10 ; CPU:$E313 PRG:6313 C0 10
bne NmiHandler_OnNonzero87 ; CPU:$E315 PRG:6315 D0 F6
lda ZpA1 ; CPU:$E317 PRG:6317 A5 A1
sta ZpBE ; CPU:$E319 PRG:6319 85 BE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero16
; Global: Branch target inside Label: taken when E31B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero16:
jsr Sub_9B03 ; CPU:$E31B PRG:631B 20 03 9B
jsr Sub_82A3 ; CPU:$E31E PRG:631E 20 A3 82
ldy $03DE ; CPU:$E321 PRG:6321 AC DE 03
lda $0408,y ; CPU:$E324 PRG:6324 B9 08 04
cmp #$18 ; CPU:$E327 PRG:6327 C9 18
bcs NmiHandler_Loop472 ; CPU:$E329 PRG:6329 B0 05
lda $068F ; CPU:$E32B PRG:632B AD 8F 06
beq NmiHandler_OnZero16 ; CPU:$E32E PRG:632E F0 EB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop472
; Global: Branch target inside Label: taken when E330.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop472:
lda #$B8 ; CPU:$E330 PRG:6330 A9 B8
sta $0303,x ; CPU:$E332 PRG:6332 9D 03 03
ldy $03D7,x ; CPU:$E335 PRG:6335 BC D7 03
lda $03FB,y ; CPU:$E338 PRG:6338 B9 FB 03
ora #$01 ; CPU:$E33B PRG:633B 09 01
sta $03FB,y ; CPU:$E33D PRG:633D 99 FB 03
lda $04B1,y ; CPU:$E340 PRG:6340 B9 B1 04
and #$FE ; CPU:$E343 PRG:6343 29 FE
sta $04B1,y ; CPU:$E345 PRG:6345 99 B1 04
ldy #$00 ; CPU:$E348 PRG:6348 A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero88
; Global: Branch target inside Label: taken when E34A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero88:
lda $0592,y ; CPU:$E34A PRG:634A B9 92 05
bmi NmiHandler_Loop473 ; CPU:$E34D PRG:634D 30 07
iny ; CPU:$E34F PRG:634F C8
cpy #$0A ; CPU:$E350 PRG:6350 C0 0A
bne NmiHandler_OnNonzero88 ; CPU:$E352 PRG:6352 D0 F6
beq NmiHandler_Loop474 ; CPU:$E354 PRG:6354 F0 75
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop473
; Global: Branch target inside Label: taken when E356.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop473:
lda $059C,y ; CPU:$E356 PRG:6356 B9 9C 05
sta ZpF8 ; CPU:$E359 PRG:6359 85 F8
jsr Sub_DFEC ; CPU:$E35B PRG:635B 20 EC DF
jsr Sub_DE8E ; CPU:$E35E PRG:635E 20 8E DE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarrySet7
; Global: Branch target inside Label: taken when E361.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarrySet7:
jsr NmiHandler_Loop17 ; CPU:$E361 PRG:6361 20 62 83
dec $0303,x ; CPU:$E364 PRG:6364 DE 03 03
lda $0303,x ; CPU:$E367 PRG:6367 BD 03 03
cmp #$B4 ; CPU:$E36A PRG:636A C9 B4
bcs NmiHandler_OnCarrySet7 ; CPU:$E36C PRG:636C B0 F3
jsr Sub_DF07 ; CPU:$E36E PRG:636E 20 07 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarrySet8
; Global: Branch target inside Label: taken when E371.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarrySet8:
jsr NmiHandler_Loop17 ; CPU:$E371 PRG:6371 20 62 83
dec $030A ; CPU:$E374 PRG:6374 CE 0A 03
lda $030A ; CPU:$E377 PRG:6377 AD 0A 03
cmp #$B0 ; CPU:$E37A PRG:637A C9 B0
bcs NmiHandler_OnCarrySet8 ; CPU:$E37C PRG:637C B0 F3
lda #$80 ; CPU:$E37E PRG:637E A9 80
sta ZpBF ; CPU:$E380 PRG:6380 85 BF
lda #$57 ; CPU:$E382 PRG:6382 A9 57
sta $031C ; CPU:$E384 PRG:6384 8D 1C 03
lda #$A0 ; CPU:$E387 PRG:6387 A9 A0
sta $030B ; CPU:$E389 PRG:6389 8D 0B 03
lda ZpC8,x ; CPU:$E38C PRG:638C B5 C8
sec ; CPU:$E38E PRG:638E 38
sbc #$20 ; CPU:$E38F PRG:638F E9 20
sta ZpD0 ; CPU:$E391 PRG:6391 85 D0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear29
; Global: Branch target inside Label: taken when E393.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear29:
jsr NmiHandler_Loop17 ; CPU:$E393 PRG:6393 20 62 83
inc $030A ; CPU:$E396 PRG:6396 EE 0A 03
lda $030A ; CPU:$E399 PRG:6399 AD 0A 03
cmp #$B4 ; CPU:$E39C PRG:639C C9 B4
bcc NmiHandler_OnCarryClear29 ; CPU:$E39E PRG:639E 90 F3
lda #$00 ; CPU:$E3A0 PRG:63A0 A9 00
sta ZpBF ; CPU:$E3A2 PRG:63A2 85 BF
jsr Sub_DE8E ; CPU:$E3A4 PRG:63A4 20 8E DE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear30
; Global: Branch target inside Label: taken when E3A7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear30:
jsr NmiHandler_Loop17 ; CPU:$E3A7 PRG:63A7 20 62 83
inc $030A ; CPU:$E3AA PRG:63AA EE 0A 03
lda $030A ; CPU:$E3AD PRG:63AD AD 0A 03
cmp #$B8 ; CPU:$E3B0 PRG:63B0 C9 B8
bcc NmiHandler_OnCarryClear30 ; CPU:$E3B2 PRG:63B2 90 F3
lda #$00 ; CPU:$E3B4 PRG:63B4 A9 00
sta ZpBE ; CPU:$E3B6 PRG:63B6 85 BE
lda #$FF ; CPU:$E3B8 PRG:63B8 A9 FF
sta $0690 ; CPU:$E3BA PRG:63BA 8D 90 06
ldy $03D7,x ; CPU:$E3BD PRG:63BD BC D7 03
lda $03FB,y ; CPU:$E3C0 PRG:63C0 B9 FB 03
and #$FE ; CPU:$E3C3 PRG:63C3 29 FE
sta $03FB,y ; CPU:$E3C5 PRG:63C5 99 FB 03
jsr Sub_8266 ; CPU:$E3C8 PRG:63C8 20 66 82
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop474
; Global: Branch target inside Label: taken when E3CB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop474:
lda #$C2 ; CPU:$E3CB PRG:63CB A9 C2
sta Zp73 ; CPU:$E3CD PRG:63CD 85 73
lda #$E6 ; CPU:$E3CF PRG:63CF A9 E6
sta Zp74 ; CPU:$E3D1 PRG:63D1 85 74
jsr Sub_8334 ; CPU:$E3D3 PRG:63D3 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarrySet9
; Global: Branch target inside Label: taken when E3D6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarrySet9:
jsr Sub_8358 ; CPU:$E3D6 PRG:63D6 20 58 83
dec ZpCF ; CPU:$E3D9 PRG:63D9 C6 CF
dec ZpCF ; CPU:$E3DB PRG:63DB C6 CF
lda ZpCF ; CPU:$E3DD PRG:63DD A5 CF
cmp #$30 ; CPU:$E3DF PRG:63DF C9 30
bcs NmiHandler_OnCarrySet9 ; CPU:$E3E1 PRG:63E1 B0 F3
lda #$80 ; CPU:$E3E3 PRG:63E3 A9 80
sta ZpBE ; CPU:$E3E5 PRG:63E5 85 BE
jsr Sub_DF07 ; CPU:$E3E7 PRG:63E7 20 07 DF
jsr Sub_DFEC ; CPU:$E3EA PRG:63EA 20 EC DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarrySet10
; Global: Branch target inside Label: taken when E3ED.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarrySet10:
jsr Sub_8358 ; CPU:$E3ED PRG:63ED 20 58 83
dec ZpC8,x ; CPU:$E3F0 PRG:63F0 D6 C8
dec $0303,x ; CPU:$E3F2 PRG:63F2 DE 03 03
dec $0303,x ; CPU:$E3F5 PRG:63F5 DE 03 03
lda ZpCF ; CPU:$E3F8 PRG:63F8 A5 CF
cmp #$28 ; CPU:$E3FA PRG:63FA C9 28
bcs NmiHandler_OnCarrySet10 ; CPU:$E3FC PRG:63FC B0 EF
lda #$88 ; CPU:$E3FE PRG:63FE A9 88
sta ZpBE ; CPU:$E400 PRG:6400 85 BE
jsr Sub_DF07 ; CPU:$E402 PRG:6402 20 07 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarrySet11
; Global: Branch target inside Label: taken when E405.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarrySet11:
jsr Sub_8358 ; CPU:$E405 PRG:6405 20 58 83
dec ZpC8,x ; CPU:$E408 PRG:6408 D6 C8
inc $0303,x ; CPU:$E40A PRG:640A FE 03 03
inc $0303,x ; CPU:$E40D PRG:640D FE 03 03
lda ZpC8,x ; CPU:$E410 PRG:6410 B5 C8
cmp #$20 ; CPU:$E412 PRG:6412 C9 20
bcs NmiHandler_OnCarrySet11 ; CPU:$E414 PRG:6414 B0 EF
lda #$8A ; CPU:$E416 PRG:6416 A9 8A
sta $031B ; CPU:$E418 PRG:6418 8D 1B 03
lda #$10 ; CPU:$E41B PRG:641B A9 10
sta ZpCF ; CPU:$E41D PRG:641D 85 CF
lda #$00 ; CPU:$E41F PRG:641F A9 00
sta ZpBD ; CPU:$E421 PRG:6421 85 BD
sta $03C1 ; CPU:$E423 PRG:6423 8D C1 03
lda #$FF ; CPU:$E426 PRG:6426 A9 FF
sta $0692 ; CPU:$E428 PRG:6428 8D 92 06
lda $0309 ; CPU:$E42B PRG:642B AD 09 03
sta $030A ; CPU:$E42E PRG:642E 8D 0A 03
lda #$2E ; CPU:$E431 PRG:6431 A9 2E
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero89
; Global: Branch target inside Label: taken when E433.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero89:
jsr Sub_8224 ; CPU:$E433 PRG:6433 20 24 82
clc ; CPU:$E436 PRG:6436 18
adc #$02 ; CPU:$E437 PRG:6437 69 02
cmp #$34 ; CPU:$E439 PRG:6439 C9 34
bne NmiHandler_OnNonzero89 ; CPU:$E43B PRG:643B D0 F6
jsr Sub_E4CE ; CPU:$E43D PRG:643D 20 CE E4
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear31
; Global: Branch target inside Label: taken when E440.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear31:
jsr Sub_82A3 ; CPU:$E440 PRG:6440 20 A3 82
ldy $03C1 ; CPU:$E443 PRG:6443 AC C1 03
lda $E632,y ; CPU:$E446 PRG:6446 B9 32 E6
clc ; CPU:$E449 PRG:6449 18
adc $030A ; CPU:$E44A PRG:644A 6D 0A 03
sta $030A ; CPU:$E44D PRG:644D 8D 0A 03
inc ZpCF ; CPU:$E450 PRG:6450 E6 CF
inc ZpCF ; CPU:$E452 PRG:6452 E6 CF
inc $03C1 ; CPU:$E454 PRG:6454 EE C1 03
lda $03C1 ; CPU:$E457 PRG:6457 AD C1 03
and #$07 ; CPU:$E45A PRG:645A 29 07
sta $03C1 ; CPU:$E45C PRG:645C 8D C1 03
lda ZpCF ; CPU:$E45F PRG:645F A5 CF
cmp #$D0 ; CPU:$E461 PRG:6461 C9 D0
bcc NmiHandler_OnCarryClear31 ; CPU:$E463 PRG:6463 90 DB
lda #$8C ; CPU:$E465 PRG:6465 A9 8C
sta $031B ; CPU:$E467 PRG:6467 8D 1B 03
lda #$00 ; CPU:$E46A PRG:646A A9 00
sta $03C1 ; CPU:$E46C PRG:646C 8D C1 03
jsr Sub_E4D8 ; CPU:$E46F PRG:646F 20 D8 E4
lda #$0F ; CPU:$E472 PRG:6472 A9 0F
jsr Sub_F6DB ; CPU:$E474 PRG:6474 20 DB F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear32
; Global: Branch target inside Label: taken when E477.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear32:
jsr Sub_82A3 ; CPU:$E477 PRG:6477 20 A3 82
lda $03C1 ; CPU:$E47A PRG:647A AD C1 03
and #$07 ; CPU:$E47D PRG:647D 29 07
tay ; CPU:$E47F PRG:647F A8
lda $E632,y ; CPU:$E480 PRG:6480 B9 32 E6
clc ; CPU:$E483 PRG:6483 18
adc $030A ; CPU:$E484 PRG:6484 6D 0A 03
sta $030A ; CPU:$E487 PRG:6487 8D 0A 03
inc $03C1 ; CPU:$E48A PRG:648A EE C1 03
lda $03C1 ; CPU:$E48D PRG:648D AD C1 03
cmp #$10 ; CPU:$E490 PRG:6490 C9 10
bcc NmiHandler_OnCarryClear32 ; CPU:$E492 PRG:6492 90 E3
lda #$8B ; CPU:$E494 PRG:6494 A9 8B
sta $031B ; CPU:$E496 PRG:6496 8D 1B 03
lda #$00 ; CPU:$E499 PRG:6499 A9 00
sta $03C1 ; CPU:$E49B PRG:649B 8D C1 03
jsr Sub_E4CE ; CPU:$E49E PRG:649E 20 CE E4
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear33
; Global: Branch target inside Label: taken when E4A1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear33:
jsr Sub_82A3 ; CPU:$E4A1 PRG:64A1 20 A3 82
ldy $03C1 ; CPU:$E4A4 PRG:64A4 AC C1 03
lda $E632,y ; CPU:$E4A7 PRG:64A7 B9 32 E6
clc ; CPU:$E4AA PRG:64AA 18
adc $030A ; CPU:$E4AB PRG:64AB 6D 0A 03
sta $030A ; CPU:$E4AE PRG:64AE 8D 0A 03
dec ZpC8,x ; CPU:$E4B1 PRG:64B1 D6 C8
dec ZpCF ; CPU:$E4B3 PRG:64B3 C6 CF
inc $03C1 ; CPU:$E4B5 PRG:64B5 EE C1 03
lda $03C1 ; CPU:$E4B8 PRG:64B8 AD C1 03
and #$07 ; CPU:$E4BB PRG:64BB 29 07
sta $03C1 ; CPU:$E4BD PRG:64BD 8D C1 03
lda ZpC8,x ; CPU:$E4C0 PRG:64C0 B5 C8
cmp #$F0 ; CPU:$E4C2 PRG:64C2 C9 F0
bcc NmiHandler_OnCarryClear33 ; CPU:$E4C4 PRG:64C4 90 DB
lda #$FF ; CPU:$E4C6 PRG:64C6 A9 FF
sta $0691 ; CPU:$E4C8 PRG:64C8 8D 91 06
jsr Sub_8266 ; CPU:$E4CB PRG:64CB 20 66 82
; -----------------------------------------------------------------------------
; Routine: Sub_E4CE
; Global: Branch target inside Label: taken when E4CE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E4CE:
lda #$11 ; CPU:$E4CE PRG:64CE A9 11
jsr Sub_F6DB ; CPU:$E4D0 PRG:64D0 20 DB F6
lda #$12 ; CPU:$E4D3 PRG:64D3 A9 12
jmp Sub_F6DB ; CPU:$E4D5 PRG:64D5 4C DB F6
; -----------------------------------------------------------------------------
; Routine: Sub_E4D8
; Global: Branch target inside Label: taken when E4D8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E4D8:
lda #$11 ; CPU:$E4D8 PRG:64D8 A9 11
jsr Sub_F704 ; CPU:$E4DA PRG:64DA 20 04 F7
lda #$12 ; CPU:$E4DD PRG:64DD A9 12
jmp Sub_F704 ; CPU:$E4DF PRG:64DF 4C 04 F7
; -----------------------------------------------------------------------------
; Routine: Sub_E4E2
; Global: Branch target inside Label: taken when E4E2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E4E2:
jsr Sub_E4EE ; CPU:$E4E2 PRG:64E2 20 EE E4
cmp #$00 ; CPU:$E4E5 PRG:64E5 C9 00
beq NmiHandler_Loop475 ; CPU:$E4E7 PRG:64E7 F0 03
jmp Sub_9B24 ; CPU:$E4E9 PRG:64E9 4C 24 9B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop475
; Global: Branch target inside Label: taken when E4EC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop475:
clc ; CPU:$E4EC PRG:64EC 18
rts ; CPU:$E4ED PRG:64ED 60
; -----------------------------------------------------------------------------
; Routine: Sub_E4EE
; Global: Branch target inside Label: taken when E4EE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E4EE:
lda $0300 ; CPU:$E4EE PRG:64EE AD 00 03
and #$08 ; CPU:$E4F1 PRG:64F1 29 08
beq NmiHandler_Loop476 ; CPU:$E4F3 PRG:64F3 F0 06
lda #$FE ; CPU:$E4F5 PRG:64F5 A9 FE
sta $03EA ; CPU:$E4F7 PRG:64F7 8D EA 03
rts ; CPU:$E4FA PRG:64FA 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop476
; Global: Branch target inside Label: taken when E4FB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop476:
lda $0300 ; CPU:$E4FB PRG:64FB AD 00 03
and #$04 ; CPU:$E4FE PRG:64FE 29 04
beq NmiHandler_Loop477 ; CPU:$E500 PRG:6500 F0 06
lda #$02 ; CPU:$E502 PRG:6502 A9 02
sta $03EA ; CPU:$E504 PRG:6504 8D EA 03
rts ; CPU:$E507 PRG:6507 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop477
; Global: Branch target inside Label: taken when E508.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop477:
lda #$00 ; CPU:$E508 PRG:6508 A9 00
sta $03EA ; CPU:$E50A PRG:650A 8D EA 03
rts ; CPU:$E50D PRG:650D 60
; ---- data $E50E-$E610 (259 bytes) ----
.byte $A2, $07, $A9, $80, $85, $BE, $A9, $34, $8D, $0A, $03, $A9, $00, $85, $CF, $A9 ; CPU:$E50E PRG:650E A2 07 A9 80 85 BE A9 34 8D 0A 03 A9 00 85 CF A9
.byte $02, $85, $E0, $A9, $44, $85, $73, $A9, $E6, $85, $74, $20, $34, $83, $A9, $08 ; CPU:$E51E PRG:651E 02 85 E0 A9 44 85 73 A9 E6 85 74 20 34 83 A9 08
.byte $20, $DB, $F6, $A9, $09, $20, $DB, $F6, $20, $62, $83, $EE, $0A, $03, $20, $F1 ; CPU:$E52E PRG:652E 20 DB F6 A9 09 20 DB F6 20 62 83 EE 0A 03 20 F1
.byte $DF, $C9, $E0, $B0, $F3, $C9, $30, $90, $EF, $A9, $08, $20, $04, $F7, $A9, $09 ; CPU:$E53E PRG:653E DF C9 E0 B0 F3 C9 30 90 EF A9 08 20 04 F7 A9 09
.byte $20, $04, $F7, $A9, $06, $20, $DB, $F6, $A9, $07, $20, $DB, $F6, $A9, $48, $85 ; CPU:$E54E PRG:654E 20 04 F7 A9 06 20 DB F6 A9 07 20 DB F6 A9 48 85
.byte $73, $A9, $E6, $85, $74, $20, $34, $83, $20, $62, $83, $90, $FB, $EE, $0A, $03 ; CPU:$E55E PRG:655E 73 A9 E6 85 74 20 34 83 20 62 83 90 FB EE 0A 03
.byte $20, $F1, $DF, $C9, $50, $90, $E6, $A9, $06, $20, $04, $F7, $A9, $4E, $85, $73 ; CPU:$E56E PRG:656E 20 F1 DF C9 50 90 E6 A9 06 20 04 F7 A9 4E 85 73
.byte $A9, $E6, $85, $74, $20, $34, $83, $20, $62, $83, $EE, $0A, $03, $EE, $0A, $03 ; CPU:$E57E PRG:657E A9 E6 85 74 20 34 83 20 62 83 EE 0A 03 EE 0A 03
.byte $AD, $0A, $03, $C9, $89, $90, $F0, $A9, $89, $8D, $0A, $03, $A9, $FF, $8D, $02 ; CPU:$E58E PRG:658E AD 0A 03 C9 89 90 F0 A9 89 8D 0A 03 A9 FF 8D 02
.byte $03, $A9, $56, $85, $73, $A9, $E6, $85, $74, $20, $34, $83, $A9, $04, $20, $DB ; CPU:$E59E PRG:659E 03 A9 56 85 73 A9 E6 85 74 20 34 83 A9 04 20 DB
.byte $F6, $A9, $05, $20, $DB, $F6, $20, $62, $83, $90, $FB, $A9, $B6, $85, $73, $A9 ; CPU:$E5AE PRG:65AE F6 A9 05 20 DB F6 20 62 83 90 FB A9 B6 85 73 A9
.byte $E6, $85, $74, $20, $34, $83, $20, $62, $83, $20, $F1, $DF, $C9, $68, $90, $F6 ; CPU:$E5BE PRG:65BE E6 85 74 20 34 83 20 62 83 20 F1 DF C9 68 90 F6
.byte $A9, $5E, $85, $73, $A9, $E6, $85, $74, $20, $34, $83, $20, $62, $83, $20, $F1 ; CPU:$E5CE PRG:65CE A9 5E 85 73 A9 E6 85 74 20 34 83 20 62 83 20 F1
.byte $DF, $C9, $7E, $90, $F6, $A9, $72, $85, $73, $A9, $E6, $85, $74, $20, $34, $83 ; CPU:$E5DE PRG:65DE DF C9 7E 90 F6 A9 72 85 73 A9 E6 85 74 20 34 83
.byte $20, $62, $83, $20, $62, $83, $A9, $00, $8D, $02, $03, $A9, $01, $85, $EC, $A9 ; CPU:$E5EE PRG:65EE 20 62 83 20 62 83 A9 00 8D 02 03 A9 01 85 EC A9
.byte $8C, $85, $BE, $A9, $30, $8D, $A4, $03, $A9, $00, $8D, $B5, $03, $20, $72, $E0 ; CPU:$E5FE PRG:65FE 8C 85 BE A9 30 8D A4 03 A9 00 8D B5 03 20 72 E0
.byte $20, $66, $82 ; CPU:$E60E PRG:660E 20 66 82
; -----------------------------------------------------------------------------
; Routine: Sub_E611
; Global: Branch target inside Label: taken when E611.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E611:
lda $0300 ; CPU:$E611 PRG:6611 AD 00 03
and #$01 ; CPU:$E614 PRG:6614 29 01
rts ; CPU:$E616 PRG:6616 60
; -----------------------------------------------------------------------------
; Routine: Sub_E617
; Global: Branch target inside Label: taken when E617.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E617:
lda $0300 ; CPU:$E617 PRG:6617 AD 00 03
and #$02 ; CPU:$E61A PRG:661A 29 02
rts ; CPU:$E61C PRG:661C 60
; ---- data $E61D-$E79D (385 bytes) ----
; referenced by `ora $E633,x` at $DA2A (operand $E633 falls inside this region)
; referenced by `and $E638,x` at $DBF9 (operand $E638 falls inside this region)
; referenced by `lda $E62B,y` at $DE7E (operand $E62B falls inside this region)
; referenced by `lda $E61D,y` at $DEF7 (operand $E61D falls inside this region)
; referenced by `lda $E624,y` at $DF69 (operand $E624 falls inside this region)
; referenced by `lda $E62D,y` at $DFBF (operand $E62D falls inside this region)
; ... and 4 further references from decoded code
.byte $FD, $FD, $FE, $FE, $FE, $FE, $FF, $01, $02, $02, $02, $02, $03, $03, $FD, $FD ; CPU:$E61D PRG:661D FD FD FE FE FE FE FF 01 02 02 02 02 03 03 FD FD
.byte $03, $03, $02, $00, $FE, $00, $FE, $00, $02, $00, $FE, $00, $02, $01, $02, $04 ; CPU:$E62D PRG:662D 03 03 02 00 FE 00 FE 00 02 00 FE 00 02 01 02 04
.byte $08, $10, $FE, $FD, $FB, $F7, $EF, $00, $4E, $04, $FF, $01, $4E, $02, $4F, $02 ; CPU:$E63D PRG:663D 08 10 FE FD FB F7 EF 00 4E 04 FF 01 4E 02 4F 02
.byte $FF, $01, $0E, $07, $0C, $07, $06, $FF, $FF, $01, $12, $0C, $13, $0C, $12, $0C ; CPU:$E64D PRG:664D FF 01 0E 07 0C 07 06 FF FF 01 12 0C 13 0C 12 0C
.byte $FF, $01, $04, $04, $0C, $04, $0E, $04, $0C, $04, $06, $04, $04, $04, $06, $04 ; CPU:$E65D PRG:665D FF 01 04 04 0C 04 0E 04 0C 04 06 04 04 04 06 04
.byte $04, $04, $06, $04, $FF, $00, $06, $02, $FF, $00, $07, $03, $FF, $01, $06, $03 ; CPU:$E66D PRG:666D 04 04 06 04 FF 00 06 02 FF 00 07 03 FF 01 06 03
.byte $FF, $01, $07, $03, $FF, $00, $0C, $03, $FF, $00, $0D, $03, $FF, $00, $0E, $03 ; CPU:$E67D PRG:667D FF 01 07 03 FF 00 0C 03 FF 00 0D 03 FF 00 0E 03
.byte $FF, $00, $0F, $03, $FF, $01, $66, $03, $FF, $01, $67, $03, $FF, $01, $6A, $03 ; CPU:$E68D PRG:668D FF 00 0F 03 FF 01 66 03 FF 01 67 03 FF 01 6A 03
.byte $FF, $01, $6B, $03, $FF, $01, $04, $03, $06, $01, $FF, $01, $05, $03, $07, $01 ; CPU:$E69D PRG:669D FF 01 6B 03 FF 01 04 03 06 01 FF 01 05 03 07 01
.byte $FF, $00, $12, $03, $FF, $00, $13, $03, $FF, $01, $04, $01, $06, $01, $FF, $01 ; CPU:$E6AD PRG:66AD FF 00 12 03 FF 00 13 03 FF 01 04 01 06 01 FF 01
.byte $05, $01, $07, $01, $FF, $00, $05, $01, $07, $01, $FF, $01, $02, $01, $06, $01 ; CPU:$E6BD PRG:66BD 05 01 07 01 FF 00 05 01 07 01 FF 01 02 01 06 01
.byte $FF, $01, $03, $01, $07, $01, $FF, $01, $10, $02, $12, $02, $FF, $01, $11, $02 ; CPU:$E6CD PRG:66CD FF 01 03 01 07 01 FF 01 10 02 12 02 FF 01 11 02
.byte $13, $02, $FF, $00, $0F, $02, $15, $02, $FF, $00, $0E, $02, $14, $02, $FF, $01 ; CPU:$E6DD PRG:66DD 13 02 FF 00 0F 02 15 02 FF 00 0E 02 14 02 FF 01
.byte $0E, $03, $14, $03, $0E, $03, $08, $03, $FF, $01, $0F, $03, $15, $03, $0F, $03 ; CPU:$E6ED PRG:66ED 0E 03 14 03 0E 03 08 03 FF 01 0F 03 15 03 0F 03
.byte $09, $03, $FF, $01, $16, $03, $FF, $01, $17, $03, $42, $03, $FF, $01, $0E, $03 ; CPU:$E6FD PRG:66FD 09 03 FF 01 16 03 FF 01 17 03 42 03 FF 01 0E 03
.byte $08, $03, $0C, $03, $0E, $02, $0A, $02, $0E, $02, $0A, $02, $0E, $02, $0A, $02 ; CPU:$E70D PRG:670D 08 03 0C 03 0E 02 0A 02 0E 02 0A 02 0E 02 0A 02
.byte $0E, $02, $0A, $02, $42, $03, $FF, $01, $0F, $03, $09, $03, $0D, $03, $0F, $02 ; CPU:$E71D PRG:671D 0E 02 0A 02 42 03 FF 01 0F 03 09 03 0D 03 0F 02
.byte $0B, $02, $0F, $02, $0B, $02, $0F, $02, $0B, $02, $0F, $02, $0B, $02, $42, $03 ; CPU:$E72D PRG:672D 0B 02 0F 02 0B 02 0F 02 0B 02 0F 02 0B 02 42 03
.byte $FF, $01, $00, $03, $02, $03, $FF, $01, $01, $03, $03, $03, $FF, $01, $A3, $01 ; CPU:$E73D PRG:673D FF 01 00 03 02 03 FF 01 01 03 03 03 FF 01 A3 01
.byte $A5, $01, $A7, $01, $A9, $01, $AB, $01, $A1, $01, $9F, $01, $9D, $01, $FF, $01 ; CPU:$E74D PRG:674D A5 01 A7 01 A9 01 AB 01 A1 01 9F 01 9D 01 FF 01
.byte $9F, $01, $A1, $01, $AD, $01, $AF, $01, $B1, $01, $B3, $01, $FF, $01, $A4, $01 ; CPU:$E75D PRG:675D 9F 01 A1 01 AD 01 AF 01 B1 01 B3 01 FF 01 A4 01
.byte $A6, $01, $A8, $01, $AA, $01, $AC, $01, $A2, $01, $A0, $01, $9E, $01, $FF, $01 ; CPU:$E76D PRG:676D A6 01 A8 01 AA 01 AC 01 A2 01 A0 01 9E 01 FF 01
.byte $A0, $01, $A2, $01, $AE, $01, $B0, $01, $B2, $01, $B4, $01, $FF, $01, $1E, $04 ; CPU:$E77D PRG:677D A0 01 A2 01 AE 01 B0 01 B2 01 B4 01 FF 01 1E 04
.byte $FF, $01, $1F, $04, $FF, $01, $1C, $04, $1E, $04, $FF, $01, $1D, $04, $1F, $04 ; CPU:$E78D PRG:678D FF 01 1F 04 FF 01 1C 04 1E 04 FF 01 1D 04 1F 04
.byte $FF ; CPU:$E79D PRG:679D FF
; -----------------------------------------------------------------------------
; Routine: Label_E79E
; Global: Branch target inside Label: taken when E79E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_E79E:
ldx #$08 ; CPU:$E79E PRG:679E A2 08
lda #$00 ; CPU:$E7A0 PRG:67A0 A9 00
sta $03CE ; CPU:$E7A2 PRG:67A2 8D CE 03
jmp Sub_E7FE ; CPU:$E7A5 PRG:67A5 4C FE E7
; ---- data $E7A8-$E7CC (37 bytes) ----
.byte $A2, $09, $A9, $01, $8D, $CF, $03, $4C, $FE, $E7, $A2, $0A, $A9, $02, $8D, $D0 ; CPU:$E7A8 PRG:67A8 A2 09 A9 01 8D CF 03 4C FE E7 A2 0A A9 02 8D D0
.byte $03, $4C, $FE, $E7, $A2, $0B, $A9, $03, $8D, $D1, $03, $AD, $8E, $05, $C9, $04 ; CPU:$E7B8 PRG:67B8 03 4C FE E7 A2 0B A9 03 8D D1 03 AD 8E 05 C9 04
.byte $90, $03, $4C, $FE, $E7 ; CPU:$E7C8 PRG:67C8 90 03 4C FE E7
; -----------------------------------------------------------------------------
; Routine: Label_E7CD
; Global: Branch target inside Label: taken when E7CD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_E7CD:
lda #$03 ; CPU:$E7CD PRG:67CD A9 03
sec ; CPU:$E7CF PRG:67CF 38
sbc $058E ; CPU:$E7D0 PRG:67D0 ED 8E 05
tay ; CPU:$E7D3 PRG:67D3 A8
lda #$00 ; CPU:$E7D4 PRG:67D4 A9 00
sta Zp70 ; CPU:$E7D6 PRG:67D6 85 70
sta Zp6F ; CPU:$E7D8 PRG:67D8 85 6F
; -----------------------------------------------------------------------------
; Routine: Sub_E7DA
; Global: Branch target inside Label: taken when E7DA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E7DA:
tya ; CPU:$E7DA PRG:67DA 98
beq NmiHandler_Loop478 ; CPU:$E7DB PRG:67DB F0 11
lda #$10 ; CPU:$E7DD PRG:67DD A9 10
clc ; CPU:$E7DF PRG:67DF 18
adc Zp6F ; CPU:$E7E0 PRG:67E0 65 6F
sta Zp6F ; CPU:$E7E2 PRG:67E2 85 6F
lda #$0E ; CPU:$E7E4 PRG:67E4 A9 0E
adc Zp70 ; CPU:$E7E6 PRG:67E6 65 70
sta Zp70 ; CPU:$E7E8 PRG:67E8 85 70
dey ; CPU:$E7EA PRG:67EA 88
jmp Sub_E7DA ; CPU:$E7EB PRG:67EB 4C DA E7
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop478
; Global: Branch target inside Label: taken when E7EE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop478:
lda #$FC ; CPU:$E7EE PRG:67EE A9 FC
clc ; CPU:$E7F0 PRG:67F0 18
adc Zp6F ; CPU:$E7F1 PRG:67F1 65 6F
sta Zp6F ; CPU:$E7F3 PRG:67F3 85 6F
lda Zp70 ; CPU:$E7F5 PRG:67F5 A5 70
adc #$03 ; CPU:$E7F7 PRG:67F7 69 03
sta Zp70 ; CPU:$E7F9 PRG:67F9 85 70
jmp Sub_E852 ; CPU:$E7FB PRG:67FB 4C 52 E8
; -----------------------------------------------------------------------------
; Routine: Sub_E7FE
; Global: Branch target inside Label: taken when E7FE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E7FE:
lda $058E ; CPU:$E7FE PRG:67FE AD 8E 05
cmp #$03 ; CPU:$E801 PRG:6801 C9 03
bcs NmiHandler_Loop480 ; CPU:$E803 PRG:6803 B0 34
lda #$3C ; CPU:$E805 PRG:6805 A9 3C
clc ; CPU:$E807 PRG:6807 18
sbc $058E ; CPU:$E808 PRG:6808 ED 8E 05
asl a ; CPU:$E80B PRG:680B 0A
sta Zp71 ; CPU:$E80C PRG:680C 85 71
lda #$00 ; CPU:$E80E PRG:680E A9 00
sta Zp70 ; CPU:$E810 PRG:6810 85 70
sta Zp6F ; CPU:$E812 PRG:6812 85 6F
ldy $03C6,x ; CPU:$E814 PRG:6814 BC C6 03
beq NmiHandler_Loop479 ; CPU:$E817 PRG:6817 F0 10
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero90
; Global: Branch target inside Label: taken when E819.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero90:
clc ; CPU:$E819 PRG:6819 18
lda Zp71 ; CPU:$E81A PRG:681A A5 71
adc Zp6F ; CPU:$E81C PRG:681C 65 6F
sta Zp6F ; CPU:$E81E PRG:681E 85 6F
lda #$00 ; CPU:$E820 PRG:6820 A9 00
adc Zp70 ; CPU:$E822 PRG:6822 65 70
sta Zp70 ; CPU:$E824 PRG:6824 85 70
dey ; CPU:$E826 PRG:6826 88
bne NmiHandler_OnNonzero90 ; CPU:$E827 PRG:6827 D0 F0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop479
; Global: Branch target inside Label: taken when E829.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop479:
clc ; CPU:$E829 PRG:6829 18
lda #$78 ; CPU:$E82A PRG:682A A9 78
adc Zp6F ; CPU:$E82C PRG:682C 65 6F
sta Zp6F ; CPU:$E82E PRG:682E 85 6F
lda #$00 ; CPU:$E830 PRG:6830 A9 00
adc Zp70 ; CPU:$E832 PRG:6832 65 70
sta Zp70 ; CPU:$E834 PRG:6834 85 70
jmp Sub_E852 ; CPU:$E836 PRG:6836 4C 52 E8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop480
; Global: Branch target inside Label: taken when E839.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop480:
ldy $03C6,x ; CPU:$E839 PRG:6839 BC C6 03
lda #$00 ; CPU:$E83C PRG:683C A9 00
sta Zp6F ; CPU:$E83E PRG:683E 85 6F
sta Zp70 ; CPU:$E840 PRG:6840 85 70
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative17
; Global: Branch target inside Label: taken when E842.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative17:
clc ; CPU:$E842 PRG:6842 18
lda #$3C ; CPU:$E843 PRG:6843 A9 3C
adc Zp6F ; CPU:$E845 PRG:6845 65 6F
sta Zp6F ; CPU:$E847 PRG:6847 85 6F
lda Zp70 ; CPU:$E849 PRG:6849 A5 70
adc #$00 ; CPU:$E84B PRG:684B 69 00
sta Zp70 ; CPU:$E84D PRG:684D 85 70
dey ; CPU:$E84F PRG:684F 88
bpl NmiHandler_OnNonnegative17 ; CPU:$E850 PRG:6850 10 F0
; -----------------------------------------------------------------------------
; Routine: Sub_E852
; Global: Branch target inside Label: taken when E852.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E852:
lda #$00 ; CPU:$E852 PRG:6852 A9 00
sta $0325,x ; CPU:$E854 PRG:6854 9D 25 03
jsr Sub_8280 ; CPU:$E857 PRG:6857 20 80 82
jsr NmiHandler_OnZero19 ; CPU:$E85A PRG:685A 20 58 EF
lda #$82 ; CPU:$E85D PRG:685D A9 82
sta ZpB7,x ; CPU:$E85F PRG:685F 95 B7
lda #$40 ; CPU:$E861 PRG:6861 A9 40
sta $0336,x ; CPU:$E863 PRG:6863 9D 36 03
jsr NmiHandler_Loop17 ; CPU:$E866 PRG:6866 20 62 83
lda #$00 ; CPU:$E869 PRG:6869 A9 00
sta $0336,x ; CPU:$E86B PRG:686B 9D 36 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear34
; Global: Branch target inside Label: taken when E86E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear34:
jsr Sub_9B03 ; CPU:$E86E PRG:686E 20 03 9B
jsr Sub_8358 ; CPU:$E871 PRG:6871 20 58 83
bcc NmiHandler_OnCarryClear34 ; CPU:$E874 PRG:6874 90 F8
lda #$80 ; CPU:$E876 PRG:6876 A9 80
sta ZpB7,x ; CPU:$E878 PRG:6878 95 B7
jsr Sub_F0CE ; CPU:$E87A PRG:687A 20 CE F0
jsr Sub_F0B4 ; CPU:$E87D PRG:687D 20 B4 F0
; -----------------------------------------------------------------------------
; Routine: Sub_E880
; Global: Branch target inside Label: taken when E880.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E880:
jsr Sub_F1DC ; CPU:$E880 PRG:6880 20 DC F1
jsr Sub_E2D7 ; CPU:$E883 PRG:6883 20 D7 E2
beq NmiHandler_Loop481 ; CPU:$E886 PRG:6886 F0 03
jmp Sub_ED72 ; CPU:$E888 PRG:6888 4C 72 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop481
; Global: Branch target inside Label: taken when E88B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop481:
jsr Sub_ED24 ; CPU:$E88B PRG:688B 20 24 ED
dec $03EF,x ; CPU:$E88E PRG:688E DE EF 03
bne NmiHandler_Loop482 ; CPU:$E891 PRG:6891 D0 03
jmp Sub_F0E7 ; CPU:$E893 PRG:6893 4C E7 F0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop482
; Global: Branch target inside Label: taken when E896.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop482:
jsr Sub_F0C0 ; CPU:$E896 PRG:6896 20 C0 F0
bcc NmiHandler_Loop483 ; CPU:$E899 PRG:6899 90 03
jmp Sub_EAA0 ; CPU:$E89B PRG:689B 4C A0 EA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop483
; Global: Branch target inside Label: taken when E89E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop483:
jsr Sub_E8EF ; CPU:$E89E PRG:689E 20 EF E8
jsr Sub_EDAD ; CPU:$E8A1 PRG:68A1 20 AD ED
bcc NmiHandler_Loop484 ; CPU:$E8A4 PRG:68A4 90 06
jsr Sub_E0B5 ; CPU:$E8A6 PRG:68A6 20 B5 E0
jsr NmiHandler_Loop490 ; CPU:$E8A9 PRG:68A9 20 11 E9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop484
; Global: Branch target inside Label: taken when E8AC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop484:
jsr Sub_9BBB ; CPU:$E8AC PRG:68AC 20 BB 9B
bcc NmiHandler_Loop485 ; CPU:$E8AF PRG:68AF 90 03
jmp Sub_EE79 ; CPU:$E8B1 PRG:68B1 4C 79 EE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop485
; Global: Branch target inside Label: taken when E8B4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop485:
jsr Sub_F01B ; CPU:$E8B4 PRG:68B4 20 1B F0
bcc NmiHandler_Loop486 ; CPU:$E8B7 PRG:68B7 90 03
jmp Sub_ED72 ; CPU:$E8B9 PRG:68B9 4C 72 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop486
; Global: Branch target inside Label: taken when E8BC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop486:
jsr Sub_9B03 ; CPU:$E8BC PRG:68BC 20 03 9B
jsr Sub_99E7 ; CPU:$E8BF PRG:68BF 20 E7 99
lda $0303,x ; CPU:$E8C2 PRG:68C2 BD 03 03
cmp #$F0 ; CPU:$E8C5 PRG:68C5 C9 F0
bcc NmiHandler_Loop487 ; CPU:$E8C7 PRG:68C7 90 03
jmp Sub_EF30 ; CPU:$E8C9 PRG:68C9 4C 30 EF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop487
; Global: Branch target inside Label: taken when E8CC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop487:
jsr Sub_8358 ; CPU:$E8CC PRG:68CC 20 58 83
jmp Sub_E880 ; CPU:$E8CF PRG:68CF 4C 80 E8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero17
; Global: Branch target inside Label: taken when E8D2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero17:
jsr Sub_F0CE ; CPU:$E8D2 PRG:68D2 20 CE F0
; -----------------------------------------------------------------------------
; Routine: Sub_E8D5
; Global: Branch target inside Label: taken when E8D5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E8D5:
jsr Sub_F1D3 ; CPU:$E8D5 PRG:68D5 20 D3 F1
jsr Sub_E8EF ; CPU:$E8D8 PRG:68D8 20 EF E8
jsr Sub_DBEE ; CPU:$E8DB PRG:68DB 20 EE DB
jsr Sub_9B1F ; CPU:$E8DE PRG:68DE 20 1F 9B
bne NmiHandler_Loop488 ; CPU:$E8E1 PRG:68E1 D0 05
lda #$02 ; CPU:$E8E3 PRG:68E3 A9 02
jmp Sub_E8EA ; CPU:$E8E5 PRG:68E5 4C EA E8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop488
; Global: Branch target inside Label: taken when E8E8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop488:
lda #$FE ; CPU:$E8E8 PRG:68E8 A9 FE
; -----------------------------------------------------------------------------
; Routine: Sub_E8EA
; Global: Branch target inside Label: taken when E8EA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E8EA:
sta ZpD9,x ; CPU:$E8EA PRG:68EA 95 D9
jmp Sub_E880 ; CPU:$E8EC PRG:68EC 4C 80 E8
; -----------------------------------------------------------------------------
; Routine: Sub_E8EF
; Global: Branch target inside Label: taken when E8EF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E8EF:
lda $0336,x ; CPU:$E8EF PRG:68EF BD 36 03
and #$04 ; CPU:$E8F2 PRG:68F2 29 04
bne NmiHandler_Loop490 ; CPU:$E8F4 PRG:68F4 D0 1B
jsr Sub_9B1F ; CPU:$E8F6 PRG:68F6 20 1F 9B
beq NmiHandler_Loop489 ; CPU:$E8F9 PRG:68F9 F0 0B
lda #$8E ; CPU:$E8FB PRG:68FB A9 8E
sta Zp73 ; CPU:$E8FD PRG:68FD 85 73
lda #$F2 ; CPU:$E8FF PRG:68FF A9 F2
sta Zp74 ; CPU:$E901 PRG:6901 85 74
jmp Sub_8334 ; CPU:$E903 PRG:6903 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop489
; Global: Branch target inside Label: taken when E906.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop489:
lda #$92 ; CPU:$E906 PRG:6906 A9 92
sta Zp73 ; CPU:$E908 PRG:6908 85 73
lda #$F2 ; CPU:$E90A PRG:690A A9 F2
sta Zp74 ; CPU:$E90C PRG:690C 85 74
jmp Sub_8334 ; CPU:$E90E PRG:690E 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop490
; Global: Branch target inside Label: taken when E911.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop490:
jsr Sub_9B1F ; CPU:$E911 PRG:6911 20 1F 9B
beq NmiHandler_Loop491 ; CPU:$E914 PRG:6914 F0 0B
lda #$AA ; CPU:$E916 PRG:6916 A9 AA
sta Zp73 ; CPU:$E918 PRG:6918 85 73
lda #$F2 ; CPU:$E91A PRG:691A A9 F2
sta Zp74 ; CPU:$E91C PRG:691C 85 74
jmp Sub_8334 ; CPU:$E91E PRG:691E 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop491
; Global: Branch target inside Label: taken when E921.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop491:
lda #$B0 ; CPU:$E921 PRG:6921 A9 B0
sta Zp73 ; CPU:$E923 PRG:6923 85 73
lda #$F2 ; CPU:$E925 PRG:6925 A9 F2
sta Zp74 ; CPU:$E927 PRG:6927 85 74
jmp Sub_8334 ; CPU:$E929 PRG:6929 4C 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_E92C
; Global: Branch target inside Label: taken when E92C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E92C:
jsr Sub_E2D7 ; CPU:$E92C PRG:692C 20 D7 E2
beq NmiHandler_Loop492 ; CPU:$E92F PRG:692F F0 03
jmp Sub_ED72 ; CPU:$E931 PRG:6931 4C 72 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop492
; Global: Branch target inside Label: taken when E934.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop492:
dec $03EF,x ; CPU:$E934 PRG:6934 DE EF 03
beq NmiHandler_OnZero17 ; CPU:$E937 PRG:6937 F0 99
lda $0336,x ; CPU:$E939 PRG:6939 BD 36 03
and #$20 ; CPU:$E93C PRG:693C 29 20
beq NmiHandler_Loop493 ; CPU:$E93E PRG:693E F0 08
jsr Sub_F06C ; CPU:$E940 PRG:6940 20 6C F0
bcc NmiHandler_Loop493 ; CPU:$E943 PRG:6943 90 03
jmp Sub_EF00 ; CPU:$E945 PRG:6945 4C 00 EF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop493
; Global: Branch target inside Label: taken when E948.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop493:
jsr Sub_F0C0 ; CPU:$E948 PRG:6948 20 C0 F0
bcc NmiHandler_Loop494 ; CPU:$E94B PRG:694B 90 03
jmp Sub_EAA0 ; CPU:$E94D PRG:694D 4C A0 EA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop494
; Global: Branch target inside Label: taken when E950.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop494:
jsr Sub_ED24 ; CPU:$E950 PRG:6950 20 24 ED
dey ; CPU:$E953 PRG:6953 88
beq NmiHandler_Loop495 ; CPU:$E954 PRG:6954 F0 06
dey ; CPU:$E956 PRG:6956 88
beq NmiHandler_Loop496 ; CPU:$E957 PRG:6957 F0 16
jmp Sub_EB94 ; CPU:$E959 PRG:6959 4C 94 EB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop495
; Global: Branch target inside Label: taken when E95C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop495:
jsr Sub_DFF1 ; CPU:$E95C PRG:695C 20 F1 DF
jsr Sub_9848 ; CPU:$E95F PRG:695F 20 48 98
bcc NmiHandler_Loop496 ; CPU:$E962 PRG:6962 90 0B
lda $0336,x ; CPU:$E964 PRG:6964 BD 36 03
ora #$80 ; CPU:$E967 PRG:6967 09 80
sta $0336,x ; CPU:$E969 PRG:6969 9D 36 03
jsr Sub_DFF9 ; CPU:$E96C PRG:696C 20 F9 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop496
; Global: Branch target inside Label: taken when E96F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop496:
jsr Sub_9BBB ; CPU:$E96F PRG:696F 20 BB 9B
bcc NmiHandler_Loop497 ; CPU:$E972 PRG:6972 90 03
jmp Sub_EE79 ; CPU:$E974 PRG:6974 4C 79 EE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop497
; Global: Branch target inside Label: taken when E977.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop497:
jsr Sub_EDAD ; CPU:$E977 PRG:6977 20 AD ED
bcc NmiHandler_Loop498 ; CPU:$E97A PRG:697A 90 06
jsr Sub_E0B5 ; CPU:$E97C PRG:697C 20 B5 E0
jsr NmiHandler_Loop518 ; CPU:$E97F PRG:697F 20 85 EA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop498
; Global: Branch target inside Label: taken when E982.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop498:
jsr Sub_F01B ; CPU:$E982 PRG:6982 20 1B F0
bcc NmiHandler_Loop499 ; CPU:$E985 PRG:6985 90 03
jmp Sub_ED72 ; CPU:$E987 PRG:6987 4C 72 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop499
; Global: Branch target inside Label: taken when E98A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop499:
jsr Sub_9B03 ; CPU:$E98A PRG:698A 20 03 9B
jsr Sub_99E7 ; CPU:$E98D PRG:698D 20 E7 99
jsr Sub_EF44 ; CPU:$E990 PRG:6990 20 44 EF
bcc NmiHandler_Loop500 ; CPU:$E993 PRG:6993 90 03
jmp Sub_EF30 ; CPU:$E995 PRG:6995 4C 30 EF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop500
; Global: Branch target inside Label: taken when E998.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop500:
jsr Sub_8358 ; CPU:$E998 PRG:6998 20 58 83
bcc NmiHandler_Loop501 ; CPU:$E99B PRG:699B 90 03
jsr Sub_EA63 ; CPU:$E99D PRG:699D 20 63 EA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop501
; Global: Branch target inside Label: taken when E9A0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop501:
jmp Sub_E92C ; CPU:$E9A0 PRG:69A0 4C 2C E9
; -----------------------------------------------------------------------------
; Routine: Sub_E9A3
; Global: Branch target inside Label: taken when E9A3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E9A3:
jsr Sub_F1D3 ; CPU:$E9A3 PRG:69A3 20 D3 F1
jsr Sub_EA63 ; CPU:$E9A6 PRG:69A6 20 63 EA
jmp NmiHandler_Loop496 ; CPU:$E9A9 PRG:69A9 4C 6F E9
; -----------------------------------------------------------------------------
; Routine: Sub_E9AC
; Global: Branch target inside Label: taken when E9AC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_E9AC:
jsr Sub_F1DC ; CPU:$E9AC PRG:69AC 20 DC F1
jsr Sub_E2D7 ; CPU:$E9AF PRG:69AF 20 D7 E2
beq NmiHandler_Loop502 ; CPU:$E9B2 PRG:69B2 F0 03
jmp Sub_ED72 ; CPU:$E9B4 PRG:69B4 4C 72 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop502
; Global: Branch target inside Label: taken when E9B7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop502:
dec $03EF,x ; CPU:$E9B7 PRG:69B7 DE EF 03
bne NmiHandler_Loop503 ; CPU:$E9BA PRG:69BA D0 03
jmp Sub_F0E7 ; CPU:$E9BC PRG:69BC 4C E7 F0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop503
; Global: Branch target inside Label: taken when E9BF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop503:
jsr Sub_F0A3 ; CPU:$E9BF PRG:69BF 20 A3 F0
jsr Sub_F0B4 ; CPU:$E9C2 PRG:69C2 20 B4 F0
jsr Sub_E8EF ; CPU:$E9C5 PRG:69C5 20 EF E8
jsr Sub_EDAD ; CPU:$E9C8 PRG:69C8 20 AD ED
bcc NmiHandler_Loop504 ; CPU:$E9CB PRG:69CB 90 06
jsr Sub_E0B5 ; CPU:$E9CD PRG:69CD 20 B5 E0
jsr NmiHandler_Loop490 ; CPU:$E9D0 PRG:69D0 20 11 E9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop504
; Global: Branch target inside Label: taken when E9D3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop504:
jsr Sub_9B81 ; CPU:$E9D3 PRG:69D3 20 81 9B
bcc NmiHandler_Loop505 ; CPU:$E9D6 PRG:69D6 90 03
jmp Sub_EE79 ; CPU:$E9D8 PRG:69D8 4C 79 EE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop505
; Global: Branch target inside Label: taken when E9DB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop505:
jsr Sub_F01B ; CPU:$E9DB PRG:69DB 20 1B F0
bcc NmiHandler_Loop506 ; CPU:$E9DE PRG:69DE 90 03
jmp Sub_ED72 ; CPU:$E9E0 PRG:69E0 4C 72 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop506
; Global: Branch target inside Label: taken when E9E3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop506:
jsr Sub_9B03 ; CPU:$E9E3 PRG:69E3 20 03 9B
jsr Sub_EF44 ; CPU:$E9E6 PRG:69E6 20 44 EF
bcc NmiHandler_Loop507 ; CPU:$E9E9 PRG:69E9 90 03
jmp Sub_EF30 ; CPU:$E9EB PRG:69EB 4C 30 EF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop507
; Global: Branch target inside Label: taken when E9EE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop507:
jsr Sub_8358 ; CPU:$E9EE PRG:69EE 20 58 83
bcc NmiHandler_Loop508 ; CPU:$E9F1 PRG:69F1 90 03
jsr Sub_E8EF ; CPU:$E9F3 PRG:69F3 20 EF E8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop508
; Global: Branch target inside Label: taken when E9F6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop508:
jmp Sub_E9AC ; CPU:$E9F6 PRG:69F6 4C AC E9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero18
; Global: Branch target inside Label: taken when E9F9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero18:
jsr Sub_F1D3 ; CPU:$E9F9 PRG:69F9 20 D3 F1
jsr Sub_E8EF ; CPU:$E9FC PRG:69FC 20 EF E8
lda #$32 ; CPU:$E9FF PRG:69FF A9 32
sta $03EF,x ; CPU:$EA01 PRG:6A01 9D EF 03
jmp Sub_E9AC ; CPU:$EA04 PRG:6A04 4C AC E9
; -----------------------------------------------------------------------------
; Routine: Sub_EA07
; Global: Branch target inside Label: taken when EA07.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EA07:
jsr Sub_E2D7 ; CPU:$EA07 PRG:6A07 20 D7 E2
beq NmiHandler_Loop509 ; CPU:$EA0A PRG:6A0A F0 03
jmp Sub_ED72 ; CPU:$EA0C PRG:6A0C 4C 72 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop509
; Global: Branch target inside Label: taken when EA0F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop509:
dec $03EF,x ; CPU:$EA0F PRG:6A0F DE EF 03
beq NmiHandler_OnZero18 ; CPU:$EA12 PRG:6A12 F0 E5
jsr Sub_F0A3 ; CPU:$EA14 PRG:6A14 20 A3 F0
jsr Sub_9A3B ; CPU:$EA17 PRG:6A17 20 3B 9A
bcs NmiHandler_Loop511 ; CPU:$EA1A PRG:6A1A B0 0D
cmp #$00 ; CPU:$EA1C PRG:6A1C C9 00
beq NmiHandler_Loop510 ; CPU:$EA1E PRG:6A1E F0 06
jsr Sub_DBEE ; CPU:$EA20 PRG:6A20 20 EE DB
jmp Sub_ECF4 ; CPU:$EA23 PRG:6A23 4C F4 EC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop510
; Global: Branch target inside Label: taken when EA26.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop510:
jsr Sub_DFF1 ; CPU:$EA26 PRG:6A26 20 F1 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop511
; Global: Branch target inside Label: taken when EA29.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop511:
jsr Sub_9B81 ; CPU:$EA29 PRG:6A29 20 81 9B
bcc NmiHandler_Loop512 ; CPU:$EA2C PRG:6A2C 90 03
jmp Sub_EE79 ; CPU:$EA2E PRG:6A2E 4C 79 EE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop512
; Global: Branch target inside Label: taken when EA31.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop512:
jsr Sub_EDAD ; CPU:$EA31 PRG:6A31 20 AD ED
bcc NmiHandler_Loop513 ; CPU:$EA34 PRG:6A34 90 06
jsr Sub_E0B5 ; CPU:$EA36 PRG:6A36 20 B5 E0
jsr NmiHandler_Loop518 ; CPU:$EA39 PRG:6A39 20 85 EA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop513
; Global: Branch target inside Label: taken when EA3C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop513:
jsr Sub_F01B ; CPU:$EA3C PRG:6A3C 20 1B F0
bcc NmiHandler_Loop514 ; CPU:$EA3F PRG:6A3F 90 03
jmp Sub_ED72 ; CPU:$EA41 PRG:6A41 4C 72 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop514
; Global: Branch target inside Label: taken when EA44.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop514:
jsr Sub_9B03 ; CPU:$EA44 PRG:6A44 20 03 9B
jsr Sub_EF44 ; CPU:$EA47 PRG:6A47 20 44 EF
bcc NmiHandler_Loop515 ; CPU:$EA4A PRG:6A4A 90 03
jmp Sub_EF30 ; CPU:$EA4C PRG:6A4C 4C 30 EF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop515
; Global: Branch target inside Label: taken when EA4F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop515:
jsr Sub_8358 ; CPU:$EA4F PRG:6A4F 20 58 83
bcc NmiHandler_Loop516 ; CPU:$EA52 PRG:6A52 90 03
jsr Sub_EA63 ; CPU:$EA54 PRG:6A54 20 63 EA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop516
; Global: Branch target inside Label: taken when EA57.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop516:
jmp Sub_EA07 ; CPU:$EA57 PRG:6A57 4C 07 EA
; -----------------------------------------------------------------------------
; Routine: Sub_EA5A
; Global: Branch target inside Label: taken when EA5A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EA5A:
jsr Sub_F1D3 ; CPU:$EA5A PRG:6A5A 20 D3 F1
jsr Sub_EA63 ; CPU:$EA5D PRG:6A5D 20 63 EA
jmp NmiHandler_Loop511 ; CPU:$EA60 PRG:6A60 4C 29 EA
; -----------------------------------------------------------------------------
; Routine: Sub_EA63
; Global: Branch target inside Label: taken when EA63.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EA63:
lda $0336,x ; CPU:$EA63 PRG:6A63 BD 36 03
and #$04 ; CPU:$EA66 PRG:6A66 29 04
bne NmiHandler_Loop518 ; CPU:$EA68 PRG:6A68 D0 1B
jsr Sub_9B1F ; CPU:$EA6A PRG:6A6A 20 1F 9B
beq NmiHandler_Loop517 ; CPU:$EA6D PRG:6A6D F0 0B
lda #$9E ; CPU:$EA6F PRG:6A6F A9 9E
sta Zp73 ; CPU:$EA71 PRG:6A71 85 73
lda #$F2 ; CPU:$EA73 PRG:6A73 A9 F2
sta Zp74 ; CPU:$EA75 PRG:6A75 85 74
jmp Sub_8334 ; CPU:$EA77 PRG:6A77 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop517
; Global: Branch target inside Label: taken when EA7A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop517:
lda #$A4 ; CPU:$EA7A PRG:6A7A A9 A4
sta Zp73 ; CPU:$EA7C PRG:6A7C 85 73
lda #$F2 ; CPU:$EA7E PRG:6A7E A9 F2
sta Zp74 ; CPU:$EA80 PRG:6A80 85 74
jmp Sub_8334 ; CPU:$EA82 PRG:6A82 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop518
; Global: Branch target inside Label: taken when EA85.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop518:
jsr Sub_9B1F ; CPU:$EA85 PRG:6A85 20 1F 9B
beq NmiHandler_Loop519 ; CPU:$EA88 PRG:6A88 F0 0B
lda #$2C ; CPU:$EA8A PRG:6A8A A9 2C
sta Zp73 ; CPU:$EA8C PRG:6A8C 85 73
lda #$F3 ; CPU:$EA8E PRG:6A8E A9 F3
sta Zp74 ; CPU:$EA90 PRG:6A90 85 74
jmp Sub_8334 ; CPU:$EA92 PRG:6A92 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop519
; Global: Branch target inside Label: taken when EA95.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop519:
lda #$32 ; CPU:$EA95 PRG:6A95 A9 32
sta Zp73 ; CPU:$EA97 PRG:6A97 85 73
lda #$F3 ; CPU:$EA99 PRG:6A99 A9 F3
sta Zp74 ; CPU:$EA9B PRG:6A9B 85 74
jmp Sub_8334 ; CPU:$EA9D PRG:6A9D 4C 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_EAA0
; Global: Branch target inside Label: taken when EAA0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EAA0:
lda ZpB7,x ; CPU:$EAA0 PRG:6AA0 B5 B7
ora #$40 ; CPU:$EAA2 PRG:6AA2 09 40
sta ZpB7,x ; CPU:$EAA4 PRG:6AA4 95 B7
and #$08 ; CPU:$EAA6 PRG:6AA6 29 08
beq NmiHandler_Loop520 ; CPU:$EAA8 PRG:6AA8 F0 0B
lda #$7E ; CPU:$EAAA PRG:6AAA A9 7E
sta Zp73 ; CPU:$EAAC PRG:6AAC 85 73
lda #$F2 ; CPU:$EAAE PRG:6AAE A9 F2
sta Zp74 ; CPU:$EAB0 PRG:6AB0 85 74
jmp Sub_EABD ; CPU:$EAB2 PRG:6AB2 4C BD EA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop520
; Global: Branch target inside Label: taken when EAB5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop520:
lda #$82 ; CPU:$EAB5 PRG:6AB5 A9 82
sta Zp73 ; CPU:$EAB7 PRG:6AB7 85 73
lda #$F2 ; CPU:$EAB9 PRG:6AB9 A9 F2
sta Zp74 ; CPU:$EABB PRG:6ABB 85 74
; -----------------------------------------------------------------------------
; Routine: Sub_EABD
; Global: Branch target inside Label: taken when EABD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EABD:
jsr Sub_8334 ; CPU:$EABD PRG:6ABD 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear35
; Global: Branch target inside Label: taken when EAC0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear35:
jsr Sub_9B03 ; CPU:$EAC0 PRG:6AC0 20 03 9B
jsr Sub_8358 ; CPU:$EAC3 PRG:6AC3 20 58 83
bcc NmiHandler_OnCarryClear35 ; CPU:$EAC6 PRG:6AC6 90 F8
lda ZpC8,x ; CPU:$EAC8 PRG:6AC8 B5 C8
bpl NmiHandler_Loop522 ; CPU:$EACA PRG:6ACA 10 0F
lda $03E3,x ; CPU:$EACC PRG:6ACC BD E3 03
bmi NmiHandler_Loop521 ; CPU:$EACF PRG:6ACF 30 05
lda #$E0 ; CPU:$EAD1 PRG:6AD1 A9 E0
jmp Sub_EAE7 ; CPU:$EAD3 PRG:6AD3 4C E7 EA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop521
; Global: Branch target inside Label: taken when EAD6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop521:
lda #$C8 ; CPU:$EAD6 PRG:6AD6 A9 C8
jmp Sub_EAE7 ; CPU:$EAD8 PRG:6AD8 4C E7 EA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop522
; Global: Branch target inside Label: taken when EADB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop522:
lda $03E3,x ; CPU:$EADB PRG:6ADB BD E3 03
bmi NmiHandler_Loop523 ; CPU:$EADE PRG:6ADE 30 05
lda #$18 ; CPU:$EAE0 PRG:6AE0 A9 18
jmp Sub_EAE7 ; CPU:$EAE2 PRG:6AE2 4C E7 EA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop523
; Global: Branch target inside Label: taken when EAE5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop523:
lda #$30 ; CPU:$EAE5 PRG:6AE5 A9 30
; -----------------------------------------------------------------------------
; Routine: Sub_EAE7
; Global: Branch target inside Label: taken when EAE7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EAE7:
sta ZpC8,x ; CPU:$EAE7 PRG:6AE7 95 C8
lda #$01 ; CPU:$EAE9 PRG:6AE9 A9 01
sta $0325,x ; CPU:$EAEB PRG:6AEB 9D 25 03
; -----------------------------------------------------------------------------
; Routine: Sub_EAEE
; Global: Branch target inside Label: taken when EAEE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EAEE:
lda $0673 ; CPU:$EAEE PRG:6AEE AD 73 06
and #$01 ; CPU:$EAF1 PRG:6AF1 29 01
bne NmiHandler_Loop527 ; CPU:$EAF3 PRG:6AF3 D0 47
jsr Sub_DFF1 ; CPU:$EAF5 PRG:6AF5 20 F1 DF
lda $03E3,x ; CPU:$EAF8 PRG:6AF8 BD E3 03
bmi NmiHandler_Loop525 ; CPU:$EAFB PRG:6AFB 30 21
clc ; CPU:$EAFD PRG:6AFD 18
adc $039D,x ; CPU:$EAFE PRG:6AFE 7D 9D 03
sta $039D,x ; CPU:$EB01 PRG:6B01 9D 9D 03
lda $03AE,x ; CPU:$EB04 PRG:6B04 BD AE 03
adc #$00 ; CPU:$EB07 PRG:6B07 69 00
sta $03AE,x ; CPU:$EB09 PRG:6B09 9D AE 03
lda ZpC8,x ; CPU:$EB0C PRG:6B0C B5 C8
bmi NmiHandler_Loop524 ; CPU:$EB0E PRG:6B0E 30 07
cmp #$30 ; CPU:$EB10 PRG:6B10 C9 30
beq NmiHandler_Loop529 ; CPU:$EB12 PRG:6B12 F0 3B
jmp NmiHandler_Loop527 ; CPU:$EB14 PRG:6B14 4C 3C EB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop524
; Global: Branch target inside Label: taken when EB17.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop524:
cmp #$C8 ; CPU:$EB17 PRG:6B17 C9 C8
beq NmiHandler_Loop529 ; CPU:$EB19 PRG:6B19 F0 34
jmp NmiHandler_Loop527 ; CPU:$EB1B PRG:6B1B 4C 3C EB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop525
; Global: Branch target inside Label: taken when EB1E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop525:
clc ; CPU:$EB1E PRG:6B1E 18
adc $039D,x ; CPU:$EB1F PRG:6B1F 7D 9D 03
sta $039D,x ; CPU:$EB22 PRG:6B22 9D 9D 03
lda $03AE,x ; CPU:$EB25 PRG:6B25 BD AE 03
adc #$FF ; CPU:$EB28 PRG:6B28 69 FF
sta $03AE,x ; CPU:$EB2A PRG:6B2A 9D AE 03
lda ZpC8,x ; CPU:$EB2D PRG:6B2D B5 C8
bmi NmiHandler_Loop526 ; CPU:$EB2F PRG:6B2F 30 07
cmp #$18 ; CPU:$EB31 PRG:6B31 C9 18
beq NmiHandler_Loop529 ; CPU:$EB33 PRG:6B33 F0 1A
jmp NmiHandler_Loop527 ; CPU:$EB35 PRG:6B35 4C 3C EB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop526
; Global: Branch target inside Label: taken when EB38.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop526:
cmp #$E0 ; CPU:$EB38 PRG:6B38 C9 E0
beq NmiHandler_Loop529 ; CPU:$EB3A PRG:6B3A F0 13
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop527
; Global: Branch target inside Label: taken when EB3C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop527:
jsr Sub_9B03 ; CPU:$EB3C PRG:6B3C 20 03 9B
lda $0303,x ; CPU:$EB3F PRG:6B3F BD 03 03
cmp #$F0 ; CPU:$EB42 PRG:6B42 C9 F0
bcc NmiHandler_Loop528 ; CPU:$EB44 PRG:6B44 90 03
jmp NmiHandler_Loop565 ; CPU:$EB46 PRG:6B46 4C AA ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop528
; Global: Branch target inside Label: taken when EB49.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop528:
jsr Sub_82A3 ; CPU:$EB49 PRG:6B49 20 A3 82
jmp Sub_EAEE ; CPU:$EB4C PRG:6B4C 4C EE EA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop529
; Global: Branch target inside Label: taken when EB4F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop529:
jsr Sub_9B1F ; CPU:$EB4F PRG:6B4F 20 1F 9B
beq NmiHandler_Loop530 ; CPU:$EB52 PRG:6B52 F0 0B
lda #$7E ; CPU:$EB54 PRG:6B54 A9 7E
sta Zp73 ; CPU:$EB56 PRG:6B56 85 73
lda #$F2 ; CPU:$EB58 PRG:6B58 A9 F2
sta Zp74 ; CPU:$EB5A PRG:6B5A 85 74
jmp Sub_EB67 ; CPU:$EB5C PRG:6B5C 4C 67 EB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop530
; Global: Branch target inside Label: taken when EB5F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop530:
lda #$82 ; CPU:$EB5F PRG:6B5F A9 82
sta Zp73 ; CPU:$EB61 PRG:6B61 85 73
lda #$F2 ; CPU:$EB63 PRG:6B63 A9 F2
sta Zp74 ; CPU:$EB65 PRG:6B65 85 74
; -----------------------------------------------------------------------------
; Routine: Sub_EB67
; Global: Branch target inside Label: taken when EB67.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EB67:
jsr Sub_8334 ; CPU:$EB67 PRG:6B67 20 34 83
lda #$00 ; CPU:$EB6A PRG:6B6A A9 00
sta $0325,x ; CPU:$EB6C PRG:6B6C 9D 25 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear36
; Global: Branch target inside Label: taken when EB6F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear36:
jsr Sub_9848 ; CPU:$EB6F PRG:6B6F 20 48 98
bcs NmiHandler_Loop531 ; CPU:$EB72 PRG:6B72 B0 03
jsr Sub_DFF1 ; CPU:$EB74 PRG:6B74 20 F1 DF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop531
; Global: Branch target inside Label: taken when EB77.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop531:
jsr Sub_9B03 ; CPU:$EB77 PRG:6B77 20 03 9B
jsr Sub_8358 ; CPU:$EB7A PRG:6B7A 20 58 83
bcc NmiHandler_OnCarryClear36 ; CPU:$EB7D PRG:6B7D 90 F0
lda ZpB7,x ; CPU:$EB7F PRG:6B7F B5 B7
and #$BF ; CPU:$EB81 PRG:6B81 29 BF
sta ZpB7,x ; CPU:$EB83 PRG:6B83 95 B7
lda $03E3,x ; CPU:$EB85 PRG:6B85 BD E3 03
bmi NmiHandler_Loop532 ; CPU:$EB88 PRG:6B88 30 05
inc ZpE5,x ; CPU:$EB8A PRG:6B8A F6 E5
jmp NmiHandler_OnZero17 ; CPU:$EB8C PRG:6B8C 4C D2 E8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop532
; Global: Branch target inside Label: taken when EB8F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop532:
dec ZpE5,x ; CPU:$EB8F PRG:6B8F D6 E5
jmp NmiHandler_OnZero17 ; CPU:$EB91 PRG:6B91 4C D2 E8
; -----------------------------------------------------------------------------
; Routine: Sub_EB94
; Global: Branch target inside Label: taken when EB94.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EB94:
jsr Sub_E2D7 ; CPU:$EB94 PRG:6B94 20 D7 E2
beq NmiHandler_Loop533 ; CPU:$EB97 PRG:6B97 F0 03
jmp Sub_ED72 ; CPU:$EB99 PRG:6B99 4C 72 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop533
; Global: Branch target inside Label: taken when EB9C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop533:
dec $03EF,x ; CPU:$EB9C PRG:6B9C DE EF 03
bne NmiHandler_Loop534 ; CPU:$EB9F PRG:6B9F D0 03
jmp NmiHandler_OnZero17 ; CPU:$EBA1 PRG:6BA1 4C D2 E8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop534
; Global: Branch target inside Label: taken when EBA4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop534:
jsr Sub_ED24 ; CPU:$EBA4 PRG:6BA4 20 24 ED
jsr Sub_EDAD ; CPU:$EBA7 PRG:6BA7 20 AD ED
bcc NmiHandler_Loop536 ; CPU:$EBAA PRG:6BAA 90 1E
jsr Sub_E0B5 ; CPU:$EBAC PRG:6BAC 20 B5 E0
jsr Sub_9B1F ; CPU:$EBAF PRG:6BAF 20 1F 9B
beq NmiHandler_Loop535 ; CPU:$EBB2 PRG:6BB2 F0 0B
lda #$2C ; CPU:$EBB4 PRG:6BB4 A9 2C
sta Zp73 ; CPU:$EBB6 PRG:6BB6 85 73
lda #$F3 ; CPU:$EBB8 PRG:6BB8 A9 F3
sta Zp74 ; CPU:$EBBA PRG:6BBA 85 74
jmp Sub_EBC7 ; CPU:$EBBC PRG:6BBC 4C C7 EB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop535
; Global: Branch target inside Label: taken when EBBF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop535:
lda #$32 ; CPU:$EBBF PRG:6BBF A9 32
sta Zp73 ; CPU:$EBC1 PRG:6BC1 85 73
lda #$F3 ; CPU:$EBC3 PRG:6BC3 A9 F3
sta Zp74 ; CPU:$EBC5 PRG:6BC5 85 74
; -----------------------------------------------------------------------------
; Routine: Sub_EBC7
; Global: Branch target inside Label: taken when EBC7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EBC7:
jsr Sub_8334 ; CPU:$EBC7 PRG:6BC7 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop536
; Global: Branch target inside Label: taken when EBCA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop536:
jsr Sub_F01B ; CPU:$EBCA PRG:6BCA 20 1B F0
bcc NmiHandler_Loop537 ; CPU:$EBCD PRG:6BCD 90 03
jmp Sub_ED72 ; CPU:$EBCF PRG:6BCF 4C 72 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop537
; Global: Branch target inside Label: taken when EBD2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop537:
jsr Sub_9B03 ; CPU:$EBD2 PRG:6BD2 20 03 9B
jsr Sub_99E7 ; CPU:$EBD5 PRG:6BD5 20 E7 99
jsr Sub_EF44 ; CPU:$EBD8 PRG:6BD8 20 44 EF
bcc NmiHandler_Loop538 ; CPU:$EBDB PRG:6BDB 90 03
jmp NmiHandler_Loop565 ; CPU:$EBDD PRG:6BDD 4C AA ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop538
; Global: Branch target inside Label: taken when EBE0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop538:
jsr Sub_8358 ; CPU:$EBE0 PRG:6BE0 20 58 83
bcc NmiHandler_Loop539 ; CPU:$EBE3 PRG:6BE3 90 03
jsr Sub_EA63 ; CPU:$EBE5 PRG:6BE5 20 63 EA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop539
; Global: Branch target inside Label: taken when EBE8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop539:
dec $03BA,x ; CPU:$EBE8 PRG:6BE8 DE BA 03
beq NmiHandler_Loop540 ; CPU:$EBEB PRG:6BEB F0 03
jmp Sub_EB94 ; CPU:$EBED PRG:6BED 4C 94 EB
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop540
; Global: Branch target inside Label: taken when EBF0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop540:
jmp Sub_EE3D ; CPU:$EBF0 PRG:6BF0 4C 3D EE
; ---- data $EBF3-$EBFA (8 bytes) ----
.byte $A9, $1E, $9D, $BA, $03, $4C, $94, $EB ; CPU:$EBF3 PRG:6BF3 A9 1E 9D BA 03 4C 94 EB
; -----------------------------------------------------------------------------
; Routine: Sub_EBFB
; Global: Branch target inside Label: taken when EBFB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EBFB:
jsr Sub_E2D7 ; CPU:$EBFB PRG:6BFB 20 D7 E2
beq NmiHandler_Loop541 ; CPU:$EBFE PRG:6BFE F0 03
jmp Sub_ED72 ; CPU:$EC00 PRG:6C00 4C 72 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop541
; Global: Branch target inside Label: taken when EC03.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop541:
dec $03EF,x ; CPU:$EC03 PRG:6C03 DE EF 03
bne NmiHandler_Loop543 ; CPU:$EC06 PRG:6C06 D0 0C
lda ZpB7,x ; CPU:$EC08 PRG:6C08 B5 B7
and #$14 ; CPU:$EC0A PRG:6C0A 29 14
beq NmiHandler_Loop542 ; CPU:$EC0C PRG:6C0C F0 03
jmp NmiHandler_OnZero18 ; CPU:$EC0E PRG:6C0E 4C F9 E9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop542
; Global: Branch target inside Label: taken when EC11.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop542:
jmp NmiHandler_OnZero17 ; CPU:$EC11 PRG:6C11 4C D2 E8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop543
; Global: Branch target inside Label: taken when EC14.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop543:
jsr Sub_F0B4 ; CPU:$EC14 PRG:6C14 20 B4 F0
jsr Sub_EC94 ; CPU:$EC17 PRG:6C17 20 94 EC
jsr Sub_EDAD ; CPU:$EC1A PRG:6C1A 20 AD ED
bcc NmiHandler_Loop546 ; CPU:$EC1D PRG:6C1D 90 2B
lda $0336,x ; CPU:$EC1F PRG:6C1F BD 36 03
and #$02 ; CPU:$EC22 PRG:6C22 29 02
bne NmiHandler_Loop544 ; CPU:$EC24 PRG:6C24 D0 06
jsr Sub_E0B9 ; CPU:$EC26 PRG:6C26 20 B9 E0
jmp Sub_EC2F ; CPU:$EC29 PRG:6C29 4C 2F EC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop544
; Global: Branch target inside Label: taken when EC2C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop544:
jsr Sub_E0B1 ; CPU:$EC2C PRG:6C2C 20 B1 E0
; -----------------------------------------------------------------------------
; Routine: Sub_EC2F
; Global: Branch target inside Label: taken when EC2F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EC2F:
jsr Sub_9B1F ; CPU:$EC2F PRG:6C2F 20 1F 9B
beq NmiHandler_Loop545 ; CPU:$EC32 PRG:6C32 F0 0B
lda #$B6 ; CPU:$EC34 PRG:6C34 A9 B6
sta Zp73 ; CPU:$EC36 PRG:6C36 85 73
lda #$F2 ; CPU:$EC38 PRG:6C38 A9 F2
sta Zp74 ; CPU:$EC3A PRG:6C3A 85 74
jmp Sub_EC47 ; CPU:$EC3C PRG:6C3C 4C 47 EC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop545
; Global: Branch target inside Label: taken when EC3F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop545:
lda #$BC ; CPU:$EC3F PRG:6C3F A9 BC
sta Zp73 ; CPU:$EC41 PRG:6C41 85 73
lda #$F2 ; CPU:$EC43 PRG:6C43 A9 F2
sta Zp74 ; CPU:$EC45 PRG:6C45 85 74
; -----------------------------------------------------------------------------
; Routine: Sub_EC47
; Global: Branch target inside Label: taken when EC47.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EC47:
jsr Sub_8334 ; CPU:$EC47 PRG:6C47 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop546
; Global: Branch target inside Label: taken when EC4A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop546:
lda ZpB7,x ; CPU:$EC4A PRG:6C4A B5 B7
and #$10 ; CPU:$EC4C PRG:6C4C 29 10
beq NmiHandler_Loop547 ; CPU:$EC4E PRG:6C4E F0 08
jsr Sub_9B81 ; CPU:$EC50 PRG:6C50 20 81 9B
bcc NmiHandler_Loop549 ; CPU:$EC53 PRG:6C53 90 15
jmp Sub_EE79 ; CPU:$EC55 PRG:6C55 4C 79 EE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop547
; Global: Branch target inside Label: taken when EC58.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop547:
lda ZpB7,x ; CPU:$EC58 PRG:6C58 B5 B7
and #$14 ; CPU:$EC5A PRG:6C5A 29 14
beq NmiHandler_Loop548 ; CPU:$EC5C PRG:6C5C F0 04
and #$10 ; CPU:$EC5E PRG:6C5E 29 10
beq NmiHandler_Loop549 ; CPU:$EC60 PRG:6C60 F0 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop548
; Global: Branch target inside Label: taken when EC62.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop548:
jsr Sub_9BBB ; CPU:$EC62 PRG:6C62 20 BB 9B
bcc NmiHandler_Loop549 ; CPU:$EC65 PRG:6C65 90 03
jmp Sub_EE79 ; CPU:$EC67 PRG:6C67 4C 79 EE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop549
; Global: Branch target inside Label: taken when EC6A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop549:
jsr Sub_F022 ; CPU:$EC6A PRG:6C6A 20 22 F0
bcc NmiHandler_Loop550 ; CPU:$EC6D PRG:6C6D 90 03
jmp Sub_ED72 ; CPU:$EC6F PRG:6C6F 4C 72 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop550
; Global: Branch target inside Label: taken when EC72.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop550:
jsr Sub_9B03 ; CPU:$EC72 PRG:6C72 20 03 9B
jsr Sub_99E7 ; CPU:$EC75 PRG:6C75 20 E7 99
jsr Sub_EF44 ; CPU:$EC78 PRG:6C78 20 44 EF
bcc NmiHandler_Loop551 ; CPU:$EC7B PRG:6C7B 90 03
jmp NmiHandler_Loop565 ; CPU:$EC7D PRG:6C7D 4C AA ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop551
; Global: Branch target inside Label: taken when EC80.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop551:
jsr Sub_8358 ; CPU:$EC80 PRG:6C80 20 58 83
bcc NmiHandler_Loop552 ; CPU:$EC83 PRG:6C83 90 03
jsr Sub_EC94 ; CPU:$EC85 PRG:6C85 20 94 EC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop552
; Global: Branch target inside Label: taken when EC88.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop552:
jmp Sub_EBFB ; CPU:$EC88 PRG:6C88 4C FB EB
; -----------------------------------------------------------------------------
; Routine: Sub_EC8B
; Global: Branch target inside Label: taken when EC8B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EC8B:
jsr Sub_9C7D ; CPU:$EC8B PRG:6C8B 20 7D 9C
jsr Sub_EC94 ; CPU:$EC8E PRG:6C8E 20 94 EC
jmp Sub_EBFB ; CPU:$EC91 PRG:6C91 4C FB EB
; -----------------------------------------------------------------------------
; Routine: Sub_EC94
; Global: Branch target inside Label: taken when EC94.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EC94:
jsr Sub_9B1F ; CPU:$EC94 PRG:6C94 20 1F 9B
beq NmiHandler_Loop554 ; CPU:$EC97 PRG:6C97 F0 1D
lda $0336,x ; CPU:$EC99 PRG:6C99 BD 36 03
and #$02 ; CPU:$EC9C PRG:6C9C 29 02
bne NmiHandler_Loop553 ; CPU:$EC9E PRG:6C9E D0 0B
lda #$86 ; CPU:$ECA0 PRG:6CA0 A9 86
sta Zp73 ; CPU:$ECA2 PRG:6CA2 85 73
lda #$F2 ; CPU:$ECA4 PRG:6CA4 A9 F2
sta Zp74 ; CPU:$ECA6 PRG:6CA6 85 74
jmp Sub_8334 ; CPU:$ECA8 PRG:6CA8 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop553
; Global: Branch target inside Label: taken when ECAB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop553:
lda #$FC ; CPU:$ECAB PRG:6CAB A9 FC
sta Zp73 ; CPU:$ECAD PRG:6CAD 85 73
lda #$F2 ; CPU:$ECAF PRG:6CAF A9 F2
sta Zp74 ; CPU:$ECB1 PRG:6CB1 85 74
jmp Sub_8334 ; CPU:$ECB3 PRG:6CB3 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop554
; Global: Branch target inside Label: taken when ECB6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop554:
lda $0336,x ; CPU:$ECB6 PRG:6CB6 BD 36 03
and #$02 ; CPU:$ECB9 PRG:6CB9 29 02
bne NmiHandler_Loop555 ; CPU:$ECBB PRG:6CBB D0 0B
lda #$8A ; CPU:$ECBD PRG:6CBD A9 8A
sta Zp73 ; CPU:$ECBF PRG:6CBF 85 73
lda #$F2 ; CPU:$ECC1 PRG:6CC1 A9 F2
sta Zp74 ; CPU:$ECC3 PRG:6CC3 85 74
jmp Sub_8334 ; CPU:$ECC5 PRG:6CC5 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop555
; Global: Branch target inside Label: taken when ECC8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop555:
lda #$02 ; CPU:$ECC8 PRG:6CC8 A9 02
sta Zp73 ; CPU:$ECCA PRG:6CCA 85 73
lda #$F3 ; CPU:$ECCC PRG:6CCC A9 F3
sta Zp74 ; CPU:$ECCE PRG:6CCE 85 74
jmp Sub_8334 ; CPU:$ECD0 PRG:6CD0 4C 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_ECD3
; Global: Branch target inside Label: taken when ECD3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_ECD3:
jsr Sub_9B1F ; CPU:$ECD3 PRG:6CD3 20 1F 9B
beq NmiHandler_Loop556 ; CPU:$ECD6 PRG:6CD6 F0 0B
lda #$9A ; CPU:$ECD8 PRG:6CD8 A9 9A
sta Zp73 ; CPU:$ECDA PRG:6CDA 85 73
lda #$F2 ; CPU:$ECDC PRG:6CDC A9 F2
sta Zp74 ; CPU:$ECDE PRG:6CDE 85 74
jmp Sub_8334 ; CPU:$ECE0 PRG:6CE0 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop556
; Global: Branch target inside Label: taken when ECE3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop556:
lda #$96 ; CPU:$ECE3 PRG:6CE3 A9 96
sta Zp73 ; CPU:$ECE5 PRG:6CE5 85 73
lda #$F2 ; CPU:$ECE7 PRG:6CE7 A9 F2
sta Zp74 ; CPU:$ECE9 PRG:6CE9 85 74
jmp Sub_8334 ; CPU:$ECEB PRG:6CEB 4C 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_ECEE
; Global: Branch target inside Label: taken when ECEE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_ECEE:
jsr Sub_ECFA ; CPU:$ECEE PRG:6CEE 20 FA EC
jmp NmiHandler_OnZero18 ; CPU:$ECF1 PRG:6CF1 4C F9 E9
; -----------------------------------------------------------------------------
; Routine: Sub_ECF4
; Global: Branch target inside Label: taken when ECF4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_ECF4:
jsr Sub_ECFA ; CPU:$ECF4 PRG:6CF4 20 FA EC
jmp NmiHandler_OnZero17 ; CPU:$ECF7 PRG:6CF7 4C D2 E8
; -----------------------------------------------------------------------------
; Routine: Sub_ECFA
; Global: Branch target inside Label: taken when ECFA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_ECFA:
lda #$04 ; CPU:$ECFA PRG:6CFA A9 04
sta $0390,x ; CPU:$ECFC PRG:6CFC 9D 90 03
jsr Sub_ECD3 ; CPU:$ECFF PRG:6CFF 20 D3 EC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear37
; Global: Branch target inside Label: taken when ED02.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear37:
jsr Sub_E2D7 ; CPU:$ED02 PRG:6D02 20 D7 E2
beq NmiHandler_Loop557 ; CPU:$ED05 PRG:6D05 F0 03
jmp Sub_ED72 ; CPU:$ED07 PRG:6D07 4C 72 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop557
; Global: Branch target inside Label: taken when ED0A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop557:
jsr Sub_DFF1 ; CPU:$ED0A PRG:6D0A 20 F1 DF
ldy $0390,x ; CPU:$ED0D PRG:6D0D BC 90 03
lda $F27A,y ; CPU:$ED10 PRG:6D10 B9 7A F2
clc ; CPU:$ED13 PRG:6D13 18
adc $0303,x ; CPU:$ED14 PRG:6D14 7D 03 03
dec $0390,x ; CPU:$ED17 PRG:6D17 DE 90 03
beq NmiHandler_Loop558 ; CPU:$ED1A PRG:6D1A F0 05
jsr Sub_8358 ; CPU:$ED1C PRG:6D1C 20 58 83
bcc NmiHandler_OnCarryClear37 ; CPU:$ED1F PRG:6D1F 90 E1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop558
; Global: Branch target inside Label: taken when ED21.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop558:
jmp Sub_EE2B ; CPU:$ED21 PRG:6D21 4C 2B EE
; -----------------------------------------------------------------------------
; Routine: Sub_ED24
; Global: Branch target inside Label: taken when ED24.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_ED24:
jsr Sub_97FE ; CPU:$ED24 PRG:6D24 20 FE 97
bcc NmiHandler_Loop562 ; CPU:$ED27 PRG:6D27 90 43
jsr Sub_9891 ; CPU:$ED29 PRG:6D29 20 91 98
bcc NmiHandler_Loop561 ; CPU:$ED2C PRG:6D2C 90 2D
sta ZpA1 ; CPU:$ED2E PRG:6D2E 85 A1
cmp #$00 ; CPU:$ED30 PRG:6D30 C9 00
beq NmiHandler_Loop559 ; CPU:$ED32 PRG:6D32 F0 08
lda ZpF7 ; CPU:$ED34 PRG:6D34 A5 F7
lsr a ; CPU:$ED36 PRG:6D36 4A
lsr a ; CPU:$ED37 PRG:6D37 4A
cmp #$0A ; CPU:$ED38 PRG:6D38 C9 0A
bcc NmiHandler_Loop563 ; CPU:$ED3A PRG:6D3A 90 33
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop559
; Global: Branch target inside Label: taken when ED3C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop559:
lda ZpEC ; CPU:$ED3C PRG:6D3C A5 EC
beq NmiHandler_Loop563 ; CPU:$ED3E PRG:6D3E F0 2F
lda ZpA1 ; CPU:$ED40 PRG:6D40 A5 A1
jsr Sub_DA1A ; CPU:$ED42 PRG:6D42 20 1A DA
lda ZpB7,x ; CPU:$ED45 PRG:6D45 B5 B7
and #$10 ; CPU:$ED47 PRG:6D47 29 10
bne NmiHandler_Loop560 ; CPU:$ED49 PRG:6D49 D0 0B
ldy $03D7,x ; CPU:$ED4B PRG:6D4B BC D7 03
lda $04B1,y ; CPU:$ED4E PRG:6D4E B9 B1 04
ora #$80 ; CPU:$ED51 PRG:6D51 09 80
sta $04B1,y ; CPU:$ED53 PRG:6D53 99 B1 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop560
; Global: Branch target inside Label: taken when ED56.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop560:
pla ; CPU:$ED56 PRG:6D56 68
pla ; CPU:$ED57 PRG:6D57 68
jmp Sub_ECEE ; CPU:$ED58 PRG:6D58 4C EE EC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop561
; Global: Branch target inside Label: taken when ED5B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop561:
cmp #$00 ; CPU:$ED5B PRG:6D5B C9 00
bne NmiHandler_Loop563 ; CPU:$ED5D PRG:6D5D D0 10
ldy $03D7,x ; CPU:$ED5F PRG:6D5F BC D7 03
lda ZpE5,x ; CPU:$ED62 PRG:6D62 B5 E5
cmp $04CB,y ; CPU:$ED64 PRG:6D64 D9 CB 04
beq NmiHandler_Loop562 ; CPU:$ED67 PRG:6D67 F0 03
ldy #$00 ; CPU:$ED69 PRG:6D69 A0 00
rts ; CPU:$ED6B PRG:6D6B 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop562
; Global: Branch target inside Label: taken when ED6C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop562:
ldy #$01 ; CPU:$ED6C PRG:6D6C A0 01
rts ; CPU:$ED6E PRG:6D6E 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop563
; Global: Branch target inside Label: taken when ED6F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop563:
ldy #$02 ; CPU:$ED6F PRG:6D6F A0 02
rts ; CPU:$ED71 PRG:6D71 60
; -----------------------------------------------------------------------------
; Routine: Sub_ED72
; Global: Branch target inside Label: taken when ED72.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_ED72:
lda ZpB7,x ; CPU:$ED72 PRG:6D72 B5 B7
ora #$01 ; CPU:$ED74 PRG:6D74 09 01
sta ZpB7,x ; CPU:$ED76 PRG:6D76 95 B7
lda #$25 ; CPU:$ED78 PRG:6D78 A9 25
jsr Sub_F6DB ; CPU:$ED7A PRG:6D7A 20 DB F6
jsr Sub_9B1F ; CPU:$ED7D PRG:6D7D 20 1F 9B
beq NmiHandler_Loop564 ; CPU:$ED80 PRG:6D80 F0 0B
lda #$1A ; CPU:$ED82 PRG:6D82 A9 1A
sta Zp73 ; CPU:$ED84 PRG:6D84 85 73
lda #$F3 ; CPU:$ED86 PRG:6D86 A9 F3
sta Zp74 ; CPU:$ED88 PRG:6D88 85 74
jmp Sub_ED95 ; CPU:$ED8A PRG:6D8A 4C 95 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop564
; Global: Branch target inside Label: taken when ED8D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop564:
lda #$08 ; CPU:$ED8D PRG:6D8D A9 08
sta Zp73 ; CPU:$ED8F PRG:6D8F 85 73
lda #$F3 ; CPU:$ED91 PRG:6D91 A9 F3
sta Zp74 ; CPU:$ED93 PRG:6D93 85 74
; -----------------------------------------------------------------------------
; Routine: Sub_ED95
; Global: Branch target inside Label: taken when ED95.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_ED95:
jsr Sub_8334 ; CPU:$ED95 PRG:6D95 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear38
; Global: Branch target inside Label: taken when ED98.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear38:
jsr Sub_9B03 ; CPU:$ED98 PRG:6D98 20 03 9B
jsr Sub_EF44 ; CPU:$ED9B PRG:6D9B 20 44 EF
bcs NmiHandler_Loop565 ; CPU:$ED9E PRG:6D9E B0 0A
jsr Sub_8358 ; CPU:$EDA0 PRG:6DA0 20 58 83
bcc NmiHandler_OnCarryClear38 ; CPU:$EDA3 PRG:6DA3 90 F3
lda #$26 ; CPU:$EDA5 PRG:6DA5 A9 26
jsr Sub_F6DB ; CPU:$EDA7 PRG:6DA7 20 DB F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop565
; Global: Branch target inside Label: taken when EDAA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop565:
jmp Sub_EF30 ; CPU:$EDAA PRG:6DAA 4C 30 EF
; -----------------------------------------------------------------------------
; Routine: Sub_EDAD
; Global: Branch target inside Label: taken when EDAD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EDAD:
lda $0336,x ; CPU:$EDAD PRG:6DAD BD 36 03
and #$04 ; CPU:$EDB0 PRG:6DB0 29 04
bne NmiHandler_Loop568 ; CPU:$EDB2 PRG:6DB2 D0 24
lda $0390,x ; CPU:$EDB4 PRG:6DB4 BD 90 03
beq NmiHandler_Loop566 ; CPU:$EDB7 PRG:6DB7 F0 05
dec $0390,x ; CPU:$EDB9 PRG:6DB9 DE 90 03
clc ; CPU:$EDBC PRG:6DBC 18
rts ; CPU:$EDBD PRG:6DBD 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop566
; Global: Branch target inside Label: taken when EDBE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop566:
lda ZpEC ; CPU:$EDBE PRG:6DBE A5 EC
cmp ZpE5,x ; CPU:$EDC0 PRG:6DC0 D5 E5
beq NmiHandler_Loop567 ; CPU:$EDC2 PRG:6DC2 F0 07
lda #$00 ; CPU:$EDC4 PRG:6DC4 A9 00
sta $0390,x ; CPU:$EDC6 PRG:6DC6 9D 90 03
clc ; CPU:$EDC9 PRG:6DC9 18
rts ; CPU:$EDCA PRG:6DCA 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop567
; Global: Branch target inside Label: taken when EDCB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop567:
lda $0336,x ; CPU:$EDCB PRG:6DCB BD 36 03
ora #$04 ; CPU:$EDCE PRG:6DCE 09 04
sta $0336,x ; CPU:$EDD0 PRG:6DD0 9D 36 03
jsr Sub_EE2B ; CPU:$EDD3 PRG:6DD3 20 2B EE
clc ; CPU:$EDD6 PRG:6DD6 18
rts ; CPU:$EDD7 PRG:6DD7 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop568
; Global: Branch target inside Label: taken when EDD8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop568:
lda $0390,x ; CPU:$EDD8 PRG:6DD8 BD 90 03
beq NmiHandler_Loop569 ; CPU:$EDDB PRG:6DDB F0 05
dec $0390,x ; CPU:$EDDD PRG:6DDD DE 90 03
clc ; CPU:$EDE0 PRG:6DE0 18
rts ; CPU:$EDE1 PRG:6DE1 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop569
; Global: Branch target inside Label: taken when EDE2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop569:
ldy #$00 ; CPU:$EDE2 PRG:6DE2 A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero91
; Global: Branch target inside Label: taken when EDE4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero91:
lda a:ZpB7,y ; CPU:$EDE4 PRG:6DE4 B9 B7 00
beq NmiHandler_Loop570 ; CPU:$EDE7 PRG:6DE7 F0 07
iny ; CPU:$EDE9 PRG:6DE9 C8
cpy #$03 ; CPU:$EDEA PRG:6DEA C0 03
bne NmiHandler_OnNonzero91 ; CPU:$EDEC PRG:6DEC D0 F6
clc ; CPU:$EDEE PRG:6DEE 18
rts ; CPU:$EDEF PRG:6DEF 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop570
; Global: Branch target inside Label: taken when EDF0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop570:
lda #$80 ; CPU:$EDF0 PRG:6DF0 A9 80
sta a:ZpB7,y ; CPU:$EDF2 PRG:6DF2 99 B7 00
lda ZpF7 ; CPU:$EDF5 PRG:6DF5 A5 F7
lsr a ; CPU:$EDF7 PRG:6DF7 4A
lsr a ; CPU:$EDF8 PRG:6DF8 4A
lsr a ; CPU:$EDF9 PRG:6DF9 4A
lsr a ; CPU:$EDFA PRG:6DFA 4A
sta Zp6F ; CPU:$EDFB PRG:6DFB 85 6F
jsr Sub_9B1F ; CPU:$EDFD PRG:6DFD 20 1F 9B
bne NmiHandler_Loop571 ; CPU:$EE00 PRG:6E00 D0 0E
lda #$FA ; CPU:$EE02 PRG:6E02 A9 FA
sec ; CPU:$EE04 PRG:6E04 38
sbc Zp6F ; CPU:$EE05 PRG:6E05 E5 6F
cmp #$F8 ; CPU:$EE07 PRG:6E07 C9 F8
bcs NmiHandler_Loop572 ; CPU:$EE09 PRG:6E09 B0 10
lda #$F8 ; CPU:$EE0B PRG:6E0B A9 F8
jmp NmiHandler_Loop572 ; CPU:$EE0D PRG:6E0D 4C 1B EE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop571
; Global: Branch target inside Label: taken when EE10.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop571:
lda #$06 ; CPU:$EE10 PRG:6E10 A9 06
clc ; CPU:$EE12 PRG:6E12 18
adc Zp6F ; CPU:$EE13 PRG:6E13 65 6F
cmp #$08 ; CPU:$EE15 PRG:6E15 C9 08
bcc NmiHandler_Loop572 ; CPU:$EE17 PRG:6E17 90 02
lda #$08 ; CPU:$EE19 PRG:6E19 A9 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop572
; Global: Branch target inside Label: taken when EE1B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop572:
sta a:ZpD9,y ; CPU:$EE1B PRG:6E1B 99 D9 00
lda $0336,x ; CPU:$EE1E PRG:6E1E BD 36 03
and #$FB ; CPU:$EE21 PRG:6E21 29 FB
sta $0336,x ; CPU:$EE23 PRG:6E23 9D 36 03
jsr Sub_EE2B ; CPU:$EE26 PRG:6E26 20 2B EE
sec ; CPU:$EE29 PRG:6E29 38
rts ; CPU:$EE2A PRG:6E2A 60
; -----------------------------------------------------------------------------
; Routine: Sub_EE2B
; Global: Branch target inside Label: taken when EE2B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EE2B:
lda ZpF7 ; CPU:$EE2B PRG:6E2B A5 F7
lsr a ; CPU:$EE2D PRG:6E2D 4A
sta Zp6F ; CPU:$EE2E PRG:6E2E 85 6F
lda #$1E ; CPU:$EE30 PRG:6E30 A9 1E
clc ; CPU:$EE32 PRG:6E32 18
sbc Zp6F ; CPU:$EE33 PRG:6E33 E5 6F
bcs NmiHandler_Loop573 ; CPU:$EE35 PRG:6E35 B0 02
lda #$01 ; CPU:$EE37 PRG:6E37 A9 01
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop573
; Global: Branch target inside Label: taken when EE39.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop573:
sta $0390,x ; CPU:$EE39 PRG:6E39 9D 90 03
rts ; CPU:$EE3C PRG:6E3C 60
; -----------------------------------------------------------------------------
; Routine: Sub_EE3D
; Global: Branch target inside Label: taken when EE3D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EE3D:
jsr Sub_9C83 ; CPU:$EE3D PRG:6E3D 20 83 9C
jsr Sub_9B1F ; CPU:$EE40 PRG:6E40 20 1F 9B
bne NmiHandler_Loop574 ; CPU:$EE43 PRG:6E43 D0 0D
lda #$C8 ; CPU:$EE45 PRG:6E45 A9 C8
sta Zp73 ; CPU:$EE47 PRG:6E47 85 73
lda #$F2 ; CPU:$EE49 PRG:6E49 A9 F2
sta Zp74 ; CPU:$EE4B PRG:6E4B 85 74
lda #$FC ; CPU:$EE4D PRG:6E4D A9 FC
jmp Sub_EE5C ; CPU:$EE4F PRG:6E4F 4C 5C EE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop574
; Global: Branch target inside Label: taken when EE52.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop574:
lda #$C2 ; CPU:$EE52 PRG:6E52 A9 C2
sta Zp73 ; CPU:$EE54 PRG:6E54 85 73
lda #$F2 ; CPU:$EE56 PRG:6E56 A9 F2
sta Zp74 ; CPU:$EE58 PRG:6E58 85 74
lda #$04 ; CPU:$EE5A PRG:6E5A A9 04
; -----------------------------------------------------------------------------
; Routine: Sub_EE5C
; Global: Branch target inside Label: taken when EE5C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EE5C:
clc ; CPU:$EE5C PRG:6E5C 18
adc ZpC8,x ; CPU:$EE5D PRG:6E5D 75 C8
sta ZpC8,x ; CPU:$EE5F PRG:6E5F 95 C8
jsr Sub_8334 ; CPU:$EE61 PRG:6E61 20 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_EE64
; Global: Branch target inside Label: taken when EE64.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EE64:
jsr Sub_E1C3 ; CPU:$EE64 PRG:6E64 20 C3 E1
bcc NmiHandler_Loop576 ; CPU:$EE67 PRG:6E67 90 0A
cmp #$00 ; CPU:$EE69 PRG:6E69 C9 00
beq NmiHandler_Loop575 ; CPU:$EE6B PRG:6E6B F0 03
jmp Sub_EF30 ; CPU:$EE6D PRG:6E6D 4C 30 EF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop575
; Global: Branch target inside Label: taken when EE70.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop575:
jmp Sub_ED72 ; CPU:$EE70 PRG:6E70 4C 72 ED
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop576
; Global: Branch target inside Label: taken when EE73.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop576:
jsr Sub_8358 ; CPU:$EE73 PRG:6E73 20 58 83
jmp Sub_EE64 ; CPU:$EE76 PRG:6E76 4C 64 EE
; -----------------------------------------------------------------------------
; Routine: Sub_EE79
; Global: Branch target inside Label: taken when EE79.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EE79:
lda #$23 ; CPU:$EE79 PRG:6E79 A9 23
jsr Sub_F6DB ; CPU:$EE7B PRG:6E7B 20 DB F6
lda #$00 ; CPU:$EE7E PRG:6E7E A9 00
sta $0336,x ; CPU:$EE80 PRG:6E80 9D 36 03
jsr Sub_9B1F ; CPU:$EE83 PRG:6E83 20 1F 9B
beq NmiHandler_Loop577 ; CPU:$EE86 PRG:6E86 F0 0B
lda #$CE ; CPU:$EE88 PRG:6E88 A9 CE
sta Zp73 ; CPU:$EE8A PRG:6E8A 85 73
lda #$F2 ; CPU:$EE8C PRG:6E8C A9 F2
sta Zp74 ; CPU:$EE8E PRG:6E8E 85 74
jmp Sub_EE9B ; CPU:$EE90 PRG:6E90 4C 9B EE
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop577
; Global: Branch target inside Label: taken when EE93.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop577:
lda #$D8 ; CPU:$EE93 PRG:6E93 A9 D8
sta Zp73 ; CPU:$EE95 PRG:6E95 85 73
lda #$F2 ; CPU:$EE97 PRG:6E97 A9 F2
sta Zp74 ; CPU:$EE99 PRG:6E99 85 74
; -----------------------------------------------------------------------------
; Routine: Sub_EE9B
; Global: Branch target inside Label: taken when EE9B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EE9B:
jsr Sub_8334 ; CPU:$EE9B PRG:6E9B 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear39
; Global: Branch target inside Label: taken when EE9E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear39:
jsr Sub_EEDF ; CPU:$EE9E PRG:6E9E 20 DF EE
jsr Sub_E291 ; CPU:$EEA1 PRG:6EA1 20 91 E2
bcc NmiHandler_OnCarryClear39 ; CPU:$EEA4 PRG:6EA4 90 F8
lda $0336,x ; CPU:$EEA6 PRG:6EA6 BD 36 03
ora #$01 ; CPU:$EEA9 PRG:6EA9 09 01
sta $0336,x ; CPU:$EEAB PRG:6EAB 9D 36 03
lda #$E2 ; CPU:$EEAE PRG:6EAE A9 E2
sta Zp73 ; CPU:$EEB0 PRG:6EB0 85 73
lda #$F2 ; CPU:$EEB2 PRG:6EB2 A9 F2
sta Zp74 ; CPU:$EEB4 PRG:6EB4 85 74
jsr Sub_8334 ; CPU:$EEB6 PRG:6EB6 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear40
; Global: Branch target inside Label: taken when EEB9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear40:
jsr Sub_EEDF ; CPU:$EEB9 PRG:6EB9 20 DF EE
jsr Sub_E291 ; CPU:$EEBC PRG:6EBC 20 91 E2
bcc NmiHandler_OnCarryClear40 ; CPU:$EEBF PRG:6EBF 90 F8
lda $0336,x ; CPU:$EEC1 PRG:6EC1 BD 36 03
ora #$02 ; CPU:$EEC4 PRG:6EC4 09 02
sta $0336,x ; CPU:$EEC6 PRG:6EC6 9D 36 03
lda #$E6 ; CPU:$EEC9 PRG:6EC9 A9 E6
sta Zp73 ; CPU:$EECB PRG:6ECB 85 73
lda #$F2 ; CPU:$EECD PRG:6ECD A9 F2
sta Zp74 ; CPU:$EECF PRG:6ECF 85 74
jsr Sub_8334 ; CPU:$EED1 PRG:6ED1 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear41
; Global: Branch target inside Label: taken when EED4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear41:
jsr Sub_EEDF ; CPU:$EED4 PRG:6ED4 20 DF EE
jsr Sub_E291 ; CPU:$EED7 PRG:6ED7 20 91 E2
bcc NmiHandler_OnCarryClear41 ; CPU:$EEDA PRG:6EDA 90 F8
jmp Sub_EF30 ; CPU:$EEDC PRG:6EDC 4C 30 EF
; -----------------------------------------------------------------------------
; Routine: Sub_EEDF
; Global: Branch target inside Label: taken when EEDF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EEDF:
jsr Sub_9B03 ; CPU:$EEDF PRG:6EDF 20 03 9B
lda $0336,x ; CPU:$EEE2 PRG:6EE2 BD 36 03
bne NmiHandler_Loop578 ; CPU:$EEE5 PRG:6EE5 D0 0A
ldy $03D7,x ; CPU:$EEE7 PRG:6EE7 BC D7 03
lda $04B1,y ; CPU:$EEEA PRG:6EEA B9 B1 04
and #$01 ; CPU:$EEED PRG:6EED 29 01
bne NmiHandler_Loop579 ; CPU:$EEEF PRG:6EEF D0 01
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop578
; Global: Branch target inside Label: taken when EEF1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop578:
rts ; CPU:$EEF1 PRG:6EF1 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop579
; Global: Branch target inside Label: taken when EEF2.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop579:
lda #$00 ; CPU:$EEF2 PRG:6EF2 A9 00
sta Zp73 ; CPU:$EEF4 PRG:6EF4 85 73
lda #$03 ; CPU:$EEF6 PRG:6EF6 A9 03
sta Zp74 ; CPU:$EEF8 PRG:6EF8 85 74
sta $0336,x ; CPU:$EEFA PRG:6EFA 9D 36 03
jmp Sub_C1D5 ; CPU:$EEFD PRG:6EFD 4C D5 C1
; -----------------------------------------------------------------------------
; Routine: Sub_EF00
; Global: Branch target inside Label: taken when EF00.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EF00:
lda ZpB7,x ; CPU:$EF00 PRG:6F00 B5 B7
ora #$02 ; CPU:$EF02 PRG:6F02 09 02
sta ZpB7,x ; CPU:$EF04 PRG:6F04 95 B7
lda ZpC8,x ; CPU:$EF06 PRG:6F06 B5 C8
bpl NmiHandler_Loop580 ; CPU:$EF08 PRG:6F08 10 0B
lda #$66 ; CPU:$EF0A PRG:6F0A A9 66
sta Zp73 ; CPU:$EF0C PRG:6F0C 85 73
lda #$F3 ; CPU:$EF0E PRG:6F0E A9 F3
sta Zp74 ; CPU:$EF10 PRG:6F10 85 74
jmp Sub_EF1D ; CPU:$EF12 PRG:6F12 4C 1D EF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop580
; Global: Branch target inside Label: taken when EF15.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop580:
lda #$38 ; CPU:$EF15 PRG:6F15 A9 38
sta Zp73 ; CPU:$EF17 PRG:6F17 85 73
lda #$F3 ; CPU:$EF19 PRG:6F19 A9 F3
sta Zp74 ; CPU:$EF1B PRG:6F1B 85 74
; -----------------------------------------------------------------------------
; Routine: Sub_EF1D
; Global: Branch target inside Label: taken when EF1D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EF1D:
jsr Sub_8334 ; CPU:$EF1D PRG:6F1D 20 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear42
; Global: Branch target inside Label: taken when EF20.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear42:
jsr Sub_EF44 ; CPU:$EF20 PRG:6F20 20 44 EF
bcs NmiHandler_Loop581 ; CPU:$EF23 PRG:6F23 B0 08
jsr Sub_9B03 ; CPU:$EF25 PRG:6F25 20 03 9B
jsr Sub_8358 ; CPU:$EF28 PRG:6F28 20 58 83
bcc NmiHandler_OnCarryClear42 ; CPU:$EF2B PRG:6F2B 90 F3
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop581
; Global: Branch target inside Label: taken when EF2D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop581:
jmp Sub_EF30 ; CPU:$EF2D PRG:6F2D 4C 30 EF
; -----------------------------------------------------------------------------
; Routine: Sub_EF30
; Global: Branch target inside Label: taken when EF30.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EF30:
jsr Sub_DBEE ; CPU:$EF30 PRG:6F30 20 EE DB
jsr Sub_F0CE ; CPU:$EF33 PRG:6F33 20 CE F0
lda $03EF,x ; CPU:$EF36 PRG:6F36 BD EF 03
sta Zp6F ; CPU:$EF39 PRG:6F39 85 6F
lda #$00 ; CPU:$EF3B PRG:6F3B A9 00
sta Zp70 ; CPU:$EF3D PRG:6F3D 85 70
sta ZpB7,x ; CPU:$EF3F PRG:6F3F 95 B7
jmp Sub_E852 ; CPU:$EF41 PRG:6F41 4C 52 E8
; -----------------------------------------------------------------------------
; Routine: Sub_EF44
; Global: Branch target inside Label: taken when EF44.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EF44:
lda $0303,x ; CPU:$EF44 PRG:6F44 BD 03 03
cmp #$F0 ; CPU:$EF47 PRG:6F47 C9 F0
rts ; CPU:$EF49 PRG:6F49 60
; ---- data $EF4A-$EF4B (2 bytes) ----
.byte $18, $60 ; CPU:$EF4A PRG:6F4A 18 60
; -----------------------------------------------------------------------------
; Routine: Sub_EF4C
; Global: Branch target inside Label: taken when EF4C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EF4C:
ldy $06E1 ; CPU:$EF4C PRG:6F4C AC E1 06
iny ; CPU:$EF4F PRG:6F4F C8
tya ; CPU:$EF50 PRG:6F50 98
dey ; CPU:$EF51 PRG:6F51 88
and #$0F ; CPU:$EF52 PRG:6F52 29 0F
sta $06E1 ; CPU:$EF54 PRG:6F54 8D E1 06
rts ; CPU:$EF57 PRG:6F57 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero19
; Global: Branch target inside Label: taken when EF58.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero19:
jsr Sub_82A3 ; CPU:$EF58 PRG:6F58 20 A3 82
ldy #$07 ; CPU:$EF5B PRG:6F5B A0 07
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero92
; Global: Branch target inside Label: taken when EF5D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero92:
lda a:ZpB7,y ; CPU:$EF5D PRG:6F5D B9 B7 00
bpl NmiHandler_Loop582 ; CPU:$EF60 PRG:6F60 10 04
and #$02 ; CPU:$EF62 PRG:6F62 29 02
bne NmiHandler_OnZero19 ; CPU:$EF64 PRG:6F64 D0 F2
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop582
; Global: Branch target inside Label: taken when EF66.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop582:
iny ; CPU:$EF66 PRG:6F66 C8
cpy #$0C ; CPU:$EF67 PRG:6F67 C0 0C
bne NmiHandler_OnNonzero92 ; CPU:$EF69 PRG:6F69 D0 F2
jsr Sub_EF4C ; CPU:$EF6B PRG:6F6B 20 4C EF
lda (ZpA5),y ; CPU:$EF6E PRG:6F6E B1 A5
clc ; CPU:$EF70 PRG:6F70 18
adc ZpEC ; CPU:$EF71 PRG:6F71 65 EC
sta ZpE5,x ; CPU:$EF73 PRG:6F73 95 E5
beq NmiHandler_OnZero19 ; CPU:$EF75 PRG:6F75 F0 E1
bmi NmiHandler_OnZero19 ; CPU:$EF77 PRG:6F77 30 DF
lda ZpE5,x ; CPU:$EF79 PRG:6F79 B5 E5
cmp #$18 ; CPU:$EF7B PRG:6F7B C9 18
beq NmiHandler_OnZero19 ; CPU:$EF7D PRG:6F7D F0 D9
cmp #$1F ; CPU:$EF7F PRG:6F7F C9 1F
beq NmiHandler_OnZero19 ; CPU:$EF81 PRG:6F81 F0 D5
cmp ZpEC ; CPU:$EF83 PRG:6F83 C5 EC
bne NmiHandler_Loop587 ; CPU:$EF85 PRG:6F85 D0 2C
ldy #$00 ; CPU:$EF87 PRG:6F87 A0 00
sty Zp6F ; CPU:$EF89 PRG:6F89 84 6F
ldy #$08 ; CPU:$EF8B PRG:6F8B A0 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero93
; Global: Branch target inside Label: taken when EF8D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero93:
cmp a:ZpE5,y ; CPU:$EF8D PRG:6F8D D9 E5 00
bne NmiHandler_Loop583 ; CPU:$EF90 PRG:6F90 D0 02
inc Zp6F ; CPU:$EF92 PRG:6F92 E6 6F
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop583
; Global: Branch target inside Label: taken when EF94.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop583:
iny ; CPU:$EF94 PRG:6F94 C8
cpy #$0C ; CPU:$EF95 PRG:6F95 C0 0C
bne NmiHandler_OnNonzero93 ; CPU:$EF97 PRG:6F97 D0 F4
lda ZpF7 ; CPU:$EF99 PRG:6F99 A5 F7
lsr a ; CPU:$EF9B PRG:6F9B 4A
lsr a ; CPU:$EF9C PRG:6F9C 4A
cmp #$0C ; CPU:$EF9D PRG:6F9D C9 0C
bcs NmiHandler_Loop584 ; CPU:$EF9F PRG:6F9F B0 08
cmp #$04 ; CPU:$EFA1 PRG:6FA1 C9 04
bcs NmiHandler_Loop585 ; CPU:$EFA3 PRG:6FA3 B0 08
lda #$01 ; CPU:$EFA5 PRG:6FA5 A9 01
bne NmiHandler_Loop586 ; CPU:$EFA7 PRG:6FA7 D0 06
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop584
; Global: Branch target inside Label: taken when EFA9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop584:
lda #$03 ; CPU:$EFA9 PRG:6FA9 A9 03
bne NmiHandler_Loop586 ; CPU:$EFAB PRG:6FAB D0 02
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop585
; Global: Branch target inside Label: taken when EFAD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop585:
lda #$02 ; CPU:$EFAD PRG:6FAD A9 02
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop586
; Global: Branch target inside Label: taken when EFAF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop586:
cmp Zp6F ; CPU:$EFAF PRG:6FAF C5 6F
bcc NmiHandler_OnZero19 ; CPU:$EFB1 PRG:6FB1 90 A5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop587
; Global: Branch target inside Label: taken when EFB3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop587:
ldy #$09 ; CPU:$EFB3 PRG:6FB3 A0 09
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative18
; Global: Branch target inside Label: taken when EFB5.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative18:
lda $0592,y ; CPU:$EFB5 PRG:6FB5 B9 92 05
bpl NmiHandler_Loop588 ; CPU:$EFB8 PRG:6FB8 10 14
lda $059C,y ; CPU:$EFBA PRG:6FBA B9 9C 05
cmp ZpE5,x ; CPU:$EFBD PRG:6FBD D5 E5
bne NmiHandler_Loop588 ; CPU:$EFBF PRG:6FBF D0 0D
lda Zp6F ; CPU:$EFC1 PRG:6FC1 A5 6F
cmp #$01 ; CPU:$EFC3 PRG:6FC3 C9 01
bne NmiHandler_OnZero19 ; CPU:$EFC5 PRG:6FC5 D0 91
lda $05A6,y ; CPU:$EFC7 PRG:6FC7 B9 A6 05
sta ZpA2 ; CPU:$EFCA PRG:6FCA 85 A2
bne NmiHandler_Loop589 ; CPU:$EFCC PRG:6FCC D0 03
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop588
; Global: Branch target inside Label: taken when EFCE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop588:
dey ; CPU:$EFCE PRG:6FCE 88
bpl NmiHandler_OnNonnegative18 ; CPU:$EFCF PRG:6FCF 10 E4
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop589
; Global: Branch target inside Label: taken when EFD1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop589:
jsr Sub_99E7 ; CPU:$EFD1 PRG:6FD1 20 E7 99
jsr Sub_9B03 ; CPU:$EFD4 PRG:6FD4 20 03 9B
lda ZpE5,x ; CPU:$EFD7 PRG:6FD7 B5 E5
asl a ; CPU:$EFD9 PRG:6FD9 0A
clc ; CPU:$EFDA PRG:6FDA 18
adc #$94 ; CPU:$EFDB PRG:6FDB 69 94
sta Zp71 ; CPU:$EFDD PRG:6FDD 85 71
lda #$F3 ; CPU:$EFDF PRG:6FDF A9 F3
adc #$00 ; CPU:$EFE1 PRG:6FE1 69 00
sta Zp72 ; CPU:$EFE3 PRG:6FE3 85 72
ldy #$00 ; CPU:$EFE5 PRG:6FE5 A0 00
lda (Zp71),y ; CPU:$EFE7 PRG:6FE7 B1 71
sta Zp73 ; CPU:$EFE9 PRG:6FE9 85 73
iny ; CPU:$EFEB PRG:6FEB C8
lda (Zp71),y ; CPU:$EFEC PRG:6FEC B1 71
sta Zp74 ; CPU:$EFEE PRG:6FEE 85 74
; -----------------------------------------------------------------------------
; Routine: Sub_EFF0
; Global: Branch target inside Label: taken when EFF0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_EFF0:
ldy $06E1 ; CPU:$EFF0 PRG:6FF0 AC E1 06
lda (Zp73),y ; CPU:$EFF3 PRG:6FF3 B1 73
cmp ZpA2 ; CPU:$EFF5 PRG:6FF5 C5 A2
bne NmiHandler_Loop590 ; CPU:$EFF7 PRG:6FF7 D0 06
jsr Sub_EF4C ; CPU:$EFF9 PRG:6FF9 20 4C EF
jmp Sub_EFF0 ; CPU:$EFFC PRG:6FFC 4C F0 EF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop590
; Global: Branch target inside Label: taken when EFFF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop590:
sta ZpC8,x ; CPU:$EFFF PRG:6FFF 95 C8
cmp #$80 ; CPU:$F001 PRG:7001 C9 80
bcc NmiHandler_Loop591 ; CPU:$F003 PRG:7003 90 0B
lda #$86 ; CPU:$F005 PRG:7005 A9 86
sta Zp73 ; CPU:$F007 PRG:7007 85 73
lda #$F3 ; CPU:$F009 PRG:7009 A9 F3
sta Zp74 ; CPU:$F00B PRG:700B 85 74
jmp Sub_8334 ; CPU:$F00D PRG:700D 4C 34 83
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop591
; Global: Branch target inside Label: taken when F010.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop591:
lda #$58 ; CPU:$F010 PRG:7010 A9 58
sta Zp73 ; CPU:$F012 PRG:7012 85 73
lda #$F3 ; CPU:$F014 PRG:7014 A9 F3
sta Zp74 ; CPU:$F016 PRG:7016 85 74
jmp Sub_8334 ; CPU:$F018 PRG:7018 4C 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_F01B
; Global: Branch target inside Label: taken when F01B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F01B:
lda #$18 ; CPU:$F01B PRG:701B A9 18
sta Zp70 ; CPU:$F01D PRG:701D 85 70
jmp Sub_F02D ; CPU:$F01F PRG:701F 4C 2D F0
; -----------------------------------------------------------------------------
; Routine: Sub_F022
; Global: Branch target inside Label: taken when F022.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F022:
lda #$10 ; CPU:$F022 PRG:7022 A9 10
sta Zp70 ; CPU:$F024 PRG:7024 85 70
jmp Sub_F02D ; CPU:$F026 PRG:7026 4C 2D F0
; ---- data $F029-$F02C (4 bytes) ----
.byte $A9, $08, $85, $70 ; CPU:$F029 PRG:7029 A9 08 85 70
; -----------------------------------------------------------------------------
; Routine: Sub_F02D
; Global: Branch target inside Label: taken when F02D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F02D:
lda ZpBE ; CPU:$F02D PRG:702D A5 BE
and #$20 ; CPU:$F02F PRG:702F 29 20
beq NmiHandler_Loop594 ; CPU:$F031 PRG:7031 F0 37
lda ZpCF ; CPU:$F033 PRG:7033 A5 CF
sec ; CPU:$F035 PRG:7035 38
sbc ZpC8,x ; CPU:$F036 PRG:7036 F5 C8
cmp #$F8 ; CPU:$F038 PRG:7038 C9 F8
bcs NmiHandler_Loop592 ; CPU:$F03A PRG:703A B0 04
cmp #$08 ; CPU:$F03C PRG:703C C9 08
bcs NmiHandler_Loop594 ; CPU:$F03E PRG:703E B0 2A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop592
; Global: Branch target inside Label: taken when F040.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop592:
lda $0303,x ; CPU:$F040 PRG:7040 BD 03 03
sec ; CPU:$F043 PRG:7043 38
sbc $030A ; CPU:$F044 PRG:7044 ED 0A 03
bcc NmiHandler_Loop594 ; CPU:$F047 PRG:7047 90 21
cmp Zp70 ; CPU:$F049 PRG:7049 C5 70
bcs NmiHandler_Loop594 ; CPU:$F04B PRG:704B B0 1D
lda #$05 ; CPU:$F04D PRG:704D A9 05
sta Zp73 ; CPU:$F04F PRG:704F 85 73
lda #$01 ; CPU:$F051 PRG:7051 A9 01
sta Zp74 ; CPU:$F053 PRG:7053 85 74
jsr Sub_C1D5 ; CPU:$F055 PRG:7055 20 D5 C1
lda $0681 ; CPU:$F058 PRG:7058 AD 81 06
beq NmiHandler_Loop593 ; CPU:$F05B PRG:705B F0 0B
lda #$05 ; CPU:$F05D PRG:705D A9 05
sta Zp73 ; CPU:$F05F PRG:705F 85 73
lda #$00 ; CPU:$F061 PRG:7061 A9 00
sta Zp74 ; CPU:$F063 PRG:7063 85 74
jsr Sub_C1D5 ; CPU:$F065 PRG:7065 20 D5 C1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop593
; Global: Branch target inside Label: taken when F068.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop593:
sec ; CPU:$F068 PRG:7068 38
rts ; CPU:$F069 PRG:7069 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop594
; Global: Branch target inside Label: taken when F06A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop594:
clc ; CPU:$F06A PRG:706A 18
rts ; CPU:$F06B PRG:706B 60
; -----------------------------------------------------------------------------
; Routine: Sub_F06C
; Global: Branch target inside Label: taken when F06C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F06C:
lda ZpE5,x ; CPU:$F06C PRG:706C B5 E5
asl a ; CPU:$F06E PRG:706E 0A
clc ; CPU:$F06F PRG:706F 18
adc #$74 ; CPU:$F070 PRG:7070 69 74
sta Zp71 ; CPU:$F072 PRG:7072 85 71
lda #$F4 ; CPU:$F074 PRG:7074 A9 F4
adc #$00 ; CPU:$F076 PRG:7076 69 00
sta Zp72 ; CPU:$F078 PRG:7078 85 72
ldy #$00 ; CPU:$F07A PRG:707A A0 00
lda (Zp71),y ; CPU:$F07C PRG:707C B1 71
sta Zp73 ; CPU:$F07E PRG:707E 85 73
iny ; CPU:$F080 PRG:7080 C8
lda (Zp71),y ; CPU:$F081 PRG:7081 B1 71
sta Zp74 ; CPU:$F083 PRG:7083 85 74
dey ; CPU:$F085 PRG:7085 88
; -----------------------------------------------------------------------------
; Routine: Sub_F086
; Global: Branch target inside Label: taken when F086.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F086:
lda (Zp73),y ; CPU:$F086 PRG:7086 B1 73
cmp #$FF ; CPU:$F088 PRG:7088 C9 FF
beq NmiHandler_Loop595 ; CPU:$F08A PRG:708A F0 0F
sec ; CPU:$F08C PRG:708C 38
sbc ZpC8,x ; CPU:$F08D PRG:708D F5 C8
cmp #$04 ; CPU:$F08F PRG:708F C9 04
bcc NmiHandler_Loop596 ; CPU:$F091 PRG:7091 90 0A
cmp #$FD ; CPU:$F093 PRG:7093 C9 FD
bcs NmiHandler_Loop596 ; CPU:$F095 PRG:7095 B0 06
iny ; CPU:$F097 PRG:7097 C8
jmp Sub_F086 ; CPU:$F098 PRG:7098 4C 86 F0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop595
; Global: Branch target inside Label: taken when F09B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop595:
clc ; CPU:$F09B PRG:709B 18
rts ; CPU:$F09C PRG:709C 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop596
; Global: Branch target inside Label: taken when F09D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop596:
lda (Zp73),y ; CPU:$F09D PRG:709D B1 73
sta ZpC8,x ; CPU:$F09F PRG:709F 95 C8
sec ; CPU:$F0A1 PRG:70A1 38
rts ; CPU:$F0A2 PRG:70A2 60
; -----------------------------------------------------------------------------
; Routine: Sub_F0A3
; Global: Branch target inside Label: taken when F0A3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F0A3:
lda ZpEC ; CPU:$F0A3 PRG:70A3 A5 EC
cmp ZpE5,x ; CPU:$F0A5 PRG:70A5 D5 E5
bcs NmiHandler_Loop597 ; CPU:$F0A7 PRG:70A7 B0 05
lda #$FE ; CPU:$F0A9 PRG:70A9 A9 FE
jmp Sub_F0B0 ; CPU:$F0AB PRG:70AB 4C B0 F0
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop597
; Global: Branch target inside Label: taken when F0AE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop597:
lda #$02 ; CPU:$F0AE PRG:70AE A9 02
; -----------------------------------------------------------------------------
; Routine: Sub_F0B0
; Global: Branch target inside Label: taken when F0B0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F0B0:
sta $03E3,x ; CPU:$F0B0 PRG:70B0 9D E3 03
rts ; CPU:$F0B3 PRG:70B3 60
; -----------------------------------------------------------------------------
; Routine: Sub_F0B4
; Global: Branch target inside Label: taken when F0B4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F0B4:
lda ZpCF ; CPU:$F0B4 PRG:70B4 A5 CF
cmp ZpC8,x ; CPU:$F0B6 PRG:70B6 D5 C8
bcs NmiHandler_Loop598 ; CPU:$F0B8 PRG:70B8 B0 03
jmp Sub_9B18 ; CPU:$F0BA PRG:70BA 4C 18 9B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop598
; Global: Branch target inside Label: taken when F0BD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop598:
jmp Sub_9B11 ; CPU:$F0BD PRG:70BD 4C 11 9B
; -----------------------------------------------------------------------------
; Routine: Sub_F0C0
; Global: Branch target inside Label: taken when F0C0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F0C0:
lda ZpBE ; CPU:$F0C0 PRG:70C0 A5 BE
cmp ZpE5,x ; CPU:$F0C2 PRG:70C2 D5 E5
beq NmiHandler_Loop599 ; CPU:$F0C4 PRG:70C4 F0 06
jsr Sub_F0A3 ; CPU:$F0C6 PRG:70C6 20 A3 F0
jmp Sub_9B24 ; CPU:$F0C9 PRG:70C9 4C 24 9B
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop599
; Global: Branch target inside Label: taken when F0CC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop599:
clc ; CPU:$F0CC PRG:70CC 18
rts ; CPU:$F0CD PRG:70CD 60
; -----------------------------------------------------------------------------
; Routine: Sub_F0CE
; Global: Branch target inside Label: taken when F0CE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F0CE:
lda ZpF7 ; CPU:$F0CE PRG:70CE A5 F7
lsr a ; CPU:$F0D0 PRG:70D0 4A
lsr a ; CPU:$F0D1 PRG:70D1 4A
lsr a ; CPU:$F0D2 PRG:70D2 4A
tay ; CPU:$F0D3 PRG:70D3 A8
cpy #$05 ; CPU:$F0D4 PRG:70D4 C0 05
bcc NmiHandler_Loop600 ; CPU:$F0D6 PRG:70D6 90 02
ldy #$05 ; CPU:$F0D8 PRG:70D8 A0 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop600
; Global: Branch target inside Label: taken when F0DA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop600:
lda $F0E1,y ; CPU:$F0DA PRG:70DA B9 E1 F0
sta $03EF,x ; CPU:$F0DD PRG:70DD 9D EF 03
rts ; CPU:$F0E0 PRG:70E0 60
; ---- data $F0E1-$F0E6 (6 bytes) ----
; referenced by `lda $F0E1,y` at $F0DA (operand $F0E1 falls inside this region)
.byte $32, $28, $1E, $14, $0A, $01 ; CPU:$F0E1 PRG:70E1 32 28 1E 14 0A 01
; -----------------------------------------------------------------------------
; Routine: Sub_F0E7
; Global: Branch target inside Label: taken when F0E7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F0E7:
txa ; CPU:$F0E7 PRG:70E7 8A
adc ZpF7 ; CPU:$F0E8 PRG:70E8 65 F7
and #$03 ; CPU:$F0EA PRG:70EA 29 03
sta $06E2 ; CPU:$F0EC PRG:70EC 8D E2 06
lda ZpF7 ; CPU:$F0EF PRG:70EF A5 F7
lsr a ; CPU:$F0F1 PRG:70F1 4A
lsr a ; CPU:$F0F2 PRG:70F2 4A
lsr a ; CPU:$F0F3 PRG:70F3 4A
tay ; CPU:$F0F4 PRG:70F4 A8
cpy #$06 ; CPU:$F0F5 PRG:70F5 C0 06
bcc NmiHandler_Loop601 ; CPU:$F0F7 PRG:70F7 90 02
ldy #$06 ; CPU:$F0F9 PRG:70F9 A0 06
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop601
; Global: Branch target inside Label: taken when F0FB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop601:
lda $F1E3,y ; CPU:$F0FB PRG:70FB B9 E3 F1
sta $03EF,x ; CPU:$F0FE PRG:70FE 9D EF 03
lda $0336,x ; CPU:$F101 PRG:7101 BD 36 03
bmi NmiHandler_Loop602 ; CPU:$F104 PRG:7104 30 06
lda ZpEC ; CPU:$F106 PRG:7106 A5 EC
cmp ZpE5,x ; CPU:$F108 PRG:7108 D5 E5
bne NmiHandler_Loop605 ; CPU:$F10A PRG:710A D0 49
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop602
; Global: Branch target inside Label: taken when F10C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop602:
lda $0336,x ; CPU:$F10C PRG:710C BD 36 03
and #$7F ; CPU:$F10F PRG:710F 29 7F
sta $0336,x ; CPU:$F111 PRG:7111 9D 36 03
lda ZpF7 ; CPU:$F114 PRG:7114 A5 F7
lsr a ; CPU:$F116 PRG:7116 4A
sta Zp73 ; CPU:$F117 PRG:7117 85 73
lda #$00 ; CPU:$F119 PRG:7119 A9 00
sta Zp74 ; CPU:$F11B PRG:711B 85 74
lda #$2A ; CPU:$F11D PRG:711D A9 2A
clc ; CPU:$F11F PRG:711F 18
adc Zp73 ; CPU:$F120 PRG:7120 65 73
sta Zp73 ; CPU:$F122 PRG:7122 85 73
lda #$F2 ; CPU:$F124 PRG:7124 A9 F2
adc Zp74 ; CPU:$F126 PRG:7126 65 74
sta Zp74 ; CPU:$F128 PRG:7128 85 74
ldy $06E2 ; CPU:$F12A PRG:712A AC E2 06
lda (Zp73),y ; CPU:$F12D PRG:712D B1 73
tay ; CPU:$F12F PRG:712F A8
dey ; CPU:$F130 PRG:7130 88
beq NmiHandler_Loop605 ; CPU:$F131 PRG:7131 F0 22
dey ; CPU:$F133 PRG:7133 88
beq NmiHandler_Loop603 ; CPU:$F134 PRG:7134 F0 09
dey ; CPU:$F136 PRG:7136 88
beq NmiHandler_Loop604 ; CPU:$F137 PRG:7137 F0 11
jsr Sub_F1D3 ; CPU:$F139 PRG:7139 20 D3 F1
jmp Sub_E8D5 ; CPU:$F13C PRG:713C 4C D5 E8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop603
; Global: Branch target inside Label: taken when F13F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop603:
jsr Sub_F1D3 ; CPU:$F13F PRG:713F 20 D3 F1
ora #$01 ; CPU:$F142 PRG:7142 09 01
sta $0336,x ; CPU:$F144 PRG:7144 9D 36 03
jmp Sub_EC8B ; CPU:$F147 PRG:7147 4C 8B EC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop604
; Global: Branch target inside Label: taken when F14A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop604:
jsr Sub_F1D3 ; CPU:$F14A PRG:714A 20 D3 F1
ora #$02 ; CPU:$F14D PRG:714D 09 02
sta $0336,x ; CPU:$F14F PRG:714F 9D 36 03
jmp Sub_EC8B ; CPU:$F152 PRG:7152 4C 8B EC
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop605
; Global: Branch target inside Label: taken when F155.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop605:
lda ZpEC ; CPU:$F155 PRG:7155 A5 EC
sec ; CPU:$F157 PRG:7157 38
sbc ZpE5,x ; CPU:$F158 PRG:7158 F5 E5
cmp #$02 ; CPU:$F15A PRG:715A C9 02
bcc NmiHandler_Loop606 ; CPU:$F15C PRG:715C 90 04
cmp #$FF ; CPU:$F15E PRG:715E C9 FF
bcc NmiHandler_Loop612 ; CPU:$F160 PRG:7160 90 5C
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop606
; Global: Branch target inside Label: taken when F162.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop606:
lda $0336,x ; CPU:$F162 PRG:7162 BD 36 03
and #$20 ; CPU:$F165 PRG:7165 29 20
bne NmiHandler_Loop612 ; CPU:$F167 PRG:7167 D0 55
jsr Sub_F1D3 ; CPU:$F169 PRG:7169 20 D3 F1
lda ZpE5,x ; CPU:$F16C PRG:716C B5 E5
cmp ZpEC ; CPU:$F16E PRG:716E C5 EC
bne NmiHandler_Loop608 ; CPU:$F170 PRG:7170 D0 0C
lda ZpCF ; CPU:$F172 PRG:7172 A5 CF
cmp ZpC8,x ; CPU:$F174 PRG:7174 D5 C8
bpl NmiHandler_Loop607 ; CPU:$F176 PRG:7176 10 03
jmp Sub_F1AB ; CPU:$F178 PRG:7178 4C AB F1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop607
; Global: Branch target inside Label: taken when F17B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop607:
jmp NmiHandler_OnNonzero94 ; CPU:$F17B PRG:717B 4C 9B F1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop608
; Global: Branch target inside Label: taken when F17E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop608:
bcs NmiHandler_Loop610 ; CPU:$F17E PRG:717E B0 0F
ldy ZpE5,x ; CPU:$F180 PRG:7180 B4 E5
lda $F1EA,y ; CPU:$F182 PRG:7182 B9 EA F1
cmp ZpC8,x ; CPU:$F185 PRG:7185 D5 C8
bpl NmiHandler_Loop609 ; CPU:$F187 PRG:7187 10 03
jmp Sub_F1AB ; CPU:$F189 PRG:7189 4C AB F1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop609
; Global: Branch target inside Label: taken when F18C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop609:
jmp NmiHandler_OnNonzero94 ; CPU:$F18C PRG:718C 4C 9B F1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop610
; Global: Branch target inside Label: taken when F18F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop610:
ldy ZpE5,x ; CPU:$F18F PRG:718F B4 E5
lda $F20A,y ; CPU:$F191 PRG:7191 B9 0A F2
cmp ZpC8,x ; CPU:$F194 PRG:7194 D5 C8
bpl NmiHandler_OnNonzero94 ; CPU:$F196 PRG:7196 10 03
jmp Sub_F1AB ; CPU:$F198 PRG:7198 4C AB F1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero94
; Global: Branch target inside Label: taken when F19B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero94:
lda #$02 ; CPU:$F19B PRG:719B A9 02
sta ZpD9,x ; CPU:$F19D PRG:719D 95 D9
jsr Sub_9B11 ; CPU:$F19F PRG:719F 20 11 9B
lda ZpB7,x ; CPU:$F1A2 PRG:71A2 B5 B7
and #$04 ; CPU:$F1A4 PRG:71A4 29 04
bne NmiHandler_Loop611 ; CPU:$F1A6 PRG:71A6 D0 13
jmp Sub_E9A3 ; CPU:$F1A8 PRG:71A8 4C A3 E9
; -----------------------------------------------------------------------------
; Routine: Sub_F1AB
; Global: Branch target inside Label: taken when F1AB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F1AB:
lda #$FE ; CPU:$F1AB PRG:71AB A9 FE
sta ZpD9,x ; CPU:$F1AD PRG:71AD 95 D9
jsr Sub_9B18 ; CPU:$F1AF PRG:71AF 20 18 9B
lda ZpB7,x ; CPU:$F1B2 PRG:71B2 B5 B7
and #$04 ; CPU:$F1B4 PRG:71B4 29 04
bne NmiHandler_Loop611 ; CPU:$F1B6 PRG:71B6 D0 03
jmp Sub_E9A3 ; CPU:$F1B8 PRG:71B8 4C A3 E9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop611
; Global: Branch target inside Label: taken when F1BB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop611:
jmp Sub_EA5A ; CPU:$F1BB PRG:71BB 4C 5A EA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop612
; Global: Branch target inside Label: taken when F1BE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop612:
lda $0336,x ; CPU:$F1BE PRG:71BE BD 36 03
ora #$20 ; CPU:$F1C1 PRG:71C1 09 20
sta $0336,x ; CPU:$F1C3 PRG:71C3 9D 36 03
lda ZpB7,x ; CPU:$F1C6 PRG:71C6 B5 B7
eor #$08 ; CPU:$F1C8 PRG:71C8 49 08
sta ZpB7,x ; CPU:$F1CA PRG:71CA 95 B7
and #$08 ; CPU:$F1CC PRG:71CC 29 08
bne NmiHandler_OnNonzero94 ; CPU:$F1CE PRG:71CE D0 CB
jmp Sub_F1AB ; CPU:$F1D0 PRG:71D0 4C AB F1
; -----------------------------------------------------------------------------
; Routine: Sub_F1D3
; Global: Branch target inside Label: taken when F1D3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F1D3:
lda $0336,x ; CPU:$F1D3 PRG:71D3 BD 36 03
and #$FC ; CPU:$F1D6 PRG:71D6 29 FC
sta $0336,x ; CPU:$F1D8 PRG:71D8 9D 36 03
rts ; CPU:$F1DB PRG:71DB 60
; -----------------------------------------------------------------------------
; Routine: Sub_F1DC
; Global: Branch target inside Label: taken when F1DC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F1DC:
lda ZpB7,x ; CPU:$F1DC PRG:71DC B5 B7
ora #$80 ; CPU:$F1DE PRG:71DE 09 80
sta ZpB7,x ; CPU:$F1E0 PRG:71E0 95 B7
rts ; CPU:$F1E2 PRG:71E2 60
; ---- data $F1E3-$F4DA (760 bytes) ----
; referenced by `lda $F27A,y` at $ED10 (operand $F27A falls inside this region)
; referenced by `lda $F1E3,y` at $F0FB (operand $F1E3 falls inside this region)
; referenced by `lda $F1EA,y` at $F182 (operand $F1EA falls inside this region)
; referenced by `lda $F20A,y` at $F191 (operand $F20A falls inside this region)
.byte $0F, $14, $19, $1E, $23, $28, $2D, $80, $80, $80, $80, $80, $80, $80, $80, $80 ; CPU:$F1E3 PRG:71E3 0F 14 19 1E 23 28 2D 80 80 80 80 80 80 80 80 80
.byte $80, $80, $00, $00, $00, $F0, $80, $20, $20, $E0, $E0, $00, $00, $00, $00, $80 ; CPU:$F1F3 PRG:71F3 80 80 00 00 00 F0 80 20 20 E0 E0 00 00 00 00 80
.byte $80, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80, $80 ; CPU:$F203 PRG:7203 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
.byte $80, $80, $80, $00, $00, $00, $80, $80, $20, $20, $E0, $80, $80, $00, $00, $00 ; CPU:$F213 PRG:7213 80 80 80 00 00 00 80 80 20 20 E0 80 80 00 00 00
.byte $80, $80, $80, $80, $80, $80, $80, $00, $01, $00, $01, $01, $01, $02, $01, $01 ; CPU:$F223 PRG:7223 80 80 80 80 80 80 80 00 01 00 01 01 01 02 01 01
.byte $01, $02, $01, $01, $02, $01, $02, $01, $01, $01, $02, $01, $02, $01, $01, $02 ; CPU:$F233 PRG:7233 01 02 01 01 02 01 02 01 01 01 02 01 02 01 01 02
.byte $01, $02, $01, $02, $01, $01, $01, $02, $01, $02, $01, $02, $01, $02, $01, $01 ; CPU:$F243 PRG:7243 01 02 01 02 01 01 01 02 01 02 01 02 01 02 01 01
.byte $02, $02, $01, $02, $02, $02, $01, $02, $01, $03, $01, $02, $02, $02, $01, $02 ; CPU:$F253 PRG:7253 02 02 01 02 02 02 01 02 01 03 01 02 02 02 01 02
.byte $01, $02, $02, $03, $01, $02, $03, $02, $01, $03, $03, $02, $02, $03, $02, $02 ; CPU:$F263 PRG:7263 01 02 02 03 01 02 03 02 01 03 03 02 02 03 02 02
.byte $01, $03, $02, $03, $02, $02, $03, $02, $00, $00, $FE, $01, $2C, $04, $FF, $01 ; CPU:$F273 PRG:7273 01 03 02 03 02 02 03 02 00 00 FE 01 2C 04 FF 01
.byte $2D, $04, $FF, $01, $36, $04, $FF, $01, $37, $04, $FF, $01, $2E, $04, $FF, $01 ; CPU:$F283 PRG:7283 2D 04 FF 01 36 04 FF 01 37 04 FF 01 2E 04 FF 01
.byte $2F, $04, $FF, $00, $4A, $04, $FF, $00, $49, $04, $FF, $01, $2C, $03, $2E, $03 ; CPU:$F293 PRG:7293 2F 04 FF 00 4A 04 FF 00 49 04 FF 01 2C 03 2E 03
.byte $FF, $01, $2D, $03, $2F, $03, $FF, $01, $2A, $03, $2E, $03, $FF, $01, $2B, $03 ; CPU:$F2A3 PRG:72A3 FF 01 2D 03 2F 03 FF 01 2A 03 2E 03 FF 01 2B 03
.byte $2F, $03, $FF, $01, $34, $03, $36, $03, $FF, $01, $35, $03, $37, $03, $FF, $00 ; CPU:$F2B3 PRG:72B3 2F 03 FF 01 34 03 36 03 FF 01 35 03 37 03 FF 00
.byte $39, $03, $3B, $03, $FF, $00, $38, $03, $3A, $03, $FF, $01, $38, $03, $3A, $03 ; CPU:$F2C3 PRG:72C3 39 03 3B 03 FF 00 38 03 3A 03 FF 01 38 03 3A 03
.byte $38, $03, $30, $03, $FF, $01, $39, $03, $3B, $03, $39, $03, $31, $03, $FF, $01 ; CPU:$F2D3 PRG:72D3 38 03 30 03 FF 01 39 03 3B 03 39 03 31 03 FF 01
.byte $40, $03, $FF, $01, $41, $03, $42, $03, $FF, $01, $3E, $03, $3C, $03, $36, $03 ; CPU:$F2E3 PRG:72E3 40 03 FF 01 41 03 42 03 FF 01 3E 03 3C 03 36 03
.byte $FF, $01, $3F, $03, $3D, $03, $37, $03, $FF, $01, $3E, $03, $36, $03, $FF, $01 ; CPU:$F2F3 PRG:72F3 FF 01 3F 03 3D 03 37 03 FF 01 3E 03 36 03 FF 01
.byte $3F, $03, $37, $03, $FF, $01, $39, $03, $31, $03, $4A, $03, $39, $03, $33, $03 ; CPU:$F303 PRG:7303 3F 03 37 03 FF 01 39 03 31 03 4A 03 39 03 33 03
.byte $39, $03, $33, $03, $43, $03, $FF, $01, $38, $03, $30, $03, $49, $03, $38, $03 ; CPU:$F313 PRG:7313 39 03 33 03 43 03 FF 01 38 03 30 03 49 03 38 03
.byte $32, $03, $38, $03, $32, $03, $43, $03, $FF, $01, $28, $03, $2A, $03, $FF, $01 ; CPU:$F323 PRG:7323 32 03 38 03 32 03 43 03 FF 01 28 03 2A 03 FF 01
.byte $29, $03, $2B, $03, $FF, $01, $BB, $01, $BD, $01, $BF, $01, $C1, $01, $C3, $01 ; CPU:$F333 PRG:7333 29 03 2B 03 FF 01 BB 01 BD 01 BF 01 C1 01 C3 01
.byte $B9, $01, $B7, $01, $B5, $01, $FF, $01, $B7, $01, $B9, $01, $C5, $01, $C7, $01 ; CPU:$F343 PRG:7343 B9 01 B7 01 B5 01 FF 01 B7 01 B9 01 C5 01 C7 01
.byte $C9, $01, $CB, $01, $FF, $01, $B7, $03, $B9, $01, $C5, $01, $C7, $01, $C9, $01 ; CPU:$F353 PRG:7353 C9 01 CB 01 FF 01 B7 03 B9 01 C5 01 C7 01 C9 01
.byte $CB, $01, $FF, $01, $BC, $01, $BE, $01, $C0, $01, $C2, $01, $C4, $01, $BA, $01 ; CPU:$F363 PRG:7363 CB 01 FF 01 BC 01 BE 01 C0 01 C2 01 C4 01 BA 01
.byte $B8, $01, $B6, $01, $FF, $01, $B8, $01, $BA, $01, $C6, $01, $C8, $01, $CA, $01 ; CPU:$F373 PRG:7373 B8 01 B6 01 FF 01 B8 01 BA 01 C6 01 C8 01 CA 01
.byte $CC, $01, $FF, $01, $B8, $03, $BA, $01, $C6, $01, $C8, $01, $CA, $01, $CC, $01 ; CPU:$F383 PRG:7383 CC 01 FF 01 B8 03 BA 01 C6 01 C8 01 CA 01 CC 01
.byte $FF, $D4, $F3, $E4, $F3, $E4, $F3, $E4, $F3, $E4, $F3, $E4, $F3, $E4, $F3, $E4 ; CPU:$F393 PRG:7393 FF D4 F3 E4 F3 E4 F3 E4 F3 E4 F3 E4 F3 E4 F3 E4
.byte $F3, $E4, $F3, $E4, $F3, $E4, $F3, $F4, $F3, $E4, $F3, $04, $F4, $E4, $F3, $14 ; CPU:$F3A3 PRG:73A3 F3 E4 F3 E4 F3 E4 F3 F4 F3 E4 F3 04 F4 E4 F3 14
.byte $F4, $24, $F4, $34, $F4, $04, $F4, $14, $F4, $E4, $F3, $E4, $F3, $04, $F4, $04 ; CPU:$F3B3 PRG:73B3 F4 24 F4 34 F4 04 F4 14 F4 E4 F3 E4 F3 04 F4 04
.byte $F4, $44, $F4, $54, $F4, $54, $F4, $54, $F4, $54, $F4, $54, $F4, $54, $F4, $64 ; CPU:$F3C3 PRG:73C3 F4 44 F4 54 F4 54 F4 54 F4 54 F4 54 F4 54 F4 64
.byte $F4, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 ; CPU:$F3D3 PRG:73D3 F4 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
.byte $00, $A8, $38, $A8, $50, $38, $38, $50, $C0, $C0, $A8, $50, $A8, $50, $C0, $A8 ; CPU:$F3E3 PRG:73E3 00 A8 38 A8 50 38 38 50 C0 C0 A8 50 A8 50 C0 A8
.byte $A8, $38, $38, $C0, $50, $38, $38, $50, $C0, $C0, $50, $50, $38, $50, $C0, $C0 ; CPU:$F3F3 PRG:73F3 A8 38 38 C0 50 38 38 50 C0 C0 50 50 38 50 C0 C0
.byte $50, $68, $50, $68, $68, $50, $A8, $C0, $68, $90, $50, $38, $C0, $50, $A8, $50 ; CPU:$F403 PRG:7403 50 68 50 68 68 50 A8 C0 68 90 50 38 C0 50 A8 50
.byte $50, $50, $38, $A8, $50, $38, $A8, $A8, $20, $38, $C0, $20, $A8, $20, $C0, $50 ; CPU:$F413 PRG:7413 50 50 38 A8 50 38 A8 A8 20 38 C0 20 A8 20 C0 50
.byte $C0, $A8, $C0, $38, $38, $C0, $A8, $50, $38, $D8, $38, $A8, $A8, $A8, $50, $50 ; CPU:$F423 PRG:7423 C0 A8 C0 38 38 C0 A8 50 38 D8 38 A8 A8 A8 50 50
.byte $D8, $90, $50, $90, $D8, $38, $50, $90, $D8, $50, $68, $50, $38, $90, $90, $C0 ; CPU:$F433 PRG:7433 D8 90 50 90 D8 38 50 90 D8 50 68 50 38 90 90 C0
.byte $68, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 ; CPU:$F443 PRG:7443 68 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
.byte $00, $E0, $18, $18, $18, $E0, $18, $E0, $E0, $E0, $E0, $E0, $E0, $18, $18, $18 ; CPU:$F453 PRG:7453 00 E0 18 18 18 E0 18 E0 E0 E0 E0 E0 E0 18 18 18
.byte $E0, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 ; CPU:$F463 PRG:7463 E0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
.byte $00, $B4, $F4, $B5, $F4, $B5, $F4, $B5, $F4, $B5, $F4, $B5, $F4, $B5, $F4, $B5 ; CPU:$F473 PRG:7473 00 B4 F4 B5 F4 B5 F4 B5 F4 B5 F4 B5 F4 B5 F4 B5
.byte $F4, $B5, $F4, $B5, $F4, $B5, $F4, $B5, $F4, $B5, $F4, $B5, $F4, $B5, $F4, $B5 ; CPU:$F483 PRG:7483 F4 B5 F4 B5 F4 B5 F4 B5 F4 B5 F4 B5 F4 B5 F4 B5
.byte $F4, $B5, $F4, $B5, $F4, $B5, $F4, $B5, $F4, $B5, $F4, $B5, $F4, $B5, $F4, $B5 ; CPU:$F493 PRG:7493 F4 B5 F4 B5 F4 B5 F4 B5 F4 B5 F4 B5 F4 B5 F4 B5
.byte $F4, $BA, $F4, $BB, $F4, $BB, $F4, $BB, $F4, $BB, $F4, $BB, $F4, $BB, $F4, $BE ; CPU:$F4A3 PRG:74A3 F4 BA F4 BB F4 BB F4 BB F4 BB F4 BB F4 BB F4 BE
.byte $F4, $FF, $38, $50, $A8, $C0, $FF, $FF, $18, $E0, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F4B3 PRG:74B3 F4 FF 38 50 A8 C0 FF FF 18 E0 FF FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F4C3 PRG:74C3 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:$F4D3 PRG:74D3 FF FF FF FF FF FF FF FF
; -----------------------------------------------------------------------------
; Routine: Label_F4DB
; Global: Branch target inside Label: taken when F4DB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_F4DB:
lda #$00 ; CPU:$F4DB PRG:74DB A9 00
sta $06E6 ; CPU:$F4DD PRG:74DD 8D E6 06
lda #$68 ; CPU:$F4E0 PRG:74E0 A9 68
sta Zp70 ; CPU:$F4E2 PRG:74E2 85 70
lda #$97 ; CPU:$F4E4 PRG:74E4 A9 97
sta Zp6F ; CPU:$F4E6 PRG:74E6 85 6F
ldx #$01 ; CPU:$F4E8 PRG:74E8 A2 01
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero95
; Global: Branch target inside Label: taken when F4EA.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero95:
lda #$00 ; CPU:$F4EA PRG:74EA A9 00
sta ZpB7,x ; CPU:$F4EC PRG:74EC 95 B7
lda Zp70 ; CPU:$F4EE PRG:74EE A5 70
sta ZpC8,x ; CPU:$F4F0 PRG:74F0 95 C8
clc ; CPU:$F4F2 PRG:74F2 18
adc #$0A ; CPU:$F4F3 PRG:74F3 69 0A
sta Zp70 ; CPU:$F4F5 PRG:74F5 85 70
lda Zp6F ; CPU:$F4F7 PRG:74F7 A5 6F
sta $0390,x ; CPU:$F4F9 PRG:74F9 9D 90 03
lda #$40 ; CPU:$F4FC PRG:74FC A9 40
sta $0336,x ; CPU:$F4FE PRG:74FE 9D 36 03
lda #$88 ; CPU:$F501 PRG:7501 A9 88
sta $0303,x ; CPU:$F503 PRG:7503 9D 03 03
lda #$08 ; CPU:$F506 PRG:7506 A9 08
sta Zp73 ; CPU:$F508 PRG:7508 85 73
lda #$F6 ; CPU:$F50A PRG:750A A9 F6
sta Zp74 ; CPU:$F50C PRG:750C 85 74
jsr Sub_8334 ; CPU:$F50E PRG:750E 20 34 83
inc Zp6F ; CPU:$F511 PRG:7511 E6 6F
inx ; CPU:$F513 PRG:7513 E8
cpx #$06 ; CPU:$F514 PRG:7514 E0 06
bne NmiHandler_OnNonzero95 ; CPU:$F516 PRG:7516 D0 D2
; -----------------------------------------------------------------------------
; Routine: Sub_F518
; Global: Branch target inside Label: taken when F518.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F518:
ldx #$01 ; CPU:$F518 PRG:7518 A2 01
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero96
; Global: Branch target inside Label: taken when F51A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero96:
lda ZpB7,x ; CPU:$F51A PRG:751A B5 B7
bmi NmiHandler_Loop613 ; CPU:$F51C PRG:751C 30 11
lda ZpCF ; CPU:$F51E PRG:751E A5 CF
cmp ZpC8,x ; CPU:$F520 PRG:7520 D5 C8
bcs NmiHandler_Loop614 ; CPU:$F522 PRG:7522 B0 0F
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero97
; Global: Branch target inside Label: taken when F524.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero97:
inx ; CPU:$F524 PRG:7524 E8
cpx #$06 ; CPU:$F525 PRG:7525 E0 06
bne NmiHandler_OnNonzero96 ; CPU:$F527 PRG:7527 D0 F1
jsr Sub_82A3 ; CPU:$F529 PRG:7529 20 A3 82
jmp Sub_F518 ; CPU:$F52C PRG:752C 4C 18 F5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop613
; Global: Branch target inside Label: taken when F52F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop613:
and #$01 ; CPU:$F52F PRG:752F 29 01
bne NmiHandler_OnNonzero97 ; CPU:$F531 PRG:7531 D0 F1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop614
; Global: Branch target inside Label: taken when F533.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop614:
lda $06E6 ; CPU:$F533 PRG:7533 AD E6 06
bne NmiHandler_Loop615 ; CPU:$F536 PRG:7536 D0 0A
lda #$FF ; CPU:$F538 PRG:7538 A9 FF
sta $06E6 ; CPU:$F53A PRG:753A 8D E6 06
lda #$10 ; CPU:$F53D PRG:753D A9 10
jsr Sub_F6DB ; CPU:$F53F PRG:753F 20 DB F6
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop615
; Global: Branch target inside Label: taken when F542.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop615:
lda #$80 ; CPU:$F542 PRG:7542 A9 80
sta ZpB7,x ; CPU:$F544 PRG:7544 95 B7
jsr NmiHandler_Loop17 ; CPU:$F546 PRG:7546 20 62 83
bcc NmiHandler_OnNonzero97 ; CPU:$F549 PRG:7549 90 D9
lda #$81 ; CPU:$F54B PRG:754B A9 81
sta ZpB7,x ; CPU:$F54D PRG:754D 95 B7
lda $0390,x ; CPU:$F54F PRG:754F BD 90 03
sta $0314,x ; CPU:$F552 PRG:7552 9D 14 03
bne NmiHandler_OnNonzero97 ; CPU:$F555 PRG:7555 D0 CD
lda #$68 ; CPU:$F557 PRG:7557 A9 68
sta Zp70 ; CPU:$F559 PRG:7559 85 70
ldx #$08 ; CPU:$F55B PRG:755B A2 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero98
; Global: Branch target inside Label: taken when F55D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero98:
lda #$00 ; CPU:$F55D PRG:755D A9 00
sta ZpB7,x ; CPU:$F55F PRG:755F 95 B7
lda Zp70 ; CPU:$F561 PRG:7561 A5 70
sta ZpC8,x ; CPU:$F563 PRG:7563 95 C8
clc ; CPU:$F565 PRG:7565 18
adc #$0A ; CPU:$F566 PRG:7566 69 0A
sta Zp70 ; CPU:$F568 PRG:7568 85 70
lda #$8D ; CPU:$F56A PRG:756A A9 8D
sta $0390,x ; CPU:$F56C PRG:756C 9D 90 03
lda #$40 ; CPU:$F56F PRG:756F A9 40
sta $0336,x ; CPU:$F571 PRG:7571 9D 36 03
lda #$92 ; CPU:$F574 PRG:7574 A9 92
sta $0303,x ; CPU:$F576 PRG:7576 9D 03 03
lda #$08 ; CPU:$F579 PRG:7579 A9 08
sta Zp73 ; CPU:$F57B PRG:757B 85 73
lda #$F6 ; CPU:$F57D PRG:757D A9 F6
sta Zp74 ; CPU:$F57F PRG:757F 85 74
jsr Sub_8334 ; CPU:$F581 PRG:7581 20 34 83
inx ; CPU:$F584 PRG:7584 E8
cpx #$0D ; CPU:$F585 PRG:7585 E0 0D
bne NmiHandler_OnNonzero98 ; CPU:$F587 PRG:7587 D0 D4
lda $058E ; CPU:$F589 PRG:7589 AD 8E 05
clc ; CPU:$F58C PRG:758C 18
adc #$01 ; CPU:$F58D PRG:758D 69 01
ldy #$00 ; CPU:$F58F PRG:758F A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero99
; Global: Branch target inside Label: taken when F591.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero99:
sec ; CPU:$F591 PRG:7591 38
sbc #$0A ; CPU:$F592 PRG:7592 E9 0A
bcc NmiHandler_Loop616 ; CPU:$F594 PRG:7594 90 03
iny ; CPU:$F596 PRG:7596 C8
bne NmiHandler_OnNonzero99 ; CPU:$F597 PRG:7597 D0 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop616
; Global: Branch target inside Label: taken when F599.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop616:
adc #$0A ; CPU:$F599 PRG:7599 69 0A
clc ; CPU:$F59B PRG:759B 18
adc #$8D ; CPU:$F59C PRG:759C 69 8D
sta $0399 ; CPU:$F59E PRG:759E 8D 99 03
tya ; CPU:$F5A1 PRG:75A1 98
beq NmiHandler_Loop617 ; CPU:$F5A2 PRG:75A2 F0 02
lda #$0F ; CPU:$F5A4 PRG:75A4 A9 0F
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop617
; Global: Branch target inside Label: taken when F5A6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop617:
clc ; CPU:$F5A6 PRG:75A6 18
adc #$8D ; CPU:$F5A7 PRG:75A7 69 8D
sta $0398 ; CPU:$F5A9 PRG:75A9 8D 98 03
; -----------------------------------------------------------------------------
; Routine: Sub_F5AC
; Global: Branch target inside Label: taken when F5AC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F5AC:
ldx #$08 ; CPU:$F5AC PRG:75AC A2 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero100
; Global: Branch target inside Label: taken when F5AE.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero100:
lda ZpB7,x ; CPU:$F5AE PRG:75AE B5 B7
bmi NmiHandler_Loop618 ; CPU:$F5B0 PRG:75B0 30 11
lda ZpCF ; CPU:$F5B2 PRG:75B2 A5 CF
cmp ZpC8,x ; CPU:$F5B4 PRG:75B4 D5 C8
bcs NmiHandler_Loop619 ; CPU:$F5B6 PRG:75B6 B0 0F
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero101
; Global: Branch target inside Label: taken when F5B8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero101:
inx ; CPU:$F5B8 PRG:75B8 E8
cpx #$0D ; CPU:$F5B9 PRG:75B9 E0 0D
bne NmiHandler_OnNonzero100 ; CPU:$F5BB PRG:75BB D0 F1
jsr Sub_82A3 ; CPU:$F5BD PRG:75BD 20 A3 82
jmp Sub_F5AC ; CPU:$F5C0 PRG:75C0 4C AC F5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop618
; Global: Branch target inside Label: taken when F5C3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop618:
and #$01 ; CPU:$F5C3 PRG:75C3 29 01
bne NmiHandler_OnNonzero101 ; CPU:$F5C5 PRG:75C5 D0 F1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop619
; Global: Branch target inside Label: taken when F5C7.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop619:
lda #$80 ; CPU:$F5C7 PRG:75C7 A9 80
sta ZpB7,x ; CPU:$F5C9 PRG:75C9 95 B7
jsr NmiHandler_Loop17 ; CPU:$F5CB PRG:75CB 20 62 83
bcc NmiHandler_OnNonzero101 ; CPU:$F5CE PRG:75CE 90 E8
lda #$81 ; CPU:$F5D0 PRG:75D0 A9 81
sta ZpB7,x ; CPU:$F5D2 PRG:75D2 95 B7
lda $0390,x ; CPU:$F5D4 PRG:75D4 BD 90 03
sta $0314,x ; CPU:$F5D7 PRG:75D7 9D 14 03
bne NmiHandler_OnNonzero101 ; CPU:$F5DA PRG:75DA D0 DC
ldx #$00 ; CPU:$F5DC PRG:75DC A2 00
lda #$80 ; CPU:$F5DE PRG:75DE A9 80
sta ZpB7,x ; CPU:$F5E0 PRG:75E0 95 B7
lda #$3A ; CPU:$F5E2 PRG:75E2 A9 3A
sta Zp73 ; CPU:$F5E4 PRG:75E4 85 73
lda #$F6 ; CPU:$F5E6 PRG:75E6 A9 F6
sta Zp74 ; CPU:$F5E8 PRG:75E8 85 74
jsr Sub_8334 ; CPU:$F5EA PRG:75EA 20 34 83
; -----------------------------------------------------------------------------
; Routine: Sub_F5ED
; Global: Branch target inside Label: taken when F5ED.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F5ED:
lda $030A ; CPU:$F5ED PRG:75ED AD 0A 03
sta $0303,x ; CPU:$F5F0 PRG:75F0 9D 03 03
lda ZpCF ; CPU:$F5F3 PRG:75F3 A5 CF
sta ZpC8,x ; CPU:$F5F5 PRG:75F5 95 C8
cmp #$D0 ; CPU:$F5F7 PRG:75F7 C9 D0
bcs NmiHandler_Loop620 ; CPU:$F5F9 PRG:75F9 B0 06
jsr NmiHandler_Loop17 ; CPU:$F5FB PRG:75FB 20 62 83
jmp Sub_F5ED ; CPU:$F5FE PRG:75FE 4C ED F5
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop620
; Global: Branch target inside Label: taken when F601.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop620:
lda #$00 ; CPU:$F601 PRG:7601 A9 00
sta ZpB7,x ; CPU:$F603 PRG:7603 95 B7
jsr Sub_8266 ; CPU:$F605 PRG:7605 20 66 82
ora (Zp6E,x) ; CPU:$F608 PRG:7608 01 6E
ora (Zp6F,x) ; CPU:$F60A PRG:760A 01 6F
ora (Zp70,x) ; CPU:$F60C PRG:760C 01 70
ora (Zp71,x) ; CPU:$F60E PRG:760E 01 71
ora (Zp72,x) ; CPU:$F610 PRG:7610 01 72
ora (Zp73,x) ; CPU:$F612 PRG:7612 01 73
ora (Zp74,x) ; CPU:$F614 PRG:7614 01 74
ora (Zp75,x) ; CPU:$F616 PRG:7616 01 75
ora (Zp6E,x) ; CPU:$F618 PRG:7618 01 6E
ora (Zp6F,x) ; CPU:$F61A PRG:761A 01 6F
ora (Zp70,x) ; CPU:$F61C PRG:761C 01 70
ora (Zp71,x) ; CPU:$F61E PRG:761E 01 71
ora (Zp72,x) ; CPU:$F620 PRG:7620 01 72
ora (Zp73,x) ; CPU:$F622 PRG:7622 01 73
ora (Zp74,x) ; CPU:$F624 PRG:7624 01 74
ora (Zp75,x) ; CPU:$F626 PRG:7626 01 75
ora (Zp6E,x) ; CPU:$F628 PRG:7628 01 6E
ora (Zp6F,x) ; CPU:$F62A PRG:762A 01 6F
ora (Zp70,x) ; CPU:$F62C PRG:762C 01 70
ora (Zp71,x) ; CPU:$F62E PRG:762E 01 71
ora (Zp72,x) ; CPU:$F630 PRG:7630 01 72
ora (Zp73,x) ; CPU:$F632 PRG:7632 01 73
ora (Zp74,x) ; CPU:$F634 PRG:7634 01 74
ora (Zp75,x) ; CPU:$F636 PRG:7636 01 75
ora (ZpFF,x) ; CPU:$F638 PRG:7638 01 FF
brk ; CPU:$F63A PRG:763A 00
; ---- data $F63B-$F64D (19 bytes) ----
.byte $58, $01, $59, $01, $5A, $01, $59, $01, $5A, $01, $5A, $01, $5B, $01, $5A, $01 ; CPU:$F63B PRG:763B 58 01 59 01 5A 01 59 01 5A 01 5A 01 5B 01 5A 01
.byte $59, $01, $FF ; CPU:$F64B PRG:764B 59 01 FF
; -----------------------------------------------------------------------------
; Routine: Sub_F64E
; Global: Branch target inside Label: taken when F64E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F64E:
lda #$98 ; CPU:$F64E PRG:764E A9 98
sta ZpA7 ; CPU:$F650 PRG:7650 85 A7
lda #$06 ; CPU:$F652 PRG:7652 A9 06
sta ZpA8 ; CPU:$F654 PRG:7654 85 A8
lda #$9E ; CPU:$F656 PRG:7656 A9 9E
sta ZpA9 ; CPU:$F658 PRG:7658 85 A9
lda #$06 ; CPU:$F65A PRG:765A A9 06
sta ZpAA ; CPU:$F65C PRG:765C 85 AA
lda $FAB3 ; CPU:$F65E PRG:765E AD B3 FA
sta ZpAB ; CPU:$F661 PRG:7661 85 AB
lda $FAB4 ; CPU:$F663 PRG:7663 AD B4 FA
sta ZpAC ; CPU:$F666 PRG:7666 85 AC
lda #$00 ; CPU:$F668 PRG:7668 A9 00
sta ZpAD ; CPU:$F66A PRG:766A 85 AD
lda #$40 ; CPU:$F66C PRG:766C A9 40
sta ZpAE ; CPU:$F66E PRG:766E 85 AE
ldy #$00 ; CPU:$F670 PRG:7670 A0 00
lda #$00 ; CPU:$F672 PRG:7672 A9 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero102
; Global: Branch target inside Label: taken when F674.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero102:
sta (ZpA7),y ; CPU:$F674 PRG:7674 91 A7
iny ; CPU:$F676 PRG:7676 C8
cpy #$06 ; CPU:$F677 PRG:7677 C0 06
bne NmiHandler_OnNonzero102 ; CPU:$F679 PRG:7679 D0 F9
ldy #$00 ; CPU:$F67B PRG:767B A0 00
lda #$06 ; CPU:$F67D PRG:767D A9 06
sta Zp70 ; CPU:$F67F PRG:767F 85 70
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero103
; Global: Branch target inside Label: taken when F681.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero103:
lda #$00 ; CPU:$F681 PRG:7681 A9 00
sta (ZpA9),y ; CPU:$F683 PRG:7683 91 A9
tya ; CPU:$F685 PRG:7685 98
clc ; CPU:$F686 PRG:7686 18
adc #$08 ; CPU:$F687 PRG:7687 69 08
tay ; CPU:$F689 PRG:7689 A8
dec Zp70 ; CPU:$F68A PRG:768A C6 70
bne NmiHandler_OnNonzero103 ; CPU:$F68C PRG:768C D0 F3
lda #$00 ; CPU:$F68E PRG:768E A9 00
sta Zp71 ; CPU:$F690 PRG:7690 85 71
lda #$40 ; CPU:$F692 PRG:7692 A9 40
sta Zp72 ; CPU:$F694 PRG:7694 85 72
lda #$03 ; CPU:$F696 PRG:7696 A9 03
sta Zp70 ; CPU:$F698 PRG:7698 85 70
ldy #$00 ; CPU:$F69A PRG:769A A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero104
; Global: Branch target inside Label: taken when F69C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero104:
lda #$70 ; CPU:$F69C PRG:769C A9 70
sta (Zp71),y ; CPU:$F69E PRG:769E 91 71
iny ; CPU:$F6A0 PRG:76A0 C8
iny ; CPU:$F6A1 PRG:76A1 C8
iny ; CPU:$F6A2 PRG:76A2 C8
iny ; CPU:$F6A3 PRG:76A3 C8
dec Zp70 ; CPU:$F6A4 PRG:76A4 C6 70
bne NmiHandler_OnNonzero104 ; CPU:$F6A6 PRG:76A6 D0 F4
jsr Sub_F6C0 ; CPU:$F6A8 PRG:76A8 20 C0 F6
ldy #$05 ; CPU:$F6AB PRG:76AB A0 05
lda #$FF ; CPU:$F6AD PRG:76AD A9 FF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative19
; Global: Branch target inside Label: taken when F6AF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative19:
sta $06DA,y ; CPU:$F6AF PRG:76AF 99 DA 06
dey ; CPU:$F6B2 PRG:76B2 88
bpl NmiHandler_OnNonnegative19 ; CPU:$F6B3 PRG:76B3 10 FA
ldy #$0B ; CPU:$F6B5 PRG:76B5 A0 0B
lda #$00 ; CPU:$F6B7 PRG:76B7 A9 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative20
; Global: Branch target inside Label: taken when F6B9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative20:
sta $06CE,y ; CPU:$F6B9 PRG:76B9 99 CE 06
dey ; CPU:$F6BC PRG:76BC 88
bpl NmiHandler_OnNonnegative20 ; CPU:$F6BD PRG:76BD 10 FA
rts ; CPU:$F6BF PRG:76BF 60
; -----------------------------------------------------------------------------
; Routine: Sub_F6C0
; Global: Branch target inside Label: taken when F6C0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F6C0:
ldy #$04 ; CPU:$F6C0 PRG:76C0 A0 04
lda #$00 ; CPU:$F6C2 PRG:76C2 A9 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative21
; Global: Branch target inside Label: taken when F6C4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative21:
sta $0693,y ; CPU:$F6C4 PRG:76C4 99 93 06
dey ; CPU:$F6C7 PRG:76C7 88
bpl NmiHandler_OnNonnegative21 ; CPU:$F6C8 PRG:76C8 10 FA
rts ; CPU:$F6CA PRG:76CA 60
; -----------------------------------------------------------------------------
; Routine: Sub_F6CB
; Global: Branch target inside Label: taken when F6CB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F6CB:
ldy #$00 ; CPU:$F6CB PRG:76CB A0 00
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero105
; Global: Branch target inside Label: taken when F6CD.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero105:
cmp $06DA,y ; CPU:$F6CD PRG:76CD D9 DA 06
beq NmiHandler_Loop621 ; CPU:$F6D0 PRG:76D0 F0 07
iny ; CPU:$F6D2 PRG:76D2 C8
cpy #$06 ; CPU:$F6D3 PRG:76D3 C0 06
bne NmiHandler_OnNonzero105 ; CPU:$F6D5 PRG:76D5 D0 F6
clc ; CPU:$F6D7 PRG:76D7 18
rts ; CPU:$F6D8 PRG:76D8 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop621
; Global: Branch target inside Label: taken when F6D9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop621:
sec ; CPU:$F6D9 PRG:76D9 38
rts ; CPU:$F6DA PRG:76DA 60
; -----------------------------------------------------------------------------
; Routine: Sub_F6DB
; Global: Branch target inside Label: taken when F6DB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F6DB:
tay ; CPU:$F6DB PRG:76DB A8
lsr a ; CPU:$F6DC PRG:76DC 4A
lsr a ; CPU:$F6DD PRG:76DD 4A
lsr a ; CPU:$F6DE PRG:76DE 4A
sta Zp70 ; CPU:$F6DF PRG:76DF 85 70
lda #$93 ; CPU:$F6E1 PRG:76E1 A9 93
clc ; CPU:$F6E3 PRG:76E3 18
adc Zp70 ; CPU:$F6E4 PRG:76E4 65 70
sta Zp73 ; CPU:$F6E6 PRG:76E6 85 73
lda #$06 ; CPU:$F6E8 PRG:76E8 A9 06
adc #$00 ; CPU:$F6EA PRG:76EA 69 00
sta Zp74 ; CPU:$F6EC PRG:76EC 85 74
tya ; CPU:$F6EE PRG:76EE 98
and #$07 ; CPU:$F6EF PRG:76EF 29 07
tay ; CPU:$F6F1 PRG:76F1 A8
lda $F6FC,y ; CPU:$F6F2 PRG:76F2 B9 FC F6
ldy #$00 ; CPU:$F6F5 PRG:76F5 A0 00
ora (Zp73),y ; CPU:$F6F7 PRG:76F7 11 73
sta (Zp73),y ; CPU:$F6F9 PRG:76F9 91 73
rts ; CPU:$F6FB PRG:76FB 60
; ---- data $F6FC-$F703 (8 bytes) ----
; referenced by `lda $F6FC,y` at $F6F2 (operand $F6FC falls inside this region)
.byte $01, $02, $04, $08, $10, $20, $40, $80 ; CPU:$F6FC PRG:76FC 01 02 04 08 10 20 40 80
; -----------------------------------------------------------------------------
; Routine: Sub_F704
; Global: Branch target inside Label: taken when F704.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F704:
sta Zp70 ; CPU:$F704 PRG:7704 85 70
jsr Sub_F6CB ; CPU:$F706 PRG:7706 20 CB F6
bcs NmiHandler_Loop622 ; CPU:$F709 PRG:7709 B0 01
rts ; CPU:$F70B PRG:770B 60
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop622
; Global: Branch target inside Label: taken when F70C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop622:
sty Zp70 ; CPU:$F70C PRG:770C 84 70
lda $06DA,y ; CPU:$F70E PRG:770E B9 DA 06
sta Zp6F ; CPU:$F711 PRG:7711 85 6F
lda #$73 ; CPU:$F713 PRG:7713 A9 73
clc ; CPU:$F715 PRG:7715 18
adc Zp6F ; CPU:$F716 PRG:7716 65 6F
sta Zp73 ; CPU:$F718 PRG:7718 85 73
lda #$FA ; CPU:$F71A PRG:771A A9 FA
adc #$00 ; CPU:$F71C PRG:771C 69 00
sta Zp74 ; CPU:$F71E PRG:771E 85 74
ldy #$00 ; CPU:$F720 PRG:7720 A0 00
lda (Zp73),y ; CPU:$F722 PRG:7722 B1 73
sta Zp74 ; CPU:$F724 PRG:7724 85 74
ldy Zp70 ; CPU:$F726 PRG:7726 A4 70
asl Zp70 ; CPU:$F728 PRG:7728 06 70
asl Zp70 ; CPU:$F72A PRG:772A 06 70
asl Zp70 ; CPU:$F72C PRG:772C 06 70
ldy Zp70 ; CPU:$F72E PRG:772E A4 70
lda Zp74 ; CPU:$F730 PRG:7730 A5 74
sta (ZpA9),y ; CPU:$F732 PRG:7732 91 A9
lda #$05 ; CPU:$F734 PRG:7734 A9 05
clc ; CPU:$F736 PRG:7736 18
adc Zp70 ; CPU:$F737 PRG:7737 65 70
tay ; CPU:$F739 PRG:7739 A8
lda #$65 ; CPU:$F73A PRG:773A A9 65
sta (ZpA9),y ; CPU:$F73C PRG:773C 91 A9
iny ; CPU:$F73E PRG:773E C8
lda #$FF ; CPU:$F73F PRG:773F A9 FF
sta (ZpA9),y ; CPU:$F741 PRG:7741 91 A9
rts ; CPU:$F743 PRG:7743 60
; -----------------------------------------------------------------------------
; Routine: Sub_F744
; Global: Branch target inside Label: taken when F744.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F744:
lda #$0C ; CPU:$F744 PRG:7744 A9 0C
sta Zp73 ; CPU:$F746 PRG:7746 85 73
lda #$40 ; CPU:$F748 PRG:7748 A9 40
sta Zp74 ; CPU:$F74A PRG:774A 85 74
ldy #$00 ; CPU:$F74C PRG:774C A0 00
lda #$00 ; CPU:$F74E PRG:774E A9 00
sta (Zp73),y ; CPU:$F750 PRG:7750 91 73
iny ; CPU:$F752 PRG:7752 C8
sta (Zp73),y ; CPU:$F753 PRG:7753 91 73
iny ; CPU:$F755 PRG:7755 C8
sta (Zp73),y ; CPU:$F756 PRG:7756 91 73
iny ; CPU:$F758 PRG:7758 C8
lda #$FF ; CPU:$F759 PRG:7759 A9 FF
sta (Zp73),y ; CPU:$F75B PRG:775B 91 73
rts ; CPU:$F75D PRG:775D 60
; -----------------------------------------------------------------------------
; Routine: Sub_F75E
; Global: Branch target inside Label: taken when F75E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F75E:
lda $0693 ; CPU:$F75E PRG:775E AD 93 06
sta ZpAF ; CPU:$F761 PRG:7761 85 AF
lda $0694 ; CPU:$F763 PRG:7763 AD 94 06
sta ZpB0 ; CPU:$F766 PRG:7766 85 B0
lda $0695 ; CPU:$F768 PRG:7768 AD 95 06
sta ZpB1 ; CPU:$F76B PRG:776B 85 B1
lda $0696 ; CPU:$F76D PRG:776D AD 96 06
sta ZpB2 ; CPU:$F770 PRG:7770 85 B2
lda $0697 ; CPU:$F772 PRG:7772 AD 97 06
sta ZpB3 ; CPU:$F775 PRG:7775 85 B3
lda #$28 ; CPU:$F777 PRG:7777 A9 28
sta Zp85 ; CPU:$F779 PRG:7779 85 85
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero106
; Global: Branch target inside Label: taken when F77B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero106:
lsr ZpB3 ; CPU:$F77B PRG:777B 46 B3
ror ZpB2 ; CPU:$F77D PRG:777D 66 B2
ror ZpB1 ; CPU:$F77F PRG:777F 66 B1
ror ZpB0 ; CPU:$F781 PRG:7781 66 B0
ror ZpAF ; CPU:$F783 PRG:7783 66 AF
bcs NmiHandler_Loop623 ; CPU:$F785 PRG:7785 B0 0A
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero20
; Global: Branch target inside Label: taken when F787.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero20:
dec Zp85 ; CPU:$F787 PRG:7787 C6 85
bne NmiHandler_OnNonzero106 ; CPU:$F789 PRG:7789 D0 F0
jsr Sub_F6C0 ; CPU:$F78B PRG:778B 20 C0 F6
jmp Sub_F800 ; CPU:$F78E PRG:778E 4C 00 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop623
; Global: Branch target inside Label: taken when F791.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop623:
lda #$28 ; CPU:$F791 PRG:7791 A9 28
sec ; CPU:$F793 PRG:7793 38
sbc Zp85 ; CPU:$F794 PRG:7794 E5 85
sta Zp87 ; CPU:$F796 PRG:7796 85 87
ldy #$05 ; CPU:$F798 PRG:7798 A0 05
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonnegative22
; Global: Branch target inside Label: taken when F79A.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonnegative22:
cmp $06DA,y ; CPU:$F79A PRG:779A D9 DA 06
beq NmiHandler_OnZero20 ; CPU:$F79D PRG:779D F0 E8
dey ; CPU:$F79F PRG:779F 88
bpl NmiHandler_OnNonnegative22 ; CPU:$F7A0 PRG:77A0 10 F8
ldy #$00 ; CPU:$F7A2 PRG:77A2 A0 00
lda #$FF ; CPU:$F7A4 PRG:77A4 A9 FF
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero107
; Global: Branch target inside Label: taken when F7A6.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero107:
cmp $06DA,y ; CPU:$F7A6 PRG:77A6 D9 DA 06
beq NmiHandler_Loop625 ; CPU:$F7A9 PRG:77A9 F0 1D
iny ; CPU:$F7AB PRG:77AB C8
cpy #$06 ; CPU:$F7AC PRG:77AC C0 06
bne NmiHandler_OnNonzero107 ; CPU:$F7AE PRG:77AE D0 F6
ldy #$00 ; CPU:$F7B0 PRG:77B0 A0 00
lda Zp87 ; CPU:$F7B2 PRG:77B2 A5 87
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero108
; Global: Branch target inside Label: taken when F7B4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero108:
cmp $06DA,y ; CPU:$F7B4 PRG:77B4 D9 DA 06
bcc NmiHandler_Loop624 ; CPU:$F7B7 PRG:77B7 90 08
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnCarryClear43
; Global: Branch target inside Label: taken when F7B9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnCarryClear43:
iny ; CPU:$F7B9 PRG:77B9 C8
cpy #$06 ; CPU:$F7BA PRG:77BA C0 06
bne NmiHandler_OnNonzero108 ; CPU:$F7BC PRG:77BC D0 F6
jmp NmiHandler_OnZero20 ; CPU:$F7BE PRG:77BE 4C 87 F7
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop624
; Global: Branch target inside Label: taken when F7C1.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop624:
lda $06DA,y ; CPU:$F7C1 PRG:77C1 B9 DA 06
cmp #$1C ; CPU:$F7C4 PRG:77C4 C9 1C
bcc NmiHandler_OnCarryClear43 ; CPU:$F7C6 PRG:77C6 90 F1
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop625
; Global: Branch target inside Label: taken when F7C8.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop625:
lda Zp87 ; CPU:$F7C8 PRG:77C8 A5 87
sta $06DA,y ; CPU:$F7CA PRG:77CA 99 DA 06
sta Zp87 ; CPU:$F7CD PRG:77CD 85 87
lda #$01 ; CPU:$F7CF PRG:77CF A9 01
sta $0698,y ; CPU:$F7D1 PRG:77D1 99 98 06
tya ; CPU:$F7D4 PRG:77D4 98
asl a ; CPU:$F7D5 PRG:77D5 0A
sta ZpB4 ; CPU:$F7D6 PRG:77D6 85 B4
asl a ; CPU:$F7D8 PRG:77D8 0A
asl a ; CPU:$F7D9 PRG:77D9 0A
tay ; CPU:$F7DA PRG:77DA A8
lda #$00 ; CPU:$F7DB PRG:77DB A9 00
sta (ZpA9),y ; CPU:$F7DD PRG:77DD 91 A9
lda Zp87 ; CPU:$F7DF PRG:77DF A5 87
clc ; CPU:$F7E1 PRG:77E1 18
adc Zp87 ; CPU:$F7E2 PRG:77E2 65 87
tay ; CPU:$F7E4 PRG:77E4 A8
lda $FAB5,y ; CPU:$F7E5 PRG:77E5 B9 B5 FA
sta Zp82 ; CPU:$F7E8 PRG:77E8 85 82
iny ; CPU:$F7EA PRG:77EA C8
lda $FAB5,y ; CPU:$F7EB PRG:77EB B9 B5 FA
sta Zp83 ; CPU:$F7EE PRG:77EE 85 83
ldy ZpB4 ; CPU:$F7F0 PRG:77F0 A4 B4
lda Zp82 ; CPU:$F7F2 PRG:77F2 A5 82
sta $06CE,y ; CPU:$F7F4 PRG:77F4 99 CE 06
iny ; CPU:$F7F7 PRG:77F7 C8
lda Zp83 ; CPU:$F7F8 PRG:77F8 A5 83
sta $06CE,y ; CPU:$F7FA PRG:77FA 99 CE 06
jmp NmiHandler_OnZero20 ; CPU:$F7FD PRG:77FD 4C 87 F7
; -----------------------------------------------------------------------------
; Routine: Sub_F800
; Global: Branch target inside Label: taken when F800.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F800:
lda #$00 ; CPU:$F800 PRG:7800 A9 00
sta ZpAF ; CPU:$F802 PRG:7802 85 AF
sta ZpB0 ; CPU:$F804 PRG:7804 85 B0
sta ZpB1 ; CPU:$F806 PRG:7806 85 B1
sta ZpB2 ; CPU:$F808 PRG:7808 85 B2
sta ZpB4 ; CPU:$F80A PRG:780A 85 B4
sta ZpB6 ; CPU:$F80C PRG:780C 85 B6
lda #$AF ; CPU:$F80E PRG:780E A9 AF
sta ZpB5 ; CPU:$F810 PRG:7810 85 B5
lda #$00 ; CPU:$F812 PRG:7812 A9 00
sta Zp87 ; CPU:$F814 PRG:7814 85 87
sta Zp86 ; CPU:$F816 PRG:7816 85 86
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnZero21
; Global: Branch target inside Label: taken when F818.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnZero21:
lda Zp87 ; CPU:$F818 PRG:7818 A5 87
cmp #$27 ; CPU:$F81A PRG:781A C9 27
beq NmiHandler_Loop630 ; CPU:$F81C PRG:781C F0 6F
lda Zp86 ; CPU:$F81E PRG:781E A5 86
cmp #$06 ; CPU:$F820 PRG:7820 C9 06
beq NmiHandler_Loop627 ; CPU:$F822 PRG:7822 F0 12
ldy Zp86 ; CPU:$F824 PRG:7824 A4 86
lda $06DA,y ; CPU:$F826 PRG:7826 B9 DA 06
cmp #$FF ; CPU:$F829 PRG:7829 C9 FF
beq NmiHandler_Loop626 ; CPU:$F82B PRG:782B F0 04
cmp Zp87 ; CPU:$F82D PRG:782D C5 87
beq NmiHandler_Loop628 ; CPU:$F82F PRG:782F F0 0E
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop626
; Global: Branch target inside Label: taken when F831.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop626:
inc Zp86 ; CPU:$F831 PRG:7831 E6 86
jmp NmiHandler_OnZero21 ; CPU:$F833 PRG:7833 4C 18 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop627
; Global: Branch target inside Label: taken when F836.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop627:
lda #$00 ; CPU:$F836 PRG:7836 A9 00
sta Zp86 ; CPU:$F838 PRG:7838 85 86
inc Zp87 ; CPU:$F83A PRG:783A E6 87
jmp NmiHandler_OnZero21 ; CPU:$F83C PRG:783C 4C 18 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop628
; Global: Branch target inside Label: taken when F83F.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop628:
tya ; CPU:$F83F PRG:783F 98
asl a ; CPU:$F840 PRG:7840 0A
asl a ; CPU:$F841 PRG:7841 0A
asl a ; CPU:$F842 PRG:7842 0A
sta ZpB4 ; CPU:$F843 PRG:7843 85 B4
inc Zp86 ; CPU:$F845 PRG:7845 E6 86
inc Zp87 ; CPU:$F847 PRG:7847 E6 87
ldy ZpB4 ; CPU:$F849 PRG:7849 A4 B4
lda (ZpA9),y ; CPU:$F84B PRG:784B B1 A9
beq NmiHandler_OnZero21 ; CPU:$F84D PRG:784D F0 C9
cmp #$05 ; CPU:$F84F PRG:784F C9 05
bcc NmiHandler_Loop629 ; CPU:$F851 PRG:7851 90 0B
sec ; CPU:$F853 PRG:7853 38
sbc #$05 ; CPU:$F854 PRG:7854 E9 05
tay ; CPU:$F856 PRG:7856 A8
lda #$01 ; CPU:$F857 PRG:7857 A9 01
sta (ZpB5),y ; CPU:$F859 PRG:7859 91 B5
jmp NmiHandler_OnZero21 ; CPU:$F85B PRG:785B 4C 18 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop629
; Global: Branch target inside Label: taken when F85E.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop629:
sec ; CPU:$F85E PRG:785E 38
sbc #$01 ; CPU:$F85F PRG:785F E9 01
tay ; CPU:$F861 PRG:7861 A8
lda (ZpB5),y ; CPU:$F862 PRG:7862 B1 B5
bne NmiHandler_OnZero21 ; CPU:$F864 PRG:7864 D0 B2
lda #$01 ; CPU:$F866 PRG:7866 A9 01
sta (ZpB5),y ; CPU:$F868 PRG:7868 91 B5
tya ; CPU:$F86A PRG:786A 98
tax ; CPU:$F86B PRG:786B AA
clc ; CPU:$F86C PRG:786C 18
adc #$05 ; CPU:$F86D PRG:786D 69 05
ldy ZpB4 ; CPU:$F86F PRG:786F A4 B4
sta (ZpA9),y ; CPU:$F871 PRG:7871 91 A9
txa ; CPU:$F873 PRG:7873 8A
asl a ; CPU:$F874 PRG:7874 0A
asl a ; CPU:$F875 PRG:7875 0A
sta ZpAD ; CPU:$F876 PRG:7876 85 AD
ldx #$00 ; CPU:$F878 PRG:7878 A2 00
lda #$04 ; CPU:$F87A PRG:787A A9 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero109
; Global: Branch target inside Label: taken when F87C.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero109:
pha ; CPU:$F87C PRG:787C 48
iny ; CPU:$F87D PRG:787D C8
lda (ZpA9),y ; CPU:$F87E PRG:787E B1 A9
sta (ZpAD,x) ; CPU:$F880 PRG:7880 81 AD
inc ZpAD ; CPU:$F882 PRG:7882 E6 AD
pla ; CPU:$F884 PRG:7884 68
sec ; CPU:$F885 PRG:7885 38
sbc #$01 ; CPU:$F886 PRG:7886 E9 01
bne NmiHandler_OnNonzero109 ; CPU:$F888 PRG:7888 D0 F2
jmp NmiHandler_OnZero21 ; CPU:$F88A PRG:788A 4C 18 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop630
; Global: Branch target inside Label: taken when F88D.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop630:
ldy #$00 ; CPU:$F88D PRG:788D A0 00
sty ZpB3 ; CPU:$F88F PRG:788F 84 B3
sty ZpB4 ; CPU:$F891 PRG:7891 84 B4
; -----------------------------------------------------------------------------
; Routine: Sub_F893
; Global: Branch target inside Label: taken when F893.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F893:
lda $0683 ; CPU:$F893 PRG:7893 AD 83 06
beq NmiHandler_Loop631 ; CPU:$F896 PRG:7896 F0 03
jmp NmiHandler_Loop639 ; CPU:$F898 PRG:7898 4C 30 F9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop631
; Global: Branch target inside Label: taken when F89B.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop631:
ldy ZpB3 ; CPU:$F89B PRG:789B A4 B3
lda (ZpA7),y ; CPU:$F89D PRG:789D B1 A7
bne NmiHandler_Loop632 ; CPU:$F89F PRG:789F D0 03
jmp NmiHandler_Loop639 ; CPU:$F8A1 PRG:78A1 4C 30 F9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop632
; Global: Branch target inside Label: taken when F8A4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop632:
ldy ZpB4 ; CPU:$F8A4 PRG:78A4 A4 B4
lda (ZpA9),y ; CPU:$F8A6 PRG:78A6 B1 A9
bne NmiHandler_Loop633 ; CPU:$F8A8 PRG:78A8 D0 06
jsr Sub_FA20 ; CPU:$F8AA PRG:78AA 20 20 FA
jmp Sub_F8BF ; CPU:$F8AD PRG:78AD 4C BF F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop633
; Global: Branch target inside Label: taken when F8B0.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop633:
lda ZpB4 ; CPU:$F8B0 PRG:78B0 A5 B4
clc ; CPU:$F8B2 PRG:78B2 18
adc #$07 ; CPU:$F8B3 PRG:78B3 69 07
tay ; CPU:$F8B5 PRG:78B5 A8
lda (ZpA9),y ; CPU:$F8B6 PRG:78B6 B1 A9
sec ; CPU:$F8B8 PRG:78B8 38
sbc #$01 ; CPU:$F8B9 PRG:78B9 E9 01
sta (ZpA9),y ; CPU:$F8BB PRG:78BB 91 A9
bne NmiHandler_Loop639 ; CPU:$F8BD PRG:78BD D0 71
; -----------------------------------------------------------------------------
; Routine: Sub_F8BF
; Global: Branch target inside Label: taken when F8BF.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F8BF:
jsr Sub_F9FB ; CPU:$F8BF PRG:78BF 20 FB F9
cmp #$F0 ; CPU:$F8C2 PRG:78C2 C9 F0
bcc NmiHandler_Loop634 ; CPU:$F8C4 PRG:78C4 90 03
jmp Sub_F945 ; CPU:$F8C6 PRG:78C6 4C 45 F9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop634
; Global: Branch target inside Label: taken when F8C9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop634:
cmp #$C0 ; CPU:$F8C9 PRG:78C9 C9 C0
bcs NmiHandler_Loop638 ; CPU:$F8CB PRG:78CB B0 56
pha ; CPU:$F8CD PRG:78CD 48
ldy ZpB4 ; CPU:$F8CE PRG:78CE A4 B4
lda (ZpA9),y ; CPU:$F8D0 PRG:78D0 B1 A9
cmp #$05 ; CPU:$F8D2 PRG:78D2 C9 05
bcc NmiHandler_Loop635 ; CPU:$F8D4 PRG:78D4 90 03
sec ; CPU:$F8D6 PRG:78D6 38
sbc #$04 ; CPU:$F8D7 PRG:78D7 E9 04
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop635
; Global: Branch target inside Label: taken when F8D9.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop635:
cmp #$04 ; CPU:$F8D9 PRG:78D9 C9 04
bne NmiHandler_Loop636 ; CPU:$F8DB PRG:78DB D0 07
pla ; CPU:$F8DD PRG:78DD 68
iny ; CPU:$F8DE PRG:78DE C8
iny ; CPU:$F8DF PRG:78DF C8
iny ; CPU:$F8E0 PRG:78E0 C8
jmp Sub_F914 ; CPU:$F8E1 PRG:78E1 4C 14 F9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop636
; Global: Branch target inside Label: taken when F8E4.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop636:
pla ; CPU:$F8E4 PRG:78E4 68
pha ; CPU:$F8E5 PRG:78E5 48
and #$F0 ; CPU:$F8E6 PRG:78E6 29 F0
lsr a ; CPU:$F8E8 PRG:78E8 4A
lsr a ; CPU:$F8E9 PRG:78E9 4A
lsr a ; CPU:$F8EA PRG:78EA 4A
tax ; CPU:$F8EB PRG:78EB AA
lda $FA9B,x ; CPU:$F8EC PRG:78EC BD 9B FA
sta ZpB5 ; CPU:$F8EF PRG:78EF 85 B5
lda $FA9C,x ; CPU:$F8F1 PRG:78F1 BD 9C FA
sta ZpB6 ; CPU:$F8F4 PRG:78F4 85 B6
pla ; CPU:$F8F6 PRG:78F6 68
and #$0F ; CPU:$F8F7 PRG:78F7 29 0F
beq NmiHandler_Loop637 ; CPU:$F8F9 PRG:78F9 F0 08
tax ; CPU:$F8FB PRG:78FB AA
; -----------------------------------------------------------------------------
; Routine: NmiHandler_OnNonzero110
; Global: Branch target inside Label: taken when F8FC.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_OnNonzero110:
lsr ZpB5 ; CPU:$F8FC PRG:78FC 46 B5
ror ZpB6 ; CPU:$F8FE PRG:78FE 66 B6
dex ; CPU:$F900 PRG:7900 CA
bne NmiHandler_OnNonzero110 ; CPU:$F901 PRG:7901 D0 F9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop637
; Global: Branch target inside Label: taken when F903.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop637:
lda ZpB4 ; CPU:$F903 PRG:7903 A5 B4
clc ; CPU:$F905 PRG:7905 18
adc #$04 ; CPU:$F906 PRG:7906 69 04
tay ; CPU:$F908 PRG:7908 A8
lda (ZpA9),y ; CPU:$F909 PRG:7909 B1 A9
and #$F8 ; CPU:$F90B PRG:790B 29 F8
ora ZpB5 ; CPU:$F90D PRG:790D 05 B5
sta (ZpA9),y ; CPU:$F90F PRG:790F 91 A9
lda ZpB6 ; CPU:$F911 PRG:7911 A5 B6
dey ; CPU:$F913 PRG:7913 88
; -----------------------------------------------------------------------------
; Routine: Sub_F914
; Global: Branch target inside Label: taken when F914.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F914:
sta (ZpA9),y ; CPU:$F914 PRG:7914 91 A9
ldy ZpB4 ; CPU:$F916 PRG:7916 A4 B4
lda (ZpA9),y ; CPU:$F918 PRG:7918 B1 A9
cmp #$05 ; CPU:$F91A PRG:791A C9 05
bcc NmiHandler_Loop638 ; CPU:$F91C PRG:791C 90 05
sec ; CPU:$F91E PRG:791E 38
sbc #$04 ; CPU:$F91F PRG:791F E9 04
sta (ZpA9),y ; CPU:$F921 PRG:7921 91 A9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop638
; Global: Branch target inside Label: taken when F923.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop638:
jsr Sub_F9FB ; CPU:$F923 PRG:7923 20 FB F9
pha ; CPU:$F926 PRG:7926 48
lda ZpB4 ; CPU:$F927 PRG:7927 A5 B4
clc ; CPU:$F929 PRG:7929 18
adc #$07 ; CPU:$F92A PRG:792A 69 07
tay ; CPU:$F92C PRG:792C A8
pla ; CPU:$F92D PRG:792D 68
sta (ZpA9),y ; CPU:$F92E PRG:792E 91 A9
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop639
; Global: Branch target inside Label: taken when F930.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop639:
lda ZpB4 ; CPU:$F930 PRG:7930 A5 B4
clc ; CPU:$F932 PRG:7932 18
adc #$08 ; CPU:$F933 PRG:7933 69 08
sta ZpB4 ; CPU:$F935 PRG:7935 85 B4
lda ZpB3 ; CPU:$F937 PRG:7937 A5 B3
adc #$01 ; CPU:$F939 PRG:7939 69 01
sta ZpB3 ; CPU:$F93B PRG:793B 85 B3
cmp #$06 ; CPU:$F93D PRG:793D C9 06
bcs NmiHandler_Loop640 ; CPU:$F93F PRG:793F B0 03
jmp Sub_F893 ; CPU:$F941 PRG:7941 4C 93 F8
; -----------------------------------------------------------------------------
; Routine: NmiHandler_Loop640
; Global: Branch target inside Label: taken when F944.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
NmiHandler_Loop640:
rts ; CPU:$F944 PRG:7944 60
; -----------------------------------------------------------------------------
; Routine: Sub_F945
; Global: Branch target inside Label: taken when F945.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F945:
and #$0F ; CPU:$F945 PRG:7945 29 0F
asl a ; CPU:$F947 PRG:7947 0A
tax ; CPU:$F948 PRG:7948 AA
lda $F956,x ; CPU:$F949 PRG:7949 BD 56 F9
sta ZpB5 ; CPU:$F94C PRG:794C 85 B5
lda $F957,x ; CPU:$F94E PRG:794E BD 57 F9
sta ZpB6 ; CPU:$F951 PRG:7951 85 B6
jmp (ZpB5) ; CPU:$F953 PRG:7953 6C B5 00
; ---- data $F956-$F975 (32 bytes) ----
; referenced by `lda $F956,x` at $F949 (operand $F956 falls inside this region)
; referenced by `lda $F957,x` at $F94E (operand $F957 falls inside this region)
.byte $76, $F9, $C3, $F9, $82, $F9, $82, $F9, $EB, $F9, $82, $F9, $DB, $F9, $82, $F9 ; CPU:$F956 PRG:7956 76 F9 C3 F9 82 F9 82 F9 EB F9 82 F9 DB F9 82 F9
.byte $82, $F9, $82, $F9, $82, $F9, $82, $F9, $82, $F9, $82, $F9, $82, $F9, $82, $F9 ; CPU:$F966 PRG:7966 82 F9 82 F9 82 F9 82 F9 82 F9 82 F9 82 F9 82 F9
; -----------------------------------------------------------------------------
; Routine: Label_F976
; Global: Branch target inside Label: taken when F976.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_F976:
ldy ZpB4 ; CPU:$F976 PRG:7976 A4 B4
lda #$00 ; CPU:$F978 PRG:7978 A9 00
sta (ZpA9),y ; CPU:$F97A PRG:797A 91 A9
jsr Sub_FA20 ; CPU:$F97C PRG:797C 20 20 FA
jmp Sub_F8BF ; CPU:$F97F PRG:797F 4C BF F8
; ---- data $F982-$F9C2 (65 bytes) ----
.byte $A4, $B3, $A9, $00, $91, $A7, $A4, $B4, $91, $A9, $A4, $B3, $B9, $DA, $06, $A8 ; CPU:$F982 PRG:7982 A4 B3 A9 00 91 A7 A4 B4 91 A9 A4 B3 B9 DA 06 A8
.byte $4A, $4A, $4A, $85, $85, $A9, $93, $18, $65, $85, $85, $82, $A9, $06, $69, $00 ; CPU:$F992 PRG:7992 4A 4A 4A 85 85 A9 93 18 65 85 85 82 A9 06 69 00
.byte $85, $83, $98, $29, $07, $A8, $B9, $BB, $F9, $A0, $00, $31, $82, $91, $82, $A4 ; CPU:$F9A2 PRG:79A2 85 83 98 29 07 A8 B9 BB F9 A0 00 31 82 91 82 A4
.byte $B3, $A9, $FF, $99, $DA, $06, $4C, $30, $F9, $FE, $FD, $FB, $F7, $EF, $DF, $BF ; CPU:$F9B2 PRG:79B2 B3 A9 FF 99 DA 06 4C 30 F9 FE FD FB F7 EF DF BF
.byte $7F ; CPU:$F9C2 PRG:79C2 7F
; -----------------------------------------------------------------------------
; Routine: Label_F9C3
; Global: Branch target inside Label: taken when F9C3.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Label_F9C3:
jsr Sub_F9FB ; CPU:$F9C3 PRG:79C3 20 FB F9
pha ; CPU:$F9C6 PRG:79C6 48
lda ZpB4 ; CPU:$F9C7 PRG:79C7 A5 B4
clc ; CPU:$F9C9 PRG:79C9 18
adc #$01 ; CPU:$F9CA PRG:79CA 69 01
tay ; CPU:$F9CC PRG:79CC A8
lda (ZpA9),y ; CPU:$F9CD PRG:79CD B1 A9
and #$3F ; CPU:$F9CF PRG:79CF 29 3F
sta (ZpA9),y ; CPU:$F9D1 PRG:79D1 91 A9
pla ; CPU:$F9D3 PRG:79D3 68
ora (ZpA9),y ; CPU:$F9D4 PRG:79D4 11 A9
sta (ZpA9),y ; CPU:$F9D6 PRG:79D6 91 A9
jmp Sub_F8BF ; CPU:$F9D8 PRG:79D8 4C BF F8
; ---- data $F9DB-$F9FA (32 bytes) ----
.byte $20, $FB, $F9, $48, $A5, $B4, $18, $69, $01, $A8, $68, $91, $A9, $4C, $BF, $F8 ; CPU:$F9DB PRG:79DB 20 FB F9 48 A5 B4 18 69 01 A8 68 91 A9 4C BF F8
.byte $20, $FB, $F9, $48, $A5, $B4, $18, $69, $02, $A8, $68, $91, $A9, $4C, $BF, $F8 ; CPU:$F9EB PRG:79EB 20 FB F9 48 A5 B4 18 69 02 A8 68 91 A9 4C BF F8
; -----------------------------------------------------------------------------
; Routine: Sub_F9FB
; Global: Branch target inside Label: taken when F9FB.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_F9FB:
lda ZpB4 ; CPU:$F9FB PRG:79FB A5 B4
clc ; CPU:$F9FD PRG:79FD 18
adc #$05 ; CPU:$F9FE PRG:79FE 69 05
tay ; CPU:$FA00 PRG:7A00 A8
lda (ZpA9),y ; CPU:$FA01 PRG:7A01 B1 A9
sta ZpB5 ; CPU:$FA03 PRG:7A03 85 B5
iny ; CPU:$FA05 PRG:7A05 C8
lda (ZpA9),y ; CPU:$FA06 PRG:7A06 B1 A9
sta ZpB6 ; CPU:$FA08 PRG:7A08 85 B6
ldx #$00 ; CPU:$FA0A PRG:7A0A A2 00
lda (ZpB5,x) ; CPU:$FA0C PRG:7A0C A1 B5
pha ; CPU:$FA0E PRG:7A0E 48
lda ZpB5 ; CPU:$FA0F PRG:7A0F A5 B5
dey ; CPU:$FA11 PRG:7A11 88
clc ; CPU:$FA12 PRG:7A12 18
adc #$01 ; CPU:$FA13 PRG:7A13 69 01
sta (ZpA9),y ; CPU:$FA15 PRG:7A15 91 A9
lda ZpB6 ; CPU:$FA17 PRG:7A17 A5 B6
adc #$00 ; CPU:$FA19 PRG:7A19 69 00
iny ; CPU:$FA1B PRG:7A1B C8
sta (ZpA9),y ; CPU:$FA1C PRG:7A1C 91 A9
pla ; CPU:$FA1E PRG:7A1E 68
rts ; CPU:$FA1F PRG:7A1F 60
; -----------------------------------------------------------------------------
; Routine: Sub_FA20
; Global: Branch target inside Label: taken when FA20.
; Local: Part of Label.
; Parameters: none - the routine reads its state from the zero page.
; Returns: none - the result is left in the registers the caller reads.
; Clobbers: A, X, Y and the zero-page scratch it uses.
; -----------------------------------------------------------------------------
Sub_FA20:
lda ZpB3 ; CPU:$FA20 PRG:7A20 A5 B3
asl a ; CPU:$FA22 PRG:7A22 0A
tay ; CPU:$FA23 PRG:7A23 A8
lda (ZpAB),y ; CPU:$FA24 PRG:7A24 B1 AB
pha ; CPU:$FA26 PRG:7A26 48
lda ZpB4 ; CPU:$FA27 PRG:7A27 A5 B4
adc #$05 ; CPU:$FA29 PRG:7A29 69 05
tay ; CPU:$FA2B PRG:7A2B A8
pla ; CPU:$FA2C PRG:7A2C 68
sta (ZpA9),y ; CPU:$FA2D PRG:7A2D 91 A9
lda ZpB3 ; CPU:$FA2F PRG:7A2F A5 B3
asl a ; CPU:$FA31 PRG:7A31 0A
adc #$01 ; CPU:$FA32 PRG:7A32 69 01
tay ; CPU:$FA34 PRG:7A34 A8
lda (ZpAB),y ; CPU:$FA35 PRG:7A35 B1 AB
pha ; CPU:$FA37 PRG:7A37 48
lda ZpB4 ; CPU:$FA38 PRG:7A38 A5 B4
adc #$06 ; CPU:$FA3A PRG:7A3A 69 06
tay ; CPU:$FA3C PRG:7A3C A8
pla ; CPU:$FA3D PRG:7A3D 68
sta (ZpA9),y ; CPU:$FA3E PRG:7A3E 91 A9
jsr Sub_F9FB ; CPU:$FA40 PRG:7A40 20 FB F9
ldy ZpB4 ; CPU:$FA43 PRG:7A43 A4 B4
sta (ZpA9),y ; CPU:$FA45 PRG:7A45 91 A9
jsr Sub_F9FB ; CPU:$FA47 PRG:7A47 20 FB F9
tax ; CPU:$FA4A PRG:7A4A AA
lda ZpB4 ; CPU:$FA4B PRG:7A4B A5 B4
clc ; CPU:$FA4D PRG:7A4D 18
adc #$01 ; CPU:$FA4E PRG:7A4E 69 01
tay ; CPU:$FA50 PRG:7A50 A8
txa ; CPU:$FA51 PRG:7A51 8A
sta (ZpA9),y ; CPU:$FA52 PRG:7A52 91 A9
jsr Sub_F9FB ; CPU:$FA54 PRG:7A54 20 FB F9
tax ; CPU:$FA57 PRG:7A57 AA
lda ZpB4 ; CPU:$FA58 PRG:7A58 A5 B4
clc ; CPU:$FA5A PRG:7A5A 18
adc #$02 ; CPU:$FA5B PRG:7A5B 69 02
tay ; CPU:$FA5D PRG:7A5D A8
txa ; CPU:$FA5E PRG:7A5E 8A
sta (ZpA9),y ; CPU:$FA5F PRG:7A5F 91 A9
jsr Sub_F9FB ; CPU:$FA61 PRG:7A61 20 FB F9
tax ; CPU:$FA64 PRG:7A64 AA
lda ZpB4 ; CPU:$FA65 PRG:7A65 A5 B4
clc ; CPU:$FA67 PRG:7A67 18
adc #$04 ; CPU:$FA68 PRG:7A68 69 04
tay ; CPU:$FA6A PRG:7A6A A8
txa ; CPU:$FA6B PRG:7A6B 8A
sta (ZpA9),y ; CPU:$FA6C PRG:7A6C 91 A9
ldy ZpB4 ; CPU:$FA6E PRG:7A6E A4 B4
lda (ZpA9),y ; CPU:$FA70 PRG:7A70 B1 A9
rts ; CPU:$FA72 PRG:7A72 60
; ---- data $FA73-$FFFF (1421 bytes) ----
; referenced by `isc $FFFF,x` at $B50D (operand $FFFF falls inside this region)
; referenced by `isc $FFFF,x` at $B595 (operand $FFFF falls inside this region)
; referenced by `lda $FF6A,y` at $BFDE (operand $FF6A falls inside this region)
; referenced by `lda $FF6A,y` at $BFEA (operand $FF6A falls inside this region)
; referenced by `lda $FAB3` at $F65E (operand $FAB3 falls inside this region)
; referenced by `lda $FAB4` at $F663 (operand $FAB4 falls inside this region)
; ... and 4 further references from decoded code
.byte $01, $02, $03, $01, $01, $02, $01, $02, $01, $02, $04, $01, $02, $01, $02, $03 ; CPU:$FA73 PRG:7A73 01 02 03 01 01 02 01 02 01 02 04 01 02 01 02 03
.byte $01, $02, $04, $01, $01, $02, $03, $03, $01, $01, $01, $02, $02, $03, $02, $02 ; CPU:$FA83 PRG:7A83 01 02 04 01 01 02 03 03 01 01 01 02 02 03 02 02
.byte $03, $04, $02, $03, $03, $04, $03, $02, $03, $F9, $03, $C0, $03, $8A, $03, $57 ; CPU:$FA93 PRG:7A93 03 04 02 03 03 04 03 02 03 F9 03 C0 03 8A 03 57
.byte $03, $27, $02, $FA, $02, $CF, $02, $A7, $02, $81, $02, $5D, $02, $3B, $02, $1B ; CPU:$FAA3 PRG:7AA3 03 27 02 FA 02 CF 02 A7 02 81 02 5D 02 3B 02 1B
.byte $CE, $06, $07, $FB, $10, $FB, $19, $FB, $22, $FB, $3B, $FB, $4E, $FB, $61, $FB ; CPU:$FAB3 PRG:7AB3 CE 06 07 FB 10 FB 19 FB 22 FB 3B FB 4E FB 61 FB
.byte $6A, $FB, $6F, $FB, $7C, $FB, $A1, $FB, $A8, $FB, $B3, $FB, $BE, $FB, $03, $FC ; CPU:$FAC3 PRG:7AC3 6A FB 6F FB 7C FB A1 FB A8 FB B3 FB BE FB 03 FC
.byte $4A, $FC, $5D, $FC, $72, $FC, $8D, $FC, $94, $FC, $C5, $FC, $CC, $FC, $D3, $FC ; CPU:$FAD3 PRG:7AD3 4A FC 5D FC 72 FC 8D FC 94 FC C5 FC CC FC D3 FC
.byte $DA, $FC, $DA, $FC, $8B, $FD, $8B, $FD, $C2, $FD, $D7, $FD, $E8, $FD, $F9, $FD ; CPU:$FAE3 PRG:7AE3 DA FC DA FC 8B FD 8B FD C2 FD D7 FD E8 FD F9 FD
.byte $0C, $FE, $33, $FE, $5A, $FE, $61, $FE, $74, $FE, $AD, $FE, $B4, $FE, $BB, $FE ; CPU:$FAF3 PRG:7AF3 0C FE 33 FE 5A FE 61 FE 74 FE AD FE B4 FE BB FE
.byte $C6, $FE, $65, $FF, $01, $70, $7F, $58, $F6, $70, $00, $01, $FF, $02, $70, $7F ; CPU:$FB03 PRG:7B03 C6 FE 65 FF 01 70 7F 58 F6 70 00 01 FF 02 70 7F
.byte $58, $F6, $70, $00, $01, $FF, $03, $70, $7F, $58, $F6, $70, $00, $01, $FF, $01 ; CPU:$FB13 PRG:7B13 58 F6 70 00 01 FF 03 70 7F 58 F6 70 00 01 FF 01
.byte $6F, $01, $04, $71, $04, $22, $04, $62, $03, $03, $04, $71, $04, $22, $04, $62 ; CPU:$FB23 PRG:7B23 6F 01 04 71 04 22 04 62 03 03 04 71 04 22 04 62
.byte $03, $03, $04, $F6, $70, $03, $01, $FF, $01, $6F, $01, $04, $30, $10, $C0, $20 ; CPU:$FB33 PRG:7B33 03 03 04 F6 70 03 01 FF 01 6F 01 04 30 10 C0 20
.byte $30, $10, $C0, $20, $30, $10, $F6, $70, $30, $01, $FF, $02, $6F, $01, $04, $00 ; CPU:$FB43 PRG:7B43 30 10 C0 20 30 10 F6 70 30 01 FF 02 6F 01 04 00
.byte $10, $C0, $20, $00, $10, $C0, $20, $00, $10, $F6, $70, $00, $01, $FF, $01, $4F ; CPU:$FB53 PRG:7B53 10 C0 20 00 10 C0 20 00 10 F6 70 00 01 FF 01 4F
.byte $A7, $57, $52, $08, $42, $08, $F0, $02, $4F, $A7, $57, $FF, $01, $7F, $1F, $58 ; CPU:$FB63 PRG:7B63 A7 57 52 08 42 08 F0 02 4F A7 57 FF 01 7F 1F 58
.byte $52, $08, $42, $20, $F6, $70, $42, $01, $FF, $02, $7F, $1F, $58, $F6, $78, $51 ; CPU:$FB73 PRG:7B73 52 08 42 20 F6 70 42 01 FF 02 7F 1F 58 F6 78 51
.byte $08, $51, $08, $F6, $76, $41, $08, $41, $08, $F6, $74, $31, $08, $31, $08, $F6 ; CPU:$FB83 PRG:7B83 08 51 08 F6 76 41 08 41 08 F6 74 31 08 31 08 F6
.byte $72, $21, $08, $21, $08, $11, $08, $11, $08, $F6, $70, $11, $01, $FF, $04, $0F ; CPU:$FB93 PRG:7B93 72 21 08 21 08 11 08 11 08 F6 70 11 01 FF 04 0F
.byte $FF, $FF, $06, $01, $FF, $01, $03, $0F, $01, $B2, $20, $F6, $70, $42, $01, $FF ; CPU:$FBA3 PRG:7BA3 FF FF 06 01 FF 01 03 0F 01 B2 20 F6 70 42 01 FF
.byte $02, $03, $01, $0F, $04, $20, $F6, $70, $B2, $01, $FF, $01, $4F, $A7, $57, $F6 ; CPU:$FBB3 PRG:7BB3 02 03 01 0F 04 20 F6 70 B2 01 FF 01 4F A7 57 F6
.byte $4F, $B2, $04, $B2, $08, $F6, $45, $A2, $04, $A2, $08, $F6, $4F, $92, $04, $92 ; CPU:$FBC3 PRG:7BC3 4F B2 04 B2 08 F6 45 A2 04 A2 08 F6 4F 92 04 92
.byte $08, $F6, $45, $82, $04, $82, $08, $F6, $4F, $72, $04, $72, $08, $F6, $45, $62 ; CPU:$FBD3 PRG:7BD3 08 F6 45 82 04 82 08 F6 4F 72 04 72 08 F6 45 62
.byte $04, $62, $08, $F6, $4F, $52, $04, $52, $08, $F6, $45, $42, $04, $42, $08, $F6 ; CPU:$FBE3 PRG:7BE3 04 62 08 F6 4F 52 04 52 08 F6 45 42 04 42 08 F6
.byte $4F, $32, $04, $32, $08, $F6, $45, $22, $04, $22, $0C, $F6, $70, $22, $01, $FF ; CPU:$FBF3 PRG:7BF3 4F 32 04 32 08 F6 45 22 04 22 0C F6 70 22 01 FF
.byte $02, $4F, $A7, $57, $C0, $04, $F6, $4F, $03, $04, $C0, $08, $F6, $45, $B2, $04 ; CPU:$FC03 PRG:7C03 02 4F A7 57 C0 04 F6 4F 03 04 C0 08 F6 45 B2 04
.byte $C0, $08, $F6, $4F, $A2, $04, $C0, $08, $F6, $45, $92, $04, $C0, $08, $F6, $4F ; CPU:$FC13 PRG:7C13 C0 08 F6 4F A2 04 C0 08 F6 45 92 04 C0 08 F6 4F
.byte $82, $04, $C0, $08, $F6, $45, $72, $04, $C0, $08, $F6, $4F, $62, $04, $C0, $08 ; CPU:$FC23 PRG:7C23 82 04 C0 08 F6 45 72 04 C0 08 F6 4F 62 04 C0 08
.byte $F6, $45, $52, $04, $C0, $08, $F6, $4F, $42, $04, $C0, $08, $F6, $45, $32, $04 ; CPU:$FC33 PRG:7C33 F6 45 52 04 C0 08 F6 4F 42 04 C0 08 F6 45 32 04
.byte $C0, $08, $F6, $70, $32, $01, $FF, $03, $7F, $8F, $58, $F1, $10, $03, $04, $03 ; CPU:$FC43 PRG:7C43 C0 08 F6 70 32 01 FF 03 7F 8F 58 F1 10 03 04 03
.byte $04, $03, $08, $03, $0C, $F6, $70, $03, $01, $FF, $01, $7F, $7F, $58, $25, $03 ; CPU:$FC53 PRG:7C53 04 03 08 03 0C F6 70 03 01 FF 01 7F 7F 58 25 03
.byte $96, $03, $B4, $03, $96, $03, $74, $03, $96, $03, $25, $03, $96, $03, $F0, $02 ; CPU:$FC63 PRG:7C63 96 03 B4 03 96 03 74 03 96 03 25 03 96 03 F0 02
.byte $78, $8F, $58, $20, $0C, $20, $0C, $20, $08, $20, $08, $20, $08, $C0, $10, $20 ; CPU:$FC73 PRG:7C73 78 8F 58 20 0C 20 0C 20 08 20 08 20 08 C0 10 20
.byte $08, $20, $08, $C0, $10, $F6, $70, $20, $01, $FF, $04, $BF, $FF, $FF, $0F, $01 ; CPU:$FC83 PRG:7C83 08 20 08 C0 10 F6 70 20 01 FF 04 BF FF FF 0F 01
.byte $FF, $01, $9F, $7F, $58, $11, $08, $01, $08, $11, $08, $01, $08, $21, $08, $11 ; CPU:$FC93 PRG:7C93 FF 01 9F 7F 58 11 08 01 08 11 08 01 08 21 08 11
.byte $08, $21, $08, $11, $08, $31, $08, $21, $08, $31, $08, $21, $08, $61, $04, $91 ; CPU:$FCA3 PRG:7CA3 08 21 08 11 08 31 08 21 08 31 08 21 08 61 04 91
.byte $04, $B1, $04, $22, $04, $24, $04, $27, $04, $2A, $04, $24, $0A, $F6, $70, $24 ; CPU:$FCB3 PRG:7CB3 04 B1 04 22 04 24 04 27 04 2A 04 24 0A F6 70 24
.byte $01, $FF, $01, $7F, $1F, $58, $82, $01, $F0, $02, $7F, $1F, $58, $83, $01, $F0 ; CPU:$FCC3 PRG:7CC3 01 FF 01 7F 1F 58 82 01 F0 02 7F 1F 58 83 01 F0
.byte $03, $7F, $1F, $58, $84, $01, $F0, $01, $06, $1F, $56, $71, $0F, $71, $0F, $C0 ; CPU:$FCD3 PRG:7CD3 03 7F 1F 58 84 01 F0 01 06 1F 56 71 0F 71 0F C0
.byte $0F, $B1, $1E, $22, $1E, $42, $0F, $52, $0F, $42, $0F, $22, $0F, $12, $0F, $22 ; CPU:$FCE3 PRG:7CE3 0F B1 1E 22 1E 42 0F 52 0F 42 0F 22 0F 12 0F 22
.byte $2D, $71, $0F, $71, $0F, $71, $0F, $C0, $0F, $B1, $1E, $22, $1E, $42, $0F, $52 ; CPU:$FCF3 PRG:7CF3 2D 71 0F 71 0F 71 0F C0 0F B1 1E 22 1E 42 0F 52
.byte $0F, $42, $0F, $22, $0F, $B1, $0F, $71, $2D, $C0, $0F, $71, $0F, $71, $0F, $C0 ; CPU:$FD03 PRG:7D03 0F 42 0F 22 0F B1 0F 71 2D C0 0F 71 0F 71 0F C0
.byte $0F, $B1, $1E, $22, $1E, $42, $0F, $52, $0F, $42, $0F, $22, $0F, $12, $0F, $22 ; CPU:$FD13 PRG:7D13 0F B1 1E 22 1E 42 0F 52 0F 42 0F 22 0F 12 0F 22
.byte $2D, $71, $0F, $71, $0F, $71, $0F, $C0, $0F, $B1, $1E, $22, $1E, $42, $0F, $52 ; CPU:$FD23 PRG:7D23 2D 71 0F 71 0F 71 0F C0 0F B1 1E 22 1E 42 0F 52
.byte $0F, $42, $0F, $22, $0F, $B1, $0F, $71, $1E, $41, $0A, $71, $0A, $91, $0A, $A1 ; CPU:$FD33 PRG:7D33 0F 42 0F 22 0F B1 0F 71 1E 41 0A 71 0A 91 0A A1
.byte $17, $B1, $08, $A1, $17, $B1, $08, $22, $17, $02, $08, $B1, $17, $71, $08, $B1 ; CPU:$FD43 PRG:7D43 17 B1 08 A1 17 B1 08 22 17 02 08 B1 17 71 08 B1
.byte $17, $02, $08, $B1, $17, $22, $08, $22, $17, $22, $08, $22, $0A, $42, $0A, $62 ; CPU:$FD53 PRG:7D53 17 02 08 B1 17 22 08 22 17 22 08 22 0A 42 0A 62
.byte $0A, $72, $1E, $B2, $1E, $03, $14, $B2, $0A, $72, $14, $22, $0A, $72, $0A, $52 ; CPU:$FD63 PRG:7D63 0A 72 1E B2 1E 03 14 B2 0A 72 14 22 0A 72 0A 52
.byte $0A, $22, $0A, $62, $14, $F6, $7F, $F4, $1F, $72, $0A, $F6, $7A, $72, $1E, $F6 ; CPU:$FD73 PRG:7D73 0A 22 0A 62 14 F6 7F F4 1F 72 0A F6 7A 72 1E F6
.byte $75, $72, $1E, $F6, $71, $72, $1E, $F0, $01, $9F, $7F, $58, $74, $08, $74, $08 ; CPU:$FD83 PRG:7D83 75 72 1E F6 71 72 1E F0 01 9F 7F 58 74 08 74 08
.byte $84, $0A, $25, $08, $25, $08, $04, $08, $14, $08, $04, $08, $14, $08, $24, $08 ; CPU:$FD93 PRG:7D93 84 0A 25 08 25 08 04 08 14 08 04 08 14 08 24 08
.byte $34, $08, $24, $08, $34, $08, $44, $04, $54, $04, $64, $04, $74, $04, $84, $04 ; CPU:$FDA3 PRG:7DA3 34 08 24 08 34 08 44 04 54 04 64 04 74 04 84 04
.byte $94, $04, $A4, $04, $B4, $04, $C0, $10, $35, $06, $F6, $70, $35, $01, $FF, $02 ; CPU:$FDB3 PRG:7DB3 94 04 A4 04 B4 04 C0 10 35 06 F6 70 35 01 FF 02
.byte $47, $A7, $57, $42, $0C, $72, $0C, $92, $0C, $42, $0C, $72, $0C, $92, $0C, $F6 ; CPU:$FDC3 PRG:7DC3 47 A7 57 42 0C 72 0C 92 0C 42 0C 72 0C 92 0C F6
.byte $70, $92, $01, $FF, $02, $03, $0F, $40, $A2, $08, $A2, $08, $A2, $10, $A2, $10 ; CPU:$FDD3 PRG:7DD3 70 92 01 FF 02 03 0F 40 A2 08 A2 08 A2 10 A2 10
.byte $F6, $70, $A2, $01, $FF, $03, $0F, $05, $24, $52, $08, $52, $08, $52, $10, $52 ; CPU:$FDE3 PRG:7DE3 F6 70 A2 01 FF 03 0F 05 24 52 08 52 08 52 10 52
.byte $10, $F6, $70, $52, $01, $FF, $02, $9F, $7F, $58, $71, $06, $81, $06, $71, $06 ; CPU:$FDF3 PRG:7DF3 10 F6 70 52 01 FF 02 9F 7F 58 71 06 81 06 71 06
.byte $81, $06, $71, $06, $F6, $70, $00, $01, $FF, $02, $7F, $7F, $58, $76, $01, $55 ; CPU:$FE03 PRG:7E03 81 06 71 06 F6 70 00 01 FF 02 7F 7F 58 76 01 55
.byte $01, $64, $01, $35, $01, $46, $01, $0F, $01, $18, $01, $B5, $01, $04, $01, $95 ; CPU:$FE13 PRG:7E13 01 64 01 35 01 46 01 0F 01 18 01 B5 01 04 01 95
.byte $01, $A6, $01, $76, $01, $55, $01, $B5, $01, $18, $01, $66, $01, $77, $03, $FF ; CPU:$FE23 PRG:7E23 01 A6 01 76 01 55 01 B5 01 18 01 66 01 77 03 FF
.byte $03, $7F, $7F, $58, $45, $01, $37, $01, $65, $01, $57, $01, $84, $01, $75, $01 ; CPU:$FE33 PRG:7E33 03 7F 7F 58 45 01 37 01 65 01 57 01 84 01 75 01
.byte $A6, $01, $95, $01, $04, $01, $B5, $01, $24, $01, $15, $01, $46, $01, $35, $01 ; CPU:$FE43 PRG:7E43 A6 01 95 01 04 01 B5 01 24 01 15 01 46 01 35 01
.byte $64, $01, $55, $01, $77, $03, $FF, $04, $04, $FF, $FF, $08, $01, $FF, $02, $9F ; CPU:$FE53 PRG:7E53 64 01 55 01 77 03 FF 04 04 FF FF 08 01 FF 02 9F
.byte $7F, $58, $03, $04, $03, $04, $03, $04, $23, $0C, $13, $04, $F6, $70, $13, $01 ; CPU:$FE63 PRG:7E63 7F 58 03 04 03 04 03 04 23 0C 13 04 F6 70 13 01
.byte $FF, $03, $7F, $8F, $58, $02, $08, $03, $08, $02, $08, $03, $08, $02, $08, $03 ; CPU:$FE73 PRG:7E73 FF 03 7F 8F 58 02 08 03 08 02 08 03 08 02 08 03
.byte $08, $02, $06, $03, $06, $02, $06, $03, $06, $02, $06, $03, $06, $02, $04, $03 ; CPU:$FE83 PRG:7E83 08 02 06 03 06 02 06 03 06 02 06 03 06 02 04 03
.byte $04, $02, $04, $03, $04, $02, $04, $03, $04, $02, $02, $03, $02, $02, $02, $03 ; CPU:$FE93 PRG:7E93 04 02 04 03 04 02 04 03 04 02 02 03 02 02 02 03
.byte $02, $02, $02, $03, $02, $F6, $70, $01, $01, $FF, $03, $6F, $BF, $58, $80, $01 ; CPU:$FEA3 PRG:7EA3 02 02 02 03 02 F6 70 01 01 FF 03 6F BF 58 80 01
.byte $F0, $04, $04, $FF, $FF, $0F, $01, $FF, $03, $1F, $8F, $2F, $03, $06, $F6, $70 ; CPU:$FEB3 PRG:7EB3 F0 04 04 FF FF 0F 01 FF 03 1F 8F 2F 03 06 F6 70
.byte $03, $01, $FF, $02, $12, $1F, $56, $70, $0F, $70, $0F, $C0, $0F, $C0, $1E, $42 ; CPU:$FEC3 PRG:7EC3 03 01 FF 02 12 1F 56 70 0F 70 0F C0 0F C0 1E 42
.byte $1E, $22, $0F, $42, $0F, $22, $0F, $B1, $0F, $91, $0F, $71, $0F, $41, $0F, $21 ; CPU:$FED3 PRG:7ED3 1E 22 0F 42 0F 22 0F B1 0F 91 0F 71 0F 41 0F 21
.byte $1E, $70, $0F, $70, $0F, $C0, $0F, $C0, $1E, $42, $1E, $22, $0F, $42, $0F, $22 ; CPU:$FEE3 PRG:7EE3 1E 70 0F 70 0F C0 0F C0 1E 42 1E 22 0F 42 0F 22
.byte $0F, $B1, $0F, $91, $0F, $71, $0A, $41, $0A, $71, $1E, $21, $0F, $70, $0F, $70 ; CPU:$FEF3 PRG:7EF3 0F B1 0F 91 0F 71 0A 41 0A 71 1E 21 0F 70 0F 70
.byte $0F, $C0, $0F, $C0, $1E, $42, $1E, $22, $0F, $42, $0F, $22, $0F, $B1, $0F, $91 ; CPU:$FF03 PRG:7F03 0F C0 0F C0 1E 42 1E 22 0F 42 0F 22 0F B1 0F 91
.byte $0F, $71, $0F, $41, $0F, $21, $1E, $70, $0F, $70, $0F, $C0, $0F, $C0, $1E, $42 ; CPU:$FF13 PRG:7F13 0F 71 0F 41 0F 21 1E 70 0F 70 0F C0 0F C0 1E 42
.byte $1E, $22, $0F, $42, $0F, $22, $0F, $B1, $0F, $91, $0F, $71, $1E, $41, $0A, $71 ; CPU:$FF23 PRG:7F23 1E 22 0F 42 0F 22 0F B1 0F 91 0F 71 1E 41 0A 71
.byte $0A, $21, $0A, $70, $1E, $B0, $1E, $21, $1E, $41, $1E, $70, $1E, $B0, $1E, $21 ; CPU:$FF33 PRG:7F33 0A 21 0A 70 1E B0 1E 21 1E 41 1E 70 1E B0 1E 21
.byte $1E, $21, $14, $41, $0A, $71, $78, $70, $0A, $71, $0A, $21, $0A, $61, $14, $F6 ; CPU:$FF43 PRG:7F43 1E 21 14 41 0A 71 78 70 0A 71 0A 21 0A 61 14 F6
.byte $12, $F4, $1F, $21, $0A, $F6, $12, $21, $1E, $F6, $11, $21, $1E, $F6, $11, $21 ; CPU:$FF53 PRG:7F53 12 F4 1F 21 0A F6 12 21 1E F6 11 21 1E F6 11 21
.byte $1E, $F0, $F6, $70, $01, $01, $FF, $2B, $00, $0E, $01, $09, $00, $17, $04, $05 ; CPU:$FF63 PRG:7F63 1E F0 F6 70 01 01 FF 2B 00 0E 01 09 00 17 04 05
.byte $44, $04, $04, $05, $44, $26, $04, $03, $44, $04, $04, $03, $44, $57, $04, $1B ; CPU:$FF73 PRG:7F73 44 04 04 05 44 26 04 03 44 04 04 03 44 57 04 1B
.byte $00, $2D, $02, $09, $00, $06, $01, $23, $00, $3C, $02, $08, $00, $0D, $04, $33 ; CPU:$FF83 PRG:7F83 00 2D 02 09 00 06 01 23 00 3C 02 08 00 0D 04 33
.byte $00, $6C, $01, $0B, $00, $09, $04, $3A, $00, $20, $01, $0B, $00, $0A, $04, $3E ; CPU:$FF93 PRG:7F93 00 6C 01 0B 00 09 04 3A 00 20 01 0B 00 0A 04 3E
.byte $00, $10, $02, $2C, $00, $1C, $01, $0A, $00, $10, $02, $08, $00, $06, $04, $9D ; CPU:$FFA3 PRG:7FA3 00 10 02 2C 00 1C 01 0A 00 10 02 08 00 06 04 9D
.byte $00, $06, $01, $0E, $00, $05, $40, $10, $00, $05, $08, $07, $00, $05, $02, $06 ; CPU:$FFB3 PRG:7FB3 00 06 01 0E 00 05 40 10 00 05 08 07 00 05 02 06
.byte $82, $0B, $02, $13, $00, $04, $40, $09, $00, $05, $40, $11, $00, $04, $02, $0F ; CPU:$FFC3 PRG:7FC3 82 0B 02 13 00 04 40 09 00 05 40 11 00 04 02 0F
.byte $00, $00, $00, $00, $00, $00, $00, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFD3 PRG:7FD3 00 00 00 00 00 00 00 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:$FFE3 PRG:7FE3 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
.byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $81, $80, $00, $80, $00, $80 ; CPU:$FFF3 PRG:7FF3 FF FF FF FF FF FF FF 81 80 00 80 00 80