; Mermaids of Atlantis (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. ; ; The PRG image is bank switched, so every bank is traced separately and is ; given the CPU window it is visible at. Labels carry a bank prefix when two ; banks share a window. ; ; Pass 1 trace provenance: ; Code/data split taken from a Mesen Code Data Logger capture; the ; instruction boundaries and control flow come from the recursive tracer, ; seeded at every entry the CDL observed. ; ; ---- bank at file $0000-$1FFF, CPU $8000-$9FFF ---- ; 68 CDL code runs, 2468 bytes of code, 1184 instructions ; 5 CDL code runs not reached by the tracer (left as data): $008F, $011C, $0606, $0A5F, $17C8 ; indirect dispatch through zero page (not followed statically): ; jmp ($0011) at $8185 ; ; ---- bank at file $2000-$3FFF, CPU $A000-$BFFF ---- ; 21 CDL code runs, 921 bytes of code, 456 instructions ; ; ---- bank at file $4000-$5FFF, CPU $C000-$DFFF ---- ; 80 CDL code runs, 3364 bytes of code, 1643 instructions ; 4 CDL code runs not reached by the tracer (left as data): $42BF, $440A, $4531, $4FFD ; ; ---- bank at file $6000-$7FFF, CPU $E000-$FFFF ---- ; 8 CDL code runs, 119 bytes of code, 57 instructions ; ; ---- bank at file $8000-$9FFF, CPU $8000-$9FFF, label prefix 'Bank4' ---- ; 9 CDL code runs, 212 bytes of code, 102 instructions ; ; ---- bank at file $A000-$BFFF, CPU $A000-$BFFF, label prefix 'Bank5' ---- ; 13 CDL code runs, 985 bytes of code, 469 instructions ; ; ---- bank at file $C000-$DFFF, CPU $C000-$DFFF, label prefix 'Bank6' ---- ; 0 CDL code runs, 0 bytes of code, 0 instructions ; ; ---- bank at file $E000-$FFFF, CPU $E000-$FFFF, label prefix 'Bank7' ---- ; 1 CDL code runs, 6 bytes of code, 3 instructions .setcpu "6502" .include "symbols.inc" .include "locals.inc" .segment "PRG0" .org $8000 ; ---- data $8000-$8003 (4 bytes) ---- .byte $EA, $EA, $86, $2C ; CPU:$8000 PRG:0000 EA EA 86 2C ; ----------------------------------------------------------------------------- ; Routine: BankedCall ; Global: Switches the PRG bank and dispatches to the handler the caller named. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- BankedCall: sta HandlerIndex ; CPU:$8004 PRG:0004 85 2D lda PrgBankNumber ; CPU:$8006 PRG:0006 A5 2C ora #$08 ; CPU:$8008 PRG:0008 09 08 jsr SelectPrgBankByIndex ; CPU:$800A PRG:000A 20 1B 80 jsr Sub_8025 ; CPU:$800D PRG:000D 20 25 80 lda PrgBankNumber ; CPU:$8010 PRG:0010 A5 2C ora #$08 ; CPU:$8012 PRG:0012 09 08 jmp SelectPrgBankByIndex ; CPU:$8014 PRG:0014 4C 1B 80 ; ---- data $8017-$801A (4 bytes) ---- .byte $85, $2C, $09, $00 ; CPU:$8017 PRG:0017 85 2C 09 00 ; ----------------------------------------------------------------------------- ; Routine: SelectPrgBankByIndex ; Global: Switches the PRG bank to the one in X. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SelectPrgBankByIndex: tax ; CPU:$801B PRG:001B AA jsr SwitchPrgBank ; CPU:$801C PRG:001C 20 70 FF lda $8026,x ; CPU:$801F PRG:001F BD 26 80 sta $8026,x ; CPU:$8022 PRG:0022 9D 26 80 ; ----------------------------------------------------------------------------- ; Routine: Sub_8025 ; Global: Branch target inside Sub: taken when 8025. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_8025: rts ; CPU:$8025 PRG:0025 60 ; ---- data $8026-$8035 (16 bytes) ---- ; referenced by `lda $8026,x` at $801F (operand $8026 falls inside this region) ; referenced by `sta $8026,x` at $8022 (operand $8026 falls inside this region) .byte $00, $01, $02, $03, $04, $05, $06, $07, $10, $11, $12, $13, $14, $15, $16, $17 ; CPU:$8026 PRG:0026 00 01 02 03 04 05 06 07 10 11 12 13 14 15 16 17 ; ----------------------------------------------------------------------------- ; Routine: InitializeGame ; Global: Resets the CPU, the PPU and the work RAM, then idles for the NMI. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitializeGame: sei ; CPU:$8036 PRG:0036 78 cld ; CPU:$8037 PRG:0037 D8 ; ----------------------------------------------------------------------------- ; Routine: WaitForVBlank ; Global: Spins until the PPU signals the start of vertical blank. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- WaitForVBlank: lda PPUSTATUS ; CPU:$8038 PRG:0038 AD 02 20 bpl WaitForVBlank ; CPU:$803B PRG:003B 10 FB lda #$00 ; CPU:$803D PRG:003D A9 00 sta PPUCTRL ; CPU:$803F PRG:003F 8D 00 20 sta PPUMASK ; CPU:$8042 PRG:0042 8D 01 20 ldx #$FF ; CPU:$8045 PRG:0045 A2 FF txs ; CPU:$8047 PRG:0047 9A lda #$00 ; CPU:$8048 PRG:0048 A9 00 jsr SelectPrgBankByIndex ; CPU:$804A PRG:004A 20 1B 80 lda #$00 ; CPU:$804D PRG:004D A9 00 sta Zp00 ; CPU:$804F PRG:004F 85 00 sta Zp01 ; CPU:$8051 PRG:0051 85 01 ldy #$02 ; CPU:$8053 PRG:0053 A0 02 ldx #$06 ; CPU:$8055 PRG:0055 A2 06 ; ----------------------------------------------------------------------------- ; Routine: ClearRamLoop ; Global: Clears the work RAM one 224 byte page at a time. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearRamLoop: sta (Zp00),y ; CPU:$8057 PRG:0057 91 00 iny ; CPU:$8059 PRG:0059 C8 cpx #$00 ; CPU:$805A PRG:005A E0 00 bne ClearRamPageDone ; CPU:$805C PRG:005C D0 04 cpy #$E0 ; CPU:$805E PRG:005E C0 E0 bcs InitGameVariables ; CPU:$8060 PRG:0060 B0 09 ; ----------------------------------------------------------------------------- ; Routine: ClearRamPageDone ; Global: Moves on to the next page of the RAM clear. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearRamPageDone: cpy #$00 ; CPU:$8062 PRG:0062 C0 00 bne ClearRamLoop ; CPU:$8064 PRG:0064 D0 F1 inc Zp01 ; CPU:$8066 PRG:0066 E6 01 dex ; CPU:$8068 PRG:0068 CA bpl ClearRamLoop ; CPU:$8069 PRG:0069 10 EC ; ----------------------------------------------------------------------------- ; Routine: InitGameVariables ; Global: Sets the sound, scroll and sprite registers up. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitGameVariables: sta Zp00 ; CPU:$806B PRG:006B 85 00 sta Zp01 ; CPU:$806D PRG:006D 85 01 lda #$00 ; CPU:$806F PRG:006F A9 00 sta APUSTATUS ; CPU:$8071 PRG:0071 8D 15 40 lda #$1E ; CPU:$8074 PRG:0074 A9 1E sta Zp02 ; CPU:$8076 PRG:0076 85 02 lda #$88 ; CPU:$8078 PRG:0078 A9 88 sta PPUCTRL ; CPU:$807A PRG:007A 8D 00 20 sta Zp01 ; CPU:$807D PRG:007D 85 01 lda #$01 ; CPU:$807F PRG:007F A9 01 sta GameMode ; CPU:$8081 PRG:0081 85 6A ; ----------------------------------------------------------------------------- ; Routine: IdleWaitLoop ; Global: The loop the game sits in between two NMI handlers. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- IdleWaitLoop: inc IdleCounter ; CPU:$8083 PRG:0083 E6 2F jmp IdleWaitLoop ; CPU:$8085 PRG:0085 4C 83 80 ; ---- data $8088-$808E (7 bytes) ---- .byte $08, $09, $0A, $0B, $0C, $0D, $0E ; CPU:$8088 PRG:0088 08 09 0A 0B 0C 0D 0E ; ----------------------------------------------------------------------------- ; Routine: NmiHandler ; Global: The frame handler: redraws the screen, reads the pad and runs the game. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- NmiHandler: lda $03B8 ; CPU:$808F PRG:008F AD B8 03 beq NmiHandler_Loop ; CPU:$8092 PRG:0092 F0 03 jsr StartVramWrite ; CPU:$8094 PRG:0094 20 9D 84 ; ----------------------------------------------------------------------------- ; Routine: NmiHandler_Loop ; Global: Branch target inside NmiHandler: taken when the loop repeats. ; Local: Part of NmiHandler. ; Parameters: none - the routine reads its state from the zero page. ; 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 $0300 ; CPU:$8097 PRG:0097 AD 00 03 beq UploadOam ; CPU:$809A PRG:009A F0 0A ldy #$00 ; CPU:$809C PRG:009C A0 00 ldx #$00 ; CPU:$809E PRG:009E A2 00 jsr UpdateNametable_Loop4 ; CPU:$80A0 PRG:00A0 20 70 82 jmp UploadOam_Loop2 ; CPU:$80A3 PRG:00A3 4C C4 80 ; ----------------------------------------------------------------------------- ; Routine: UploadOam ; Global: Copies the sprite shadow into the OAM through the DMA register. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UploadOam: lda #$00 ; CPU:$80A6 PRG:00A6 A9 00 sta OAMADDR ; CPU:$80A8 PRG:00A8 8D 03 20 lda #$02 ; CPU:$80AB PRG:00AB A9 02 sta OAMDMA ; CPU:$80AD PRG:00AD 8D 14 40 lda $0338 ; CPU:$80B0 PRG:00B0 AD 38 03 beq UploadOam_Loop ; CPU:$80B3 PRG:00B3 F0 07 ldx #$00 ; CPU:$80B5 PRG:00B5 A2 00 ldy #$00 ; CPU:$80B7 PRG:00B7 A0 00 jsr Sub_82C8 ; CPU:$80B9 PRG:00B9 20 C8 82 ; ----------------------------------------------------------------------------- ; Routine: UploadOam_Loop ; Global: Branch target inside UploadOam: taken when the loop repeats. ; Local: Part of UploadOam. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UploadOam_Loop: lda $01B0 ; CPU:$80BC PRG:00BC AD B0 01 beq UploadOam_Loop2 ; CPU:$80BF PRG:00BF F0 03 jsr UpdateNametable ; CPU:$80C1 PRG:00C1 20 B1 81 ; ----------------------------------------------------------------------------- ; Routine: UploadOam_Loop2 ; Global: Branch target inside UploadOam: taken when Loop2. ; Local: Part of UploadOam. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UploadOam_Loop2: lda #$08 ; CPU:$80C4 PRG:00C4 A9 08 jsr BankedCall ; CPU:$80C6 PRG:00C6 20 04 80 ; ---- data $80C9-$811B (83 bytes) ---- .byte $A5, $01, $29, $7F, $8D, $00, $20, $A5, $03, $8D, $05, $20, $A5, $04, $8D, $05 ; CPU:$80C9 PRG:00C9 A5 01 29 7F 8D 00 20 A5 03 8D 05 20 A5 04 8D 05 .byte $20, $A5, $02, $8D, $01, $20, $20, $3F, $81, $AD, $E5, $05, $F0, $0E, $A5, $31 ; CPU:$80D9 PRG:00D9 20 A5 02 8D 01 20 20 3F 81 AD E5 05 F0 0E A5 31 .byte $29, $3F, $D0, $08, $AD, $E6, $05, $F0, $03, $CE, $E6, $05, $A9, $00, $8D, $00 ; CPU:$80E9 PRG:00E9 29 3F D0 08 AD E6 05 F0 03 CE E6 05 A9 00 8D 00 .byte $03, $85, $36, $A5, $6A, $F0, $06, $20, $DD, $85, $4C, $1F, $81, $20, $88, $81 ; CPU:$80F9 PRG:00F9 03 85 36 A5 6A F0 06 20 DD 85 4C 1F 81 20 88 81 .byte $AD, $E5, $05, $F0, $0E, $A9, $00, $85, $26, $85, $27, $85, $2B, $A5, $2A, $29 ; CPU:$8109 PRG:0109 AD E5 05 F0 0E A9 00 85 26 85 27 85 2B A5 2A 29 .byte $10, $85, $2A ; CPU:$8119 PRG:0119 10 85 2A ; ----------------------------------------------------------------------------- ; Routine: RunGameLogic ; Global: Runs the game logic for the current mode. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- RunGameLogic: jsr UpdateGameState ; CPU:$811C PRG:011C 20 86 97 jsr UpdateActorSprites ; CPU:$811F PRG:011F 20 C3 83 jsr UpdateSprites ; CPU:$8122 PRG:0122 20 E9 82 lda #$02 ; CPU:$8125 PRG:0125 A9 02 jsr BankedCall ; CPU:$8127 PRG:0127 20 04 80 ; ---- data $812A-$813E (21 bytes) ---- .byte $AD, $02, $20, $AD, $DE, $03, $D0, $02, $A5, $01, $8D, $00, $20, $A9, $00, $8D ; CPU:$812A PRG:012A AD 02 20 AD DE 03 D0 02 A5 01 8D 00 20 A9 00 8D .byte $DE, $03, $E6, $31, $40 ; CPU:$813A PRG:013A DE 03 E6 31 40 ; ----------------------------------------------------------------------------- ; Routine: ReadControllers ; Global: Strobes the controller ports and reads both of them. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ReadControllers: lda #$01 ; CPU:$813F PRG:013F A9 01 sta JOY1 ; CPU:$8141 PRG:0141 8D 16 40 lsr a ; CPU:$8144 PRG:0144 4A tax ; CPU:$8145 PRG:0145 AA sta JOY1 ; CPU:$8146 PRG:0146 8D 16 40 jsr ReadControllerBits ; CPU:$8149 PRG:0149 20 4D 81 inx ; CPU:$814C PRG:014C E8 ; ----------------------------------------------------------------------------- ; Routine: ReadControllerBits ; Global: Shifts one controller byte into the button bit mask. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ReadControllerBits: lda #$00 ; CPU:$814D PRG:014D A9 00 sta ControllerBits ; CPU:$814F PRG:014F 85 05 ldy #$08 ; CPU:$8151 PRG:0151 A0 08 ; ----------------------------------------------------------------------------- ; Routine: ReadControllerBits_OnNonzero ; Global: Branch target inside ReadControllerBits: taken when the tested value is not zero. ; Local: Part of ReadControllerBits. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ReadControllerBits_OnNonzero: pha ; CPU:$8153 PRG:0153 48 lda JOY1,x ; CPU:$8154 PRG:0154 BD 16 40 sta ControllerByte ; CPU:$8157 PRG:0157 85 07 lsr a ; CPU:$8159 PRG:0159 4A lsr a ; CPU:$815A PRG:015A 4A rol ControllerBits ; CPU:$815B PRG:015B 26 05 lsr ControllerByte ; CPU:$815D PRG:015D 46 07 pla ; CPU:$815F PRG:015F 68 rol a ; CPU:$8160 PRG:0160 2A dey ; CPU:$8161 PRG:0161 88 bne ReadControllerBits_OnNonzero ; CPU:$8162 PRG:0162 D0 EF ora ControllerBits ; CPU:$8164 PRG:0164 05 05 sta ButtonState1,x ; CPU:$8166 PRG:0166 95 26 eor PrevButton1,x ; CPU:$8168 PRG:0168 55 28 and ButtonState1,x ; CPU:$816A PRG:016A 35 26 sta NewButton1,x ; CPU:$816C PRG:016C 95 2A lda ButtonState1,x ; CPU:$816E PRG:016E B5 26 sta PrevButton1,x ; CPU:$8170 PRG:0170 95 28 rts ; CPU:$8172 PRG:0172 60 ; ----------------------------------------------------------------------------- ; Routine: DispatchByJumpTable ; Global: Jumps to the handler whose address follows the call. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DispatchByJumpTable: asl a ; CPU:$8173 PRG:0173 0A tay ; CPU:$8174 PRG:0174 A8 pla ; CPU:$8175 PRG:0175 68 sta Zp13 ; CPU:$8176 PRG:0176 85 13 pla ; CPU:$8178 PRG:0178 68 sta Zp14 ; CPU:$8179 PRG:0179 85 14 iny ; CPU:$817B PRG:017B C8 lda (Zp13),y ; CPU:$817C PRG:017C B1 13 sta Zp11 ; CPU:$817E PRG:017E 85 11 iny ; CPU:$8180 PRG:0180 C8 lda (Zp13),y ; CPU:$8181 PRG:0181 B1 13 sta Zp12 ; CPU:$8183 PRG:0183 85 12 jmp ($0011) ; CPU:$8185 PRG:0185 6C 11 00 ; ----------------------------------------------------------------------------- ; Routine: ClearOamShadow ; Global: Fills the sprite shadow at $0200 with the "empty" value $F8. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearOamShadow: ldy #$00 ; CPU:$8188 PRG:0188 A0 00 lda #$F8 ; CPU:$818A PRG:018A A9 F8 ; ----------------------------------------------------------------------------- ; Routine: ClearOamShadow_OnNonzero ; Global: Branch target inside ClearOamShadow: taken when the tested value is not zero. ; Local: Part of ClearOamShadow. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearOamShadow_OnNonzero: sta $0200,y ; CPU:$818C PRG:018C 99 00 02 iny ; CPU:$818F PRG:018F C8 iny ; CPU:$8190 PRG:0190 C8 iny ; CPU:$8191 PRG:0191 C8 iny ; CPU:$8192 PRG:0192 C8 bne ClearOamShadow_OnNonzero ; CPU:$8193 PRG:0193 D0 F7 rts ; CPU:$8195 PRG:0195 60 ; ---- data $8196-$81B0 (27 bytes) ---- .byte $0A, $0A, $18, $69, $20, $A2, $00, $8D, $06, $20, $8E, $06, $20, $A0, $03, $A9 ; CPU:$8196 PRG:0196 0A 0A 18 69 20 A2 00 8D 06 20 8E 06 20 A0 03 A9 .byte $FF, $8D, $07, $20, $CA, $D0, $FA, $88, $10, $F7, $60 ; CPU:$81A6 PRG:01A6 FF 8D 07 20 CA D0 FA 88 10 F7 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateNametable ; Global: Rewrites the nametable entries that changed. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateNametable: ldx #$00 ; CPU:$81B1 PRG:01B1 A2 00 lda $01B0,x ; CPU:$81B3 PRG:01B3 BD B0 01 beq UpdateNametable_Loop3 ; CPU:$81B6 PRG:01B6 F0 5C ; ----------------------------------------------------------------------------- ; Routine: UpdateNametable_OnNonzero ; Global: Branch target inside UpdateNametable: taken when the tested value is not zero. ; Local: Part of UpdateNametable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateNametable_OnNonzero: sta Zp12 ; CPU:$81B8 PRG:01B8 85 12 lda $01B1,x ; CPU:$81BA PRG:01BA BD B1 01 sta Zp11 ; CPU:$81BD PRG:01BD 85 11 lda $01B2,x ; CPU:$81BF PRG:01BF BD B2 01 sta Zp20 ; CPU:$81C2 PRG:01C2 85 20 sta Zp21 ; CPU:$81C4 PRG:01C4 85 21 lda $01B3,x ; CPU:$81C6 PRG:01C6 BD B3 01 sta Zp22 ; CPU:$81C9 PRG:01C9 85 22 lda $01B4,x ; CPU:$81CB PRG:01CB BD B4 01 sta ControllerBits ; CPU:$81CE PRG:01CE 85 05 lda $01B5,x ; CPU:$81D0 PRG:01D0 BD B5 01 sta Zp06 ; CPU:$81D3 PRG:01D3 85 06 ldy #$00 ; CPU:$81D5 PRG:01D5 A0 00 ; ----------------------------------------------------------------------------- ; Routine: UpdateNametable_OnCarryClear ; Global: Branch target inside UpdateNametable: taken when the addition or subtraction did not carry. ; Local: Part of UpdateNametable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateNametable_OnCarryClear: lda PPUSTATUS ; CPU:$81D7 PRG:01D7 AD 02 20 lda Zp12 ; CPU:$81DA PRG:01DA A5 12 sta PPUADDR ; CPU:$81DC PRG:01DC 8D 06 20 lda Zp11 ; CPU:$81DF PRG:01DF A5 11 sta PPUADDR ; CPU:$81E1 PRG:01E1 8D 06 20 ; ----------------------------------------------------------------------------- ; Routine: UpdateNametable_OnNonzero2 ; Global: Branch target inside UpdateNametable: taken when OnNonzero2. ; Local: Part of UpdateNametable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateNametable_OnNonzero2: lda (ControllerBits),y ; CPU:$81E4 PRG:01E4 B1 05 sta PPUDATA ; CPU:$81E6 PRG:01E6 8D 07 20 iny ; CPU:$81E9 PRG:01E9 C8 dec Zp20 ; CPU:$81EA PRG:01EA C6 20 bne UpdateNametable_OnNonzero2 ; CPU:$81EC PRG:01EC D0 F6 dec Zp22 ; CPU:$81EE PRG:01EE C6 22 beq UpdateNametable_Loop ; CPU:$81F0 PRG:01F0 F0 12 lda Zp21 ; CPU:$81F2 PRG:01F2 A5 21 sta Zp20 ; CPU:$81F4 PRG:01F4 85 20 lda Zp11 ; CPU:$81F6 PRG:01F6 A5 11 clc ; CPU:$81F8 PRG:01F8 18 adc #$20 ; CPU:$81F9 PRG:01F9 69 20 sta Zp11 ; CPU:$81FB PRG:01FB 85 11 bcc UpdateNametable_OnCarryClear ; CPU:$81FD PRG:01FD 90 D8 inc Zp12 ; CPU:$81FF PRG:01FF E6 12 jmp UpdateNametable_OnCarryClear ; CPU:$8201 PRG:0201 4C D7 81 ; ----------------------------------------------------------------------------- ; Routine: UpdateNametable_Loop ; Global: Branch target inside UpdateNametable: taken when the loop repeats. ; Local: Part of UpdateNametable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateNametable_Loop: cpx #$06 ; CPU:$8204 PRG:0204 E0 06 bcs UpdateNametable_Loop2 ; CPU:$8206 PRG:0206 B0 07 ldx #$06 ; CPU:$8208 PRG:0208 A2 06 lda $01B0,x ; CPU:$820A PRG:020A BD B0 01 bne UpdateNametable_OnNonzero ; CPU:$820D PRG:020D D0 A9 ; ----------------------------------------------------------------------------- ; Routine: UpdateNametable_Loop2 ; Global: Branch target inside UpdateNametable: taken when Loop2. ; Local: Part of UpdateNametable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateNametable_Loop2: lda #$00 ; CPU:$820F PRG:020F A9 00 sta $01B0 ; CPU:$8211 PRG:0211 8D B0 01 ; ----------------------------------------------------------------------------- ; Routine: UpdateNametable_Loop3 ; Global: Branch target inside UpdateNametable: taken when Loop3. ; Local: Part of UpdateNametable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateNametable_Loop3: rts ; CPU:$8214 PRG:0214 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateNametable_OnNonzero3 ; Global: Branch target inside UpdateNametable: taken when OnNonzero3. ; Local: Part of UpdateNametable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateNametable_OnNonzero3: sta Zp11 ; CPU:$8215 PRG:0215 85 11 lda $0301,x ; CPU:$8217 PRG:0217 BD 01 03 sta Zp12 ; CPU:$821A PRG:021A 85 12 lda $0302,x ; CPU:$821C PRG:021C BD 02 03 sta Zp13 ; CPU:$821F PRG:021F 85 13 lda $0303,x ; CPU:$8221 PRG:0221 BD 03 03 sta Zp14 ; CPU:$8224 PRG:0224 85 14 inx ; CPU:$8226 PRG:0226 E8 inx ; CPU:$8227 PRG:0227 E8 inx ; CPU:$8228 PRG:0228 E8 inx ; CPU:$8229 PRG:0229 E8 lda Zp12 ; CPU:$822A PRG:022A A5 12 cmp #$24 ; CPU:$822C PRG:022C C9 24 beq UpdateNametable_Loop4 ; CPU:$822E PRG:022E F0 40 ldy #$02 ; CPU:$8230 PRG:0230 A0 02 lda PPUSTATUS ; CPU:$8232 PRG:0232 AD 02 20 lda Zp12 ; CPU:$8235 PRG:0235 A5 12 sta PPUADDR ; CPU:$8237 PRG:0237 8D 06 20 lda Zp11 ; CPU:$823A PRG:023A A5 11 sta PPUADDR ; CPU:$823C PRG:023C 8D 06 20 lda (Zp13),y ; CPU:$823F PRG:023F B1 13 sta PPUDATA ; CPU:$8241 PRG:0241 8D 07 20 iny ; CPU:$8244 PRG:0244 C8 lda (Zp13),y ; CPU:$8245 PRG:0245 B1 13 sta PPUDATA ; CPU:$8247 PRG:0247 8D 07 20 iny ; CPU:$824A PRG:024A C8 lda #$20 ; CPU:$824B PRG:024B A9 20 clc ; CPU:$824D PRG:024D 18 adc Zp11 ; CPU:$824E PRG:024E 65 11 sta Zp11 ; CPU:$8250 PRG:0250 85 11 lda Zp12 ; CPU:$8252 PRG:0252 A5 12 adc #$00 ; CPU:$8254 PRG:0254 69 00 sta Zp12 ; CPU:$8256 PRG:0256 85 12 lda PPUSTATUS ; CPU:$8258 PRG:0258 AD 02 20 lda Zp12 ; CPU:$825B PRG:025B A5 12 sta PPUADDR ; CPU:$825D PRG:025D 8D 06 20 lda Zp11 ; CPU:$8260 PRG:0260 A5 11 sta PPUADDR ; CPU:$8262 PRG:0262 8D 06 20 lda (Zp13),y ; CPU:$8265 PRG:0265 B1 13 sta PPUDATA ; CPU:$8267 PRG:0267 8D 07 20 iny ; CPU:$826A PRG:026A C8 lda (Zp13),y ; CPU:$826B PRG:026B B1 13 sta PPUDATA ; CPU:$826D PRG:026D 8D 07 20 ; ----------------------------------------------------------------------------- ; Routine: UpdateNametable_Loop4 ; Global: Branch target inside UpdateNametable: taken when Loop4. ; Local: Part of UpdateNametable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateNametable_Loop4: lda $0300,x ; CPU:$8270 PRG:0270 BD 00 03 bne UpdateNametable_OnNonzero3 ; CPU:$8273 PRG:0273 D0 A0 rts ; CPU:$8275 PRG:0275 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateNametable_OnNonzero4 ; Global: Branch target inside UpdateNametable: taken when OnNonzero4. ; Local: Part of UpdateNametable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateNametable_OnNonzero4: sta Zp11 ; CPU:$8276 PRG:0276 85 11 lda $0339,x ; CPU:$8278 PRG:0278 BD 39 03 sta Zp12 ; CPU:$827B PRG:027B 85 12 lda $033A,x ; CPU:$827D PRG:027D BD 3A 03 sta Zp13 ; CPU:$8280 PRG:0280 85 13 lda $033B,x ; CPU:$8282 PRG:0282 BD 3B 03 sta Zp14 ; CPU:$8285 PRG:0285 85 14 txa ; CPU:$8287 PRG:0287 8A clc ; CPU:$8288 PRG:0288 18 adc #$04 ; CPU:$8289 PRG:0289 69 04 sta Zp22 ; CPU:$828B PRG:028B 85 22 ldy #$00 ; CPU:$828D PRG:028D A0 00 lda (Zp13),y ; CPU:$828F PRG:028F B1 13 sta Zp21 ; CPU:$8291 PRG:0291 85 21 sta Zp1F ; CPU:$8293 PRG:0293 85 1F iny ; CPU:$8295 PRG:0295 C8 lda (Zp13),y ; CPU:$8296 PRG:0296 B1 13 sta Zp25 ; CPU:$8298 PRG:0298 85 25 ; ----------------------------------------------------------------------------- ; Routine: UpdateNametable_OnNonzero5 ; Global: Branch target inside UpdateNametable: taken when OnNonzero5. ; Local: Part of UpdateNametable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateNametable_OnNonzero5: ldx PPUSTATUS ; CPU:$829A PRG:029A AE 02 20 lda Zp12 ; CPU:$829D PRG:029D A5 12 sta PPUADDR ; CPU:$829F PRG:029F 8D 06 20 lda Zp11 ; CPU:$82A2 PRG:02A2 A5 11 sta PPUADDR ; CPU:$82A4 PRG:02A4 8D 06 20 ; ----------------------------------------------------------------------------- ; Routine: UpdateNametable_OnNonzero6 ; Global: Branch target inside UpdateNametable: taken when OnNonzero6. ; Local: Part of UpdateNametable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateNametable_OnNonzero6: iny ; CPU:$82A7 PRG:02A7 C8 lda (Zp13),y ; CPU:$82A8 PRG:02A8 B1 13 sta PPUDATA ; CPU:$82AA PRG:02AA 8D 07 20 dec Zp1F ; CPU:$82AD PRG:02AD C6 1F bne UpdateNametable_OnNonzero6 ; CPU:$82AF PRG:02AF D0 F6 lda #$20 ; CPU:$82B1 PRG:02B1 A9 20 clc ; CPU:$82B3 PRG:02B3 18 adc Zp11 ; CPU:$82B4 PRG:02B4 65 11 sta Zp11 ; CPU:$82B6 PRG:02B6 85 11 lda Zp12 ; CPU:$82B8 PRG:02B8 A5 12 adc #$00 ; CPU:$82BA PRG:02BA 69 00 sta Zp12 ; CPU:$82BC PRG:02BC 85 12 lda Zp21 ; CPU:$82BE PRG:02BE A5 21 sta Zp1F ; CPU:$82C0 PRG:02C0 85 1F dec Zp25 ; CPU:$82C2 PRG:02C2 C6 25 bne UpdateNametable_OnNonzero5 ; CPU:$82C4 PRG:02C4 D0 D4 ldx Zp22 ; CPU:$82C6 PRG:02C6 A6 22 ; ----------------------------------------------------------------------------- ; Routine: Sub_82C8 ; Global: Branch target inside Sub: taken when 82C8. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_82C8: lda $0338,x ; CPU:$82C8 PRG:02C8 BD 38 03 bne UpdateNametable_OnNonzero4 ; CPU:$82CB PRG:02CB D0 A9 lda #$00 ; CPU:$82CD PRG:02CD A9 00 sta Zp37 ; CPU:$82CF PRG:02CF 85 37 sta $0338 ; CPU:$82D1 PRG:02D1 8D 38 03 rts ; CPU:$82D4 PRG:02D4 60 ; ---- data $82D5-$82E8 (20 bytes) ---- .byte $A9, $00, $A2, $08, $46, $13, $90, $03, $18, $65, $15, $4A, $66, $17, $CA, $D0 ; CPU:$82D5 PRG:02D5 A9 00 A2 08 46 13 90 03 18 65 15 4A 66 17 CA D0 .byte $F3, $85, $18, $60 ; CPU:$82E5 PRG:02E5 F3 85 18 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateSprites ; Global: Walks the sixteen sprite slots and redraws the active ones. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSprites: ldx #$00 ; CPU:$82E9 PRG:02E9 A2 00 stx Zp1F ; CPU:$82EB PRG:02EB 86 1F lda FrameCounter ; CPU:$82ED PRG:02ED A5 31 and #$01 ; CPU:$82EF PRG:02EF 29 01 bne UpdateSprites_Loop ; CPU:$82F1 PRG:02F1 D0 04 lda #$63 ; CPU:$82F3 PRG:02F3 A9 63 bne UpdateSprites_Loop2 ; CPU:$82F5 PRG:02F5 D0 02 ; ----------------------------------------------------------------------------- ; Routine: UpdateSprites_Loop ; Global: Branch target inside UpdateSprites: taken when the loop repeats. ; Local: Part of UpdateSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSprites_Loop: lda #$01 ; CPU:$82F7 PRG:02F7 A9 01 ; ----------------------------------------------------------------------------- ; Routine: UpdateSprites_Loop2 ; Global: Branch target inside UpdateSprites: taken when Loop2. ; Local: Part of UpdateSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSprites_Loop2: sta Zp1E ; CPU:$82F9 PRG:02F9 85 1E ; ----------------------------------------------------------------------------- ; Routine: UpdateSprites_OnCarryClear ; Global: Branch target inside UpdateSprites: taken when the addition or subtraction did not carry. ; Local: Part of UpdateSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSprites_OnCarryClear: lda $0358,x ; CPU:$82FB PRG:02FB BD 58 03 beq UpdateSprites_Loop3 ; CPU:$82FE PRG:02FE F0 03 jsr Sub_830C ; CPU:$8300 PRG:0300 20 0C 83 ; ----------------------------------------------------------------------------- ; Routine: UpdateSprites_Loop3 ; Global: Branch target inside UpdateSprites: taken when Loop3. ; Local: Part of UpdateSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSprites_Loop3: inc Zp1F ; CPU:$8303 PRG:0303 E6 1F ldx Zp1F ; CPU:$8305 PRG:0305 A6 1F cpx #$10 ; CPU:$8307 PRG:0307 E0 10 bcc UpdateSprites_OnCarryClear ; CPU:$8309 PRG:0309 90 F0 rts ; CPU:$830B PRG:030B 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_830C ; Global: Branch target inside Sub: taken when 830C. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_830C: lda $03A8,x ; CPU:$830C PRG:030C BD A8 03 sta Zp30 ; CPU:$830F PRG:030F 85 30 lda Zp1F ; CPU:$8311 PRG:0311 A5 1F tay ; CPU:$8313 PRG:0313 A8 asl a ; CPU:$8314 PRG:0314 0A tax ; CPU:$8315 PRG:0315 AA lda $0368,x ; CPU:$8316 PRG:0316 BD 68 03 sta Zp11 ; CPU:$8319 PRG:0319 85 11 lda $0369,x ; CPU:$831B PRG:031B BD 69 03 sta Zp12 ; CPU:$831E PRG:031E 85 12 lda $0388,y ; CPU:$8320 PRG:0320 B9 88 03 sta ControllerBits ; CPU:$8323 PRG:0323 85 05 sta Zp09 ; CPU:$8325 PRG:0325 85 09 lda $0398,y ; CPU:$8327 PRG:0327 B9 98 03 sta ControllerByte ; CPU:$832A PRG:032A 85 07 ldy #$00 ; CPU:$832C PRG:032C A0 00 lda (Zp11),y ; CPU:$832E PRG:032E B1 11 sta Zp13 ; CPU:$8330 PRG:0330 85 13 iny ; CPU:$8332 PRG:0332 C8 lda (Zp11),y ; CPU:$8333 PRG:0333 B1 11 sta Zp14 ; CPU:$8335 PRG:0335 85 14 ldy #$00 ; CPU:$8337 PRG:0337 A0 00 lda (Zp13),y ; CPU:$8339 PRG:0339 B1 13 sta Zp1B ; CPU:$833B PRG:033B 85 1B sta Zp1C ; CPU:$833D PRG:033D 85 1C iny ; CPU:$833F PRG:033F C8 lda (Zp13),y ; CPU:$8340 PRG:0340 B1 13 sta Zp1D ; CPU:$8342 PRG:0342 85 1D iny ; CPU:$8344 PRG:0344 C8 sty Zp20 ; CPU:$8345 PRG:0345 84 20 sty Zp22 ; CPU:$8347 PRG:0347 84 22 ; ----------------------------------------------------------------------------- ; Routine: UpdateSprites_OnNonzero ; Global: Branch target inside UpdateSprites: taken when the tested value is not zero. ; Local: Part of UpdateSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSprites_OnNonzero: lda Zp1E ; CPU:$8349 PRG:0349 A5 1E asl a ; CPU:$834B PRG:034B 0A asl a ; CPU:$834C PRG:034C 0A tax ; CPU:$834D PRG:034D AA lda ControllerByte ; CPU:$834E PRG:034E A5 07 sta $0200,x ; CPU:$8350 PRG:0350 9D 00 02 lda Zp09 ; CPU:$8353 PRG:0353 A5 09 sta $0203,x ; CPU:$8355 PRG:0355 9D 03 02 lda Zp30 ; CPU:$8358 PRG:0358 A5 30 sta $0202,x ; CPU:$835A PRG:035A 9D 02 02 lda Zp30 ; CPU:$835D PRG:035D A5 30 and #$40 ; CPU:$835F PRG:035F 29 40 beq UpdateSprites_Loop5 ; CPU:$8361 PRG:0361 F0 18 lda Zp20 ; CPU:$8363 PRG:0363 A5 20 clc ; CPU:$8365 PRG:0365 18 adc Zp1C ; CPU:$8366 PRG:0366 65 1C tay ; CPU:$8368 PRG:0368 A8 dey ; CPU:$8369 PRG:0369 88 lda (Zp13),y ; CPU:$836A PRG:036A B1 13 sta $0201,x ; CPU:$836C PRG:036C 9D 01 02 cmp #$FF ; CPU:$836F PRG:036F C9 FF bne UpdateSprites_Loop4 ; CPU:$8371 PRG:0371 D0 05 lda #$F8 ; CPU:$8373 PRG:0373 A9 F8 sta $0200,x ; CPU:$8375 PRG:0375 9D 00 02 ; ----------------------------------------------------------------------------- ; Routine: UpdateSprites_Loop4 ; Global: Branch target inside UpdateSprites: taken when Loop4. ; Local: Part of UpdateSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSprites_Loop4: jmp Sub_838D ; CPU:$8378 PRG:0378 4C 8D 83 ; ----------------------------------------------------------------------------- ; Routine: UpdateSprites_Loop5 ; Global: Branch target inside UpdateSprites: taken when Loop5. ; Local: Part of UpdateSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSprites_Loop5: ldy Zp22 ; CPU:$837B PRG:037B A4 22 lda (Zp13),y ; CPU:$837D PRG:037D B1 13 sta $0201,x ; CPU:$837F PRG:037F 9D 01 02 cmp #$FF ; CPU:$8382 PRG:0382 C9 FF bne UpdateSprites_Loop6 ; CPU:$8384 PRG:0384 D0 05 lda #$F8 ; CPU:$8386 PRG:0386 A9 F8 sta $0200,x ; CPU:$8388 PRG:0388 9D 00 02 ; ----------------------------------------------------------------------------- ; Routine: UpdateSprites_Loop6 ; Global: Branch target inside UpdateSprites: taken when Loop6. ; Local: Part of UpdateSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSprites_Loop6: inc Zp22 ; CPU:$838B PRG:038B E6 22 ; ----------------------------------------------------------------------------- ; Routine: Sub_838D ; Global: Branch target inside Sub: taken when 838D. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_838D: lda Zp09 ; CPU:$838D PRG:038D A5 09 clc ; CPU:$838F PRG:038F 18 adc #$08 ; CPU:$8390 PRG:0390 69 08 sta Zp09 ; CPU:$8392 PRG:0392 85 09 lda FrameCounter ; CPU:$8394 PRG:0394 A5 31 and #$01 ; CPU:$8396 PRG:0396 29 01 bne UpdateSprites_Loop7 ; CPU:$8398 PRG:0398 D0 05 dec Zp1E ; CPU:$839A PRG:039A C6 1E jmp Sub_83A1 ; CPU:$839C PRG:039C 4C A1 83 ; ----------------------------------------------------------------------------- ; Routine: UpdateSprites_Loop7 ; Global: Branch target inside UpdateSprites: taken when Loop7. ; Local: Part of UpdateSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSprites_Loop7: inc Zp1E ; CPU:$839F PRG:039F E6 1E ; ----------------------------------------------------------------------------- ; Routine: Sub_83A1 ; Global: Branch target inside Sub: taken when 83A1. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_83A1: dec Zp1C ; CPU:$83A1 PRG:03A1 C6 1C bne UpdateSprites_OnNonzero ; CPU:$83A3 PRG:03A3 D0 A4 dec Zp1D ; CPU:$83A5 PRG:03A5 C6 1D beq UpdateSprites_Loop8 ; CPU:$83A7 PRG:03A7 F0 19 lda Zp1B ; CPU:$83A9 PRG:03A9 A5 1B sta Zp1C ; CPU:$83AB PRG:03AB 85 1C clc ; CPU:$83AD PRG:03AD 18 adc Zp20 ; CPU:$83AE PRG:03AE 65 20 sta Zp20 ; CPU:$83B0 PRG:03B0 85 20 sta Zp22 ; CPU:$83B2 PRG:03B2 85 22 lda ControllerByte ; CPU:$83B4 PRG:03B4 A5 07 clc ; CPU:$83B6 PRG:03B6 18 adc #$08 ; CPU:$83B7 PRG:03B7 69 08 sta ControllerByte ; CPU:$83B9 PRG:03B9 85 07 lda ControllerBits ; CPU:$83BB PRG:03BB A5 05 sta Zp09 ; CPU:$83BD PRG:03BD 85 09 jmp UpdateSprites_OnNonzero ; CPU:$83BF PRG:03BF 4C 49 83 ; ----------------------------------------------------------------------------- ; Routine: UpdateSprites_Loop8 ; Global: Branch target inside UpdateSprites: taken when Loop8. ; Local: Part of UpdateSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSprites_Loop8: rts ; CPU:$83C2 PRG:03C2 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateActorSprites ; Global: Walks the actor slots and redraws their sprites. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateActorSprites: ldx #$00 ; CPU:$83C3 PRG:03C3 A2 00 stx Zp1B ; CPU:$83C5 PRG:03C5 86 1B ; ----------------------------------------------------------------------------- ; Routine: UpdateActorSprites_OnCarryClear ; Global: Branch target inside UpdateActorSprites: taken when the addition or subtraction did not carry. ; Local: Part of UpdateActorSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateActorSprites_OnCarryClear: lda $0358,x ; CPU:$83C7 PRG:03C7 BD 58 03 beq UpdateActorSprites_Loop ; CPU:$83CA PRG:03CA F0 03 jsr Sub_840C ; CPU:$83CC PRG:03CC 20 0C 84 ; ----------------------------------------------------------------------------- ; Routine: UpdateActorSprites_Loop ; Global: Branch target inside UpdateActorSprites: taken when the loop repeats. ; Local: Part of UpdateActorSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateActorSprites_Loop: inc Zp1B ; CPU:$83CF PRG:03CF E6 1B ldx Zp1B ; CPU:$83D1 PRG:03D1 A6 1B cpx #$10 ; CPU:$83D3 PRG:03D3 E0 10 bcc UpdateActorSprites_OnCarryClear ; CPU:$83D5 PRG:03D5 90 F0 rts ; CPU:$83D7 PRG:03D7 60 ; ---- data $83D8-$840A (51 bytes) ---- .byte $A5, $31, $29, $3F, $D0, $2D, $BD, $68, $03, $85, $11, $BD, $69, $03, $85, $12 ; CPU:$83D8 PRG:03D8 A5 31 29 3F D0 2D BD 68 03 85 11 BD 69 03 85 12 .byte $A0, $02, $B1, $11, $C9, $FF, $D0, $09, $C8, $B1, $11, $C8, $C9, $FF, $D0, $01 ; CPU:$83E8 PRG:03E8 A0 02 B1 11 C9 FF D0 09 C8 B1 11 C8 C9 FF D0 01 .byte $60, $A5, $1B, $0A, $AA, $BD, $68, $03, $18, $69, $02, $9D, $68, $03, $90, $03 ; CPU:$83F8 PRG:03F8 60 A5 1B 0A AA BD 68 03 18 69 02 9D 68 03 90 03 .byte $FE, $69, $03 ; CPU:$8408 PRG:0408 FE 69 03 ; ----------------------------------------------------------------------------- ; Routine: UpdateActorSprites_OnNonzero ; Global: Branch target inside UpdateActorSprites: taken when the tested value is not zero. ; Local: Part of UpdateActorSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateActorSprites_OnNonzero: rts ; CPU:$840B PRG:040B 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_840C ; Global: Branch target inside Sub: taken when 840C. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_840C: lda FrameCounter ; CPU:$840C PRG:040C A5 31 and #$0F ; CPU:$840E PRG:040E 29 0F bne UpdateActorSprites_OnNonzero ; CPU:$8410 PRG:0410 D0 F9 lda Zp1B ; CPU:$8412 PRG:0412 A5 1B asl a ; CPU:$8414 PRG:0414 0A tax ; CPU:$8415 PRG:0415 AA lda $0368,x ; CPU:$8416 PRG:0416 BD 68 03 clc ; CPU:$8419 PRG:0419 18 adc #$02 ; CPU:$841A PRG:041A 69 02 sta $0368,x ; CPU:$841C PRG:041C 9D 68 03 bcc UpdateActorSprites_Loop2 ; CPU:$841F PRG:041F 90 03 inc $0369,x ; CPU:$8421 PRG:0421 FE 69 03 ; ----------------------------------------------------------------------------- ; Routine: UpdateActorSprites_Loop2 ; Global: Branch target inside UpdateActorSprites: taken when Loop2. ; Local: Part of UpdateActorSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateActorSprites_Loop2: lda $0368,x ; CPU:$8424 PRG:0424 BD 68 03 sta Zp11 ; CPU:$8427 PRG:0427 85 11 lda $0369,x ; CPU:$8429 PRG:0429 BD 69 03 sta Zp12 ; CPU:$842C PRG:042C 85 12 ldy #$00 ; CPU:$842E PRG:042E A0 00 lda (Zp11),y ; CPU:$8430 PRG:0430 B1 11 cmp #$FF ; CPU:$8432 PRG:0432 C9 FF bne UpdateActorSprites_Loop3 ; CPU:$8434 PRG:0434 D0 1B iny ; CPU:$8436 PRG:0436 C8 lda (Zp11),y ; CPU:$8437 PRG:0437 B1 11 iny ; CPU:$8439 PRG:0439 C8 cmp #$FF ; CPU:$843A PRG:043A C9 FF bne UpdateActorSprites_Loop3 ; CPU:$843C PRG:043C D0 13 ldy Zp1B ; CPU:$843E PRG:043E A4 1B lda $0358,y ; CPU:$8440 PRG:0440 B9 58 03 asl a ; CPU:$8443 PRG:0443 0A tay ; CPU:$8444 PRG:0444 A8 lda $F216,y ; CPU:$8445 PRG:0445 B9 16 F2 sta $0368,x ; CPU:$8448 PRG:0448 9D 68 03 lda $F217,y ; CPU:$844B PRG:044B B9 17 F2 sta $0369,x ; CPU:$844E PRG:044E 9D 69 03 ; ----------------------------------------------------------------------------- ; Routine: UpdateActorSprites_Loop3 ; Global: Branch target inside UpdateActorSprites: taken when Loop3. ; Local: Part of UpdateActorSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateActorSprites_Loop3: rts ; CPU:$8451 PRG:0451 60 ; ---- data $8452-$848B (58 bytes) ---- .byte $A2, $00, $BD, $58, $03, $F0, $06, $E8, $E0, $10, $90, $F6, $60, $A4, $11, $B9 ; CPU:$8452 PRG:0452 A2 00 BD 58 03 F0 06 E8 E0 10 90 F6 60 A4 11 B9 .byte $06, $F2, $9D, $A8, $03, $A5, $11, $9D, $58, $03, $86, $1B, $0A, $A8, $B9, $36 ; CPU:$8462 PRG:0462 06 F2 9D A8 03 A5 11 9D 58 03 86 1B 0A A8 B9 36 .byte $F2, $9D, $88, $03, $B9, $37, $F2, $9D, $98, $03, $8A, $0A, $AA, $B9, $16, $F2 ; CPU:$8472 PRG:0472 F2 9D 88 03 B9 37 F2 9D 98 03 8A 0A AA B9 16 F2 .byte $9D, $68, $03, $B9, $17, $F2, $9D, $69, $03, $60 ; CPU:$8482 PRG:0482 9D 68 03 B9 17 F2 9D 69 03 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_848C ; Global: Branch target inside Sub: taken when 848C. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_848C: lda #$40 ; CPU:$848C PRG:048C A9 40 sta Zp1F ; CPU:$848E PRG:048E 85 1F ldy #$00 ; CPU:$8490 PRG:0490 A0 00 ; ----------------------------------------------------------------------------- ; Routine: UpdateActorSprites_OnNonzero2 ; Global: Branch target inside UpdateActorSprites: taken when OnNonzero2. ; Local: Part of UpdateActorSprites. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateActorSprites_OnNonzero2: lda (Zp11),y ; CPU:$8492 PRG:0492 B1 11 sta $04E2,y ; CPU:$8494 PRG:0494 99 E2 04 iny ; CPU:$8497 PRG:0497 C8 dec Zp1F ; CPU:$8498 PRG:0498 C6 1F bne UpdateActorSprites_OnNonzero2 ; CPU:$849A PRG:049A D0 F6 rts ; CPU:$849C PRG:049C 60 ; ----------------------------------------------------------------------------- ; Routine: StartVramWrite ; Global: Sets the PPU address for the next VRAM write. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- StartVramWrite: ldy PPUSTATUS ; CPU:$849D PRG:049D AC 02 20 ldy #$23 ; CPU:$84A0 PRG:04A0 A0 23 ldx #$00 ; CPU:$84A2 PRG:04A2 A2 00 ; ----------------------------------------------------------------------------- ; Routine: WriteVramTiles ; Global: Writes the tile data to VRAM. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- WriteVramTiles: sty PPUADDR ; CPU:$84A4 PRG:04A4 8C 06 20 sta PPUADDR ; CPU:$84A7 PRG:04A7 8D 06 20 inx ; CPU:$84AA PRG:04AA E8 lda $03B8,x ; CPU:$84AB PRG:04AB BD B8 03 sta PPUDATA ; CPU:$84AE PRG:04AE 8D 07 20 inx ; CPU:$84B1 PRG:04B1 E8 lda $03B8,x ; CPU:$84B2 PRG:04B2 BD B8 03 bne WriteVramTiles ; CPU:$84B5 PRG:04B5 D0 ED lda #$00 ; CPU:$84B7 PRG:04B7 A9 00 sta $03B8 ; CPU:$84B9 PRG:04B9 8D B8 03 sta Zp38 ; CPU:$84BC PRG:04BC 85 38 rts ; CPU:$84BE PRG:04BE 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_84BF ; Global: Branch target inside Sub: taken when 84BF. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_84BF: sta Zp20 ; CPU:$84BF PRG:04BF 85 20 asl a ; CPU:$84C1 PRG:04C1 0A tax ; CPU:$84C2 PRG:04C2 AA lda $F72B,x ; CPU:$84C3 PRG:04C3 BD 2B F7 sta Zp19 ; CPU:$84C6 PRG:04C6 85 19 lda $F72C,x ; CPU:$84C8 PRG:04C8 BD 2C F7 sta Zp1A ; CPU:$84CB PRG:04CB 85 1A lda Zp6F ; CPU:$84CD PRG:04CD A5 6F bne WriteVramTiles_Loop ; CPU:$84CF PRG:04CF D0 01 rts ; CPU:$84D1 PRG:04D1 60 ; ----------------------------------------------------------------------------- ; Routine: WriteVramTiles_Loop ; Global: Branch target inside WriteVramTiles: taken when the loop repeats. ; Local: Part of WriteVramTiles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- WriteVramTiles_Loop: lda Zp34 ; CPU:$84D2 PRG:04D2 A5 34 bne WriteVramTiles_Loop2 ; CPU:$84D4 PRG:04D4 D0 05 dec Zp19 ; CPU:$84D6 PRG:04D6 C6 19 dec Zp19 ; CPU:$84D8 PRG:04D8 C6 19 rts ; CPU:$84DA PRG:04DA 60 ; ----------------------------------------------------------------------------- ; Routine: WriteVramTiles_Loop2 ; Global: Branch target inside WriteVramTiles: taken when Loop2. ; Local: Part of WriteVramTiles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- WriteVramTiles_Loop2: lda Zp19 ; CPU:$84DB PRG:04DB A5 19 clc ; CPU:$84DD PRG:04DD 18 adc #$0E ; CPU:$84DE PRG:04DE 69 0E sta Zp19 ; CPU:$84E0 PRG:04E0 85 19 rts ; CPU:$84E2 PRG:04E2 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_84E3 ; Global: Branch target inside Sub: taken when 84E3. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_84E3: lda Zp19 ; CPU:$84E3 PRG:04E3 A5 19 asl a ; CPU:$84E5 PRG:04E5 0A lda Zp1A ; CPU:$84E6 PRG:04E6 A5 1A rol a ; CPU:$84E8 PRG:04E8 2A rol a ; CPU:$84E9 PRG:04E9 2A rol a ; CPU:$84EA PRG:04EA 2A rol a ; CPU:$84EB PRG:04EB 2A and #$38 ; CPU:$84EC PRG:04EC 29 38 sta Zp20 ; CPU:$84EE PRG:04EE 85 20 lda Zp19 ; CPU:$84F0 PRG:04F0 A5 19 ror a ; CPU:$84F2 PRG:04F2 6A ror a ; CPU:$84F3 PRG:04F3 6A and #$07 ; CPU:$84F4 PRG:04F4 29 07 ora Zp20 ; CPU:$84F6 PRG:04F6 05 20 tay ; CPU:$84F8 PRG:04F8 A8 clc ; CPU:$84F9 PRG:04F9 18 adc #$C0 ; CPU:$84FA PRG:04FA 69 C0 ldx Zp38 ; CPU:$84FC PRG:04FC A6 38 sta $03B8,x ; CPU:$84FE PRG:04FE 9D B8 03 inc Zp38 ; CPU:$8501 PRG:0501 E6 38 lda Zp19 ; CPU:$8503 PRG:0503 A5 19 and #$42 ; CPU:$8505 PRG:0505 29 42 ror a ; CPU:$8507 PRG:0507 6A ror a ; CPU:$8508 PRG:0508 6A ror a ; CPU:$8509 PRG:0509 6A ror a ; CPU:$850A PRG:050A 6A ror a ; CPU:$850B PRG:050B 6A sta Zp20 ; CPU:$850C PRG:050C 85 20 lda Zp19 ; CPU:$850E PRG:050E A5 19 ror a ; CPU:$8510 PRG:0510 6A and #$01 ; CPU:$8511 PRG:0511 29 01 ora Zp20 ; CPU:$8513 PRG:0513 05 20 and #$03 ; CPU:$8515 PRG:0515 29 03 tax ; CPU:$8517 PRG:0517 AA lda Zp1B ; CPU:$8518 PRG:0518 A5 1B cmp #$03 ; CPU:$851A PRG:051A C9 03 bcc WriteVramTiles_Loop3 ; CPU:$851C PRG:051C 90 16 lda $04E2,y ; CPU:$851E PRG:051E B9 E2 04 ora $854E,x ; CPU:$8521 PRG:0521 1D 4E 85 sta $04E2,y ; CPU:$8524 PRG:0524 99 E2 04 ldx Zp38 ; CPU:$8527 PRG:0527 A6 38 sta $03B8,x ; CPU:$8529 PRG:0529 9D B8 03 lda #$00 ; CPU:$852C PRG:052C A9 00 sta $03B9,x ; CPU:$852E PRG:052E 9D B9 03 inc Zp38 ; CPU:$8531 PRG:0531 E6 38 rts ; CPU:$8533 PRG:0533 60 ; ----------------------------------------------------------------------------- ; Routine: WriteVramTiles_Loop3 ; Global: Branch target inside WriteVramTiles: taken when Loop3. ; Local: Part of WriteVramTiles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- WriteVramTiles_Loop3: lda $04E2,y ; CPU:$8534 PRG:0534 B9 E2 04 and $854A,x ; CPU:$8537 PRG:0537 3D 4A 85 sta $04E2,y ; CPU:$853A PRG:053A 99 E2 04 ldx Zp38 ; CPU:$853D PRG:053D A6 38 sta $03B8,x ; CPU:$853F PRG:053F 9D B8 03 lda #$00 ; CPU:$8542 PRG:0542 A9 00 sta $03B9,x ; CPU:$8544 PRG:0544 9D B9 03 inc Zp38 ; CPU:$8547 PRG:0547 E6 38 rts ; CPU:$8549 PRG:0549 60 ; ---- data $854A-$8551 (8 bytes) ---- ; referenced by `ora $854E,x` at $8521 (operand $854E falls inside this region) ; referenced by `and $854A,x` at $8537 (operand $854A falls inside this region) .byte $FC, $F3, $CF, $3F, $03, $0C, $30, $C0 ; CPU:$854A PRG:054A FC F3 CF 3F 03 0C 30 C0 ; ----------------------------------------------------------------------------- ; Routine: Sub_8552 ; Global: Branch target inside Sub: taken when 8552. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_8552: lda FrameCounter ; CPU:$8552 PRG:0552 A5 31 adc IdleCounter ; CPU:$8554 PRG:0554 65 2F adc Zp3D ; CPU:$8556 PRG:0556 65 3D and #$3F ; CPU:$8558 PRG:0558 29 3F sta Zp3D ; CPU:$855A PRG:055A 85 3D rts ; CPU:$855C PRG:055C 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_855D ; Global: Branch target inside Sub: taken when 855D. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_855D: lda Zp11 ; CPU:$855D PRG:055D A5 11 tay ; CPU:$855F PRG:055F A8 ldx Zp12 ; CPU:$8560 PRG:0560 A6 12 sta $0358,x ; CPU:$8562 PRG:0562 9D 58 03 lda $F206,y ; CPU:$8565 PRG:0565 B9 06 F2 sta $03A8,x ; CPU:$8568 PRG:0568 9D A8 03 tya ; CPU:$856B PRG:056B 98 asl a ; CPU:$856C PRG:056C 0A tay ; CPU:$856D PRG:056D A8 lda $F236,y ; CPU:$856E PRG:056E B9 36 F2 sta $0388,x ; CPU:$8571 PRG:0571 9D 88 03 lda $F237,y ; CPU:$8574 PRG:0574 B9 37 F2 sta $0398,x ; CPU:$8577 PRG:0577 9D 98 03 txa ; CPU:$857A PRG:057A 8A asl a ; CPU:$857B PRG:057B 0A tax ; CPU:$857C PRG:057C AA lda $F216,y ; CPU:$857D PRG:057D B9 16 F2 sta $0368,x ; CPU:$8580 PRG:0580 9D 68 03 lda $F217,y ; CPU:$8583 PRG:0583 B9 17 F2 sta $0369,x ; CPU:$8586 PRG:0586 9D 69 03 rts ; CPU:$8589 PRG:0589 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_858A ; Global: Branch target inside Sub: taken when 858A. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_858A: ldx Zp36 ; CPU:$858A PRG:058A A6 36 lda Zp19 ; CPU:$858C PRG:058C A5 19 sta $0300,x ; CPU:$858E PRG:058E 9D 00 03 inx ; CPU:$8591 PRG:0591 E8 lda Zp1A ; CPU:$8592 PRG:0592 A5 1A sta $0300,x ; CPU:$8594 PRG:0594 9D 00 03 inx ; CPU:$8597 PRG:0597 E8 lda Zp17 ; CPU:$8598 PRG:0598 A5 17 sta $0300,x ; CPU:$859A PRG:059A 9D 00 03 inx ; CPU:$859D PRG:059D E8 lda Zp18 ; CPU:$859E PRG:059E A5 18 sta $0300,x ; CPU:$85A0 PRG:05A0 9D 00 03 inx ; CPU:$85A3 PRG:05A3 E8 stx Zp36 ; CPU:$85A4 PRG:05A4 86 36 rts ; CPU:$85A6 PRG:05A6 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_85A7 ; Global: Branch target inside Sub: taken when 85A7. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_85A7: ldx Zp37 ; CPU:$85A7 PRG:05A7 A6 37 lda Zp19 ; CPU:$85A9 PRG:05A9 A5 19 sta $0338,x ; CPU:$85AB PRG:05AB 9D 38 03 inx ; CPU:$85AE PRG:05AE E8 lda Zp1A ; CPU:$85AF PRG:05AF A5 1A sta $0338,x ; CPU:$85B1 PRG:05B1 9D 38 03 inx ; CPU:$85B4 PRG:05B4 E8 lda Zp17 ; CPU:$85B5 PRG:05B5 A5 17 sta $0338,x ; CPU:$85B7 PRG:05B7 9D 38 03 inx ; CPU:$85BA PRG:05BA E8 lda Zp18 ; CPU:$85BB PRG:05BB A5 18 sta $0338,x ; CPU:$85BD PRG:05BD 9D 38 03 inx ; CPU:$85C0 PRG:05C0 E8 stx Zp37 ; CPU:$85C1 PRG:05C1 86 37 rts ; CPU:$85C3 PRG:05C3 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_85C4 ; Global: Branch target inside Sub: taken when 85C4. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_85C4: lda PPUSTATUS ; CPU:$85C4 PRG:05C4 AD 02 20 lda #$3F ; CPU:$85C7 PRG:05C7 A9 3F sta PPUADDR ; CPU:$85C9 PRG:05C9 8D 06 20 lda #$00 ; CPU:$85CC PRG:05CC A9 00 sta PPUADDR ; CPU:$85CE PRG:05CE 8D 06 20 tay ; CPU:$85D1 PRG:05D1 A8 ; ----------------------------------------------------------------------------- ; Routine: WriteVramTiles_OnCarryClear ; Global: Branch target inside WriteVramTiles: taken when the addition or subtraction did not carry. ; Local: Part of WriteVramTiles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- WriteVramTiles_OnCarryClear: lda (Zp11),y ; CPU:$85D2 PRG:05D2 B1 11 sta PPUDATA ; CPU:$85D4 PRG:05D4 8D 07 20 iny ; CPU:$85D7 PRG:05D7 C8 cpy #$20 ; CPU:$85D8 PRG:05D8 C0 20 bcc WriteVramTiles_OnCarryClear; CPU:$85DA PRG:05DA 90 F6 rts ; CPU:$85DC PRG:05DC 60 ; ----------------------------------------------------------------------------- ; Routine: TickAnimationCounter ; Global: Advances the animation counter once per frame. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickAnimationCounter: inc Zp75 ; CPU:$85DD PRG:05DD E6 75 lda GameMode ; CPU:$85DF PRG:05DF A5 6A bne TickAnimationCounter_Loop ; CPU:$85E1 PRG:05E1 D0 01 rts ; CPU:$85E3 PRG:05E3 60 ; ----------------------------------------------------------------------------- ; Routine: TickAnimationCounter_Loop ; Global: Branch target inside TickAnimationCounter: taken when the loop repeats. ; Local: Part of TickAnimationCounter. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickAnimationCounter_Loop: jsr UpdateSprites ; CPU:$85E4 PRG:05E4 20 E9 82 lda GameMode ; CPU:$85E7 PRG:05E7 A5 6A jsr DispatchByJumpTable ; CPU:$85E9 PRG:05E9 20 73 81 ; ---- data $85EC-$8605 (26 bytes) ---- .byte $E3, $85, $06, $86, $5F, $8A, $2A, $C6, $A7, $C2, $D8, $C6, $AF, $8B, $55, $8F ; CPU:$85EC PRG:05EC E3 85 06 86 5F 8A 2A C6 A7 C2 D8 C6 AF 8B 55 8F .byte $42, $98, $B9, $94, $21, $96, $2E, $96, $1B, $97 ; CPU:$85FC PRG:05FC 42 98 B9 94 21 96 2E 96 1B 97 ; ----------------------------------------------------------------------------- ; Routine: ApplyGraphicsMode ; Global: Switches the PPU to the graphics mode the level asks for. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyGraphicsMode: lda Zp6C ; CPU:$8606 PRG:0606 A5 6C bne ApplyGraphicsMode_OnNonzero; CPU:$8608 PRG:0608 D0 6C lda #$00 ; CPU:$860A PRG:060A A9 00 sta $05E7 ; CPU:$860C PRG:060C 8D E7 05 sta $05E8 ; CPU:$860F PRG:060F 8D E8 05 sta $05E9 ; CPU:$8612 PRG:0612 8D E9 05 lda #$02 ; CPU:$8615 PRG:0615 A9 02 jsr ClearOamShadow ; CPU:$8617 PRG:0617 20 88 81 inc Zp6C ; CPU:$861A PRG:061A E6 6C lda #$00 ; CPU:$861C PRG:061C A9 00 sta Zp75 ; CPU:$861E PRG:061E 85 75 sta Zp76 ; CPU:$8620 PRG:0620 85 76 sta Zp2E ; CPU:$8622 PRG:0622 85 2E lda #$00 ; CPU:$8624 PRG:0624 A9 00 jsr BankedCall ; CPU:$8626 PRG:0626 20 04 80 ; ---- data $8629-$8662 (58 bytes) ---- .byte $A9, $00, $8D, $01, $02, $A9, $C0, $8D, $03, $02, $A9, $45, $8D, $00, $02, $A9 ; CPU:$8629 PRG:0629 A9 00 8D 01 02 A9 C0 8D 03 02 A9 45 8D 00 02 A9 .byte $E0, $8D, $02, $02, $A9, $0F, $8D, $E6, $05, $8D, $E5, $05, $A5, $00, $D0, $07 ; CPU:$8639 PRG:0639 E0 8D 02 02 A9 0F 8D E6 05 8D E5 05 A5 00 D0 07 .byte $20, $34, $8E, $A9, $01, $85, $00, $A2, $00, $20, $84, $90, $A9, $20, $85, $78 ; CPU:$8649 PRG:0649 20 34 8E A9 01 85 00 A2 00 20 84 90 A9 20 85 78 .byte $A5, $01, $29, $88, $09, $88, $85, $01, $A9, $03 ; CPU:$8659 PRG:0659 A5 01 29 88 09 88 85 01 A9 03 ; ----------------------------------------------------------------------------- ; Routine: Sub_8663 ; Global: Branch target inside Sub: taken when 8663. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_8663: sta a:$00DE ; CPU:$8663 PRG:0663 8D DE 00 lda #$01 ; CPU:$8666 PRG:0666 A9 01 sta a:$00DD ; CPU:$8668 PRG:0668 8D DD 00 lda #$05 ; CPU:$866B PRG:066B A9 05 jsr BankedCall ; CPU:$866D PRG:066D 20 04 80 ; ---- data $8670-$8675 (6 bytes) ---- .byte $A9, $00, $8D, $DD, $00, $60 ; CPU:$8670 PRG:0670 A9 00 8D DD 00 60 ; ----------------------------------------------------------------------------- ; Routine: ApplyGraphicsMode_OnNonzero ; Global: Branch target inside ApplyGraphicsMode: taken when the tested value is not zero. ; Local: Part of ApplyGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyGraphicsMode_OnNonzero: lda PPUSTATUS ; CPU:$8676 PRG:0676 AD 02 20 and #$40 ; CPU:$8679 PRG:0679 29 40 bne ApplyGraphicsMode_OnNonzero; CPU:$867B PRG:067B D0 F9 ; ----------------------------------------------------------------------------- ; Routine: ApplyGraphicsMode_OnZero ; Global: Branch target inside ApplyGraphicsMode: taken when the tested value is zero. ; Local: Part of ApplyGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyGraphicsMode_OnZero: lda PPUSTATUS ; CPU:$867D PRG:067D AD 02 20 and #$40 ; CPU:$8680 PRG:0680 29 40 beq ApplyGraphicsMode_OnZero ; CPU:$8682 PRG:0682 F0 F9 ldy #$18 ; CPU:$8684 PRG:0684 A0 18 ; ----------------------------------------------------------------------------- ; Routine: ApplyGraphicsMode_OnNonzero2 ; Global: Branch target inside ApplyGraphicsMode: taken when OnNonzero2. ; Local: Part of ApplyGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyGraphicsMode_OnNonzero2: dey ; CPU:$8686 PRG:0686 88 bne ApplyGraphicsMode_OnNonzero2 ; CPU:$8687 PRG:0687 D0 FD lda PPUSTATUS ; CPU:$8689 PRG:0689 AD 02 20 lda #$98 ; CPU:$868C PRG:068C A9 98 sta $03DE ; CPU:$868E PRG:068E 8D DE 03 sta PPUCTRL ; CPU:$8691 PRG:0691 8D 00 20 lda $05E6 ; CPU:$8694 PRG:0694 AD E6 05 bne ApplyGraphicsMode_Loop ; CPU:$8697 PRG:0697 D0 38 lda #$00 ; CPU:$8699 PRG:0699 A9 00 sta Zp6C ; CPU:$869B PRG:069B 85 6C lda #$03 ; CPU:$869D PRG:069D A9 03 sta GameMode ; CPU:$869F PRG:069F 85 6A lda #$02 ; CPU:$86A1 PRG:06A1 A9 02 sta Zp5B ; CPU:$86A3 PRG:06A3 85 5B sta Zp5D ; CPU:$86A5 PRG:06A5 85 5D sta Zp5A ; CPU:$86A7 PRG:06A7 85 5A sta Zp5C ; CPU:$86A9 PRG:06A9 85 5C lda #$5A ; CPU:$86AB PRG:06AB A9 5A sta $05E6 ; CPU:$86AD PRG:06AD 8D E6 05 lda #$00 ; CPU:$86B0 PRG:06B0 A9 00 sta $05E2 ; CPU:$86B2 PRG:06B2 8D E2 05 sta $05E1 ; CPU:$86B5 PRG:06B5 8D E1 05 sta $05E4 ; CPU:$86B8 PRG:06B8 8D E4 05 sta $05E3 ; CPU:$86BB PRG:06BB 8D E3 05 lda #$00 ; CPU:$86BE PRG:06BE A9 00 sta Zp95 ; CPU:$86C0 PRG:06C0 85 95 lda $06EF ; CPU:$86C2 PRG:06C2 AD EF 06 and #$01 ; CPU:$86C5 PRG:06C5 29 01 sta Zp6F ; CPU:$86C7 PRG:06C7 85 6F eor #$01 ; CPU:$86C9 PRG:06C9 49 01 sta Zp96 ; CPU:$86CB PRG:06CB 85 96 inc $06EF ; CPU:$86CD PRG:06CD EE EF 06 rts ; CPU:$86D0 PRG:06D0 60 ; ----------------------------------------------------------------------------- ; Routine: ApplyGraphicsMode_Loop ; Global: Branch target inside ApplyGraphicsMode: taken when the loop repeats. ; Local: Part of ApplyGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyGraphicsMode_Loop: jsr AnimatePalette ; CPU:$86D1 PRG:06D1 20 FC 89 lda $05E9 ; CPU:$86D4 PRG:06D4 AD E9 05 bne ApplyGraphicsMode_Loop4 ; CPU:$86D7 PRG:06D7 D0 53 lda $05E8 ; CPU:$86D9 PRG:06D9 AD E8 05 bne ApplyGraphicsMode_Loop2 ; CPU:$86DC PRG:06DC D0 12 lda NewButton1 ; CPU:$86DE PRG:06DE A5 2A cmp #$20 ; CPU:$86E0 PRG:06E0 C9 20 bne ApplyGraphicsMode_Loop4 ; CPU:$86E2 PRG:06E2 D0 48 lda #$01 ; CPU:$86E4 PRG:06E4 A9 01 sta $05E8 ; CPU:$86E6 PRG:06E6 8D E8 05 lda #$00 ; CPU:$86E9 PRG:06E9 A9 00 sta NewButton1 ; CPU:$86EB PRG:06EB 85 2A sta $05E7 ; CPU:$86ED PRG:06ED 8D E7 05 ; ----------------------------------------------------------------------------- ; Routine: ApplyGraphicsMode_Loop2 ; Global: Branch target inside ApplyGraphicsMode: taken when Loop2. ; Local: Part of ApplyGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyGraphicsMode_Loop2: lda $05E8 ; CPU:$86F0 PRG:06F0 AD E8 05 beq ApplyGraphicsMode_Loop4 ; CPU:$86F3 PRG:06F3 F0 37 ldx $05E7 ; CPU:$86F5 PRG:06F5 AE E7 05 lda NewButton1 ; CPU:$86F8 PRG:06F8 A5 2A beq ApplyGraphicsMode_Loop4 ; CPU:$86FA PRG:06FA F0 30 cmp $876E,x ; CPU:$86FC PRG:06FC DD 6E 87 beq ApplyGraphicsMode_Loop3 ; CPU:$86FF PRG:06FF F0 08 lda #$01 ; CPU:$8701 PRG:0701 A9 01 sta $05E9 ; CPU:$8703 PRG:0703 8D E9 05 jmp ApplyGraphicsMode_Loop4 ; CPU:$8706 PRG:0706 4C 2C 87 ; ----------------------------------------------------------------------------- ; Routine: ApplyGraphicsMode_Loop3 ; Global: Branch target inside ApplyGraphicsMode: taken when Loop3. ; Local: Part of ApplyGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyGraphicsMode_Loop3: inc $05E7 ; CPU:$8709 PRG:0709 EE E7 05 lda $05E7 ; CPU:$870C PRG:070C AD E7 05 cmp #$0C ; CPU:$870F PRG:070F C9 0C bcc ApplyGraphicsMode_Loop4 ; CPU:$8711 PRG:0711 90 19 lda #$01 ; CPU:$8713 PRG:0713 A9 01 sta Zp99 ; CPU:$8715 PRG:0715 85 99 lda #$00 ; CPU:$8717 PRG:0717 A9 00 sta Zp91 ; CPU:$8719 PRG:0719 85 91 sta Zp97 ; CPU:$871B PRG:071B 85 97 sta Zp6C ; CPU:$871D PRG:071D 85 6C sta $05E5 ; CPU:$871F PRG:071F 8D E5 05 lda #$08 ; CPU:$8722 PRG:0722 A9 08 sta GameMode ; CPU:$8724 PRG:0724 85 6A lda #$04 ; CPU:$8726 PRG:0726 A9 04 jsr Sub_8663 ; CPU:$8728 PRG:0728 20 63 86 rts ; CPU:$872B PRG:072B 60 ; ----------------------------------------------------------------------------- ; Routine: ApplyGraphicsMode_Loop4 ; Global: Branch target inside ApplyGraphicsMode: taken when Loop4. ; Local: Part of ApplyGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyGraphicsMode_Loop4: lda NewButton1 ; CPU:$872C PRG:072C A5 2A and #$10 ; CPU:$872E PRG:072E 29 10 beq ApplyGraphicsMode_Loop5 ; CPU:$8730 PRG:0730 F0 1C inc GameMode ; CPU:$8732 PRG:0732 E6 6A lda #$00 ; CPU:$8734 PRG:0734 A9 00 sta Zp6C ; CPU:$8736 PRG:0736 85 6C sta $01B0 ; CPU:$8738 PRG:0738 8D B0 01 ldy #$00 ; CPU:$873B PRG:073B A0 00 sty $05E5 ; CPU:$873D PRG:073D 8C E5 05 sty $05E6 ; CPU:$8740 PRG:0740 8C E6 05 lda #$F8 ; CPU:$8743 PRG:0743 A9 F8 ; ----------------------------------------------------------------------------- ; Routine: ApplyGraphicsMode_OnNonzero3 ; Global: Branch target inside ApplyGraphicsMode: taken when OnNonzero3. ; Local: Part of ApplyGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyGraphicsMode_OnNonzero3: sta $0200,y ; CPU:$8745 PRG:0745 99 00 02 iny ; CPU:$8748 PRG:0748 C8 iny ; CPU:$8749 PRG:0749 C8 iny ; CPU:$874A PRG:074A C8 iny ; CPU:$874B PRG:074B C8 bne ApplyGraphicsMode_OnNonzero3 ; CPU:$874C PRG:074C D0 F7 ; ----------------------------------------------------------------------------- ; Routine: ApplyGraphicsMode_Loop5 ; Global: Branch target inside ApplyGraphicsMode: taken when Loop5. ; Local: Part of ApplyGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyGraphicsMode_Loop5: rts ; CPU:$874E PRG:074E 60 ; ---- data $874F-$89FB (685 bytes) ---- ; referenced by `cmp $876E,x` at $86FC (operand $876E falls inside this region) ; referenced by `lda $89F4,x` at $8A20 (operand $89F4 falls inside this region) ; referenced by `lda $89F5,x` at $8A26 (operand $89F5 falls inside this region) .byte $01, $A5, $2A, $29, $10, $F0, $17, $A9, $00, $85, $6C, $85, $6A, $8D, $B0, $01 ; CPU:$874F PRG:074F 01 A5 2A 29 10 F0 17 A9 00 85 6C 85 6A 8D B0 01 .byte $8D, $00, $20, $8D, $01, $20, $A5, $01, $29, $88, $09, $88, $85, $01, $60, $08 ; CPU:$875F PRG:075F 8D 00 20 8D 01 20 A5 01 29 88 09 88 85 01 60 08 .byte $08, $04, $04, $02, $02, $01, $01, $80, $80, $40, $40, $A2, $00, $A0, $00, $BD ; CPU:$876F PRG:076F 08 04 04 02 02 01 01 80 80 40 40 A2 00 A0 00 BD .byte $EC, $87, $99, $00, $02, $99, $F8, $02, $C8, $E8, $E0, $08, $90, $F1, $A9, $21 ; CPU:$877F PRG:077F EC 87 99 00 02 99 F8 02 C8 E8 E0 08 90 F1 A9 21 .byte $8D, $FA, $02, $A9, $22, $8D, $FE, $02, $A0, $00, $A5, $77, $C9, $40, $B0, $02 ; CPU:$878F PRG:078F 8D FA 02 A9 22 8D FE 02 A0 00 A5 77 C9 40 B0 02 .byte $A0, $F8, $0A, $AA, $BD, $F4, $87, $18, $69, $7A, $99, $03, $02, $BD, $F5, $87 ; CPU:$879F PRG:079F A0 F8 0A AA BD F4 87 18 69 7A 99 03 02 BD F5 87 .byte $18, $69, $60, $99, $00, $02, $E6, $77, $A5, $77, $C9, $80, $90, $04, $A9, $00 ; CPU:$87AF PRG:07AF 18 69 60 99 00 02 E6 77 A5 77 C9 80 90 04 A9 00 .byte $85, $77, $A0, $FC, $A5, $78, $C9, $40, $B0, $02, $A0, $04, $0A, $AA, $BD, $F4 ; CPU:$87BF PRG:07BF 85 77 A0 FC A5 78 C9 40 B0 02 A0 04 0A AA BD F4 .byte $88, $18, $69, $7A, $99, $03, $02, $BD, $F5, $88, $18, $69, $60, $99, $00, $02 ; CPU:$87CF PRG:07CF 88 18 69 7A 99 03 02 BD F5 88 18 69 60 99 00 02 .byte $C6, $78, $A5, $78, $C9, $81, $90, $04, $A9, $7F, $85, $78, $60, $F8, $BF, $01 ; CPU:$87DF PRG:07DF C6 78 A5 78 C9 81 90 04 A9 7F 85 78 60 F8 BF 01 .byte $00, $F8, $BF, $02, $00, $45, $29, $44, $2A, $43, $2B, $42, $2B, $41, $2C, $3F ; CPU:$87EF PRG:07EF 00 F8 BF 02 00 45 29 44 2A 43 2B 42 2B 41 2C 3F .byte $2D, $3E, $2D, $3C, $2E, $3A, $2E, $38, $2E, $36, $2E, $33, $2E, $31, $2E, $2E ; CPU:$87FF PRG:07FF 2D 3E 2D 3C 2E 3A 2E 38 2E 36 2E 33 2E 31 2E 2E .byte $2E, $2C, $2D, $29, $2D, $26, $2C, $23, $2C, $20, $2B, $1D, $2A, $1A, $29, $17 ; CPU:$880F PRG:080F 2E 2C 2D 29 2D 26 2C 23 2C 20 2B 1D 2A 1A 29 17 .byte $28, $13, $27, $10, $25, $0C, $24, $09, $22, $06, $21, $02, $1F, $FF, $1E, $FB ; CPU:$881F PRG:081F 28 13 27 10 25 0C 24 09 22 06 21 02 1F FF 1E FB .byte $1C, $F8, $1A, $F4, $18, $F1, $16, $EE, $14, $EA, $12, $E7, $10, $E4, $0E, $E1 ; CPU:$882F PRG:082F 1C F8 1A F4 18 F1 16 EE 14 EA 12 E7 10 E4 0E E1 .byte $0C, $DE, $09, $DB, $07, $D8, $05, $D5, $03, $D2, $00, $D0, $FE, $CD, $FC, $CB ; CPU:$883F PRG:083F 0C DE 09 DB 07 D8 05 D5 03 D2 00 D0 FE CD FC CB .byte $FA, $C9, $F7, $C7, $F5, $C5, $F3, $C3, $F1, $C1, $EF, $C0, $ED, $BE, $EB, $BD ; CPU:$884F PRG:084F FA C9 F7 C7 F5 C5 F3 C3 F1 C1 EF C0 ED BE EB BD .byte $E9, $BC, $E7, $BB, $E5, $BB, $E3, $BA, $E1, $BA, $E0, $B9, $DE, $B9, $DD, $BA ; CPU:$885F PRG:085F E9 BC E7 BB E5 BB E3 BA E1 BA E0 B9 DE B9 DD BA .byte $DB, $BA, $DA, $BA, $D9, $BB, $D7, $BC, $D6, $BD, $D5, $BE, $D5, $BF, $D4, $C1 ; CPU:$886F PRG:086F DB BA DA BA D9 BB D7 BC D6 BD D5 BE D5 BF D4 C1 .byte $D3, $C2, $D3, $C4, $D2, $C6, $D2, $C8, $D2, $CA, $D2, $CD, $D2, $CF, $D2, $D2 ; CPU:$887F PRG:087F D3 C2 D3 C4 D2 C6 D2 C8 D2 CA D2 CD D2 CF D2 D2 .byte $D2, $D4, $D3, $D7, $D3, $DA, $D4, $DD, $D4, $E0, $D5, $E3, $D6, $E6, $D7, $E9 ; CPU:$888F PRG:088F D2 D4 D3 D7 D3 DA D4 DD D4 E0 D5 E3 D6 E6 D7 E9 .byte $D8, $ED, $D9, $F0, $DB, $F4, $DC, $F7, $DE, $FA, $DF, $FE, $E1, $01, $E2, $05 ; CPU:$889F PRG:089F D8 ED D9 F0 DB F4 DC F7 DE FA DF FE E1 01 E2 05 .byte $E4, $08, $E6, $0C, $E8, $0F, $EA, $12, $EC, $16, $EE, $19, $F0, $1C, $F2, $1F ; CPU:$88AF PRG:08AF E4 08 E6 0C E8 0F EA 12 EC 16 EE 19 F0 1C F2 1F .byte $F4, $22, $F7, $25, $F9, $28, $FB, $2B, $FD, $2E, $00, $30, $02, $33, $04, $35 ; CPU:$88BF PRG:08BF F4 22 F7 25 F9 28 FB 2B FD 2E 00 30 02 33 04 35 .byte $06, $37, $09, $39, $0B, $3B, $0D, $3D, $0F, $3F, $11, $40, $13, $42, $15, $43 ; CPU:$88CF PRG:08CF 06 37 09 39 0B 3B 0D 3D 0F 3F 11 40 13 42 15 43 .byte $17, $44, $19, $45, $1B, $45, $1D, $46, $1F, $46, $20, $47, $22, $47, $23, $46 ; CPU:$88DF PRG:08DF 17 44 19 45 1B 45 1D 46 1F 46 20 47 22 47 23 46 .byte $25, $46, $26, $46, $27, $BA, $27, $BA, $26, $BA, $25, $B9, $23, $B9, $22, $BA ; CPU:$88EF PRG:08EF 25 46 26 46 27 BA 27 BA 26 BA 25 B9 23 B9 22 BA .byte $20, $BA, $1F, $BB, $1D, $BB, $1B, $BC, $19, $BD, $17, $BE, $15, $C0, $13, $C1 ; CPU:$88FF PRG:08FF 20 BA 1F BB 1D BB 1B BC 19 BD 17 BE 15 C0 13 C1 .byte $11, $C3, $0F, $C5, $0D, $C7, $0B, $C9, $09, $CB, $06, $CD, $04, $D0, $02, $D2 ; CPU:$890F PRG:090F 11 C3 0F C5 0D C7 0B C9 09 CB 06 CD 04 D0 02 D2 .byte $00, $D5, $FD, $D8, $FB, $DB, $F9, $DE, $F7, $E1, $F4, $E4, $F2, $E7, $F0, $EA ; CPU:$891F PRG:091F 00 D5 FD D8 FB DB F9 DE F7 E1 F4 E4 F2 E7 F0 EA .byte $EE, $EE, $EC, $F1, $EA, $F4, $E8, $F8, $E6, $FB, $E4, $FF, $E2, $02, $E1, $06 ; CPU:$892F PRG:092F EE EE EC F1 EA F4 E8 F8 E6 FB E4 FF E2 02 E1 06 .byte $DF, $09, $DE, $0C, $DC, $10, $DB, $13, $D9, $17, $D8, $1A, $D7, $1D, $D6, $20 ; CPU:$893F PRG:093F DF 09 DE 0C DC 10 DB 13 D9 17 D8 1A D7 1D D6 20 .byte $D5, $23, $D4, $26, $D4, $29, $D3, $2C, $D3, $2E, $D2, $31, $D2, $33, $D2, $36 ; CPU:$894F PRG:094F D5 23 D4 26 D4 29 D3 2C D3 2E D2 31 D2 33 D2 36 .byte $D2, $38, $D2, $3A, $D2, $3C, $D2, $3E, $D3, $3F, $D3, $41, $D4, $42, $D5, $43 ; CPU:$895F PRG:095F D2 38 D2 3A D2 3C D2 3E D3 3F D3 41 D4 42 D5 43 .byte $D5, $44, $D6, $45, $D7, $46, $D9, $46, $DA, $46, $DB, $47, $DD, $47, $DE, $46 ; CPU:$896F PRG:096F D5 44 D6 45 D7 46 D9 46 DA 46 DB 47 DD 47 DE 46 .byte $E0, $46, $E1, $45, $E3, $45, $E5, $44, $E7, $43, $E9, $42, $EB, $40, $ED, $3F ; CPU:$897F PRG:097F E0 46 E1 45 E3 45 E5 44 E7 43 E9 42 EB 40 ED 3F .byte $EF, $3D, $F1, $3B, $F3, $39, $F5, $37, $F7, $35, $FA, $33, $FC, $30, $FE, $2E ; CPU:$898F PRG:098F EF 3D F1 3B F3 39 F5 37 F7 35 FA 33 FC 30 FE 2E .byte $00, $2B, $03, $28, $05, $25, $07, $22, $09, $1F, $0C, $1C, $0E, $19, $10, $16 ; CPU:$899F PRG:099F 00 2B 03 28 05 25 07 22 09 1F 0C 1C 0E 19 10 16 .byte $12, $12, $14, $0F, $16, $0C, $18, $08, $1A, $05, $1C, $01, $1E, $FE, $1F, $FA ; CPU:$89AF PRG:09AF 12 12 14 0F 16 0C 18 08 1A 05 1C 01 1E FE 1F FA .byte $21, $F7, $22, $F4, $24, $F0, $25, $ED, $27, $E9, $28, $E6, $29, $E3, $2A, $E0 ; CPU:$89BF PRG:09BF 21 F7 22 F4 24 F0 25 ED 27 E9 28 E6 29 E3 2A E0 .byte $2B, $DD, $2C, $DA, $2C, $D7, $2D, $D4, $2D, $D2, $2E, $CF, $2E, $CD, $2E, $CA ; CPU:$89CF PRG:09CF 2B DD 2C DA 2C D7 2D D4 2D D2 2E CF 2E CD 2E CA .byte $2E, $C8, $2E, $C6, $2E, $C4, $2E, $C2, $2D, $C1, $2D, $BF, $2C, $BE, $2B, $BD ; CPU:$89DF PRG:09DF 2E C8 2E C6 2E C4 2E C2 2D C1 2D BF 2C BE 2B BD .byte $2B, $BC, $2A, $BB, $29, $0F, $A7, $2F, $A7, $4F, $A7, $6F, $A7 ; CPU:$89EF PRG:09EF 2B BC 2A BB 29 0F A7 2F A7 4F A7 6F A7 ; ----------------------------------------------------------------------------- ; Routine: AnimatePalette ; Global: Cycles the palette entries of the animated tiles. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- AnimatePalette: lda Zp75 ; CPU:$89FC PRG:09FC A5 75 and #$07 ; CPU:$89FE PRG:09FE 29 07 bne AnimatePalette_Loop ; CPU:$8A00 PRG:0A00 D0 33 lda Zp76 ; CPU:$8A02 PRG:0A02 A5 76 cmp #$04 ; CPU:$8A04 PRG:0A04 C9 04 bcs AnimatePalette_Loop ; CPU:$8A06 PRG:0A06 B0 2D lda #$3F ; CPU:$8A08 PRG:0A08 A9 3F sta $01B0 ; CPU:$8A0A PRG:0A0A 8D B0 01 lda #$00 ; CPU:$8A0D PRG:0A0D A9 00 sta $01B1 ; CPU:$8A0F PRG:0A0F 8D B1 01 lda #$10 ; CPU:$8A12 PRG:0A12 A9 10 sta $01B2 ; CPU:$8A14 PRG:0A14 8D B2 01 lda #$01 ; CPU:$8A17 PRG:0A17 A9 01 sta $01B3 ; CPU:$8A19 PRG:0A19 8D B3 01 lda Zp76 ; CPU:$8A1C PRG:0A1C A5 76 asl a ; CPU:$8A1E PRG:0A1E 0A tax ; CPU:$8A1F PRG:0A1F AA lda $89F4,x ; CPU:$8A20 PRG:0A20 BD F4 89 sta $01B4 ; CPU:$8A23 PRG:0A23 8D B4 01 lda $89F5,x ; CPU:$8A26 PRG:0A26 BD F5 89 sta $01B5 ; CPU:$8A29 PRG:0A29 8D B5 01 lda #$00 ; CPU:$8A2C PRG:0A2C A9 00 sta $01B6 ; CPU:$8A2E PRG:0A2E 8D B6 01 sta Zp75 ; CPU:$8A31 PRG:0A31 85 75 inc Zp76 ; CPU:$8A33 PRG:0A33 E6 76 ; ----------------------------------------------------------------------------- ; Routine: AnimatePalette_Loop ; Global: Branch target inside AnimatePalette: taken when the loop repeats. ; Local: Part of AnimatePalette. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- AnimatePalette_Loop: rts ; CPU:$8A35 PRG:0A35 60 ; ---- data $8A36-$8A5E (41 bytes) ---- .byte $A5, $75, $C9, $20, $90, $15, $A5, $76, $C9, $05, $B0, $0F, $E6, $76, $A2, $00 ; CPU:$8A36 PRG:0A36 A5 75 C9 20 90 15 A5 76 C9 05 B0 0F E6 76 A2 00 .byte $BD, $52, $8A, $9D, $B0, $01, $E8, $E0, $0D, $90, $F5, $60, $23, $4A, $0F, $01 ; CPU:$8A46 PRG:0A46 BD 52 8A 9D B0 01 E8 E0 0D 90 F5 60 23 4A 0F 01 .byte $A0, $94, $23, $26, $03, $03, $AF, $94, $00 ; CPU:$8A56 PRG:0A56 A0 94 23 26 03 03 AF 94 00 ; ----------------------------------------------------------------------------- ; Routine: InitLevelState ; Global: Sets up the state of a new level. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitLevelState: lda Zp6C ; CPU:$8A5F PRG:0A5F A5 6C beq InitLevelState_Loop ; CPU:$8A61 PRG:0A61 F0 03 jmp Sub_8AE1 ; CPU:$8A63 PRG:0A63 4C E1 8A ; ----------------------------------------------------------------------------- ; Routine: InitLevelState_Loop ; Global: Branch target inside InitLevelState: taken when the loop repeats. ; Local: Part of InitLevelState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitLevelState_Loop: sta Zp95 ; CPU:$8A66 PRG:0A66 85 95 sta Zp96 ; CPU:$8A68 PRG:0A68 85 96 sta $05E5 ; CPU:$8A6A PRG:0A6A 8D E5 05 sta $05E6 ; CPU:$8A6D PRG:0A6D 8D E6 05 sta Zp91 ; CPU:$8A70 PRG:0A70 85 91 tax ; CPU:$8A72 PRG:0A72 AA ldy #$14 ; CPU:$8A73 PRG:0A73 A0 14 ; ----------------------------------------------------------------------------- ; Routine: InitLevelState_OnNonzero ; Global: Branch target inside InitLevelState: taken when the tested value is not zero. ; Local: Part of InitLevelState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitLevelState_OnNonzero: sta $05AC,x ; CPU:$8A75 PRG:0A75 9D AC 05 inx ; CPU:$8A78 PRG:0A78 E8 dey ; CPU:$8A79 PRG:0A79 88 bne InitLevelState_OnNonzero ; CPU:$8A7A PRG:0A7A D0 F9 jsr ClearSpriteSlots ; CPU:$8A7C PRG:0A7C 20 28 92 jsr ClearOamShadow ; CPU:$8A7F PRG:0A7F 20 88 81 jsr Sub_C061 ; CPU:$8A82 PRG:0A82 20 61 C0 jsr ClearBubbleSlots ; CPU:$8A85 PRG:0A85 20 C7 AE inc Zp6C ; CPU:$8A88 PRG:0A88 E6 6C lda #$02 ; CPU:$8A8A PRG:0A8A A9 02 jsr ClearOamShadow ; CPU:$8A8C PRG:0A8C 20 88 81 ldx #$00 ; CPU:$8A8F PRG:0A8F A2 00 lda #$03 ; CPU:$8A91 PRG:0A91 A9 03 ; ----------------------------------------------------------------------------- ; Routine: InitLevelState_OnNonzero2 ; Global: Branch target inside InitLevelState: taken when OnNonzero2. ; Local: Part of InitLevelState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitLevelState_OnNonzero2: sta $0202,x ; CPU:$8A93 PRG:0A93 9D 02 02 inx ; CPU:$8A96 PRG:0A96 E8 inx ; CPU:$8A97 PRG:0A97 E8 inx ; CPU:$8A98 PRG:0A98 E8 inx ; CPU:$8A99 PRG:0A99 E8 bne InitLevelState_OnNonzero2 ; CPU:$8A9A PRG:0A9A D0 F7 ldx #$00 ; CPU:$8A9C PRG:0A9C A2 00 jsr Sub_9084 ; CPU:$8A9E PRG:0A9E 20 84 90 lda #$01 ; CPU:$8AA1 PRG:0AA1 A9 01 sta Zp2E ; CPU:$8AA3 PRG:0AA3 85 2E lda #$00 ; CPU:$8AA5 PRG:0AA5 A9 00 jsr BankedCall ; CPU:$8AA7 PRG:0AA7 20 04 80 ; ---- data $8AAA-$8AE0 (55 bytes) ---- .byte $A9, $00, $AA, $9D, $00, $06, $E8, $D0, $FA, $A2, $00, $BD, $22, $93, $9D, $00 ; CPU:$8AAA PRG:0AAA A9 00 AA 9D 00 06 E8 D0 FA A2 00 BD 22 93 9D 00 .byte $02, $E8, $E0, $14, $90, $F5, $A9, $00, $85, $03, $A9, $EF, $85, $04, $A5, $01 ; CPU:$8ABA PRG:0ABA 02 E8 E0 14 90 F5 A9 00 85 03 A9 EF 85 04 A5 01 .byte $29, $E7, $09, $01, $85, $01, $A9, $03, $85, $9A, $A9, $00, $85, $5A, $A2, $00 ; CPU:$8ACA PRG:0ACA 29 E7 09 01 85 01 A9 03 85 9A A9 00 85 5A A2 00 .byte $86, $5B, $A9, $05, $4C, $63, $86 ; CPU:$8ADA PRG:0ADA 86 5B A9 05 4C 63 86 ; ----------------------------------------------------------------------------- ; Routine: Sub_8AE1 ; Global: Branch target inside Sub: taken when 8AE1. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_8AE1: jsr ReadPlayerInput ; CPU:$8AE1 PRG:0AE1 20 A9 90 jsr Sub_90FC ; CPU:$8AE4 PRG:0AE4 20 FC 90 jsr BuildOamBuffer ; CPU:$8AE7 PRG:0AE7 20 AC 91 lda NewButton1 ; CPU:$8AEA PRG:0AEA A5 2A and #$10 ; CPU:$8AEC PRG:0AEC 29 10 beq InitLevelState_Loop2 ; CPU:$8AEE PRG:0AEE F0 1E inc GameMode ; CPU:$8AF0 PRG:0AF0 E6 6A lda #$00 ; CPU:$8AF2 PRG:0AF2 A9 00 sta Zp6C ; CPU:$8AF4 PRG:0AF4 85 6C lda Zp70 ; CPU:$8AF6 PRG:0AF6 A5 70 sta Zp5A ; CPU:$8AF8 PRG:0AF8 85 5A sta Zp5C ; CPU:$8AFA PRG:0AFA 85 5C lda Zp72 ; CPU:$8AFC PRG:0AFC A5 72 sta Zp5B ; CPU:$8AFE PRG:0AFE 85 5B sta Zp5D ; CPU:$8B00 PRG:0B00 85 5D jsr Sub_C6B7 ; CPU:$8B02 PRG:0B02 20 B7 C6 jsr ClearActorSlots ; CPU:$8B05 PRG:0B05 20 4F BB jsr Sub_9703 ; CPU:$8B08 PRG:0B08 20 03 97 jsr Sub_970F ; CPU:$8B0B PRG:0B0B 20 0F 97 ; ----------------------------------------------------------------------------- ; Routine: InitLevelState_Loop2 ; Global: Branch target inside InitLevelState: taken when Loop2. ; Local: Part of InitLevelState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitLevelState_Loop2: rts ; CPU:$8B0E PRG:0B0E 60 ; ---- data $8B0F-$8E33 (805 bytes) ---- .byte $81, $99, $81, $99, $81, $99, $81, $99, $81, $99, $81, $99, $A5, $6C, $D0, $3D ; CPU:$8B0F PRG:0B0F 81 99 81 99 81 99 81 99 81 99 81 99 A5 6C D0 3D .byte $85, $75, $85, $92, $E6, $6C, $20, $88, $81, $A5, $91, $18, $69, $04, $85, $2E ; CPU:$8B1F PRG:0B1F 85 75 85 92 E6 6C 20 88 81 A5 91 18 69 04 85 2E .byte $A9, $00, $20, $04, $80, $A5, $91, $4A, $18, $69, $02, $AA, $20, $84, $90, $20 ; CPU:$8B2F PRG:0B2F A9 00 20 04 80 A5 91 4A 18 69 02 AA 20 84 90 20 .byte $28, $92, $A6, $91, $A5, $01, $29, $E6, $1D, $0F, $8B, $85, $01, $A9, $00, $85 ; CPU:$8B3F PRG:0B3F 28 92 A6 91 A5 01 29 E6 1D 0F 8B 85 01 A9 00 85 .byte $03, $85, $04, $A5, $99, $D0, $05, $A9, $04, $20, $63, $86, $60, $A9, $01, $20 ; CPU:$8B4F PRG:0B4F 03 85 04 A5 99 D0 05 A9 04 20 63 86 60 A9 01 20 .byte $04, $80, $A5, $99, $D0, $2F, $A5, $2A, $29, $C0, $D0, $06, $A5, $2B, $29, $C0 ; CPU:$8B5F PRG:0B5F 04 80 A5 99 D0 2F A5 2A 29 C0 D0 06 A5 2B 29 C0 .byte $F0, $22, $A9, $00, $85, $6C, $8D, $B0, $01, $A9, $04, $85, $6A, $E6, $91, $A5 ; CPU:$8B6F PRG:0B6F F0 22 A9 00 85 6C 8D B0 01 A9 04 85 6A E6 91 A5 .byte $91, $C9, $0C, $D0, $07, $E6, $99, $A9, $06, $85, $6A, $60, $A5, $01, $29, $88 ; CPU:$8B7F PRG:0B7F 91 C9 0C D0 07 E6 99 A9 06 85 6A 60 A5 01 29 88 .byte $09, $88, $85, $01, $60, $E6, $97, $D0, $16, $A9, $00, $85, $6C, $E6, $91, $A5 ; CPU:$8B8F PRG:0B8F 09 88 85 01 60 E6 97 D0 16 A9 00 85 6C E6 91 A5 .byte $91, $C9, $0C, $90, $0A, $A9, $07, $85, $6A, $A9, $00, $85, $6C, $85, $99, $60 ; CPU:$8B9F PRG:0B9F 91 C9 0C 90 0A A9 07 85 6A A9 00 85 6C 85 99 60 .byte $A5, $6C, $D0, $67, $A5, $99, $D0, $09, $E6, $97, $A5, $97, $C9, $70, $B0, $01 ; CPU:$8BAF PRG:0BAF A5 6C D0 67 A5 99 D0 09 E6 97 A5 97 C9 70 B0 01 .byte $60, $A9, $00, $85, $97, $E6, $6C, $20, $88, $81, $20, $28, $92, $A2, $00, $20 ; CPU:$8BBF PRG:0BBF 60 A9 00 85 97 E6 6C 20 88 81 20 28 92 A2 00 20 .byte $84, $90, $A9, $02, $85, $2E, $A9, $00, $20, $04, $80, $A5, $01, $29, $E6, $09 ; CPU:$8BCF PRG:0BCF 84 90 A9 02 85 2E A9 00 20 04 80 A5 01 29 E6 09 .byte $01, $85, $01, $A9, $00, $85, $03, $85, $04, $20, $4C, $8C, $A9, $00, $AA, $85 ; CPU:$8BDF PRG:0BDF 01 85 01 A9 00 85 03 85 04 20 4C 8C A9 00 AA 85 .byte $79, $85, $7A, $85, $8C, $85, $8D, $85, $8E, $85, $8F, $85, $87, $BD, $2F, $8E ; CPU:$8BEF PRG:0BEF 79 85 7A 85 8C 85 8D 85 8E 85 8F 85 87 BD 2F 8E .byte $95, $7D, $95, $83, $E8, $E0, $04, $90, $F4, $A5, $7F, $85, $88, $85, $89, $A5 ; CPU:$8BFF PRG:0BFF 95 7D 95 83 E8 E0 04 90 F4 A5 7F 85 88 85 89 A5 .byte $80, $85, $8A, $85, $8B, $A9, $03, $20, $63, $86, $60, $20, $42, $8E, $A5, $2A ; CPU:$8C0F PRG:0C0F 80 85 8A 85 8B A9 03 20 63 86 60 20 42 8E A5 2A .byte $29, $10, $F0, $19, $A9, $02, $85, $6A, $A9, $00, $85, $6C, $A5, $99, $F0, $0D ; CPU:$8C1F PRG:0C1F 29 10 F0 19 A9 02 85 6A A9 00 85 6C A5 99 F0 0D .byte $A9, $08, $85, $6A, $A9, $00, $85, $91, $A9, $04, $20, $63, $86, $60, $A0, $00 ; CPU:$8C2F PRG:0C2F A9 08 85 6A A9 00 85 91 A9 04 20 63 86 60 A0 00 .byte $BD, $AC, $05, $99, $90, $01, $E8, $C8, $C0, $0A, $90, $F4, $60, $A2, $0A, $86 ; CPU:$8C3F PRG:0C3F BD AC 05 99 90 01 E8 C8 C0 0A 90 F4 60 A2 0A 86 .byte $90, $20, $3D, $8C, $20, $7F, $8C, $A2, $00, $86, $90, $20, $3D, $8C, $20, $7F ; CPU:$8C4F PRG:0C4F 90 20 3D 8C 20 7F 8C A2 00 86 90 20 3D 8C 20 7F .byte $8C, $A5, $1D, $C5, $1C, $90, $18, $E6, $1D, $A5, $82, $18, $69, $40, $85, $82 ; CPU:$8C5F PRG:0C5F 8C A5 1D C5 1C 90 18 E6 1D A5 82 18 69 40 85 82 .byte $A5, $81, $69, $00, $85, $81, $A9, $0D, $18, $6D, $E0, $05, $8D, $E0, $05, $60 ; CPU:$8C6F PRG:0C6F A5 81 69 00 85 81 A9 0D 18 6D E0 05 8D E0 05 60 .byte $A0, $00, $84, $11, $A2, $00, $BD, $94, $01, $F0, $18, $B9, $07, $01, $30, $0D ; CPU:$8C7F PRG:0C7F A0 00 84 11 A2 00 BD 94 01 F0 18 B9 07 01 30 0D .byte $BD, $94, $01, $18, $69, $30, $D9, $07, $01, $F0, $11, $90, $15, $20, $84, $8D ; CPU:$8C8F PRG:0C8F BD 94 01 18 69 30 D9 07 01 F0 11 90 15 20 84 8D .byte $4C, $D4, $8C, $B9, $07, $01, $30, $04, $C9, $31, $B0, $06, $E8, $C8, $E0, $06 ; CPU:$8C9F PRG:0C9F 4C D4 8C B9 07 01 30 04 C9 31 B0 06 E8 C8 E0 06 .byte $90, $D4, $E6, $11, $A5, $11, $C9, $0A, $B0, $10, $A5, $11, $85, $13, $A9, $0D ; CPU:$8CAF PRG:0CAF 90 D4 E6 11 A5 11 C9 0A B0 10 A5 11 85 13 A9 0D .byte $85, $15, $20, $D5, $82, $A4, $17, $4C, $83, $8C, $A6, $90, $F0, $05, $85, $1D ; CPU:$8CBF PRG:0CBF 85 15 20 D5 82 A4 17 4C 83 8C A6 90 F0 05 85 1D .byte $4C, $D4, $8C, $85, $1C, $A0, $00, $84, $25, $A2, $00, $86, $24, $8A, $0A, $AA ; CPU:$8CCF PRG:0CCF 4C D4 8C 85 1C A0 00 84 25 A2 00 86 24 8A 0A AA .byte $BD, $78, $8D, $85, $07, $BD, $79, $8D, $85, $08, $A5, $25, $85, $13, $A9, $40 ; CPU:$8CDF PRG:0CDF BD 78 8D 85 07 BD 79 8D 85 08 A5 25 85 13 A9 40 .byte $85, $15, $20, $D5, $82, $A5, $07, $18, $65, $17, $8D, $B1, $01, $A5, $08, $65 ; CPU:$8CEF PRG:0CEF 85 15 20 D5 82 A5 07 18 65 17 8D B1 01 A5 08 65 .byte $18, $8D, $B0, $01, $A5, $90, $F0, $08, $A4, $25, $C4, $1D, $D0, $20, $F0, $06 ; CPU:$8CFF PRG:0CFF 18 8D B0 01 A5 90 F0 08 A4 25 C4 1D D0 20 F0 06 .byte $A4, $25, $C4, $1C, $D0, $18, $A6, $24, $D0, $14, $A5, $90, $D0, $04, $A2, $00 ; CPU:$8D0F PRG:0D0F A4 25 C4 1C D0 18 A6 24 D0 14 A5 90 D0 04 A2 00 .byte $F0, $02, $A2, $06, $AD, $B0, $01, $95, $7B, $AD, $B1, $01, $95, $7C, $A6, $24 ; CPU:$8D1F PRG:0D1F F0 02 A2 06 AD B0 01 95 7B AD B1 01 95 7C A6 24 .byte $BD, $7E, $8D, $85, $1B, $BD, $81, $8D, $8D, $B2, $01, $A9, $01, $8D, $B3, $01 ; CPU:$8D2F PRG:0D2F BD 7E 8D 85 1B BD 81 8D 8D B2 01 A9 01 8D B3 01 .byte $A5, $25, $85, $13, $A9, $0D, $85, $15, $20, $D5, $82, $A9, $00, $18, $65, $17 ; CPU:$8D3F PRG:0D3F A5 25 85 13 A9 0D 85 15 20 D5 82 A9 00 18 65 17 .byte $65, $1B, $8D, $B4, $01, $A9, $01, $8D, $B5, $01, $A9, $00, $8D, $B6, $01, $20 ; CPU:$8D4F PRG:0D4F 65 1B 8D B4 01 A9 01 8D B5 01 A9 00 8D B6 01 20 .byte $B1, $81, $E6, $24, $A6, $24, $E0, $03, $B0, $03, $4C, $DC, $8C, $E6, $25, $A5 ; CPU:$8D5F PRG:0D5F B1 81 E6 24 A6 24 E0 03 B0 03 4C DC 8C E6 25 A5 .byte $25, $C9, $0A, $B0, $03, $4C, $D8, $8C, $60, $27, $25, $2E, $25, $35, $25, $00 ; CPU:$8D6F PRG:0D6F 25 C9 0A B0 03 4C D8 8C 60 27 25 2E 25 35 25 00 .byte $03, $07, $03, $04, $06, $A6, $90, $F0, $07, $A5, $11, $85, $1D, $4C, $93, $8D ; CPU:$8D7F PRG:0D7F 03 07 03 04 06 A6 90 F0 07 A5 11 85 1D 4C 93 8D .byte $A5, $11, $85, $1C, $85, $1E, $85, $13, $A9, $0D, $85, $15, $20, $D5, $82, $A5 ; CPU:$8D8F PRG:0D8F A5 11 85 1C 85 1E 85 13 A9 0D 85 15 20 D5 82 A5 .byte $17, $85, $22, $A6, $22, $E0, $75, $B0, $27, $A2, $08, $86, $11, $A5, $11, $85 ; CPU:$8D9F PRG:0D9F 17 85 22 A6 22 E0 75 B0 27 A2 08 86 11 A5 11 85 .byte $13, $A9, $0D, $85, $15, $20, $D5, $82, $A6, $17, $E4, $22, $90, $12, $A0, $00 ; CPU:$8DAF PRG:0DAF 13 A9 0D 85 15 20 D5 82 A6 17 E4 22 90 12 A0 00 .byte $BD, $00, $01, $9D, $0D, $01, $E8, $C8, $C0, $0D, $90, $F4, $C6, $11, $10, $DD ; CPU:$8DBF PRG:0DBF BD 00 01 9D 0D 01 E8 C8 C0 0D 90 F4 C6 11 10 DD .byte $A2, $00, $A5, $90, $F0, $01, $E8, $A5, $22, $9D, $DF, $05, $AA, $A9, $FF, $9D ; CPU:$8DCF PRG:0DCF A2 00 A5 90 F0 01 E8 A5 22 9D DF 05 AA A9 FF 9D .byte $00, $01, $E8, $9D, $00, $01, $E8, $9D, $00, $01, $E8, $A0, $00, $84, $1E, $B9 ; CPU:$8DDF PRG:0DDF 00 01 E8 9D 00 01 E8 9D 00 01 E8 A0 00 84 1E B9 .byte $90, $01, $D0, $08, $A5, $1E, $D0, $04, $A9, $FF, $D0, $08, $E6, $1E, $B9, $90 ; CPU:$8DEF PRG:0DEF 90 01 D0 08 A5 1E D0 04 A9 FF D0 08 E6 1E B9 90 .byte $01, $18, $69, $30, $9D, $00, $01, $E8, $C8, $C0, $04, $90, $E2, $A0, $00, $84 ; CPU:$8DFF PRG:0DFF 01 18 69 30 9D 00 01 E8 C8 C0 04 90 E2 A0 00 84 .byte $1E, $B9, $94, $01, $D0, $08, $A5, $1E, $D0, $04, $A9, $FF, $D0, $08, $E6, $1E ; CPU:$8E0F PRG:0E0F 1E B9 94 01 D0 08 A5 1E D0 04 A9 FF D0 08 E6 1E .byte $B9, $94, $01, $18, $69, $30, $9D, $00, $01, $E8, $C8, $C0, $06, $90, $E2, $60 ; CPU:$8E1F PRG:0E1F B9 94 01 18 69 30 9D 00 01 E8 C8 C0 06 90 E2 60 .byte $01, $01, $85, $94, $FF ; CPU:$8E2F PRG:0E2F 01 01 85 94 FF ; ----------------------------------------------------------------------------- ; Routine: CopyStackPage ; Global: Copies the stack page so the game can use it as scratch RAM. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CopyStackPage: ldx #$00 ; CPU:$8E34 PRG:0E34 A2 00 ; ----------------------------------------------------------------------------- ; Routine: CopyStackPage_OnCarryClear ; Global: Branch target inside CopyStackPage: taken when the addition or subtraction did not carry. ; Local: Part of CopyStackPage. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CopyStackPage_OnCarryClear: lda $9403,x ; CPU:$8E36 PRG:0E36 BD 03 94 sta $0100,x ; CPU:$8E39 PRG:0E39 9D 00 01 inx ; CPU:$8E3C PRG:0E3C E8 cpx #$82 ; CPU:$8E3D PRG:0E3D E0 82 bcc CopyStackPage_OnCarryClear ; CPU:$8E3F PRG:0E3F 90 F5 rts ; CPU:$8E41 PRG:0E41 60 ; ---- data $8E42-$9083 (578 bytes) ---- .byte $A5, $6F, $F0, $09, $A0, $06, $85, $90, $A2, $01, $20, $55, $8E, $A2, $00, $A0 ; CPU:$8E42 PRG:0E42 A5 6F F0 09 A0 06 85 90 A2 01 20 55 8E A2 00 A0 .byte $00, $85, $90, $B5, $1C, $C9, $0A, $B0, $E6, $B5, $79, $C9, $03, $B0, $E0, $B5 ; CPU:$8E52 PRG:0E52 00 85 90 B5 1C C9 0A B0 E6 B5 79 C9 03 B0 E0 B5 .byte $8E, $F0, $0D, $B9, $7C, $00, $18, $69, $01, $99, $7C, $00, $A9, $00, $95, $8E ; CPU:$8E62 PRG:0E62 8E F0 0D B9 7C 00 18 69 01 99 7C 00 A9 00 95 8E .byte $A5, $75, $29, $07, $D0, $1D, $A5, $75, $29, $08, $F0, $0D, $A9, $33, $99, $7F ; CPU:$8E72 PRG:0E72 A5 75 29 07 D0 1D A5 75 29 08 F0 0D A9 33 99 7F .byte $00, $A9, $8E, $99, $80, $00, $4C, $95, $8E, $B5, $88, $99, $7F, $00, $B5, $8A ; CPU:$8E82 PRG:0E82 00 A9 8E 99 80 00 4C 95 8E B5 88 99 7F 00 B5 8A .byte $99, $80, $00, $B5, $2A, $29, $80, $F0, $3B, $F6, $79, $F6, $8E, $B5, $88, $99 ; CPU:$8E92 PRG:0E92 99 80 00 B5 2A 29 80 F0 3B F6 79 F6 8E B5 88 99 .byte $7F, $00, $B5, $8A, $99, $80, $00, $A9, $85, $95, $88, $A9, $94, $95, $8A, $98 ; CPU:$8EA2 PRG:0EA2 7F 00 B5 8A 99 80 00 A9 85 95 88 A9 94 95 8A 98 .byte $48, $BD, $DF, $05, $18, $75, $79, $A8, $88, $B5, $8C, $18, $69, $41, $C9, $5B ; CPU:$8EB2 PRG:0EB2 48 BD DF 05 18 75 79 A8 88 B5 8C 18 69 41 C9 5B .byte $D0, $02, $A9, $40, $99, $00, $01, $68, $A8, $A9, $00, $95, $8C, $A9, $05, $85 ; CPU:$8EC2 PRG:0EC2 D0 02 A9 40 99 00 01 68 A8 A9 00 95 8C A9 05 85 .byte $75, $4C, $2E, $8F, $B5, $2A, $29, $01, $F0, $1D, $F6, $88, $D0, $02, $F6, $8A ; CPU:$8ED2 PRG:0ED2 75 4C 2E 8F B5 2A 29 01 F0 1D F6 88 D0 02 F6 8A .byte $F6, $8C, $B5, $8C, $C9, $1B, $90, $38, $A9, $85, $95, $88, $A9, $94, $95, $8A ; CPU:$8EE2 PRG:0EE2 F6 8C B5 8C C9 1B 90 38 A9 85 95 88 A9 94 95 8A .byte $A9, $00, $95, $8C, $4C, $22, $8F, $B5, $2A, $29, $02, $F0, $23, $B5, $88, $38 ; CPU:$8EF2 PRG:0EF2 A9 00 95 8C 4C 22 8F B5 2A 29 02 F0 23 B5 88 38 .byte $E9, $01, $95, $88, $B0, $02, $D6, $8A, $D6, $8C, $10, $14, $A9, $1A, $95, $8C ; CPU:$8F02 PRG:0F02 E9 01 95 88 B0 02 D6 8A D6 8C 10 14 A9 1A 95 8C .byte $A9, $85, $18, $69, $1A, $95, $88, $A9, $94, $69, $00, $95, $8A, $4C, $22, $8F ; CPU:$8F12 PRG:0F12 A9 85 18 69 1A 95 88 A9 94 69 00 95 8A 4C 22 8F .byte $B5, $79, $C9, $03, $90, $06, $A9, $00, $8D, $B0, $01, $60, $A2, $00, $A5, $1C ; CPU:$8F22 PRG:0F22 B5 79 C9 03 90 06 A9 00 8D B0 01 60 A2 00 A5 1C .byte $C9, $0A, $B0, $0B, $B5, $7B, $9D, $B0, $01, $E8, $E0, $0C, $90, $F6, $60, $A0 ; CPU:$8F32 PRG:0F32 C9 0A B0 0B B5 7B 9D B0 01 E8 E0 0C 90 F6 60 A0 .byte $06, $B9, $7B, $00, $9D, $B0, $01, $C8, $E8, $E0, $06, $90, $F4, $A9, $00, $9D ; CPU:$8F42 PRG:0F42 06 B9 7B 00 9D B0 01 C8 E8 E0 06 90 F4 A9 00 9D .byte $B0, $01, $60, $A5, $6C, $D0, $36, $E6, $6C, $A9, $02, $20, $88, $81, $20, $28 ; CPU:$8F52 PRG:0F52 B0 01 60 A5 6C D0 36 E6 6C A9 02 20 88 81 20 28 .byte $92, $A2, $00, $20, $84, $90, $A9, $03, $85, $2E, $A9, $00, $20, $04, $80, $A9 ; CPU:$8F62 PRG:0F62 92 A2 00 20 84 90 A9 03 85 2E A9 00 20 04 80 A9 .byte $12, $85, $2E, $A9, $00, $20, $04, $80, $A5, $01, $29, $E4, $09, $00, $85, $01 ; CPU:$8F72 PRG:0F72 12 85 2E A9 00 20 04 80 A5 01 29 E4 09 00 85 01 .byte $A9, $00, $85, $76, $8D, $DB, $03, $A9, $05, $20, $63, $86, $60, $A5, $6C, $C9 ; CPU:$8F82 PRG:0F82 A9 00 85 76 8D DB 03 A9 05 20 63 86 60 A5 6C C9 .byte $01, $D0, $12, $A5, $31, $29, $07, $D0, $0B, $20, $09, $90, $A5, $76, $C9, $05 ; CPU:$8F92 PRG:0F92 01 D0 12 A5 31 29 07 D0 0B 20 09 90 A5 76 C9 05 .byte $90, $02, $E6, $6C, $60, $A5, $6C, $C9, $02, $D0, $18, $A5, $31, $29, $3F, $D0 ; CPU:$8FA2 PRG:0FA2 90 02 E6 6C 60 A5 6C C9 02 D0 18 A5 31 29 3F D0 .byte $11, $E6, $76, $A5, $76, $C9, $0A, $90, $09, $E6, $6C, $A9, $03, $8D, $DB, $03 ; CPU:$8FB2 PRG:0FB2 11 E6 76 A5 76 C9 0A 90 09 E6 6C A9 03 8D DB 03 .byte $85, $76, $60, $C9, $03, $D0, $20, $A5, $31, $29, $07, $D0, $19, $20, $09, $90 ; CPU:$8FC2 PRG:0FC2 85 76 60 C9 03 D0 20 A5 31 29 07 D0 19 20 09 90 .byte $A5, $76, $10, $12, $E6, $6C, $A9, $00, $8D, $DB, $03, $85, $76, $A5, $01, $09 ; CPU:$8FD2 PRG:0FD2 A5 76 10 12 E6 6C A9 00 8D DB 03 85 76 A5 01 09 .byte $01, $85, $01, $8D, $DE, $03, $60, $C9, $04, $D0, $12, $A5, $31, $29, $07, $D0 ; CPU:$8FE2 PRG:0FE2 01 85 01 8D DE 03 60 C9 04 D0 12 A5 31 29 07 D0 .byte $0B, $20, $09, $90, $A5, $76, $C9, $05, $90, $02, $E6, $6C, $60, $A5, $2A, $29 ; CPU:$8FF2 PRG:0FF2 0B 20 09 90 A5 76 C9 05 90 02 E6 6C 60 A5 2A 29 .byte $10, $F0, $03, $4C, $36, $80, $60, $A2, $00, $BD, $36, $90, $9D, $B0, $01, $E8 ; CPU:$9002 PRG:1002 10 F0 03 4C 36 80 60 A2 00 BD 36 90 9D B0 01 E8 .byte $E0, $04, $90, $F5, $A5, $76, $0A, $A8, $B9, $3A, $90, $9D, $B0, $01, $B9, $3B ; CPU:$9012 PRG:1012 E0 04 90 F5 A5 76 0A A8 B9 3A 90 9D B0 01 B9 3B .byte $90, $9D, $B1, $01, $A9, $00, $9D, $B2, $01, $AD, $DB, $03, $D0, $03, $E6, $76 ; CPU:$9022 PRG:1022 90 9D B1 01 A9 00 9D B2 01 AD DB 03 D0 03 E6 76 .byte $60, $C6, $76, $60, $3F, $00, $10, $01, $0F, $A7, $44, $90, $54, $90, $64, $90 ; CPU:$9032 PRG:1032 60 C6 76 60 3F 00 10 01 0F A7 44 90 54 90 64 90 .byte $74, $90, $FF, $00, $00, $00, $FF, $00, $00, $00, $FF, $00, $00, $00, $FF, $00 ; CPU:$9042 PRG:1042 74 90 FF 00 00 00 FF 00 00 00 FF 00 00 00 FF 00 .byte $00, $00, $FF, $10, $10, $10, $FF, $10, $10, $10, $FF, $10, $10, $10, $FF, $10 ; CPU:$9052 PRG:1052 00 00 FF 10 10 10 FF 10 10 10 FF 10 10 10 FF 10 .byte $10, $10, $FF, $20, $20, $20, $FF, $20, $20, $20, $FF, $20, $20, $20, $FF, $20 ; CPU:$9062 PRG:1062 10 10 FF 20 20 20 FF 20 20 20 FF 20 20 20 FF 20 .byte $20, $20, $FF, $30, $30, $30, $FF, $30, $30, $30, $FF, $30, $30, $30, $FF, $30 ; CPU:$9072 PRG:1072 20 20 FF 30 30 30 FF 30 30 30 FF 30 30 30 FF 30 .byte $30, $30 ; CPU:$9082 PRG:1082 30 30 ; ----------------------------------------------------------------------------- ; Routine: Sub_9084 ; Global: Branch target inside Sub: taken when 9084. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_9084: jsr SwitchPrgBankKeepA ; CPU:$9084 PRG:1084 20 80 FF lda $9090,x ; CPU:$9087 PRG:1087 BD 90 90 sta $9090,x ; CPU:$908A PRG:108A 9D 90 90 sta PrgBankNumber ; CPU:$908D PRG:108D 85 2C rts ; CPU:$908F PRG:108F 60 ; ---- data $9090-$90A8 (25 bytes) ---- ; referenced by `lda $9090,x` at $9087 (operand $9090 falls inside this region) ; referenced by `sta $9090,x` at $908A (operand $9090 falls inside this region) .byte $00, $01, $02, $03, $04, $05, $06, $07, $A2, $00, $BD, $36, $93, $C9, $FF, $F0 ; CPU:$9090 PRG:1090 00 01 02 03 04 05 06 07 A2 00 BD 36 93 C9 FF F0 .byte $07, $9D, $08, $02, $E8, $4C, $9A, $90, $60 ; CPU:$90A0 PRG:10A0 07 9D 08 02 E8 4C 9A 90 60 ; ----------------------------------------------------------------------------- ; Routine: ReadPlayerInput ; Global: Turns the raw button bits into the player's movement. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ReadPlayerInput: lda NewButton1 ; CPU:$90A9 PRG:10A9 A5 2A and #$84 ; CPU:$90AB PRG:10AB 29 84 beq ReadPlayerInput_Loop ; CPU:$90AD PRG:10AD F0 0C inc Zp74 ; CPU:$90AF PRG:10AF E6 74 lda Zp74 ; CPU:$90B1 PRG:10B1 A5 74 cmp #$05 ; CPU:$90B3 PRG:10B3 C9 05 bcc ReadPlayerInput_Loop ; CPU:$90B5 PRG:10B5 90 04 lda #$00 ; CPU:$90B7 PRG:10B7 A9 00 sta Zp74 ; CPU:$90B9 PRG:10B9 85 74 ; ----------------------------------------------------------------------------- ; Routine: ReadPlayerInput_Loop ; Global: Branch target inside ReadPlayerInput: taken when the loop repeats. ; Local: Part of ReadPlayerInput. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ReadPlayerInput_Loop: lda NewButton1 ; CPU:$90BB PRG:10BB A5 2A and #$48 ; CPU:$90BD PRG:10BD 29 48 beq ReadPlayerInput_Loop2 ; CPU:$90BF PRG:10BF F0 08 dec Zp74 ; CPU:$90C1 PRG:10C1 C6 74 bpl ReadPlayerInput_Loop2 ; CPU:$90C3 PRG:10C3 10 04 lda #$04 ; CPU:$90C5 PRG:10C5 A9 04 sta Zp74 ; CPU:$90C7 PRG:10C7 85 74 ; ----------------------------------------------------------------------------- ; Routine: ReadPlayerInput_Loop2 ; Global: Branch target inside ReadPlayerInput: taken when Loop2. ; Local: Part of ReadPlayerInput. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ReadPlayerInput_Loop2: lda Zp71 ; CPU:$90C9 PRG:10C9 A5 71 cmp #$02 ; CPU:$90CB PRG:10CB C9 02 bne ReadPlayerInput_Loop3 ; CPU:$90CD PRG:10CD D0 0A lda #$00 ; CPU:$90CF PRG:10CF A9 00 sta Zp72 ; CPU:$90D1 PRG:10D1 85 72 ldx Zp74 ; CPU:$90D3 PRG:10D3 A6 74 cpx #$03 ; CPU:$90D5 PRG:10D5 E0 03 beq ReadPlayerInput_Loop5 ; CPU:$90D7 PRG:10D7 F0 1D ; ----------------------------------------------------------------------------- ; Routine: ReadPlayerInput_Loop3 ; Global: Branch target inside ReadPlayerInput: taken when Loop3. ; Local: Part of ReadPlayerInput. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ReadPlayerInput_Loop3: ldx Zp74 ; CPU:$90D9 PRG:10D9 A6 74 lda NewButton1 ; CPU:$90DB PRG:10DB A5 2A and #$01 ; CPU:$90DD PRG:10DD 29 01 beq ReadPlayerInput_Loop4 ; CPU:$90DF PRG:10DF F0 09 lda Zp6F,x ; CPU:$90E1 PRG:10E1 B5 6F cmp $90F7,x ; CPU:$90E3 PRG:10E3 DD F7 90 bcs ReadPlayerInput_Loop4 ; CPU:$90E6 PRG:10E6 B0 02 inc Zp6F,x ; CPU:$90E8 PRG:10E8 F6 6F ; ----------------------------------------------------------------------------- ; Routine: ReadPlayerInput_Loop4 ; Global: Branch target inside ReadPlayerInput: taken when Loop4. ; Local: Part of ReadPlayerInput. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ReadPlayerInput_Loop4: lda NewButton1 ; CPU:$90EA PRG:10EA A5 2A and #$02 ; CPU:$90EC PRG:10EC 29 02 beq ReadPlayerInput_Loop5 ; CPU:$90EE PRG:10EE F0 06 lda Zp6F,x ; CPU:$90F0 PRG:10F0 B5 6F beq ReadPlayerInput_Loop5 ; CPU:$90F2 PRG:10F2 F0 02 dec Zp6F,x ; CPU:$90F4 PRG:10F4 D6 6F ; ----------------------------------------------------------------------------- ; Routine: ReadPlayerInput_Loop5 ; Global: Branch target inside ReadPlayerInput: taken when Loop5. ; Local: Part of ReadPlayerInput. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ReadPlayerInput_Loop5: rts ; CPU:$90F6 PRG:10F6 60 ; ---- data $90F7-$90FB (5 bytes) ---- ; referenced by `cmp $90F7,x` at $90E3 (operand $90F7 falls inside this region) .byte $01, $03, $02, $04, $02 ; CPU:$90F7 PRG:10F7 01 03 02 04 02 ; ----------------------------------------------------------------------------- ; Routine: Sub_90FC ; Global: Branch target inside Sub: taken when 90FC. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_90FC: ldy #$00 ; CPU:$90FC PRG:10FC A0 00 lda Zp6F ; CPU:$90FE PRG:10FE A5 6F asl a ; CPU:$9100 PRG:1100 0A tax ; CPU:$9101 PRG:1101 AA lda $923A,x ; CPU:$9102 PRG:1102 BD 3A 92 sta Zp11 ; CPU:$9105 PRG:1105 85 11 lda $923B,x ; CPU:$9107 PRG:1107 BD 3B 92 sta Zp12 ; CPU:$910A PRG:110A 85 12 lda $929A,x ; CPU:$910C PRG:110C BD 9A 92 sta $04E2,y ; CPU:$910F PRG:110F 99 E2 04 iny ; CPU:$9112 PRG:1112 C8 lda $929B,x ; CPU:$9113 PRG:1113 BD 9B 92 sta $04E2,y ; CPU:$9116 PRG:1116 99 E2 04 iny ; CPU:$9119 PRG:1119 C8 lda Zp70 ; CPU:$911A PRG:111A A5 70 asl a ; CPU:$911C PRG:111C 0A tax ; CPU:$911D PRG:111D AA lda $923E,x ; CPU:$911E PRG:111E BD 3E 92 sta Zp13 ; CPU:$9121 PRG:1121 85 13 lda $923F,x ; CPU:$9123 PRG:1123 BD 3F 92 sta Zp14 ; CPU:$9126 PRG:1126 85 14 lda $929E,x ; CPU:$9128 PRG:1128 BD 9E 92 sta $04E2,y ; CPU:$912B PRG:112B 99 E2 04 iny ; CPU:$912E PRG:112E C8 lda $929F,x ; CPU:$912F PRG:112F BD 9F 92 sta $04E2,y ; CPU:$9132 PRG:1132 99 E2 04 iny ; CPU:$9135 PRG:1135 C8 lda Zp71 ; CPU:$9136 PRG:1136 A5 71 asl a ; CPU:$9138 PRG:1138 0A tax ; CPU:$9139 PRG:1139 AA lda $9246,x ; CPU:$913A PRG:113A BD 46 92 sta Zp15 ; CPU:$913D PRG:113D 85 15 lda $9247,x ; CPU:$913F PRG:113F BD 47 92 sta Zp16 ; CPU:$9142 PRG:1142 85 16 lda $92A6,x ; CPU:$9144 PRG:1144 BD A6 92 sta $04E2,y ; CPU:$9147 PRG:1147 99 E2 04 iny ; CPU:$914A PRG:114A C8 lda $92A7,x ; CPU:$914B PRG:114B BD A7 92 sta $04E2,y ; CPU:$914E PRG:114E 99 E2 04 iny ; CPU:$9151 PRG:1151 C8 ldx #$00 ; CPU:$9152 PRG:1152 A2 00 lda $924C,x ; CPU:$9154 PRG:1154 BD 4C 92 sta Zp17 ; CPU:$9157 PRG:1157 85 17 lda $924D,x ; CPU:$9159 PRG:1159 BD 4D 92 sta Zp18 ; CPU:$915C PRG:115C 85 18 lda Zp17 ; CPU:$915E PRG:115E A5 17 clc ; CPU:$9160 PRG:1160 18 adc Zp72 ; CPU:$9161 PRG:1161 65 72 sta Zp17 ; CPU:$9163 PRG:1163 85 17 lda Zp18 ; CPU:$9165 PRG:1165 A5 18 adc #$00 ; CPU:$9167 PRG:1167 69 00 sta Zp18 ; CPU:$9169 PRG:1169 85 18 lda Zp72 ; CPU:$916B PRG:116B A5 72 asl a ; CPU:$916D PRG:116D 0A sta Zp21 ; CPU:$916E PRG:116E 85 21 lda $92B2,x ; CPU:$9170 PRG:1170 BD B2 92 sta $04E2,y ; CPU:$9173 PRG:1173 99 E2 04 lda $92B3,x ; CPU:$9176 PRG:1176 BD B3 92 sta $04E3,y ; CPU:$9179 PRG:1179 99 E3 04 lda $04E2,y ; CPU:$917C PRG:117C B9 E2 04 clc ; CPU:$917F PRG:117F 18 adc Zp21 ; CPU:$9180 PRG:1180 65 21 sta $04E2,y ; CPU:$9182 PRG:1182 99 E2 04 lda $04E3,y ; CPU:$9185 PRG:1185 B9 E3 04 adc #$00 ; CPU:$9188 PRG:1188 69 00 sta $04E3,y ; CPU:$918A PRG:118A 99 E3 04 iny ; CPU:$918D PRG:118D C8 iny ; CPU:$918E PRG:118E C8 lda Zp73 ; CPU:$918F PRG:118F A5 73 asl a ; CPU:$9191 PRG:1191 0A tax ; CPU:$9192 PRG:1192 AA lda $924E,x ; CPU:$9193 PRG:1193 BD 4E 92 sta Zp19 ; CPU:$9196 PRG:1196 85 19 lda $924F,x ; CPU:$9198 PRG:1198 BD 4F 92 sta Zp1A ; CPU:$919B PRG:119B 85 1A lda $92AC,x ; CPU:$919D PRG:119D BD AC 92 sta $04E2,y ; CPU:$91A0 PRG:11A0 99 E2 04 iny ; CPU:$91A3 PRG:11A3 C8 lda $92AD,x ; CPU:$91A4 PRG:11A4 BD AD 92 sta $04E2,y ; CPU:$91A7 PRG:11A7 99 E2 04 iny ; CPU:$91AA PRG:11AA C8 rts ; CPU:$91AB PRG:11AB 60 ; ----------------------------------------------------------------------------- ; Routine: BuildOamBuffer ; Global: Fills the sprite shadow from the actor and bubble tables. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- BuildOamBuffer: lda #$00 ; CPU:$91AC PRG:11AC A9 00 sta Zp21 ; CPU:$91AE PRG:11AE 85 21 lda #$14 ; CPU:$91B0 PRG:11B0 A9 14 sta Zp1B ; CPU:$91B2 PRG:11B2 85 1B ; ----------------------------------------------------------------------------- ; Routine: BuildOamBuffer_OnCarryClear ; Global: Branch target inside BuildOamBuffer: taken when the addition or subtraction did not carry. ; Local: Part of BuildOamBuffer. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- BuildOamBuffer_OnCarryClear: ldx Zp21 ; CPU:$91B4 PRG:11B4 A6 21 lda $9234,x ; CPU:$91B6 PRG:11B6 BD 34 92 sta Zp20 ; CPU:$91B9 PRG:11B9 85 20 sta Zp23 ; CPU:$91BB PRG:11BB 85 23 txa ; CPU:$91BD PRG:11BD 8A asl a ; CPU:$91BE PRG:11BE 0A tax ; CPU:$91BF PRG:11BF AA lda Zp11,x ; CPU:$91C0 PRG:11C0 B5 11 sta ControllerBits ; CPU:$91C2 PRG:11C2 85 05 lda Zp12,x ; CPU:$91C4 PRG:11C4 B5 12 sta Zp06 ; CPU:$91C6 PRG:11C6 85 06 lda $04E2,x ; CPU:$91C8 PRG:11C8 BD E2 04 sta ControllerByte ; CPU:$91CB PRG:11CB 85 07 lda $04E3,x ; CPU:$91CD PRG:11CD BD E3 04 sta Zp08 ; CPU:$91D0 PRG:11D0 85 08 lda Zp1B ; CPU:$91D2 PRG:11D2 A5 1B pha ; CPU:$91D4 PRG:11D4 48 ldy #$00 ; CPU:$91D5 PRG:11D5 A0 00 ; ----------------------------------------------------------------------------- ; Routine: BuildOamBuffer_OnNonzero ; Global: Branch target inside BuildOamBuffer: taken when the tested value is not zero. ; Local: Part of BuildOamBuffer. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- BuildOamBuffer_OnNonzero: ldx Zp1B ; CPU:$91D7 PRG:11D7 A6 1B lda (ControllerBits),y ; CPU:$91D9 PRG:11D9 B1 05 sta $0201,x ; CPU:$91DB PRG:11DB 9D 01 02 inc Zp1B ; CPU:$91DE PRG:11DE E6 1B inc Zp1B ; CPU:$91E0 PRG:11E0 E6 1B inc Zp1B ; CPU:$91E2 PRG:11E2 E6 1B inc Zp1B ; CPU:$91E4 PRG:11E4 E6 1B iny ; CPU:$91E6 PRG:11E6 C8 dec Zp20 ; CPU:$91E7 PRG:11E7 C6 20 bne BuildOamBuffer_OnNonzero ; CPU:$91E9 PRG:11E9 D0 EC pla ; CPU:$91EB PRG:11EB 68 sta Zp1B ; CPU:$91EC PRG:11EC 85 1B ldy #$00 ; CPU:$91EE PRG:11EE A0 00 ; ----------------------------------------------------------------------------- ; Routine: BuildOamBuffer_OnNonzero2 ; Global: Branch target inside BuildOamBuffer: taken when OnNonzero2. ; Local: Part of BuildOamBuffer. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- BuildOamBuffer_OnNonzero2: ldx Zp1B ; CPU:$91F0 PRG:11F0 A6 1B lda (ControllerByte),y ; CPU:$91F2 PRG:11F2 B1 07 sta $0200,x ; CPU:$91F4 PRG:11F4 9D 00 02 iny ; CPU:$91F7 PRG:11F7 C8 lda (ControllerByte),y ; CPU:$91F8 PRG:11F8 B1 07 sta $0203,x ; CPU:$91FA PRG:11FA 9D 03 02 lda Zp74 ; CPU:$91FD PRG:11FD A5 74 cmp Zp21 ; CPU:$91FF PRG:11FF C5 21 bne BuildOamBuffer_Loop ; CPU:$9201 PRG:1201 D0 0A lda Zp75 ; CPU:$9203 PRG:1203 A5 75 and #$04 ; CPU:$9205 PRG:1205 29 04 bne BuildOamBuffer_Loop ; CPU:$9207 PRG:1207 D0 04 lda #$00 ; CPU:$9209 PRG:1209 A9 00 beq BuildOamBuffer_Loop2 ; CPU:$920B PRG:120B F0 02 ; ----------------------------------------------------------------------------- ; Routine: BuildOamBuffer_Loop ; Global: Branch target inside BuildOamBuffer: taken when the loop repeats. ; Local: Part of BuildOamBuffer. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- BuildOamBuffer_Loop: lda #$03 ; CPU:$920D PRG:120D A9 03 ; ----------------------------------------------------------------------------- ; Routine: BuildOamBuffer_Loop2 ; Global: Branch target inside BuildOamBuffer: taken when Loop2. ; Local: Part of BuildOamBuffer. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- BuildOamBuffer_Loop2: sta $0202,x ; CPU:$920F PRG:120F 9D 02 02 inc Zp1B ; CPU:$9212 PRG:1212 E6 1B inc Zp1B ; CPU:$9214 PRG:1214 E6 1B inc Zp1B ; CPU:$9216 PRG:1216 E6 1B inc Zp1B ; CPU:$9218 PRG:1218 E6 1B iny ; CPU:$921A PRG:121A C8 dec Zp23 ; CPU:$921B PRG:121B C6 23 bne BuildOamBuffer_OnNonzero2 ; CPU:$921D PRG:121D D0 D1 inc Zp21 ; CPU:$921F PRG:121F E6 21 ldx Zp21 ; CPU:$9221 PRG:1221 A6 21 cpx #$05 ; CPU:$9223 PRG:1223 E0 05 bcc BuildOamBuffer_OnCarryClear; CPU:$9225 PRG:1225 90 8D rts ; CPU:$9227 PRG:1227 60 ; ----------------------------------------------------------------------------- ; Routine: ClearSpriteSlots ; Global: Empties the sixteen sprite slots. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearSpriteSlots: ldx #$00 ; CPU:$9228 PRG:1228 A2 00 txa ; CPU:$922A PRG:122A 8A ; ----------------------------------------------------------------------------- ; Routine: ClearSpriteSlots_OnNonzero ; Global: Branch target inside ClearSpriteSlots: taken when the tested value is not zero. ; Local: Part of ClearSpriteSlots. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearSpriteSlots_OnNonzero: sta $0358,x ; CPU:$922B PRG:122B 9D 58 03 inx ; CPU:$922E PRG:122E E8 cpx #$10 ; CPU:$922F PRG:122F E0 10 bne ClearSpriteSlots_OnNonzero ; CPU:$9231 PRG:1231 D0 F8 rts ; CPU:$9233 PRG:1233 60 ; ---- data $9234-$9620 (1005 bytes) ---- ; referenced by `lda $9403,x` at $8E36 (operand $9403 falls inside this region) ; referenced by `lda $923A,x` at $9102 (operand $923A falls inside this region) ; referenced by `lda $923B,x` at $9107 (operand $923B falls inside this region) ; referenced by `lda $929A,x` at $910C (operand $929A falls inside this region) ; referenced by `lda $929B,x` at $9113 (operand $929B falls inside this region) ; referenced by `lda $923E,x` at $911E (operand $923E falls inside this region) ; ... and 16 further references from decoded code .byte $08, $01, $07, $01, $05, $05, $54, $92, $5C, $92, $64, $92, $65, $92, $66, $92 ; CPU:$9234 PRG:1234 08 01 07 01 05 05 54 92 5C 92 64 92 65 92 66 92 .byte $67, $92, $68, $92, $6F, $92, $76, $92, $7D, $92, $86, $92, $8B, $92, $90, $92 ; CPU:$9244 PRG:1244 67 92 68 92 6F 92 76 92 7D 92 86 92 8B 92 90 92 .byte $31, $50, $4C, $41, $59, $45, $52, $FF, $32, $50, $4C, $41, $59, $45, $52, $53 ; CPU:$9254 PRG:1254 31 50 4C 41 59 45 52 FF 32 50 4C 41 59 45 52 53 .byte $31, $32, $33, $34, $45, $41, $53, $59, $FF, $FF, $FF, $48, $41, $52, $44, $FF ; CPU:$9264 PRG:1264 31 32 33 34 45 41 53 59 FF FF FF 48 41 52 44 FF .byte $FF, $FF, $53, $54, $41, $43, $4B, $45, $44, $31, $32, $33, $34, $35, $36, $37 ; CPU:$9274 PRG:1274 FF FF 53 54 41 43 4B 45 44 31 32 33 34 35 36 37 .byte $38, $39, $54, $55, $4E, $45, $31, $54, $55, $4E, $45, $32, $54, $55, $4E, $45 ; CPU:$9284 PRG:1284 38 39 54 55 4E 45 31 54 55 4E 45 32 54 55 4E 45 .byte $33, $53, $54, $41, $52, $54, $B4, $92, $C4, $92, $D4, $92, $D6, $92, $D8, $92 ; CPU:$9294 PRG:1294 33 53 54 41 52 54 B4 92 C4 92 D4 92 D6 92 D8 92 .byte $DA, $92, $DC, $92, $E4, $92, $EC, $92, $04, $93, $0E, $93, $18, $93, $FA, $92 ; CPU:$92A4 PRG:12A4 DA 92 DC 92 E4 92 EC 92 04 93 0E 93 18 93 FA 92 .byte $38, $30, $38, $40, $38, $48, $38, $50, $38, $58, $38, $60, $38, $68, $38, $70 ; CPU:$92B4 PRG:12B4 38 30 38 40 38 48 38 50 38 58 38 60 38 68 38 70 .byte $38, $88, $38, $98, $38, $A0, $38, $A8, $38, $B0, $38, $B8, $38, $C0, $38, $C8 ; CPU:$92C4 PRG:12C4 38 88 38 98 38 A0 38 A8 38 B0 38 B8 38 C0 38 C8 .byte $58, $70, $58, $80, $58, $90, $58, $A0, $78, $30, $78, $38, $78, $40, $78, $48 ; CPU:$92D4 PRG:12D4 58 70 58 80 58 90 58 A0 78 30 78 38 78 40 78 48 .byte $78, $68, $78, $70, $78, $78, $78, $80, $78, $98, $78, $A0, $78, $A8, $78, $B0 ; CPU:$92E4 PRG:12E4 78 68 78 70 78 78 78 80 78 98 78 A0 78 A8 78 B0 .byte $78, $B8, $78, $C0, $78, $C8, $98, $70, $98, $80, $98, $90, $98, $A0, $98, $B0 ; CPU:$92F4 PRG:12F4 78 B8 78 C0 78 C8 98 70 98 80 98 90 98 A0 98 B0 .byte $B8, $30, $B8, $38, $B8, $40, $B8, $48, $B8, $50, $B8, $70, $B8, $78, $B8, $80 ; CPU:$9304 PRG:1304 B8 30 B8 38 B8 40 B8 48 B8 50 B8 70 B8 78 B8 80 .byte $B8, $88, $B8, $90, $B8, $B0, $B8, $B8, $B8, $C0, $B8, $C8, $B8, $D0, $D8, $53 ; CPU:$9314 PRG:1314 B8 88 B8 90 B8 B0 B8 B8 B8 C0 B8 C8 B8 D0 D8 53 .byte $03, $6C, $D8, $54, $03, $74, $D8, $41, $03, $7C, $D8, $52, $03, $84, $D8, $54 ; CPU:$9324 PRG:1324 03 6C D8 54 03 74 D8 41 03 7C D8 52 03 84 D8 54 .byte $03, $8C, $46, $8D, $23, $40, $4E, $BE, $23, $40, $56, $B3, $23, $40, $5E, $B4 ; CPU:$9334 PRG:1334 03 8C 46 8D 23 40 4E BE 23 40 56 B3 23 40 5E B4 .byte $03, $40, $66, $B5, $03, $40, $6E, $90, $03, $40, $76, $91, $03, $40, $7E, $94 ; CPU:$9344 PRG:1344 03 40 66 B5 03 40 6E 90 03 40 76 91 03 40 7E 94 .byte $03, $40, $36, $8C, $23, $48, $3E, $95, $23, $48, $46, $96, $23, $48, $4E, $92 ; CPU:$9354 PRG:1354 03 40 36 8C 23 48 3E 95 23 48 46 96 23 48 4E 92 .byte $03, $48, $56, $93, $03, $48, $5E, $97, $03, $48, $66, $99, $03, $48, $6E, $9A ; CPU:$9364 PRG:1364 03 48 56 93 03 48 5E 97 03 48 66 99 03 48 6E 9A .byte $03, $48, $76, $9C, $03, $48, $7E, $9D, $03, $48, $86, $98, $03, $48, $2E, $8B ; CPU:$9374 PRG:1374 03 48 76 9C 03 48 7E 9D 03 48 86 98 03 48 2E 8B .byte $23, $50, $36, $9B, $23, $50, $3E, $9E, $23, $50, $46, $9F, $03, $50, $76, $A0 ; CPU:$9384 PRG:1384 23 50 36 9B 23 50 3E 9E 23 50 46 9F 03 50 76 A0 .byte $03, $50, $7E, $A1, $03, $50, $86, $A2, $03, $50, $8E, $A3, $03, $50, $F8, $8E ; CPU:$9394 PRG:1394 03 50 7E A1 03 50 86 A2 03 50 8E A3 03 50 F8 8E .byte $03, $58, $2E, $A4, $23, $58, $7E, $A5, $03, $58, $86, $A6, $03, $58, $8E, $A8 ; CPU:$93A4 PRG:13A4 03 58 2E A4 23 58 7E A5 03 58 86 A6 03 58 8E A8 .byte $03, $58, $96, $A9, $03, $58, $8E, $AA, $03, $60, $97, $AB, $03, $60, $9E, $AC ; CPU:$93B4 PRG:13B4 03 58 96 A9 03 58 8E AA 03 60 97 AB 03 60 9E AC .byte $03, $60, $96, $AE, $03, $68, $9E, $AD, $03, $68, $9E, $AF, $03, $70, $4E, $B0 ; CPU:$93C4 PRG:13C4 03 60 96 AE 03 68 9E AD 03 68 9E AF 03 70 4E B0 .byte $03, $AA, $56, $B1, $03, $AA, $5E, $A7, $03, $AA, $66, $B2, $03, $AA, $6E, $B6 ; CPU:$93D4 PRG:13D4 03 AA 56 B1 03 AA 5E A7 03 AA 66 B2 03 AA 6E B6 .byte $03, $AA, $76, $B7, $03, $AA, $7E, $B8, $03, $AA, $56, $BD, $03, $B2, $5E, $B9 ; CPU:$93E4 PRG:13E4 03 AA 76 B7 03 AA 7E B8 03 AA 56 BD 03 B2 5E B9 .byte $03, $B2, $66, $BA, $03, $B2, $6E, $BB, $03, $B2, $76, $BC, $03, $B2, $FF, $54 ; CPU:$93F4 PRG:13F4 03 B2 66 BA 03 B2 6E BB 03 B2 76 BC 03 B2 FF 54 .byte $4F, $4D, $31, $30, $30, $30, $FF, $32, $30, $30, $30, $30, $4A, $4F, $45, $FF ; CPU:$9404 PRG:1404 4F 4D 31 30 30 30 FF 32 30 30 30 30 4A 4F 45 FF .byte $35, $30, $30, $FF, $31, $30, $30, $30, $30, $54, $52, $49, $FF, $34, $35, $30 ; CPU:$9414 PRG:1414 35 30 30 FF 31 30 30 30 30 54 52 49 FF 34 35 30 .byte $FF, $FF, $39, $30, $30, $30, $48, $40, $59, $FF, $34, $30, $30, $FF, $FF, $38 ; CPU:$9424 PRG:1424 FF FF 39 30 30 30 48 40 59 FF 34 30 30 FF FF 38 .byte $30, $30, $30, $4A, $55, $4E, $FF, $33, $35, $30, $FF, $FF, $37, $30, $30, $30 ; CPU:$9434 PRG:1434 30 30 30 4A 55 4E FF 33 35 30 FF FF 37 30 30 30 .byte $4A, $41, $43, $FF, $33, $30, $30, $FF, $FF, $36, $30, $30, $30, $44, $40, $48 ; CPU:$9444 PRG:1444 4A 41 43 FF 33 30 30 FF FF 36 30 30 30 44 40 48 .byte $FF, $32, $35, $30, $FF, $FF, $35, $30, $30, $30, $4A, $49, $4E, $FF, $32, $30 ; CPU:$9454 PRG:1454 FF 32 35 30 FF FF 35 30 30 30 4A 49 4E FF 32 30 .byte $30, $FF, $FF, $34, $30, $30, $30, $42, $4F, $42, $FF, $31, $35, $30, $FF, $FF ; CPU:$9464 PRG:1464 30 FF FF 34 30 30 30 42 4F 42 FF 31 35 30 FF FF .byte $33, $30, $30, $30, $4B, $41, $54, $FF, $31, $30, $30, $FF, $FF, $32, $30, $30 ; CPU:$9474 PRG:1474 33 30 30 30 4B 41 54 FF 31 30 30 FF FF 32 30 30 .byte $30, $41, $42, $43, $44, $45, $46, $47, $48, $49, $4A, $4B, $4C, $4D, $4E, $4F ; CPU:$9484 PRG:1484 30 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F .byte $50, $51, $52, $53, $54, $55, $56, $57, $58, $59, $5A, $40, $EF, $FF, $F1, $F2 ; CPU:$9494 PRG:1494 50 51 52 53 54 55 56 57 58 59 5A 40 EF FF F1 F2 .byte $F2, $F1, $FF, $D7, $DF, $DC, $FF, $E8, $E2, $D7, $DE, $E0, $E1, $E3, $DB, $E7 ; CPU:$94A4 PRG:14A4 F2 F1 FF D7 DF DC FF E8 E2 D7 DE E0 E1 E3 DB E7 .byte $E5, $EA, $DD, $E6, $00, $A5, $6C, $20, $73, $81, $CA, $94, $0E, $95, $1D, $95 ; CPU:$94B4 PRG:14B4 E5 EA DD E6 00 A5 6C 20 73 81 CA 94 0E 95 1D 95 .byte $2C, $95, $64, $95, $81, $95, $E6, $97, $A5, $97, $C9, $80, $90, $3B, $A9, $03 ; CPU:$94C4 PRG:14C4 2C 95 64 95 81 95 E6 97 A5 97 C9 80 90 3B A9 03 .byte $20, $04, $80, $A9, $01, $8D, $DD, $00, $A9, $07, $8D, $DE, $00, $A9, $05, $20 ; CPU:$94D4 PRG:14D4 20 04 80 A9 01 8D DD 00 A9 07 8D DE 00 A9 05 20 .byte $04, $80, $A9, $00, $8D, $DD, $00, $85, $97, $A5, $95, $D0, $03, $20, $4E, $C0 ; CPU:$94E4 PRG:14E4 04 80 A9 00 8D DD 00 85 97 A5 95 D0 03 20 4E C0 .byte $A5, $96, $D0, $03, $20, $B4, $AE, $20, $88, $81, $20, $28, $92, $E6, $6C, $A5 ; CPU:$94F4 PRG:14F4 A5 96 D0 03 20 B4 AE 20 88 81 20 28 92 E6 6C A5 .byte $71, $C9, $01, $D0, $04, $A9, $04, $85, $6C, $60, $A5, $95, $F0, $03, $E6, $6C ; CPU:$9504 PRG:1504 71 C9 01 D0 04 A9 04 85 6C 60 A5 95 F0 03 E6 6C .byte $60, $A9, $00, $85, $34, $20, $57, $C0, $60, $A5, $96, $F0, $03, $E6, $6C, $60 ; CPU:$9514 PRG:1514 60 A9 00 85 34 20 57 C0 60 A5 96 F0 03 E6 6C 60 .byte $A9, $01, $85, $34, $20, $BD, $AE, $60, $A2, $00, $A0, $00, $A5, $98, $F0, $02 ; CPU:$9524 PRG:1524 A9 01 85 34 20 BD AE 60 A2 00 A0 00 A5 98 F0 02 .byte $A2, $08, $BD, $54, $95, $99, $38, $03, $E8, $C8, $C0, $08, $90, $F4, $A9, $00 ; CPU:$9534 PRG:1534 A2 08 BD 54 95 99 38 03 E8 C8 C0 08 90 F4 A9 00 .byte $99, $38, $03, $A5, $6F, $D0, $06, $EE, $38, $03, $EE, $38, $03, $E6, $6C, $60 ; CPU:$9544 PRG:1544 99 38 03 A5 6F D0 06 EE 38 03 EE 38 03 E6 6C 60 .byte $87, $21, $0B, $F8, $D9, $23, $1B, $F8, $97, $21, $0B, $F8, $DD, $23, $1B, $F8 ; CPU:$9554 PRG:1554 87 21 0B F8 D9 23 1B F8 97 21 0B F8 DD 23 1B F8 .byte $E6, $97, $A5, $97, $C9, $F0, $90, $14, $A9, $00, $85, $97, $E6, $6C, $A5, $95 ; CPU:$9564 PRG:1564 E6 97 A5 97 C9 F0 90 14 A9 00 85 97 E6 6C A5 95 .byte $D0, $03, $20, $61, $C0, $A5, $96, $D0, $03, $20, $C7, $AE, $60, $E6, $5B, $E6 ; CPU:$9574 PRG:1574 D0 03 20 61 C0 A5 96 D0 03 20 C7 AE 60 E6 5B E6 .byte $5D, $A5, $5B, $A4, $98, $F0, $02, $A5, $5D, $4A, $B0, $0F, $A9, $04, $85, $6A ; CPU:$9584 PRG:1584 5D A5 5B A4 98 F0 02 A5 5D 4A B0 0F A9 04 85 6A .byte $A9, $00, $85, $6C, $20, $D2, $95, $20, $EE, $95, $60, $85, $20, $A5, $98, $D0 ; CPU:$9594 PRG:1594 A9 00 85 6C 20 D2 95 20 EE 95 60 85 20 A5 98 D0 .byte $06, $20, $0B, $96, $4C, $AE, $95, $20, $16, $96, $C5, $91, $90, $11, $85, $91 ; CPU:$95A4 PRG:15A4 06 20 0B 96 4C AE 95 20 16 96 C5 91 90 11 85 91 .byte $20, $D2, $95, $20, $EE, $95, $A9, $00, $85, $6C, $A9, $08, $85, $6A, $60, $20 ; CPU:$95B4 PRG:15B4 20 D2 95 20 EE 95 A9 00 85 6C A9 08 85 6A 60 20 .byte $D2, $95, $20, $EE, $95, $A9, $04, $85, $6A, $A9, $00, $85, $6C, $60, $A6, $5B ; CPU:$95C4 PRG:15C4 D2 95 20 EE 95 A9 04 85 6A A9 00 85 6C 60 A6 5B .byte $E0, $05, $90, $10, $E6, $5A, $A5, $5A, $C9, $04, $90, $04, $A9, $00, $85, $5A ; CPU:$95D4 PRG:15D4 E0 05 90 10 E6 5A A5 5A C9 04 90 04 A9 00 85 5A .byte $A2, $00, $86, $5B, $BD, $75, $F8, $85, $35, $60, $A6, $5D, $E0, $05, $90, $10 ; CPU:$95E4 PRG:15E4 A2 00 86 5B BD 75 F8 85 35 60 A6 5D E0 05 90 10 .byte $E6, $5C, $A5, $5C, $C9, $04, $90, $04, $A9, $00, $85, $5C, $A2, $00, $86, $5D ; CPU:$95F4 PRG:15F4 E6 5C A5 5C C9 04 90 04 A9 00 85 5C A2 00 86 5D .byte $BD, $75, $F8, $8D, $CB, $00, $60, $A5, $5A, $0A, $18, $65, $5A, $65, $20, $29 ; CPU:$9604 PRG:1604 BD 75 F8 8D CB 00 60 A5 5A 0A 18 65 5A 65 20 29 .byte $0F, $60, $A5, $5C, $0A, $18, $65, $5C, $65, $20, $29, $0F, $60 ; CPU:$9614 PRG:1614 0F 60 A5 5C 0A 18 65 5C 65 20 29 0F 60 ; ----------------------------------------------------------------------------- ; Routine: TickLevelTimer ; Global: Counts the level timer and resets it when it runs out. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickLevelTimer: inc Zp6C ; CPU:$9621 PRG:1621 E6 6C cmp #$80 ; CPU:$9623 PRG:1623 C9 80 bcc TickLevelTimer_Loop ; CPU:$9625 PRG:1625 90 06 lda #$00 ; CPU:$9627 PRG:1627 A9 00 sta Zp6C ; CPU:$9629 PRG:1629 85 6C sta GameMode ; CPU:$962B PRG:162B 85 6A ; ----------------------------------------------------------------------------- ; Routine: TickLevelTimer_Loop ; Global: Branch target inside TickLevelTimer: taken when the loop repeats. ; Local: Part of TickLevelTimer. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickLevelTimer_Loop: rts ; CPU:$962D PRG:162D 60 ; ----------------------------------------------------------------------------- ; Routine: LoadSpriteTable ; Global: Copies a sprite table out of the fixed bank. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- LoadSpriteTable: lda Zp6C ; CPU:$962E PRG:162E A5 6C bne SetGraphicsMode ; CPU:$9630 PRG:1630 D0 4A ldx #$00 ; CPU:$9632 PRG:1632 A2 00 ; ----------------------------------------------------------------------------- ; Routine: LoadSpriteTable_OnCarryClear ; Global: Branch target inside LoadSpriteTable: taken when the addition or subtraction did not carry. ; Local: Part of LoadSpriteTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- LoadSpriteTable_OnCarryClear: lda $F847,x ; CPU:$9634 PRG:1634 BD 47 F8 sta $0338,x ; CPU:$9637 PRG:1637 9D 38 03 inx ; CPU:$963A PRG:163A E8 cpx #$08 ; CPU:$963B PRG:163B E0 08 bcc LoadSpriteTable_OnCarryClear ; CPU:$963D PRG:163D 90 F5 lda #$00 ; CPU:$963F PRG:163F A9 00 sta $0338,x ; CPU:$9641 PRG:1641 9D 38 03 lda Zp6F ; CPU:$9644 PRG:1644 A5 6F beq LoadSpriteTable_Loop ; CPU:$9646 PRG:1646 F0 06 dec $0338 ; CPU:$9648 PRG:1648 CE 38 03 dec $0338 ; CPU:$964B PRG:164B CE 38 03 ; ----------------------------------------------------------------------------- ; Routine: LoadSpriteTable_Loop ; Global: Branch target inside LoadSpriteTable: taken when the loop repeats. ; Local: Part of LoadSpriteTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- LoadSpriteTable_Loop: ldx #$00 ; CPU:$964E PRG:164E A2 00 ; ----------------------------------------------------------------------------- ; Routine: LoadSpriteTable_OnNonzero ; Global: Branch target inside LoadSpriteTable: taken when the tested value is not zero. ; Local: Part of LoadSpriteTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- LoadSpriteTable_OnNonzero: lda $9674,x ; CPU:$9650 PRG:1650 BD 74 96 sta $0204,x ; CPU:$9653 PRG:1653 9D 04 02 inx ; CPU:$9656 PRG:1656 E8 cpx #$08 ; CPU:$9657 PRG:1657 E0 08 bne LoadSpriteTable_OnNonzero ; CPU:$9659 PRG:1659 D0 F5 lda Zp9A ; CPU:$965B PRG:165B A5 9A clc ; CPU:$965D PRG:165D 18 adc #$30 ; CPU:$965E PRG:165E 69 30 sta $0205 ; CPU:$9660 PRG:1660 8D 05 02 lda Zp6F ; CPU:$9663 PRG:1663 A5 6F beq LoadSpriteTable_Loop2 ; CPU:$9665 PRG:1665 F0 0A lda #$5C ; CPU:$9667 PRG:1667 A9 5C sta $0207 ; CPU:$9669 PRG:1669 8D 07 02 lda #$18 ; CPU:$966C PRG:166C A9 18 sta $020B ; CPU:$966E PRG:166E 8D 0B 02 ; ----------------------------------------------------------------------------- ; Routine: LoadSpriteTable_Loop2 ; Global: Branch target inside LoadSpriteTable: taken when Loop2. ; Local: Part of LoadSpriteTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- LoadSpriteTable_Loop2: inc Zp6C ; CPU:$9671 PRG:1671 E6 6C rts ; CPU:$9673 PRG:1673 60 ; ---- data $9674-$967B (8 bytes) ---- ; referenced by `lda $9674,x` at $9650 (operand $9674 falls inside this region) .byte $90, $30, $21, $78, $80, $AE, $23, $34 ; CPU:$9674 PRG:1674 90 30 21 78 80 AE 23 34 ; ----------------------------------------------------------------------------- ; Routine: SetGraphicsMode ; Global: Switches the PPU between the background and the overlay. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetGraphicsMode: lda NewButton1 ; CPU:$967C PRG:167C A5 2A and #$08 ; CPU:$967E PRG:167E 29 08 beq SetGraphicsMode_Loop ; CPU:$9680 PRG:1680 F0 05 lda #$80 ; CPU:$9682 PRG:1682 A9 80 sta $0208 ; CPU:$9684 PRG:1684 8D 08 02 ; ----------------------------------------------------------------------------- ; Routine: SetGraphicsMode_Loop ; Global: Branch target inside SetGraphicsMode: taken when the loop repeats. ; Local: Part of SetGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetGraphicsMode_Loop: lda NewButton1 ; CPU:$9687 PRG:1687 A5 2A and #$04 ; CPU:$9689 PRG:1689 29 04 beq SetGraphicsMode_Loop2 ; CPU:$968B PRG:168B F0 05 lda #$88 ; CPU:$968D PRG:168D A9 88 sta $0208 ; CPU:$968F PRG:168F 8D 08 02 ; ----------------------------------------------------------------------------- ; Routine: SetGraphicsMode_Loop2 ; Global: Branch target inside SetGraphicsMode: taken when Loop2. ; Local: Part of SetGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetGraphicsMode_Loop2: ldx #$AE ; CPU:$9692 PRG:1692 A2 AE lda FrameCounter ; CPU:$9694 PRG:1694 A5 31 and #$10 ; CPU:$9696 PRG:1696 29 10 bne SetGraphicsMode_Loop3 ; CPU:$9698 PRG:1698 D0 02 ldx #$FF ; CPU:$969A PRG:169A A2 FF ; ----------------------------------------------------------------------------- ; Routine: SetGraphicsMode_Loop3 ; Global: Branch target inside SetGraphicsMode: taken when Loop3. ; Local: Part of SetGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetGraphicsMode_Loop3: stx $0209 ; CPU:$969C PRG:169C 8E 09 02 lda NewButton1 ; CPU:$969F PRG:169F A5 2A and #$80 ; CPU:$96A1 PRG:16A1 29 80 bne SetGraphicsMode_Loop4 ; CPU:$96A3 PRG:16A3 D0 01 rts ; CPU:$96A5 PRG:16A5 60 ; ----------------------------------------------------------------------------- ; Routine: SetGraphicsMode_Loop4 ; Global: Branch target inside SetGraphicsMode: taken when Loop4. ; Local: Part of SetGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetGraphicsMode_Loop4: dec Zp9A ; CPU:$96A6 PRG:16A6 C6 9A dec $0205 ; CPU:$96A8 PRG:16A8 CE 05 02 ldx #$00 ; CPU:$96AB PRG:16AB A2 00 ; ----------------------------------------------------------------------------- ; Routine: SetGraphicsMode_OnCarryClear ; Global: Branch target inside SetGraphicsMode: taken when the addition or subtraction did not carry. ; Local: Part of SetGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetGraphicsMode_OnCarryClear: lda $F869,x ; CPU:$96AD PRG:16AD BD 69 F8 sta $0338,x ; CPU:$96B0 PRG:16B0 9D 38 03 inx ; CPU:$96B3 PRG:16B3 E8 cpx #$0C ; CPU:$96B4 PRG:16B4 E0 0C bcc SetGraphicsMode_OnCarryClear ; CPU:$96B6 PRG:16B6 90 F5 lda Zp6F ; CPU:$96B8 PRG:16B8 A5 6F beq SetGraphicsMode_Loop5 ; CPU:$96BA PRG:16BA F0 0C dec $0338 ; CPU:$96BC PRG:16BC CE 38 03 dec $0338 ; CPU:$96BF PRG:16BF CE 38 03 dec $033C ; CPU:$96C2 PRG:16C2 CE 3C 03 dec $033C ; CPU:$96C5 PRG:16C5 CE 3C 03 ; ----------------------------------------------------------------------------- ; Routine: SetGraphicsMode_Loop5 ; Global: Branch target inside SetGraphicsMode: taken when Loop5. ; Local: Part of SetGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetGraphicsMode_Loop5: lda $0208 ; CPU:$96C8 PRG:16C8 AD 08 02 cmp #$88 ; CPU:$96CB PRG:16CB C9 88 beq SetGraphicsMode_Loop6 ; CPU:$96CD PRG:16CD F0 0A lda #$06 ; CPU:$96CF PRG:16CF A9 06 sta GameMode ; CPU:$96D1 PRG:16D1 85 6A lda #$00 ; CPU:$96D3 PRG:16D3 A9 00 sta Zp6C ; CPU:$96D5 PRG:16D5 85 6C beq SetGraphicsMode_Loop7 ; CPU:$96D7 PRG:16D7 F0 06 ; ----------------------------------------------------------------------------- ; Routine: SetGraphicsMode_Loop6 ; Global: Branch target inside SetGraphicsMode: taken when Loop6. ; Local: Part of SetGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetGraphicsMode_Loop6: jsr Sub_96E3 ; CPU:$96D9 PRG:16D9 20 E3 96 ; ---- data $96DC-$96DE (3 bytes) ---- .byte $20, $F3, $96 ; CPU:$96DC PRG:16DC 20 F3 96 ; ----------------------------------------------------------------------------- ; Routine: SetGraphicsMode_Loop7 ; Global: Branch target inside SetGraphicsMode: taken when Loop7. ; Local: Part of SetGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetGraphicsMode_Loop7: jsr ClearOamShadow ; CPU:$96DF PRG:16DF 20 88 81 rts ; CPU:$96E2 PRG:16E2 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_96E3 ; Global: Branch target inside Sub: taken when 96E3. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_96E3: jsr Sub_9703 ; CPU:$96E3 PRG:16E3 20 03 97 lda #$00 ; CPU:$96E6 PRG:16E6 A9 00 sta Zp95 ; CPU:$96E8 PRG:16E8 85 95 sta Zp6C ; CPU:$96EA PRG:16EA 85 6C lda #$03 ; CPU:$96EC PRG:16EC A9 03 sta GameMode ; CPU:$96EE PRG:16EE 85 6A jmp Sub_C061 ; CPU:$96F0 PRG:16F0 4C 61 C0 ; ---- data $96F3-$9702 (16 bytes) ---- .byte $20, $0F, $97, $A9, $00, $85, $96, $85, $6C, $A9, $03, $85, $6A, $4C, $C7, $AE ; CPU:$96F3 PRG:16F3 20 0F 97 A9 00 85 96 85 6C A9 03 85 6A 4C C7 AE ; ----------------------------------------------------------------------------- ; Routine: Sub_9703 ; Global: Branch target inside Sub: taken when 9703. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_9703: lda #$00 ; CPU:$9703 PRG:1703 A9 00 tax ; CPU:$9705 PRG:1705 AA ; ----------------------------------------------------------------------------- ; Routine: SetGraphicsMode_OnCarryClear2 ; Global: Branch target inside SetGraphicsMode: taken when OnCarryClear2. ; Local: Part of SetGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetGraphicsMode_OnCarryClear2: sta $05AC,x ; CPU:$9706 PRG:1706 9D AC 05 inx ; CPU:$9709 PRG:1709 E8 cpx #$0A ; CPU:$970A PRG:170A E0 0A bcc SetGraphicsMode_OnCarryClear2 ; CPU:$970C PRG:170C 90 F8 rts ; CPU:$970E PRG:170E 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_970F ; Global: Branch target inside Sub: taken when 970F. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_970F: lda #$00 ; CPU:$970F PRG:170F A9 00 tax ; CPU:$9711 PRG:1711 AA ; ----------------------------------------------------------------------------- ; Routine: SetGraphicsMode_OnCarryClear3 ; Global: Branch target inside SetGraphicsMode: taken when OnCarryClear3. ; Local: Part of SetGraphicsMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetGraphicsMode_OnCarryClear3: sta $05B6,x ; CPU:$9712 PRG:1712 9D B6 05 inx ; CPU:$9715 PRG:1715 E8 cpx #$0A ; CPU:$9716 PRG:1716 E0 0A bcc SetGraphicsMode_OnCarryClear3 ; CPU:$9718 PRG:1718 90 F8 rts ; CPU:$971A PRG:171A 60 ; ---- data $971B-$9785 (107 bytes) ---- .byte $A5, $26, $C9, $C0, $D0, $28, $A9, $00, $85, $95, $85, $6A, $A9, $05, $85, $61 ; CPU:$971B PRG:171B A5 26 C9 C0 D0 28 A9 00 85 95 85 6A A9 05 85 61 .byte $A9, $08, $85, $60, $A9, $03, $20, $04, $80, $A9, $01, $8D, $DD, $00, $A5, $73 ; CPU:$972B PRG:172B A9 08 85 60 A9 03 20 04 80 A9 01 8D DD 00 A5 73 .byte $8D, $DE, $00, $A9, $05, $20, $04, $80, $A9, $00, $8D, $DD, $00, $60, $A5, $27 ; CPU:$973B PRG:173B 8D DE 00 A9 05 20 04 80 A9 00 8D DD 00 60 A5 27 .byte $C9, $C0, $D0, $22, $A9, $00, $85, $96, $85, $6A, $A9, $03, $20, $04, $80, $A9 ; CPU:$974B PRG:174B C9 C0 D0 22 A9 00 85 96 85 6A A9 03 20 04 80 A9 .byte $01, $8D, $DD, $00, $A5, $73, $8D, $DE, $00, $A9, $05, $20, $04, $80, $A9, $00 ; CPU:$975B PRG:175B 01 8D DD 00 A5 73 8D DE 00 A9 05 20 04 80 A9 00 .byte $8D, $DD, $00, $4C, $AA, $AA, $A5, $31, $29, $3F, $D0, $0C, $C6, $6E, $D0, $08 ; CPU:$976B PRG:176B 8D DD 00 4C AA AA A5 31 29 3F D0 0C C6 6E D0 08 .byte $A9, $00, $85, $6C, $A9, $06, $85, $6A, $60, $10, $11 ; CPU:$977B PRG:177B A9 00 85 6C A9 06 85 6A 60 10 11 ; ----------------------------------------------------------------------------- ; Routine: UpdateGameState ; Global: Runs the mode machine: title, demo, play and game over. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateGameState: lda $05E5 ; CPU:$9786 PRG:1786 AD E5 05 beq UpdateGameState_Loop2 ; CPU:$9789 PRG:1789 F0 23 lda NewButton1 ; CPU:$978B PRG:178B A5 2A and #$10 ; CPU:$978D PRG:178D 29 10 beq UpdateGameState_Loop ; CPU:$978F PRG:178F F0 15 lda PPUSTATUS ; CPU:$9791 PRG:1791 AD 02 20 lda Zp02 ; CPU:$9794 PRG:1794 A5 02 and #$E7 ; CPU:$9796 PRG:1796 29 E7 sta PPUMASK ; CPU:$9798 PRG:1798 8D 01 20 lda #$00 ; CPU:$979B PRG:179B A9 00 sta Zp6C ; CPU:$979D PRG:179D 85 6C sta Zp6F ; CPU:$979F PRG:179F 85 6F lda #$02 ; CPU:$97A1 PRG:17A1 A9 02 sta GameMode ; CPU:$97A3 PRG:17A3 85 6A rts ; CPU:$97A5 PRG:17A5 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateGameState_Loop ; Global: Branch target inside UpdateGameState: taken when the loop repeats. ; Local: Part of UpdateGameState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateGameState_Loop: lda $05E6 ; CPU:$97A6 PRG:17A6 AD E6 05 bne UpdateGameState_Loop2 ; CPU:$97A9 PRG:17A9 D0 03 jmp InitializeGame ; CPU:$97AB PRG:17AB 4C 36 80 ; ----------------------------------------------------------------------------- ; Routine: UpdateGameState_Loop2 ; Global: Branch target inside UpdateGameState: taken when Loop2. ; Local: Part of UpdateGameState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateGameState_Loop2: lda NewButton1 ; CPU:$97AE PRG:17AE A5 2A and #$10 ; CPU:$97B0 PRG:17B0 29 10 bne UpdateGameState_Loop3 ; CPU:$97B2 PRG:17B2 D0 06 lda NewButton2 ; CPU:$97B4 PRG:17B4 A5 2B and #$10 ; CPU:$97B6 PRG:17B6 29 10 beq UpdateGameState_Loop4 ; CPU:$97B8 PRG:17B8 F0 09 ; ----------------------------------------------------------------------------- ; Routine: UpdateGameState_Loop3 ; Global: Branch target inside UpdateGameState: taken when Loop3. ; Local: Part of UpdateGameState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateGameState_Loop3: lda Zp3E ; CPU:$97BA PRG:17BA A5 3E eor #$01 ; CPU:$97BC PRG:17BC 49 01 sta Zp3E ; CPU:$97BE PRG:17BE 85 3E jsr SetTablePointer ; CPU:$97C0 PRG:17C0 20 1B 98 ; ----------------------------------------------------------------------------- ; Routine: UpdateGameState_Loop4 ; Global: Branch target inside UpdateGameState: taken when Loop4. ; Local: Part of UpdateGameState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateGameState_Loop4: lda Zp3E ; CPU:$97C3 PRG:17C3 A5 3E beq UpdateGameState_Loop5 ; CPU:$97C5 PRG:17C5 F0 01 rts ; CPU:$97C7 PRG:17C7 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateGameState_Loop5 ; Global: Branch target inside UpdateGameState: taken when Loop5. ; Local: Part of UpdateGameState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateGameState_Loop5: lda Zp6F ; CPU:$97C8 PRG:17C8 A5 6F bne ResetLevelTimers_Loop ; CPU:$97CA PRG:17CA D0 27 lda Zp95 ; CPU:$97CC PRG:17CC A5 95 bne UpdateGameState_Loop7 ; CPU:$97CE PRG:17CE D0 0F lda #$00 ; CPU:$97D0 PRG:17D0 A9 00 sta Zp34 ; CPU:$97D2 PRG:17D2 85 34 jsr Sub_CBC4 ; CPU:$97D4 PRG:17D4 20 C4 CB lda Zp37 ; CPU:$97D7 PRG:17D7 A5 37 bne UpdateGameState_Loop6 ; CPU:$97D9 PRG:17D9 D0 03 jsr SoundTimerTick ; CPU:$97DB PRG:17DB 20 68 BB ; ----------------------------------------------------------------------------- ; Routine: UpdateGameState_Loop6 ; Global: Branch target inside UpdateGameState: taken when Loop6. ; Local: Part of UpdateGameState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateGameState_Loop6: rts ; CPU:$97DE PRG:17DE 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateGameState_Loop7 ; Global: Branch target inside UpdateGameState: taken when Loop7. ; Local: Part of UpdateGameState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateGameState_Loop7: lda #$03 ; CPU:$97DF PRG:17DF A9 03 jsr BankedCall ; CPU:$97E1 PRG:17E1 20 04 80 ; ---- data $97E4-$97EB (8 bytes) ---- .byte $A2, $0B, $A5, $9A, $D0, $02, $A2, $06 ; CPU:$97E4 PRG:17E4 A2 0B A5 9A D0 02 A2 06 ; ----------------------------------------------------------------------------- ; Routine: ResetLevelTimers ; Global: Clears the level timers when a new level starts. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetLevelTimers: stx GameMode ; CPU:$97EC PRG:17EC 86 6A lda #$00 ; CPU:$97EE PRG:17EE A9 00 sta Zp6C ; CPU:$97F0 PRG:17F0 85 6C rts ; CPU:$97F2 PRG:17F2 60 ; ----------------------------------------------------------------------------- ; Routine: ResetLevelTimers_Loop ; Global: Branch target inside ResetLevelTimers: taken when the loop repeats. ; Local: Part of ResetLevelTimers. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetLevelTimers_Loop: lda #$00 ; CPU:$97F3 PRG:17F3 A9 00 sta Zp34 ; CPU:$97F5 PRG:17F5 85 34 jsr Sub_CBC4 ; CPU:$97F7 PRG:17F7 20 C4 CB lda #$01 ; CPU:$97FA PRG:17FA A9 01 sta Zp34 ; CPU:$97FC PRG:17FC 85 34 jsr Sub_A78F ; CPU:$97FE PRG:17FE 20 8F A7 lda Zp95 ; CPU:$9801 PRG:1801 A5 95 beq ResetLevelTimers_Loop2 ; CPU:$9803 PRG:1803 F0 15 cmp Zp96 ; CPU:$9805 PRG:1805 C5 96 bne ResetLevelTimers_Loop2 ; CPU:$9807 PRG:1807 D0 11 lda #$03 ; CPU:$9809 PRG:1809 A9 03 jsr BankedCall ; CPU:$980B PRG:180B 20 04 80 ; ---- data $980E-$9819 (12 bytes) ---- .byte $A9, $0C, $85, $6A, $A9, $00, $85, $6C, $A9, $05, $85, $6E ; CPU:$980E PRG:180E A9 0C 85 6A A9 00 85 6C A9 05 85 6E ; ----------------------------------------------------------------------------- ; Routine: ResetLevelTimers_Loop2 ; Global: Branch target inside ResetLevelTimers: taken when Loop2. ; Local: Part of ResetLevelTimers. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetLevelTimers_Loop2: rts ; CPU:$981A PRG:181A 60 ; ----------------------------------------------------------------------------- ; Routine: SetTablePointer ; Global: Points the data pointer at a table in RAM. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetTablePointer: lda #$0C ; CPU:$981B PRG:181B A9 0C sta Zp11 ; CPU:$981D PRG:181D 85 11 lda #$0A ; CPU:$981F PRG:181F A9 0A sta Zp12 ; CPU:$9821 PRG:1821 85 12 lda Zp3E ; CPU:$9823 PRG:1823 A5 3E bne SetTablePointer_Loop ; CPU:$9825 PRG:1825 D0 02 sta Zp11 ; CPU:$9827 PRG:1827 85 11 ; ----------------------------------------------------------------------------- ; Routine: SetTablePointer_Loop ; Global: Branch target inside SetTablePointer: taken when the loop repeats. ; Local: Part of SetTablePointer. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetTablePointer_Loop: jsr Sub_855D ; CPU:$9829 PRG:1829 20 5D 85 lda #$F8 ; CPU:$982C PRG:182C A9 F8 ldx #$02 ; CPU:$982E PRG:182E A2 02 ; ----------------------------------------------------------------------------- ; Routine: SetTablePointer_OnCarryClear ; Global: Branch target inside SetTablePointer: taken when the addition or subtraction did not carry. ; Local: Part of SetTablePointer. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetTablePointer_OnCarryClear: sta $0398,x ; CPU:$9830 PRG:1830 9D 98 03 inx ; CPU:$9833 PRG:1833 E8 cpx #$0A ; CPU:$9834 PRG:1834 E0 0A bcc SetTablePointer_OnCarryClear ; CPU:$9836 PRG:1836 90 F8 lda Zp6F ; CPU:$9838 PRG:1838 A5 6F beq SetTablePointer_Loop2 ; CPU:$983A PRG:183A F0 05 lda #$28 ; CPU:$983C PRG:183C A9 28 sta $0392 ; CPU:$983E PRG:183E 8D 92 03 ; ----------------------------------------------------------------------------- ; Routine: SetTablePointer_Loop2 ; Global: Branch target inside SetTablePointer: taken when Loop2. ; Local: Part of SetTablePointer. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetTablePointer_Loop2: rts ; CPU:$9841 PRG:1841 60 ; ---- data $9842-$9FFF (1982 bytes) ---- .byte $A5, $91, $4A, $18, $69, $02, $AA, $20, $84, $90, $A9, $99, $8D, $DE, $03, $A5 ; CPU:$9842 PRG:1842 A5 91 4A 18 69 02 AA 20 84 90 A9 99 8D DE 03 A5 .byte $6C, $F0, $03, $4C, $EC, $98, $E6, $6C, $20, $88, $81, $A5, $91, $18, $69, $04 ; CPU:$9852 PRG:1852 6C F0 03 4C EC 98 E6 6C 20 88 81 A5 91 18 69 04 .byte $85, $2E, $A9, $00, $20, $04, $80, $20, $28, $92, $A5, $91, $D0, $21, $A9, $0D ; CPU:$9862 PRG:1862 85 2E A9 00 20 04 80 20 28 92 A5 91 D0 21 A9 0D .byte $85, $11, $A9, $00, $85, $12, $20, $5D, $85, $A9, $0E, $85, $11, $A9, $01, $85 ; CPU:$9872 PRG:1872 85 11 A9 00 85 12 20 5D 85 A9 0E 85 11 A9 01 85 .byte $12, $20, $5D, $85, $A9, $0F, $85, $11, $A9, $02, $85, $12, $20, $5D, $85, $A2 ; CPU:$9882 PRG:1882 12 20 5D 85 A9 0F 85 11 A9 02 85 12 20 5D 85 A2 .byte $81, $A5, $91, $6A, $90, $02, $A2, $91, $86, $01, $A9, $00, $8D, $01, $02, $A9 ; CPU:$9892 PRG:1892 81 A5 91 6A 90 02 A2 91 86 01 A9 00 8D 01 02 A9 .byte $80, $8D, $03, $02, $A9, $A6, $8D, $00, $02, $A9, $E3, $8D, $02, $02, $A9, $00 ; CPU:$98A2 PRG:18A2 80 8D 03 02 A9 A6 8D 00 02 A9 E3 8D 02 02 A9 00 .byte $8D, $DB, $03, $8D, $DC, $03, $8D, $DD, $03, $A5, $91, $0A, $AA, $BD, $55, $9A ; CPU:$98B2 PRG:18B2 8D DB 03 8D DC 03 8D DD 03 A5 91 0A AA BD 55 9A .byte $85, $9B, $BD, $56, $9A, $85, $9C, $A9, $26, $8D, $D9, $03, $A9, $C4, $8D, $DA ; CPU:$98C2 PRG:18C2 85 9B BD 56 9A 85 9C A9 26 8D D9 03 A9 C4 8D DA .byte $03, $A9, $00, $85, $03, $85, $04, $A5, $99, $D0, $0E, $A2, $04, $A5, $91, $C9 ; CPU:$98D2 PRG:18D2 03 A9 00 85 03 85 04 A5 99 D0 0E A2 04 A5 91 C9 .byte $0B, $D0, $02, $A2, $08, $8A, $20, $63, $86, $60, $A5, $6C, $C9, $01, $D0, $14 ; CPU:$98E2 PRG:18E2 0B D0 02 A2 08 8A 20 63 86 60 A5 6C C9 01 D0 14 .byte $20, $2B, $9A, $AD, $DD, $03, $C9, $04, $B0, $06, $20, $62, $99, $4C, $05, $99 ; CPU:$98F2 PRG:18F2 20 2B 9A AD DD 03 C9 04 B0 06 20 62 99 4C 05 99 .byte $20, $F9, $99, $60, $A5, $99, $D0, $3B, $A5, $2A, $29, $C0, $D0, $06, $A5, $2B ; CPU:$9902 PRG:1902 20 F9 99 60 A5 99 D0 3B A5 2A 29 C0 D0 06 A5 2B .byte $29, $C0, $F0, $2C, $A9, $00, $85, $6C, $8D, $B0, $01, $A9, $04, $85, $6A, $A5 ; CPU:$9912 PRG:1912 29 C0 F0 2C A9 00 85 6C 8D B0 01 A9 04 85 6A A5 .byte $91, $D0, $06, $20, $88, $81, $20, $28, $92, $E6, $91, $A5, $91, $C9, $0C, $D0 ; CPU:$9922 PRG:1922 91 D0 06 20 88 81 20 28 92 E6 91 A5 91 C9 0C D0 .byte $07, $E6, $99, $A9, $06, $85, $6A, $60, $A5, $01, $29, $88, $09, $88, $85, $01 ; CPU:$9932 PRG:1932 07 E6 99 A9 06 85 6A 60 A5 01 29 88 09 88 85 01 .byte $4C, $2B, $9A, $E6, $97, $D0, $16, $A9, $00, $85, $6C, $E6, $91, $A5, $91, $C9 ; CPU:$9942 PRG:1942 4C 2B 9A E6 97 D0 16 A9 00 85 6C E6 91 A5 91 C9 .byte $0C, $90, $0A, $A9, $07, $85, $6A, $A9, $00, $85, $6C, $85, $99, $4C, $2B, $9A ; CPU:$9952 PRG:1952 0C 90 0A A9 07 85 6A A9 00 85 6C 85 99 4C 2B 9A .byte $A5, $31, $29, $03, $F0, $01, $60, $A2, $00, $BD, $4A, $9A, $9D, $3A, $03, $E8 ; CPU:$9962 PRG:1962 A5 31 29 03 F0 01 60 A2 00 BD 4A 9A 9D 3A 03 E8 .byte $E0, $03, $90, $F5, $A9, $02, $8D, $DF, $03, $A9, $01, $8D, $E0, $03, $AD, $DA ; CPU:$9972 PRG:1972 E0 03 90 F5 A9 02 8D DF 03 A9 01 8D E0 03 AD DA .byte $03, $8D, $38, $03, $AD, $D9, $03, $8D, $39, $03, $EE, $DA, $03, $AC, $DC, $03 ; CPU:$9982 PRG:1982 03 8D 38 03 AD D9 03 8D 39 03 EE DA 03 AC DC 03 .byte $C0, $FF, $D0, $0F, $98, $18, $65, $9B, $85, $9B, $90, $02, $E6, $9C, $A0, $00 ; CPU:$9992 PRG:1992 C0 FF D0 0F 98 18 65 9B 85 9B 90 02 E6 9C A0 00 .byte $8C, $DC, $03, $EE, $DC, $03, $B1, $9B, $C9, $FF, $F0, $0C, $18, $69, $83, $8D ; CPU:$99A2 PRG:19A2 8C DC 03 EE DC 03 B1 9B C9 FF F0 0C 18 69 83 8D .byte $E1, $03, $A9, $E0, $8D, $E2, $03, $60, $8D, $E1, $03, $8D, $E2, $03, $A9, $01 ; CPU:$99B2 PRG:19B2 E1 03 A9 E0 8D E2 03 60 8D E1 03 8D E2 03 A9 01 .byte $8D, $DF, $03, $8D, $E0, $03, $EE, $DB, $03, $A6, $91, $AD, $DB, $03, $DD, $6D ; CPU:$99C2 PRG:19C2 8D DF 03 8D E0 03 EE DB 03 A6 91 AD DB 03 DD 6D .byte $9A, $90, $03, $E6, $6C, $60, $EE, $DD, $03, $AD, $DD, $03, $0A, $AA, $BD, $4D ; CPU:$99D2 PRG:19D2 9A 90 03 E6 6C 60 EE DD 03 AD DD 03 0A AA BD 4D .byte $9A, $8D, $D9, $03, $BD, $4E, $9A, $8D, $DA, $03, $AD, $DD, $03, $C9, $04, $90 ; CPU:$99E2 PRG:19E2 9A 8D D9 03 BD 4E 9A 8D DA 03 AD DD 03 C9 04 90 .byte $05, $A9, $B4, $8D, $E3, $03, $60, $CE, $E3, $03, $D0, $2C, $AD, $02, $20, $A5 ; CPU:$99F2 PRG:19F2 05 A9 B4 8D E3 03 60 CE E3 03 D0 2C AD 02 20 A5 .byte $02, $29, $E7, $8D, $01, $20, $AD, $02, $20, $A9, $26, $8D, $06, $20, $8D, $D9 ; CPU:$9A02 PRG:1A02 02 29 E7 8D 01 20 AD 02 20 A9 26 8D 06 20 8D D9 .byte $03, $A9, $C4, $8D, $06, $20, $8D, $DA, $03, $A2, $F0, $A9, $FF, $8D, $07, $20 ; CPU:$9A12 PRG:1A12 03 A9 C4 8D 06 20 8D DA 03 A2 F0 A9 FF 8D 07 20 .byte $CA, $D0, $FA, $A9, $00, $8D, $DD, $03, $60, $AD, $02, $20, $29, $40, $D0, $F9 ; CPU:$9A22 PRG:1A22 CA D0 FA A9 00 8D DD 03 60 AD 02 20 29 40 D0 F9 .byte $AD, $02, $20, $29, $40, $F0, $F9, $A2, $06, $20, $84, $90, $AD, $02, $20, $A9 ; CPU:$9A32 PRG:1A32 AD 02 20 29 40 F0 F9 A2 06 20 84 90 AD 02 20 A9 .byte $99, $8D, $DE, $03, $8D, $00, $20, $60, $DF, $03, $00, $26, $C4, $27, $04, $27 ; CPU:$9A42 PRG:1A42 99 8D DE 03 8D 00 20 60 DF 03 00 26 C4 27 04 27 .byte $44, $27, $84, $79, $9A, $44, $9B, $42, $9C, $8D, $9D, $A4, $9E, $BB, $9F, $1E ; CPU:$9A52 PRG:1A52 44 27 84 79 9A 44 9B 42 9C 8D 9D A4 9E BB 9F 1E .byte $A1, $1C, $A2, $FF, $A2, $CA, $A3, $61, $A4, $44, $A5, $0B, $0E, $13, $0F, $0F ; CPU:$9A62 PRG:1A62 A1 1C A2 FF A2 CA A3 61 A4 44 A5 0B 0E 13 0F 0F .byte $13, $0E, $0B, $0B, $07, $0B, $1B, $20, $20, $4F, $4E, $43, $45, $20, $55, $50 ; CPU:$9A72 PRG:1A72 13 0E 0B 0B 07 0B 1B 20 20 4F 4E 43 45 20 55 50 .byte $4F, $4E, $20, $41, $20, $54, $49, $4D, $45, $20, $49, $4E, $20, $20, $20, $FF ; CPU:$9A82 PRG:1A82 4F 4E 20 41 20 54 49 4D 45 20 49 4E 20 20 20 FF .byte $20, $41, $20, $48, $49, $44, $44, $45, $4E, $20, $4C, $49, $51, $55, $49, $44 ; CPU:$9A92 PRG:1A92 20 41 20 48 49 44 44 45 4E 20 4C 49 51 55 49 44 .byte $20, $57, $4F, $52, $4C, $44, $20, $20, $FF, $20, $20, $44, $45, $45, $50, $20 ; CPU:$9AA2 PRG:1AA2 20 57 4F 52 4C 44 20 20 FF 20 20 44 45 45 50 20 .byte $42, $45, $4E, $45, $41, $54, $48, $20, $54, $48, $45, $20, $53, $45, $41, $20 ; CPU:$9AB2 PRG:1AB2 42 45 4E 45 41 54 48 20 54 48 45 20 53 45 41 20 .byte $20, $FF, $FF, $FF, $20, $20, $54, $48, $45, $52, $45, $20, $57, $41, $53, $20 ; CPU:$9AC2 PRG:1AC2 20 FF FF FF 20 20 54 48 45 52 45 20 57 41 53 20 .byte $54, $48, $45, $20, $4D, $41, $47, $49, $43, $20, $20, $20, $FF, $20, $20, $20 ; CPU:$9AD2 PRG:1AD2 54 48 45 20 4D 41 47 49 43 20 20 20 FF 20 20 20 .byte $43, $49, $54, $59, $20, $4F, $46, $20, $41, $54, $4C, $41, $4E, $54, $49, $53 ; CPU:$9AE2 PRG:1AE2 43 49 54 59 20 4F 46 20 41 54 4C 41 4E 54 49 53 .byte $2C, $20, $20, $20, $20, $FF, $FF, $20, $20, $57, $48, $45, $52, $45, $20, $54 ; CPU:$9AF2 PRG:1AF2 2C 20 20 20 20 FF FF 20 20 57 48 45 52 45 20 54 .byte $48, $45, $20, $4C, $45, $47, $45, $4E, $44, $41, $52, $59, $20, $20, $20, $FF ; CPU:$9B02 PRG:1B02 48 45 20 4C 45 47 45 4E 44 41 52 59 20 20 20 FF .byte $20, $48, $41, $4C, $46, $20, $46, $49, $53, $48, $2C, $20, $48, $41, $4C, $46 ; CPU:$9B12 PRG:1B12 20 48 41 4C 46 20 46 49 53 48 2C 20 48 41 4C 46 .byte $20, $48, $55, $4D, $41, $4E, $2C, $20, $FF, $20, $20, $20, $20, $4D, $45, $52 ; CPU:$9B22 PRG:1B22 20 48 55 4D 41 4E 2C 20 FF 20 20 20 20 4D 45 52 .byte $50, $45, $4F, $50, $4C, $45, $20, $4C, $49, $56, $45, $44, $2E, $20, $20, $20 ; CPU:$9B32 PRG:1B32 50 45 4F 50 4C 45 20 4C 49 56 45 44 2E 20 20 20 .byte $20, $FF, $20, $4E, $41, $4D, $4F, $52, $41, $20, $57, $41, $53, $20, $41, $20 ; CPU:$9B42 PRG:1B42 20 FF 20 4E 41 4D 4F 52 41 20 57 41 53 20 41 20 .byte $42, $45, $41, $55, $54, $49, $46, $55, $4C, $20, $FF, $20, $4D, $45, $52, $4D ; CPU:$9B52 PRG:1B52 42 45 41 55 54 49 46 55 4C 20 FF 20 4D 45 52 4D .byte $41, $49, $44, $20, $57, $48, $4F, $20, $4C, $49, $56, $45, $44, $20, $44, $45 ; CPU:$9B62 PRG:1B62 41 49 44 20 57 48 4F 20 4C 49 56 45 44 20 44 45 .byte $45, $50, $20, $FF, $20, $20, $20, $55, $4E, $44, $45, $52, $20, $54, $48, $45 ; CPU:$9B72 PRG:1B72 45 50 20 FF 20 20 20 55 4E 44 45 52 20 54 48 45 .byte $20, $44, $41, $52, $4B, $20, $53, $45, $41, $20, $20, $20, $FF, $FF, $20, $20 ; CPU:$9B82 PRG:1B82 20 44 41 52 4B 20 53 45 41 20 20 20 FF FF 20 20 .byte $57, $48, $45, $52, $45, $20, $54, $48, $45, $20, $53, $55, $4E, $20, $4C, $4F ; CPU:$9B92 PRG:1B92 57 48 45 52 45 20 54 48 45 20 53 55 4E 20 4C 4F .byte $4F, $4B, $45, $44, $20, $20, $FF, $20, $20, $20, $20, $20, $20, $4C, $49, $4B ; CPU:$9BA2 PRG:1BA2 4F 4B 45 44 20 20 FF 20 20 20 20 20 20 4C 49 4B .byte $45, $20, $41, $20, $4D, $55, $52, $4B, $59, $20, $20, $20, $20, $20, $20, $FF ; CPU:$9BB2 PRG:1BB2 45 20 41 20 4D 55 52 4B 59 20 20 20 20 20 20 FF .byte $20, $20, $47, $52, $45, $45, $4E, $20, $42, $41, $4C, $4C, $2E, $20, $54, $48 ; CPU:$9BC2 PRG:1BC2 20 20 47 52 45 45 4E 20 42 41 4C 4C 2E 20 54 48 .byte $45, $20, $4C, $41, $4E, $44, $20, $20, $FF, $FF, $20, $20, $57, $41, $53, $20 ; CPU:$9BD2 PRG:1BD2 45 20 4C 41 4E 44 20 20 FF FF 20 20 57 41 53 20 .byte $49, $4C, $4C, $55, $4D, $49, $4E, $41, $54, $45, $44, $20, $44, $41, $59, $20 ; CPU:$9BE2 PRG:1BE2 49 4C 4C 55 4D 49 4E 41 54 45 44 20 44 41 59 20 .byte $20, $20, $FF, $20, $41, $4E, $44, $20, $4E, $49, $47, $48, $54, $20, $42, $59 ; CPU:$9BF2 PRG:1BF2 20 20 FF 20 41 4E 44 20 4E 49 47 48 54 20 42 59 .byte $20, $55, $4E, $44, $45, $52, $53, $45, $41, $20, $20, $FF, $20, $20, $20, $20 ; CPU:$9C02 PRG:1C02 20 55 4E 44 45 52 53 45 41 20 20 FF 20 20 20 20 .byte $20, $20, $20, $20, $56, $4F, $4C, $43, $41, $4E, $4F, $53, $20, $20, $20, $20 ; CPU:$9C12 PRG:1C12 20 20 20 20 56 4F 4C 43 41 4E 4F 53 20 20 20 20 .byte $20, $20, $20, $20, $FF, $FF, $FF, $20, $20, $20, $20, $41, $4E, $44, $20, $47 ; CPU:$9C22 PRG:1C22 20 20 20 20 FF FF FF 20 20 20 20 41 4E 44 20 47 .byte $4C, $4F, $57, $20, $57, $4F, $52, $4D, $53, $2E, $20, $20, $20, $20, $20, $FF ; CPU:$9C32 PRG:1C32 4C 4F 57 20 57 4F 52 4D 53 2E 20 20 20 20 20 FF .byte $20, $20, $20, $4E, $41, $4D, $4F, $52, $41, $20, $4C, $49, $56, $45, $44, $20 ; CPU:$9C42 PRG:1C42 20 20 20 4E 41 4D 4F 52 41 20 4C 49 56 45 44 20 .byte $49, $4E, $20, $41, $20, $20, $20, $20, $FF, $20, $47, $4C, $4F, $57, $49, $4E ; CPU:$9C52 PRG:1C52 49 4E 20 41 20 20 20 20 FF 20 47 4C 4F 57 49 4E .byte $47, $20, $42, $4C, $55, $45, $20, $53, $45, $41, $53, $48, $45, $4C, $4C, $20 ; CPU:$9C62 PRG:1C62 47 20 42 4C 55 45 20 53 45 41 53 48 45 4C 4C 20 .byte $20, $FF, $20, $57, $49, $54, $48, $20, $48, $45, $52, $20, $4D, $4F, $4D, $2C ; CPU:$9C72 PRG:1C72 20 FF 20 57 49 54 48 20 48 45 52 20 4D 4F 4D 2C .byte $20, $44, $41, $44, $20, $41, $4E, $44, $20, $20, $FF, $FF, $20, $4C, $49, $54 ; CPU:$9C82 PRG:1C82 20 44 41 44 20 41 4E 44 20 20 FF FF 20 4C 49 54 .byte $54, $4C, $45, $20, $42, $52, $4F, $54, $48, $45, $52, $20, $4D, $49, $4B, $45 ; CPU:$9C92 PRG:1C92 54 4C 45 20 42 52 4F 54 48 45 52 20 4D 49 4B 45 .byte $59, $2E, $20, $20, $FF, $20, $20, $20, $53, $48, $45, $20, $57, $4F, $55, $4C ; CPU:$9CA2 PRG:1CA2 59 2E 20 20 FF 20 20 20 53 48 45 20 57 4F 55 4C .byte $44, $20, $52, $49, $44, $45, $20, $48, $45, $52, $20, $20, $20, $FF, $20, $4C ; CPU:$9CB2 PRG:1CB2 44 20 52 49 44 45 20 48 45 52 20 20 20 FF 20 4C .byte $49, $51, $55, $49, $43, $59, $43, $4C, $45, $20, $54, $4F, $20, $53, $43, $48 ; CPU:$9CC2 PRG:1CC2 49 51 55 49 43 59 43 4C 45 20 54 4F 20 53 43 48 .byte $4F, $4F, $4C, $2C, $20, $20, $FF, $FF, $20, $20, $50, $4C, $41, $59, $20, $43 ; CPU:$9CD2 PRG:1CD2 4F 4F 4C 2C 20 20 FF FF 20 20 50 4C 41 59 20 43 .byte $41, $54, $43, $48, $20, $57, $49, $54, $48, $20, $48, $45, $52, $20, $20, $20 ; CPU:$9CE2 PRG:1CE2 41 54 43 48 20 57 49 54 48 20 48 45 52 20 20 20 .byte $FF, $20, $20, $50, $45, $54, $20, $53, $51, $55, $49, $44, $20, $57, $41, $4C ; CPU:$9CF2 PRG:1CF2 FF 20 20 50 45 54 20 53 51 55 49 44 20 57 41 4C .byte $44, $4F, $20, $41, $4E, $44, $20, $20, $20, $FF, $44, $4F, $20, $41, $20, $4C ; CPU:$9D02 PRG:1D02 44 4F 20 41 4E 44 20 20 20 FF 44 4F 20 41 20 4C .byte $4F, $54, $20, $4F, $46, $20, $54, $48, $49, $4E, $47, $53, $20, $54, $48, $41 ; CPU:$9D12 PRG:1D12 4F 54 20 4F 46 20 54 48 49 4E 47 53 20 54 48 41 .byte $54, $20, $FF, $FF, $FF, $20, $20, $20, $53, $55, $52, $46, $41, $43, $45, $20 ; CPU:$9D22 PRG:1D22 54 20 FF FF FF 20 20 20 53 55 52 46 41 43 45 20 .byte $50, $45, $4F, $50, $4C, $45, $20, $44, $4F, $2E, $20, $20, $20, $FF, $20, $20 ; CPU:$9D32 PRG:1D32 50 45 4F 50 4C 45 20 44 4F 2E 20 20 20 FF 20 20 .byte $20, $49, $4E, $20, $46, $41, $43, $54, $20, $4D, $45, $52, $50, $45, $4F, $50 ; CPU:$9D42 PRG:1D42 20 49 4E 20 46 41 43 54 20 4D 45 52 50 45 4F 50 .byte $4C, $45, $20, $20, $20, $20, $FF, $FF, $FF, $20, $20, $20, $41, $52, $45, $20 ; CPU:$9D52 PRG:1D52 4C 45 20 20 20 20 FF FF FF 20 20 20 41 52 45 20 .byte $41, $20, $4C, $4F, $54, $20, $4C, $49, $4B, $45, $20, $59, $4F, $55, $20, $20 ; CPU:$9D62 PRG:1D62 41 20 4C 4F 54 20 4C 49 4B 45 20 59 4F 55 20 20 .byte $20, $FF, $20, $20, $20, $20, $20, $20, $20, $20, $41, $4E, $44, $20, $4D, $45 ; CPU:$9D72 PRG:1D72 20 FF 20 20 20 20 20 20 20 20 41 4E 44 20 4D 45 .byte $2E, $20, $20, $20, $20, $20, $20, $20, $20, $20, $FF, $4D, $45, $52, $50, $45 ; CPU:$9D82 PRG:1D82 2E 20 20 20 20 20 20 20 20 20 FF 4D 45 52 50 45 .byte $4F, $50, $4C, $45, $20, $4C, $4F, $56, $45, $44, $20, $54, $4F, $20, $50, $4C ; CPU:$9D92 PRG:1D92 4F 50 4C 45 20 4C 4F 56 45 44 20 54 4F 20 50 4C .byte $41, $59, $20, $FF, $20, $20, $20, $20, $47, $41, $4D, $45, $53, $2E, $20, $54 ; CPU:$9DA2 PRG:1DA2 41 59 20 FF 20 20 20 20 47 41 4D 45 53 2E 20 54 .byte $48, $45, $59, $20, $48, $41, $44, $20, $20, $20, $20, $20, $FF, $20, $54, $48 ; CPU:$9DB2 PRG:1DB2 48 45 59 20 48 41 44 20 20 20 20 20 FF 20 54 48 .byte $45, $20, $42, $45, $53, $54, $20, $47, $41, $4D, $45, $53, $20, $49, $4E, $20 ; CPU:$9DC2 PRG:1DC2 45 20 42 45 53 54 20 47 41 4D 45 53 20 49 4E 20 .byte $54, $48, $45, $20, $20, $FF, $FF, $FF, $20, $57, $4F, $52, $4C, $44, $2C, $20 ; CPU:$9DD2 PRG:1DD2 54 48 45 20 20 FF FF FF 20 57 4F 52 4C 44 2C 20 .byte $42, $45, $43, $41, $55, $53, $45, $20, $54, $48, $45, $59, $20, $48, $41, $44 ; CPU:$9DE2 PRG:1DE2 42 45 43 41 55 53 45 20 54 48 45 59 20 48 41 44 .byte $FF, $20, $20, $54, $48, $45, $20, $42, $45, $53, $54, $20, $47, $41, $4D, $45 ; CPU:$9DF2 PRG:1DF2 FF 20 20 54 48 45 20 42 45 53 54 20 47 41 4D 45 .byte $4D, $41, $4B, $45, $52, $53, $2E, $20, $20, $FF, $FF, $20, $20, $54, $48, $45 ; CPU:$9E02 PRG:1E02 4D 41 4B 45 52 53 2E 20 20 FF FF 20 20 54 48 45 .byte $20, $4D, $45, $52, $50, $45, $4F, $50, $4C, $45, $20, $57, $4F, $55, $4C, $44 ; CPU:$9E12 PRG:1E12 20 4D 45 52 50 45 4F 50 4C 45 20 57 4F 55 4C 44 .byte $20, $20, $20, $FF, $43, $4F, $4C, $4C, $45, $43, $54, $20, $50, $45, $41, $52 ; CPU:$9E22 PRG:1E22 20 20 20 FF 43 4F 4C 4C 45 43 54 20 50 45 41 52 .byte $4C, $53, $20, $41, $4E, $44, $20, $54, $52, $41, $44, $45, $FF, $57, $49, $54 ; CPU:$9E32 PRG:1E32 4C 53 20 41 4E 44 20 54 52 41 44 45 FF 57 49 54 .byte $48, $20, $54, $48, $45, $20, $47, $41, $4D, $45, $4D, $41, $4B, $45, $52, $53 ; CPU:$9E42 PRG:1E42 48 20 54 48 45 20 47 41 4D 45 4D 41 4B 45 52 53 .byte $20, $46, $4F, $52, $20, $FF, $FF, $20, $20, $4E, $45, $57, $20, $47, $41, $4D ; CPU:$9E52 PRG:1E52 20 46 4F 52 20 FF FF 20 20 4E 45 57 20 47 41 4D .byte $45, $53, $20, $45, $56, $45, $52, $59, $44, $41, $59, $2E, $20, $20, $20, $FF ; CPU:$9E62 PRG:1E62 45 53 20 45 56 45 52 59 44 41 59 2E 20 20 20 FF .byte $20, $20, $4C, $49, $56, $49, $4E, $47, $20, $55, $4E, $44, $45, $52, $20, $54 ; CPU:$9E72 PRG:1E72 20 20 4C 49 56 49 4E 47 20 55 4E 44 45 52 20 54 .byte $48, $45, $20, $53, $45, $41, $20, $20, $FF, $20, $20, $20, $57, $41, $53, $20 ; CPU:$9E82 PRG:1E82 48 45 20 53 45 41 20 20 FF 20 20 20 57 41 53 20 .byte $41, $20, $4C, $4F, $54, $20, $4F, $46, $20, $46, $55, $4E, $2E, $20, $20, $20 ; CPU:$9E92 PRG:1E92 41 20 4C 4F 54 20 4F 46 20 46 55 4E 2E 20 20 20 .byte $20, $FF, $20, $20, $42, $55, $54, $20, $41, $4C, $41, $53, $2C, $20, $54, $48 ; CPU:$9EA2 PRG:1EA2 20 FF 20 20 42 55 54 20 41 4C 41 53 2C 20 54 48 .byte $45, $52, $45, $20, $4C, $49, $56, $45, $44, $20, $FF, $20, $20, $20, $41, $4E ; CPU:$9EB2 PRG:1EB2 45 52 45 20 4C 49 56 45 44 20 FF 20 20 20 41 4E .byte $20, $45, $56, $49, $4C, $20, $4D, $41, $4E, $20, $43, $41, $4C, $4C, $45, $44 ; CPU:$9EC2 PRG:1EC2 20 45 56 49 4C 20 4D 41 4E 20 43 41 4C 4C 45 44 .byte $20, $20, $20, $FF, $20, $20, $20, $20, $45, $4D, $50, $45, $52, $4F, $52, $20 ; CPU:$9ED2 PRG:1ED2 20 20 20 FF 20 20 20 20 45 4D 50 45 52 4F 52 20 .byte $4F, $2D, $44, $49, $4E, $54, $4F, $4E, $2E, $20, $20, $20, $FF, $FF, $48, $45 ; CPU:$9EE2 PRG:1EE2 4F 2D 44 49 4E 54 4F 4E 2E 20 20 20 FF FF 48 45 .byte $20, $57, $41, $53, $20, $41, $20, $53, $55, $52, $46, $41, $43, $45, $20, $44 ; CPU:$9EF2 PRG:1EF2 20 57 41 53 20 41 20 53 55 52 46 41 43 45 20 44 .byte $57, $45, $4C, $4C, $45, $52, $FF, $20, $57, $48, $4F, $20, $4D, $41, $44, $45 ; CPU:$9F02 PRG:1F02 57 45 4C 4C 45 52 FF 20 57 48 4F 20 4D 41 44 45 .byte $20, $48, $49, $53, $20, $52, $49, $43, $48, $45, $53, $20, $42, $59, $20, $FF ; CPU:$9F12 PRG:1F12 20 48 49 53 20 52 49 43 48 45 53 20 42 59 20 FF .byte $20, $53, $45, $4C, $4C, $49, $4E, $47, $20, $53, $41, $4C, $54, $20, $57, $41 ; CPU:$9F22 PRG:1F22 20 53 45 4C 4C 49 4E 47 20 53 41 4C 54 20 57 41 .byte $54, $45, $52, $20, $41, $4E, $44, $20, $FF, $FF, $20, $20, $20, $53, $45, $41 ; CPU:$9F32 PRG:1F32 54 45 52 20 41 4E 44 20 FF FF 20 20 20 53 45 41 .byte $20, $53, $48, $45, $4C, $4C, $53, $2E, $20, $41, $46, $54, $45, $52, $20, $20 ; CPU:$9F42 PRG:1F42 20 53 48 45 4C 4C 53 2E 20 41 46 54 45 52 20 20 .byte $20, $20, $FF, $20, $20, $20, $59, $45, $41, $52, $53, $20, $4F, $46, $20, $50 ; CPU:$9F52 PRG:1F52 20 20 FF 20 20 20 59 45 41 52 53 20 4F 46 20 50 .byte $4C, $41, $4E, $4E, $49, $4E, $47, $20, $20, $20, $20, $FF, $20, $20, $20, $20 ; CPU:$9F62 PRG:1F62 4C 41 4E 4E 49 4E 47 20 20 20 20 FF 20 20 20 20 .byte $48, $45, $20, $48, $41, $44, $20, $43, $4F, $4D, $45, $20, $55, $50, $20, $20 ; CPU:$9F72 PRG:1F72 48 45 20 48 41 44 20 43 4F 4D 45 20 55 50 20 20 .byte $20, $20, $20, $20, $FF, $FF, $FF, $20, $20, $20, $57, $49, $54, $48, $20, $54 ; CPU:$9F82 PRG:1F82 20 20 20 20 FF FF FF 20 20 20 57 49 54 48 20 54 .byte $48, $45, $20, $55, $4C, $54, $49, $4D, $41, $54, $45, $20, $20, $20, $20, $FF ; CPU:$9F92 PRG:1F92 48 45 20 55 4C 54 49 4D 41 54 45 20 20 20 20 FF .byte $20, $20, $20, $20, $20, $20, $20, $20, $53, $43, $48, $45, $4D, $45, $2E, $20 ; CPU:$9FA2 PRG:1FA2 20 20 20 20 20 20 20 20 53 43 48 45 4D 45 2E 20 .byte $20, $20, $20, $20, $20, $20, $20, $20, $FF, $20, $20, $45, $4D, $50, $45, $52 ; CPU:$9FB2 PRG:1FB2 20 20 20 20 20 20 20 20 FF 20 20 45 4D 50 45 52 .byte $4F, $52, $20, $4F, $2D, $44, $49, $4E, $54, $4F, $4E, $20, $48, $41, $44, $20 ; CPU:$9FC2 PRG:1FC2 4F 52 20 4F 2D 44 49 4E 54 4F 4E 20 48 41 44 20 .byte $20, $FF, $20, $20, $43, $4F, $4D, $42, $49, $4E, $45, $44, $20, $53, $43, $49 ; CPU:$9FD2 PRG:1FD2 20 FF 20 20 43 4F 4D 42 49 4E 45 44 20 53 43 49 .byte $45, $4E, $43, $45, $20, $41, $4E, $44, $20, $20, $FF, $20, $20, $4D, $41, $47 ; CPU:$9FE2 PRG:1FE2 45 4E 43 45 20 41 4E 44 20 20 FF 20 20 4D 41 47 .byte $49, $43, $20, $54, $4F, $20, $43, $52, $45, $41, $54, $45, $20, $54 ; CPU:$9FF2 PRG:1FF2 49 43 20 54 4F 20 43 52 45 41 54 45 20 54 .segment "PRG1" .org $A000 ; ---- data $A000-$AEC6 (3783 bytes) ---- .byte $48, $45, $20, $20, $20, $FF, $FF, $20, $20, $44, $55, $52, $41, $42, $55, $42 ; CPU:$A000 PRG:2000 48 45 20 20 20 FF FF 20 20 44 55 52 41 42 55 42 .byte $42, $4C, $45, $28, $54, $4D, $29, $2E, $20, $49, $54, $53, $20, $20, $20, $FF ; CPU:$A010 PRG:2010 42 4C 45 28 54 4D 29 2E 20 49 54 53 20 20 20 FF .byte $20, $20, $4D, $4F, $4C, $45, $43, $55, $4C, $41, $52, $20, $53, $54, $52, $55 ; CPU:$A020 PRG:2020 20 20 4D 4F 4C 45 43 55 4C 41 52 20 53 54 52 55 .byte $43, $54, $55, $52, $45, $20, $20, $20, $FF, $20, $41, $4C, $54, $48, $4F, $55 ; CPU:$A030 PRG:2030 43 54 55 52 45 20 20 20 FF 20 41 4C 54 48 4F 55 .byte $47, $48, $20, $46, $4C, $45, $58, $49, $42, $4C, $45, $20, $4C, $49, $4B, $45 ; CPU:$A040 PRG:2040 47 48 20 46 4C 45 58 49 42 4C 45 20 4C 49 4B 45 .byte $20, $FF, $FF, $20, $20, $20, $20, $20, $52, $55, $42, $42, $45, $52, $20, $57 ; CPU:$A050 PRG:2050 20 FF FF 20 20 20 20 20 52 55 42 42 45 52 20 57 .byte $41, $53, $20, $41, $53, $20, $20, $20, $20, $20, $20, $FF, $20, $20, $20, $20 ; CPU:$A060 PRG:2060 41 53 20 41 53 20 20 20 20 20 20 FF 20 20 20 20 .byte $55, $4E, $42, $52, $45, $41, $4B, $41, $42, $4C, $45, $20, $41, $53, $20, $41 ; CPU:$A070 PRG:2070 55 4E 42 52 45 41 4B 41 42 4C 45 20 41 53 20 41 .byte $20, $20, $20, $20, $FF, $20, $20, $20, $20, $44, $49, $41, $4D, $4F, $4E, $44 ; CPU:$A080 PRG:2080 20 20 20 20 FF 20 20 20 20 44 49 41 4D 4F 4E 44 .byte $2E, $20, $4F, $4E, $43, $45, $20, $48, $45, $20, $20, $20, $20, $FF, $FF, $20 ; CPU:$A090 PRG:2090 2E 20 4F 4E 43 45 20 48 45 20 20 20 20 FF FF 20 .byte $20, $45, $4E, $43, $41, $53, $45, $44, $20, $53, $4F, $4D, $45, $54, $48, $49 ; CPU:$A0A0 PRG:20A0 20 45 4E 43 41 53 45 44 20 53 4F 4D 45 54 48 49 .byte $4E, $47, $20, $49, $4E, $20, $20, $FF, $20, $48, $49, $53, $20, $44, $55, $52 ; CPU:$A0B0 PRG:20B0 4E 47 20 49 4E 20 20 FF 20 48 49 53 20 44 55 52 .byte $41, $42, $55, $42, $42, $4C, $45, $28, $54, $4D, $29, $20, $4E, $4F, $20, $20 ; CPU:$A0C0 PRG:20C0 41 42 55 42 42 4C 45 28 54 4D 29 20 4E 4F 20 20 .byte $FF, $20, $4F, $4E, $45, $20, $43, $4F, $55, $4C, $44, $20, $52, $45, $4C, $45 ; CPU:$A0D0 PRG:20D0 FF 20 4F 4E 45 20 43 4F 55 4C 44 20 52 45 4C 45 .byte $41, $53, $45, $20, $49, $54, $2E, $20, $20, $FF, $FF, $FF, $20, $20, $20, $20 ; CPU:$A0E0 PRG:20E0 41 53 45 20 49 54 2E 20 20 FF FF FF 20 20 20 20 .byte $45, $58, $43, $45, $50, $54, $20, $4F, $46, $20, $43, $4F, $55, $52, $53, $45 ; CPU:$A0F0 PRG:20F0 45 58 43 45 50 54 20 4F 46 20 43 4F 55 52 53 45 .byte $20, $20, $20, $20, $FF, $20, $20, $20, $45, $4D, $50, $45, $52, $4F, $52, $20 ; CPU:$A100 PRG:2100 20 20 20 20 FF 20 20 20 45 4D 50 45 52 4F 52 20 .byte $4F, $2D, $44, $49, $4E, $54, $4F, $4E, $2E, $20, $20, $20, $20, $FF, $20, $4E ; CPU:$A110 PRG:2110 4F 2D 44 49 4E 54 4F 4E 2E 20 20 20 20 FF 20 4E .byte $41, $4D, $4F, $52, $41, $20, $41, $4E, $44, $20, $48, $45, $52, $20, $46, $52 ; CPU:$A120 PRG:2120 41 4D 4F 52 41 20 41 4E 44 20 48 45 52 20 46 52 .byte $49, $45, $4E, $44, $53, $20, $FF, $57, $45, $52, $45, $20, $50, $4C, $41, $59 ; CPU:$A130 PRG:2130 49 45 4E 44 53 20 FF 57 45 52 45 20 50 4C 41 59 .byte $49, $4E, $47, $20, $57, $49, $54, $48, $20, $54, $48, $45, $49, $52, $20, $FF ; CPU:$A140 PRG:2140 49 4E 47 20 57 49 54 48 20 54 48 45 49 52 20 FF .byte $20, $20, $4E, $45, $57, $20, $47, $41, $4D, $45, $53, $20, $57, $48, $45, $4E ; CPU:$A150 PRG:2150 20 20 4E 45 57 20 47 41 4D 45 53 20 57 48 45 4E .byte $20, $54, $48, $45, $59, $20, $20, $20, $FF, $FF, $53, $41, $57, $20, $54, $48 ; CPU:$A160 PRG:2160 20 54 48 45 59 20 20 20 FF FF 53 41 57 20 54 48 .byte $45, $20, $42, $55, $42, $42, $4C, $45, $53, $20, $43, $4F, $4D, $49, $4E, $47 ; CPU:$A170 PRG:2170 45 20 42 55 42 42 4C 45 53 20 43 4F 4D 49 4E 47 .byte $2E, $20, $FF, $20, $20, $54, $48, $45, $59, $20, $4B, $4E, $45, $57, $20, $54 ; CPU:$A180 PRG:2180 2E 20 FF 20 20 54 48 45 59 20 4B 4E 45 57 20 54 .byte $48, $45, $52, $45, $20, $57, $41, $53, $20, $20, $20, $FF, $53, $4F, $4D, $45 ; CPU:$A190 PRG:2190 48 45 52 45 20 57 41 53 20 20 20 FF 53 4F 4D 45 .byte $54, $48, $49, $4E, $47, $20, $57, $52, $4F, $4E, $47, $20, $42, $45, $43, $41 ; CPU:$A1A0 PRG:21A0 54 48 49 4E 47 20 57 52 4F 4E 47 20 42 45 43 41 .byte $55, $53, $45, $20, $FF, $FF, $20, $20, $49, $4E, $53, $54, $45, $41, $44, $20 ; CPU:$A1B0 PRG:21B0 55 53 45 20 FF FF 20 20 49 4E 53 54 45 41 44 20 .byte $4F, $46, $20, $46, $4C, $4F, $41, $54, $49, $4E, $47, $20, $20, $20, $FF, $20 ; CPU:$A1C0 PRG:21C0 4F 46 20 46 4C 4F 41 54 49 4E 47 20 20 20 FF 20 .byte $20, $20, $20, $20, $20, $20, $55, $50, $57, $41, $52, $44, $20, $54, $48, $45 ; CPU:$A1D0 PRG:21D0 20 20 20 20 20 20 55 50 57 41 52 44 20 54 48 45 .byte $20, $20, $20, $20, $20, $20, $20, $FF, $20, $20, $42, $55, $42, $42, $4C, $45 ; CPU:$A1E0 PRG:21E0 20 20 20 20 20 20 20 FF 20 20 42 55 42 42 4C 45 .byte $53, $20, $57, $45, $52, $45, $20, $53, $49, $4E, $4B, $49, $4E, $47, $20, $20 ; CPU:$A1F0 PRG:21F0 53 20 57 45 52 45 20 53 49 4E 4B 49 4E 47 20 20 .byte $FF, $FF, $FF, $20, $20, $20, $44, $4F, $57, $4E, $20, $54, $4F, $57, $41, $52 ; CPU:$A200 PRG:2200 FF FF FF 20 20 20 44 4F 57 4E 20 54 4F 57 41 52 .byte $44, $53, $20, $54, $48, $45, $4D, $2E, $20, $20, $20, $FF, $20, $54, $48, $45 ; CPU:$A210 PRG:2210 44 53 20 54 48 45 4D 2E 20 20 20 FF 20 54 48 45 .byte $20, $42, $55, $42, $42, $4C, $45, $53, $20, $45, $4E, $56, $45, $4C, $4F, $50 ; CPU:$A220 PRG:2220 20 42 55 42 42 4C 45 53 20 45 4E 56 45 4C 4F 50 .byte $45, $44, $20, $20, $FF, $20, $54, $48, $45, $20, $4D, $45, $52, $50, $45, $4F ; CPU:$A230 PRG:2230 45 44 20 20 FF 20 54 48 45 20 4D 45 52 50 45 4F .byte $50, $4C, $45, $27, $53, $20, $47, $41, $4D, $45, $53, $2E, $20, $FF, $20, $20 ; CPU:$A240 PRG:2240 50 4C 45 27 53 20 47 41 4D 45 53 2E 20 FF 20 20 .byte $20, $20, $49, $54, $20, $57, $41, $53, $20, $54, $48, $45, $20, $53, $41, $4D ; CPU:$A250 PRG:2250 20 20 49 54 20 57 41 53 20 54 48 45 20 53 41 4D .byte $45, $20, $20, $20, $20, $20, $FF, $FF, $20, $20, $45, $56, $45, $52, $59, $57 ; CPU:$A260 PRG:2260 45 20 20 20 20 20 FF FF 20 20 45 56 45 52 59 57 .byte $48, $45, $52, $45, $2E, $20, $41, $4C, $4C, $20, $54, $48, $45, $20, $20, $20 ; CPU:$A270 PRG:2270 48 45 52 45 2E 20 41 4C 4C 20 54 48 45 20 20 20 .byte $FF, $20, $20, $20, $20, $47, $41, $4D, $45, $53, $20, $55, $4E, $44, $45, $52 ; CPU:$A280 PRG:2280 FF 20 20 20 20 47 41 4D 45 53 20 55 4E 44 45 52 .byte $20, $54, $48, $45, $20, $20, $20, $20, $20, $FF, $20, $20, $53, $45, $41, $20 ; CPU:$A290 PRG:2290 20 54 48 45 20 20 20 20 20 FF 20 20 53 45 41 20 .byte $57, $45, $52, $45, $20, $45, $4E, $43, $41, $53, $45, $44, $20, $49, $4E, $20 ; CPU:$A2A0 PRG:22A0 57 45 52 45 20 45 4E 43 41 53 45 44 20 49 4E 20 .byte $20, $20, $FF, $FF, $20, $20, $20, $42, $55, $42, $42, $4C, $45, $53, $20, $53 ; CPU:$A2B0 PRG:22B0 20 20 FF FF 20 20 20 42 55 42 42 4C 45 53 20 53 .byte $4F, $20, $4E, $4F, $20, $4F, $4E, $45, $20, $20, $20, $20, $FF, $20, $20, $43 ; CPU:$A2C0 PRG:22C0 4F 20 4E 4F 20 4F 4E 45 20 20 20 20 FF 20 20 43 .byte $4F, $55, $4C, $44, $20, $50, $4C, $41, $59, $20, $54, $48, $45, $4D, $20, $41 ; CPU:$A2D0 PRG:22D0 4F 55 4C 44 20 50 4C 41 59 20 54 48 45 4D 20 41 .byte $4E, $44, $20, $20, $20, $FF, $20, $20, $20, $20, $20, $20, $20, $48, $41, $56 ; CPU:$A2E0 PRG:22E0 4E 44 20 20 20 FF 20 20 20 20 20 20 20 48 41 56 .byte $45, $20, $46, $55, $4E, $2E, $20, $20, $20, $20, $20, $20, $20, $20, $FF, $20 ; CPU:$A2F0 PRG:22F0 45 20 46 55 4E 2E 20 20 20 20 20 20 20 20 FF 20 .byte $20, $20, $20, $20, $20, $54, $48, $45, $4E, $20, $45, $4D, $50, $45, $52, $4F ; CPU:$A300 PRG:2300 20 20 20 20 20 54 48 45 4E 20 45 4D 50 45 52 4F .byte $52, $20, $20, $20, $20, $20, $20, $FF, $20, $20, $20, $4F, $2D, $44, $49, $4E ; CPU:$A310 PRG:2310 52 20 20 20 20 20 20 FF 20 20 20 4F 2D 44 49 4E .byte $54, $4F, $4E, $20, $43, $41, $4D, $45, $20, $44, $4F, $57, $4E, $20, $20, $20 ; CPU:$A320 PRG:2320 54 4F 4E 20 43 41 4D 45 20 44 4F 57 4E 20 20 20 .byte $FF, $20, $41, $4E, $44, $20, $41, $4E, $4E, $4F, $55, $4E, $43, $45, $44, $20 ; CPU:$A330 PRG:2330 FF 20 41 4E 44 20 41 4E 4E 4F 55 4E 43 45 44 20 .byte $54, $48, $41, $54, $20, $54, $48, $45, $20, $FF, $FF, $20, $20, $4D, $45, $52 ; CPU:$A340 PRG:2340 54 48 41 54 20 54 48 45 20 FF FF 20 20 4D 45 52 .byte $50, $45, $4F, $50, $4C, $45, $20, $57, $4F, $55, $4C, $44, $20, $48, $41, $56 ; CPU:$A350 PRG:2350 50 45 4F 50 4C 45 20 57 4F 55 4C 44 20 48 41 56 .byte $45, $20, $20, $FF, $20, $54, $4F, $20, $50, $41, $59, $20, $48, $49, $4D, $20 ; CPU:$A360 PRG:2360 45 20 20 FF 20 54 4F 20 50 41 59 20 48 49 4D 20 .byte $41, $20, $50, $45, $41, $52, $4C, $20, $54, $4F, $20, $20, $FF, $42, $55, $52 ; CPU:$A370 PRG:2370 41 20 50 45 41 52 4C 20 54 4F 20 20 FF 42 55 52 .byte $53, $54, $20, $54, $48, $45, $20, $42, $55, $42, $42, $4C, $45, $20, $41, $52 ; CPU:$A380 PRG:2380 53 54 20 54 48 45 20 42 55 42 42 4C 45 20 41 52 .byte $4F, $55, $4E, $44, $20, $FF, $FF, $FF, $20, $20, $41, $4E, $59, $20, $47, $41 ; CPU:$A390 PRG:2390 4F 55 4E 44 20 FF FF FF 20 20 41 4E 59 20 47 41 .byte $4D, $45, $2E, $20, $4F, $4E, $4C, $59, $20, $54, $48, $45, $4E, $20, $20, $20 ; CPU:$A3A0 PRG:23A0 4D 45 2E 20 4F 4E 4C 59 20 54 48 45 4E 20 20 20 .byte $FF, $20, $20, $20, $43, $4F, $55, $4C, $44, $20, $54, $48, $45, $59, $20, $50 ; CPU:$A3B0 PRG:23B0 FF 20 20 20 43 4F 55 4C 44 20 54 48 45 59 20 50 .byte $4C, $41, $59, $2E, $20, $20, $20, $20, $20, $FF, $20, $20, $20, $20, $53, $4F ; CPU:$A3C0 PRG:23C0 4C 41 59 2E 20 20 20 20 20 FF 20 20 20 20 53 4F .byte $20, $54, $48, $45, $59, $20, $50, $41, $49, $44, $20, $54, $48, $45, $20, $20 ; CPU:$A3D0 PRG:23D0 20 54 48 45 59 20 50 41 49 44 20 54 48 45 20 20 .byte $20, $20, $FF, $20, $20, $45, $56, $49, $4C, $20, $45, $4D, $50, $45, $52, $4F ; CPU:$A3E0 PRG:23E0 20 20 FF 20 20 45 56 49 4C 20 45 4D 50 45 52 4F .byte $52, $20, $48, $49, $53, $20, $54, $41, $58, $20, $20, $FF, $20, $20, $20, $20 ; CPU:$A3F0 PRG:23F0 52 20 48 49 53 20 54 41 58 20 20 FF 20 20 20 20 .byte $20, $20, $20, $20, $4F, $4E, $20, $46, $55, $4E, $2E, $20, $20, $20, $20, $20 ; CPU:$A400 PRG:2400 20 20 20 20 4F 4E 20 46 55 4E 2E 20 20 20 20 20 .byte $20, $20, $20, $20, $FF, $FF, $20, $20, $20, $4E, $4F, $57, $20, $49, $54, $20 ; CPU:$A410 PRG:2410 20 20 20 20 FF FF 20 20 20 4E 4F 57 20 49 54 20 .byte $53, $45, $45, $4D, $45, $44, $20, $54, $48, $45, $20, $20, $20, $20, $FF, $20 ; CPU:$A420 PRG:2420 53 45 45 4D 45 44 20 54 48 45 20 20 20 20 FF 20 .byte $47, $41, $4D, $45, $53, $20, $57, $45, $52, $45, $4E, $27, $54, $20, $41, $53 ; CPU:$A430 PRG:2430 47 41 4D 45 53 20 57 45 52 45 4E 27 54 20 41 53 .byte $20, $4D, $55, $43, $48, $20, $20, $FF, $20, $46, $55, $4E, $20, $54, $4F, $20 ; CPU:$A440 PRG:2440 20 4D 55 43 48 20 20 FF 20 46 55 4E 20 54 4F 20 .byte $50, $4C, $41, $59, $20, $41, $53, $20, $42, $45, $46, $4F, $52, $45, $2E, $20 ; CPU:$A450 PRG:2450 50 4C 41 59 20 41 53 20 42 45 46 4F 52 45 2E 20 .byte $FF, $20, $20, $4F, $4E, $45, $20, $44, $41, $59, $20, $4E, $41, $4D, $4F, $52 ; CPU:$A460 PRG:2460 FF 20 20 4F 4E 45 20 44 41 59 20 4E 41 4D 4F 52 .byte $41, $20, $46, $4F, $55, $4E, $44, $20, $20, $FF, $20, $54, $48, $41, $54, $20 ; CPU:$A470 PRG:2470 41 20 46 4F 55 4E 44 20 20 FF 20 54 48 41 54 20 .byte $42, $59, $20, $53, $54, $41, $43, $4B, $49, $4E, $47, $20, $46, $4F, $55, $52 ; CPU:$A480 PRG:2480 42 59 20 53 54 41 43 4B 49 4E 47 20 46 4F 55 52 .byte $20, $20, $FF, $20, $20, $20, $20, $4F, $52, $20, $4D, $4F, $52, $45, $20, $42 ; CPU:$A490 PRG:2490 20 20 FF 20 20 20 20 4F 52 20 4D 4F 52 45 20 42 .byte $55, $42, $42, $4C, $45, $53, $20, $20, $20, $20, $20, $FF, $FF, $20, $20, $54 ; CPU:$A4A0 PRG:24A0 55 42 42 4C 45 53 20 20 20 20 20 FF FF 20 20 54 .byte $4F, $47, $45, $54, $48, $45, $52, $20, $49, $4E, $20, $4A, $55, $53, $54, $20 ; CPU:$A4B0 PRG:24B0 4F 47 45 54 48 45 52 20 49 4E 20 4A 55 53 54 20 .byte $54, $48, $45, $20, $20, $FF, $20, $20, $52, $49, $47, $48, $54, $20, $57, $41 ; CPU:$A4C0 PRG:24C0 54 48 45 20 20 FF 20 20 52 49 47 48 54 20 57 41 .byte $59, $20, $54, $48, $45, $59, $20, $57, $4F, $55, $4C, $44, $20, $20, $FF, $20 ; CPU:$A4D0 PRG:24D0 59 20 54 48 45 59 20 57 4F 55 4C 44 20 20 FF 20 .byte $20, $20, $41, $4C, $4C, $20, $50, $4F, $50, $20, $4C, $49, $4B, $45, $20, $41 ; CPU:$A4E0 PRG:24E0 20 20 41 4C 4C 20 50 4F 50 20 4C 49 4B 45 20 41 .byte $20, $42, $49, $47, $20, $20, $20, $FF, $FF, $20, $20, $42, $41, $4C, $4C, $4F ; CPU:$A4F0 PRG:24F0 20 42 49 47 20 20 20 FF FF 20 20 42 41 4C 4C 4F .byte $4F, $4E, $2E, $20, $4E, $4F, $57, $20, $4E, $4F, $20, $4F, $4E, $45, $20, $20 ; CPU:$A500 PRG:2500 4F 4E 2E 20 4E 4F 57 20 4E 4F 20 4F 4E 45 20 20 .byte $20, $FF, $20, $48, $41, $44, $20, $54, $4F, $20, $50, $41, $59, $20, $54, $48 ; CPU:$A510 PRG:2510 20 FF 20 48 41 44 20 54 4F 20 50 41 59 20 54 48 .byte $45, $20, $45, $4D, $50, $45, $52, $4F, $52, $20, $FF, $20, $20, $20, $20, $48 ; CPU:$A520 PRG:2520 45 20 45 4D 50 45 52 4F 52 20 FF 20 20 20 20 48 .byte $49, $53, $20, $54, $41, $58, $20, $4F, $4E, $20, $46, $55, $4E, $21, $20, $20 ; CPU:$A530 PRG:2530 49 53 20 54 41 58 20 4F 4E 20 46 55 4E 21 20 20 .byte $20, $20, $20, $FF, $FF, $20, $20, $20, $20, $57, $49, $54, $48, $49, $4E, $20 ; CPU:$A540 PRG:2540 20 20 20 FF FF 20 20 20 20 57 49 54 48 49 4E 20 .byte $44, $41, $59, $53, $20, $54, $48, $45, $20, $20, $20, $20, $20, $FF, $20, $20 ; CPU:$A550 PRG:2550 44 41 59 53 20 54 48 45 20 20 20 20 20 FF 20 20 .byte $4D, $45, $52, $50, $45, $4F, $50, $4C, $45, $20, $48, $41, $44, $20, $50, $4F ; CPU:$A560 PRG:2560 4D 45 52 50 45 4F 50 4C 45 20 48 41 44 20 50 4F .byte $50, $50, $45, $44, $20, $20, $FF, $FF, $FF, $20, $20, $20, $41, $4C, $4C, $20 ; CPU:$A570 PRG:2570 50 50 45 44 20 20 FF FF FF 20 20 20 41 4C 4C 20 .byte $54, $48, $45, $20, $42, $55, $42, $42, $4C, $45, $53, $20, $4F, $4E, $20, $20 ; CPU:$A580 PRG:2580 54 48 45 20 42 55 42 42 4C 45 53 20 4F 4E 20 20 .byte $20, $FF, $20, $20, $20, $20, $20, $20, $45, $56, $45, $52, $59, $20, $47, $41 ; CPU:$A590 PRG:2590 20 FF 20 20 20 20 20 20 45 56 45 52 59 20 47 41 .byte $4D, $45, $2E, $20, $20, $20, $20, $20, $20, $20, $FF, $FF, $20, $20, $54, $48 ; CPU:$A5A0 PRG:25A0 4D 45 2E 20 20 20 20 20 20 20 FF FF 20 20 54 48 .byte $45, $20, $45, $4D, $50, $45, $52, $4F, $52, $20, $57, $41, $53, $20, $56, $45 ; CPU:$A5B0 PRG:25B0 45 20 45 4D 50 45 52 4F 52 20 57 41 53 20 56 45 .byte $52, $59, $20, $20, $FF, $20, $20, $41, $4E, $47, $52, $59, $20, $41, $4E, $44 ; CPU:$A5C0 PRG:25C0 52 59 20 20 FF 20 20 41 4E 47 52 59 20 41 4E 44 .byte $20, $53, $57, $41, $4D, $20, $42, $41, $43, $4B, $20, $20, $20, $FF, $20, $20 ; CPU:$A5D0 PRG:25D0 20 53 57 41 4D 20 42 41 43 4B 20 20 20 FF 20 20 .byte $20, $41, $43, $52, $4F, $53, $53, $20, $54, $48, $45, $20, $4F, $43, $45, $41 ; CPU:$A5E0 PRG:25E0 20 41 43 52 4F 53 53 20 54 48 45 20 4F 43 45 41 .byte $4E, $2E, $20, $20, $20, $20, $FF, $FF, $20, $20, $20, $20, $20, $54, $48, $45 ; CPU:$A5F0 PRG:25F0 4E 2E 20 20 20 20 FF FF 20 20 20 20 20 54 48 45 .byte $20, $4D, $45, $52, $50, $45, $4F, $50, $4C, $45, $20, $20, $20, $20, $20, $20 ; CPU:$A600 PRG:2600 20 4D 45 52 50 45 4F 50 4C 45 20 20 20 20 20 20 .byte $FF, $20, $50, $4C, $41, $59, $45, $44, $20, $41, $4C, $4C, $20, $54, $48, $45 ; CPU:$A610 PRG:2610 FF 20 50 4C 41 59 45 44 20 41 4C 4C 20 54 48 45 .byte $20, $47, $41, $4D, $45, $53, $20, $20, $20, $FF, $20, $20, $54, $48, $45, $59 ; CPU:$A620 PRG:2620 20 47 41 4D 45 53 20 20 20 FF 20 20 54 48 45 59 .byte $20, $4C, $4F, $56, $45, $44, $20, $53, $4F, $20, $4D, $55, $43, $48, $2E, $20 ; CPU:$A630 PRG:2630 20 4C 4F 56 45 44 20 53 4F 20 4D 55 43 48 2E 20 .byte $20, $20, $FF, $FF, $20, $20, $20, $41, $4E, $44, $20, $59, $4F, $55, $20, $4B ; CPU:$A640 PRG:2640 20 20 FF FF 20 20 20 41 4E 44 20 59 4F 55 20 4B .byte $4E, $4F, $57, $20, $57, $48, $41, $54, $3F, $20, $20, $20, $FF, $20, $20, $20 ; CPU:$A650 PRG:2650 4E 4F 57 20 57 48 41 54 3F 20 20 20 FF 20 20 20 .byte $45, $56, $45, $52, $59, $20, $47, $41, $4D, $45, $20, $53, $45, $45, $4D, $45 ; CPU:$A660 PRG:2660 45 56 45 52 59 20 47 41 4D 45 20 53 45 45 4D 45 .byte $44, $20, $20, $20, $20, $FF, $20, $20, $20, $20, $20, $20, $53, $4F, $4D, $45 ; CPU:$A670 PRG:2670 44 20 20 20 20 FF 20 20 20 20 20 20 53 4F 4D 45 .byte $48, $4F, $57, $20, $4A, $55, $53, $54, $20, $20, $20, $20, $20, $20, $FF, $FF ; CPU:$A680 PRG:2680 48 4F 57 20 4A 55 53 54 20 20 20 20 20 20 FF FF .byte $FF, $20, $41, $20, $4C, $49, $54, $54, $4C, $45, $20, $42, $49, $54, $20, $4D ; CPU:$A690 PRG:2690 FF 20 41 20 4C 49 54 54 4C 45 20 42 49 54 20 4D .byte $4F, $52, $45, $20, $46, $55, $4E, $20, $20, $FF, $20, $20, $20, $20, $20, $20 ; CPU:$A6A0 PRG:26A0 4F 52 45 20 46 55 4E 20 20 FF 20 20 20 20 20 20 .byte $54, $48, $41, $4E, $20, $42, $45, $46, $4F, $52, $45, $2E, $20, $20, $20, $20 ; CPU:$A6B0 PRG:26B0 54 48 41 4E 20 42 45 46 4F 52 45 2E 20 20 20 20 .byte $20, $20, $FF, $FF, $20, $20, $20, $20, $20, $20, $41, $4E, $44, $20, $54, $48 ; CPU:$A6C0 PRG:26C0 20 20 FF FF 20 20 20 20 20 20 41 4E 44 20 54 48 .byte $45, $59, $20, $41, $4C, $4C, $20, $20, $20, $20, $20, $20, $FF, $20, $20, $20 ; CPU:$A6D0 PRG:26D0 45 59 20 41 4C 4C 20 20 20 20 20 20 FF 20 20 20 .byte $20, $20, $4C, $49, $56, $45, $44, $20, $48, $41, $50, $50, $49, $4C, $59, $20 ; CPU:$A6E0 PRG:26E0 20 20 4C 49 56 45 44 20 48 41 50 50 49 4C 59 20 .byte $20, $20, $20, $20, $20, $FF, $20, $20, $20, $20, $20, $20, $45, $56, $45, $52 ; CPU:$A6F0 PRG:26F0 20 20 20 20 20 FF 20 20 20 20 20 20 45 56 45 52 .byte $20, $41, $46, $54, $45, $52, $2E, $20, $20, $20, $20, $20, $20, $20, $FF, $0E ; CPU:$A700 PRG:2700 20 41 46 54 45 52 2E 20 20 20 20 20 20 20 FF 0E .byte $0E, $05, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E ; CPU:$A710 PRG:2710 0E 05 0E 0E 0E 0E 0E 0E 0E 0E 0E 0E 0E 0E 0E 0E .byte $0E, $0E, $0E, $0E, $25, $13, $1A, $0E, $21, $25, $1A, $0E, $21, $13, $30, $0E ; CPU:$A720 PRG:2720 0E 0E 0E 0E 25 13 1A 0E 21 25 1A 0E 21 13 30 0E .byte $01, $15, $06, $0E, $05, $0E, $0E, $0E, $01, $05, $0E, $0E, $01, $0E, $10, $0E ; CPU:$A730 PRG:2730 01 15 06 0E 05 0E 0E 0E 01 05 0E 0E 01 0E 10 0E .byte $0E, $0E, $0E, $0E, $25, $13, $1A, $0E, $21, $25, $1A, $0E, $21, $13, $30, $0E ; CPU:$A740 PRG:2740 0E 0E 0E 0E 25 13 1A 0E 21 25 1A 0E 21 13 30 0E .byte $11, $25, $16, $0E, $15, $03, $0A, $0E, $11, $15, $0A, $0E, $11, $03, $20, $0E ; CPU:$A750 PRG:2750 11 25 16 0E 15 03 0A 0E 11 15 0A 0E 11 03 20 0E .byte $0E, $0E, $0E, $0E, $25, $13, $1A, $0E, $21, $25, $1A, $0E, $21, $13, $30, $0E ; CPU:$A760 PRG:2760 0E 0E 0E 0E 25 13 1A 0E 21 25 1A 0E 21 13 30 0E .byte $21, $36, $26, $0E, $25, $13, $1A, $0E, $21, $25, $1A, $0E, $21, $13, $30, $0E ; CPU:$A770 PRG:2770 21 36 26 0E 25 13 1A 0E 21 25 1A 0E 21 13 30 0E .byte $0E, $0E, $0E, $0E, $25, $13, $1A, $0E, $21, $25, $1A, $0E, $21, $13, $30, $A5 ; CPU:$A780 PRG:2780 0E 0E 0E 0E 25 13 1A 0E 21 25 1A 0E 21 13 30 A5 .byte $B9, $8D, $E8, $05, $A5, $C2, $F0, $0C, $A5, $B9, $D0, $08, $20, $21, $B8, $A9 ; CPU:$A790 PRG:2790 B9 8D E8 05 A5 C2 F0 0C A5 B9 D0 08 20 21 B8 A9 .byte $00, $85, $B9, $60, $A5, $71, $C9, $02, $F0, $09, $A5, $B9, $C9, $07, $B0, $03 ; CPU:$A7A0 PRG:27A0 00 85 B9 60 A5 71 C9 02 F0 09 A5 B9 C9 07 B0 03 .byte $20, $D0, $B7, $A5, $BE, $30, $0C, $A5, $71, $C9, $02, $F0, $06, $A5, $31, $D0 ; CPU:$A7B0 PRG:27B0 20 D0 B7 A5 BE 30 0C A5 71 C9 02 F0 06 A5 31 D0 .byte $02, $E6, $C0, $A5, $B9, $20, $73, $81, $DC, $A7, $05, $A8, $6C, $A8, $88, $AD ; CPU:$A7C0 PRG:27C0 02 E6 C0 A5 B9 20 73 81 DC A7 05 A8 6C A8 88 AD .byte $CE, $AF, $AE, $A8, $1B, $AA, $91, $AA, $0B, $AE, $21, $BA, $A9, $A4, $85, $A6 ; CPU:$A7D0 PRG:27D0 CE AF AE A8 1B AA 91 AA 0B AE 21 BA A9 A4 85 A6 .byte $A9, $CE, $85, $A7, $A9, $2B, $85, $AA, $E6, $B9, $A9, $00, $85, $B3, $85, $A5 ; CPU:$A7E0 PRG:27E0 A9 CE 85 A7 A9 2B 85 AA E6 B9 A9 00 85 B3 85 A5 .byte $85, $37, $85, $36, $A9, $08, $85, $9D, $20, $EF, $A8, $A5, $BF, $C9, $05, $D0 ; CPU:$A7F0 PRG:27F0 85 37 85 36 A9 08 85 9D 20 EF A8 A5 BF C9 05 D0 .byte $03, $20, $9F, $AF, $60, $20, $B3, $AA, $A5, $2B, $29, $C0, $F0, $1A, $A9, $01 ; CPU:$A800 PRG:2800 03 20 9F AF 60 20 B3 AA A5 2B 29 C0 F0 1A A9 01 .byte $8D, $E3, $00, $A9, $03, $8D, $E2, $00, $A5, $2B, $29, $80, $F0, $05, $A9, $02 ; CPU:$A810 PRG:2810 8D E3 00 A9 03 8D E2 00 A5 2B 29 80 F0 05 A9 02 .byte $8D, $E2, $00, $A9, $04, $20, $04, $80, $AD, $DD, $06, $F0, $03, $20, $A1, $A9 ; CPU:$A820 PRG:2820 8D E2 00 A9 04 20 04 80 AD DD 06 F0 03 20 A1 A9 .byte $A6, $BD, $F0, $25, $AD, $59, $03, $C9, $07, $90, $1F, $BD, $8D, $03, $8D, $89 ; CPU:$A830 PRG:2830 A6 BD F0 25 AD 59 03 C9 07 90 1F BD 8D 03 8D 89 .byte $03, $BD, $9D, $03, $8D, $99, $03, $A9, $04, $18, $6D, $89, $03, $8D, $89, $03 ; CPU:$A840 PRG:2840 03 BD 9D 03 8D 99 03 A9 04 18 6D 89 03 8D 89 03 .byte $A9, $04, $18, $6D, $99, $03, $8D, $99, $03, $60, $A5, $31, $6A, $29, $03, $85 ; CPU:$A850 PRG:2850 A9 04 18 6D 99 03 8D 99 03 60 A5 31 6A 29 03 85 .byte $20, $AD, $AF, $03, $29, $FC, $05, $20, $8D, $AF, $03, $60, $A5, $31, $6A, $90 ; CPU:$A860 PRG:2860 20 AD AF 03 29 FC 05 20 8D AF 03 60 A5 31 6A 90 .byte $01, $60, $20, $55, $AD, $20, $7F, $A9, $A5, $BD, $F0, $1C, $AD, $59, $03, $C9 ; CPU:$A870 PRG:2870 01 60 20 55 AD 20 7F A9 A5 BD F0 1C AD 59 03 C9 .byte $07, $90, $15, $A6, $BD, $B5, $AA, $85, $BE, $AA, $BD, $EA, $05, $09, $40, $9D ; CPU:$A880 PRG:2880 07 90 15 A6 BD B5 AA 85 BE AA BD EA 05 09 40 9D .byte $EA, $05, $A9, $00, $85, $BD, $85, $C0, $E6, $B9, $A9, $01, $8D, $E3, $00, $A9 ; CPU:$A890 PRG:2890 EA 05 A9 00 85 BD 85 C0 E6 B9 A9 01 8D E3 00 A9 .byte $00, $8D, $E2, $00, $A9, $04, $20, $04, $80, $A9, $00, $85, $BA, $60, $20, $08 ; CPU:$A8A0 PRG:28A0 00 8D E2 00 A9 04 20 04 80 A9 00 85 BA 60 20 08 .byte $B1, $60, $A6, $C3, $A9, $04, $85, $1F, $A5, $A5, $0A, $0A, $A8, $B1, $A3, $85 ; CPU:$A8B0 PRG:28B0 B1 60 A6 C3 A9 04 85 1F A5 A5 0A 0A A8 B1 A3 85 .byte $1B, $29, $F0, $85, $1C, $18, $65, $A6, $9D, $88, $03, $A5, $1B, $29, $0F, $0A ; CPU:$A8C0 PRG:28C0 1B 29 F0 85 1C 18 65 A6 9D 88 03 A5 1B 29 0F 0A .byte $0A, $0A, $0A, $18, $65, $A7, $9D, $98, $03, $A9, $10, $25, $1C, $F0, $09, $BD ; CPU:$A8D0 PRG:28D0 0A 0A 0A 18 65 A7 9D 98 03 A9 10 25 1C F0 09 BD .byte $98, $03, $18, $69, $08, $9D, $98, $03, $E8, $C8, $C6, $1F, $D0, $CF, $60, $EE ; CPU:$A8E0 PRG:28E0 98 03 18 69 08 9D 98 03 E8 C8 C6 1F D0 CF 60 EE .byte $E3, $05, $AD, $E3, $05, $6A, $AC, $E5, $05, $D0, $05, $20, $52, $85, $A5, $3D ; CPU:$A8F0 PRG:28F0 E3 05 AD E3 05 6A AC E5 05 D0 05 20 52 85 A5 3D .byte $29, $07, $85, $1D, $AD, $E3, $05, $6A, $AC, $E5, $05, $D0, $05, $20, $52, $85 ; CPU:$A900 PRG:2900 29 07 85 1D AD E3 05 6A AC E5 05 D0 05 20 52 85 .byte $A5, $3D, $29, $7F, $A8, $B1, $3B, $85, $1B, $6A, $6A, $6A, $29, $0E, $85, $9E ; CPU:$A910 PRG:2910 A5 3D 29 7F A8 B1 3B 85 1B 6A 6A 6A 29 0E 85 9E .byte $AA, $BD, $13, $F3, $85, $A3, $BD, $14, $F3, $85, $A4, $BD, $8E, $F3, $85, $19 ; CPU:$A920 PRG:2920 AA BD 13 F3 85 A3 BD 14 F3 85 A4 BD 8E F3 85 19 .byte $BD, $8F, $F3, $85, $1A, $A5, $1B, $29, $0F, $0A, $0A, $A8, $A2, $00, $86, $21 ; CPU:$A930 PRG:2930 BD 8F F3 85 1A A5 1B 29 0F 0A 0A A8 A2 00 86 21 .byte $B1, $19, $18, $65, $1D, $AA, $BD, $81, $F3, $A6, $21, $95, $AF, $C8, $E8, $E0 ; CPU:$A940 PRG:2940 B1 19 18 65 1D AA BD 81 F3 A6 21 95 AF C8 E8 E0 .byte $04, $90, $EB, $A2, $00, $A9, $06, $85, $12, $86, $21, $B5, $AF, $85, $11, $20 ; CPU:$A950 PRG:2950 04 90 EB A2 00 A9 06 85 12 86 21 B5 AF 85 11 20 .byte $5D, $85, $E6, $12, $A6, $21, $E8, $E0, $04, $90, $EE, $A9, $06, $85, $C3, $A0 ; CPU:$A960 PRG:2960 5D 85 E6 12 A6 21 E8 E0 04 90 EE A9 06 85 C3 A0 .byte $00, $B1, $A3, $18, $65, $AA, $99, $AB, $00, $C8, $C0, $04, $90, $F3, $60, $A9 ; CPU:$A970 PRG:2970 00 B1 A3 18 65 AA 99 AB 00 C8 C0 04 90 F3 60 A9 .byte $00, $85, $11, $A9, $06, $85, $12, $20, $5D, $85, $E6, $12, $AD, $5F, $03, $C9 ; CPU:$A980 PRG:2980 00 85 11 A9 06 85 12 20 5D 85 E6 12 AD 5F 03 C9 .byte $05, $D0, $02, $E6, $12, $20, $5D, $85, $E6, $12, $A5, $12, $C9, $0A, $90, $F5 ; CPU:$A990 PRG:2990 05 D0 02 E6 12 20 5D 85 E6 12 A5 12 C9 0A 90 F5 .byte $60, $A5, $31, $6A, $90, $01, $60, $AD, $DD, $06, $AA, $29, $0F, $18, $6D, $BF ; CPU:$A9A0 PRG:29A0 60 A5 31 6A 90 01 60 AD DD 06 AA 29 0F 18 6D BF .byte $05, $8D, $BF, $05, $8A, $6A, $6A, $6A, $6A, $29, $0F, $18, $6D, $BE, $05, $8D ; CPU:$A9B0 PRG:29B0 05 8D BF 05 8A 6A 6A 6A 6A 29 0F 18 6D BE 05 8D .byte $BE, $05, $A2, $05, $BD, $BA, $05, $C9, $0A, $90, $0B, $FE, $B9, $05, $18, $69 ; CPU:$A9C0 PRG:29C0 BE 05 A2 05 BD BA 05 C9 0A 90 0B FE B9 05 18 69 .byte $06, $29, $0F, $9D, $BA, $05, $CA, $D0, $EB, $A9, $06, $8D, $F1, $06, $A9, $01 ; CPU:$A9D0 PRG:29D0 06 29 0F 9D BA 05 CA D0 EB A9 06 8D F1 06 A9 01 .byte $8D, $F2, $06, $A2, $00, $BD, $BA, $05, $A8, $B9, $D6, $F1, $9D, $F3, $06, $E8 ; CPU:$A9E0 PRG:29E0 8D F2 06 A2 00 BD BA 05 A8 B9 D6 F1 9D F3 06 E8 .byte $E0, $06, $90, $F1, $A6, $37, $A9, $3A, $9D, $38, $03, $A9, $23, $9D, $39, $03 ; CPU:$A9F0 PRG:29F0 E0 06 90 F1 A6 37 A9 3A 9D 38 03 A9 23 9D 39 03 .byte $AD, $0A, $B7, $9D, $3A, $03, $AD, $0B, $B7, $9D, $3B, $03, $A9, $00, $9D, $3C ; CPU:$AA00 PRG:2A00 AD 0A B7 9D 3A 03 AD 0B B7 9D 3B 03 A9 00 9D 3C .byte $03, $8D, $DD, $06, $8A, $18, $69, $04, $85, $37, $60, $A5, $C0, $C9, $08, $90 ; CPU:$AA10 PRG:2A10 03 8D DD 06 8A 18 69 04 85 37 60 A5 C0 C9 08 90 .byte $15, $A6, $BE, $BD, $EA, $05, $29, $BF, $9D, $EA, $05, $A9, $00, $85, $C0, $8D ; CPU:$AA20 PRG:2A20 15 A6 BE BD EA 05 29 BF 9D EA 05 A9 00 85 C0 8D .byte $59, $03, $A9, $FF, $85, $BE, $A2, $0B, $BD, $EA, $05, $F0, $09, $E6, $B9, $E6 ; CPU:$AA30 PRG:2A30 59 03 A9 FF 85 BE A2 0B BD EA 05 F0 09 E6 B9 E6 .byte $B9, $A9, $00, $85, $BA, $60, $8A, $18, $69, $10, $AA, $C9, $70, $90, $E9, $A9 ; CPU:$AA40 PRG:2A40 B9 A9 00 85 BA 60 8A 18 69 10 AA C9 70 90 E9 A9 .byte $00, $85, $B9, $A5, $71, $C9, $02, $F0, $2C, $A5, $C2, $D0, $27, $A5, $BC, $C9 ; CPU:$AA50 PRG:2A50 00 85 B9 A5 71 C9 02 F0 2C A5 C2 D0 27 A5 BC C9 .byte $1E, $90, $0F, $A9, $00, $85, $BC, $E6, $BF, $A5, $BF, $C9, $05, $F0, $03, $20 ; CPU:$AA60 PRG:2A60 1E 90 0F A9 00 85 BC E6 BF A5 BF C9 05 F0 03 20 .byte $5A, $AF, $A5, $BB, $C9, $C8, $90, $0C, $A9, $07, $85, $B9, $A9, $00, $85, $BA ; CPU:$AA70 PRG:2A70 5A AF A5 BB C9 C8 90 0C A9 07 85 B9 A9 00 85 BA .byte $A9, $32, $85, $B3, $60, $A6, $BE, $BD, $EA, $05, $29, $40, $D0, $F6, $4C, $78 ; CPU:$AA80 PRG:2A80 A9 32 85 B3 60 A6 BE BD EA 05 29 40 D0 F6 4C 78 .byte $AA, $A9, $01, $85, $98, $A5, $95, $D0, $08, $AD, $E9, $05, $C9, $05, $D0, $01 ; CPU:$AA90 PRG:2A90 AA A9 01 85 98 A5 95 D0 08 AD E9 05 C9 05 D0 01 .byte $60, $A9, $09, $85, $6A, $A9, $00, $85, $6C, $60, $A9, $05, $85, $BA, $A9, $08 ; CPU:$AAA0 PRG:2AA0 60 A9 09 85 6A A9 00 85 6C 60 A9 05 85 BA A9 08 .byte $85, $B9, $60, $A5, $B3, $F0, $1E, $A5, $9C, $29, $01, $F0, $05, $E6, $A6, $4C ; CPU:$AAB0 PRG:2AB0 85 B9 60 A5 B3 F0 1E A5 9C 29 01 F0 05 E6 A6 4C .byte $CA, $AA, $A5, $9C, $29, $02, $F0, $02, $C6, $A6, $C6, $B3, $D0, $04, $A9, $00 ; CPU:$AAC0 PRG:2AC0 CA AA A5 9C 29 02 F0 02 C6 A6 C6 B3 D0 04 A9 00 .byte $85, $9C, $4C, $DF, $AB, $AD, $E5, $05, $F0, $17, $AE, $E4, $05, $BD, $BE, $AC ; CPU:$AAD0 PRG:2AD0 85 9C 4C DF AB AD E5 05 F0 17 AE E4 05 BD BE AC .byte $C5, $AA, $D0, $0D, $BD, $BF, $AC, $85, $27, $85, $2B, $EE, $E4, $05, $EE, $E4 ; CPU:$AAE0 PRG:2AE0 C5 AA D0 0D BD BF AC 85 27 85 2B EE E4 05 EE E4 .byte $05, $A5, $27, $29, $08, $D0, $06, $A9, $00, $85, $C5, $F0, $16, $E6, $C5, $A5 ; CPU:$AAF0 PRG:2AF0 05 A5 27 29 08 D0 06 A9 00 85 C5 F0 16 E6 C5 A5 .byte $C5, $C9, $08, $90, $0A, $A9, $00, $85, $C5, $EE, $DD, $06, $EE, $DD, $06, $A9 ; CPU:$AB00 PRG:2B00 C5 C9 08 90 0A A9 00 85 C5 EE DD 06 EE DD 06 A9 .byte $00, $85, $C6, $A5, $C6, $D0, $0A, $A5, $CB, $85, $C6, $C6, $9D, $C6, $A7, $C6 ; CPU:$AB10 PRG:2B10 00 85 C6 A5 C6 D0 0A A5 CB 85 C6 C6 9D C6 A7 C6 .byte $A7, $C6, $C6, $A5, $9D, $D0, $16, $A9, $08, $85, $9D, $A5, $AA, $85, $20, $C6 ; CPU:$AB20 PRG:2B20 A7 C6 C6 A5 9D D0 16 A9 08 85 9D A5 AA 85 20 C6 .byte $20, $A5, $A5, $85, $23, $20, $29, $AC, $F0, $03, $E6, $B9, $60, $A5, $27, $29 ; CPU:$AB30 PRG:2B30 20 A5 A5 85 23 20 29 AC F0 03 E6 B9 60 A5 27 29 .byte $03, $D0, $03, $4C, $DF, $AB, $C9, $03, $D0, $07, $A9, $00, $85, $9C, $4C, $DF ; CPU:$AB40 PRG:2B40 03 D0 03 4C DF AB C9 03 D0 07 A9 00 85 9C 4C DF .byte $AB, $85, $9C, $A5, $27, $29, $01, $F0, $09, $A5, $AA, $18, $69, $10, $29, $F0 ; CPU:$AB50 PRG:2B50 AB 85 9C A5 27 29 01 F0 09 A5 AA 18 69 10 29 F0 .byte $85, $20, $A5, $27, $29, $02, $F0, $09, $A5, $AA, $38, $E9, $10, $29, $F0, $85 ; CPU:$AB60 PRG:2B60 85 20 A5 27 29 02 F0 09 A5 AA 38 E9 10 29 F0 85 .byte $20, $A5, $AA, $29, $0F, $05, $20, $85, $20, $A5, $9D, $C9, $05, $90, $1B, $A5 ; CPU:$AB70 PRG:2B70 20 A5 AA 29 0F 05 20 85 20 A5 9D C9 05 90 1B A5 .byte $AA, $85, $1C, $29, $0F, $C9, $0E, $90, $06, $A5, $AA, $49, $10, $85, $1C, $A5 ; CPU:$AB80 PRG:2B80 AA 85 1C 29 0F C9 0E 90 06 A5 AA 49 10 85 1C A5 .byte $1C, $29, $10, $F0, $1D, $E6, $20, $4C, $B2, $AB, $A5, $AA, $85, $1C, $29, $0F ; CPU:$AB90 PRG:2B90 1C 29 10 F0 1D E6 20 4C B2 AB A5 AA 85 1C 29 0F .byte $C9, $0E, $90, $06, $A5, $AA, $49, $10, $85, $1C, $A5, $1C, $29, $10, $D0, $02 ; CPU:$ABA0 PRG:2BA0 C9 0E 90 06 A5 AA 49 10 85 1C A5 1C 29 10 D0 02 .byte $C6, $20, $A5, $A5, $85, $23, $20, $29, $AC, $F0, $09, $A9, $00, $85, $9C, $85 ; CPU:$ABB0 PRG:2BB0 C6 20 A5 A5 85 23 20 29 AC F0 09 A9 00 85 9C 85 .byte $B3, $4C, $DF, $AB, $A9, $00, $85, $C6, $A9, $10, $85, $B3, $A5, $9D, $C9, $05 ; CPU:$ABC0 PRG:2BC0 B3 4C DF AB A9 00 85 C6 A9 10 85 B3 A5 9D C9 05 .byte $90, $08, $38, $E9, $04, $85, $9D, $4C, $DF, $AB, $18, $69, $04, $85, $9D, $A5 ; CPU:$ABD0 PRG:2BD0 90 08 38 E9 04 85 9D 4C DF AB 18 69 04 85 9D A5 .byte $A5, $85, $23, $29, $01, $F0, $21, $A5, $2B, $29, $80, $F0, $02, $C6, $23, $A5 ; CPU:$ABE0 PRG:2BE0 A5 85 23 29 01 F0 21 A5 2B 29 80 F0 02 C6 23 A5 .byte $2B, $29, $40, $F0, $02, $E6, $23, $A5, $23, $29, $03, $85, $23, $A5, $AA, $85 ; CPU:$ABF0 PRG:2BF0 2B 29 40 F0 02 E6 23 A5 23 29 03 85 23 A5 AA 85 .byte $20, $20, $29, $AC, $20, $B2, $A8, $60, $A5, $2B, $29, $80, $F0, $02, $E6, $23 ; CPU:$AC00 PRG:2C00 20 20 29 AC 20 B2 A8 60 A5 2B 29 80 F0 02 E6 23 .byte $A5, $2B, $29, $40, $F0, $02, $C6, $23, $A5, $23, $29, $03, $85, $23, $A5, $AA ; CPU:$AC10 PRG:2C10 A5 2B 29 40 F0 02 C6 23 A5 23 29 03 85 23 A5 AA .byte $85, $20, $20, $29, $AC, $20, $B2, $A8, $60, $A5, $20, $29, $F0, $85, $21, $A5 ; CPU:$AC20 PRG:2C20 85 20 20 29 AC 20 B2 A8 60 A5 20 29 F0 85 21 A5 .byte $20, $29, $0F, $85, $22, $A9, $04, $85, $1F, $A2, $00, $A5, $23, $0A, $0A, $85 ; CPU:$AC30 PRG:2C30 20 29 0F 85 22 A9 04 85 1F A2 00 A5 23 0A 0A 85 .byte $25, $A4, $25, $B1, $A3, $85, $1E, $A5, $21, $85, $1C, $A5, $22, $C9, $0E, $90 ; CPU:$AC40 PRG:2C40 25 A4 25 B1 A3 85 1E A5 21 85 1C A5 22 C9 0E 90 .byte $07, $A5, $21, $18, $69, $10, $85, $1C, $A5, $1C, $29, $10, $F0, $08, $A5, $1E ; CPU:$AC50 PRG:2C50 07 A5 21 18 69 10 85 1C A5 1C 29 10 F0 08 A5 1E .byte $29, $10, $F0, $02, $E6, $1E, $A5, $1E, $29, $F0, $18, $65, $21, $85, $1D, $C9 ; CPU:$AC60 PRG:2C60 29 10 F0 02 E6 1E A5 1E 29 F0 18 65 21 85 1D C9 .byte $70, $D0, $03, $A9, $FF, $60, $A5, $1E, $29, $0F, $18, $65, $22, $85, $1C, $29 ; CPU:$AC70 PRG:2C70 70 D0 03 A9 FF 60 A5 1E 29 0F 18 65 22 85 1C 29 .byte $0F, $C9, $0E, $90, $03, $A9, $FF, $60, $A5, $1C, $18, $65, $1D, $C9, $70, $B0 ; CPU:$AC80 PRG:2C80 0F C9 0E 90 03 A9 FF 60 A5 1C 18 65 1D C9 70 B0 .byte $F4, $A8, $B9, $EA, $05, $29, $7F, $F0, $01, $60, $98, $95, $C7, $E8, $E6, $25 ; CPU:$AC90 PRG:2C90 F4 A8 B9 EA 05 29 7F F0 01 60 98 95 C7 E8 E6 25 .byte $C6, $1F, $D0, $9D, $A9, $04, $85, $1F, $A2, $00, $B5, $C7, $95, $AB, $E8, $C6 ; CPU:$ACA0 PRG:2CA0 C6 1F D0 9D A9 04 85 1F A2 00 B5 C7 95 AB E8 C6 .byte $1F, $D0, $F7, $A5, $20, $85, $AA, $A5, $23, $85, $A5, $A9, $00, $60, $28, $80 ; CPU:$ACB0 PRG:2CB0 1F D0 F7 A5 20 85 AA A5 23 85 A5 A9 00 60 28 80 .byte $24, $02, $28, $01, $32, $02, $29, $01, $35, $40, $29, $80, $24, $01, $2A, $01 ; CPU:$ACC0 PRG:2CC0 24 02 28 01 32 02 29 01 35 40 29 80 24 01 2A 01 .byte $35, $01, $28, $80, $24, $40, $28, $01, $34, $02, $28, $40, $25, $40, $2A, $02 ; CPU:$ACD0 PRG:2CD0 35 01 28 80 24 40 28 01 34 02 28 40 25 40 2A 02 .byte $17, $02, $05, $80, $28, $40, $23, $80, $28, $01, $34, $40, $32, $01, $29, $01 ; CPU:$ACE0 PRG:2CE0 17 02 05 80 28 40 23 80 28 01 34 40 32 01 29 01 .byte $35, $40, $33, $01, $29, $80, $25, $01, $32, $01, $27, $02, $12, $40, $27, $40 ; CPU:$ACF0 PRG:2CF0 35 40 33 01 29 80 25 01 32 01 27 02 12 40 27 40 .byte $24, $02, $29, $80, $23, $80, $29, $01, $32, $02, $21, $02, $26, $40, $22, $02 ; CPU:$AD00 PRG:2D00 24 02 29 80 23 80 29 01 32 02 21 02 26 40 22 02 .byte $10, $01, $25, $02, $29, $80, $26, $40, $28, $40, $25, $80, $23, $40, $29, $80 ; CPU:$AD10 PRG:2D10 10 01 25 02 29 80 26 40 28 40 25 80 23 40 29 80 .byte $26, $01, $34, $01, $28, $80, $22, $01, $29, $01, $36, $01, $43, $01, $28, $40 ; CPU:$AD20 PRG:2D20 26 01 34 01 28 80 22 01 29 01 36 01 43 01 28 40 .byte $25, $80, $23, $01, $29, $01, $36, $01, $29, $01, $36, $01, $29, $80, $25, $80 ; CPU:$AD30 PRG:2D30 25 80 23 01 29 01 36 01 29 01 36 01 29 80 25 80 .byte $28, $80, $2A, $02, $18, $02, $06, $40, $04, $01, $28, $40, $28, $80, $25, $80 ; CPU:$AD40 PRG:2D40 28 80 2A 02 18 02 06 40 04 01 28 40 28 80 25 80 .byte $29, $02, $29, $01, $37, $A2, $00, $86, $21, $B4, $AB, $B5, $AF, $85, $1B, $99 ; CPU:$AD50 PRG:2D50 29 02 29 01 37 A2 00 86 21 B4 AB B5 AF 85 1B 99 .byte $EA, $05, $E6, $21, $0A, $AA, $BD, $9E, $F2, $85, $17, $BD, $9F, $F2, $85, $18 ; CPU:$AD60 PRG:2D60 EA 05 E6 21 0A AA BD 9E F2 85 17 BD 9F F2 85 18 .byte $98, $20, $BF, $84, $20, $8A, $85, $20, $E3, $84, $A6, $21, $E0, $04, $90, $D9 ; CPU:$AD70 PRG:2D70 98 20 BF 84 20 8A 85 20 E3 84 A6 21 E0 04 90 D9 .byte $A6, $36, $A9, $00, $9D, $00, $03, $60, $A5, $BA, $C9, $00, $D0, $36, $A2, $00 ; CPU:$AD80 PRG:2D80 A6 36 A9 00 9D 00 03 60 A5 BA C9 00 D0 36 A2 00 .byte $86, $B5, $86, $21, $B5, $AB, $85, $20, $C6, $20, $A5, $20, $29, $0F, $C9, $0E ; CPU:$AD90 PRG:2D90 86 B5 86 21 B5 AB 85 20 C6 20 A5 20 29 0F C9 0E .byte $B0, $18, $A4, $20, $B9, $EA, $05, $D0, $11, $A9, $80, $99, $EA, $05, $98, $A6 ; CPU:$ADA0 PRG:2DA0 B0 18 A4 20 B9 EA 05 D0 11 A9 80 99 EA 05 98 A6 .byte $B5, $9D, $A1, $06, $E6, $B5, $C6, $20, $10, $E0, $A6, $21, $E8, $E0, $04, $90 ; CPU:$ADB0 PRG:2DB0 B5 9D A1 06 E6 B5 C6 20 10 E0 A6 21 E8 E0 04 90 .byte $D1, $E6, $BA, $60, $A5, $31, $6A, $90, $01, $60, $A9, $0D, $85, $17, $A9, $F3 ; CPU:$ADC0 PRG:2DC0 D1 E6 BA 60 A5 31 6A 90 01 60 A9 0D 85 17 A9 F3 .byte $85, $18, $A9, $0C, $85, $1F, $A0, $00, $C6, $B5, $10, $18, $E6, $B9, $A5, $BD ; CPU:$ADD0 PRG:2DD0 85 18 A9 0C 85 1F A0 00 C6 B5 10 18 E6 B9 A5 BD .byte $D0, $02, $E6, $B9, $A9, $00, $A4, $36, $85, $BA, $99, $00, $03, $85, $9C, $A9 ; CPU:$ADE0 PRG:2DE0 D0 02 E6 B9 A9 00 A4 36 85 BA 99 00 03 85 9C A9 .byte $03, $85, $B3, $60, $A6, $B5, $BD, $A1, $06, $20, $BF, $84, $20, $8A, $85, $C6 ; CPU:$ADF0 PRG:2DF0 03 85 B3 60 A6 B5 BD A1 06 20 BF 84 20 8A 85 C6 .byte $1F, $10, $D5, $A4, $36, $A9, $00, $99, $00, $03, $60, $A5, $BA, $20, $73, $81 ; CPU:$AE00 PRG:2E00 1F 10 D5 A4 36 A9 00 99 00 03 60 A5 BA 20 73 81 .byte $20, $AE, $2B, $AE, $47, $AE, $80, $AE, $D6, $AE, $E3, $AE, $0A, $AF, $23, $AF ; CPU:$AE10 PRG:2E10 20 AE 2B AE 47 AE 80 AE D6 AE E3 AE 0A AF 23 AF .byte $A9, $0A, $85, $6A, $A9, $00, $85, $6C, $E6, $BA, $60, $A9, $00, $8D, $59, $03 ; CPU:$AE20 PRG:2E20 A9 0A 85 6A A9 00 85 6C E6 BA 60 A9 00 8D 59 03 .byte $8D, $5E, $03, $8D, $5F, $03, $8D, $60, $03, $8D, $61, $03, $A9, $0A, $85, $B5 ; CPU:$AE30 PRG:2E30 8D 5E 03 8D 5F 03 8D 60 03 8D 61 03 A9 0A 85 B5 .byte $E6, $BA, $A9, $07, $4C, $04, $80, $A5, $31, $6A, $90, $01, $60, $A9, $A8, $85 ; CPU:$AE40 PRG:2E40 E6 BA A9 07 4C 04 80 A5 31 6A 90 01 60 A9 A8 85 .byte $17, $A9, $F2, $85, $18, $A5, $B5, $85, $B3, $20, $BF, $84, $20, $8A, $85, $A5 ; CPU:$AE50 PRG:2E50 17 A9 F2 85 18 A5 B5 85 B3 20 BF 84 20 8A 85 A5 .byte $B3, $18, $69, $10, $C9, $70, $90, $EF, $A9, $00, $9D, $00, $03, $C6, $B5, $10 ; CPU:$AE60 PRG:2E60 B3 18 69 10 C9 70 90 EF A9 00 9D 00 03 C6 B5 10 .byte $0E, $E6, $BA, $A0, $00, $A9, $00, $99, $EA, $05, $C8, $C0, $70, $90, $F8, $60 ; CPU:$AE70 PRG:2E70 0E E6 BA A0 00 A9 00 99 EA 05 C8 C0 70 90 F8 60 .byte $A5, $31, $6A, $90, $01, $60, $A6, $37, $A0, $00, $B9, $AC, $AE, $9D, $38, $03 ; CPU:$AE80 PRG:2E80 A5 31 6A 90 01 60 A6 37 A0 00 B9 AC AE 9D 38 03 .byte $E8, $C8, $C0, $08, $90, $F4, $A9, $00, $9D, $38, $03, $86, $37, $A9, $01, $85 ; CPU:$AE90 PRG:2E90 E8 C8 C0 08 90 F4 A9 00 9D 38 03 86 37 A9 01 85 .byte $96, $A9, $00, $85, $B8, $85, $B7, $85, $91, $E6, $BA, $60, $B7, $21, $11, $F8 ; CPU:$AEA0 PRG:2EA0 96 A9 00 85 B8 85 B7 85 91 E6 BA 60 B7 21 11 F8 .byte $DD, $23, $1B, $F8, $A9, $00, $85, $BA, $A9, $0A, $85, $B5, $60, $20, $4D, $AE ; CPU:$AEB0 PRG:2EB0 DD 23 1B F8 A9 00 85 BA A9 0A 85 B5 60 20 4D AE .byte $A5, $BA, $F0, $02, $E6, $6C, $60 ; CPU:$AEC0 PRG:2EC0 A5 BA F0 02 E6 6C 60 ; ----------------------------------------------------------------------------- ; Routine: ClearBubbleSlots ; Global: Empties the bubble slots. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearBubbleSlots: lda #$00 ; CPU:$AEC7 PRG:2EC7 A9 00 tax ; CPU:$AEC9 PRG:2EC9 AA ; ----------------------------------------------------------------------------- ; Routine: ClearBubbleSlots_OnCarryClear ; Global: Branch target inside ClearBubbleSlots: taken when the addition or subtraction did not carry. ; Local: Part of ClearBubbleSlots. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearBubbleSlots_OnCarryClear: sta ZpB9,x ; CPU:$AECA PRG:2ECA 95 B9 inx ; CPU:$AECC PRG:2ECC E8 cpx #$0A ; CPU:$AECD PRG:2ECD E0 0A bcc ClearBubbleSlots_OnCarryClear ; CPU:$AECF PRG:2ECF 90 F9 lda #$FF ; CPU:$AED1 PRG:2ED1 A9 FF sta ZpBE ; CPU:$AED3 PRG:2ED3 85 BE rts ; CPU:$AED5 PRG:2ED5 60 ; ---- data $AED6-$BB4E (3193 bytes) ---- .byte $A5, $27, $C9, $C0, $D0, $06, $E6, $BA, $A9, $00, $85, $96, $60, $A5, $31, $6A ; CPU:$AED6 PRG:2ED6 A5 27 C9 C0 D0 06 E6 BA A9 00 85 96 60 A5 31 6A .byte $90, $01, $60, $A2, $00, $BD, $FE, $AE, $9D, $38, $03, $E8, $E0, $0C, $90, $F5 ; CPU:$AEE6 PRG:2EE6 90 01 60 A2 00 BD FE AE 9D 38 03 E8 E0 0C 90 F5 .byte $A9, $00, $9D, $38, $03, $E6, $BA, $60, $75, $21, $25, $F8, $B5, $21, $25, $F8 ; CPU:$AEF6 PRG:2EF6 A9 00 9D 38 03 E6 BA 60 75 21 25 F8 B5 21 25 F8 .byte $DD, $23, $20, $F8, $A5, $31, $6A, $90, $01, $60, $A0, $00, $A6, $37, $B9, $48 ; CPU:$AF06 PRG:2F06 DD 23 20 F8 A5 31 6A 90 01 60 A0 00 A6 37 B9 48 .byte $AF, $9D, $38, $03, $E8, $C8, $C0, $0D, $90, $F4, $E6, $BA, $60, $A5, $31, $6A ; CPU:$AF16 PRG:2F16 AF 9D 38 03 E8 C8 C0 0D 90 F4 E6 BA 60 A5 31 6A .byte $90, $01, $60, $A0, $00, $A6, $37, $B9, $55, $AF, $9D, $38, $03, $E8, $C8, $C0 ; CPU:$AF26 PRG:2F26 90 01 60 A0 00 A6 37 B9 55 AF 9D 38 03 E8 C8 C0 .byte $05, $90, $F4, $20, $C7, $AE, $20, $0F, $97, $A9, $09, $85, $B9, $A9, $00, $85 ; CPU:$AF36 PRG:2F36 05 90 F4 20 C7 AE 20 0F 97 A9 09 85 B9 A9 00 85 .byte $BA, $60, $32, $23, $A1, $FB, $52, $23, $A1, $FB, $3A, $23, $A7, $FB, $00, $56 ; CPU:$AF46 PRG:2F46 BA 60 32 23 A1 FB 52 23 A1 FB 3A 23 A7 FB 00 56 .byte $23, $AF, $FB, $00, $A5, $B7, $D0, $18, $20, $52, $85, $A5, $3D, $29, $03, $A8 ; CPU:$AF56 PRG:2F56 23 AF FB 00 A5 B7 D0 18 20 52 85 A5 3D 29 03 A8 .byte $A2, $00, $B9, $37, $C1, $9D, $F9, $06, $C8, $E8, $E0, $05, $90, $F4, $86, $B7 ; CPU:$AF66 PRG:2F66 A2 00 B9 37 C1 9D F9 06 C8 E8 E0 05 90 F4 86 B7 .byte $A6, $B7, $BD, $F8, $06, $18, $69, $07, $85, $11, $A9, $01, $85, $12, $20, $5D ; CPU:$AF76 PRG:2F76 A6 B7 BD F8 06 18 69 07 85 11 A9 01 85 12 20 5D .byte $85, $20, $52, $85, $A5, $3D, $29, $03, $85, $BD, $E6, $BD, $A6, $BE, $30, $08 ; CPU:$AF86 PRG:2F86 85 20 52 85 A5 3D 29 03 85 BD E6 BD A6 BE 30 08 .byte $BD, $EA, $05, $29, $BF, $9D, $EA, $05, $60, $A9, $02, $85, $BD, $A9, $05, $85 ; CPU:$AF96 PRG:2F96 BD EA 05 29 BF 9D EA 05 60 A9 02 85 BD A9 05 85 .byte $11, $A9, $07, $85, $12, $20, $5D, $85, $A9, $00, $85, $BC, $A6, $BE, $30, $17 ; CPU:$AFA6 PRG:2FA6 11 A9 07 85 12 20 5D 85 A9 00 85 BC A6 BE 30 17 .byte $BD, $EA, $05, $29, $BF, $9D, $EA, $05, $A9, $FF, $85, $BE, $A9, $00, $85, $11 ; CPU:$AFB6 PRG:2FB6 BD EA 05 29 BF 9D EA 05 A9 FF 85 BE A9 00 85 11 .byte $A9, $01, $85, $12, $20, $5D, $85, $60, $A5, $31, $6A, $90, $01, $60, $A5, $BA ; CPU:$AFC6 PRG:2FC6 A9 01 85 12 20 5D 85 60 A5 31 6A 90 01 60 A5 BA .byte $D0, $11, $E6, $BA, $A9, $01, $8D, $E3, $00, $A9, $05, $8D, $E2, $00, $A9, $04 ; CPU:$AFD6 PRG:2FD6 D0 11 E6 BA A9 01 8D E3 00 A9 05 8D E2 00 A9 04 .byte $4C, $04, $80, $C9, $01, $D0, $4A, $A9, $05, $85, $11, $A9, $08, $85, $12, $20 ; CPU:$AFE6 PRG:2FE6 4C 04 80 C9 01 D0 4A A9 05 85 11 A9 08 85 12 20 .byte $5D, $85, $A5, $9C, $0A, $AA, $BD, $87, $F8, $18, $6D, $8F, $03, $8D, $90, $03 ; CPU:$AFF6 PRG:2FF6 5D 85 A5 9C 0A AA BD 87 F8 18 6D 8F 03 8D 90 03 .byte $BD, $88, $F8, $18, $6D, $9F, $03, $8D, $A0, $03, $A5, $31, $6A, $29, $03, $85 ; CPU:$B006 PRG:3006 BD 88 F8 18 6D 9F 03 8D A0 03 A5 31 6A 29 03 85 .byte $20, $AD, $AF, $03, $29, $FC, $05, $20, $8D, $AF, $03, $8D, $B0, $03, $E6, $9C ; CPU:$B016 PRG:3016 20 AD AF 03 29 FC 05 20 8D AF 03 8D B0 03 E6 9C .byte $A5, $9C, $C9, $18, $D0, $0A, $A9, $00, $85, $9C, $C6, $B3, $D0, $02, $E6, $BA ; CPU:$B026 PRG:3026 A5 9C C9 18 D0 0A A9 00 85 9C C6 B3 D0 02 E6 BA .byte $60, $C9, $02, $D0, $6F, $A5, $AC, $8D, $5B, $06, $AA, $20, $52, $85, $A5, $3D ; CPU:$B036 PRG:3036 60 C9 02 D0 6F A5 AC 8D 5B 06 AA 20 52 85 A5 3D .byte $29, $03, $85, $BD, $E6, $BD, $A5, $BD, $9D, $EA, $05, $A0, $01, $84, $25, $AD ; CPU:$B046 PRG:3046 29 03 85 BD E6 BD A5 BD 9D EA 05 A0 01 84 25 AD .byte $5B, $06, $29, $10, $F0, $06, $98, $18, $69, $06, $85, $25, $A9, $01, $85, $21 ; CPU:$B056 PRG:3056 5B 06 29 10 F0 06 98 18 69 06 85 25 A9 01 85 21 .byte $A9, $06, $85, $1F, $A4, $25, $B9, $7A, $F8, $E6, $25, $18, $6D, $5B, $06, $AA ; CPU:$B066 PRG:3066 A9 06 85 1F A4 25 B9 7A F8 E6 25 18 6D 5B 06 AA .byte $29, $0F, $C9, $0D, $B0, $20, $8A, $29, $F0, $C9, $70, $B0, $19, $BD, $EA, $05 ; CPU:$B076 PRG:3076 29 0F C9 0D B0 20 8A 29 F0 C9 70 B0 19 BD EA 05 .byte $29, $07, $D0, $05, $9D, $EA, $05, $F0, $05, $A5, $BD, $9D, $EA, $05, $8A, $A6 ; CPU:$B086 PRG:3086 29 07 D0 05 9D EA 05 F0 05 A5 BD 9D EA 05 8A A6 .byte $21, $9D, $5B, $06, $E6, $21, $C6, $1F, $D0, $CA, $A6, $21, $A9, $FF, $9D, $5B ; CPU:$B096 PRG:3096 21 9D 5B 06 E6 21 C6 1F D0 CA A6 21 A9 FF 9D 5B .byte $06, $E6, $BA, $60, $C9, $03, $D0, $47, $A0, $00, $84, $22, $A4, $22, $B9, $5B ; CPU:$B0A6 PRG:30A6 06 E6 BA 60 C9 03 D0 47 A0 00 84 22 A4 22 B9 5B .byte $06, $30, $22, $85, $21, $20, $BF, $84, $A6, $21, $BD, $EA, $05, $85, $1B, $0A ; CPU:$B0B6 PRG:30B6 06 30 22 85 21 20 BF 84 A6 21 BD EA 05 85 1B 0A .byte $AA, $BD, $9E, $F2, $85, $17, $BD, $9F, $F2, $85, $18, $20, $8A, $85, $20, $E3 ; CPU:$B0C6 PRG:30C6 AA BD 9E F2 85 17 BD 9F F2 85 18 20 8A 85 20 E3 .byte $84, $E6, $22, $10, $D7, $A6, $36, $A9, $00, $9D, $00, $03, $A9, $00, $85, $11 ; CPU:$B0D6 PRG:30D6 84 E6 22 10 D7 A6 36 A9 00 9D 00 03 A9 00 85 11 .byte $A9, $07, $85, $12, $20, $5D, $85, $E6, $12, $20, $5D, $85, $E6, $BA, $60, $E6 ; CPU:$B0E6 PRG:30E6 A9 07 85 12 20 5D 85 E6 12 20 5D 85 E6 BA 60 E6 .byte $BA, $A5, $BA, $C9, $0F, $90, $0A, $A9, $00, $85, $BA, $85, $BF, $85, $BD, $E6 ; CPU:$B0F6 PRG:30F6 BA A5 BA C9 0F 90 0A A9 00 85 BA 85 BF 85 BD E6 .byte $B9, $60, $A5, $BA, $20, $73, $81, $21, $B1, $F2, $B5, $29, $B2, $21, $B4, $51 ; CPU:$B106 PRG:3106 B9 60 A5 BA 20 73 81 21 B1 F2 B5 29 B2 21 B4 51 .byte $B1, $0C, $B7, $E3, $B1, $E2, $B4, $4C, $B5, $7D, $B1, $A9, $00, $85, $B5, $A9 ; CPU:$B116 PRG:3116 B1 0C B7 E3 B1 E2 B4 4C B5 7D B1 A9 00 85 B5 A9 .byte $04, $85, $1E, $A5, $1E, $85, $20, $20, $37, $B3, $C6, $1E, $D0, $F5, $AD, $DF ; CPU:$B126 PRG:3126 04 85 1E A5 1E 85 20 20 37 B3 C6 1E D0 F5 AD DF .byte $06, $D0, $0D, $85, $BA, $E6, $B9, $A5, $C1, $C9, $03, $90, $02, $E6, $C1, $60 ; CPU:$B136 PRG:3136 06 D0 0D 85 BA E6 B9 A5 C1 C9 03 90 02 E6 C1 60 .byte $A9, $00, $85, $9C, $85, $B3, $85, $B6, $E6, $BA, $60, $E6, $BA, $20, $A9, $B1 ; CPU:$B146 PRG:3146 A9 00 85 9C 85 B3 85 B6 E6 BA 60 E6 BA 20 A9 B1 .byte $20, $C3, $B1, $A6, $BE, $30, $17, $BD, $EA, $05, $29, $40, $D0, $10, $A9, $00 ; CPU:$B156 PRG:3156 20 C3 B1 A6 BE 30 17 BD EA 05 29 40 D0 10 A9 00 .byte $8D, $59, $03, $A5, $71, $C9, $02, $F0, $04, $A9, $FF, $85, $BE, $60, $A5, $B5 ; CPU:$B166 PRG:3166 8D 59 03 A5 71 C9 02 F0 04 A9 FF 85 BE 60 A5 B5 .byte $D0, $02, $E6, $BA, $E6, $BA, $60, $A5, $31, $6A, $90, $01, $60, $A6, $37, $A9 ; CPU:$B176 PRG:3176 D0 02 E6 BA E6 BA 60 A5 31 6A 90 01 60 A6 37 A9 .byte $52, $9D, $38, $03, $A9, $23, $9D, $39, $03, $A9, $E0, $9D, $3A, $03, $A9, $F1 ; CPU:$B186 PRG:3186 52 9D 38 03 A9 23 9D 39 03 A9 E0 9D 3A 03 A9 F1 .byte $9D, $3B, $03, $A9, $00, $9D, $3C, $03, $8A, $18, $69, $04, $85, $37, $A9, $00 ; CPU:$B196 PRG:3196 9D 3B 03 A9 00 9D 3C 03 8A 18 69 04 85 37 A9 00 .byte $85, $BA, $60, $A2, $00, $A0, $00, $86, $24, $A6, $24, $BD, $A1, $06, $C9, $FF ; CPU:$B1A6 PRG:31A6 85 BA 60 A2 00 A0 00 86 24 A6 24 BD A1 06 C9 FF .byte $D0, $01, $60, $AA, $98, $9D, $EA, $05, $E6, $24, $D0, $ED, $60, $A0, $00, $A2 ; CPU:$B1B6 PRG:31B6 D0 01 60 AA 98 9D EA 05 E6 24 D0 ED 60 A0 00 A2 .byte $6E, $CA, $BD, $EA, $05, $F0, $07, $10, $0B, $8A, $99, $A1, $06, $C8, $CA, $10 ; CPU:$B1C6 PRG:31C6 6E CA BD EA 05 F0 07 10 0B 8A 99 A1 06 C8 CA 10 .byte $F1, $84, $B5, $60, $8A, $29, $F0, $AA, $D0, $E7, $84, $B5, $60, $A5, $31, $6A ; CPU:$B1D6 PRG:31D6 F1 84 B5 60 8A 29 F0 AA D0 E7 84 B5 60 A5 31 6A .byte $90, $01, $60, $A9, $A8, $85, $17, $A9, $F2, $85, $18, $A9, $0C, $85, $1F, $A0 ; CPU:$B1E6 PRG:31E6 90 01 60 A9 A8 85 17 A9 F2 85 18 A9 0C 85 1F A0 .byte $00, $C6, $B5, $10, $08, $E6, $BA, $A9, $00, $85, $B3, $F0, $1E, $A6, $B5, $BD ; CPU:$B1F6 PRG:31F6 00 C6 B5 10 08 E6 BA A9 00 85 B3 F0 1E A6 B5 BD .byte $A1, $06, $85, $24, $20, $BF, $84, $A5, $1A, $C9, $24, $F0, $0A, $A6, $24, $A9 ; CPU:$B206 PRG:3206 A1 06 85 24 20 BF 84 A5 1A C9 24 F0 0A A6 24 A9 .byte $00, $9D, $EA, $05, $20, $8A, $85, $C6, $1F, $10, $D6, $A6, $36, $A9, $00, $9D ; CPU:$B216 PRG:3216 00 9D EA 05 20 8A 85 C6 1F 10 D6 A6 36 A9 00 9D .byte $00, $03, $60, $A9, $01, $8D, $E3, $00, $A9, $01, $8D, $E2, $00, $A9, $04, $20 ; CPU:$B226 PRG:3226 00 03 60 A9 01 8D E3 00 A9 01 8D E2 00 A9 04 20 .byte $04, $80, $E6, $BA, $60, $A9, $FF, $85, $BE, $A5, $96, $F0, $07, $A9, $00, $85 ; CPU:$B236 PRG:3236 04 80 E6 BA 60 A9 FF 85 BE A5 96 F0 07 A9 00 85 .byte $6C, $85, $6A, $60, $20, $52, $85, $29, $06, $85, $20, $A5, $5D, $0A, $0A, $0A ; CPU:$B246 PRG:3246 6C 85 6A 60 20 52 85 29 06 85 20 A5 5D 0A 0A 0A .byte $18, $65, $20, $AA, $BD, $BD, $F8, $85, $AB, $BD, $BE, $F8, $85, $AC, $A9, $00 ; CPU:$B256 PRG:3256 18 65 20 AA BD BD F8 85 AB BD BE F8 85 AC A9 00 .byte $85, $B3, $85, $B5, $E6, $6C, $A9, $01, $85, $34, $A2, $00, $8A, $9D, $F9, $06 ; CPU:$B266 PRG:3266 85 B3 85 B5 E6 6C A9 01 85 34 A2 00 8A 9D F9 06 .byte $E8, $E0, $05, $90, $F7, $60, $A5, $31, $6A, $90, $01, $60, $A6, $B3, $A4, $B5 ; CPU:$B276 PRG:3276 E8 E0 05 90 F7 60 A5 31 6A 90 01 60 A6 B3 A4 B5 .byte $B1, $AB, $F0, $33, $9D, $EA, $05, $85, $1B, $8A, $20, $BF, $84, $A5, $1B, $10 ; CPU:$B286 PRG:3286 B1 AB F0 33 9D EA 05 85 1B 8A 20 BF 84 A5 1B 10 .byte $0E, $A9, $0D, $85, $17, $A9, $F3, $85, $18, $A9, $01, $85, $1B, $D0, $0C, $0A ; CPU:$B296 PRG:3296 0E A9 0D 85 17 A9 F3 85 18 A9 01 85 1B D0 0C 0A .byte $AA, $BD, $9E, $F2, $85, $17, $BD, $9F, $F2, $85, $18, $20, $8A, $85, $20, $E3 ; CPU:$B2A6 PRG:32A6 AA BD 9E F2 85 17 BD 9F F2 85 18 20 8A 85 20 E3 .byte $84, $E6, $B5, $E6, $B3, $10, $C5, $A6, $36, $A9, $00, $9D, $00, $03, $E6, $B5 ; CPU:$B2B6 PRG:32B6 84 E6 B5 E6 B3 10 C5 A6 36 A9 00 9D 00 03 E6 B5 .byte $A5, $B3, $29, $F0, $18, $69, $10, $85, $B3, $C9, $70, $90, $02, $E6, $6C, $60 ; CPU:$B2C6 PRG:32C6 A5 B3 29 F0 18 69 10 85 B3 C9 70 90 02 E6 6C 60 .byte $A5, $31, $6A, $90, $01, $60, $A5, $5D, $85, $B7, $A6, $5C, $86, $B8, $BD, $5A ; CPU:$B2D6 PRG:32D6 A5 31 6A 90 01 60 A5 5D 85 B7 A6 5C 86 B8 BD 5A .byte $D4, $85, $1B, $20, $78, $B7, $A6, $5D, $F0, $18, $86, $21, $20, $9B, $B7, $20 ; CPU:$B2E6 PRG:32E6 D4 85 1B 20 78 B7 A6 5D F0 18 86 21 20 9B B7 20 .byte $8A, $85, $20, $E3, $84, $C6, $21, $A6, $21, $D0, $F1, $A6, $36, $A9, $00, $9D ; CPU:$B2F6 PRG:32F6 8A 85 20 E3 84 C6 21 A6 21 D0 F1 A6 36 A9 00 9D .byte $00, $03, $A5, $5D, $18, $69, $07, $85, $11, $A9, $01, $85, $12, $20, $5D, $85 ; CPU:$B306 PRG:3306 00 03 A5 5D 18 69 07 85 11 A9 01 85 12 20 5D 85 .byte $A9, $B8, $8D, $89, $03, $A9, $1C, $8D, $99, $03, $A2, $30, $BD, $EA, $05, $09 ; CPU:$B316 PRG:3316 A9 B8 8D 89 03 A9 1C 8D 99 03 A2 30 BD EA 05 09 .byte $40, $9D, $EA, $05, $86, $BE, $A9, $00, $85, $6C, $85, $6A, $85, $B5, $E6, $B7 ; CPU:$B326 PRG:3326 40 9D EA 05 86 BE A9 00 85 6C 85 6A 85 B5 E6 B7 .byte $60, $A0, $00, $A2, $00, $BD, $EA, $05, $29, $87, $C5, $20, $F0, $04, $A9, $00 ; CPU:$B336 PRG:3336 60 A0 00 A2 00 BD EA 05 29 87 C5 20 F0 04 A9 00 .byte $F0, $07, $C8, $8A, $99, $5B, $06, $A5, $20, $9D, $71, $04, $E8, $E0, $70, $90 ; CPU:$B346 PRG:3346 F0 07 C8 8A 99 5B 06 A5 20 9D 71 04 E8 E0 70 90 .byte $E4, $C0, $00, $D0, $01, $60, $BE, $5B, $06, $BD, $71, $04, $F0, $18, $84, $25 ; CPU:$B356 PRG:3356 E4 C0 00 D0 01 60 BE 5B 06 BD 71 04 F0 18 84 25 .byte $A0, $00, $84, $21, $98, $9D, $71, $04, $8A, $99, $79, $06, $86, $20, $C8, $84 ; CPU:$B366 PRG:3366 A0 00 84 21 98 9D 71 04 8A 99 79 06 86 20 C8 84 .byte $B6, $20, $80, $B3, $A4, $25, $88, $D0, $DD, $60, $A0, $06, $84, $22, $A2, $00 ; CPU:$B376 PRG:3376 B6 20 80 B3 A4 25 88 D0 DD 60 A0 06 84 22 A2 00 .byte $86, $24, $A4, $22, $A5, $20, $29, $10, $F0, $05, $98, $18, $69, $06, $A8, $B9 ; CPU:$B386 PRG:3386 86 24 A4 22 A5 20 29 10 F0 05 98 18 69 06 A8 B9 .byte $7A, $F8, $18, $65, $20, $AA, $29, $0F, $C9, $0E, $B0, $16, $8A, $29, $F0, $C9 ; CPU:$B396 PRG:3396 7A F8 18 65 20 AA 29 0F C9 0E B0 16 8A 29 F0 C9 .byte $70, $B0, $0F, $BD, $71, $04, $F0, $0A, $86, $23, $E6, $24, $A6, $24, $E0, $02 ; CPU:$B3A6 PRG:33A6 70 B0 0F BD 71 04 F0 0A 86 23 E6 24 A6 24 E0 02 .byte $B0, $06, $C6, $22, $D0, $CC, $F0, $09, $E6, $21, $A6, $21, $A5, $20, $9D, $92 ; CPU:$B3B6 PRG:33B6 B0 06 C6 22 D0 CC F0 09 E6 21 A6 21 A5 20 9D 92 .byte $06, $A6, $24, $F0, $14, $A6, $23, $A9, $00, $9D, $71, $04, $A4, $B6, $8A, $99 ; CPU:$B3C6 PRG:33C6 06 A6 24 F0 14 A6 23 A9 00 9D 71 04 A4 B6 8A 99 .byte $79, $06, $86, $20, $E6, $B6, $4C, $80, $B3, $A6, $21, $F0, $0A, $BD, $92, $06 ; CPU:$B3D6 PRG:33D6 79 06 86 20 E6 B6 4C 80 B3 A6 21 F0 0A BD 92 06 .byte $C6, $21, $85, $20, $4C, $80, $B3, $A4, $B6, $C0, $04, $90, $29, $98, $18, $6D ; CPU:$B3E6 PRG:33E6 C6 21 85 20 4C 80 B3 A4 B6 C0 04 90 29 98 18 6D .byte $DE, $06, $8D, $DE, $06, $98, $38, $E9, $03, $0A, $0A, $18, $6D, $DF, $06, $8D ; CPU:$B3F6 PRG:33F6 DE 06 8D DE 06 98 38 E9 03 0A 0A 18 6D DF 06 8D .byte $DF, $06, $88, $A6, $B5, $B9, $79, $06, $9D, $A1, $06, $E8, $88, $10, $F6, $A9 ; CPU:$B406 PRG:3406 DF 06 88 A6 B5 B9 79 06 9D A1 06 E8 88 10 F6 A9 .byte $FF, $9D, $A1, $06, $86, $B5, $A9, $00, $85, $B6, $60, $A5, $31, $6A, $90, $01 ; CPU:$B416 PRG:3416 FF 9D A1 06 86 B5 A9 00 85 B6 60 A5 31 6A 90 01 .byte $60, $E6, $B3, $A5, $B3, $C9, $04, $90, $11, $A9, $00, $85, $B3, $85, $B6, $E6 ; CPU:$B426 PRG:3426 60 E6 B3 A5 B3 C9 04 90 11 A9 00 85 B3 85 B6 E6 .byte $9C, $A5, $9C, $C9, $08, $90, $03, $E6, $BA, $60, $A4, $B6, $B9, $A1, $06, $C9 ; CPU:$B436 PRG:3436 9C A5 9C C9 08 90 03 E6 BA 60 A4 B6 B9 A1 06 C9 .byte $FF, $D0, $01, $60, $A2, $00, $9D, $79, $06, $E8, $C8, $B9, $A1, $06, $C9, $FF ; CPU:$B446 PRG:3446 FF D0 01 60 A2 00 9D 79 06 E8 C8 B9 A1 06 C9 FF .byte $F0, $04, $E0, $0D, $90, $F0, $84, $B6, $86, $24, $86, $21, $A2, $00, $86, $36 ; CPU:$B456 PRG:3456 F0 04 E0 0D 90 F0 84 B6 86 24 86 21 A2 00 86 36 .byte $A6, $36, $BD, $79, $06, $20, $BF, $84, $A5, $36, $0A, $0A, $A8, $A5, $19, $99 ; CPU:$B466 PRG:3466 A6 36 BD 79 06 20 BF 84 A5 36 0A 0A A8 A5 19 99 .byte $00, $03, $A5, $1A, $99, $01, $03, $E6, $36, $C6, $24, $D0, $E3, $A9, $00, $99 ; CPU:$B476 PRG:3476 00 03 A5 1A 99 01 03 E6 36 C6 24 D0 E3 A9 00 99 .byte $04, $03, $A6, $9C, $BD, $A8, $D1, $C9, $03, $90, $04, $20, $BB, $B4, $60, $20 ; CPU:$B486 PRG:3486 04 03 A6 9C BD A8 D1 C9 03 90 04 20 BB B4 60 20 .byte $99, $B4, $60, $0A, $AA, $BD, $FB, $F2, $85, $19, $BD, $FC, $F2, $85, $1A, $A2 ; CPU:$B496 PRG:3496 99 B4 60 0A AA BD FB F2 85 19 BD FC F2 85 1A A2 .byte $00, $8A, $0A, $0A, $A8, $A5, $19, $99, $02, $03, $A5, $1A, $99, $03, $03, $E8 ; CPU:$B4A6 PRG:34A6 00 8A 0A 0A A8 A5 19 99 02 03 A5 1A 99 03 03 E8 .byte $C6, $21, $10, $ED, $60, $A2, $00, $BD, $79, $06, $86, $24, $A8, $B9, $EA, $05 ; CPU:$B4B6 PRG:34B6 C6 21 10 ED 60 A2 00 BD 79 06 86 24 A8 B9 EA 05 .byte $29, $07, $0A, $A8, $8A, $0A, $0A, $AA, $B9, $9E, $F2, $9D, $02, $03, $B9, $9F ; CPU:$B4C6 PRG:34C6 29 07 0A A8 8A 0A 0A AA B9 9E F2 9D 02 03 B9 9F .byte $F2, $9D, $03, $03, $A6, $24, $E8, $C6, $21, $10, $DC, $60, $A9, $00, $85, $22 ; CPU:$B4D6 PRG:34D6 F2 9D 03 03 A6 24 E8 C6 21 10 DC 60 A9 00 85 22 .byte $A9, $FF, $85, $24, $A5, $22, $0A, $0A, $0A, $0A, $AA, $A9, $0E, $85, $1F, $BD ; CPU:$B4E6 PRG:34E6 A9 FF 85 24 A5 22 0A 0A 0A 0A AA A9 0E 85 1F BD .byte $EA, $05, $D0, $30, $86, $B5, $8A, $A4, $22, $99, $79, $06, $E8, $BD, $EA, $05 ; CPU:$B4F6 PRG:34F6 EA 05 D0 30 86 B5 8A A4 22 99 79 06 E8 BD EA 05 .byte $F0, $10, $A4, $B5, $99, $EA, $05, $E6, $B5, $A9, $00, $9D, $EA, $05, $86, $24 ; CPU:$B506 PRG:3506 F0 10 A4 B5 99 EA 05 E6 B5 A9 00 9D EA 05 86 24 .byte $E6, $24, $E8, $C6, $1F, $D0, $E6, $A4, $22, $A5, $24, $99, $5B, $06, $A9, $FF ; CPU:$B516 PRG:3516 E6 24 E8 C6 1F D0 E6 A4 22 A5 24 99 5B 06 A9 FF .byte $85, $24, $30, $0C, $E8, $C6, $1F, $D0, $C6, $A4, $22, $A9, $FF, $99, $5B, $06 ; CPU:$B526 PRG:3526 85 24 30 0C E8 C6 1F D0 C6 A4 22 A9 FF 99 5B 06 .byte $E6, $22, $A5, $22, $C9, $07, $90, $AC, $A9, $00, $85, $B5, $E6, $BA, $A5, $BE ; CPU:$B536 PRG:3536 E6 22 A5 22 C9 07 90 AC A9 00 85 B5 E6 BA A5 BE .byte $30, $03, $20, $50, $B7, $60, $A5, $31, $6A, $90, $01, $60, $A9, $00, $85, $36 ; CPU:$B546 PRG:3546 30 03 20 50 B7 60 A5 31 6A 90 01 60 A9 00 85 36 .byte $A9, $08, $85, $1F, $A4, $B5, $B9, $5B, $06, $10, $12, $E6, $B5, $A4, $B5, $C0 ; CPU:$B556 PRG:3556 A9 08 85 1F A4 B5 B9 5B 06 10 12 E6 B5 A4 B5 C0 .byte $07, $90, $F3, $A9, $00, $A6, $36, $9D, $00, $03, $E6, $BA, $60, $85, $24, $B9 ; CPU:$B566 PRG:3566 07 90 F3 A9 00 A6 36 9D 00 03 E6 BA 60 85 24 B9 .byte $79, $06, $85, $25, $20, $BF, $84, $A6, $36, $A5, $19, $9D, $00, $03, $E8, $A5 ; CPU:$B576 PRG:3576 79 06 85 25 20 BF 84 A6 36 A5 19 9D 00 03 E8 A5 .byte $1A, $9D, $00, $03, $E8, $A5, $25, $29, $0F, $C9, $0B, $B0, $33, $A4, $25, $B9 ; CPU:$B586 PRG:3586 1A 9D 00 03 E8 A5 25 29 0F C9 0B B0 33 A4 25 B9 .byte $EA, $05, $29, $87, $85, $1B, $30, $13, $0A, $A8, $B9, $9E, $F2, $9D, $00, $03 ; CPU:$B596 PRG:3596 EA 05 29 87 85 1B 30 13 0A A8 B9 9E F2 9D 00 03 .byte $E8, $B9, $9F, $F2, $9D, $00, $03, $A9, $00, $F0, $0B, $A9, $0D, $9D, $00, $03 ; CPU:$B5A6 PRG:35A6 E8 B9 9F F2 9D 00 03 A9 00 F0 0B A9 0D 9D 00 03 .byte $E8, $A9, $F3, $9D, $00, $03, $E8, $86, $36, $A5, $1B, $F0, $03, $20, $E3, $84 ; CPU:$B5B6 PRG:35B6 E8 A9 F3 9D 00 03 E8 86 36 A5 1B F0 03 20 E3 84 .byte $C6, $1F, $F0, $17, $E6, $25, $A5, $25, $C5, $24, $B0, $8F, $A5, $19, $18, $69 ; CPU:$B5C6 PRG:35C6 C6 1F F0 17 E6 25 A5 25 C5 24 B0 8F A5 19 18 69 .byte $40, $85, $19, $90, $02, $E6, $1A, $A9, $00, $F0, $9C, $E6, $25, $A4, $B5, $A5 ; CPU:$B5D6 PRG:35D6 40 85 19 90 02 E6 1A A9 00 F0 9C E6 25 A4 B5 A5 .byte $25, $99, $79, $06, $A6, $36, $A9, $00, $9D, $00, $03, $60, $A5, $31, $6A, $90 ; CPU:$B5E6 PRG:35E6 25 99 79 06 A6 36 A9 00 9D 00 03 60 A5 31 6A 90 .byte $01, $60, $A9, $00, $85, $20, $AD, $DF, $06, $38, $E9, $0A, $90, $0A, $8D, $DF ; CPU:$B5F6 PRG:35F6 01 60 A9 00 85 20 AD DF 06 38 E9 0A 90 0A 8D DF .byte $06, $E6, $20, $AD, $DF, $06, $10, $F1, $AD, $DF, $06, $8D, $E3, $06, $A5, $20 ; CPU:$B606 PRG:3606 06 E6 20 AD DF 06 10 F1 AD DF 06 8D E3 06 A5 20 .byte $8D, $E2, $06, $A2, $02, $BD, $E1, $06, $C9, $0A, $90, $0B, $FE, $E0, $06, $18 ; CPU:$B616 PRG:3616 8D E2 06 A2 02 BD E1 06 C9 0A 90 0B FE E0 06 18 .byte $69, $06, $29, $0F, $9D, $E1, $06, $CA, $D0, $EB, $AD, $DE, $06, $AA, $18, $65 ; CPU:$B626 PRG:3626 69 06 29 0F 9D E1 06 CA D0 EB AD DE 06 AA 18 65 .byte $BB, $85, $BB, $8A, $18, $65, $BC, $85, $BC, $8A, $29, $0F, $18, $6D, $B9, $05 ; CPU:$B636 PRG:3636 BB 85 BB 8A 18 65 BC 85 BC 8A 29 0F 18 6D B9 05 .byte $8D, $B9, $05, $8A, $6A, $6A, $6A, $6A, $29, $0F, $18, $6D, $B8, $05, $8D, $B8 ; CPU:$B646 PRG:3646 8D B9 05 8A 6A 6A 6A 6A 29 0F 18 6D B8 05 8D B8 .byte $05, $A2, $03, $BD, $B6, $05, $C9, $0A, $90, $0B, $FE, $B5, $05, $18, $69, $06 ; CPU:$B656 PRG:3656 05 A2 03 BD B6 05 C9 0A 90 0B FE B5 05 18 69 06 .byte $29, $0F, $9D, $B6, $05, $CA, $D0, $EB, $A2, $02, $BD, $E1, $06, $18, $7D, $BC ; CPU:$B666 PRG:3666 29 0F 9D B6 05 CA D0 EB A2 02 BD E1 06 18 7D BC .byte $05, $9D, $BC, $05, $CA, $10, $F3, $A2, $04, $BD, $BA, $05, $C9, $0A, $90, $0B ; CPU:$B676 PRG:3676 05 9D BC 05 CA 10 F3 A2 04 BD BA 05 C9 0A 90 0B .byte $FE, $B9, $05, $18, $69, $06, $29, $0F, $9D, $BA, $05, $CA, $D0, $EB, $A9, $04 ; CPU:$B686 PRG:3686 FE B9 05 18 69 06 29 0F 9D BA 05 CA D0 EB A9 04 .byte $8D, $E5, $06, $8D, $EB, $06, $A9, $01, $8D, $E6, $06, $8D, $EC, $06, $A2, $00 ; CPU:$B696 PRG:3696 8D E5 06 8D EB 06 A9 01 8D E6 06 8D EC 06 A2 00 .byte $BD, $B6, $05, $A8, $B9, $D6, $F1, $9D, $E7, $06, $BD, $E1, $06, $A8, $B9, $D6 ; CPU:$B6A6 PRG:36A6 BD B6 05 A8 B9 D6 F1 9D E7 06 BD E1 06 A8 B9 D6 .byte $F1, $9D, $ED, $06, $E8, $E0, $04, $90, $E7, $A9, $06, $8D, $F1, $06, $A9, $01 ; CPU:$B6B6 PRG:36B6 F1 9D ED 06 E8 E0 04 90 E7 A9 06 8D F1 06 A9 01 .byte $8D, $F2, $06, $A2, $00, $BD, $BA, $05, $A8, $B9, $D6, $F1, $9D, $F3, $06, $E8 ; CPU:$B6C6 PRG:36C6 8D F2 06 A2 00 BD BA 05 A8 B9 D6 F1 9D F3 06 E8 .byte $E0, $06, $90, $F1, $A6, $37, $A0, $00, $B9, $00, $B7, $9D, $38, $03, $E8, $C8 ; CPU:$B6D6 PRG:36D6 E0 06 90 F1 A6 37 A0 00 B9 00 B7 9D 38 03 E8 C8 .byte $C0, $0C, $90, $F4, $86, $37, $A9, $00, $9D, $38, $03, $8D, $DE, $06, $8D, $DD ; CPU:$B6E6 PRG:36E6 C0 0C 90 F4 86 37 A9 00 9D 38 03 8D DE 06 8D DD .byte $06, $8D, $DF, $06, $8D, $E0, $06, $E6, $BA, $60, $32, $23, $E5, $06, $52, $23 ; CPU:$B6F6 PRG:36F6 06 8D DF 06 8D E0 06 E6 BA 60 32 23 E5 06 52 23 .byte $EB, $06, $3A, $23, $F1, $06, $A5, $31, $6A, $90, $01, $60, $A5, $71, $C9, $02 ; CPU:$B706 PRG:3706 EB 06 3A 23 F1 06 A5 31 6A 90 01 60 A5 71 C9 02 .byte $F0, $09, $A5, $B7, $C9, $05, $D0, $03, $20, $78, $B7, $A5, $B8, $29, $03, $AA ; CPU:$B716 PRG:3716 F0 09 A5 B7 C9 05 D0 03 20 78 B7 A5 B8 29 03 AA .byte $BD, $5A, $D4, $85, $1B, $A6, $B7, $20, $9B, $B7, $20, $8A, $85, $A9, $00, $9D ; CPU:$B726 PRG:3726 BD 5A D4 85 1B A6 B7 20 9B B7 20 8A 85 A9 00 9D .byte $00, $03, $20, $E3, $84, $A5, $71, $C9, $02, $F0, $06, $C6, $B7, $D0, $02, $E6 ; CPU:$B736 PRG:3736 00 03 20 E3 84 A5 71 C9 02 F0 06 C6 B7 D0 02 E6 .byte $B8, $A5, $B5, $D0, $02, $E6, $BA, $E6, $BA, $60, $A5, $BE, $AA, $29, $0F, $A8 ; CPU:$B746 PRG:3746 B8 A5 B5 D0 02 E6 BA E6 BA 60 A5 BE AA 29 0F A8 .byte $BD, $EA, $05, $29, $40, $D0, $05, $CA, $88, $10, $F5, $60, $8A, $C5, $BE, $F0 ; CPU:$B756 PRG:3756 BD EA 05 29 40 D0 05 CA 88 10 F5 60 8A C5 BE F0 .byte $10, $38, $E5, $BE, $0A, $0A, $0A, $0A, $18, $6D, $99, $03, $8D, $99, $03, $86 ; CPU:$B766 PRG:3766 10 38 E5 BE 0A 0A 0A 0A 18 6D 99 03 8D 99 03 86 .byte $BE, $60, $A0, $05, $A9, $23, $85, $1A, $A9, $56, $85, $19, $A9, $A8, $85, $17 ; CPU:$B776 PRG:3776 BE 60 A0 05 A9 23 85 1A A9 56 85 19 A9 A8 85 17 .byte $A9, $F2, $85, $18, $20, $8A, $85, $E6, $19, $E6, $19, $88, $D0, $F6, $98, $9D ; CPU:$B786 PRG:3786 A9 F2 85 18 20 8A 85 E6 19 E6 19 88 D0 F6 98 9D .byte $00, $03, $86, $36, $60, $A9, $23, $85, $1A, $A9, $56, $85, $19, $BD, $F8, $06 ; CPU:$B796 PRG:3796 00 03 86 36 60 A9 23 85 1A A9 56 85 19 BD F8 06 .byte $0A, $A8, $18, $65, $19, $85, $19, $98, $0A, $A8, $A6, $B8, $E8, $8A, $29, $02 ; CPU:$B7A6 PRG:37A6 0A A8 18 65 19 85 19 98 0A A8 A6 B8 E8 8A 29 02 .byte $D0, $05, $98, $18, $69, $14, $A8, $A9, $D1, $85, $17, $A9, $F2, $85, $18, $98 ; CPU:$B7B6 PRG:37B6 D0 05 98 18 69 14 A8 A9 D1 85 17 A9 F2 85 18 98 .byte $18, $65, $17, $85, $17, $90, $02, $E6, $18, $60, $A5, $C2, $D0, $11, $A6, $B8 ; CPU:$B7C6 PRG:37C6 18 65 17 85 17 90 02 E6 18 60 A5 C2 D0 11 A6 B8 .byte $CA, $30, $0C, $A5, $27, $A8, $C9, $84, $F0, $06, $98, $C9, $44, $F0, $01, $60 ; CPU:$B7D6 PRG:37D6 CA 30 0C A5 27 A8 C9 84 F0 06 98 C9 44 F0 01 60 .byte $A5, $BD, $F0, $09, $AD, $59, $03, $F0, $14, $A9, $00, $85, $BD, $A6, $BE, $30 ; CPU:$B7E6 PRG:37E6 A5 BD F0 09 AD 59 03 F0 14 A9 00 85 BD A6 BE 30 .byte $0C, $BD, $EA, $05, $29, $BF, $9D, $EA, $05, $A9, $FF, $85, $BE, $A9, $01, $85 ; CPU:$B7F6 PRG:37F6 0C BD EA 05 29 BF 9D EA 05 A9 FF 85 BE A9 01 85 .byte $C2, $A9, $00, $85, $C1, $A9, $06, $85, $11, $A9, $01, $85, $12, $20, $5D, $85 ; CPU:$B806 PRG:3806 C2 A9 00 85 C1 A9 06 85 11 A9 01 85 12 20 5D 85 .byte $A9, $B0, $8D, $89, $03, $A9, $98, $8D, $99, $03, $60, $A5, $31, $6A, $90, $01 ; CPU:$B816 PRG:3816 A9 B0 8D 89 03 A9 98 8D 99 03 60 A5 31 6A 90 01 .byte $60, $A5, $C1, $20, $73, $81, $3A, $B8, $5C, $B8, $F5, $B8, $08, $B1, $59, $B9 ; CPU:$B826 PRG:3826 60 A5 C1 20 73 81 3A B8 5C B8 F5 B8 08 B1 59 B9 .byte $08, $B1, $BA, $B9, $A9, $03, $20, $04, $80, $A9, $01, $8D, $DD, $00, $A9, $06 ; CPU:$B836 PRG:3836 08 B1 BA B9 A9 03 20 04 80 A9 01 8D DD 00 A9 06 .byte $8D, $DE, $00, $A9, $05, $20, $04, $80, $A9, $00, $8D, $DD, $00, $E6, $C1, $A9 ; CPU:$B846 PRG:3846 8D DE 00 A9 05 20 04 80 A9 00 8D DD 00 E6 C1 A9 .byte $F0, $85, $B3, $60, $A1, $06, $C6, $B3, $D0, $0A, $20, $99, $B8, $E6, $C1, $A9 ; CPU:$B856 PRG:3856 F0 85 B3 60 A1 06 C6 B3 D0 0A 20 99 B8 E6 C1 A9 .byte $00, $85, $B3, $60, $A5, $31, $29, $04, $F0, $03, $4C, $99, $B8, $A9, $23, $85 ; CPU:$B866 PRG:3866 00 85 B3 60 A5 31 29 04 F0 03 4C 99 B8 A9 23 85 .byte $1A, $A9, $C4, $85, $19, $A9, $B7, $85, $17, $A9, $F8, $85, $18, $20, $A7, $85 ; CPU:$B876 PRG:3876 1A A9 C4 85 19 A9 B7 85 17 A9 F8 85 18 20 A7 85 .byte $A5, $19, $18, $69, $08, $85, $19, $C9, $F0, $90, $F2, $A6, $37, $A9, $00, $9D ; CPU:$B886 PRG:3886 A5 19 18 69 08 85 19 C9 F0 90 F2 A6 37 A9 00 9D .byte $38, $03, $60, $AD, $5A, $B8, $85, $17, $AD, $5B, $B8, $85, $18, $A9, $23, $85 ; CPU:$B896 PRG:3896 38 03 60 AD 5A B8 85 17 AD 5B B8 85 18 A9 23 85 .byte $1A, $A9, $C4, $85, $19, $A9, $04, $85, $21, $A0, $00, $A9, $04, $99, $A1, $06 ; CPU:$B8A6 PRG:38A6 1A A9 C4 85 19 A9 04 85 21 A0 00 A9 04 99 A1 06 .byte $A9, $01, $C8, $99, $A1, $06, $C8, $A9, $04, $85, $1F, $A6, $21, $BD, $E2, $04 ; CPU:$B8B6 PRG:38B6 A9 01 C8 99 A1 06 C8 A9 04 85 1F A6 21 BD E2 04 .byte $99, $A1, $06, $C8, $E8, $C6, $1F, $D0, $F4, $20, $A7, $85, $A5, $17, $18, $69 ; CPU:$B8C6 PRG:38C6 99 A1 06 C8 E8 C6 1F D0 F4 20 A7 85 A5 17 18 69 .byte $06, $85, $17, $90, $02, $E6, $18, $A5, $21, $18, $69, $08, $85, $21, $18, $69 ; CPU:$B8D6 PRG:38D6 06 85 17 90 02 E6 18 A5 21 18 69 08 85 21 18 69 .byte $C0, $85, $19, $C9, $F0, $90, $C4, $A6, $37, $A9, $00, $9D, $38, $03, $60, $A5 ; CPU:$B8E6 PRG:38E6 C0 85 19 C9 F0 90 C4 A6 37 A9 00 9D 38 03 60 A5 .byte $B3, $AA, $A8, $BD, $EA, $05, $30, $04, $99, $EA, $05, $C8, $E8, $BD, $EA, $05 ; CPU:$B8F6 PRG:38F6 B3 AA A8 BD EA 05 30 04 99 EA 05 C8 E8 BD EA 05 .byte $D0, $F4, $86, $21, $A9, $00, $99, $EA, $05, $C8, $C4, $21, $90, $F8, $A6, $B3 ; CPU:$B906 PRG:3906 D0 F4 86 21 A9 00 99 EA 05 C8 C4 21 90 F8 A6 B3 .byte $86, $24, $A6, $24, $BD, $EA, $05, $29, $07, $85, $1B, $0A, $AA, $BD, $9E, $F2 ; CPU:$B916 PRG:3916 86 24 A6 24 BD EA 05 29 07 85 1B 0A AA BD 9E F2 .byte $85, $17, $BD, $9F, $F2, $85, $18, $A5, $24, $20, $BF, $84, $20, $8A, $85, $20 ; CPU:$B926 PRG:3926 85 17 BD 9F F2 85 18 A5 24 20 BF 84 20 8A 85 20 .byte $E3, $84, $E6, $24, $A6, $24, $E4, $21, $90, $DA, $A6, $36, $A9, $00, $9D, $00 ; CPU:$B936 PRG:3936 E3 84 E6 24 A6 24 E4 21 90 DA A6 36 A9 00 9D 00 .byte $03, $A5, $B3, $18, $69, $10, $85, $B3, $C9, $70, $90, $06, $E6, $C1, $A9, $00 ; CPU:$B946 PRG:3946 03 A5 B3 18 69 10 85 B3 C9 70 90 06 E6 C1 A9 00 .byte $85, $BA, $60, $A9, $08, $85, $1F, $20, $52, $85, $A5, $3D, $2A, $2A, $29, $7F ; CPU:$B956 PRG:3956 85 BA 60 A9 08 85 1F 20 52 85 A5 3D 2A 2A 29 7F .byte $C9, $70, $B0, $30, $AA, $BD, $EA, $05, $29, $07, $F0, $28, $86, $21, $20, $52 ; CPU:$B966 PRG:3966 C9 70 B0 30 AA BD EA 05 29 07 F0 28 86 21 20 52 .byte $85, $A5, $3D, $29, $03, $A8, $C8, $84, $1B, $98, $9D, $EA, $05, $0A, $AA, $BD ; CPU:$B976 PRG:3976 85 A5 3D 29 03 A8 C8 84 1B 98 9D EA 05 0A AA BD .byte $9E, $F2, $85, $17, $BD, $9F, $F2, $85, $18, $A5, $21, $20, $BF, $84, $20, $8A ; CPU:$B986 PRG:3986 9E F2 85 17 BD 9F F2 85 18 A5 21 20 BF 84 20 8A .byte $85, $20, $E3, $84, $C6, $1F, $D0, $BF, $A6, $36, $A9, $00, $9D, $00, $03, $CE ; CPU:$B996 PRG:3996 85 20 E3 84 C6 1F D0 BF A6 36 A9 00 9D 00 03 CE .byte $99, $03, $CE, $99, $03, $AD, $99, $03, $C9, $F8, $90, $07, $E6, $C1, $A9, $00 ; CPU:$B9A6 PRG:39A6 99 03 CE 99 03 AD 99 03 C9 F8 90 07 E6 C1 A9 00 .byte $8D, $59, $03, $60, $A9, $00, $85, $C2, $85, $C1, $A9, $03, $20, $04, $80, $A9 ; CPU:$B9B6 PRG:39B6 8D 59 03 60 A9 00 85 C2 85 C1 A9 03 20 04 80 A9 .byte $01, $8D, $DD, $00, $AD, $73, $00, $8D, $DE, $00, $A9, $05, $20, $04, $80, $A9 ; CPU:$B9C6 PRG:39C6 01 8D DD 00 AD 73 00 8D DE 00 A9 05 20 04 80 A9 .byte $00, $8D, $DD, $00, $C6, $B8, $D0, $0B, $A5, $B7, $D0, $07, $20, $78, $B7, $A9 ; CPU:$B9D6 PRG:39D6 00 8D DD 00 C6 B8 D0 0B A5 B7 D0 07 20 78 B7 A9 .byte $00, $F0, $2A, $A5, $B8, $29, $03, $AA, $A5, $B7, $D0, $03, $CA, $C6, $B8, $BD ; CPU:$B9E6 PRG:39E6 00 F0 2A A5 B8 29 03 AA A5 B7 D0 03 CA C6 B8 BD .byte $5A, $D4, $85, $1B, $A9, $05, $85, $21, $A5, $B7, $C5, $21, $B0, $0F, $A6, $21 ; CPU:$B9F6 PRG:39F6 5A D4 85 1B A9 05 85 21 A5 B7 C5 21 B0 0F A6 21 .byte $20, $9B, $B7, $20, $8A, $85, $20, $E3, $84, $C6, $21, $D0, $EB, $A6, $36, $A9 ; CPU:$BA06 PRG:3A06 20 9B B7 20 8A 85 20 E3 84 C6 21 D0 EB A6 36 A9 .byte $00, $9D, $00, $03, $A5, $B7, $D0, $02, $E6, $B8, $60, $A5, $BA, $20, $73, $81 ; CPU:$BA16 PRG:3A16 00 9D 00 03 A5 B7 D0 02 E6 B8 60 A5 BA 20 73 81 .byte $30, $BA, $4C, $BA, $5C, $BA, $8C, $BA, $E6, $BA, $A9, $FF, $85, $BE, $A5, $5C ; CPU:$BA26 PRG:3A26 30 BA 4C BA 5C BA 8C BA E6 BA A9 FF 85 BE A5 5C .byte $0A, $AA, $BD, $5C, $F4, $85, $3B, $BD, $5D, $F4, $85, $3C, $A6, $5D, $BD, $75 ; CPU:$BA36 PRG:3A36 0A AA BD 5C F4 85 3B BD 5D F4 85 3C A6 5D BD 75 .byte $F8, $85, $CB, $E6, $BA, $60, $A5, $71, $C9, $02, $F0, $07, $A9, $00, $85, $BA ; CPU:$BA46 PRG:3A46 F8 85 CB E6 BA 60 A5 71 C9 02 F0 07 A9 00 85 BA .byte $85, $B9, $60, $E6, $BA, $60, $20, $52, $85, $29, $06, $85, $20, $A5, $5D, $0A ; CPU:$BA56 PRG:3A56 85 B9 60 E6 BA 60 20 52 85 29 06 85 20 A5 5D 0A .byte $0A, $0A, $18, $65, $20, $AA, $BD, $BD, $F8, $85, $AB, $BD, $BE, $F8, $85, $AC ; CPU:$BA66 PRG:3A66 0A 0A 18 65 20 AA BD BD F8 85 AB BD BE F8 85 AC .byte $A9, $00, $85, $B3, $85, $B5, $E6, $BA, $A9, $01, $85, $34, $8A, $9D, $F9, $06 ; CPU:$BA76 PRG:3A76 A9 00 85 B3 85 B5 E6 BA A9 01 85 34 8A 9D F9 06 .byte $E8, $E0, $05, $90, $F7, $60, $A5, $31, $6A, $90, $01, $60, $A6, $B3, $A4, $B5 ; CPU:$BA86 PRG:3A86 E8 E0 05 90 F7 60 A5 31 6A 90 01 60 A6 B3 A4 B5 .byte $B1, $AB, $F0, $33, $9D, $EA, $05, $85, $1B, $8A, $20, $BF, $84, $A5, $1B, $10 ; CPU:$BA96 PRG:3A96 B1 AB F0 33 9D EA 05 85 1B 8A 20 BF 84 A5 1B 10 .byte $0E, $A9, $0D, $85, $17, $A9, $F3, $85, $18, $A9, $01, $85, $1B, $D0, $0C, $0A ; CPU:$BAA6 PRG:3AA6 0E A9 0D 85 17 A9 F3 85 18 A9 01 85 1B D0 0C 0A .byte $AA, $BD, $9E, $F2, $85, $17, $BD, $9F, $F2, $85, $18, $20, $8A, $85, $20, $E3 ; CPU:$BAB6 PRG:3AB6 AA BD 9E F2 85 17 BD 9F F2 85 18 20 8A 85 20 E3 .byte $84, $E6, $B5, $E6, $B3, $10, $C5, $A6, $36, $A9, $00, $9D, $00, $03, $E6, $B5 ; CPU:$BAC6 PRG:3AC6 84 E6 B5 E6 B3 10 C5 A6 36 A9 00 9D 00 03 E6 B5 .byte $A5, $B3, $29, $F0, $18, $69, $10, $85, $B3, $C9, $70, $90, $02, $E6, $BA, $60 ; CPU:$BAD6 PRG:3AD6 A5 B3 29 F0 18 69 10 85 B3 C9 70 90 02 E6 BA 60 .byte $A5, $31, $6A, $90, $01, $60, $A5, $5D, $85, $B7, $A6, $5C, $86, $B8, $BD, $5A ; CPU:$BAE6 PRG:3AE6 A5 31 6A 90 01 60 A5 5D 85 B7 A6 5C 86 B8 BD 5A .byte $D4, $85, $1B, $20, $78, $B7, $A6, $5D, $F0, $18, $86, $21, $20, $9B, $B7, $20 ; CPU:$BAF6 PRG:3AF6 D4 85 1B 20 78 B7 A6 5D F0 18 86 21 20 9B B7 20 .byte $8A, $85, $20, $E3, $84, $C6, $21, $A6, $21, $D0, $F1, $A6, $36, $A9, $00, $9D ; CPU:$BB06 PRG:3B06 8A 85 20 E3 84 C6 21 A6 21 D0 F1 A6 36 A9 00 9D .byte $00, $03, $20, $36, $BB, $A2, $30, $BD, $EA, $05, $09, $40, $9D, $EA, $05, $86 ; CPU:$BB16 PRG:3B16 00 03 20 36 BB A2 30 BD EA 05 09 40 9D EA 05 86 .byte $BE, $E6, $6C, $E6, $B7, $A9, $00, $85, $BA, $85, $B5, $A9, $00, $85, $B9, $60 ; CPU:$BB26 PRG:3B26 BE E6 6C E6 B7 A9 00 85 BA 85 B5 A9 00 85 B9 60 .byte $A5, $5D, $18, $69, $07, $85, $11, $A9, $01, $85, $12, $20, $5D, $85, $A9, $B8 ; CPU:$BB36 PRG:3B36 A5 5D 18 69 07 85 11 A9 01 85 12 20 5D 85 A9 B8 .byte $8D, $89, $03, $A9, $1C, $8D, $99, $03, $60 ; CPU:$BB46 PRG:3B46 8D 89 03 A9 1C 8D 99 03 60 ; ----------------------------------------------------------------------------- ; Routine: ClearActorSlots ; Global: Empties the actor slots. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearActorSlots: lda #$00 ; CPU:$BB4F PRG:3B4F A9 00 tax ; CPU:$BB51 PRG:3B51 AA ; ----------------------------------------------------------------------------- ; Routine: ClearActorSlots_OnCarryClear ; Global: Branch target inside ClearActorSlots: taken when the addition or subtraction did not carry. ; Local: Part of ClearActorSlots. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearActorSlots_OnCarryClear: sta ZpB7,x ; CPU:$BB52 PRG:3B52 95 B7 inx ; CPU:$BB54 PRG:3B54 E8 cpx #$0C ; CPU:$BB55 PRG:3B55 E0 0C bcc ClearActorSlots_OnCarryClear ; CPU:$BB57 PRG:3B57 90 F9 ldx #$00 ; CPU:$BB59 PRG:3B59 A2 00 ; ----------------------------------------------------------------------------- ; Routine: ClearActorTable ; Global: Empties the actor table in RAM. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearActorTable: sta $05EA,x ; CPU:$BB5B PRG:3B5B 9D EA 05 inx ; CPU:$BB5E PRG:3B5E E8 cpx #$70 ; CPU:$BB5F PRG:3B5F E0 70 bcc ClearActorTable ; CPU:$BB61 PRG:3B61 90 F8 lda #$FF ; CPU:$BB63 PRG:3B63 A9 FF sta ZpBE ; CPU:$BB65 PRG:3B65 85 BE rts ; CPU:$BB67 PRG:3B67 60 ; ----------------------------------------------------------------------------- ; Routine: SoundTimerTick ; Global: Counts the sound effect timer down. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SoundTimerTick: lda FrameCounter ; CPU:$BB68 PRG:3B68 A5 31 ror a ; CPU:$BB6A PRG:3B6A 6A bcs SoundTimerTick_Loop ; CPU:$BB6B PRG:3B6B B0 01 rts ; CPU:$BB6D PRG:3B6D 60 ; ----------------------------------------------------------------------------- ; Routine: SoundTimerTick_Loop ; Global: Branch target inside SoundTimerTick: taken when the loop repeats. ; Local: Part of SoundTimerTick. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SoundTimerTick_Loop: and #$1F ; CPU:$BB6E PRG:3B6E 29 1F bne SoundTimerTick_Loop2 ; CPU:$BB70 PRG:3B70 D0 0B lda a:$00D4 ; CPU:$BB72 PRG:3B72 AD D4 00 eor Zp33 ; CPU:$BB75 PRG:3B75 45 33 sta a:$00D4 ; CPU:$BB77 PRG:3B77 8D D4 00 jmp PlaySoundEffect ; CPU:$BB7A PRG:3B7A 4C 7E BB ; ----------------------------------------------------------------------------- ; Routine: SoundTimerTick_Loop2 ; Global: Branch target inside SoundTimerTick: taken when Loop2. ; Local: Part of SoundTimerTick. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SoundTimerTick_Loop2: rts ; CPU:$BB7D PRG:3B7D 60 ; ----------------------------------------------------------------------------- ; Routine: PlaySoundEffect ; Global: Starts a sound effect from the sound table. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- PlaySoundEffect: lda #$00 ; CPU:$BB7E PRG:3B7E A9 00 asl a ; CPU:$BB80 PRG:3B80 0A tax ; CPU:$BB81 PRG:3B81 AA lda a:$00D4 ; CPU:$BB82 PRG:3B82 AD D4 00 beq LoadActorTemplate ; CPU:$BB85 PRG:3B85 F0 0D lda $BBDE,x ; CPU:$BB87 PRG:3B87 BD DE BB sta Zp19 ; CPU:$BB8A PRG:3B8A 85 19 lda $BBDF,x ; CPU:$BB8C PRG:3B8C BD DF BB sta Zp1A ; CPU:$BB8F PRG:3B8F 85 1A jmp CopyActorToSpriteTable ; CPU:$BB91 PRG:3B91 4C 9E BB ; ----------------------------------------------------------------------------- ; Routine: LoadActorTemplate ; Global: Copies an actor template out of the table. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- LoadActorTemplate: lda $BBC2,x ; CPU:$BB94 PRG:3B94 BD C2 BB sta Zp19 ; CPU:$BB97 PRG:3B97 85 19 lda $BBC3,x ; CPU:$BB99 PRG:3B99 BD C3 BB sta Zp1A ; CPU:$BB9C PRG:3B9C 85 1A ; ----------------------------------------------------------------------------- ; Routine: CopyActorToSpriteTable ; Global: Copies an actor into the sprite table. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CopyActorToSpriteTable: ldy #$00 ; CPU:$BB9E PRG:3B9E A0 00 ldx Zp37 ; CPU:$BBA0 PRG:3BA0 A6 37 lda #$04 ; CPU:$BBA2 PRG:3BA2 A9 04 sta Zp1F ; CPU:$BBA4 PRG:3BA4 85 1F ; ----------------------------------------------------------------------------- ; Routine: CopyActorToSpriteTable_OnNonzero ; Global: Branch target inside CopyActorToSpriteTable: taken when the tested value is not zero. ; Local: Part of CopyActorToSpriteTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CopyActorToSpriteTable_OnNonzero: lda (Zp19),y ; CPU:$BBA6 PRG:3BA6 B1 19 sta $0338,x ; CPU:$BBA8 PRG:3BA8 9D 38 03 inx ; CPU:$BBAB PRG:3BAB E8 iny ; CPU:$BBAC PRG:3BAC C8 dec Zp1F ; CPU:$BBAD PRG:3BAD C6 1F bne CopyActorToSpriteTable_OnNonzero ; CPU:$BBAF PRG:3BAF D0 F5 lda Zp6F ; CPU:$BBB1 PRG:3BB1 A5 6F beq CopyActorToSpriteTable_Loop; CPU:$BBB3 PRG:3BB3 F0 05 lda #$45 ; CPU:$BBB5 PRG:3BB5 A9 45 sta $0334,x ; CPU:$BBB7 PRG:3BB7 9D 34 03 ; ----------------------------------------------------------------------------- ; Routine: CopyActorToSpriteTable_Loop ; Global: Branch target inside CopyActorToSpriteTable: taken when the loop repeats. ; Local: Part of CopyActorToSpriteTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CopyActorToSpriteTable_Loop: lda #$00 ; CPU:$BBBA PRG:3BBA A9 00 sta $0338,x ; CPU:$BBBC PRG:3BBC 9D 38 03 stx Zp37 ; CPU:$BBBF PRG:3BBF 86 37 rts ; CPU:$BBC1 PRG:3BC1 60 ; ---- data $BBC2-$BBF9 (56 bytes) ---- ; referenced by `lda $BBDE,x` at $BB87 (operand $BBDE falls inside this region) ; referenced by `lda $BBDF,x` at $BB8C (operand $BBDF falls inside this region) ; referenced by `lda $BBC2,x` at $BB94 (operand $BBC2 falls inside this region) ; referenced by `lda $BBC3,x` at $BB99 (operand $BBC3 falls inside this region) .byte $C4, $BB, $24, $23, $C8, $BB, $05, $04, $23, $25, $26, $29, $61, $2B, $93, $2D ; CPU:$BBC2 PRG:3BC2 C4 BB 24 23 C8 BB 05 04 23 25 26 29 61 2B 93 2D .byte $3D, $74, $8D, $8E, $8F, $91, $7B, $C1, $3E, $2A, $97, $96, $E0, $BB, $24, $23 ; CPU:$BBD2 PRG:3BD2 3D 74 8D 8E 8F 91 7B C1 3E 2A 97 96 E0 BB 24 23 .byte $E4, $BB, $05, $04, $C9, $CA, $FF, $CC, $61, $C8, $C7, $C6, $C5, $74, $FF, $C3 ; CPU:$BBE2 PRG:3BE2 E4 BB 05 04 C9 CA FF CC 61 C8 C7 C6 C5 74 FF C3 .byte $C4, $7A, $7B, $C1, $9F, $98, $97, $96 ; CPU:$BBF2 PRG:3BF2 C4 7A 7B C1 9F 98 97 96 ; ----------------------------------------------------------------------------- ; Routine: UpdatePlayerState ; Global: Updates the player state for the current frame. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdatePlayerState: lda Zp56 ; CPU:$BBFA PRG:3BFA A5 56 beq HandleDemoMode ; CPU:$BBFC PRG:3BFC F0 1E lda Zp3F ; CPU:$BBFE PRG:3BFE A5 3F and #$01 ; CPU:$BC00 PRG:3C00 29 01 beq UpdatePlayerState_Loop ; CPU:$BC02 PRG:3C02 F0 05 inc Zp49 ; CPU:$BC04 PRG:3C04 E6 49 jmp Sub_BC11 ; CPU:$BC06 PRG:3C06 4C 11 BC ; ----------------------------------------------------------------------------- ; Routine: UpdatePlayerState_Loop ; Global: Branch target inside UpdatePlayerState: taken when the loop repeats. ; Local: Part of UpdatePlayerState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdatePlayerState_Loop: lda Zp3F ; CPU:$BC09 PRG:3C09 A5 3F and #$02 ; CPU:$BC0B PRG:3C0B 29 02 beq UpdatePlayerState_Loop2 ; CPU:$BC0D PRG:3C0D F0 0A dec Zp49 ; CPU:$BC0F PRG:3C0F C6 49 ; ----------------------------------------------------------------------------- ; Routine: Sub_BC11 ; Global: Branch target inside Sub: taken when BC11. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_BC11: dec Zp56 ; CPU:$BC11 PRG:3C11 C6 56 bne UpdatePlayerState_Loop2 ; CPU:$BC13 PRG:3C13 D0 04 lda #$00 ; CPU:$BC15 PRG:3C15 A9 00 sta Zp3F ; CPU:$BC17 PRG:3C17 85 3F ; ----------------------------------------------------------------------------- ; Routine: UpdatePlayerState_Loop2 ; Global: Branch target inside UpdatePlayerState: taken when Loop2. ; Local: Part of UpdatePlayerState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdatePlayerState_Loop2: jmp ApplyPlayerDirection ; CPU:$BC19 PRG:3C19 4C 26 BD ; ----------------------------------------------------------------------------- ; Routine: HandleDemoMode ; Global: Runs the attract mode when no credit is left. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- HandleDemoMode: lda $05E5 ; CPU:$BC1C PRG:3C1C AD E5 05 beq HandlePlayerInput ; CPU:$BC1F PRG:3C1F F0 17 ldx $05E2 ; CPU:$BC21 PRG:3C21 AE E2 05 lda $BE05,x ; CPU:$BC24 PRG:3C24 BD 05 BE cmp Zp4D ; CPU:$BC27 PRG:3C27 C5 4D bne HandlePlayerInput ; CPU:$BC29 PRG:3C29 D0 0D lda $BE06,x ; CPU:$BC2B PRG:3C2B BD 06 BE sta ButtonState1 ; CPU:$BC2E PRG:3C2E 85 26 sta NewButton1 ; CPU:$BC30 PRG:3C30 85 2A inc $05E2 ; CPU:$BC32 PRG:3C32 EE E2 05 inc $05E2 ; CPU:$BC35 PRG:3C35 EE E2 05 ; ----------------------------------------------------------------------------- ; Routine: HandlePlayerInput ; Global: Turns the button bits into the player's actions. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- HandlePlayerInput: lda ButtonState1 ; CPU:$BC38 PRG:3C38 A5 26 and #$08 ; CPU:$BC3A PRG:3C3A 29 08 bne CountPlayerFrames ; CPU:$BC3C PRG:3C3C D0 06 lda #$00 ; CPU:$BC3E PRG:3C3E A9 00 sta ZpCE ; CPU:$BC40 PRG:3C40 85 CE beq CountPlayerFrames_Loop2 ; CPU:$BC42 PRG:3C42 F0 16 ; ----------------------------------------------------------------------------- ; Routine: CountPlayerFrames ; Global: Counts the frames the player state has been in. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CountPlayerFrames: inc ZpCE ; CPU:$BC44 PRG:3C44 E6 CE lda ZpCE ; CPU:$BC46 PRG:3C46 A5 CE cmp #$08 ; CPU:$BC48 PRG:3C48 C9 08 bcc CountPlayerFrames_Loop ; CPU:$BC4A PRG:3C4A 90 0A lda #$00 ; CPU:$BC4C PRG:3C4C A9 00 sta ZpCE ; CPU:$BC4E PRG:3C4E 85 CE inc $05A4 ; CPU:$BC50 PRG:3C50 EE A4 05 inc $05A4 ; CPU:$BC53 PRG:3C53 EE A4 05 ; ----------------------------------------------------------------------------- ; Routine: CountPlayerFrames_Loop ; Global: Branch target inside CountPlayerFrames: taken when the loop repeats. ; Local: Part of CountPlayerFrames. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CountPlayerFrames_Loop: lda #$00 ; CPU:$BC56 PRG:3C56 A9 00 sta ZpCF ; CPU:$BC58 PRG:3C58 85 CF ; ----------------------------------------------------------------------------- ; Routine: CountPlayerFrames_Loop2 ; Global: Branch target inside CountPlayerFrames: taken when Loop2. ; Local: Part of CountPlayerFrames. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CountPlayerFrames_Loop2: lda ZpCF ; CPU:$BC5A PRG:3C5A A5 CF bne CountPlayerFrames_Loop3 ; CPU:$BC5C PRG:3C5C D0 0A lda Zp35 ; CPU:$BC5E PRG:3C5E A5 35 sta ZpCF ; CPU:$BC60 PRG:3C60 85 CF dec Zp40 ; CPU:$BC62 PRG:3C62 C6 40 dec Zp4A ; CPU:$BC64 PRG:3C64 C6 4A dec Zp4A ; CPU:$BC66 PRG:3C66 C6 4A ; ----------------------------------------------------------------------------- ; Routine: CountPlayerFrames_Loop3 ; Global: Branch target inside CountPlayerFrames: taken when Loop3. ; Local: Part of CountPlayerFrames. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CountPlayerFrames_Loop3: dec ZpCF ; CPU:$BC68 PRG:3C68 C6 CF lda Zp40 ; CPU:$BC6A PRG:3C6A A5 40 bne CountPlayerFrames_Loop4 ; CPU:$BC6C PRG:3C6C D0 16 lda #$08 ; CPU:$BC6E PRG:3C6E A9 08 sta Zp40 ; CPU:$BC70 PRG:3C70 85 40 lda Zp4D ; CPU:$BC72 PRG:3C72 A5 4D sta Zp20 ; CPU:$BC74 PRG:3C74 85 20 dec Zp20 ; CPU:$BC76 PRG:3C76 C6 20 lda Zp48 ; CPU:$BC78 PRG:3C78 A5 48 sta Zp23 ; CPU:$BC7A PRG:3C7A 85 23 jsr ComputePlayerPosition ; CPU:$BC7C PRG:3C7C 20 70 BD beq CountPlayerFrames_Loop4 ; CPU:$BC7F PRG:3C7F F0 03 inc Zp60 ; CPU:$BC81 PRG:3C81 E6 60 rts ; CPU:$BC83 PRG:3C83 60 ; ----------------------------------------------------------------------------- ; Routine: CountPlayerFrames_Loop4 ; Global: Branch target inside CountPlayerFrames: taken when Loop4. ; Local: Part of CountPlayerFrames. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CountPlayerFrames_Loop4: lda ButtonState1 ; CPU:$BC84 PRG:3C84 A5 26 and #$03 ; CPU:$BC86 PRG:3C86 29 03 bne CountPlayerFrames_Loop5 ; CPU:$BC88 PRG:3C88 D0 03 jmp ApplyPlayerDirection ; CPU:$BC8A PRG:3C8A 4C 26 BD ; ----------------------------------------------------------------------------- ; Routine: CountPlayerFrames_Loop5 ; Global: Branch target inside CountPlayerFrames: taken when Loop5. ; Local: Part of CountPlayerFrames. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CountPlayerFrames_Loop5: cmp #$03 ; CPU:$BC8D PRG:3C8D C9 03 bne CountPlayerFrames_Loop6 ; CPU:$BC8F PRG:3C8F D0 07 lda #$00 ; CPU:$BC91 PRG:3C91 A9 00 sta Zp3F ; CPU:$BC93 PRG:3C93 85 3F jmp ApplyPlayerDirection ; CPU:$BC95 PRG:3C95 4C 26 BD ; ----------------------------------------------------------------------------- ; Routine: CountPlayerFrames_Loop6 ; Global: Branch target inside CountPlayerFrames: taken when Loop6. ; Local: Part of CountPlayerFrames. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CountPlayerFrames_Loop6: sta Zp3F ; CPU:$BC98 PRG:3C98 85 3F lda ButtonState1 ; CPU:$BC9A PRG:3C9A A5 26 and #$01 ; CPU:$BC9C PRG:3C9C 29 01 beq CountPlayerFrames_Loop7 ; CPU:$BC9E PRG:3C9E F0 09 lda Zp4D ; CPU:$BCA0 PRG:3CA0 A5 4D clc ; CPU:$BCA2 PRG:3CA2 18 adc #$10 ; CPU:$BCA3 PRG:3CA3 69 10 and #$F0 ; CPU:$BCA5 PRG:3CA5 29 F0 sta Zp20 ; CPU:$BCA7 PRG:3CA7 85 20 ; ----------------------------------------------------------------------------- ; Routine: CountPlayerFrames_Loop7 ; Global: Branch target inside CountPlayerFrames: taken when Loop7. ; Local: Part of CountPlayerFrames. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CountPlayerFrames_Loop7: lda ButtonState1 ; CPU:$BCA9 PRG:3CA9 A5 26 and #$02 ; CPU:$BCAB PRG:3CAB 29 02 beq CountPlayerFrames_Loop8 ; CPU:$BCAD PRG:3CAD F0 09 lda Zp4D ; CPU:$BCAF PRG:3CAF A5 4D sec ; CPU:$BCB1 PRG:3CB1 38 sbc #$10 ; CPU:$BCB2 PRG:3CB2 E9 10 and #$F0 ; CPU:$BCB4 PRG:3CB4 29 F0 sta Zp20 ; CPU:$BCB6 PRG:3CB6 85 20 ; ----------------------------------------------------------------------------- ; Routine: CountPlayerFrames_Loop8 ; Global: Branch target inside CountPlayerFrames: taken when Loop8. ; Local: Part of CountPlayerFrames. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CountPlayerFrames_Loop8: lda Zp4D ; CPU:$BCB8 PRG:3CB8 A5 4D and #$0F ; CPU:$BCBA PRG:3CBA 29 0F ora Zp20 ; CPU:$BCBC PRG:3CBC 05 20 sta Zp20 ; CPU:$BCBE PRG:3CBE 85 20 lda Zp40 ; CPU:$BCC0 PRG:3CC0 A5 40 cmp #$05 ; CPU:$BCC2 PRG:3CC2 C9 05 bcc CountPlayerFrames_Loop10 ; CPU:$BCC4 PRG:3CC4 90 1B lda Zp4D ; CPU:$BCC6 PRG:3CC6 A5 4D sta Zp1C ; CPU:$BCC8 PRG:3CC8 85 1C and #$0F ; CPU:$BCCA PRG:3CCA 29 0F cmp #$0E ; CPU:$BCCC PRG:3CCC C9 0E bcc CountPlayerFrames_Loop9 ; CPU:$BCCE PRG:3CCE 90 06 lda Zp4D ; CPU:$BCD0 PRG:3CD0 A5 4D eor #$10 ; CPU:$BCD2 PRG:3CD2 49 10 sta Zp1C ; CPU:$BCD4 PRG:3CD4 85 1C ; ----------------------------------------------------------------------------- ; Routine: CountPlayerFrames_Loop9 ; Global: Branch target inside CountPlayerFrames: taken when Loop9. ; Local: Part of CountPlayerFrames. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CountPlayerFrames_Loop9: lda Zp1C ; CPU:$BCD6 PRG:3CD6 A5 1C and #$10 ; CPU:$BCD8 PRG:3CD8 29 10 beq MovePlayer ; CPU:$BCDA PRG:3CDA F0 1D inc Zp20 ; CPU:$BCDC PRG:3CDC E6 20 jmp MovePlayer ; CPU:$BCDE PRG:3CDE 4C F9 BC ; ----------------------------------------------------------------------------- ; Routine: CountPlayerFrames_Loop10 ; Global: Branch target inside CountPlayerFrames: taken when Loop10. ; Local: Part of CountPlayerFrames. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CountPlayerFrames_Loop10: lda Zp4D ; CPU:$BCE1 PRG:3CE1 A5 4D sta Zp1C ; CPU:$BCE3 PRG:3CE3 85 1C and #$0F ; CPU:$BCE5 PRG:3CE5 29 0F cmp #$0E ; CPU:$BCE7 PRG:3CE7 C9 0E bcc CountPlayerFrames_Loop11 ; CPU:$BCE9 PRG:3CE9 90 06 lda Zp4D ; CPU:$BCEB PRG:3CEB A5 4D eor #$10 ; CPU:$BCED PRG:3CED 49 10 sta Zp1C ; CPU:$BCEF PRG:3CEF 85 1C ; ----------------------------------------------------------------------------- ; Routine: CountPlayerFrames_Loop11 ; Global: Branch target inside CountPlayerFrames: taken when Loop11. ; Local: Part of CountPlayerFrames. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CountPlayerFrames_Loop11: lda Zp1C ; CPU:$BCF1 PRG:3CF1 A5 1C and #$10 ; CPU:$BCF3 PRG:3CF3 29 10 bne MovePlayer ; CPU:$BCF5 PRG:3CF5 D0 02 dec Zp20 ; CPU:$BCF7 PRG:3CF7 C6 20 ; ----------------------------------------------------------------------------- ; Routine: MovePlayer ; Global: Moves the player by one step. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- MovePlayer: lda Zp48 ; CPU:$BCF9 PRG:3CF9 A5 48 sta Zp23 ; CPU:$BCFB PRG:3CFB 85 23 jsr ComputePlayerPosition ; CPU:$BCFD PRG:3CFD 20 70 BD beq MovePlayer_Loop ; CPU:$BD00 PRG:3D00 F0 09 lda #$00 ; CPU:$BD02 PRG:3D02 A9 00 sta Zp3F ; CPU:$BD04 PRG:3D04 85 3F sta Zp56 ; CPU:$BD06 PRG:3D06 85 56 jmp ApplyPlayerDirection ; CPU:$BD08 PRG:3D08 4C 26 BD ; ----------------------------------------------------------------------------- ; Routine: MovePlayer_Loop ; Global: Branch target inside MovePlayer: taken when the loop repeats. ; Local: Part of MovePlayer. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- MovePlayer_Loop: lda #$00 ; CPU:$BD0B PRG:3D0B A9 00 sta ZpCF ; CPU:$BD0D PRG:3D0D 85 CF lda #$10 ; CPU:$BD0F PRG:3D0F A9 10 sta Zp56 ; CPU:$BD11 PRG:3D11 85 56 lda Zp40 ; CPU:$BD13 PRG:3D13 A5 40 cmp #$05 ; CPU:$BD15 PRG:3D15 C9 05 bcc MovePlayer_Loop2 ; CPU:$BD17 PRG:3D17 90 08 sec ; CPU:$BD19 PRG:3D19 38 sbc #$04 ; CPU:$BD1A PRG:3D1A E9 04 sta Zp40 ; CPU:$BD1C PRG:3D1C 85 40 jmp ApplyPlayerDirection ; CPU:$BD1E PRG:3D1E 4C 26 BD ; ----------------------------------------------------------------------------- ; Routine: MovePlayer_Loop2 ; Global: Branch target inside MovePlayer: taken when Loop2. ; Local: Part of MovePlayer. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- MovePlayer_Loop2: clc ; CPU:$BD21 PRG:3D21 18 adc #$04 ; CPU:$BD22 PRG:3D22 69 04 sta Zp40 ; CPU:$BD24 PRG:3D24 85 40 ; ----------------------------------------------------------------------------- ; Routine: ApplyPlayerDirection ; Global: Turns the direction bits into a movement delta. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyPlayerDirection: lda Zp48 ; CPU:$BD26 PRG:3D26 A5 48 sta Zp23 ; CPU:$BD28 PRG:3D28 85 23 and #$01 ; CPU:$BD2A PRG:3D2A 29 01 beq ApplyPlayerDirection_Loop3 ; CPU:$BD2C PRG:3D2C F0 21 lda NewButton1 ; CPU:$BD2E PRG:3D2E A5 2A and #$80 ; CPU:$BD30 PRG:3D30 29 80 beq ApplyPlayerDirection_Loop ; CPU:$BD32 PRG:3D32 F0 02 dec Zp23 ; CPU:$BD34 PRG:3D34 C6 23 ; ----------------------------------------------------------------------------- ; Routine: ApplyPlayerDirection_Loop ; Global: Branch target inside ApplyPlayerDirection: taken when the loop repeats. ; Local: Part of ApplyPlayerDirection. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyPlayerDirection_Loop: lda NewButton1 ; CPU:$BD36 PRG:3D36 A5 2A and #$40 ; CPU:$BD38 PRG:3D38 29 40 beq ApplyPlayerDirection_Loop2 ; CPU:$BD3A PRG:3D3A F0 02 inc Zp23 ; CPU:$BD3C PRG:3D3C E6 23 ; ----------------------------------------------------------------------------- ; Routine: ApplyPlayerDirection_Loop2 ; Global: Branch target inside ApplyPlayerDirection: taken when Loop2. ; Local: Part of ApplyPlayerDirection. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyPlayerDirection_Loop2: lda Zp23 ; CPU:$BD3E PRG:3D3E A5 23 and #$03 ; CPU:$BD40 PRG:3D40 29 03 sta Zp23 ; CPU:$BD42 PRG:3D42 85 23 lda Zp4D ; CPU:$BD44 PRG:3D44 A5 4D sta Zp20 ; CPU:$BD46 PRG:3D46 85 20 jsr ComputePlayerPosition ; CPU:$BD48 PRG:3D48 20 70 BD jsr Sub_CD1C ; CPU:$BD4B PRG:3D4B 20 1C CD rts ; CPU:$BD4E PRG:3D4E 60 ; ----------------------------------------------------------------------------- ; Routine: ApplyPlayerDirection_Loop3 ; Global: Branch target inside ApplyPlayerDirection: taken when Loop3. ; Local: Part of ApplyPlayerDirection. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyPlayerDirection_Loop3: lda NewButton1 ; CPU:$BD4F PRG:3D4F A5 2A and #$80 ; CPU:$BD51 PRG:3D51 29 80 beq ApplyPlayerDirection_Loop4 ; CPU:$BD53 PRG:3D53 F0 02 inc Zp23 ; CPU:$BD55 PRG:3D55 E6 23 ; ----------------------------------------------------------------------------- ; Routine: ApplyPlayerDirection_Loop4 ; Global: Branch target inside ApplyPlayerDirection: taken when Loop4. ; Local: Part of ApplyPlayerDirection. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyPlayerDirection_Loop4: lda NewButton1 ; CPU:$BD57 PRG:3D57 A5 2A and #$40 ; CPU:$BD59 PRG:3D59 29 40 beq ApplyPlayerDirection_Loop5 ; CPU:$BD5B PRG:3D5B F0 02 dec Zp23 ; CPU:$BD5D PRG:3D5D C6 23 ; ----------------------------------------------------------------------------- ; Routine: ApplyPlayerDirection_Loop5 ; Global: Branch target inside ApplyPlayerDirection: taken when Loop5. ; Local: Part of ApplyPlayerDirection. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ApplyPlayerDirection_Loop5: lda Zp23 ; CPU:$BD5F PRG:3D5F A5 23 and #$03 ; CPU:$BD61 PRG:3D61 29 03 sta Zp23 ; CPU:$BD63 PRG:3D63 85 23 lda Zp4D ; CPU:$BD65 PRG:3D65 A5 4D sta Zp20 ; CPU:$BD67 PRG:3D67 85 20 jsr ComputePlayerPosition ; CPU:$BD69 PRG:3D69 20 70 BD jsr Sub_CD1C ; CPU:$BD6C PRG:3D6C 20 1C CD rts ; CPU:$BD6F PRG:3D6F 60 ; ----------------------------------------------------------------------------- ; Routine: ComputePlayerPosition ; Global: Computes the player's position from the tile map. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ComputePlayerPosition: lda Zp20 ; CPU:$BD70 PRG:3D70 A5 20 and #$F0 ; CPU:$BD72 PRG:3D72 29 F0 sta Zp21 ; CPU:$BD74 PRG:3D74 85 21 lda Zp20 ; CPU:$BD76 PRG:3D76 A5 20 and #$0F ; CPU:$BD78 PRG:3D78 29 0F sta Zp22 ; CPU:$BD7A PRG:3D7A 85 22 lda #$04 ; CPU:$BD7C PRG:3D7C A9 04 sta Zp1F ; CPU:$BD7E PRG:3D7E 85 1F ldx #$00 ; CPU:$BD80 PRG:3D80 A2 00 lda Zp23 ; CPU:$BD82 PRG:3D82 A5 23 asl a ; CPU:$BD84 PRG:3D84 0A asl a ; CPU:$BD85 PRG:3D85 0A sta Zp25 ; CPU:$BD86 PRG:3D86 85 25 ; ----------------------------------------------------------------------------- ; Routine: ComputePlayerPosition_OnNonzero ; Global: Branch target inside ComputePlayerPosition: taken when the tested value is not zero. ; Local: Part of ComputePlayerPosition. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ComputePlayerPosition_OnNonzero: ldy Zp25 ; CPU:$BD88 PRG:3D88 A4 25 lda (Zp46),y ; CPU:$BD8A PRG:3D8A B1 46 sta Zp1E ; CPU:$BD8C PRG:3D8C 85 1E lda Zp21 ; CPU:$BD8E PRG:3D8E A5 21 sta Zp1C ; CPU:$BD90 PRG:3D90 85 1C lda Zp22 ; CPU:$BD92 PRG:3D92 A5 22 cmp #$0E ; CPU:$BD94 PRG:3D94 C9 0E bcc ComputePlayerPosition_Loop ; CPU:$BD96 PRG:3D96 90 07 lda Zp21 ; CPU:$BD98 PRG:3D98 A5 21 clc ; CPU:$BD9A PRG:3D9A 18 adc #$10 ; CPU:$BD9B PRG:3D9B 69 10 sta Zp1C ; CPU:$BD9D PRG:3D9D 85 1C ; ----------------------------------------------------------------------------- ; Routine: ComputePlayerPosition_Loop ; Global: Branch target inside ComputePlayerPosition: taken when the loop repeats. ; Local: Part of ComputePlayerPosition. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ComputePlayerPosition_Loop: lda Zp1C ; CPU:$BD9F PRG:3D9F A5 1C and #$10 ; CPU:$BDA1 PRG:3DA1 29 10 beq ComputePlayerPosition_Loop2; CPU:$BDA3 PRG:3DA3 F0 08 lda Zp1E ; CPU:$BDA5 PRG:3DA5 A5 1E and #$10 ; CPU:$BDA7 PRG:3DA7 29 10 beq ComputePlayerPosition_Loop2; CPU:$BDA9 PRG:3DA9 F0 02 inc Zp1E ; CPU:$BDAB PRG:3DAB E6 1E ; ----------------------------------------------------------------------------- ; Routine: ComputePlayerPosition_Loop2 ; Global: Branch target inside ComputePlayerPosition: taken when Loop2. ; Local: Part of ComputePlayerPosition. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ComputePlayerPosition_Loop2: lda Zp1E ; CPU:$BDAD PRG:3DAD A5 1E and #$F0 ; CPU:$BDAF PRG:3DAF 29 F0 clc ; CPU:$BDB1 PRG:3DB1 18 adc Zp21 ; CPU:$BDB2 PRG:3DB2 65 21 sta Zp1D ; CPU:$BDB4 PRG:3DB4 85 1D cmp #$70 ; CPU:$BDB6 PRG:3DB6 C9 70 bne ComputePlayerPosition_Loop3; CPU:$BDB8 PRG:3DB8 D0 03 lda #$FF ; CPU:$BDBA PRG:3DBA A9 FF rts ; CPU:$BDBC PRG:3DBC 60 ; ----------------------------------------------------------------------------- ; Routine: ComputePlayerPosition_Loop3 ; Global: Branch target inside ComputePlayerPosition: taken when Loop3. ; Local: Part of ComputePlayerPosition. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ComputePlayerPosition_Loop3: lda Zp1E ; CPU:$BDBD PRG:3DBD A5 1E and #$0F ; CPU:$BDBF PRG:3DBF 29 0F clc ; CPU:$BDC1 PRG:3DC1 18 adc Zp22 ; CPU:$BDC2 PRG:3DC2 65 22 sta Zp1C ; CPU:$BDC4 PRG:3DC4 85 1C and #$0F ; CPU:$BDC6 PRG:3DC6 29 0F cmp #$0E ; CPU:$BDC8 PRG:3DC8 C9 0E bcc ComputePlayerPosition_Loop4; CPU:$BDCA PRG:3DCA 90 03 ; ----------------------------------------------------------------------------- ; Routine: ComputePlayerPosition_OnCarrySet ; Global: Branch target inside ComputePlayerPosition: taken when the addition or subtraction carried. ; Local: Part of ComputePlayerPosition. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ComputePlayerPosition_OnCarrySet: lda #$FF ; CPU:$BDCC PRG:3DCC A9 FF rts ; CPU:$BDCE PRG:3DCE 60 ; ----------------------------------------------------------------------------- ; Routine: ComputePlayerPosition_Loop4 ; Global: Branch target inside ComputePlayerPosition: taken when Loop4. ; Local: Part of ComputePlayerPosition. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ComputePlayerPosition_Loop4: lda Zp1C ; CPU:$BDCF PRG:3DCF A5 1C clc ; CPU:$BDD1 PRG:3DD1 18 adc Zp1D ; CPU:$BDD2 PRG:3DD2 65 1D cmp #$70 ; CPU:$BDD4 PRG:3DD4 C9 70 bcs ComputePlayerPosition_OnCarrySet ; CPU:$BDD6 PRG:3DD6 B0 F4 tay ; CPU:$BDD8 PRG:3DD8 A8 lda $0400,y ; CPU:$BDD9 PRG:3DD9 B9 00 04 and #$7F ; CPU:$BDDC PRG:3DDC 29 7F beq StorePlayerSprite ; CPU:$BDDE PRG:3DDE F0 01 rts ; CPU:$BDE0 PRG:3DE0 60 ; ----------------------------------------------------------------------------- ; Routine: StorePlayerSprite ; Global: Stores the player's sprite in the sprite table. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- StorePlayerSprite: tya ; CPU:$BDE1 PRG:3DE1 98 sta ZpD0,x ; CPU:$BDE2 PRG:3DE2 95 D0 inx ; CPU:$BDE4 PRG:3DE4 E8 inc Zp25 ; CPU:$BDE5 PRG:3DE5 E6 25 dec Zp1F ; CPU:$BDE7 PRG:3DE7 C6 1F bne ComputePlayerPosition_OnNonzero ; CPU:$BDE9 PRG:3DE9 D0 9D lda #$04 ; CPU:$BDEB PRG:3DEB A9 04 sta Zp1F ; CPU:$BDED PRG:3DED 85 1F ldx #$00 ; CPU:$BDEF PRG:3DEF A2 00 ; ----------------------------------------------------------------------------- ; Routine: StorePlayerSprite_OnNonzero ; Global: Branch target inside StorePlayerSprite: taken when the tested value is not zero. ; Local: Part of StorePlayerSprite. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- StorePlayerSprite_OnNonzero: lda ZpD0,x ; CPU:$BDF1 PRG:3DF1 B5 D0 sta Zp4E,x ; CPU:$BDF3 PRG:3DF3 95 4E inx ; CPU:$BDF5 PRG:3DF5 E8 dec Zp1F ; CPU:$BDF6 PRG:3DF6 C6 1F bne StorePlayerSprite_OnNonzero; CPU:$BDF8 PRG:3DF8 D0 F7 lda Zp20 ; CPU:$BDFA PRG:3DFA A5 20 sta Zp4D ; CPU:$BDFC PRG:3DFC 85 4D lda Zp23 ; CPU:$BDFE PRG:3DFE A5 23 sta Zp48 ; CPU:$BE00 PRG:3E00 85 48 lda #$00 ; CPU:$BE02 PRG:3E02 A9 00 rts ; CPU:$BE04 PRG:3E04 60 ; ---- data $BE05-$BEE3 (223 bytes) ---- ; referenced by `lda $BE05,x` at $BC24 (operand $BE05 falls inside this region) ; referenced by `lda $BE06,x` at $BC2B (operand $BE06 falls inside this region) .byte $27, $02, $15, $02, $03, $02, $28, $80, $24, $02, $26, $02, $13, $01, $29, $40 ; CPU:$BE05 PRG:3E05 27 02 15 02 03 02 28 80 24 02 26 02 13 01 29 40 .byte $27, $80, $25, $02, $13, $40, $12, $02, $01, $80, $25, $01, $33, $01, $41, $40 ; CPU:$BE15 PRG:3E15 27 80 25 02 13 40 12 02 01 80 25 01 33 01 41 40 .byte $29, $40, $28, $01, $33, $01, $29, $40, $26, $80, $24, $80, $29, $80, $25, $01 ; CPU:$BE25 PRG:3E25 29 40 28 01 33 01 29 40 26 80 24 80 29 80 25 01 .byte $32, $02, $26, $40, $21, $02, $27, $80, $24, $02, $26, $01, $34, $01, $43, $80 ; CPU:$BE35 PRG:3E35 32 02 26 40 21 02 27 80 24 02 26 01 34 01 43 80 .byte $41, $40, $28, $01, $34, $01, $28, $01, $29, $02, $15, $01, $23, $80, $26, $01 ; CPU:$BE45 PRG:3E45 41 40 28 01 34 01 28 01 29 02 15 01 23 80 26 01 .byte $32, $01, $27, $02, $12, $02, $27, $01, $35, $01, $44, $80, $43, $40, $28, $40 ; CPU:$BE55 PRG:3E55 32 01 27 02 12 02 27 01 35 01 44 80 43 40 28 40 .byte $26, $80, $25, $02, $13, $02, $25, $02, $27, $01, $34, $01, $28, $40, $25, $40 ; CPU:$BE65 PRG:3E65 26 80 25 02 13 02 25 02 27 01 34 01 28 40 25 40 .byte $24, $02, $12, $02, $26, $80, $28, $80, $25, $02, $29, $40, $27, $80, $23, $02 ; CPU:$BE75 PRG:3E75 24 02 12 02 26 80 28 80 25 02 29 40 27 80 23 02 .byte $29, $01, $36, $01, $45, $01, $29, $40, $28, $01, $36, $01, $44, $80, $28, $80 ; CPU:$BE85 PRG:3E85 29 01 36 01 45 01 29 40 28 01 36 01 44 80 28 80 .byte $26, $01, $34, $01, $43, $40, $26, $40, $25, $01, $33, $80, $28, $40, $26, $02 ; CPU:$BE95 PRG:3E95 26 01 34 01 43 40 26 40 25 01 33 80 28 40 26 02 .byte $14, $02, $29, $40, $27, $80, $28, $01, $35, $01, $29, $01, $36, $01, $45, $80 ; CPU:$BEA5 PRG:3EA5 14 02 29 40 27 80 28 01 35 01 29 01 36 01 45 80 .byte $29, $40, $27, $80, $29, $02, $14, $01, $29, $02, $15, $02, $04, $02, $28, $01 ; CPU:$BEB5 PRG:3EB5 29 40 27 80 29 02 14 01 29 02 15 02 04 02 28 01 .byte $35, $01, $27, $80, $25, $02, $27, $40, $24, $02, $28, $40, $25, $01, $28, $40 ; CPU:$BEC5 PRG:3EC5 35 01 27 80 25 02 27 40 24 02 28 40 25 01 28 40 .byte $25, $80, $22, $02, $29, $80, $27, $01, $35, $01, $45, $40, $44, $01, $27 ; CPU:$BED5 PRG:3ED5 25 80 22 02 29 80 27 01 35 01 45 40 44 01 27 ; ----------------------------------------------------------------------------- ; Routine: BuildBubbleTable ; Global: Builds the table of the bubbles on the screen. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- BuildBubbleTable: ldx #$00 ; CPU:$BEE4 PRG:3EE4 A2 00 stx Zp21 ; CPU:$BEE6 PRG:3EE6 86 21 ; ----------------------------------------------------------------------------- ; Routine: BuildBubbleTable_OnCarryClear ; Global: Branch target inside BuildBubbleTable: taken when the addition or subtraction did not carry. ; Local: Part of BuildBubbleTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- BuildBubbleTable_OnCarryClear: ldy Zp4E,x ; CPU:$BEE8 PRG:3EE8 B4 4E lda Zp52,x ; CPU:$BEEA PRG:3EEA B5 52 sta Zp1B ; CPU:$BEEC PRG:3EEC 85 1B sta $0400,y ; CPU:$BEEE PRG:3EEE 99 00 04 inc Zp21 ; CPU:$BEF1 PRG:3EF1 E6 21 asl a ; CPU:$BEF3 PRG:3EF3 0A tax ; CPU:$BEF4 PRG:3EF4 AA lda $F29E,x ; CPU:$BEF5 PRG:3EF5 BD 9E F2 sta Zp17 ; CPU:$BEF8 PRG:3EF8 85 17 lda $F29F,x ; CPU:$BEFA PRG:3EFA BD 9F F2 sta Zp18 ; CPU:$BEFD PRG:3EFD 85 18 tya ; CPU:$BEFF PRG:3EFF 98 jsr Sub_84BF ; CPU:$BF00 PRG:3F00 20 BF 84 jsr Sub_858A ; CPU:$BF03 PRG:3F03 20 8A 85 jsr Sub_84E3 ; CPU:$BF06 PRG:3F06 20 E3 84 ldx Zp21 ; CPU:$BF09 PRG:3F09 A6 21 cpx #$04 ; CPU:$BF0B PRG:3F0B E0 04 bcc BuildBubbleTable_OnCarryClear ; CPU:$BF0D PRG:3F0D 90 D9 ldx Zp36 ; CPU:$BF0F PRG:3F0F A6 36 lda #$00 ; CPU:$BF11 PRG:3F11 A9 00 sta $0300,x ; CPU:$BF13 PRG:3F13 9D 00 03 rts ; CPU:$BF16 PRG:3F16 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateBubbles ; Global: Updates every bubble on the screen. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateBubbles: lda Zp61 ; CPU:$BF17 PRG:3F17 A5 61 cmp #$00 ; CPU:$BF19 PRG:3F19 C9 00 bne PlayBubbleSound ; CPU:$BF1B PRG:3F1B D0 36 ldx #$00 ; CPU:$BF1D PRG:3F1D A2 00 stx Zp58 ; CPU:$BF1F PRG:3F1F 86 58 ; ----------------------------------------------------------------------------- ; Routine: UpdateBubbles_OnCarryClear ; Global: Branch target inside UpdateBubbles: taken when the addition or subtraction did not carry. ; Local: Part of UpdateBubbles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateBubbles_OnCarryClear: stx Zp21 ; CPU:$BF21 PRG:3F21 86 21 lda Zp4E,x ; CPU:$BF23 PRG:3F23 B5 4E sta Zp20 ; CPU:$BF25 PRG:3F25 85 20 dec Zp20 ; CPU:$BF27 PRG:3F27 C6 20 ; ----------------------------------------------------------------------------- ; Routine: UpdateBubbles_OnNonnegative ; Global: Branch target inside UpdateBubbles: taken when the tested value is not negative. ; Local: Part of UpdateBubbles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateBubbles_OnNonnegative: lda Zp20 ; CPU:$BF29 PRG:3F29 A5 20 and #$0F ; CPU:$BF2B PRG:3F2B 29 0F cmp #$0E ; CPU:$BF2D PRG:3F2D C9 0E bcs UpdateBubbles_Loop ; CPU:$BF2F PRG:3F2F B0 18 ldy Zp20 ; CPU:$BF31 PRG:3F31 A4 20 lda $0400,y ; CPU:$BF33 PRG:3F33 B9 00 04 bne UpdateBubbles_Loop ; CPU:$BF36 PRG:3F36 D0 11 lda #$80 ; CPU:$BF38 PRG:3F38 A9 80 sta $0400,y ; CPU:$BF3A PRG:3F3A 99 00 04 tya ; CPU:$BF3D PRG:3F3D 98 ldx Zp58 ; CPU:$BF3E PRG:3F3E A6 58 sta $0568,x ; CPU:$BF40 PRG:3F40 9D 68 05 inc Zp58 ; CPU:$BF43 PRG:3F43 E6 58 dec Zp20 ; CPU:$BF45 PRG:3F45 C6 20 bpl UpdateBubbles_OnNonnegative; CPU:$BF47 PRG:3F47 10 E0 ; ----------------------------------------------------------------------------- ; Routine: UpdateBubbles_Loop ; Global: Branch target inside UpdateBubbles: taken when the loop repeats. ; Local: Part of UpdateBubbles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateBubbles_Loop: ldx Zp21 ; CPU:$BF49 PRG:3F49 A6 21 inx ; CPU:$BF4B PRG:3F4B E8 cpx #$04 ; CPU:$BF4C PRG:3F4C E0 04 bcc UpdateBubbles_OnCarryClear ; CPU:$BF4E PRG:3F4E 90 D1 inc Zp61 ; CPU:$BF50 PRG:3F50 E6 61 rts ; CPU:$BF52 PRG:3F52 60 ; ----------------------------------------------------------------------------- ; Routine: PlayBubbleSound ; Global: Plays the sound of a bubble that burst. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- PlayBubbleSound: lda FrameCounter ; CPU:$BF53 PRG:3F53 A5 31 ror a ; CPU:$BF55 PRG:3F55 6A bcs PlayBubbleSound_Loop ; CPU:$BF56 PRG:3F56 B0 01 rts ; CPU:$BF58 PRG:3F58 60 ; ----------------------------------------------------------------------------- ; Routine: PlayBubbleSound_Loop ; Global: Branch target inside PlayBubbleSound: taken when the loop repeats. ; Local: Part of PlayBubbleSound. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- PlayBubbleSound_Loop: lda #$0D ; CPU:$BF59 PRG:3F59 A9 0D sta Zp17 ; CPU:$BF5B PRG:3F5B 85 17 lda #$F3 ; CPU:$BF5D PRG:3F5D A9 F3 sta Zp18 ; CPU:$BF5F PRG:3F5F 85 18 lda #$0C ; CPU:$BF61 PRG:3F61 A9 0C sta Zp1F ; CPU:$BF63 PRG:3F63 85 1F ldy #$00 ; CPU:$BF65 PRG:3F65 A0 00 ; ----------------------------------------------------------------------------- ; Routine: SpawnBubble ; Global: Puts a new bubble on the screen. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SpawnBubble: dec Zp58 ; CPU:$BF67 PRG:3F67 C6 58 bpl DrawBubble ; CPU:$BF69 PRG:3F69 10 18 inc Zp60 ; CPU:$BF6B PRG:3F6B E6 60 lda Zp64 ; CPU:$BF6D PRG:3F6D A5 64 bne SpawnBubble_Loop ; CPU:$BF6F PRG:3F6F D0 02 inc Zp60 ; CPU:$BF71 PRG:3F71 E6 60 ; ----------------------------------------------------------------------------- ; Routine: SpawnBubble_Loop ; Global: Branch target inside SpawnBubble: taken when the loop repeats. ; Local: Part of SpawnBubble. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SpawnBubble_Loop: lda #$00 ; CPU:$BF73 PRG:3F73 A9 00 ldy Zp36 ; CPU:$BF75 PRG:3F75 A4 36 sta Zp61 ; CPU:$BF77 PRG:3F77 85 61 sta $0300,y ; CPU:$BF79 PRG:3F79 99 00 03 sta Zp3F ; CPU:$BF7C PRG:3F7C 85 3F lda #$03 ; CPU:$BF7E PRG:3F7E A9 03 sta Zp56 ; CPU:$BF80 PRG:3F80 85 56 rts ; CPU:$BF82 PRG:3F82 60 ; ----------------------------------------------------------------------------- ; Routine: DrawBubble ; Global: Draws one bubble. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DrawBubble: ldx Zp58 ; CPU:$BF83 PRG:3F83 A6 58 lda $0568,x ; CPU:$BF85 PRG:3F85 BD 68 05 jsr Sub_84BF ; CPU:$BF88 PRG:3F88 20 BF 84 jsr Sub_858A ; CPU:$BF8B PRG:3F8B 20 8A 85 dec Zp1F ; CPU:$BF8E PRG:3F8E C6 1F bpl SpawnBubble ; CPU:$BF90 PRG:3F90 10 D5 ldy Zp36 ; CPU:$BF92 PRG:3F92 A4 36 lda #$00 ; CPU:$BF94 PRG:3F94 A9 00 sta $0300,y ; CPU:$BF96 PRG:3F96 99 00 03 rts ; CPU:$BF99 PRG:3F99 60 ; ----------------------------------------------------------------------------- ; Routine: DispatchBubbleHandler ; Global: Jumps to the handler the bubble table names. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DispatchBubbleHandler: lda Zp61 ; CPU:$BF9A PRG:3F9A A5 61 jsr DispatchByJumpTable ; CPU:$BF9C PRG:3F9C 20 73 81 ; ---- data $BF9F-$BFAE (16 bytes) ---- .byte $AF, $BF, $BA, $BF, $D6, $BF, $0F, $C0, $70, $C0, $79, $C0, $9E, $C0, $B9, $C0 ; CPU:$BF9F PRG:3F9F AF BF BA BF D6 BF 0F C0 70 C0 79 C0 9E C0 B9 C0 ; ----------------------------------------------------------------------------- ; Routine: ResetLevel ; Global: Resets the level and the player. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetLevel: lda #$0A ; CPU:$BFAF PRG:3FAF A9 0A sta GameMode ; CPU:$BFB1 PRG:3FB1 85 6A lda #$00 ; CPU:$BFB3 PRG:3FB3 A9 00 sta Zp6C ; CPU:$BFB5 PRG:3FB5 85 6C inc Zp61 ; CPU:$BFB7 PRG:3FB7 E6 61 rts ; CPU:$BFB9 PRG:3FB9 60 ; ----------------------------------------------------------------------------- ; Routine: ClearSpriteTable ; Global: Empties the sprite table in RAM. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearSpriteTable: lda #$00 ; CPU:$BFBA PRG:3FBA A9 00 sta $0358 ; CPU:$BFBC PRG:3FBC 8D 58 03 sta $035A ; CPU:$BFBF PRG:3FBF 8D 5A 03 sta $035B ; CPU:$BFC2 PRG:3FC2 8D 5B 03 sta $035C ; CPU:$BFC5 PRG:3FC5 8D 5C 03 sta $035D ; CPU:$BFC8 PRG:3FC8 8D 5D 03 lda #$0A ; CPU:$BFCB PRG:3FCB A9 0A sta Zp58 ; CPU:$BFCD PRG:3FCD 85 58 inc Zp61 ; CPU:$BFCF PRG:3FCF E6 61 lda #$07 ; CPU:$BFD1 PRG:3FD1 A9 07 jsr BankedCall ; CPU:$BFD3 PRG:3FD3 20 04 80 lda FrameCounter ; CPU:$BFD6 PRG:3FD6 A5 31 ror a ; CPU:$BFD8 PRG:3FD8 6A bcs ClearSpriteTable_Loop ; CPU:$BFD9 PRG:3FD9 B0 01 rts ; CPU:$BFDB PRG:3FDB 60 ; ----------------------------------------------------------------------------- ; Routine: ClearSpriteTable_Loop ; Global: Branch target inside ClearSpriteTable: taken when the loop repeats. ; Local: Part of ClearSpriteTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearSpriteTable_Loop: lda #$A8 ; CPU:$BFDC PRG:3FDC A9 A8 sta Zp17 ; CPU:$BFDE PRG:3FDE 85 17 lda #$F2 ; CPU:$BFE0 PRG:3FE0 A9 F2 sta Zp18 ; CPU:$BFE2 PRG:3FE2 85 18 lda Zp58 ; CPU:$BFE4 PRG:3FE4 A5 58 ; ----------------------------------------------------------------------------- ; Routine: ClearSpriteTable_OnCarryClear ; Global: Branch target inside ClearSpriteTable: taken when the addition or subtraction did not carry. ; Local: Part of ClearSpriteTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearSpriteTable_OnCarryClear: sta Zp56 ; CPU:$BFE6 PRG:3FE6 85 56 jsr Sub_84BF ; CPU:$BFE8 PRG:3FE8 20 BF 84 jsr Sub_858A ; CPU:$BFEB PRG:3FEB 20 8A 85 lda Zp56 ; CPU:$BFEE PRG:3FEE A5 56 clc ; CPU:$BFF0 PRG:3FF0 18 adc #$10 ; CPU:$BFF1 PRG:3FF1 69 10 cmp #$70 ; CPU:$BFF3 PRG:3FF3 C9 70 bcc ClearSpriteTable_OnCarryClear ; CPU:$BFF5 PRG:3FF5 90 EF lda #$00 ; CPU:$BFF7 PRG:3FF7 A9 00 sta $0300,x ; CPU:$BFF9 PRG:3FF9 9D 00 03 dec Zp58 ; CPU:$BFFC PRG:3FFC C6 58 bpl ClearNametableRam_Loop ; CPU:$BFFE PRG:3FFE 10 0E .segment "PRG2" .org $C000 ; ----------------------------------------------------------------------------- ; Routine: ClearNametableRam ; Global: Clears the nametable RAM the game writes to. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearNametableRam: inc Zp61 ; CPU:$C000 PRG:4000 E6 61 ldy #$00 ; CPU:$C002 PRG:4002 A0 00 lda #$00 ; CPU:$C004 PRG:4004 A9 00 ; ----------------------------------------------------------------------------- ; Routine: ClearNametableRam_OnCarryClear ; Global: Branch target inside ClearNametableRam: taken when the addition or subtraction did not carry. ; Local: Part of ClearNametableRam. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearNametableRam_OnCarryClear: sta $0400,y ; CPU:$C006 PRG:4006 99 00 04 iny ; CPU:$C009 PRG:4009 C8 cpy #$70 ; CPU:$C00A PRG:400A C0 70 bcc ClearNametableRam_OnCarryClear ; CPU:$C00C PRG:400C 90 F8 ; ----------------------------------------------------------------------------- ; Routine: ClearNametableRam_Loop ; Global: Branch target inside ClearNametableRam: taken when the loop repeats. ; Local: Part of ClearNametableRam. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearNametableRam_Loop: rts ; CPU:$C00E PRG:400E 60 ; ----------------------------------------------------------------------------- ; Routine: PlayStageMusic ; Global: Runs the stage script: the music, the waves and the timer. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- PlayStageMusic: lda FrameCounter ; CPU:$C00F PRG:400F A5 31 ror a ; CPU:$C011 PRG:4011 6A bcs PlayStageMusic_Loop ; CPU:$C012 PRG:4012 B0 01 rts ; CPU:$C014 PRG:4014 60 ; ----------------------------------------------------------------------------- ; Routine: PlayStageMusic_Loop ; Global: Branch target inside PlayStageMusic: taken when the loop repeats. ; Local: Part of PlayStageMusic. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- PlayStageMusic_Loop: ldx Zp37 ; CPU:$C015 PRG:4015 A6 37 ldy #$00 ; CPU:$C017 PRG:4017 A0 00 ; ----------------------------------------------------------------------------- ; Routine: PlayStageMusic_OnCarryClear ; Global: Branch target inside PlayStageMusic: taken when the addition or subtraction did not carry. ; Local: Part of PlayStageMusic. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- PlayStageMusic_OnCarryClear: lda $C046,y ; CPU:$C019 PRG:4019 B9 46 C0 sta $0338,x ; CPU:$C01C PRG:401C 9D 38 03 inx ; CPU:$C01F PRG:401F E8 iny ; CPU:$C020 PRG:4020 C8 cpy #$08 ; CPU:$C021 PRG:4021 C0 08 bcc PlayStageMusic_OnCarryClear; CPU:$C023 PRG:4023 90 F4 lda #$00 ; CPU:$C025 PRG:4025 A9 00 sta $0338,x ; CPU:$C027 PRG:4027 9D 38 03 lda Zp6F ; CPU:$C02A PRG:402A A5 6F beq PlayStageMusic_Loop2 ; CPU:$C02C PRG:402C F0 07 ldy Zp37 ; CPU:$C02E PRG:402E A4 37 lda #$A7 ; CPU:$C030 PRG:4030 A9 A7 sta $0338,y ; CPU:$C032 PRG:4032 99 38 03 ; ----------------------------------------------------------------------------- ; Routine: PlayStageMusic_Loop2 ; Global: Branch target inside PlayStageMusic: taken when Loop2. ; Local: Part of PlayStageMusic. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- PlayStageMusic_Loop2: stx Zp37 ; CPU:$C035 PRG:4035 86 37 lda #$01 ; CPU:$C037 PRG:4037 A9 01 sta Zp95 ; CPU:$C039 PRG:4039 85 95 lda #$00 ; CPU:$C03B PRG:403B A9 00 sta Zp5F ; CPU:$C03D PRG:403D 85 5F sta Zp5E ; CPU:$C03F PRG:403F 85 5E sta Zp91 ; CPU:$C041 PRG:4041 85 91 inc Zp61 ; CPU:$C043 PRG:4043 E6 61 rts ; CPU:$C045 PRG:4045 60 ; ---- data $C046-$C060 (27 bytes) ---- ; referenced by `lda $C046,y` at $C019 (operand $C046 falls inside this region) .byte $A9, $21, $11, $F8, $D9, $23, $1B, $F8, $A9, $00, $85, $61, $A9, $0A, $85, $58 ; CPU:$C046 PRG:4046 A9 21 11 F8 D9 23 1B F8 A9 00 85 61 A9 0A 85 58 .byte $60, $20, $DC, $BF, $A5, $61, $F0, $02, $E6, $6C, $60 ; CPU:$C056 PRG:4056 60 20 DC BF A5 61 F0 02 E6 6C 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_C061 ; Global: Branch target inside Sub: taken when C061. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_C061: lda #$00 ; CPU:$C061 PRG:4061 A9 00 tax ; CPU:$C063 PRG:4063 AA ; ----------------------------------------------------------------------------- ; Routine: PlayStageMusic_OnCarryClear2 ; Global: Branch target inside PlayStageMusic: taken when OnCarryClear2. ; Local: Part of PlayStageMusic. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- PlayStageMusic_OnCarryClear2: sta Zp60,x ; CPU:$C064 PRG:4064 95 60 inx ; CPU:$C066 PRG:4066 E8 cpx #$0A ; CPU:$C067 PRG:4067 E0 0A bcc PlayStageMusic_OnCarryClear2 ; CPU:$C069 PRG:4069 90 F9 lda #$FF ; CPU:$C06B PRG:406B A9 FF sta Zp65 ; CPU:$C06D PRG:406D 85 65 rts ; CPU:$C06F PRG:406F 60 ; ---- data $C070-$C0F1 (130 bytes) ---- .byte $A5, $26, $C9, $C0, $D0, $02, $E6, $61, $60, $A5, $31, $6A, $B0, $01, $60, $A2 ; CPU:$C070 PRG:4070 A5 26 C9 C0 D0 02 E6 61 60 A5 31 6A B0 01 60 A2 .byte $00, $BD, $96, $C0, $9D, $38, $03, $E8, $E0, $08, $90, $F5, $A9, $00, $9D, $38 ; CPU:$C080 PRG:4080 00 BD 96 C0 9D 38 03 E8 E0 08 90 F5 A9 00 9D 38 .byte $03, $85, $95, $E6, $61, $60, $A7, $21, $25, $F8, $D9, $23, $20, $F8, $A5, $31 ; CPU:$C090 PRG:4090 03 85 95 E6 61 60 A7 21 25 F8 D9 23 20 F8 A5 31 .byte $6A, $B0, $01, $60, $A0, $00, $A6, $37, $B9, $E0, $C0, $9D, $38, $03, $E8, $C8 ; CPU:$C0A0 PRG:40A0 6A B0 01 60 A0 00 A6 37 B9 E0 C0 9D 38 03 E8 C8 .byte $C0, $0D, $90, $F4, $86, $37, $E6, $61, $60, $A5, $31, $6A, $B0, $01, $60, $A0 ; CPU:$C0B0 PRG:40B0 C0 0D 90 F4 86 37 E6 61 60 A5 31 6A B0 01 60 A0 .byte $00, $A6, $37, $B9, $ED, $C0, $9D, $38, $03, $E8, $C8, $C0, $05, $90, $F4, $86 ; CPU:$C0C0 PRG:40C0 00 A6 37 B9 ED C0 9D 38 03 E8 C8 C0 05 90 F4 86 .byte $37, $20, $61, $C0, $20, $03, $97, $A9, $09, $85, $60, $A9, $00, $85, $61, $60 ; CPU:$C0D0 PRG:40D0 37 20 61 C0 20 03 97 A9 09 85 60 A9 00 85 61 60 .byte $22, $23, $A1, $FB, $42, $23, $A1, $FB, $2A, $23, $A7, $FB, $00, $46, $23, $AF ; CPU:$C0E0 PRG:40E0 22 23 A1 FB 42 23 A1 FB 2A 23 A7 FB 00 46 23 AF .byte $FB, $00 ; CPU:$C0F0 PRG:40F0 FB 00 ; ----------------------------------------------------------------------------- ; Routine: Sub_C0F2 ; Global: Branch target inside Sub: taken when C0F2. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_C0F2: lda Zp5E ; CPU:$C0F2 PRG:40F2 A5 5E bne PlayStageMusic_Loop3 ; CPU:$C0F4 PRG:40F4 D0 18 jsr Sub_8552 ; CPU:$C0F6 PRG:40F6 20 52 85 lda Zp3D ; CPU:$C0F9 PRG:40F9 A5 3D and #$03 ; CPU:$C0FB PRG:40FB 29 03 tay ; CPU:$C0FD PRG:40FD A8 ldx #$00 ; CPU:$C0FE PRG:40FE A2 00 ; ----------------------------------------------------------------------------- ; Routine: PlayStageMusic_OnCarryClear3 ; Global: Branch target inside PlayStageMusic: taken when OnCarryClear3. ; Local: Part of PlayStageMusic. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- PlayStageMusic_OnCarryClear3: lda $C137,y ; CPU:$C100 PRG:4100 B9 37 C1 sta $05DA,x ; CPU:$C103 PRG:4103 9D DA 05 iny ; CPU:$C106 PRG:4106 C8 inx ; CPU:$C107 PRG:4107 E8 cpx #$05 ; CPU:$C108 PRG:4108 E0 05 bcc PlayStageMusic_OnCarryClear3 ; CPU:$C10A PRG:410A 90 F4 stx Zp5E ; CPU:$C10C PRG:410C 86 5E ; ----------------------------------------------------------------------------- ; Routine: PlayStageMusic_Loop3 ; Global: Branch target inside PlayStageMusic: taken when Loop3. ; Local: Part of PlayStageMusic. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- PlayStageMusic_Loop3: ldx Zp5E ; CPU:$C10E PRG:410E A6 5E lda $05D9,x ; CPU:$C110 PRG:4110 BD D9 05 clc ; CPU:$C113 PRG:4113 18 adc #$07 ; CPU:$C114 PRG:4114 69 07 sta Zp11 ; CPU:$C116 PRG:4116 85 11 lda #$00 ; CPU:$C118 PRG:4118 A9 00 sta Zp12 ; CPU:$C11A PRG:411A 85 12 jsr Sub_855D ; CPU:$C11C PRG:411C 20 5D 85 jsr Sub_8552 ; CPU:$C11F PRG:411F 20 52 85 lda Zp3D ; CPU:$C122 PRG:4122 A5 3D and #$03 ; CPU:$C124 PRG:4124 29 03 sta Zp64 ; CPU:$C126 PRG:4126 85 64 inc Zp64 ; CPU:$C128 PRG:4128 E6 64 ldx Zp65 ; CPU:$C12A PRG:412A A6 65 bmi PlayStageMusic_Loop4 ; CPU:$C12C PRG:412C 30 08 lda $0400,x ; CPU:$C12E PRG:412E BD 00 04 and #$BF ; CPU:$C131 PRG:4131 29 BF sta $0400,x ; CPU:$C133 PRG:4133 9D 00 04 ; ----------------------------------------------------------------------------- ; Routine: PlayStageMusic_Loop4 ; Global: Branch target inside PlayStageMusic: taken when Loop4. ; Local: Part of PlayStageMusic. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- PlayStageMusic_Loop4: rts ; CPU:$C136 PRG:4136 60 ; ---- data $C137-$C13F (9 bytes) ---- ; referenced by `lda $C137,y` at $C100 (operand $C137 falls inside this region) .byte $02, $00, $04, $03, $01, $02, $00, $04, $03 ; CPU:$C137 PRG:4137 02 00 04 03 01 02 00 04 03 ; ----------------------------------------------------------------------------- ; Routine: Sub_C140 ; Global: Branch target inside Sub: taken when C140. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_C140: lda #$02 ; CPU:$C140 PRG:4140 A9 02 sta Zp64 ; CPU:$C142 PRG:4142 85 64 lda #$05 ; CPU:$C144 PRG:4144 A9 05 sta Zp11 ; CPU:$C146 PRG:4146 85 11 lda #$02 ; CPU:$C148 PRG:4148 A9 02 sta Zp12 ; CPU:$C14A PRG:414A 85 12 jsr Sub_855D ; CPU:$C14C PRG:414C 20 5D 85 lda #$00 ; CPU:$C14F PRG:414F A9 00 sta Zp63 ; CPU:$C151 PRG:4151 85 63 ldx Zp65 ; CPU:$C153 PRG:4153 A6 65 bmi PlayStageMusic_Loop5 ; CPU:$C155 PRG:4155 30 17 lda $0400,x ; CPU:$C157 PRG:4157 BD 00 04 and #$BF ; CPU:$C15A PRG:415A 29 BF sta $0400,x ; CPU:$C15C PRG:415C 9D 00 04 lda #$FF ; CPU:$C15F PRG:415F A9 FF sta Zp65 ; CPU:$C161 PRG:4161 85 65 lda #$00 ; CPU:$C163 PRG:4163 A9 00 sta Zp11 ; CPU:$C165 PRG:4165 85 11 lda #$00 ; CPU:$C167 PRG:4167 A9 00 sta Zp12 ; CPU:$C169 PRG:4169 85 12 jsr Sub_855D ; CPU:$C16B PRG:416B 20 5D 85 ; ----------------------------------------------------------------------------- ; Routine: PlayStageMusic_Loop5 ; Global: Branch target inside PlayStageMusic: taken when Loop5. ; Local: Part of PlayStageMusic. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- PlayStageMusic_Loop5: rts ; CPU:$C16E PRG:416E 60 ; ---- data $C16F-$C2A6 (312 bytes) ---- .byte $A5, $31, $6A, $B0, $01, $60, $A5, $61, $D0, $11, $E6, $61, $A9, $01, $8D, $E3 ; CPU:$C16F PRG:416F A5 31 6A B0 01 60 A5 61 D0 11 E6 61 A9 01 8D E3 .byte $00, $A9, $05, $8D, $E2, $00, $A9, $04, $20, $04, $80, $C9, $01, $D0, $4A, $A9 ; CPU:$C17F PRG:417F 00 A9 05 8D E2 00 A9 04 20 04 80 C9 01 D0 4A A9 .byte $05, $85, $11, $A9, $03, $85, $12, $20, $5D, $85, $A5, $3F, $0A, $AA, $BD, $87 ; CPU:$C18F PRG:418F 05 85 11 A9 03 85 12 20 5D 85 A5 3F 0A AA BD 87 .byte $F8, $18, $6D, $8A, $03, $8D, $8B, $03, $BD, $88, $F8, $18, $6D, $9A, $03, $8D ; CPU:$C19F PRG:419F F8 18 6D 8A 03 8D 8B 03 BD 88 F8 18 6D 9A 03 8D .byte $9B, $03, $A5, $31, $6A, $29, $03, $85, $20, $AD, $AA, $03, $29, $FC, $05, $20 ; CPU:$C1AF PRG:41AF 9B 03 A5 31 6A 29 03 85 20 AD AA 03 29 FC 05 20 .byte $8D, $AA, $03, $8D, $AB, $03, $E6, $3F, $A5, $3F, $C9, $18, $D0, $0A, $A9, $00 ; CPU:$C1BF PRG:41BF 8D AA 03 8D AB 03 E6 3F A5 3F C9 18 D0 0A A9 00 .byte $85, $3F, $C6, $56, $D0, $02, $E6, $61, $60, $C9, $02, $D0, $6D, $A5, $4E, $8D ; CPU:$C1CF PRG:41CF 85 3F C6 56 D0 02 E6 61 60 C9 02 D0 6D A5 4E 8D .byte $22, $05, $AA, $20, $52, $85, $A5, $3D, $29, $03, $85, $64, $E6, $64, $A5, $64 ; CPU:$C1DF PRG:41DF 22 05 AA 20 52 85 A5 3D 29 03 85 64 E6 64 A5 64 .byte $9D, $00, $04, $A0, $01, $84, $25, $AD, $22, $05, $29, $10, $F0, $04, $A9, $07 ; CPU:$C1EF PRG:41EF 9D 00 04 A0 01 84 25 AD 22 05 29 10 F0 04 A9 07 .byte $85, $25, $A9, $01, $85, $21, $A9, $06, $85, $1F, $A4, $25, $B9, $7A, $F8, $E6 ; CPU:$C1FF PRG:41FF 85 25 A9 01 85 21 A9 06 85 1F A4 25 B9 7A F8 E6 .byte $25, $18, $6D, $22, $05, $AA, $29, $0F, $C9, $0D, $B0, $20, $8A, $29, $F0, $C9 ; CPU:$C20F PRG:420F 25 18 6D 22 05 AA 29 0F C9 0D B0 20 8A 29 F0 C9 .byte $70, $B0, $19, $BD, $00, $04, $29, $07, $D0, $05, $9D, $00, $04, $F0, $05, $A5 ; CPU:$C21F PRG:421F 70 B0 19 BD 00 04 29 07 D0 05 9D 00 04 F0 05 A5 .byte $64, $9D, $00, $04, $8A, $A6, $21, $9D, $22, $05, $E6, $21, $C6, $1F, $D0, $CA ; CPU:$C22F PRG:422F 64 9D 00 04 8A A6 21 9D 22 05 E6 21 C6 1F D0 CA .byte $A6, $21, $A9, $FF, $9D, $22, $05, $E6, $61, $60, $C9, $03, $D0, $47, $A0, $00 ; CPU:$C23F PRG:423F A6 21 A9 FF 9D 22 05 E6 61 60 C9 03 D0 47 A0 00 .byte $84, $22, $A4, $22, $B9, $22, $05, $30, $22, $85, $21, $20, $BF, $84, $A6, $21 ; CPU:$C24F PRG:424F 84 22 A4 22 B9 22 05 30 22 85 21 20 BF 84 A6 21 .byte $BD, $00, $04, $85, $1B, $0A, $AA, $BD, $9E, $F2, $85, $17, $BD, $9F, $F2, $85 ; CPU:$C25F PRG:425F BD 00 04 85 1B 0A AA BD 9E F2 85 17 BD 9F F2 85 .byte $18, $20, $8A, $85, $20, $E3, $84, $E6, $22, $10, $D7, $A6, $36, $A9, $00, $9D ; CPU:$C26F PRG:426F 18 20 8A 85 20 E3 84 E6 22 10 D7 A6 36 A9 00 9D .byte $00, $03, $A9, $00, $85, $11, $A9, $02, $85, $12, $20, $5D, $85, $E6, $12, $20 ; CPU:$C27F PRG:427F 00 03 A9 00 85 11 A9 02 85 12 20 5D 85 E6 12 20 .byte $5D, $85, $E6, $61, $60, $E6, $61, $A5, $61, $C9, $0F, $90, $0A, $A9, $00, $85 ; CPU:$C28F PRG:428F 5D 85 E6 61 60 E6 61 A5 61 C9 0F 90 0A A9 00 85 .byte $61, $85, $66, $85, $64, $E6, $60, $60 ; CPU:$C29F PRG:429F 61 85 66 85 64 E6 60 60 ; ----------------------------------------------------------------------------- ; Routine: DispatchLevelScript ; Global: Jumps to the level script step the game is on. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DispatchLevelScript: lda Zp6C ; CPU:$C2A7 PRG:42A7 A5 6C jsr DispatchByJumpTable ; CPU:$C2A9 PRG:42A9 20 73 81 ; ---- data $C2AC-$C2BE (19 bytes) ---- ; referenced by `lda $C2BE,x` at $C2C9 (operand $C2BE falls inside this region) ; referenced by `sta $C2BE,x` at $C2CC (operand $C2BE falls inside this region) .byte $BF, $C2, $C8, $C3, $56, $C4, $69, $C4, $9D, $C4, $E7, $C4, $05, $C5, $24, $C7 ; CPU:$C2AC PRG:42AC BF C2 C8 C3 56 C4 69 C4 9D C4 E7 C4 05 C5 24 C7 .byte $7E, $C7, $01 ; CPU:$C2BC PRG:42BC 7E C7 01 ; ----------------------------------------------------------------------------- ; Routine: ResetPpuAndLoadTiles ; Global: Turns the PPU off and loads the tile set. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetPpuAndLoadTiles: lda #$00 ; CPU:$C2BF PRG:42BF A9 00 sta PPUCTRL ; CPU:$C2C1 PRG:42C1 8D 00 20 sta PPUMASK ; CPU:$C2C4 PRG:42C4 8D 01 20 ldx #$00 ; CPU:$C2C7 PRG:42C7 A2 00 lda $C2BE,x ; CPU:$C2C9 PRG:42C9 BD BE C2 sta $C2BE,x ; CPU:$C2CC PRG:42CC 9D BE C2 sta PrgBankNumber ; CPU:$C2CF PRG:42CF 85 2C lda #$F1 ; CPU:$C2D1 PRG:42D1 A9 F1 sta Zp12 ; CPU:$C2D3 PRG:42D3 85 12 lda #$E6 ; CPU:$C2D5 PRG:42D5 A9 E6 sta Zp11 ; CPU:$C2D7 PRG:42D7 85 11 jsr Sub_85C4 ; CPU:$C2D9 PRG:42D9 20 C4 85 lda Zp5A ; CPU:$C2DC PRG:42DC A5 5A asl a ; CPU:$C2DE PRG:42DE 0A tax ; CPU:$C2DF PRG:42DF AA lda $F45C,x ; CPU:$C2E0 PRG:42E0 BD 5C F4 sta Zp39 ; CPU:$C2E3 PRG:42E3 85 39 lda $F45D,x ; CPU:$C2E5 PRG:42E5 BD 5D F4 sta Zp3A ; CPU:$C2E8 PRG:42E8 85 3A lda Zp5C ; CPU:$C2EA PRG:42EA A5 5C asl a ; CPU:$C2EC PRG:42EC 0A tax ; CPU:$C2ED PRG:42ED AA lda $F45C,x ; CPU:$C2EE PRG:42EE BD 5C F4 sta Zp3B ; CPU:$C2F1 PRG:42F1 85 3B lda $F45D,x ; CPU:$C2F3 PRG:42F3 BD 5D F4 sta Zp3C ; CPU:$C2F6 PRG:42F6 85 3C lda Zp6F ; CPU:$C2F8 PRG:42F8 A5 6F bne ResetPpuAndLoadTiles_Loop2 ; CPU:$C2FA PRG:42FA D0 42 ldy #$07 ; CPU:$C2FC PRG:42FC A0 07 lda #$22 ; CPU:$C2FE PRG:42FE A9 22 sta Zp1A ; CPU:$C300 PRG:4300 85 1A lda #$76 ; CPU:$C302 PRG:4302 A9 76 sta Zp19 ; CPU:$C304 PRG:4304 85 19 ldx #$06 ; CPU:$C306 PRG:4306 A2 06 ; ----------------------------------------------------------------------------- ; Routine: ResetPpuAndLoadTiles_OnNonzero ; Global: Branch target inside ResetPpuAndLoadTiles: taken when the tested value is not zero. ; Local: Part of ResetPpuAndLoadTiles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetPpuAndLoadTiles_OnNonzero: stx Zp21 ; CPU:$C308 PRG:4308 86 21 lda PPUSTATUS ; CPU:$C30A PRG:430A AD 02 20 lda Zp1A ; CPU:$C30D PRG:430D A5 1A sta PPUADDR ; CPU:$C30F PRG:430F 8D 06 20 lda Zp19 ; CPU:$C312 PRG:4312 A5 19 sta PPUADDR ; CPU:$C314 PRG:4314 8D 06 20 lda #$FF ; CPU:$C317 PRG:4317 A9 FF ; ----------------------------------------------------------------------------- ; Routine: ResetPpuAndLoadTiles_OnNonzero2 ; Global: Branch target inside ResetPpuAndLoadTiles: taken when OnNonzero2. ; Local: Part of ResetPpuAndLoadTiles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetPpuAndLoadTiles_OnNonzero2: sta PPUDATA ; CPU:$C319 PRG:4319 8D 07 20 dec Zp21 ; CPU:$C31C PRG:431C C6 21 bne ResetPpuAndLoadTiles_OnNonzero2 ; CPU:$C31E PRG:431E D0 F9 lda Zp19 ; CPU:$C320 PRG:4320 A5 19 clc ; CPU:$C322 PRG:4322 18 adc #$20 ; CPU:$C323 PRG:4323 69 20 sta Zp19 ; CPU:$C325 PRG:4325 85 19 bcc ResetPpuAndLoadTiles_Loop ; CPU:$C327 PRG:4327 90 02 inc Zp1A ; CPU:$C329 PRG:4329 E6 1A ; ----------------------------------------------------------------------------- ; Routine: ResetPpuAndLoadTiles_Loop ; Global: Branch target inside ResetPpuAndLoadTiles: taken when the loop repeats. ; Local: Part of ResetPpuAndLoadTiles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetPpuAndLoadTiles_Loop: dey ; CPU:$C32B PRG:432B 88 bne ResetPpuAndLoadTiles_OnNonzero ; CPU:$C32C PRG:432C D0 DA lda #$3A ; CPU:$C32E PRG:432E A9 3A sta Zp19 ; CPU:$C330 PRG:4330 85 19 lda #$21 ; CPU:$C332 PRG:4332 A9 21 sta Zp1A ; CPU:$C334 PRG:4334 85 1A jsr Sub_C5D2 ; CPU:$C336 PRG:4336 20 D2 C5 ; ---- data $C339-$C33D (5 bytes) ---- .byte $A9, $00, $9D, $38, $03 ; CPU:$C339 PRG:4339 A9 00 9D 38 03 ; ----------------------------------------------------------------------------- ; Routine: ResetPpuAndLoadTiles_Loop2 ; Global: Branch target inside ResetPpuAndLoadTiles: taken when Loop2. ; Local: Part of ResetPpuAndLoadTiles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetPpuAndLoadTiles_Loop2: lda Zp6F ; CPU:$C33E PRG:433E A5 6F beq ResetPpuAndLoadTiles_Loop3 ; CPU:$C340 PRG:4340 F0 3B lda PPUSTATUS ; CPU:$C342 PRG:4342 AD 02 20 lda Zp01 ; CPU:$C345 PRG:4345 A5 01 ora #$04 ; CPU:$C347 PRG:4347 09 04 sta PPUCTRL ; CPU:$C349 PRG:4349 8D 00 20 lda #$24 ; CPU:$C34C PRG:434C A9 24 sta PPUADDR ; CPU:$C34E PRG:434E 8D 06 20 lda #$00 ; CPU:$C351 PRG:4351 A9 00 sta PPUADDR ; CPU:$C353 PRG:4353 8D 06 20 tay ; CPU:$C356 PRG:4356 A8 ; ----------------------------------------------------------------------------- ; Routine: ResetPpuAndLoadTiles_OnCarryClear ; Global: Branch target inside ResetPpuAndLoadTiles: taken when the addition or subtraction did not carry. ; Local: Part of ResetPpuAndLoadTiles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetPpuAndLoadTiles_OnCarryClear: lda $C697,y ; CPU:$C357 PRG:4357 B9 97 C6 sta PPUDATA ; CPU:$C35A PRG:435A 8D 07 20 iny ; CPU:$C35D PRG:435D C8 cpy #$1E ; CPU:$C35E PRG:435E C0 1E bcc ResetPpuAndLoadTiles_OnCarryClear ; CPU:$C360 PRG:4360 90 F5 ldx #$C0 ; CPU:$C362 PRG:4362 A2 C0 ldy #$55 ; CPU:$C364 PRG:4364 A0 55 ; ----------------------------------------------------------------------------- ; Routine: ResetPpuAndLoadTiles_OnNonzero3 ; Global: Branch target inside ResetPpuAndLoadTiles: taken when OnNonzero3. ; Local: Part of ResetPpuAndLoadTiles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetPpuAndLoadTiles_OnNonzero3: lda PPUSTATUS ; CPU:$C366 PRG:4366 AD 02 20 lda #$27 ; CPU:$C369 PRG:4369 A9 27 sta PPUADDR ; CPU:$C36B PRG:436B 8D 06 20 stx PPUADDR ; CPU:$C36E PRG:436E 8E 06 20 sty PPUDATA ; CPU:$C371 PRG:4371 8C 07 20 txa ; CPU:$C374 PRG:4374 8A clc ; CPU:$C375 PRG:4375 18 adc #$08 ; CPU:$C376 PRG:4376 69 08 tax ; CPU:$C378 PRG:4378 AA cmp #$F8 ; CPU:$C379 PRG:4379 C9 F8 bne ResetPpuAndLoadTiles_OnNonzero3 ; CPU:$C37B PRG:437B D0 E9 ; ----------------------------------------------------------------------------- ; Routine: ResetPpuAndLoadTiles_Loop3 ; Global: Branch target inside ResetPpuAndLoadTiles: taken when Loop3. ; Local: Part of ResetPpuAndLoadTiles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetPpuAndLoadTiles_Loop3: lda #$02 ; CPU:$C37D PRG:437D A9 02 jsr ClearSpriteSlots ; CPU:$C37F PRG:437F 20 28 92 jsr Sub_CD59 ; CPU:$C382 PRG:4382 20 59 CD inc Zp6C ; CPU:$C385 PRG:4385 E6 6C lda $05E5 ; CPU:$C387 PRG:4387 AD E5 05 bne ResetPpuAndLoadTiles_Loop4 ; CPU:$C38A PRG:438A D0 19 lda #$03 ; CPU:$C38C PRG:438C A9 03 jsr BankedCall ; CPU:$C38E PRG:438E 20 04 80 lda #$01 ; CPU:$C391 PRG:4391 A9 01 sta a:$00DD ; CPU:$C393 PRG:4393 8D DD 00 lda Zp73 ; CPU:$C396 PRG:4396 A5 73 sta a:$00DE ; CPU:$C398 PRG:4398 8D DE 00 lda #$05 ; CPU:$C39B PRG:439B A9 05 jsr BankedCall ; CPU:$C39D PRG:439D 20 04 80 lda #$00 ; CPU:$C3A0 PRG:43A0 A9 00 sta a:$00DD ; CPU:$C3A2 PRG:43A2 8D DD 00 ; ----------------------------------------------------------------------------- ; Routine: ResetPpuAndLoadTiles_Loop4 ; Global: Branch target inside ResetPpuAndLoadTiles: taken when Loop4. ; Local: Part of ResetPpuAndLoadTiles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetPpuAndLoadTiles_Loop4: lda #$88 ; CPU:$C3A5 PRG:43A5 A9 88 sta Zp01 ; CPU:$C3A7 PRG:43A7 85 01 lda Zp02 ; CPU:$C3A9 PRG:43A9 A5 02 ora #$18 ; CPU:$C3AB PRG:43AB 09 18 sta Zp02 ; CPU:$C3AD PRG:43AD 85 02 lda Zp6F ; CPU:$C3AF PRG:43AF A5 6F beq ResetPpuAndLoadTiles_Loop5 ; CPU:$C3B1 PRG:43B1 F0 04 lda #$0C ; CPU:$C3B3 PRG:43B3 A9 0C sta Zp03 ; CPU:$C3B5 PRG:43B5 85 03 ; ----------------------------------------------------------------------------- ; Routine: ResetPpuAndLoadTiles_Loop5 ; Global: Branch target inside ResetPpuAndLoadTiles: taken when Loop5. ; Local: Part of ResetPpuAndLoadTiles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetPpuAndLoadTiles_Loop5: lda Zp71 ; CPU:$C3B7 PRG:43B7 A5 71 cmp #$01 ; CPU:$C3B9 PRG:43B9 C9 01 beq ResetPpuAndLoadTiles_Loop6 ; CPU:$C3BB PRG:43BB F0 06 lda $05E5 ; CPU:$C3BD PRG:43BD AD E5 05 bne ResetPpuAndLoadTiles_Loop6 ; CPU:$C3C0 PRG:43C0 D0 01 rts ; CPU:$C3C2 PRG:43C2 60 ; ----------------------------------------------------------------------------- ; Routine: ResetPpuAndLoadTiles_Loop6 ; Global: Branch target inside ResetPpuAndLoadTiles: taken when Loop6. ; Local: Part of ResetPpuAndLoadTiles. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetPpuAndLoadTiles_Loop6: lda #$06 ; CPU:$C3C3 PRG:43C3 A9 06 sta Zp6C ; CPU:$C3C5 PRG:43C5 85 6C rts ; CPU:$C3C7 PRG:43C7 60 ; ----------------------------------------------------------------------------- ; Routine: SetVramPointer ; Global: Points the VRAM pointer at the tile set. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetVramPointer: lda #$87 ; CPU:$C3C8 PRG:43C8 A9 87 sta Zp19 ; CPU:$C3CA PRG:43CA 85 19 lda #$21 ; CPU:$C3CC PRG:43CC A9 21 sta Zp1A ; CPU:$C3CE PRG:43CE 85 1A lda $C6D0 ; CPU:$C3D0 PRG:43D0 AD D0 C6 sta Zp17 ; CPU:$C3D3 PRG:43D3 85 17 lda $C6D1 ; CPU:$C3D5 PRG:43D5 AD D1 C6 sta Zp18 ; CPU:$C3D8 PRG:43D8 85 18 lda Zp6F ; CPU:$C3DA PRG:43DA A5 6F beq SetVramPointer_Loop ; CPU:$C3DC PRG:43DC F0 04 dec Zp19 ; CPU:$C3DE PRG:43DE C6 19 dec Zp19 ; CPU:$C3E0 PRG:43E0 C6 19 ; ----------------------------------------------------------------------------- ; Routine: SetVramPointer_Loop ; Global: Branch target inside SetVramPointer: taken when the loop repeats. ; Local: Part of SetVramPointer. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetVramPointer_Loop: jsr Sub_85A7 ; CPU:$C3E2 PRG:43E2 20 A7 85 lda #$D9 ; CPU:$C3E5 PRG:43E5 A9 D9 sta Zp19 ; CPU:$C3E7 PRG:43E7 85 19 lda #$23 ; CPU:$C3E9 PRG:43E9 A9 23 sta Zp1A ; CPU:$C3EB PRG:43EB 85 1A lda $C6D2 ; CPU:$C3ED PRG:43ED AD D2 C6 sta Zp17 ; CPU:$C3F0 PRG:43F0 85 17 lda $C6D3 ; CPU:$C3F2 PRG:43F2 AD D3 C6 sta Zp18 ; CPU:$C3F5 PRG:43F5 85 18 jsr Sub_85A7 ; CPU:$C3F7 PRG:43F7 20 A7 85 lda #$8C ; CPU:$C3FA PRG:43FA A9 8C sta Zp19 ; CPU:$C3FC PRG:43FC 85 19 lda #$21 ; CPU:$C3FE PRG:43FE A9 21 sta Zp1A ; CPU:$C400 PRG:4400 85 1A lda Zp6F ; CPU:$C402 PRG:4402 A5 6F beq SetVramPointer_Loop2 ; CPU:$C404 PRG:4404 F0 04 dec Zp19 ; CPU:$C406 PRG:4406 C6 19 dec Zp19 ; CPU:$C408 PRG:4408 C6 19 ; ----------------------------------------------------------------------------- ; Routine: SetVramPointer_Loop2 ; Global: Branch target inside SetVramPointer: taken when Loop2. ; Local: Part of SetVramPointer. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetVramPointer_Loop2: jsr Sub_C5D2 ; CPU:$C40A PRG:440A 20 D2 C5 ; ---- data $C40D-$C413 (7 bytes) ---- .byte $A5, $6F, $F0, $03, $20, $20, $C4 ; CPU:$C40D PRG:440D A5 6F F0 03 20 20 C4 ; ----------------------------------------------------------------------------- ; Routine: ClearSpriteEntry ; Global: Clears one entry of the sprite table. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ClearSpriteEntry: lda #$00 ; CPU:$C414 PRG:4414 A9 00 sta $0338,x ; CPU:$C416 PRG:4416 9D 38 03 inc Zp6C ; CPU:$C419 PRG:4419 E6 6C lda #$3C ; CPU:$C41B PRG:441B A9 3C sta Zp56 ; CPU:$C41D PRG:441D 85 56 rts ; CPU:$C41F PRG:441F 60 ; ---- data $C420-$C455 (54 bytes) ---- .byte $A9, $95, $85, $19, $A9, $21, $85, $1A, $AD, $D0, $C6, $85, $17, $AD, $D1, $C6 ; CPU:$C420 PRG:4420 A9 95 85 19 A9 21 85 1A AD D0 C6 85 17 AD D1 C6 .byte $85, $18, $20, $A7, $85, $A9, $DD, $85, $19, $A9, $23, $85, $1A, $AD, $D2, $C6 ; CPU:$C430 PRG:4430 85 18 20 A7 85 A9 DD 85 19 A9 23 85 1A AD D2 C6 .byte $85, $17, $AD, $D3, $C6, $85, $18, $20, $A7, $85, $A9, $9A, $85, $19, $A9, $21 ; CPU:$C440 PRG:4440 85 17 AD D3 C6 85 18 20 A7 85 A9 9A 85 19 A9 21 .byte $85, $1A, $20, $FE, $C5, $60 ; CPU:$C450 PRG:4450 85 1A 20 FE C5 60 ; ----------------------------------------------------------------------------- ; Routine: TickStageDelay ; Global: Counts the delay between two stage script steps. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickStageDelay: lda NewButton1 ; CPU:$C456 PRG:4456 A5 2A and #$10 ; CPU:$C458 PRG:4458 29 10 bne TickStageDelay_Loop ; CPU:$C45A PRG:445A D0 04 dec Zp56 ; CPU:$C45C PRG:445C C6 56 bne TickStageDelay_Loop2 ; CPU:$C45E PRG:445E D0 08 ; ----------------------------------------------------------------------------- ; Routine: TickStageDelay_Loop ; Global: Branch target inside TickStageDelay: taken when the loop repeats. ; Local: Part of TickStageDelay. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickStageDelay_Loop: lda #$06 ; CPU:$C460 PRG:4460 A9 06 sta Zp6C ; CPU:$C462 PRG:4462 85 6C lda #$00 ; CPU:$C464 PRG:4464 A9 00 sta Zp56 ; CPU:$C466 PRG:4466 85 56 ; ----------------------------------------------------------------------------- ; Routine: TickStageDelay_Loop2 ; Global: Branch target inside TickStageDelay: taken when Loop2. ; Local: Part of TickStageDelay. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickStageDelay_Loop2: rts ; CPU:$C468 PRG:4468 60 ; ---- data $C469-$C504 (156 bytes) ---- .byte $A5, $2A, $F0, $15, $A6, $58, $30, $12, $BD, $99, $C4, $C5, $2A, $D0, $0B, $E6 ; CPU:$C469 PRG:4469 A5 2A F0 15 A6 58 30 12 BD 99 C4 C5 2A D0 0B E6 .byte $58, $A5, $58, $C9, $04, $90, $02, $E6, $6C, $60, $A9, $FF, $85, $58, $A5, $2A ; CPU:$C479 PRG:4479 58 A5 58 C9 04 90 02 E6 6C 60 A9 FF 85 58 A5 2A .byte $29, $10, $F0, $F5, $A9, $00, $85, $3E, $20, $1B, $98, $A9, $06, $85, $6C, $60 ; CPU:$C489 PRG:4489 29 10 F0 F5 A9 00 85 3E 20 1B 98 A9 06 85 6C 60 .byte $08, $01, $04, $02, $A0, $05, $84, $20, $A5, $2A, $29, $10, $F0, $03, $E6, $6C ; CPU:$C499 PRG:4499 08 01 04 02 A0 05 84 20 A5 2A 29 10 F0 03 E6 6C .byte $60, $A5, $2A, $29, $80, $F0, $0C, $E6, $5B, $A5, $5B, $C5, $20, $90, $04, $A9 ; CPU:$C4A9 PRG:44A9 60 A5 2A 29 80 F0 0C E6 5B A5 5B C5 20 90 04 A9 .byte $00, $85, $5B, $A5, $2A, $29, $40, $F0, $0C, $E6, $5A, $A5, $5A, $C9, $04, $90 ; CPU:$C4B9 PRG:44B9 00 85 5B A5 2A 29 40 F0 0C E6 5A A5 5A C9 04 90 .byte $04, $A9, $00, $85, $5A, $A9, $8C, $85, $19, $A9, $21, $85, $1A, $A5, $6F, $F0 ; CPU:$C4C9 PRG:44C9 04 A9 00 85 5A A9 8C 85 19 A9 21 85 1A A5 6F F0 .byte $04, $C6, $19, $C6, $19, $20, $D2, $C5, $A9, $00, $9D, $38, $03, $60, $A5, $2A ; CPU:$C4D9 PRG:44D9 04 C6 19 C6 19 20 D2 C5 A9 00 9D 38 03 60 A5 2A .byte $29, $10, $F0, $17, $A9, $00, $85, $3E, $20, $88, $81, $A5, $5A, $85, $5C, $A5 ; CPU:$C4E9 PRG:44E9 29 10 F0 17 A9 00 85 3E 20 88 81 A5 5A 85 5C A5 .byte $5B, $85, $5D, $A9, $09, $85, $6A, $A9, $05, $85, $6C, $60 ; CPU:$C4F9 PRG:44F9 5B 85 5D A9 09 85 6A A9 05 85 6C 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateStageMode ; Global: Updates the mode the stage script is in. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateStageMode: lda Zp71 ; CPU:$C505 PRG:4505 A5 71 cmp #$01 ; CPU:$C507 PRG:4507 C9 01 beq UpdateStageMode_Loop5 ; CPU:$C509 PRG:4509 F0 50 lda #$08 ; CPU:$C50B PRG:450B A9 08 ldy Zp95 ; CPU:$C50D PRG:450D A4 95 beq UpdateStageMode_Loop ; CPU:$C50F PRG:450F F0 02 lda #$04 ; CPU:$C511 PRG:4511 A9 04 ; ----------------------------------------------------------------------------- ; Routine: UpdateStageMode_Loop ; Global: Branch target inside UpdateStageMode: taken when the loop repeats. ; Local: Part of UpdateStageMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateStageMode_Loop: sta Zp1F ; CPU:$C513 PRG:4513 85 1F ldx #$00 ; CPU:$C515 PRG:4515 A2 00 ldy #$00 ; CPU:$C517 PRG:4517 A0 00 ; ----------------------------------------------------------------------------- ; Routine: UpdateStageMode_OnNonzero ; Global: Branch target inside UpdateStageMode: taken when the tested value is not zero. ; Local: Part of UpdateStageMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateStageMode_OnNonzero: lda $C5BA,y ; CPU:$C519 PRG:4519 B9 BA C5 sta $0338,x ; CPU:$C51C PRG:451C 9D 38 03 inx ; CPU:$C51F PRG:451F E8 iny ; CPU:$C520 PRG:4520 C8 dec Zp1F ; CPU:$C521 PRG:4521 C6 1F bne UpdateStageMode_OnNonzero ; CPU:$C523 PRG:4523 D0 F4 stx Zp37 ; CPU:$C525 PRG:4525 86 37 lda Zp6F ; CPU:$C527 PRG:4527 A5 6F beq UpdateStageMode_Loop2 ; CPU:$C529 PRG:4529 F0 06 dec $0338 ; CPU:$C52B PRG:452B CE 38 03 dec $0338 ; CPU:$C52E PRG:452E CE 38 03 ; ----------------------------------------------------------------------------- ; Routine: UpdateStageMode_Loop2 ; Global: Branch target inside UpdateStageMode: taken when Loop2. ; Local: Part of UpdateStageMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateStageMode_Loop2: lda Zp6F ; CPU:$C531 PRG:4531 A5 6F bne UpdateStageMode_Loop3 ; CPU:$C533 PRG:4533 D0 0F lda #$3A ; CPU:$C535 PRG:4535 A9 3A sta Zp19 ; CPU:$C537 PRG:4537 85 19 lda #$21 ; CPU:$C539 PRG:4539 A9 21 sta Zp1A ; CPU:$C53B PRG:453B 85 1A jsr Sub_C5D2 ; CPU:$C53D PRG:453D 20 D2 C5 ; ---- data $C540-$C543 (4 bytes) ---- .byte $A9, $01, $85, $96 ; CPU:$C540 PRG:4540 A9 01 85 96 ; ----------------------------------------------------------------------------- ; Routine: UpdateStageMode_Loop3 ; Global: Branch target inside UpdateStageMode: taken when Loop3. ; Local: Part of UpdateStageMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateStageMode_Loop3: lda Zp96 ; CPU:$C544 PRG:4544 A5 96 bne UpdateStageMode_Loop4 ; CPU:$C546 PRG:4546 D0 0E ldy #$08 ; CPU:$C548 PRG:4548 A0 08 ; ----------------------------------------------------------------------------- ; Routine: UpdateStageMode_OnCarryClear ; Global: Branch target inside UpdateStageMode: taken when the addition or subtraction did not carry. ; Local: Part of UpdateStageMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateStageMode_OnCarryClear: lda $C5BA,y ; CPU:$C54A PRG:454A B9 BA C5 sta $0338,x ; CPU:$C54D PRG:454D 9D 38 03 inx ; CPU:$C550 PRG:4550 E8 iny ; CPU:$C551 PRG:4551 C8 cpy #$10 ; CPU:$C552 PRG:4552 C0 10 bcc UpdateStageMode_OnCarryClear ; CPU:$C554 PRG:4554 90 F4 ; ----------------------------------------------------------------------------- ; Routine: UpdateStageMode_Loop4 ; Global: Branch target inside UpdateStageMode: taken when Loop4. ; Local: Part of UpdateStageMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateStageMode_Loop4: lda #$00 ; CPU:$C556 PRG:4556 A9 00 sta $0338,x ; CPU:$C558 PRG:4558 9D 38 03 ; ----------------------------------------------------------------------------- ; Routine: UpdateStageMode_Loop5 ; Global: Branch target inside UpdateStageMode: taken when Loop5. ; Local: Part of UpdateStageMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateStageMode_Loop5: lda Zp5A ; CPU:$C55B PRG:455B A5 5A asl a ; CPU:$C55D PRG:455D 0A tax ; CPU:$C55E PRG:455E AA lda $F45C,x ; CPU:$C55F PRG:455F BD 5C F4 sta Zp39 ; CPU:$C562 PRG:4562 85 39 lda $F45D,x ; CPU:$C564 PRG:4564 BD 5D F4 sta Zp3A ; CPU:$C567 PRG:4567 85 3A lda Zp5C ; CPU:$C569 PRG:4569 A5 5C asl a ; CPU:$C56B PRG:456B 0A tax ; CPU:$C56C PRG:456C AA lda $F45C,x ; CPU:$C56D PRG:456D BD 5C F4 sta Zp3B ; CPU:$C570 PRG:4570 85 3B lda $F45D,x ; CPU:$C572 PRG:4572 BD 5D F4 sta Zp3C ; CPU:$C575 PRG:4575 85 3C ldx Zp5B ; CPU:$C577 PRG:4577 A6 5B lda $F875,x ; CPU:$C579 PRG:4579 BD 75 F8 sta Zp35 ; CPU:$C57C PRG:457C 85 35 ldx Zp5D ; CPU:$C57E PRG:457E A6 5D lda $F875,x ; CPU:$C580 PRG:4580 BD 75 F8 sta ZpCB ; CPU:$C583 PRG:4583 85 CB lda #$00 ; CPU:$C585 PRG:4585 A9 00 sta Zp6C ; CPU:$C587 PRG:4587 85 6C lda Zp71 ; CPU:$C589 PRG:4589 A5 71 cmp #$02 ; CPU:$C58B PRG:458B C9 02 beq UpdateStageMode_Loop7 ; CPU:$C58D PRG:458D F0 10 lda #$00 ; CPU:$C58F PRG:458F A9 00 sta GameMode ; CPU:$C591 PRG:4591 85 6A lda $05E5 ; CPU:$C593 PRG:4593 AD E5 05 beq UpdateStageMode_Loop6 ; CPU:$C596 PRG:4596 F0 06 jsr Sub_C6B7 ; CPU:$C598 PRG:4598 20 B7 C6 jsr ClearActorSlots ; CPU:$C59B PRG:459B 20 4F BB ; ----------------------------------------------------------------------------- ; Routine: UpdateStageMode_Loop6 ; Global: Branch target inside UpdateStageMode: taken when Loop6. ; Local: Part of UpdateStageMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateStageMode_Loop6: rts ; CPU:$C59E PRG:459E 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateStageMode_Loop7 ; Global: Branch target inside UpdateStageMode: taken when Loop7. ; Local: Part of UpdateStageMode. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateStageMode_Loop7: inc GameMode ; CPU:$C59F PRG:459F E6 6A rts ; CPU:$C5A1 PRG:45A1 60 ; ---- data $C5A2-$C5D1 (48 bytes) ---- ; referenced by `lda $C5BA,y` at $C519 (operand $C5BA falls inside this region) ; referenced by `lda $C5BA,y` at $C54A (operand $C5BA falls inside this region) .byte $A6, $37, $A0, $00, $B9, $CA, $C5, $9D, $38, $03, $E8, $C8, $C0, $08, $90, $F4 ; CPU:$C5A2 PRG:45A2 A6 37 A0 00 B9 CA C5 9D 38 03 E8 C8 C0 08 90 F4 .byte $A9, $00, $9D, $38, $03, $86, $37, $60, $67, $21, $25, $F8, $D9, $23, $20, $F8 ; CPU:$C5B2 PRG:45B2 A9 00 9D 38 03 86 37 60 67 21 25 F8 D9 23 20 F8 .byte $75, $21, $25, $F8, $DD, $23, $20, $F8, $55, $21, $25, $F8, $DD, $23, $20, $F8 ; CPU:$C5C2 PRG:45C2 75 21 25 F8 DD 23 20 F8 55 21 25 F8 DD 23 20 F8 ; ----------------------------------------------------------------------------- ; Routine: Sub_C5D2 ; Global: Branch target inside Sub: taken when C5D2. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_C5D2: lda #$03 ; CPU:$C5D2 PRG:45D2 A9 03 sta $05C6 ; CPU:$C5D4 PRG:45D4 8D C6 05 lda #$01 ; CPU:$C5D7 PRG:45D7 A9 01 sta $05C7 ; CPU:$C5D9 PRG:45D9 8D C7 05 ldy Zp5A ; CPU:$C5DC PRG:45DC A4 5A lda $F1D7,y ; CPU:$C5DE PRG:45DE B9 D7 F1 sta $05C8 ; CPU:$C5E1 PRG:45E1 8D C8 05 lda #$D4 ; CPU:$C5E4 PRG:45E4 A9 D4 sta $05C9 ; CPU:$C5E6 PRG:45E6 8D C9 05 ldy Zp5B ; CPU:$C5E9 PRG:45E9 A4 5B lda $F1D7,y ; CPU:$C5EB PRG:45EB B9 D7 F1 sta $05CA ; CPU:$C5EE PRG:45EE 8D CA 05 lda $C6D4 ; CPU:$C5F1 PRG:45F1 AD D4 C6 sta Zp17 ; CPU:$C5F4 PRG:45F4 85 17 lda $C6D5 ; CPU:$C5F6 PRG:45F6 AD D5 C6 sta Zp18 ; CPU:$C5F9 PRG:45F9 85 18 jmp Sub_85A7 ; CPU:$C5FB PRG:45FB 4C A7 85 ; ---- data $C5FE-$C629 (44 bytes) ---- .byte $A9, $03, $8D, $CB, $05, $A9, $01, $8D, $CC, $05, $A4, $5C, $B9, $D7, $F1, $8D ; CPU:$C5FE PRG:45FE A9 03 8D CB 05 A9 01 8D CC 05 A4 5C B9 D7 F1 8D .byte $CD, $05, $A9, $D4, $8D, $CE, $05, $A4, $5D, $B9, $D7, $F1, $8D, $CF, $05, $AD ; CPU:$C60E PRG:460E CD 05 A9 D4 8D CE 05 A4 5D B9 D7 F1 8D CF 05 AD .byte $D6, $C6, $85, $17, $AD, $D7, $C6, $85, $18, $4C, $A7, $85 ; CPU:$C61E PRG:461E D6 C6 85 17 AD D7 C6 85 18 4C A7 85 ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering ; Global: Turns the PPU off. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering: lda #$00 ; CPU:$C62A PRG:462A A9 00 sta PPUCTRL ; CPU:$C62C PRG:462C 8D 00 20 lda Zp02 ; CPU:$C62F PRG:462F A5 02 and #$E7 ; CPU:$C631 PRG:4631 29 E7 sta PPUMASK ; CPU:$C633 PRG:4633 8D 01 20 sta Zp02 ; CPU:$C636 PRG:4636 85 02 jsr ClearOamShadow ; CPU:$C638 PRG:4638 20 88 81 ldx Zp6F ; CPU:$C63B PRG:463B A6 6F lda $C6B5,x ; CPU:$C63D PRG:463D BD B5 C6 sta Zp2E ; CPU:$C640 PRG:4640 85 2E lda #$00 ; CPU:$C642 PRG:4642 A9 00 jsr BankedCall ; CPU:$C644 PRG:4644 20 04 80 lda Zp6F ; CPU:$C647 PRG:4647 A5 6F asl a ; CPU:$C649 PRG:4649 0A tax ; CPU:$C64A PRG:464A AA lda $F6A7,x ; CPU:$C64B PRG:464B BD A7 F6 sta Zp11 ; CPU:$C64E PRG:464E 85 11 lda $F6A8,x ; CPU:$C650 PRG:4650 BD A8 F6 sta Zp12 ; CPU:$C653 PRG:4653 85 12 jsr Sub_848C ; CPU:$C655 PRG:4655 20 8C 84 ldx Zp72 ; CPU:$C658 PRG:4658 A6 72 lda Zp6F ; CPU:$C65A PRG:465A A5 6F bne DisablePpuRendering_Loop ; CPU:$C65C PRG:465C D0 13 lda PPUSTATUS ; CPU:$C65E PRG:465E AD 02 20 lda #$21 ; CPU:$C661 PRG:4661 A9 21 sta PPUADDR ; CPU:$C663 PRG:4663 8D 06 20 lda #$3C ; CPU:$C666 PRG:4666 A9 3C sta PPUADDR ; CPU:$C668 PRG:4668 8D 06 20 lda $F1D6,x ; CPU:$C66B PRG:466B BD D6 F1 sta PPUDATA ; CPU:$C66E PRG:466E 8D 07 20 ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering_Loop ; Global: Branch target inside DisablePpuRendering: taken when the loop repeats. ; Local: Part of DisablePpuRendering. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering_Loop: lda $F875,x ; CPU:$C671 PRG:4671 BD 75 F8 sta Zp35 ; CPU:$C674 PRG:4674 85 35 ldx Zp5D ; CPU:$C676 PRG:4676 A6 5D lda $F875,x ; CPU:$C678 PRG:4678 BD 75 F8 sta ZpCB ; CPU:$C67B PRG:467B 85 CB lda #$00 ; CPU:$C67D PRG:467D A9 00 sta Zp4B ; CPU:$C67F PRG:467F 85 4B lda #$04 ; CPU:$C681 PRG:4681 A9 04 sta Zp4C ; CPU:$C683 PRG:4683 85 4C lda Zp71 ; CPU:$C685 PRG:4685 A5 71 beq DisablePpuRendering_Loop2 ; CPU:$C687 PRG:4687 F0 0B ldx #$00 ; CPU:$C689 PRG:4689 A2 00 ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering_OnCarryClear ; Global: Branch target inside DisablePpuRendering: taken when the addition or subtraction did not carry. ; Local: Part of DisablePpuRendering. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering_OnCarryClear: txa ; CPU:$C68B PRG:468B 8A sta $05DA,x ; CPU:$C68C PRG:468C 9D DA 05 inx ; CPU:$C68F PRG:468F E8 cpx #$05 ; CPU:$C690 PRG:4690 E0 05 bcc DisablePpuRendering_OnCarryClear ; CPU:$C692 PRG:4692 90 F7 ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering_Loop2 ; Global: Branch target inside DisablePpuRendering: taken when Loop2. ; Local: Part of DisablePpuRendering. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering_Loop2: inc GameMode ; CPU:$C694 PRG:4694 E6 6A rts ; CPU:$C696 PRG:4696 60 ; ---- data $C697-$C6B6 (32 bytes) ---- ; referenced by `lda $C697,y` at $C357 (operand $C697 falls inside this region) ; referenced by `lda $C6B5,x` at $C63D (operand $C6B5 falls inside this region) .byte $FF, $24, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22 ; CPU:$C697 PRG:4697 FF 24 21 22 21 22 21 22 21 22 21 22 21 22 21 22 .byte $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $10, $11 ; CPU:$C6A7 PRG:46A7 21 22 21 22 21 22 21 22 21 22 21 22 21 22 10 11 ; ----------------------------------------------------------------------------- ; Routine: Sub_C6B7 ; Global: Branch target inside Sub: taken when C6B7. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_C6B7: lda #$00 ; CPU:$C6B7 PRG:46B7 A9 00 tax ; CPU:$C6B9 PRG:46B9 AA ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering_OnCarryClear2 ; Global: Branch target inside DisablePpuRendering: taken when OnCarryClear2. ; Local: Part of DisablePpuRendering. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering_OnCarryClear2: sta Zp5E,x ; CPU:$C6BA PRG:46BA 95 5E inx ; CPU:$C6BC PRG:46BC E8 cpx #$0C ; CPU:$C6BD PRG:46BD E0 0C bcc DisablePpuRendering_OnCarryClear2 ; CPU:$C6BF PRG:46BF 90 F9 ldx #$00 ; CPU:$C6C1 PRG:46C1 A2 00 ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering_OnCarryClear3 ; Global: Branch target inside DisablePpuRendering: taken when OnCarryClear3. ; Local: Part of DisablePpuRendering. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering_OnCarryClear3: sta $0400,x ; CPU:$C6C3 PRG:46C3 9D 00 04 inx ; CPU:$C6C6 PRG:46C6 E8 cpx #$70 ; CPU:$C6C7 PRG:46C7 E0 70 bcc DisablePpuRendering_OnCarryClear3 ; CPU:$C6C9 PRG:46C9 90 F8 lda #$FF ; CPU:$C6CB PRG:46CB A9 FF sta Zp65 ; CPU:$C6CD PRG:46CD 85 65 rts ; CPU:$C6CF PRG:46CF 60 ; ---- data $C6D0-$C7E9 (282 bytes) ---- ; referenced by `lda $C6D0` at $C3D0 (operand $C6D0 falls inside this region) ; referenced by `lda $C6D1` at $C3D5 (operand $C6D1 falls inside this region) ; referenced by `lda $C6D2` at $C3ED (operand $C6D2 falls inside this region) ; referenced by `lda $C6D3` at $C3F2 (operand $C6D3 falls inside this region) ; referenced by `lda $C6D4` at $C5F1 (operand $C6D4 falls inside this region) ; referenced by `lda $C6D5` at $C5F6 (operand $C6D5 falls inside this region) .byte $37, $F8, $1B, $F8, $C6, $05, $CB, $05, $A5, $6C, $20, $73, $81, $E9, $C6, $24 ; CPU:$C6D0 PRG:46D0 37 F8 1B F8 C6 05 CB 05 A5 6C 20 73 81 E9 C6 24 .byte $C7, $7E, $C7, $3B, $B2, $7C, $B2, $D6, $B2, $A5, $95, $F0, $05, $A9, $03, $85 ; CPU:$C6E0 PRG:46E0 C7 7E C7 3B B2 7C B2 D6 B2 A5 95 F0 05 A9 03 85 .byte $6C, $60, $20, $52, $85, $29, $06, $85, $20, $A5, $5B, $0A, $0A, $0A, $18, $65 ; CPU:$C6F0 PRG:46F0 6C 60 20 52 85 29 06 85 20 A5 5B 0A 0A 0A 18 65 .byte $20, $AA, $BD, $BD, $F8, $85, $4E, $BD, $BE, $F8, $85, $4F, $A9, $00, $85, $56 ; CPU:$C700 PRG:4700 20 AA BD BD F8 85 4E BD BE F8 85 4F A9 00 85 56 .byte $85, $58, $E6, $6C, $A9, $00, $85, $34, $A2, $00, $8A, $9D, $DA, $05, $E8, $E0 ; CPU:$C710 PRG:4710 85 58 E6 6C A9 00 85 34 A2 00 8A 9D DA 05 E8 E0 .byte $05, $90, $F7, $60, $A5, $31, $6A, $B0, $01, $60, $A6, $56, $A4, $58, $B1, $4E ; CPU:$C720 PRG:4720 05 90 F7 60 A5 31 6A B0 01 60 A6 56 A4 58 B1 4E .byte $F0, $33, $9D, $00, $04, $85, $1B, $8A, $20, $BF, $84, $A5, $1B, $10, $0E, $A9 ; CPU:$C730 PRG:4730 F0 33 9D 00 04 85 1B 8A 20 BF 84 A5 1B 10 0E A9 .byte $0D, $85, $17, $A9, $F3, $85, $18, $A9, $01, $85, $1B, $D0, $0C, $0A, $AA, $BD ; CPU:$C740 PRG:4740 0D 85 17 A9 F3 85 18 A9 01 85 1B D0 0C 0A AA BD .byte $9E, $F2, $85, $17, $BD, $9F, $F2, $85, $18, $20, $8A, $85, $20, $E3, $84, $E6 ; CPU:$C750 PRG:4750 9E F2 85 17 BD 9F F2 85 18 20 8A 85 20 E3 84 E6 .byte $58, $E6, $56, $10, $C5, $A6, $36, $A9, $00, $9D, $00, $03, $E6, $58, $A5, $56 ; CPU:$C760 PRG:4760 58 E6 56 10 C5 A6 36 A9 00 9D 00 03 E6 58 A5 56 .byte $29, $F0, $18, $69, $10, $85, $56, $C9, $70, $90, $02, $E6, $6C, $60, $A5, $31 ; CPU:$C770 PRG:4770 29 F0 18 69 10 85 56 C9 70 90 02 E6 6C 60 A5 31 .byte $6A, $B0, $01, $60, $A5, $5B, $85, $5E, $A6, $5A, $86, $5F, $BD, $5A, $D4, $85 ; CPU:$C780 PRG:4780 6A B0 01 60 A5 5B 85 5E A6 5A 86 5F BD 5A D4 85 .byte $1B, $20, $86, $D4, $A6, $5B, $F0, $18, $86, $21, $20, $AF, $D4, $20, $8A, $85 ; CPU:$C790 PRG:4790 1B 20 86 D4 A6 5B F0 18 86 21 20 AF D4 20 8A 85 .byte $20, $E3, $84, $C6, $21, $A6, $21, $D0, $F1, $A6, $36, $A9, $00, $9D, $00, $03 ; CPU:$C7A0 PRG:47A0 20 E3 84 C6 21 A6 21 D0 F1 A6 36 A9 00 9D 00 03 .byte $A5, $5B, $18, $69, $07, $85, $11, $A9, $00, $85, $12, $20, $5D, $85, $A6, $6F ; CPU:$C7B0 PRG:47B0 A5 5B 18 69 07 85 11 A9 00 85 12 20 5D 85 A6 6F .byte $BD, $E8, $C7, $8D, $88, $03, $A9, $1C, $8D, $98, $03, $A2, $30, $BD, $00, $04 ; CPU:$C7C0 PRG:47C0 BD E8 C7 8D 88 03 A9 1C 8D 98 03 A2 30 BD 00 04 .byte $09, $40, $9D, $00, $04, $86, $65, $E6, $6C, $E6, $5E, $A5, $6F, $D0, $08, $A9 ; CPU:$C7D0 PRG:47D0 09 40 9D 00 04 86 65 E6 6C E6 5E A5 6F D0 08 A9 .byte $00, $85, $6C, $85, $6A, $85, $58, $60, $54, $38 ; CPU:$C7E0 PRG:47E0 00 85 6C 85 6A 85 58 60 54 38 ; ----------------------------------------------------------------------------- ; Routine: Sub_C7EA ; Global: Branch target inside Sub: taken when C7EA. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_C7EA: lda Zp69 ; CPU:$C7EA PRG:47EA A5 69 bne DisablePpuRendering_Loop3 ; CPU:$C7EC PRG:47EC D0 11 ldx Zp5F ; CPU:$C7EE PRG:47EE A6 5F dex ; CPU:$C7F0 PRG:47F0 CA bmi DisablePpuRendering_Loop3 ; CPU:$C7F1 PRG:47F1 30 0C lda ButtonState1 ; CPU:$C7F3 PRG:47F3 A5 26 tay ; CPU:$C7F5 PRG:47F5 A8 cmp #$84 ; CPU:$C7F6 PRG:47F6 C9 84 beq DisablePpuRendering_Loop4 ; CPU:$C7F8 PRG:47F8 F0 06 tya ; CPU:$C7FA PRG:47FA 98 cmp #$44 ; CPU:$C7FB PRG:47FB C9 44 beq DisablePpuRendering_Loop4 ; CPU:$C7FD PRG:47FD F0 01 ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering_Loop3 ; Global: Branch target inside DisablePpuRendering: taken when Loop3. ; Local: Part of DisablePpuRendering. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering_Loop3: rts ; CPU:$C7FF PRG:47FF 60 ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering_Loop4 ; Global: Branch target inside DisablePpuRendering: taken when Loop4. ; Local: Part of DisablePpuRendering. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering_Loop4: lda Zp64 ; CPU:$C800 PRG:4800 A5 64 beq DisablePpuRendering_Loop5 ; CPU:$C802 PRG:4802 F0 09 lda $0358 ; CPU:$C804 PRG:4804 AD 58 03 beq DisablePpuRendering_Loop6 ; CPU:$C807 PRG:4807 F0 14 lda #$00 ; CPU:$C809 PRG:4809 A9 00 sta Zp64 ; CPU:$C80B PRG:480B 85 64 ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering_Loop5 ; Global: Branch target inside DisablePpuRendering: taken when Loop5. ; Local: Part of DisablePpuRendering. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering_Loop5: ldx Zp65 ; CPU:$C80D PRG:480D A6 65 bmi DisablePpuRendering_Loop6 ; CPU:$C80F PRG:480F 30 0C lda $0400,x ; CPU:$C811 PRG:4811 BD 00 04 and #$BF ; CPU:$C814 PRG:4814 29 BF sta $0400,x ; CPU:$C816 PRG:4816 9D 00 04 lda #$FF ; CPU:$C819 PRG:4819 A9 FF sta Zp65 ; CPU:$C81B PRG:481B 85 65 ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering_Loop6 ; Global: Branch target inside DisablePpuRendering: taken when Loop6. ; Local: Part of DisablePpuRendering. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering_Loop6: lda #$01 ; CPU:$C81D PRG:481D A9 01 sta Zp69 ; CPU:$C81F PRG:481F 85 69 lda #$00 ; CPU:$C821 PRG:4821 A9 00 sta Zp68 ; CPU:$C823 PRG:4823 85 68 lda #$06 ; CPU:$C825 PRG:4825 A9 06 sta Zp11 ; CPU:$C827 PRG:4827 85 11 lda #$00 ; CPU:$C829 PRG:4829 A9 00 sta Zp12 ; CPU:$C82B PRG:482B 85 12 jsr Sub_855D ; CPU:$C82D PRG:482D 20 5D 85 lda Zp6F ; CPU:$C830 PRG:4830 A5 6F beq DisablePpuRendering_Loop7 ; CPU:$C832 PRG:4832 F0 05 lda #$28 ; CPU:$C834 PRG:4834 A9 28 sta $0388 ; CPU:$C836 PRG:4836 8D 88 03 ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering_Loop7 ; Global: Branch target inside DisablePpuRendering: taken when Loop7. ; Local: Part of DisablePpuRendering. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering_Loop7: rts ; CPU:$C839 PRG:4839 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_C83A ; Global: Branch target inside Sub: taken when C83A. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_C83A: lda FrameCounter ; CPU:$C83A PRG:483A A5 31 ror a ; CPU:$C83C PRG:483C 6A bcs DisablePpuRendering_Loop8 ; CPU:$C83D PRG:483D B0 01 rts ; CPU:$C83F PRG:483F 60 ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering_Loop8 ; Global: Branch target inside DisablePpuRendering: taken when Loop8. ; Local: Part of DisablePpuRendering. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering_Loop8: lda Zp68 ; CPU:$C840 PRG:4840 A5 68 jsr DispatchByJumpTable ; CPU:$C842 PRG:4842 20 73 81 .byte $53, $C8 ; CPU:$C845 PRG:4845 53 C8 -- sre (ZpC8),y (undocumented; ca65 cannot encode) .byte $73, $C8 ; CPU:$C847 PRG:4847 73 C8 -- rra (ZpC8),y (undocumented; ca65 cannot encode) asl ZpC9,x ; CPU:$C849 PRG:4849 16 C9 inc $7AD4 ; CPU:$C84B PRG:484B EE D4 7A cmp #$EE ; CPU:$C84E PRG:484E C9 EE .byte $D4, $DB ; CPU:$C850 PRG:4850 D4 DB -- nop ZpDB,x (undocumented; ca65 cannot encode) cmp #$A9 ; CPU:$C852 PRG:4852 C9 A9 .byte $03, $20 ; CPU:$C854 PRG:4854 03 20 -- slo (Zp20,x) (undocumented; ca65 cannot encode) .byte $04, $80 ; CPU:$C856 PRG:4856 04 80 -- nop Zp80 (undocumented; ca65 cannot encode) lda #$01 ; CPU:$C858 PRG:4858 A9 01 sta a:$00DD ; CPU:$C85A PRG:485A 8D DD 00 lda #$06 ; CPU:$C85D PRG:485D A9 06 sta a:$00DE ; CPU:$C85F PRG:485F 8D DE 00 lda #$05 ; CPU:$C862 PRG:4862 A9 05 jsr BankedCall ; CPU:$C864 PRG:4864 20 04 80 lda #$00 ; CPU:$C867 PRG:4867 A9 00 sta a:$00DD ; CPU:$C869 PRG:4869 8D DD 00 inc Zp68 ; CPU:$C86C PRG:486C E6 68 lda #$F0 ; CPU:$C86E PRG:486E A9 F0 sta Zp56 ; CPU:$C870 PRG:4870 85 56 rts ; CPU:$C872 PRG:4872 60 ; ---- data $C873-$CBC3 (849 bytes) ---- .byte $C6, $56, $D0, $0A, $20, $B6, $C8, $E6, $68, $A9, $00, $85, $56, $60, $A5, $31 ; CPU:$C873 PRG:4873 C6 56 D0 0A 20 B6 C8 E6 68 A9 00 85 56 60 A5 31 .byte $29, $04, $F0, $03, $4C, $B6, $C8, $A9, $23, $85, $1A, $A9, $C0, $85, $19, $A5 ; CPU:$C883 PRG:4883 29 04 F0 03 4C B6 C8 A9 23 85 1A A9 C0 85 19 A5 .byte $6F, $D0, $02, $E6, $19, $A9, $B7, $85, $17, $A9, $F8, $85, $18, $20, $A7, $85 ; CPU:$C893 PRG:4893 6F D0 02 E6 19 A9 B7 85 17 A9 F8 85 18 20 A7 85 .byte $A5, $19, $18, $69, $08, $85, $19, $C9, $F0, $90, $F2, $A6, $37, $A9, $00, $9D ; CPU:$C8A3 PRG:48A3 A5 19 18 69 08 85 19 C9 F0 90 F2 A6 37 A9 00 9D .byte $38, $03, $60, $A9, $68, $85, $17, $A9, $05, $85, $18, $A9, $23, $85, $1A, $A9 ; CPU:$C8B3 PRG:48B3 38 03 60 A9 68 85 17 A9 05 85 18 A9 23 85 1A A9 .byte $C0, $85, $19, $A0, $00, $84, $21, $A5, $6F, $D0, $04, $E6, $19, $E6, $21, $A9 ; CPU:$C8C3 PRG:48C3 C0 85 19 A0 00 84 21 A5 6F D0 04 E6 19 E6 21 A9 .byte $04, $99, $68, $05, $A9, $01, $C8, $99, $68, $05, $C8, $A9, $04, $85, $1F, $A6 ; CPU:$C8D3 PRG:48D3 04 99 68 05 A9 01 C8 99 68 05 C8 A9 04 85 1F A6 .byte $21, $BD, $E2, $04, $99, $68, $05, $C8, $E8, $C6, $1F, $D0, $F4, $20, $A7, $85 ; CPU:$C8E3 PRG:48E3 21 BD E2 04 99 68 05 C8 E8 C6 1F D0 F4 20 A7 85 .byte $A5, $17, $18, $69, $06, $85, $17, $90, $02, $E6, $18, $A5, $21, $18, $69, $08 ; CPU:$C8F3 PRG:48F3 A5 17 18 69 06 85 17 90 02 E6 18 A5 21 18 69 08 .byte $85, $21, $18, $69, $C0, $85, $19, $C9, $F0, $90, $C4, $A6, $37, $A9, $00, $9D ; CPU:$C903 PRG:4903 85 21 18 69 C0 85 19 C9 F0 90 C4 A6 37 A9 00 9D .byte $38, $03, $60, $A5, $56, $AA, $A8, $BD, $00, $04, $30, $04, $99, $00, $04, $C8 ; CPU:$C913 PRG:4913 38 03 60 A5 56 AA A8 BD 00 04 30 04 99 00 04 C8 .byte $E8, $BD, $00, $04, $D0, $F4, $86, $21, $A9, $00, $99, $00, $04, $C8, $C4, $21 ; CPU:$C923 PRG:4923 E8 BD 00 04 D0 F4 86 21 A9 00 99 00 04 C8 C4 21 .byte $90, $F8, $A6, $56, $86, $24, $A6, $24, $BD, $00, $04, $29, $07, $85, $1B, $0A ; CPU:$C933 PRG:4933 90 F8 A6 56 86 24 A6 24 BD 00 04 29 07 85 1B 0A .byte $AA, $BD, $9E, $F2, $85, $17, $BD, $9F, $F2, $85, $18, $A5, $24, $20, $BF, $84 ; CPU:$C943 PRG:4943 AA BD 9E F2 85 17 BD 9F F2 85 18 A5 24 20 BF 84 .byte $20, $8A, $85, $20, $E3, $84, $E6, $24, $A6, $24, $E4, $21, $90, $DA, $A6, $36 ; CPU:$C953 PRG:4953 20 8A 85 20 E3 84 E6 24 A6 24 E4 21 90 DA A6 36 .byte $A9, $00, $9D, $00, $03, $A5, $56, $18, $69, $10, $85, $56, $C9, $70, $90, $06 ; CPU:$C963 PRG:4963 A9 00 9D 00 03 A5 56 18 69 10 85 56 C9 70 90 06 .byte $E6, $68, $A9, $00, $85, $61, $60, $A9, $08, $85, $1F, $20, $52, $85, $A5, $3D ; CPU:$C973 PRG:4973 E6 68 A9 00 85 61 60 A9 08 85 1F 20 52 85 A5 3D .byte $2A, $2A, $29, $7F, $C9, $70, $B0, $30, $AA, $BD, $00, $04, $29, $07, $F0, $28 ; CPU:$C983 PRG:4983 2A 2A 29 7F C9 70 B0 30 AA BD 00 04 29 07 F0 28 .byte $86, $21, $20, $52, $85, $A5, $3D, $29, $03, $A8, $C8, $84, $1B, $98, $9D, $00 ; CPU:$C993 PRG:4993 86 21 20 52 85 A5 3D 29 03 A8 C8 84 1B 98 9D 00 .byte $04, $0A, $AA, $BD, $9E, $F2, $85, $17, $BD, $9F, $F2, $85, $18, $A5, $21, $20 ; CPU:$C9A3 PRG:49A3 04 0A AA BD 9E F2 85 17 BD 9F F2 85 18 A5 21 20 .byte $BF, $84, $20, $8A, $85, $20, $E3, $84, $C6, $1F, $D0, $BF, $A6, $36, $A9, $00 ; CPU:$C9B3 PRG:49B3 BF 84 20 8A 85 20 E3 84 C6 1F D0 BF A6 36 A9 00 .byte $9D, $00, $03, $CE, $98, $03, $CE, $98, $03, $AD, $98, $03, $C9, $F8, $90, $07 ; CPU:$C9C3 PRG:49C3 9D 00 03 CE 98 03 CE 98 03 AD 98 03 C9 F8 90 07 .byte $E6, $68, $A9, $00, $8D, $58, $03, $60, $A9, $00, $85, $69, $85, $68, $A9, $03 ; CPU:$C9D3 PRG:49D3 E6 68 A9 00 8D 58 03 60 A9 00 85 69 85 68 A9 03 .byte $20, $04, $80, $A9, $01, $8D, $DD, $00, $A5, $73, $8D, $DE, $00, $A9, $05, $20 ; CPU:$C9E3 PRG:49E3 20 04 80 A9 01 8D DD 00 A5 73 8D DE 00 A9 05 20 .byte $04, $80, $A9, $00, $8D, $DD, $00, $C6, $5F, $D0, $0B, $A5, $5E, $D0, $07, $20 ; CPU:$C9F3 PRG:49F3 04 80 A9 00 8D DD 00 C6 5F D0 0B A5 5E D0 07 20 .byte $86, $D4, $A9, $00, $F0, $2A, $A5, $5F, $29, $03, $AA, $A5, $5E, $D0, $03, $CA ; CPU:$CA03 PRG:4A03 86 D4 A9 00 F0 2A A5 5F 29 03 AA A5 5E D0 03 CA .byte $C6, $5F, $BD, $5A, $D4, $85, $1B, $A9, $05, $85, $21, $A5, $5E, $C5, $21, $B0 ; CPU:$CA13 PRG:4A13 C6 5F BD 5A D4 85 1B A9 05 85 21 A5 5E C5 21 B0 .byte $0F, $A6, $21, $20, $AF, $D4, $20, $8A, $85, $20, $E3, $84, $C6, $21, $D0, $EB ; CPU:$CA23 PRG:4A23 0F A6 21 20 AF D4 20 8A 85 20 E3 84 C6 21 D0 EB .byte $A6, $36, $A9, $00, $9D, $00, $03, $A5, $5E, $D0, $02, $E6, $5F, $60, $A5, $61 ; CPU:$CA33 PRG:4A33 A6 36 A9 00 9D 00 03 A5 5E D0 02 E6 5F 60 A5 61 .byte $20, $73, $81, $50, $CA, $76, $CA, $86, $CA, $AD, $CA, $07, $CB, $A9, $FF, $85 ; CPU:$CA43 PRG:4A43 20 73 81 50 CA 76 CA 86 CA AD CA 07 CB A9 FF 85 .byte $65, $A5, $6F, $D0, $03, $20, $57, $CB, $A5, $5A, $0A, $AA, $BD, $5C, $F4, $85 ; CPU:$CA53 PRG:4A53 65 A5 6F D0 03 20 57 CB A5 5A 0A AA BD 5C F4 85 .byte $39, $BD, $5D, $F4, $85, $3A, $A6, $5B, $BD, $75, $F8, $85, $35, $20, $59, $CD ; CPU:$CA63 PRG:4A63 39 BD 5D F4 85 3A A6 5B BD 75 F8 85 35 20 59 CD .byte $E6, $61, $60, $A5, $71, $C9, $02, $F0, $07, $A9, $00, $85, $61, $85, $60, $60 ; CPU:$CA73 PRG:4A73 E6 61 60 A5 71 C9 02 F0 07 A9 00 85 61 85 60 60 .byte $E6, $61, $60, $20, $52, $85, $29, $06, $85, $20, $A5, $5B, $0A, $0A, $0A, $18 ; CPU:$CA83 PRG:4A83 E6 61 60 20 52 85 29 06 85 20 A5 5B 0A 0A 0A 18 .byte $65, $20, $AA, $BD, $BD, $F8, $85, $4E, $BD, $BE, $F8, $85, $4F, $A9, $00, $85 ; CPU:$CA93 PRG:4A93 65 20 AA BD BD F8 85 4E BD BE F8 85 4F A9 00 85 .byte $56, $85, $58, $E6, $61, $A9, $00, $85, $34, $60, $A5, $31, $6A, $B0, $01, $60 ; CPU:$CAA3 PRG:4AA3 56 85 58 E6 61 A9 00 85 34 60 A5 31 6A B0 01 60 .byte $A6, $56, $A4, $58, $B1, $4E, $F0, $33, $9D, $00, $04, $85, $1B, $8A, $20, $BF ; CPU:$CAB3 PRG:4AB3 A6 56 A4 58 B1 4E F0 33 9D 00 04 85 1B 8A 20 BF .byte $84, $A5, $1B, $10, $0E, $A9, $0D, $85, $17, $A9, $F3, $85, $18, $A9, $01, $85 ; CPU:$CAC3 PRG:4AC3 84 A5 1B 10 0E A9 0D 85 17 A9 F3 85 18 A9 01 85 .byte $1B, $D0, $0C, $0A, $AA, $BD, $9E, $F2, $85, $17, $BD, $9F, $F2, $85, $18, $20 ; CPU:$CAD3 PRG:4AD3 1B D0 0C 0A AA BD 9E F2 85 17 BD 9F F2 85 18 20 .byte $8A, $85, $20, $E3, $84, $E6, $58, $E6, $56, $10, $C5, $A6, $36, $A9, $00, $9D ; CPU:$CAE3 PRG:4AE3 8A 85 20 E3 84 E6 58 E6 56 10 C5 A6 36 A9 00 9D .byte $00, $03, $E6, $58, $A5, $56, $29, $F0, $18, $69, $10, $85, $56, $C9, $70, $90 ; CPU:$CAF3 PRG:4AF3 00 03 E6 58 A5 56 29 F0 18 69 10 85 56 C9 70 90 .byte $02, $E6, $61, $60, $A5, $31, $6A, $B0, $01, $60, $A5, $5B, $85, $5E, $A6, $5A ; CPU:$CB03 PRG:4B03 02 E6 61 60 A5 31 6A B0 01 60 A5 5B 85 5E A6 5A .byte $86, $5F, $BD, $5A, $D4, $85, $1B, $20, $86, $D4, $A6, $5B, $F0, $18, $86, $21 ; CPU:$CB13 PRG:4B13 86 5F BD 5A D4 85 1B 20 86 D4 A6 5B F0 18 86 21 .byte $20, $AF, $D4, $20, $8A, $85, $20, $E3, $84, $C6, $21, $A6, $21, $D0, $F1, $A6 ; CPU:$CB23 PRG:4B23 20 AF D4 20 8A 85 20 E3 84 C6 21 A6 21 D0 F1 A6 .byte $36, $A9, $00, $9D, $00, $03, $20, $A8, $CB, $A2, $30, $BD, $00, $04, $09, $40 ; CPU:$CB33 PRG:4B33 36 A9 00 9D 00 03 20 A8 CB A2 30 BD 00 04 09 40 .byte $9D, $00, $04, $86, $65, $E6, $6C, $E6, $5E, $A9, $00, $85, $61, $85, $58, $A9 ; CPU:$CB43 PRG:4B43 9D 00 04 86 65 E6 6C E6 5E A9 00 85 61 85 58 A9 .byte $00, $85, $60, $60, $A9, $20, $85, $1F, $A0, $00, $A6, $36, $B9, $85, $CB, $9D ; CPU:$CB53 PRG:4B53 00 85 60 60 A9 20 85 1F A0 00 A6 36 B9 85 CB 9D .byte $00, $03, $E8, $C8, $C6, $1F, $D0, $F4, $A9, $00, $9D, $00, $03, $86, $36, $A0 ; CPU:$CB63 PRG:4B63 00 03 E8 C8 C6 1F D0 F4 A9 00 9D 00 03 86 36 A0 .byte $00, $A6, $38, $B9, $A5, $CB, $9D, $B8, $03, $E8, $C8, $C0, $03, $90, $F4, $86 ; CPU:$CB73 PRG:4B73 00 A6 38 B9 A5 CB 9D B8 03 E8 C8 C0 03 90 F4 86 .byte $38, $60, $7A, $22, $A8, $F2, $98, $22, $A8, $F2, $B6, $22, $A8, $F2, $BA, $22 ; CPU:$CB83 PRG:4B83 38 60 7A 22 A8 F2 98 22 A8 F2 B6 22 A8 F2 BA 22 .byte $A8, $F2, $F6, $22, $A8, $F2, $D8, $22, $A8, $F2, $FA, $22, $A8, $F2, $18, $23 ; CPU:$CB93 PRG:4B93 A8 F2 F6 22 A8 F2 D8 22 A8 F2 FA 22 A8 F2 18 23 .byte $A8, $F2, $E6, $55, $00, $A5, $5B, $18, $69, $07, $85, $11, $A9, $00, $85, $12 ; CPU:$CBA3 PRG:4BA3 A8 F2 E6 55 00 A5 5B 18 69 07 85 11 A9 00 85 12 .byte $20, $5D, $85, $A6, $6F, $BD, $E8, $C7, $8D, $88, $03, $A9, $1C, $8D, $98, $03 ; CPU:$CBB3 PRG:4BB3 20 5D 85 A6 6F BD E8 C7 8D 88 03 A9 1C 8D 98 03 .byte $60 ; CPU:$CBC3 PRG:4BC3 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_CBC4 ; Global: Branch target inside Sub: taken when CBC4. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_CBC4: lda Zp60 ; CPU:$CBC4 PRG:4BC4 A5 60 sta $05E9 ; CPU:$CBC6 PRG:4BC6 8D E9 05 lda Zp69 ; CPU:$CBC9 PRG:4BC9 A5 69 beq DisablePpuRendering_Loop9 ; CPU:$CBCB PRG:4BCB F0 0C lda Zp60 ; CPU:$CBCD PRG:4BCD A5 60 bne DisablePpuRendering_Loop9 ; CPU:$CBCF PRG:4BCF D0 08 jsr Sub_C83A ; CPU:$CBD1 PRG:4BD1 20 3A C8 lda #$00 ; CPU:$CBD4 PRG:4BD4 A9 00 sta Zp60 ; CPU:$CBD6 PRG:4BD6 85 60 rts ; CPU:$CBD8 PRG:4BD8 60 ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering_Loop9 ; Global: Branch target inside DisablePpuRendering: taken when Loop9. ; Local: Part of DisablePpuRendering. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering_Loop9: lda Zp71 ; CPU:$CBD9 PRG:4BD9 A5 71 cmp #$02 ; CPU:$CBDB PRG:4BDB C9 02 beq DisablePpuRendering_Loop10 ; CPU:$CBDD PRG:4BDD F0 09 lda Zp60 ; CPU:$CBDF PRG:4BDF A5 60 cmp #$07 ; CPU:$CBE1 PRG:4BE1 C9 07 bcs DisablePpuRendering_Loop10 ; CPU:$CBE3 PRG:4BE3 B0 03 jsr Sub_C7EA ; CPU:$CBE5 PRG:4BE5 20 EA C7 ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering_Loop10 ; Global: Branch target inside DisablePpuRendering: taken when Loop10. ; Local: Part of DisablePpuRendering. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering_Loop10: lda Zp65 ; CPU:$CBE8 PRG:4BE8 A5 65 bmi DisablePpuRendering_Loop11 ; CPU:$CBEA PRG:4BEA 30 0C lda Zp71 ; CPU:$CBEC PRG:4BEC A5 71 cmp #$02 ; CPU:$CBEE PRG:4BEE C9 02 beq DisablePpuRendering_Loop11 ; CPU:$CBF0 PRG:4BF0 F0 06 lda FrameCounter ; CPU:$CBF2 PRG:4BF2 A5 31 bne DisablePpuRendering_Loop11 ; CPU:$CBF4 PRG:4BF4 D0 02 inc Zp67 ; CPU:$CBF6 PRG:4BF6 E6 67 ; ----------------------------------------------------------------------------- ; Routine: DisablePpuRendering_Loop11 ; Global: Branch target inside DisablePpuRendering: taken when Loop11. ; Local: Part of DisablePpuRendering. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DisablePpuRendering_Loop11: lda Zp60 ; CPU:$CBF8 PRG:4BF8 A5 60 jsr DispatchByJumpTable ; CPU:$CBFA PRG:4BFA 20 73 81 ; ---- data $CBFD-$CC10 (20 bytes) ---- .byte $11, $CC, $56, $CC, $CF, $CC, $17, $BF, $6F, $C1, $18, $CD, $32, $CF, $A8, $CF ; CPU:$CBFD PRG:4BFD 11 CC 56 CC CF CC 17 BF 6F C1 18 CD 32 CF A8 CF .byte $9A, $BF, $41, $CA ; CPU:$CC0D PRG:4C0D 9A BF 41 CA ; ----------------------------------------------------------------------------- ; Routine: SetPlayerActive ; Global: Marks the player as active. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetPlayerActive: lda #$01 ; CPU:$CC11 PRG:4C11 A9 01 sta Zp33 ; CPU:$CC13 PRG:4C13 85 33 ldx #$00 ; CPU:$CC15 PRG:4C15 A2 00 lda Zp6F ; CPU:$CC17 PRG:4C17 A5 6F beq SetPlayerActive_Loop ; CPU:$CC19 PRG:4C19 F0 02 ldx #$03 ; CPU:$CC1B PRG:4C1B A2 03 ; ----------------------------------------------------------------------------- ; Routine: SetPlayerActive_Loop ; Global: Branch target inside SetPlayerActive: taken when the loop repeats. ; Local: Part of SetPlayerActive. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetPlayerActive_Loop: lda $CC50,x ; CPU:$CC1D PRG:4C1D BD 50 CC sta Zp49 ; CPU:$CC20 PRG:4C20 85 49 lda $CC51,x ; CPU:$CC22 PRG:4C22 BD 51 CC sta Zp4A ; CPU:$CC25 PRG:4C25 85 4A lda $CC52,x ; CPU:$CC27 PRG:4C27 BD 52 CC sta Zp4D ; CPU:$CC2A PRG:4C2A 85 4D inc Zp60 ; CPU:$CC2C PRG:4C2C E6 60 lda #$00 ; CPU:$CC2E PRG:4C2E A9 00 sta Zp56 ; CPU:$CC30 PRG:4C30 85 56 sta Zp48 ; CPU:$CC32 PRG:4C32 85 48 sta Zp37 ; CPU:$CC34 PRG:4C34 85 37 sta Zp36 ; CPU:$CC36 PRG:4C36 85 36 lda #$08 ; CPU:$CC38 PRG:4C38 A9 08 sta Zp40 ; CPU:$CC3A PRG:4C3A 85 40 jsr Sub_CDB6 ; CPU:$CC3C PRG:4C3C 20 B6 CD lda Zp66 ; CPU:$CC3F PRG:4C3F A5 66 cmp #$05 ; CPU:$CC41 PRG:4C41 C9 05 bne SetPlayerActive_Loop2 ; CPU:$CC43 PRG:4C43 D0 03 jsr Sub_C140 ; CPU:$CC45 PRG:4C45 20 40 C1 ; ----------------------------------------------------------------------------- ; Routine: SetPlayerActive_Loop2 ; Global: Branch target inside SetPlayerActive: taken when Loop2. ; Local: Part of SetPlayerActive. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetPlayerActive_Loop2: jsr Sub_CD59 ; CPU:$CC48 PRG:4C48 20 59 CD lda #$88 ; CPU:$CC4B PRG:4C4B A9 88 sta Zp01 ; CPU:$CC4D PRG:4C4D 85 01 rts ; CPU:$CC4F PRG:4C4F 60 ; ---- data $CC50-$CC55 (6 bytes) ---- ; referenced by `lda $CC50,x` at $CC1D (operand $CC50 falls inside this region) ; referenced by `lda $CC51,x` at $CC22 (operand $CC51 falls inside this region) ; referenced by `lda $CC52,x` at $CC27 (operand $CC52 falls inside this region) .byte $40, $CE, $2B, $24, $CE, $2B ; CPU:$CC50 PRG:4C50 40 CE 2B 24 CE 2B ; ----------------------------------------------------------------------------- ; Routine: CheckPlayerActive ; Global: Tests whether the player is still in play. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckPlayerActive: lda Zp6F ; CPU:$CC56 PRG:4C56 A5 6F bne CheckPlayerActive_Loop ; CPU:$CC58 PRG:4C58 D0 0E lda ZpCD ; CPU:$CC5A PRG:4C5A A5 CD beq CheckPlayerActive_Loop ; CPU:$CC5C PRG:4C5C F0 0A lda Zp4A ; CPU:$CC5E PRG:4C5E A5 4A cmp #$B0 ; CPU:$CC60 PRG:4C60 C9 B0 bcs CheckPlayerActive_Loop ; CPU:$CC62 PRG:4C62 B0 04 jsr Sub_CE8B ; CPU:$CC64 PRG:4C64 20 8B CE rts ; CPU:$CC67 PRG:4C67 60 ; ----------------------------------------------------------------------------- ; Routine: CheckPlayerActive_Loop ; Global: Branch target inside CheckPlayerActive: taken when the loop repeats. ; Local: Part of CheckPlayerActive. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckPlayerActive_Loop: jsr UpdatePlayerState ; CPU:$CC68 PRG:4C68 20 FA BB lda NewButton1 ; CPU:$CC6B PRG:4C6B A5 2A and #$C0 ; CPU:$CC6D PRG:4C6D 29 C0 beq CheckPlayerActive_Loop3 ; CPU:$CC6F PRG:4C6F F0 1A lda #$01 ; CPU:$CC71 PRG:4C71 A9 01 sta a:$00E3 ; CPU:$CC73 PRG:4C73 8D E3 00 lda #$03 ; CPU:$CC76 PRG:4C76 A9 03 sta a:$00E2 ; CPU:$CC78 PRG:4C78 8D E2 00 lda NewButton1 ; CPU:$CC7B PRG:4C7B A5 2A and #$80 ; CPU:$CC7D PRG:4C7D 29 80 beq CheckPlayerActive_Loop2 ; CPU:$CC7F PRG:4C7F F0 05 lda #$02 ; CPU:$CC81 PRG:4C81 A9 02 sta a:$00E2 ; CPU:$CC83 PRG:4C83 8D E2 00 ; ----------------------------------------------------------------------------- ; Routine: CheckPlayerActive_Loop2 ; Global: Branch target inside CheckPlayerActive: taken when Loop2. ; Local: Part of CheckPlayerActive. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckPlayerActive_Loop2: lda #$04 ; CPU:$CC86 PRG:4C86 A9 04 jsr BankedCall ; CPU:$CC88 PRG:4C88 20 04 80 ; ----------------------------------------------------------------------------- ; Routine: CheckPlayerActive_Loop3 ; Global: Branch target inside CheckPlayerActive: taken when Loop3. ; Local: Part of CheckPlayerActive. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckPlayerActive_Loop3: lda $05A4 ; CPU:$CC8B PRG:4C8B AD A4 05 beq CheckPlayerActive_Loop4 ; CPU:$CC8E PRG:4C8E F0 03 jsr Sub_CE0D ; CPU:$CC90 PRG:4C90 20 0D CE ; ----------------------------------------------------------------------------- ; Routine: CheckPlayerActive_Loop4 ; Global: Branch target inside CheckPlayerActive: taken when Loop4. ; Local: Part of CheckPlayerActive. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckPlayerActive_Loop4: ldx Zp64 ; CPU:$CC93 PRG:4C93 A6 64 beq CheckPlayerActive_Loop5 ; CPU:$CC95 PRG:4C95 F0 25 lda $0358 ; CPU:$CC97 PRG:4C97 AD 58 03 cmp #$07 ; CPU:$CC9A PRG:4C9A C9 07 bcc CheckPlayerActive_Loop6 ; CPU:$CC9C PRG:4C9C 90 1F lda $0389,x ; CPU:$CC9E PRG:4C9E BD 89 03 sta $0388 ; CPU:$CCA1 PRG:4CA1 8D 88 03 lda $0399,x ; CPU:$CCA4 PRG:4CA4 BD 99 03 sta $0398 ; CPU:$CCA7 PRG:4CA7 8D 98 03 lda #$04 ; CPU:$CCAA PRG:4CAA A9 04 clc ; CPU:$CCAC PRG:4CAC 18 adc $0388 ; CPU:$CCAD PRG:4CAD 6D 88 03 sta $0388 ; CPU:$CCB0 PRG:4CB0 8D 88 03 lda #$04 ; CPU:$CCB3 PRG:4CB3 A9 04 clc ; CPU:$CCB5 PRG:4CB5 18 adc $0398 ; CPU:$CCB6 PRG:4CB6 6D 98 03 sta $0398 ; CPU:$CCB9 PRG:4CB9 8D 98 03 ; ----------------------------------------------------------------------------- ; Routine: CheckPlayerActive_Loop5 ; Global: Branch target inside CheckPlayerActive: taken when Loop5. ; Local: Part of CheckPlayerActive. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckPlayerActive_Loop5: rts ; CPU:$CCBC PRG:4CBC 60 ; ----------------------------------------------------------------------------- ; Routine: CheckPlayerActive_Loop6 ; Global: Branch target inside CheckPlayerActive: taken when Loop6. ; Local: Part of CheckPlayerActive. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckPlayerActive_Loop6: lda FrameCounter ; CPU:$CCBD PRG:4CBD A5 31 ror a ; CPU:$CCBF PRG:4CBF 6A and #$03 ; CPU:$CCC0 PRG:4CC0 29 03 sta Zp20 ; CPU:$CCC2 PRG:4CC2 85 20 lda $03AA ; CPU:$CCC4 PRG:4CC4 AD AA 03 and #$FC ; CPU:$CCC7 PRG:4CC7 29 FC ora Zp20 ; CPU:$CCC9 PRG:4CC9 05 20 sta $03AA ; CPU:$CCCB PRG:4CCB 8D AA 03 rts ; CPU:$CCCE PRG:4CCE 60 ; ----------------------------------------------------------------------------- ; Routine: TickSoundOnEvenFrame ; Global: Updates the sound on every second frame. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickSoundOnEvenFrame: lda FrameCounter ; CPU:$CCCF PRG:4CCF A5 31 ror a ; CPU:$CCD1 PRG:4CD1 6A bcs TickSoundOnEvenFrame_Loop ; CPU:$CCD2 PRG:4CD2 B0 01 rts ; CPU:$CCD4 PRG:4CD4 60 ; ----------------------------------------------------------------------------- ; Routine: TickSoundOnEvenFrame_Loop ; Global: Branch target inside TickSoundOnEvenFrame: taken when the loop repeats. ; Local: Part of TickSoundOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickSoundOnEvenFrame_Loop: lda Zp6F ; CPU:$CCD5 PRG:4CD5 A5 6F bne TickSoundOnEvenFrame_Loop2 ; CPU:$CCD7 PRG:4CD7 D0 03 jsr Sub_CE8B ; CPU:$CCD9 PRG:4CD9 20 8B CE ; ----------------------------------------------------------------------------- ; Routine: TickSoundOnEvenFrame_Loop2 ; Global: Branch target inside TickSoundOnEvenFrame: taken when Loop2. ; Local: Part of TickSoundOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickSoundOnEvenFrame_Loop2: jsr BuildBubbleTable ; CPU:$CCDC PRG:4CDC 20 E4 BE jsr Sub_CDF0 ; CPU:$CCDF PRG:4CDF 20 F0 CD lda Zp64 ; CPU:$CCE2 PRG:4CE2 A5 64 beq TickSoundOnEvenFrame_Loop3 ; CPU:$CCE4 PRG:4CE4 F0 1C lda $0358 ; CPU:$CCE6 PRG:4CE6 AD 58 03 cmp #$07 ; CPU:$CCE9 PRG:4CE9 C9 07 bcc TickSoundOnEvenFrame_Loop3 ; CPU:$CCEB PRG:4CEB 90 15 ldx Zp64 ; CPU:$CCED PRG:4CED A6 64 lda Zp4D,x ; CPU:$CCEF PRG:4CEF B5 4D sta Zp65 ; CPU:$CCF1 PRG:4CF1 85 65 tax ; CPU:$CCF3 PRG:4CF3 AA lda $0400,x ; CPU:$CCF4 PRG:4CF4 BD 00 04 ora #$40 ; CPU:$CCF7 PRG:4CF7 09 40 sta $0400,x ; CPU:$CCF9 PRG:4CF9 9D 00 04 lda #$00 ; CPU:$CCFC PRG:4CFC A9 00 sta Zp64 ; CPU:$CCFE PRG:4CFE 85 64 sta Zp67 ; CPU:$CD00 PRG:4D00 85 67 ; ----------------------------------------------------------------------------- ; Routine: TickSoundOnEvenFrame_Loop3 ; Global: Branch target inside TickSoundOnEvenFrame: taken when Loop3. ; Local: Part of TickSoundOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickSoundOnEvenFrame_Loop3: inc Zp60 ; CPU:$CD02 PRG:4D02 E6 60 lda #$01 ; CPU:$CD04 PRG:4D04 A9 01 sta a:$00E3 ; CPU:$CD06 PRG:4D06 8D E3 00 lda #$00 ; CPU:$CD09 PRG:4D09 A9 00 sta a:$00E2 ; CPU:$CD0B PRG:4D0B 8D E2 00 lda #$04 ; CPU:$CD0E PRG:4D0E A9 04 jsr BankedCall ; CPU:$CD10 PRG:4D10 20 04 80 lda #$00 ; CPU:$CD13 PRG:4D13 A9 00 sta Zp61 ; CPU:$CD15 PRG:4D15 85 61 rts ; CPU:$CD17 PRG:4D17 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine ; Global: Updates the sound engine. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine: jsr Sub_D4EE ; CPU:$CD18 PRG:4D18 20 EE D4 rts ; CPU:$CD1B PRG:4D1B 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_CD1C ; Global: Branch target inside Sub: taken when CD1C. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_CD1C: ldx ZpCC ; CPU:$CD1C PRG:4D1C A6 CC lda #$04 ; CPU:$CD1E PRG:4D1E A9 04 sta Zp1F ; CPU:$CD20 PRG:4D20 85 1F lda Zp48 ; CPU:$CD22 PRG:4D22 A5 48 asl a ; CPU:$CD24 PRG:4D24 0A asl a ; CPU:$CD25 PRG:4D25 0A tay ; CPU:$CD26 PRG:4D26 A8 ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_OnNonzero ; Global: Branch target inside UpdateSoundEngine: taken when the tested value is not zero. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_OnNonzero: lda (Zp46),y ; CPU:$CD27 PRG:4D27 B1 46 sta Zp1B ; CPU:$CD29 PRG:4D29 85 1B and #$F0 ; CPU:$CD2B PRG:4D2B 29 F0 sta Zp1C ; CPU:$CD2D PRG:4D2D 85 1C clc ; CPU:$CD2F PRG:4D2F 18 adc Zp49 ; CPU:$CD30 PRG:4D30 65 49 sta $0388,x ; CPU:$CD32 PRG:4D32 9D 88 03 lda Zp1B ; CPU:$CD35 PRG:4D35 A5 1B and #$0F ; CPU:$CD37 PRG:4D37 29 0F asl a ; CPU:$CD39 PRG:4D39 0A asl a ; CPU:$CD3A PRG:4D3A 0A asl a ; CPU:$CD3B PRG:4D3B 0A asl a ; CPU:$CD3C PRG:4D3C 0A clc ; CPU:$CD3D PRG:4D3D 18 adc Zp4A ; CPU:$CD3E PRG:4D3E 65 4A sta $0398,x ; CPU:$CD40 PRG:4D40 9D 98 03 lda #$10 ; CPU:$CD43 PRG:4D43 A9 10 and Zp1C ; CPU:$CD45 PRG:4D45 25 1C beq UpdateSoundEngine_Loop ; CPU:$CD47 PRG:4D47 F0 09 lda $0398,x ; CPU:$CD49 PRG:4D49 BD 98 03 clc ; CPU:$CD4C PRG:4D4C 18 adc #$08 ; CPU:$CD4D PRG:4D4D 69 08 sta $0398,x ; CPU:$CD4F PRG:4D4F 9D 98 03 ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_Loop ; Global: Branch target inside UpdateSoundEngine: taken when the loop repeats. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_Loop: inx ; CPU:$CD52 PRG:4D52 E8 iny ; CPU:$CD53 PRG:4D53 C8 dec Zp1F ; CPU:$CD54 PRG:4D54 C6 1F bne UpdateSoundEngine_OnNonzero; CPU:$CD56 PRG:4D56 D0 CF rts ; CPU:$CD58 PRG:4D58 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_CD59 ; Global: Branch target inside Sub: taken when CD59. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_CD59: lda Zp41 ; CPU:$CD59 PRG:4D59 A5 41 sta ZpCD ; CPU:$CD5B PRG:4D5B 85 CD inc $05E1 ; CPU:$CD5D PRG:4D5D EE E1 05 lda $05E1 ; CPU:$CD60 PRG:4D60 AD E1 05 ldy $05E5 ; CPU:$CD63 PRG:4D63 AC E5 05 bne UpdateSoundEngine_Loop2 ; CPU:$CD66 PRG:4D66 D0 05 jsr Sub_8552 ; CPU:$CD68 PRG:4D68 20 52 85 lda Zp3D ; CPU:$CD6B PRG:4D6B A5 3D ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_Loop2 ; Global: Branch target inside UpdateSoundEngine: taken when Loop2. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_Loop2: and #$07 ; CPU:$CD6D PRG:4D6D 29 07 sta Zp1D ; CPU:$CD6F PRG:4D6F 85 1D lda $05E1 ; CPU:$CD71 PRG:4D71 AD E1 05 ldy $05E5 ; CPU:$CD74 PRG:4D74 AC E5 05 bne UpdateSoundEngine_Loop3 ; CPU:$CD77 PRG:4D77 D0 05 jsr Sub_8552 ; CPU:$CD79 PRG:4D79 20 52 85 lda Zp3D ; CPU:$CD7C PRG:4D7C A5 3D ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_Loop3 ; Global: Branch target inside UpdateSoundEngine: taken when Loop3. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_Loop3: and #$7F ; CPU:$CD7E PRG:4D7E 29 7F tay ; CPU:$CD80 PRG:4D80 A8 lda (Zp39),y ; CPU:$CD81 PRG:4D81 B1 39 sta Zp1B ; CPU:$CD83 PRG:4D83 85 1B ror a ; CPU:$CD85 PRG:4D85 6A ror a ; CPU:$CD86 PRG:4D86 6A ror a ; CPU:$CD87 PRG:4D87 6A and #$0E ; CPU:$CD88 PRG:4D88 29 0E sta Zp41 ; CPU:$CD8A PRG:4D8A 85 41 tax ; CPU:$CD8C PRG:4D8C AA lda $F38E,x ; CPU:$CD8D PRG:4D8D BD 8E F3 sta Zp19 ; CPU:$CD90 PRG:4D90 85 19 lda $F38F,x ; CPU:$CD92 PRG:4D92 BD 8F F3 sta Zp1A ; CPU:$CD95 PRG:4D95 85 1A lda Zp1B ; CPU:$CD97 PRG:4D97 A5 1B and #$0F ; CPU:$CD99 PRG:4D99 29 0F asl a ; CPU:$CD9B PRG:4D9B 0A asl a ; CPU:$CD9C PRG:4D9C 0A tay ; CPU:$CD9D PRG:4D9D A8 ldx #$00 ; CPU:$CD9E PRG:4D9E A2 00 ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_OnCarryClear ; Global: Branch target inside UpdateSoundEngine: taken when the addition or subtraction did not carry. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_OnCarryClear: stx Zp21 ; CPU:$CDA0 PRG:4DA0 86 21 lda (Zp19),y ; CPU:$CDA2 PRG:4DA2 B1 19 clc ; CPU:$CDA4 PRG:4DA4 18 adc Zp1D ; CPU:$CDA5 PRG:4DA5 65 1D tax ; CPU:$CDA7 PRG:4DA7 AA lda $F381,x ; CPU:$CDA8 PRG:4DA8 BD 81 F3 ldx Zp21 ; CPU:$CDAB PRG:4DAB A6 21 sta Zp42,x ; CPU:$CDAD PRG:4DAD 95 42 iny ; CPU:$CDAF PRG:4DAF C8 inx ; CPU:$CDB0 PRG:4DB0 E8 cpx #$04 ; CPU:$CDB1 PRG:4DB1 E0 04 bcc UpdateSoundEngine_OnCarryClear ; CPU:$CDB3 PRG:4DB3 90 EB rts ; CPU:$CDB5 PRG:4DB5 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_CDB6 ; Global: Branch target inside Sub: taken when CDB6. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_CDB6: ldx Zp41 ; CPU:$CDB6 PRG:4DB6 A6 41 lda $F313,x ; CPU:$CDB8 PRG:4DB8 BD 13 F3 sta Zp46 ; CPU:$CDBB PRG:4DBB 85 46 lda $F314,x ; CPU:$CDBD PRG:4DBD BD 14 F3 sta Zp47 ; CPU:$CDC0 PRG:4DC0 85 47 ldx #$00 ; CPU:$CDC2 PRG:4DC2 A2 00 lda #$02 ; CPU:$CDC4 PRG:4DC4 A9 02 sta Zp12 ; CPU:$CDC6 PRG:4DC6 85 12 ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_OnCarryClear2 ; Global: Branch target inside UpdateSoundEngine: taken when OnCarryClear2. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_OnCarryClear2: stx Zp21 ; CPU:$CDC8 PRG:4DC8 86 21 lda Zp42,x ; CPU:$CDCA PRG:4DCA B5 42 sta Zp52,x ; CPU:$CDCC PRG:4DCC 95 52 sta Zp11 ; CPU:$CDCE PRG:4DCE 85 11 jsr Sub_855D ; CPU:$CDD0 PRG:4DD0 20 5D 85 inc Zp12 ; CPU:$CDD3 PRG:4DD3 E6 12 ldx Zp21 ; CPU:$CDD5 PRG:4DD5 A6 21 inx ; CPU:$CDD7 PRG:4DD7 E8 cpx #$04 ; CPU:$CDD8 PRG:4DD8 E0 04 bcc UpdateSoundEngine_OnCarryClear2 ; CPU:$CDDA PRG:4DDA 90 EC lda #$02 ; CPU:$CDDC PRG:4DDC A9 02 sta ZpCC ; CPU:$CDDE PRG:4DDE 85 CC ldy #$00 ; CPU:$CDE0 PRG:4DE0 A0 00 ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_OnCarryClear3 ; Global: Branch target inside UpdateSoundEngine: taken when OnCarryClear3. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_OnCarryClear3: lda (Zp46),y ; CPU:$CDE2 PRG:4DE2 B1 46 clc ; CPU:$CDE4 PRG:4DE4 18 adc Zp4D ; CPU:$CDE5 PRG:4DE5 65 4D sta a:$004E,y ; CPU:$CDE7 PRG:4DE7 99 4E 00 iny ; CPU:$CDEA PRG:4DEA C8 cpy #$04 ; CPU:$CDEB PRG:4DEB C0 04 bcc UpdateSoundEngine_OnCarryClear3 ; CPU:$CDED PRG:4DED 90 F3 rts ; CPU:$CDEF PRG:4DEF 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_CDF0 ; Global: Branch target inside Sub: taken when CDF0. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_CDF0: lda #$00 ; CPU:$CDF0 PRG:4DF0 A9 00 sta Zp11 ; CPU:$CDF2 PRG:4DF2 85 11 lda #$02 ; CPU:$CDF4 PRG:4DF4 A9 02 sta Zp12 ; CPU:$CDF6 PRG:4DF6 85 12 lda $035A ; CPU:$CDF8 PRG:4DF8 AD 5A 03 cmp #$05 ; CPU:$CDFB PRG:4DFB C9 05 bne UpdateSoundEngine_OnCarryClear4 ; CPU:$CDFD PRG:4DFD D0 02 inc Zp12 ; CPU:$CDFF PRG:4DFF E6 12 ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_OnCarryClear4 ; Global: Branch target inside UpdateSoundEngine: taken when OnCarryClear4. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_OnCarryClear4: jsr Sub_855D ; CPU:$CE01 PRG:4E01 20 5D 85 inc Zp12 ; CPU:$CE04 PRG:4E04 E6 12 lda Zp12 ; CPU:$CE06 PRG:4E06 A5 12 cmp #$06 ; CPU:$CE08 PRG:4E08 C9 06 bcc UpdateSoundEngine_OnCarryClear4 ; CPU:$CE0A PRG:4E0A 90 F5 rts ; CPU:$CE0C PRG:4E0C 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_CE0D ; Global: Branch target inside Sub: taken when CE0D. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_CE0D: lda FrameCounter ; CPU:$CE0D PRG:4E0D A5 31 ror a ; CPU:$CE0F PRG:4E0F 6A bcs UpdateSoundEngine_Loop4 ; CPU:$CE10 PRG:4E10 B0 01 rts ; CPU:$CE12 PRG:4E12 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_Loop4 ; Global: Branch target inside UpdateSoundEngine: taken when Loop4. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_Loop4: lda $05A4 ; CPU:$CE13 PRG:4E13 AD A4 05 tax ; CPU:$CE16 PRG:4E16 AA and #$0F ; CPU:$CE17 PRG:4E17 29 0F clc ; CPU:$CE19 PRG:4E19 18 adc $05B5 ; CPU:$CE1A PRG:4E1A 6D B5 05 sta $05B5 ; CPU:$CE1D PRG:4E1D 8D B5 05 txa ; CPU:$CE20 PRG:4E20 8A ror a ; CPU:$CE21 PRG:4E21 6A ror a ; CPU:$CE22 PRG:4E22 6A ror a ; CPU:$CE23 PRG:4E23 6A ror a ; CPU:$CE24 PRG:4E24 6A and #$0F ; CPU:$CE25 PRG:4E25 29 0F clc ; CPU:$CE27 PRG:4E27 18 adc $05B4 ; CPU:$CE28 PRG:4E28 6D B4 05 sta $05B4 ; CPU:$CE2B PRG:4E2B 8D B4 05 ldx #$05 ; CPU:$CE2E PRG:4E2E A2 05 ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_OnNonzero2 ; Global: Branch target inside UpdateSoundEngine: taken when OnNonzero2. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_OnNonzero2: lda $05B0,x ; CPU:$CE30 PRG:4E30 BD B0 05 cmp #$0A ; CPU:$CE33 PRG:4E33 C9 0A bcc UpdateSoundEngine_Loop5 ; CPU:$CE35 PRG:4E35 90 0B inc $05AF,x ; CPU:$CE37 PRG:4E37 FE AF 05 clc ; CPU:$CE3A PRG:4E3A 18 adc #$06 ; CPU:$CE3B PRG:4E3B 69 06 and #$0F ; CPU:$CE3D PRG:4E3D 29 0F sta $05B0,x ; CPU:$CE3F PRG:4E3F 9D B0 05 ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_Loop5 ; Global: Branch target inside UpdateSoundEngine: taken when Loop5. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_Loop5: dex ; CPU:$CE42 PRG:4E42 CA bne UpdateSoundEngine_OnNonzero2 ; CPU:$CE43 PRG:4E43 D0 EB lda #$06 ; CPU:$CE45 PRG:4E45 A9 06 sta $05D2 ; CPU:$CE47 PRG:4E47 8D D2 05 lda #$01 ; CPU:$CE4A PRG:4E4A A9 01 sta $05D3 ; CPU:$CE4C PRG:4E4C 8D D3 05 ldx #$00 ; CPU:$CE4F PRG:4E4F A2 00 ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_OnCarryClear5 ; Global: Branch target inside UpdateSoundEngine: taken when OnCarryClear5. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_OnCarryClear5: lda $05B0,x ; CPU:$CE51 PRG:4E51 BD B0 05 tay ; CPU:$CE54 PRG:4E54 A8 lda $F1D6,y ; CPU:$CE55 PRG:4E55 B9 D6 F1 sta $05D4,x ; CPU:$CE58 PRG:4E58 9D D4 05 inx ; CPU:$CE5B PRG:4E5B E8 cpx #$06 ; CPU:$CE5C PRG:4E5C E0 06 bcc UpdateSoundEngine_OnCarryClear5 ; CPU:$CE5E PRG:4E5E 90 F1 lda Zp6F ; CPU:$CE60 PRG:4E60 A5 6F asl a ; CPU:$CE62 PRG:4E62 0A tay ; CPU:$CE63 PRG:4E63 A8 ldx Zp37 ; CPU:$CE64 PRG:4E64 A6 37 lda $D412,y ; CPU:$CE66 PRG:4E66 B9 12 D4 sta $0338,x ; CPU:$CE69 PRG:4E69 9D 38 03 lda $D413,y ; CPU:$CE6C PRG:4E6C B9 13 D4 sta $0339,x ; CPU:$CE6F PRG:4E6F 9D 39 03 lda #$D2 ; CPU:$CE72 PRG:4E72 A9 D2 sta $033A,x ; CPU:$CE74 PRG:4E74 9D 3A 03 lda #$05 ; CPU:$CE77 PRG:4E77 A9 05 sta $033B,x ; CPU:$CE79 PRG:4E79 9D 3B 03 lda #$00 ; CPU:$CE7C PRG:4E7C A9 00 sta $033C,x ; CPU:$CE7E PRG:4E7E 9D 3C 03 sta $05A4 ; CPU:$CE81 PRG:4E81 8D A4 05 txa ; CPU:$CE84 PRG:4E84 8A clc ; CPU:$CE85 PRG:4E85 18 adc #$04 ; CPU:$CE86 PRG:4E86 69 04 sta Zp37 ; CPU:$CE88 PRG:4E88 85 37 rts ; CPU:$CE8A PRG:4E8A 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_CE8B ; Global: Branch target inside Sub: taken when CE8B. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_CE8B: lda FrameCounter ; CPU:$CE8B PRG:4E8B A5 31 ror a ; CPU:$CE8D PRG:4E8D 6A bcs UpdateSoundEngine_Loop6 ; CPU:$CE8E PRG:4E8E B0 01 rts ; CPU:$CE90 PRG:4E90 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_Loop6 ; Global: Branch target inside UpdateSoundEngine: taken when Loop6. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_Loop6: ldy #$04 ; CPU:$CE91 PRG:4E91 A0 04 sty Zp22 ; CPU:$CE93 PRG:4E93 84 22 lda ZpCD ; CPU:$CE95 PRG:4E95 A5 CD asl a ; CPU:$CE97 PRG:4E97 0A asl a ; CPU:$CE98 PRG:4E98 0A tay ; CPU:$CE99 PRG:4E99 A8 ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_OnNonzero3 ; Global: Branch target inside UpdateSoundEngine: taken when OnNonzero3. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_OnNonzero3: lda $CFC5,y ; CPU:$CE9A PRG:4E9A B9 C5 CF sta Zp19 ; CPU:$CE9D PRG:4E9D 85 19 iny ; CPU:$CE9F PRG:4E9F C8 lda $CFC5,y ; CPU:$CEA0 PRG:4EA0 B9 C5 CF sta Zp1A ; CPU:$CEA3 PRG:4EA3 85 1A iny ; CPU:$CEA5 PRG:4EA5 C8 ldx Zp36 ; CPU:$CEA6 PRG:4EA6 A6 36 lda Zp19 ; CPU:$CEA8 PRG:4EA8 A5 19 sta $0300,x ; CPU:$CEAA PRG:4EAA 9D 00 03 inx ; CPU:$CEAD PRG:4EAD E8 lda Zp1A ; CPU:$CEAE PRG:4EAE A5 1A sta $0300,x ; CPU:$CEB0 PRG:4EB0 9D 00 03 inx ; CPU:$CEB3 PRG:4EB3 E8 lda #$A8 ; CPU:$CEB4 PRG:4EB4 A9 A8 sta $0300,x ; CPU:$CEB6 PRG:4EB6 9D 00 03 inx ; CPU:$CEB9 PRG:4EB9 E8 lda #$F2 ; CPU:$CEBA PRG:4EBA A9 F2 sta $0300,x ; CPU:$CEBC PRG:4EBC 9D 00 03 inx ; CPU:$CEBF PRG:4EBF E8 stx Zp36 ; CPU:$CEC0 PRG:4EC0 86 36 dec Zp22 ; CPU:$CEC2 PRG:4EC2 C6 22 bne UpdateSoundEngine_OnNonzero3 ; CPU:$CEC4 PRG:4EC4 D0 D4 ldx Zp38 ; CPU:$CEC6 PRG:4EC6 A6 38 lda #$E6 ; CPU:$CEC8 PRG:4EC8 A9 E6 sta $03B8,x ; CPU:$CECA PRG:4ECA 9D B8 03 inx ; CPU:$CECD PRG:4ECD E8 lda #$55 ; CPU:$CECE PRG:4ECE A9 55 sta $03B8,x ; CPU:$CED0 PRG:4ED0 9D B8 03 inx ; CPU:$CED3 PRG:4ED3 E8 stx Zp38 ; CPU:$CED4 PRG:4ED4 86 38 ldy #$00 ; CPU:$CED6 PRG:4ED6 A0 00 sty Zp22 ; CPU:$CED8 PRG:4ED8 84 22 lda Zp41 ; CPU:$CEDA PRG:4EDA A5 41 asl a ; CPU:$CEDC PRG:4EDC 0A asl a ; CPU:$CEDD PRG:4EDD 0A sta Zp21 ; CPU:$CEDE PRG:4EDE 85 21 ; ----------------------------------------------------------------------------- ; Routine: UpdateSoundEngine_OnCarryClear6 ; Global: Branch target inside UpdateSoundEngine: taken when OnCarryClear6. ; Local: Part of UpdateSoundEngine. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateSoundEngine_OnCarryClear6: ldx Zp21 ; CPU:$CEE0 PRG:4EE0 A6 21 lda $CFC5,x ; CPU:$CEE2 PRG:4EE2 BD C5 CF sta Zp19 ; CPU:$CEE5 PRG:4EE5 85 19 inx ; CPU:$CEE7 PRG:4EE7 E8 lda $CFC5,x ; CPU:$CEE8 PRG:4EE8 BD C5 CF sta Zp1A ; CPU:$CEEB PRG:4EEB 85 1A inx ; CPU:$CEED PRG:4EED E8 stx Zp21 ; CPU:$CEEE PRG:4EEE 86 21 lda a:$0042,y ; CPU:$CEF0 PRG:4EF0 B9 42 00 sta Zp1B ; CPU:$CEF3 PRG:4EF3 85 1B inc Zp22 ; CPU:$CEF5 PRG:4EF5 E6 22 asl a ; CPU:$CEF7 PRG:4EF7 0A tay ; CPU:$CEF8 PRG:4EF8 A8 lda $F29E,y ; CPU:$CEF9 PRG:4EF9 B9 9E F2 sta Zp17 ; CPU:$CEFC PRG:4EFC 85 17 lda $F29F,y ; CPU:$CEFE PRG:4EFE B9 9F F2 sta Zp18 ; CPU:$CF01 PRG:4F01 85 18 ldx Zp36 ; CPU:$CF03 PRG:4F03 A6 36 lda Zp19 ; CPU:$CF05 PRG:4F05 A5 19 sta $0300,x ; CPU:$CF07 PRG:4F07 9D 00 03 inx ; CPU:$CF0A PRG:4F0A E8 lda Zp1A ; CPU:$CF0B PRG:4F0B A5 1A sta $0300,x ; CPU:$CF0D PRG:4F0D 9D 00 03 inx ; CPU:$CF10 PRG:4F10 E8 lda Zp17 ; CPU:$CF11 PRG:4F11 A5 17 sta $0300,x ; CPU:$CF13 PRG:4F13 9D 00 03 inx ; CPU:$CF16 PRG:4F16 E8 lda Zp18 ; CPU:$CF17 PRG:4F17 A5 18 sta $0300,x ; CPU:$CF19 PRG:4F19 9D 00 03 inx ; CPU:$CF1C PRG:4F1C E8 stx Zp36 ; CPU:$CF1D PRG:4F1D 86 36 jsr Sub_84E3 ; CPU:$CF1F PRG:4F1F 20 E3 84 ldy Zp22 ; CPU:$CF22 PRG:4F22 A4 22 cpy #$04 ; CPU:$CF24 PRG:4F24 C0 04 bcc UpdateSoundEngine_OnCarryClear6 ; CPU:$CF26 PRG:4F26 90 B8 ldx Zp36 ; CPU:$CF28 PRG:4F28 A6 36 lda #$00 ; CPU:$CF2A PRG:4F2A A9 00 sta $0300,x ; CPU:$CF2C PRG:4F2C 9D 00 03 sta ZpCD ; CPU:$CF2F PRG:4F2F 85 CD rts ; CPU:$CF31 PRG:4F31 60 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount ; Global: Tests how many actors are on the screen. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount: lda Zp67 ; CPU:$CF32 PRG:4F32 A5 67 cmp #$08 ; CPU:$CF34 PRG:4F34 C9 08 bcc CheckActorCount_Loop ; CPU:$CF36 PRG:4F36 90 15 ldx Zp65 ; CPU:$CF38 PRG:4F38 A6 65 lda $0400,x ; CPU:$CF3A PRG:4F3A BD 00 04 and #$BF ; CPU:$CF3D PRG:4F3D 29 BF sta $0400,x ; CPU:$CF3F PRG:4F3F 9D 00 04 lda #$00 ; CPU:$CF42 PRG:4F42 A9 00 sta Zp67 ; CPU:$CF44 PRG:4F44 85 67 sta $0358 ; CPU:$CF46 PRG:4F46 8D 58 03 lda #$FF ; CPU:$CF49 PRG:4F49 A9 FF sta Zp65 ; CPU:$CF4B PRG:4F4B 85 65 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop ; Global: Branch target inside CheckActorCount: taken when the loop repeats. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop: ldx #$0B ; CPU:$CF4D PRG:4F4D A2 0B ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_OnCarryClear ; Global: Branch target inside CheckActorCount: taken when the addition or subtraction did not carry. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_OnCarryClear: lda $0400,x ; CPU:$CF4F PRG:4F4F BD 00 04 beq CheckActorCount_Loop2 ; CPU:$CF52 PRG:4F52 F0 09 inc Zp60 ; CPU:$CF54 PRG:4F54 E6 60 inc Zp60 ; CPU:$CF56 PRG:4F56 E6 60 lda #$00 ; CPU:$CF58 PRG:4F58 A9 00 sta Zp61 ; CPU:$CF5A PRG:4F5A 85 61 rts ; CPU:$CF5C PRG:4F5C 60 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop2 ; Global: Branch target inside CheckActorCount: taken when Loop2. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop2: txa ; CPU:$CF5D PRG:4F5D 8A clc ; CPU:$CF5E PRG:4F5E 18 adc #$10 ; CPU:$CF5F PRG:4F5F 69 10 tax ; CPU:$CF61 PRG:4F61 AA cmp #$70 ; CPU:$CF62 PRG:4F62 C9 70 bcc CheckActorCount_OnCarryClear ; CPU:$CF64 PRG:4F64 90 E9 lda #$00 ; CPU:$CF66 PRG:4F66 A9 00 sta Zp60 ; CPU:$CF68 PRG:4F68 85 60 lda Zp71 ; CPU:$CF6A PRG:4F6A A5 71 cmp #$02 ; CPU:$CF6C PRG:4F6C C9 02 beq CheckActorCount_Loop5 ; CPU:$CF6E PRG:4F6E F0 2C lda Zp69 ; CPU:$CF70 PRG:4F70 A5 69 bne CheckActorCount_Loop4 ; CPU:$CF72 PRG:4F72 D0 27 lda Zp63 ; CPU:$CF74 PRG:4F74 A5 63 cmp #$1E ; CPU:$CF76 PRG:4F76 C9 1E bcc CheckActorCount_Loop3 ; CPU:$CF78 PRG:4F78 90 0F lda #$00 ; CPU:$CF7A PRG:4F7A A9 00 sta Zp63 ; CPU:$CF7C PRG:4F7C 85 63 inc Zp66 ; CPU:$CF7E PRG:4F7E E6 66 lda Zp66 ; CPU:$CF80 PRG:4F80 A5 66 cmp #$05 ; CPU:$CF82 PRG:4F82 C9 05 beq CheckActorCount_Loop3 ; CPU:$CF84 PRG:4F84 F0 03 jsr Sub_C0F2 ; CPU:$CF86 PRG:4F86 20 F2 C0 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop3 ; Global: Branch target inside CheckActorCount: taken when Loop3. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop3: lda Zp62 ; CPU:$CF89 PRG:4F89 A5 62 cmp #$C8 ; CPU:$CF8B PRG:4F8B C9 C8 bcc CheckActorCount_Loop4 ; CPU:$CF8D PRG:4F8D 90 0C ; ----------------------------------------------------------------------------- ; Routine: Sub_CF8F ; Global: Branch target inside Sub: taken when CF8F. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_CF8F: lda #$07 ; CPU:$CF8F PRG:4F8F A9 07 sta Zp60 ; CPU:$CF91 PRG:4F91 85 60 lda #$00 ; CPU:$CF93 PRG:4F93 A9 00 sta Zp61 ; CPU:$CF95 PRG:4F95 85 61 lda #$32 ; CPU:$CF97 PRG:4F97 A9 32 sta Zp56 ; CPU:$CF99 PRG:4F99 85 56 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop4 ; Global: Branch target inside CheckActorCount: taken when Loop4. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop4: rts ; CPU:$CF9B PRG:4F9B 60 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop5 ; Global: Branch target inside CheckActorCount: taken when Loop5. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop5: ldx Zp65 ; CPU:$CF9C PRG:4F9C A6 65 lda $0400,x ; CPU:$CF9E PRG:4F9E BD 00 04 and #$40 ; CPU:$CFA1 PRG:4FA1 29 40 bne CheckActorCount_Loop4 ; CPU:$CFA3 PRG:4FA3 D0 F6 jmp Sub_CF8F ; CPU:$CFA5 PRG:4FA5 4C 8F CF ; ---- data $CFA8-$CFFC (85 bytes) ---- ; referenced by `lda $CFC5,y` at $CE9A (operand $CFC5 falls inside this region) ; referenced by `lda $CFC5,y` at $CEA0 (operand $CFC5 falls inside this region) ; referenced by `lda $CFC5,x` at $CEE2 (operand $CFC5 falls inside this region) ; referenced by `lda $CFC5,x` at $CEE8 (operand $CFC5 falls inside this region) .byte $A9, $00, $85, $98, $A5, $6F, $F0, $0C, $A5, $96, $D0, $08, $AD, $E8, $05, $C9 ; CPU:$CFA8 PRG:4FA8 A9 00 85 98 A5 6F F0 0C A5 96 D0 08 AD E8 05 C9 .byte $05, $D0, $01, $60, $A9, $09, $85, $6A, $A9, $00, $85, $6C, $60, $50, $24, $50 ; CPU:$CFB8 PRG:4FB8 05 D0 01 60 A9 09 85 6A A9 00 85 6C 60 50 24 50 .byte $24, $50, $24, $50, $24, $98, $22, $BA, $22, $D8, $22, $FA, $22, $D6, $22, $B8 ; CPU:$CFC8 PRG:4FC8 24 50 24 50 24 98 22 BA 22 D8 22 FA 22 D6 22 B8 .byte $22, $DA, $22, $F8, $22, $F6, $22, $98, $22, $D8, $22, $18, $23, $B6, $22, $BA ; CPU:$CFD8 PRG:4FD8 22 DA 22 F8 22 F6 22 98 22 D8 22 18 23 B6 22 BA .byte $22, $D8, $22, $F6, $22, $98, $22, $7A, $22, $D8, $22, $18, $23, $B6, $22, $D8 ; CPU:$CFE8 PRG:4FE8 22 D8 22 F6 22 98 22 7A 22 D8 22 18 23 B6 22 D8 .byte $22, $BA, $22, $18, $23 ; CPU:$CFF8 PRG:4FF8 22 BA 22 18 23 ; ----------------------------------------------------------------------------- ; Routine: Sub_CFFD ; Global: Branch target inside Sub: taken when CFFD. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_CFFD: ldy #$00 ; CPU:$CFFD PRG:4FFD A0 00 ldx #$00 ; CPU:$CFFF PRG:4FFF A2 00 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_OnCarryClear2 ; Global: Branch target inside CheckActorCount: taken when OnCarryClear2. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_OnCarryClear2: lda $0400,x ; CPU:$D001 PRG:5001 BD 00 04 and #$87 ; CPU:$D004 PRG:5004 29 87 cmp Zp20 ; CPU:$D006 PRG:5006 C5 20 beq CheckActorCount_Loop6 ; CPU:$D008 PRG:5008 F0 04 lda #$00 ; CPU:$D00A PRG:500A A9 00 beq CheckActorCount_Loop7 ; CPU:$D00C PRG:500C F0 07 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop6 ; Global: Branch target inside CheckActorCount: taken when Loop6. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop6: iny ; CPU:$D00E PRG:500E C8 txa ; CPU:$D00F PRG:500F 8A sta $0522,y ; CPU:$D010 PRG:5010 99 22 05 lda Zp20 ; CPU:$D013 PRG:5013 A5 20 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop7 ; Global: Branch target inside CheckActorCount: taken when Loop7. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop7: sta $0471,x ; CPU:$D015 PRG:5015 9D 71 04 inx ; CPU:$D018 PRG:5018 E8 cpx #$70 ; CPU:$D019 PRG:5019 E0 70 bcc CheckActorCount_OnCarryClear2 ; CPU:$D01B PRG:501B 90 E4 cpy #$00 ; CPU:$D01D PRG:501D C0 00 bne CheckActorCount_OnNonzero ; CPU:$D01F PRG:501F D0 01 rts ; CPU:$D021 PRG:5021 60 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_OnNonzero ; Global: Branch target inside CheckActorCount: taken when the tested value is not zero. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_OnNonzero: ldx $0522,y ; CPU:$D022 PRG:5022 BE 22 05 lda $0471,x ; CPU:$D025 PRG:5025 BD 71 04 beq CheckActorCount_Loop8 ; CPU:$D028 PRG:5028 F0 18 sty Zp25 ; CPU:$D02A PRG:502A 84 25 ldy #$00 ; CPU:$D02C PRG:502C A0 00 sty Zp21 ; CPU:$D02E PRG:502E 84 21 tya ; CPU:$D030 PRG:5030 98 sta $0471,x ; CPU:$D031 PRG:5031 9D 71 04 txa ; CPU:$D034 PRG:5034 8A sta $0540,y ; CPU:$D035 PRG:5035 99 40 05 stx Zp20 ; CPU:$D038 PRG:5038 86 20 iny ; CPU:$D03A PRG:503A C8 sty Zp59 ; CPU:$D03B PRG:503B 84 59 jsr Sub_D046 ; CPU:$D03D PRG:503D 20 46 D0 ; ---- data $D040-$D041 (2 bytes) ---- .byte $A4, $25 ; CPU:$D040 PRG:5040 A4 25 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop8 ; Global: Branch target inside CheckActorCount: taken when Loop8. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop8: dey ; CPU:$D042 PRG:5042 88 bne CheckActorCount_OnNonzero ; CPU:$D043 PRG:5043 D0 DD rts ; CPU:$D045 PRG:5045 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_D046 ; Global: Branch target inside Sub: taken when D046. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_D046: ldy #$06 ; CPU:$D046 PRG:5046 A0 06 sty Zp22 ; CPU:$D048 PRG:5048 84 22 ldx #$00 ; CPU:$D04A PRG:504A A2 00 stx Zp24 ; CPU:$D04C PRG:504C 86 24 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_OnNonzero2 ; Global: Branch target inside CheckActorCount: taken when OnNonzero2. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_OnNonzero2: ldy Zp22 ; CPU:$D04E PRG:504E A4 22 lda Zp20 ; CPU:$D050 PRG:5050 A5 20 and #$10 ; CPU:$D052 PRG:5052 29 10 beq CheckActorCount_Loop9 ; CPU:$D054 PRG:5054 F0 05 tya ; CPU:$D056 PRG:5056 98 clc ; CPU:$D057 PRG:5057 18 adc #$06 ; CPU:$D058 PRG:5058 69 06 tay ; CPU:$D05A PRG:505A A8 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop9 ; Global: Branch target inside CheckActorCount: taken when Loop9. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop9: lda $F87A,y ; CPU:$D05B PRG:505B B9 7A F8 clc ; CPU:$D05E PRG:505E 18 adc Zp20 ; CPU:$D05F PRG:505F 65 20 tax ; CPU:$D061 PRG:5061 AA and #$0F ; CPU:$D062 PRG:5062 29 0F cmp #$0E ; CPU:$D064 PRG:5064 C9 0E bcs CheckActorCount_Loop10 ; CPU:$D066 PRG:5066 B0 16 txa ; CPU:$D068 PRG:5068 8A and #$F0 ; CPU:$D069 PRG:5069 29 F0 cmp #$70 ; CPU:$D06B PRG:506B C9 70 bcs CheckActorCount_Loop10 ; CPU:$D06D PRG:506D B0 0F lda $0471,x ; CPU:$D06F PRG:506F BD 71 04 beq CheckActorCount_Loop10 ; CPU:$D072 PRG:5072 F0 0A stx Zp23 ; CPU:$D074 PRG:5074 86 23 inc Zp24 ; CPU:$D076 PRG:5076 E6 24 ldx Zp24 ; CPU:$D078 PRG:5078 A6 24 cpx #$02 ; CPU:$D07A PRG:507A E0 02 bcs CheckActorCount_Loop11 ; CPU:$D07C PRG:507C B0 06 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop10 ; Global: Branch target inside CheckActorCount: taken when Loop10. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop10: dec Zp22 ; CPU:$D07E PRG:507E C6 22 bne CheckActorCount_OnNonzero2 ; CPU:$D080 PRG:5080 D0 CC beq CheckActorCount_Loop12 ; CPU:$D082 PRG:5082 F0 09 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop11 ; Global: Branch target inside CheckActorCount: taken when Loop11. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop11: inc Zp21 ; CPU:$D084 PRG:5084 E6 21 ldx Zp21 ; CPU:$D086 PRG:5086 A6 21 lda Zp20 ; CPU:$D088 PRG:5088 A5 20 sta $0559,x ; CPU:$D08A PRG:508A 9D 59 05 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop12 ; Global: Branch target inside CheckActorCount: taken when Loop12. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop12: ldx Zp24 ; CPU:$D08D PRG:508D A6 24 beq CheckActorCount_Loop13 ; CPU:$D08F PRG:508F F0 14 ldx Zp23 ; CPU:$D091 PRG:5091 A6 23 lda #$00 ; CPU:$D093 PRG:5093 A9 00 sta $0471,x ; CPU:$D095 PRG:5095 9D 71 04 ldy Zp59 ; CPU:$D098 PRG:5098 A4 59 txa ; CPU:$D09A PRG:509A 8A sta $0540,y ; CPU:$D09B PRG:509B 99 40 05 stx Zp20 ; CPU:$D09E PRG:509E 86 20 inc Zp59 ; CPU:$D0A0 PRG:50A0 E6 59 jmp Sub_D046 ; CPU:$D0A2 PRG:50A2 4C 46 D0 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop13 ; Global: Branch target inside CheckActorCount: taken when Loop13. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop13: ldx Zp21 ; CPU:$D0A5 PRG:50A5 A6 21 beq CheckActorCount_Loop14 ; CPU:$D0A7 PRG:50A7 F0 0A lda $0559,x ; CPU:$D0A9 PRG:50A9 BD 59 05 dec Zp21 ; CPU:$D0AC PRG:50AC C6 21 sta Zp20 ; CPU:$D0AE PRG:50AE 85 20 jmp Sub_D046 ; CPU:$D0B0 PRG:50B0 4C 46 D0 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop14 ; Global: Branch target inside CheckActorCount: taken when Loop14. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop14: ldy Zp59 ; CPU:$D0B3 PRG:50B3 A4 59 cpy #$04 ; CPU:$D0B5 PRG:50B5 C0 04 bcc CheckActorCount_Loop15 ; CPU:$D0B7 PRG:50B7 90 29 tya ; CPU:$D0B9 PRG:50B9 98 clc ; CPU:$D0BA PRG:50BA 18 adc $05A5 ; CPU:$D0BB PRG:50BB 6D A5 05 sta $05A5 ; CPU:$D0BE PRG:50BE 8D A5 05 tya ; CPU:$D0C1 PRG:50C1 98 sec ; CPU:$D0C2 PRG:50C2 38 sbc #$03 ; CPU:$D0C3 PRG:50C3 E9 03 asl a ; CPU:$D0C5 PRG:50C5 0A asl a ; CPU:$D0C6 PRG:50C6 0A clc ; CPU:$D0C7 PRG:50C7 18 adc $05A6 ; CPU:$D0C8 PRG:50C8 6D A6 05 sta $05A6 ; CPU:$D0CB PRG:50CB 8D A6 05 dey ; CPU:$D0CE PRG:50CE 88 ldx Zp58 ; CPU:$D0CF PRG:50CF A6 58 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_OnNonnegative ; Global: Branch target inside CheckActorCount: taken when the tested value is not negative. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_OnNonnegative: lda $0540,y ; CPU:$D0D1 PRG:50D1 B9 40 05 sta $0568,x ; CPU:$D0D4 PRG:50D4 9D 68 05 inx ; CPU:$D0D7 PRG:50D7 E8 dey ; CPU:$D0D8 PRG:50D8 88 bpl CheckActorCount_OnNonnegative ; CPU:$D0D9 PRG:50D9 10 F6 lda #$FF ; CPU:$D0DB PRG:50DB A9 FF sta $0568,x ; CPU:$D0DD PRG:50DD 9D 68 05 stx Zp58 ; CPU:$D0E0 PRG:50E0 86 58 ; ----------------------------------------------------------------------------- ; Routine: CheckActorCount_Loop15 ; Global: Branch target inside CheckActorCount: taken when Loop15. ; Local: Part of CheckActorCount. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- CheckActorCount_Loop15: lda #$00 ; CPU:$D0E2 PRG:50E2 A9 00 sta Zp59 ; CPU:$D0E4 PRG:50E4 85 59 rts ; CPU:$D0E6 PRG:50E6 60 ; ----------------------------------------------------------------------------- ; Routine: TickActorsOnEvenFrame ; Global: Updates the actors on every second frame. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickActorsOnEvenFrame: lda FrameCounter ; CPU:$D0E7 PRG:50E7 A5 31 ror a ; CPU:$D0E9 PRG:50E9 6A bcs TickActorsOnEvenFrame_Loop ; CPU:$D0EA PRG:50EA B0 01 rts ; CPU:$D0EC PRG:50EC 60 ; ----------------------------------------------------------------------------- ; Routine: TickActorsOnEvenFrame_Loop ; Global: Branch target inside TickActorsOnEvenFrame: taken when the loop repeats. ; Local: Part of TickActorsOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickActorsOnEvenFrame_Loop: inc Zp56 ; CPU:$D0ED PRG:50ED E6 56 lda Zp56 ; CPU:$D0EF PRG:50EF A5 56 cmp #$04 ; CPU:$D0F1 PRG:50F1 C9 04 bcc TickActorsOnEvenFrame_Loop2; CPU:$D0F3 PRG:50F3 90 11 lda #$00 ; CPU:$D0F5 PRG:50F5 A9 00 sta Zp56 ; CPU:$D0F7 PRG:50F7 85 56 sta Zp59 ; CPU:$D0F9 PRG:50F9 85 59 inc Zp3F ; CPU:$D0FB PRG:50FB E6 3F lda Zp3F ; CPU:$D0FD PRG:50FD A5 3F cmp #$08 ; CPU:$D0FF PRG:50FF C9 08 bcc TickActorsOnEvenFrame_Loop2; CPU:$D101 PRG:5101 90 03 inc Zp61 ; CPU:$D103 PRG:5103 E6 61 rts ; CPU:$D105 PRG:5105 60 ; ----------------------------------------------------------------------------- ; Routine: TickActorsOnEvenFrame_Loop2 ; Global: Branch target inside TickActorsOnEvenFrame: taken when Loop2. ; Local: Part of TickActorsOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickActorsOnEvenFrame_Loop2: ldy Zp59 ; CPU:$D106 PRG:5106 A4 59 lda $0568,y ; CPU:$D108 PRG:5108 B9 68 05 cmp #$FF ; CPU:$D10B PRG:510B C9 FF bne TickActorsOnEvenFrame_Loop3; CPU:$D10D PRG:510D D0 01 rts ; CPU:$D10F PRG:510F 60 ; ----------------------------------------------------------------------------- ; Routine: TickActorsOnEvenFrame_Loop3 ; Global: Branch target inside TickActorsOnEvenFrame: taken when Loop3. ; Local: Part of TickActorsOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickActorsOnEvenFrame_Loop3: ldx #$00 ; CPU:$D110 PRG:5110 A2 00 ; ----------------------------------------------------------------------------- ; Routine: TickActorsOnEvenFrame_OnCarryClear ; Global: Branch target inside TickActorsOnEvenFrame: taken when the addition or subtraction did not carry. ; Local: Part of TickActorsOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickActorsOnEvenFrame_OnCarryClear: sta $0540,x ; CPU:$D112 PRG:5112 9D 40 05 inx ; CPU:$D115 PRG:5115 E8 iny ; CPU:$D116 PRG:5116 C8 lda $0568,y ; CPU:$D117 PRG:5117 B9 68 05 cmp #$FF ; CPU:$D11A PRG:511A C9 FF beq TickActorsOnEvenFrame_Loop4; CPU:$D11C PRG:511C F0 04 cpx #$0D ; CPU:$D11E PRG:511E E0 0D bcc TickActorsOnEvenFrame_OnCarryClear ; CPU:$D120 PRG:5120 90 F0 ; ----------------------------------------------------------------------------- ; Routine: TickActorsOnEvenFrame_Loop4 ; Global: Branch target inside TickActorsOnEvenFrame: taken when Loop4. ; Local: Part of TickActorsOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickActorsOnEvenFrame_Loop4: sty Zp59 ; CPU:$D122 PRG:5122 84 59 stx Zp24 ; CPU:$D124 PRG:5124 86 24 stx Zp21 ; CPU:$D126 PRG:5126 86 21 ldx #$00 ; CPU:$D128 PRG:5128 A2 00 stx Zp36 ; CPU:$D12A PRG:512A 86 36 ; ----------------------------------------------------------------------------- ; Routine: TickActorsOnEvenFrame_OnNonzero ; Global: Branch target inside TickActorsOnEvenFrame: taken when the tested value is not zero. ; Local: Part of TickActorsOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickActorsOnEvenFrame_OnNonzero: ldx Zp36 ; CPU:$D12C PRG:512C A6 36 lda $0540,x ; CPU:$D12E PRG:512E BD 40 05 jsr Sub_84BF ; CPU:$D131 PRG:5131 20 BF 84 lda Zp36 ; CPU:$D134 PRG:5134 A5 36 asl a ; CPU:$D136 PRG:5136 0A asl a ; CPU:$D137 PRG:5137 0A tay ; CPU:$D138 PRG:5138 A8 lda Zp19 ; CPU:$D139 PRG:5139 A5 19 sta $0300,y ; CPU:$D13B PRG:513B 99 00 03 lda Zp1A ; CPU:$D13E PRG:513E A5 1A sta $0301,y ; CPU:$D140 PRG:5140 99 01 03 inc Zp36 ; CPU:$D143 PRG:5143 E6 36 dec Zp24 ; CPU:$D145 PRG:5145 C6 24 bne TickActorsOnEvenFrame_OnNonzero ; CPU:$D147 PRG:5147 D0 E3 lda #$00 ; CPU:$D149 PRG:5149 A9 00 sta $0304,y ; CPU:$D14B PRG:514B 99 04 03 ldx Zp3F ; CPU:$D14E PRG:514E A6 3F lda $D1A8,x ; CPU:$D150 PRG:5150 BD A8 D1 cmp #$03 ; CPU:$D153 PRG:5153 C9 03 bcc TickActorsOnEvenFrame_Loop5; CPU:$D155 PRG:5155 90 04 jsr Sub_D181 ; CPU:$D157 PRG:5157 20 81 D1 rts ; CPU:$D15A PRG:515A 60 ; ----------------------------------------------------------------------------- ; Routine: TickActorsOnEvenFrame_Loop5 ; Global: Branch target inside TickActorsOnEvenFrame: taken when Loop5. ; Local: Part of TickActorsOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickActorsOnEvenFrame_Loop5: jsr Sub_D15F ; CPU:$D15B PRG:515B 20 5F D1 rts ; CPU:$D15E PRG:515E 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_D15F ; Global: Branch target inside Sub: taken when D15F. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_D15F: asl a ; CPU:$D15F PRG:515F 0A tax ; CPU:$D160 PRG:5160 AA lda $F2FB,x ; CPU:$D161 PRG:5161 BD FB F2 sta Zp19 ; CPU:$D164 PRG:5164 85 19 lda $F2FC,x ; CPU:$D166 PRG:5166 BD FC F2 sta Zp1A ; CPU:$D169 PRG:5169 85 1A ldx #$00 ; CPU:$D16B PRG:516B A2 00 ; ----------------------------------------------------------------------------- ; Routine: TickActorsOnEvenFrame_OnNonnegative ; Global: Branch target inside TickActorsOnEvenFrame: taken when the tested value is not negative. ; Local: Part of TickActorsOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickActorsOnEvenFrame_OnNonnegative: txa ; CPU:$D16D PRG:516D 8A asl a ; CPU:$D16E PRG:516E 0A asl a ; CPU:$D16F PRG:516F 0A tay ; CPU:$D170 PRG:5170 A8 lda Zp19 ; CPU:$D171 PRG:5171 A5 19 sta $0302,y ; CPU:$D173 PRG:5173 99 02 03 lda Zp1A ; CPU:$D176 PRG:5176 A5 1A sta $0303,y ; CPU:$D178 PRG:5178 99 03 03 inx ; CPU:$D17B PRG:517B E8 dec Zp21 ; CPU:$D17C PRG:517C C6 21 bpl TickActorsOnEvenFrame_OnNonnegative ; CPU:$D17E PRG:517E 10 ED rts ; CPU:$D180 PRG:5180 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_D181 ; Global: Branch target inside Sub: taken when D181. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_D181: ldx #$00 ; CPU:$D181 PRG:5181 A2 00 ; ----------------------------------------------------------------------------- ; Routine: TickActorsOnEvenFrame_OnNonnegative2 ; Global: Branch target inside TickActorsOnEvenFrame: taken when OnNonnegative2. ; Local: Part of TickActorsOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickActorsOnEvenFrame_OnNonnegative2: lda $0540,x ; CPU:$D183 PRG:5183 BD 40 05 stx Zp24 ; CPU:$D186 PRG:5186 86 24 tay ; CPU:$D188 PRG:5188 A8 lda $0400,y ; CPU:$D189 PRG:5189 B9 00 04 and #$07 ; CPU:$D18C PRG:518C 29 07 asl a ; CPU:$D18E PRG:518E 0A tay ; CPU:$D18F PRG:518F A8 txa ; CPU:$D190 PRG:5190 8A asl a ; CPU:$D191 PRG:5191 0A asl a ; CPU:$D192 PRG:5192 0A tax ; CPU:$D193 PRG:5193 AA lda $F29E,y ; CPU:$D194 PRG:5194 B9 9E F2 sta $0302,x ; CPU:$D197 PRG:5197 9D 02 03 lda $F29F,y ; CPU:$D19A PRG:519A B9 9F F2 sta $0303,x ; CPU:$D19D PRG:519D 9D 03 03 ldx Zp24 ; CPU:$D1A0 PRG:51A0 A6 24 inx ; CPU:$D1A2 PRG:51A2 E8 dec Zp21 ; CPU:$D1A3 PRG:51A3 C6 21 bpl TickActorsOnEvenFrame_OnNonnegative2 ; CPU:$D1A5 PRG:51A5 10 DC rts ; CPU:$D1A7 PRG:51A7 60 ; ---- data $D1A8-$D1AF (8 bytes) ---- ; referenced by `lda $D1A8,x` at $D150 (operand $D1A8 falls inside this region) .byte $00, $03, $00, $03, $00, $01, $02, $00 ; CPU:$D1A8 PRG:51A8 00 03 00 03 00 01 02 00 ; ----------------------------------------------------------------------------- ; Routine: InitPlayerPosition ; Global: Places the player at the start of the level. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitPlayerPosition: lda #$00 ; CPU:$D1B0 PRG:51B0 A9 00 sta Zp22 ; CPU:$D1B2 PRG:51B2 85 22 lda #$FF ; CPU:$D1B4 PRG:51B4 A9 FF sta Zp24 ; CPU:$D1B6 PRG:51B6 85 24 ; ----------------------------------------------------------------------------- ; Routine: InitPlayerPosition_OnCarryClear ; Global: Branch target inside InitPlayerPosition: taken when the addition or subtraction did not carry. ; Local: Part of InitPlayerPosition. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitPlayerPosition_OnCarryClear: lda Zp22 ; CPU:$D1B8 PRG:51B8 A5 22 asl a ; CPU:$D1BA PRG:51BA 0A asl a ; CPU:$D1BB PRG:51BB 0A asl a ; CPU:$D1BC PRG:51BC 0A asl a ; CPU:$D1BD PRG:51BD 0A tax ; CPU:$D1BE PRG:51BE AA lda #$0E ; CPU:$D1BF PRG:51BF A9 0E sta Zp1F ; CPU:$D1C1 PRG:51C1 85 1F ; ----------------------------------------------------------------------------- ; Routine: InitPlayerPosition_OnNonzero ; Global: Branch target inside InitPlayerPosition: taken when the tested value is not zero. ; Local: Part of InitPlayerPosition. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitPlayerPosition_OnNonzero: lda $0400,x ; CPU:$D1C3 PRG:51C3 BD 00 04 bne InitPlayerPosition_Loop2 ; CPU:$D1C6 PRG:51C6 D0 30 stx Zp58 ; CPU:$D1C8 PRG:51C8 86 58 txa ; CPU:$D1CA PRG:51CA 8A ldy Zp22 ; CPU:$D1CB PRG:51CB A4 22 sta $0540,y ; CPU:$D1CD PRG:51CD 99 40 05 inx ; CPU:$D1D0 PRG:51D0 E8 ; ----------------------------------------------------------------------------- ; Routine: InitPlayerPosition_OnNonzero2 ; Global: Branch target inside InitPlayerPosition: taken when OnNonzero2. ; Local: Part of InitPlayerPosition. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitPlayerPosition_OnNonzero2: lda $0400,x ; CPU:$D1D1 PRG:51D1 BD 00 04 beq InitPlayerPosition_Loop ; CPU:$D1D4 PRG:51D4 F0 10 ldy Zp58 ; CPU:$D1D6 PRG:51D6 A4 58 sta $0400,y ; CPU:$D1D8 PRG:51D8 99 00 04 inc Zp58 ; CPU:$D1DB PRG:51DB E6 58 lda #$00 ; CPU:$D1DD PRG:51DD A9 00 sta $0400,x ; CPU:$D1DF PRG:51DF 9D 00 04 stx Zp24 ; CPU:$D1E2 PRG:51E2 86 24 inc Zp24 ; CPU:$D1E4 PRG:51E4 E6 24 ; ----------------------------------------------------------------------------- ; Routine: InitPlayerPosition_Loop ; Global: Branch target inside InitPlayerPosition: taken when the loop repeats. ; Local: Part of InitPlayerPosition. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitPlayerPosition_Loop: inx ; CPU:$D1E6 PRG:51E6 E8 dec Zp1F ; CPU:$D1E7 PRG:51E7 C6 1F bne InitPlayerPosition_OnNonzero2 ; CPU:$D1E9 PRG:51E9 D0 E6 ldy Zp22 ; CPU:$D1EB PRG:51EB A4 22 lda Zp24 ; CPU:$D1ED PRG:51ED A5 24 sta $0522,y ; CPU:$D1EF PRG:51EF 99 22 05 lda #$FF ; CPU:$D1F2 PRG:51F2 A9 FF sta Zp24 ; CPU:$D1F4 PRG:51F4 85 24 bmi InitPlayerPosition_Loop3 ; CPU:$D1F6 PRG:51F6 30 0C ; ----------------------------------------------------------------------------- ; Routine: InitPlayerPosition_Loop2 ; Global: Branch target inside InitPlayerPosition: taken when Loop2. ; Local: Part of InitPlayerPosition. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitPlayerPosition_Loop2: inx ; CPU:$D1F8 PRG:51F8 E8 dec Zp1F ; CPU:$D1F9 PRG:51F9 C6 1F bne InitPlayerPosition_OnNonzero ; CPU:$D1FB PRG:51FB D0 C6 ldy Zp22 ; CPU:$D1FD PRG:51FD A4 22 lda #$FF ; CPU:$D1FF PRG:51FF A9 FF sta $0522,y ; CPU:$D201 PRG:5201 99 22 05 ; ----------------------------------------------------------------------------- ; Routine: InitPlayerPosition_Loop3 ; Global: Branch target inside InitPlayerPosition: taken when Loop3. ; Local: Part of InitPlayerPosition. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitPlayerPosition_Loop3: inc Zp22 ; CPU:$D204 PRG:5204 E6 22 lda Zp22 ; CPU:$D206 PRG:5206 A5 22 cmp #$07 ; CPU:$D208 PRG:5208 C9 07 bcc InitPlayerPosition_OnCarryClear ; CPU:$D20A PRG:520A 90 AC lda #$00 ; CPU:$D20C PRG:520C A9 00 sta Zp58 ; CPU:$D20E PRG:520E 85 58 inc Zp61 ; CPU:$D210 PRG:5210 E6 61 lda Zp65 ; CPU:$D212 PRG:5212 A5 65 bmi InitPlayerPosition_Loop4 ; CPU:$D214 PRG:5214 30 03 jsr Sub_D45E ; CPU:$D216 PRG:5216 20 5E D4 ; ----------------------------------------------------------------------------- ; Routine: InitPlayerPosition_Loop4 ; Global: Branch target inside InitPlayerPosition: taken when Loop4. ; Local: Part of InitPlayerPosition. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitPlayerPosition_Loop4: rts ; CPU:$D219 PRG:5219 60 ; ----------------------------------------------------------------------------- ; Routine: TickTimerOnEvenFrame ; Global: Updates the level timer on every second frame. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickTimerOnEvenFrame: lda FrameCounter ; CPU:$D21A PRG:521A A5 31 ror a ; CPU:$D21C PRG:521C 6A bcs TickTimerOnEvenFrame_Loop ; CPU:$D21D PRG:521D B0 01 rts ; CPU:$D21F PRG:521F 60 ; ----------------------------------------------------------------------------- ; Routine: TickTimerOnEvenFrame_Loop ; Global: Branch target inside TickTimerOnEvenFrame: taken when the loop repeats. ; Local: Part of TickTimerOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickTimerOnEvenFrame_Loop: lda #$00 ; CPU:$D220 PRG:5220 A9 00 sta Zp36 ; CPU:$D222 PRG:5222 85 36 lda #$08 ; CPU:$D224 PRG:5224 A9 08 sta Zp1F ; CPU:$D226 PRG:5226 85 1F ldy Zp58 ; CPU:$D228 PRG:5228 A4 58 ; ----------------------------------------------------------------------------- ; Routine: TickTimerOnEvenFrame_OnCarryClear ; Global: Branch target inside TickTimerOnEvenFrame: taken when the addition or subtraction did not carry. ; Local: Part of TickTimerOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickTimerOnEvenFrame_OnCarryClear: lda $0522,y ; CPU:$D22A PRG:522A B9 22 05 bpl TickTimerOnEvenFrame_Loop2 ; CPU:$D22D PRG:522D 10 12 ; ----------------------------------------------------------------------------- ; Routine: TickTimerOnEvenFrame_OnCarrySet ; Global: Branch target inside TickTimerOnEvenFrame: taken when the addition or subtraction carried. ; Local: Part of TickTimerOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickTimerOnEvenFrame_OnCarrySet: inc Zp58 ; CPU:$D22F PRG:522F E6 58 ldy Zp58 ; CPU:$D231 PRG:5231 A4 58 cpy #$07 ; CPU:$D233 PRG:5233 C0 07 bcc TickTimerOnEvenFrame_OnCarryClear ; CPU:$D235 PRG:5235 90 F3 lda #$00 ; CPU:$D237 PRG:5237 A9 00 ldx Zp36 ; CPU:$D239 PRG:5239 A6 36 sta $0300,x ; CPU:$D23B PRG:523B 9D 00 03 inc Zp61 ; CPU:$D23E PRG:523E E6 61 rts ; CPU:$D240 PRG:5240 60 ; ----------------------------------------------------------------------------- ; Routine: TickTimerOnEvenFrame_Loop2 ; Global: Branch target inside TickTimerOnEvenFrame: taken when Loop2. ; Local: Part of TickTimerOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickTimerOnEvenFrame_Loop2: sta Zp24 ; CPU:$D241 PRG:5241 85 24 lda $0540,y ; CPU:$D243 PRG:5243 B9 40 05 sta Zp25 ; CPU:$D246 PRG:5246 85 25 jsr Sub_84BF ; CPU:$D248 PRG:5248 20 BF 84 ; ----------------------------------------------------------------------------- ; Routine: TickTimerOnEvenFrame_OnZero ; Global: Branch target inside TickTimerOnEvenFrame: taken when the tested value is zero. ; Local: Part of TickTimerOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickTimerOnEvenFrame_OnZero: ldx Zp36 ; CPU:$D24B PRG:524B A6 36 lda Zp19 ; CPU:$D24D PRG:524D A5 19 sta $0300,x ; CPU:$D24F PRG:524F 9D 00 03 inx ; CPU:$D252 PRG:5252 E8 lda Zp1A ; CPU:$D253 PRG:5253 A5 1A sta $0300,x ; CPU:$D255 PRG:5255 9D 00 03 inx ; CPU:$D258 PRG:5258 E8 lda Zp25 ; CPU:$D259 PRG:5259 A5 25 and #$0F ; CPU:$D25B PRG:525B 29 0F cmp #$0B ; CPU:$D25D PRG:525D C9 0B bcs TickTimerOnEvenFrame_Loop5 ; CPU:$D25F PRG:525F B0 33 ldy Zp25 ; CPU:$D261 PRG:5261 A4 25 lda $0400,y ; CPU:$D263 PRG:5263 B9 00 04 and #$87 ; CPU:$D266 PRG:5266 29 87 sta Zp1B ; CPU:$D268 PRG:5268 85 1B bmi TickTimerOnEvenFrame_Loop3 ; CPU:$D26A PRG:526A 30 13 asl a ; CPU:$D26C PRG:526C 0A tay ; CPU:$D26D PRG:526D A8 lda $F29E,y ; CPU:$D26E PRG:526E B9 9E F2 sta $0300,x ; CPU:$D271 PRG:5271 9D 00 03 inx ; CPU:$D274 PRG:5274 E8 lda $F29F,y ; CPU:$D275 PRG:5275 B9 9F F2 sta $0300,x ; CPU:$D278 PRG:5278 9D 00 03 lda #$00 ; CPU:$D27B PRG:527B A9 00 beq TickTimerOnEvenFrame_Loop4 ; CPU:$D27D PRG:527D F0 0B ; ----------------------------------------------------------------------------- ; Routine: TickTimerOnEvenFrame_Loop3 ; Global: Branch target inside TickTimerOnEvenFrame: taken when Loop3. ; Local: Part of TickTimerOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickTimerOnEvenFrame_Loop3: lda #$0D ; CPU:$D27F PRG:527F A9 0D sta $0300,x ; CPU:$D281 PRG:5281 9D 00 03 inx ; CPU:$D284 PRG:5284 E8 lda #$F3 ; CPU:$D285 PRG:5285 A9 F3 sta $0300,x ; CPU:$D287 PRG:5287 9D 00 03 ; ----------------------------------------------------------------------------- ; Routine: TickTimerOnEvenFrame_Loop4 ; Global: Branch target inside TickTimerOnEvenFrame: taken when Loop4. ; Local: Part of TickTimerOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickTimerOnEvenFrame_Loop4: inx ; CPU:$D28A PRG:528A E8 stx Zp36 ; CPU:$D28B PRG:528B 86 36 lda Zp1B ; CPU:$D28D PRG:528D A5 1B beq TickTimerOnEvenFrame_Loop5 ; CPU:$D28F PRG:528F F0 03 jsr Sub_84E3 ; CPU:$D291 PRG:5291 20 E3 84 ; ----------------------------------------------------------------------------- ; Routine: TickTimerOnEvenFrame_Loop5 ; Global: Branch target inside TickTimerOnEvenFrame: taken when Loop5. ; Local: Part of TickTimerOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickTimerOnEvenFrame_Loop5: dec Zp1F ; CPU:$D294 PRG:5294 C6 1F beq TickTimerOnEvenFrame_Loop7 ; CPU:$D296 PRG:5296 F0 17 inc Zp25 ; CPU:$D298 PRG:5298 E6 25 lda Zp25 ; CPU:$D29A PRG:529A A5 25 cmp Zp24 ; CPU:$D29C PRG:529C C5 24 bcs TickTimerOnEvenFrame_OnCarrySet ; CPU:$D29E PRG:529E B0 8F lda Zp19 ; CPU:$D2A0 PRG:52A0 A5 19 clc ; CPU:$D2A2 PRG:52A2 18 adc #$40 ; CPU:$D2A3 PRG:52A3 69 40 sta Zp19 ; CPU:$D2A5 PRG:52A5 85 19 bcc TickTimerOnEvenFrame_Loop6 ; CPU:$D2A7 PRG:52A7 90 02 inc Zp1A ; CPU:$D2A9 PRG:52A9 E6 1A ; ----------------------------------------------------------------------------- ; Routine: TickTimerOnEvenFrame_Loop6 ; Global: Branch target inside TickTimerOnEvenFrame: taken when Loop6. ; Local: Part of TickTimerOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickTimerOnEvenFrame_Loop6: lda #$00 ; CPU:$D2AB PRG:52AB A9 00 beq TickTimerOnEvenFrame_OnZero; CPU:$D2AD PRG:52AD F0 9C ; ----------------------------------------------------------------------------- ; Routine: TickTimerOnEvenFrame_Loop7 ; Global: Branch target inside TickTimerOnEvenFrame: taken when Loop7. ; Local: Part of TickTimerOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickTimerOnEvenFrame_Loop7: inc Zp25 ; CPU:$D2AF PRG:52AF E6 25 ldy Zp58 ; CPU:$D2B1 PRG:52B1 A4 58 lda Zp25 ; CPU:$D2B3 PRG:52B3 A5 25 sta $0540,y ; CPU:$D2B5 PRG:52B5 99 40 05 ldx Zp36 ; CPU:$D2B8 PRG:52B8 A6 36 lda #$00 ; CPU:$D2BA PRG:52BA A9 00 sta $0300,x ; CPU:$D2BC PRG:52BC 9D 00 03 rts ; CPU:$D2BF PRG:52BF 60 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame ; Global: Resets the scroll on every second frame. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame: lda FrameCounter ; CPU:$D2C0 PRG:52C0 A5 31 ror a ; CPU:$D2C2 PRG:52C2 6A bcs ResetScrollOnEvenFrame_Loop; CPU:$D2C3 PRG:52C3 B0 01 rts ; CPU:$D2C5 PRG:52C5 60 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_Loop ; Global: Branch target inside ResetScrollOnEvenFrame: taken when the loop repeats. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_Loop: lda #$00 ; CPU:$D2C6 PRG:52C6 A9 00 sta Zp20 ; CPU:$D2C8 PRG:52C8 85 20 lda $05A6 ; CPU:$D2CA PRG:52CA AD A6 05 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_OnNonnegative ; Global: Branch target inside ResetScrollOnEvenFrame: taken when the tested value is not negative. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_OnNonnegative: sec ; CPU:$D2CD PRG:52CD 38 sbc #$0A ; CPU:$D2CE PRG:52CE E9 0A bcc ResetScrollOnEvenFrame_Loop2 ; CPU:$D2D0 PRG:52D0 90 0A sta $05A6 ; CPU:$D2D2 PRG:52D2 8D A6 05 inc Zp20 ; CPU:$D2D5 PRG:52D5 E6 20 lda $05A6 ; CPU:$D2D7 PRG:52D7 AD A6 05 bpl ResetScrollOnEvenFrame_OnNonnegative ; CPU:$D2DA PRG:52DA 10 F1 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_Loop2 ; Global: Branch target inside ResetScrollOnEvenFrame: taken when Loop2. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_Loop2: lda $05A6 ; CPU:$D2DC PRG:52DC AD A6 05 sta $05AA ; CPU:$D2DF PRG:52DF 8D AA 05 lda Zp20 ; CPU:$D2E2 PRG:52E2 A5 20 sta $05A9 ; CPU:$D2E4 PRG:52E4 8D A9 05 ldx #$02 ; CPU:$D2E7 PRG:52E7 A2 02 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_OnNonzero ; Global: Branch target inside ResetScrollOnEvenFrame: taken when the tested value is not zero. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_OnNonzero: lda $05A8,x ; CPU:$D2E9 PRG:52E9 BD A8 05 cmp #$0A ; CPU:$D2EC PRG:52EC C9 0A bcc ResetScrollOnEvenFrame_Loop3 ; CPU:$D2EE PRG:52EE 90 0B inc $05A7,x ; CPU:$D2F0 PRG:52F0 FE A7 05 clc ; CPU:$D2F3 PRG:52F3 18 adc #$06 ; CPU:$D2F4 PRG:52F4 69 06 and #$0F ; CPU:$D2F6 PRG:52F6 29 0F sta $05A8,x ; CPU:$D2F8 PRG:52F8 9D A8 05 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_Loop3 ; Global: Branch target inside ResetScrollOnEvenFrame: taken when Loop3. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_Loop3: dex ; CPU:$D2FB PRG:52FB CA bne ResetScrollOnEvenFrame_OnNonzero ; CPU:$D2FC PRG:52FC D0 EB lda $05A5 ; CPU:$D2FE PRG:52FE AD A5 05 tax ; CPU:$D301 PRG:5301 AA clc ; CPU:$D302 PRG:5302 18 adc Zp62 ; CPU:$D303 PRG:5303 65 62 sta Zp62 ; CPU:$D305 PRG:5305 85 62 txa ; CPU:$D307 PRG:5307 8A clc ; CPU:$D308 PRG:5308 18 adc Zp63 ; CPU:$D309 PRG:5309 65 63 sta Zp63 ; CPU:$D30B PRG:530B 85 63 txa ; CPU:$D30D PRG:530D 8A and #$0F ; CPU:$D30E PRG:530E 29 0F clc ; CPU:$D310 PRG:5310 18 adc $05AF ; CPU:$D311 PRG:5311 6D AF 05 sta $05AF ; CPU:$D314 PRG:5314 8D AF 05 txa ; CPU:$D317 PRG:5317 8A ror a ; CPU:$D318 PRG:5318 6A ror a ; CPU:$D319 PRG:5319 6A ror a ; CPU:$D31A PRG:531A 6A ror a ; CPU:$D31B PRG:531B 6A and #$0F ; CPU:$D31C PRG:531C 29 0F clc ; CPU:$D31E PRG:531E 18 adc $05AE ; CPU:$D31F PRG:531F 6D AE 05 sta $05AE ; CPU:$D322 PRG:5322 8D AE 05 ldx #$03 ; CPU:$D325 PRG:5325 A2 03 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_OnNonzero2 ; Global: Branch target inside ResetScrollOnEvenFrame: taken when OnNonzero2. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_OnNonzero2: lda $05AC,x ; CPU:$D327 PRG:5327 BD AC 05 cmp #$0A ; CPU:$D32A PRG:532A C9 0A bcc ResetScrollOnEvenFrame_Loop4 ; CPU:$D32C PRG:532C 90 0B inc $05AB,x ; CPU:$D32E PRG:532E FE AB 05 clc ; CPU:$D331 PRG:5331 18 adc #$06 ; CPU:$D332 PRG:5332 69 06 and #$0F ; CPU:$D334 PRG:5334 29 0F sta $05AC,x ; CPU:$D336 PRG:5336 9D AC 05 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_Loop4 ; Global: Branch target inside ResetScrollOnEvenFrame: taken when Loop4. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_Loop4: dex ; CPU:$D339 PRG:5339 CA bne ResetScrollOnEvenFrame_OnNonzero2 ; CPU:$D33A PRG:533A D0 EB ldx #$02 ; CPU:$D33C PRG:533C A2 02 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_OnNonnegative2 ; Global: Branch target inside ResetScrollOnEvenFrame: taken when OnNonnegative2. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_OnNonnegative2: lda $05A8,x ; CPU:$D33E PRG:533E BD A8 05 clc ; CPU:$D341 PRG:5341 18 adc $05B2,x ; CPU:$D342 PRG:5342 7D B2 05 sta $05B2,x ; CPU:$D345 PRG:5345 9D B2 05 dex ; CPU:$D348 PRG:5348 CA bpl ResetScrollOnEvenFrame_OnNonnegative2 ; CPU:$D349 PRG:5349 10 F3 ldx #$04 ; CPU:$D34B PRG:534B A2 04 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_OnNonzero3 ; Global: Branch target inside ResetScrollOnEvenFrame: taken when OnNonzero3. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_OnNonzero3: lda $05B0,x ; CPU:$D34D PRG:534D BD B0 05 cmp #$0A ; CPU:$D350 PRG:5350 C9 0A bcc ResetScrollOnEvenFrame_Loop5 ; CPU:$D352 PRG:5352 90 0B inc $05AF,x ; CPU:$D354 PRG:5354 FE AF 05 clc ; CPU:$D357 PRG:5357 18 adc #$06 ; CPU:$D358 PRG:5358 69 06 and #$0F ; CPU:$D35A PRG:535A 29 0F sta $05B0,x ; CPU:$D35C PRG:535C 9D B0 05 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_Loop5 ; Global: Branch target inside ResetScrollOnEvenFrame: taken when Loop5. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_Loop5: dex ; CPU:$D35F PRG:535F CA bne ResetScrollOnEvenFrame_OnNonzero3 ; CPU:$D360 PRG:5360 D0 EB lda #$04 ; CPU:$D362 PRG:5362 A9 04 sta $05C0 ; CPU:$D364 PRG:5364 8D C0 05 sta $05C6 ; CPU:$D367 PRG:5367 8D C6 05 lda #$01 ; CPU:$D36A PRG:536A A9 01 sta $05C1 ; CPU:$D36C PRG:536C 8D C1 05 sta $05C7 ; CPU:$D36F PRG:536F 8D C7 05 ldx #$00 ; CPU:$D372 PRG:5372 A2 00 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_OnCarryClear ; Global: Branch target inside ResetScrollOnEvenFrame: taken when the addition or subtraction did not carry. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_OnCarryClear: lda $05AC,x ; CPU:$D374 PRG:5374 BD AC 05 tay ; CPU:$D377 PRG:5377 A8 lda $F1D6,y ; CPU:$D378 PRG:5378 B9 D6 F1 sta $05C2,x ; CPU:$D37B PRG:537B 9D C2 05 lda $05A8,x ; CPU:$D37E PRG:537E BD A8 05 tay ; CPU:$D381 PRG:5381 A8 lda $F1D6,y ; CPU:$D382 PRG:5382 B9 D6 F1 sta $05C8,x ; CPU:$D385 PRG:5385 9D C8 05 inx ; CPU:$D388 PRG:5388 E8 cpx #$04 ; CPU:$D389 PRG:5389 E0 04 bcc ResetScrollOnEvenFrame_OnCarryClear ; CPU:$D38B PRG:538B 90 E7 lda #$06 ; CPU:$D38D PRG:538D A9 06 sta $05D2 ; CPU:$D38F PRG:538F 8D D2 05 lda #$01 ; CPU:$D392 PRG:5392 A9 01 sta $05D3 ; CPU:$D394 PRG:5394 8D D3 05 ldx #$00 ; CPU:$D397 PRG:5397 A2 00 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_OnCarryClear2 ; Global: Branch target inside ResetScrollOnEvenFrame: taken when OnCarryClear2. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_OnCarryClear2: lda $05B0,x ; CPU:$D399 PRG:5399 BD B0 05 tay ; CPU:$D39C PRG:539C A8 lda $F1D6,y ; CPU:$D39D PRG:539D B9 D6 F1 sta $05D4,x ; CPU:$D3A0 PRG:53A0 9D D4 05 inx ; CPU:$D3A3 PRG:53A3 E8 cpx #$06 ; CPU:$D3A4 PRG:53A4 E0 06 bcc ResetScrollOnEvenFrame_OnCarryClear2 ; CPU:$D3A6 PRG:53A6 90 F1 ldx Zp37 ; CPU:$D3A8 PRG:53A8 A6 37 lda Zp6F ; CPU:$D3AA PRG:53AA A5 6F asl a ; CPU:$D3AC PRG:53AC 0A tay ; CPU:$D3AD PRG:53AD A8 lda $D40A,y ; CPU:$D3AE PRG:53AE B9 0A D4 sta $0338,x ; CPU:$D3B1 PRG:53B1 9D 38 03 lda $D40B,y ; CPU:$D3B4 PRG:53B4 B9 0B D4 sta $0339,x ; CPU:$D3B7 PRG:53B7 9D 39 03 lda #$C0 ; CPU:$D3BA PRG:53BA A9 C0 sta $033A,x ; CPU:$D3BC PRG:53BC 9D 3A 03 lda #$05 ; CPU:$D3BF PRG:53BF A9 05 sta $033B,x ; CPU:$D3C1 PRG:53C1 9D 3B 03 lda $D40E,y ; CPU:$D3C4 PRG:53C4 B9 0E D4 sta $033C,x ; CPU:$D3C7 PRG:53C7 9D 3C 03 lda $D40F,y ; CPU:$D3CA PRG:53CA B9 0F D4 sta $033D,x ; CPU:$D3CD PRG:53CD 9D 3D 03 lda #$C6 ; CPU:$D3D0 PRG:53D0 A9 C6 sta $033E,x ; CPU:$D3D2 PRG:53D2 9D 3E 03 lda #$05 ; CPU:$D3D5 PRG:53D5 A9 05 sta $033F,x ; CPU:$D3D7 PRG:53D7 9D 3F 03 lda $D412,y ; CPU:$D3DA PRG:53DA B9 12 D4 sta $0340,x ; CPU:$D3DD PRG:53DD 9D 40 03 lda $D413,y ; CPU:$D3E0 PRG:53E0 B9 13 D4 sta $0341,x ; CPU:$D3E3 PRG:53E3 9D 41 03 lda #$D2 ; CPU:$D3E6 PRG:53E6 A9 D2 sta $0342,x ; CPU:$D3E8 PRG:53E8 9D 42 03 lda #$05 ; CPU:$D3EB PRG:53EB A9 05 sta $0343,x ; CPU:$D3ED PRG:53ED 9D 43 03 lda #$00 ; CPU:$D3F0 PRG:53F0 A9 00 sta $0344,x ; CPU:$D3F2 PRG:53F2 9D 44 03 sta $05A5 ; CPU:$D3F5 PRG:53F5 8D A5 05 sta $05A4 ; CPU:$D3F8 PRG:53F8 8D A4 05 sta $05A6 ; CPU:$D3FB PRG:53FB 8D A6 05 sta $05A7 ; CPU:$D3FE PRG:53FE 8D A7 05 txa ; CPU:$D401 PRG:5401 8A clc ; CPU:$D402 PRG:5402 18 adc #$0C ; CPU:$D403 PRG:5403 69 0C sta Zp37 ; CPU:$D405 PRG:5405 85 37 inc Zp61 ; CPU:$D407 PRG:5407 E6 61 rts ; CPU:$D409 PRG:5409 60 ; ---- data $D40A-$D45D (84 bytes) ---- ; referenced by `lda $D412,y` at $CE66 (operand $D412 falls inside this region) ; referenced by `lda $D413,y` at $CE6C (operand $D413 falls inside this region) ; referenced by `lda $D40A,y` at $D3AE (operand $D40A falls inside this region) ; referenced by `lda $D40B,y` at $D3B4 (operand $D40B falls inside this region) ; referenced by `lda $D40E,y` at $D3C4 (operand $D40E falls inside this region) ; referenced by `lda $D40F,y` at $D3CA (operand $D40F falls inside this region) ; ... and 4 further references from decoded code .byte $79, $21, $22, $23, $B9, $21, $42, $23, $F7, $21, $2A, $23, $A5, $31, $6A, $B0 ; CPU:$D40A PRG:540A 79 21 22 23 B9 21 42 23 F7 21 2A 23 A5 31 6A B0 .byte $01, $60, $A5, $71, $C9, $02, $F0, $09, $A5, $5E, $C9, $05, $D0, $03, $20, $86 ; CPU:$D41A PRG:541A 01 60 A5 71 C9 02 F0 09 A5 5E C9 05 D0 03 20 86 .byte $D4, $A5, $5F, $29, $03, $AA, $BD, $5A, $D4, $85, $1B, $A6, $5E, $20, $AF, $D4 ; CPU:$D42A PRG:542A D4 A5 5F 29 03 AA BD 5A D4 85 1B A6 5E 20 AF D4 .byte $20, $8A, $85, $A9, $00, $9D, $00, $03, $20, $E3, $84, $A5, $71, $C9, $02, $F0 ; CPU:$D43A PRG:543A 20 8A 85 A9 00 9D 00 03 20 E3 84 A5 71 C9 02 F0 .byte $06, $C6, $5E, $D0, $02, $E6, $5F, $A5, $58, $D0, $02, $E6, $61, $E6, $61, $60 ; CPU:$D44A PRG:544A 06 C6 5E D0 02 E6 5F A5 58 D0 02 E6 61 E6 61 60 .byte $03, $04, $02, $01 ; CPU:$D45A PRG:545A 03 04 02 01 ; ----------------------------------------------------------------------------- ; Routine: Sub_D45E ; Global: Branch target inside Sub: taken when D45E. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_D45E: lda Zp65 ; CPU:$D45E PRG:545E A5 65 tax ; CPU:$D460 PRG:5460 AA and #$0F ; CPU:$D461 PRG:5461 29 0F tay ; CPU:$D463 PRG:5463 A8 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_OnNonnegative3 ; Global: Branch target inside ResetScrollOnEvenFrame: taken when OnNonnegative3. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_OnNonnegative3: lda $0400,x ; CPU:$D464 PRG:5464 BD 00 04 and #$40 ; CPU:$D467 PRG:5467 29 40 bne ResetScrollOnEvenFrame_Loop6 ; CPU:$D469 PRG:5469 D0 05 dex ; CPU:$D46B PRG:546B CA dey ; CPU:$D46C PRG:546C 88 bpl ResetScrollOnEvenFrame_OnNonnegative3 ; CPU:$D46D PRG:546D 10 F5 rts ; CPU:$D46F PRG:546F 60 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_Loop6 ; Global: Branch target inside ResetScrollOnEvenFrame: taken when Loop6. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_Loop6: txa ; CPU:$D470 PRG:5470 8A cmp Zp65 ; CPU:$D471 PRG:5471 C5 65 beq ResetScrollOnEvenFrame_Loop7 ; CPU:$D473 PRG:5473 F0 10 sec ; CPU:$D475 PRG:5475 38 sbc Zp65 ; CPU:$D476 PRG:5476 E5 65 asl a ; CPU:$D478 PRG:5478 0A asl a ; CPU:$D479 PRG:5479 0A asl a ; CPU:$D47A PRG:547A 0A asl a ; CPU:$D47B PRG:547B 0A clc ; CPU:$D47C PRG:547C 18 adc $0398 ; CPU:$D47D PRG:547D 6D 98 03 sta $0398 ; CPU:$D480 PRG:5480 8D 98 03 stx Zp65 ; CPU:$D483 PRG:5483 86 65 ; ----------------------------------------------------------------------------- ; Routine: ResetScrollOnEvenFrame_Loop7 ; Global: Branch target inside ResetScrollOnEvenFrame: taken when Loop7. ; Local: Part of ResetScrollOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- ResetScrollOnEvenFrame_Loop7: rts ; CPU:$D485 PRG:5485 60 ; ---- data $D486-$D4ED (104 bytes) ---- .byte $A0, $05, $A5, $6F, $0A, $AA, $BD, $EA, $D4, $85, $19, $BD, $EB, $D4, $85, $1A ; CPU:$D486 PRG:5486 A0 05 A5 6F 0A AA BD EA D4 85 19 BD EB D4 85 1A .byte $A9, $A8, $85, $17, $A9, $F2, $85, $18, $20, $8A, $85, $E6, $19, $E6, $19, $88 ; CPU:$D496 PRG:5496 A9 A8 85 17 A9 F2 85 18 20 8A 85 E6 19 E6 19 88 .byte $D0, $F6, $98, $9D, $00, $03, $86, $36, $60, $A5, $6F, $0A, $A8, $B9, $EA, $D4 ; CPU:$D4A6 PRG:54A6 D0 F6 98 9D 00 03 86 36 60 A5 6F 0A A8 B9 EA D4 .byte $85, $19, $B9, $EB, $D4, $85, $1A, $BD, $D9, $05, $0A, $A8, $18, $65, $19, $85 ; CPU:$D4B6 PRG:54B6 85 19 B9 EB D4 85 1A BD D9 05 0A A8 18 65 19 85 .byte $19, $98, $0A, $A8, $A6, $5F, $E8, $8A, $29, $02, $D0, $05, $98, $18, $69, $14 ; CPU:$D4C6 PRG:54C6 19 98 0A A8 A6 5F E8 8A 29 02 D0 05 98 18 69 14 .byte $A8, $A9, $D1, $85, $17, $A9, $F2, $85, $18, $98, $18, $65, $17, $85, $17, $90 ; CPU:$D4D6 PRG:54D6 A8 A9 D1 85 17 A9 F2 85 18 98 18 65 17 85 17 90 .byte $02, $E6, $18, $60, $94, $20, $46, $23 ; CPU:$D4E6 PRG:54E6 02 E6 18 60 94 20 46 23 ; ----------------------------------------------------------------------------- ; Routine: Sub_D4EE ; Global: Branch target inside Sub: taken when D4EE. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_D4EE: lda Zp61 ; CPU:$D4EE PRG:54EE A5 61 jsr DispatchByJumpTable ; CPU:$D4F0 PRG:54F0 20 73 81 ; ---- data $D4F3-$D506 (20 bytes) ---- .byte $07, $D5, $C0, $D2, $15, $D6, $E7, $D0, $37, $D5, $16, $D4, $CF, $D5, $B0, $D1 ; CPU:$D4F3 PRG:54F3 07 D5 C0 D2 15 D6 E7 D0 37 D5 16 D4 CF D5 B0 D1 .byte $1A, $D2, $63, $D5 ; CPU:$D503 PRG:5503 1A D2 63 D5 ; ----------------------------------------------------------------------------- ; Routine: InitBubbleState ; Global: Sets the bubble state up for a new wave. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitBubbleState: lda #$00 ; CPU:$D507 PRG:5507 A9 00 sta Zp58 ; CPU:$D509 PRG:5509 85 58 lda #$04 ; CPU:$D50B PRG:550B A9 04 sta Zp1E ; CPU:$D50D PRG:550D 85 1E ; ----------------------------------------------------------------------------- ; Routine: InitBubbleState_OnNonzero ; Global: Branch target inside InitBubbleState: taken when the tested value is not zero. ; Local: Part of InitBubbleState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitBubbleState_OnNonzero: lda Zp1E ; CPU:$D50F PRG:550F A5 1E sta Zp20 ; CPU:$D511 PRG:5511 85 20 jsr Sub_CFFD ; CPU:$D513 PRG:5513 20 FD CF dec Zp1E ; CPU:$D516 PRG:5516 C6 1E bne InitBubbleState_OnNonzero ; CPU:$D518 PRG:5518 D0 F5 lda $05A6 ; CPU:$D51A PRG:551A AD A6 05 bne InitBubbleState_Loop2 ; CPU:$D51D PRG:551D D0 0D sta Zp61 ; CPU:$D51F PRG:551F 85 61 inc Zp60 ; CPU:$D521 PRG:5521 E6 60 lda Zp68 ; CPU:$D523 PRG:5523 A5 68 cmp #$03 ; CPU:$D525 PRG:5525 C9 03 bcc InitBubbleState_Loop ; CPU:$D527 PRG:5527 90 02 inc Zp68 ; CPU:$D529 PRG:5529 E6 68 ; ----------------------------------------------------------------------------- ; Routine: InitBubbleState_Loop ; Global: Branch target inside InitBubbleState: taken when the loop repeats. ; Local: Part of InitBubbleState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitBubbleState_Loop: rts ; CPU:$D52B PRG:552B 60 ; ----------------------------------------------------------------------------- ; Routine: InitBubbleState_Loop2 ; Global: Branch target inside InitBubbleState: taken when Loop2. ; Local: Part of InitBubbleState. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- InitBubbleState_Loop2: lda #$00 ; CPU:$D52C PRG:552C A9 00 sta Zp3F ; CPU:$D52E PRG:552E 85 3F sta Zp56 ; CPU:$D530 PRG:5530 85 56 sta Zp59 ; CPU:$D532 PRG:5532 85 59 inc Zp61 ; CPU:$D534 PRG:5534 E6 61 rts ; CPU:$D536 PRG:5536 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateBubbleFrame ; Global: Updates the bubbles once per frame. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateBubbleFrame: inc Zp61 ; CPU:$D537 PRG:5537 E6 61 jsr Sub_D595 ; CPU:$D539 PRG:5539 20 95 D5 jsr Sub_D5AF ; CPU:$D53C PRG:553C 20 AF D5 ldx Zp65 ; CPU:$D53F PRG:553F A6 65 bmi UpdateBubbleFrame_Loop2 ; CPU:$D541 PRG:5541 30 17 lda $0400,x ; CPU:$D543 PRG:5543 BD 00 04 and #$40 ; CPU:$D546 PRG:5546 29 40 bne UpdateBubbleFrame_Loop2 ; CPU:$D548 PRG:5548 D0 10 lda #$00 ; CPU:$D54A PRG:554A A9 00 sta $0358 ; CPU:$D54C PRG:554C 8D 58 03 lda Zp71 ; CPU:$D54F PRG:554F A5 71 cmp #$02 ; CPU:$D551 PRG:5551 C9 02 beq UpdateBubbleFrame_Loop ; CPU:$D553 PRG:5553 F0 04 lda #$FF ; CPU:$D555 PRG:5555 A9 FF sta Zp65 ; CPU:$D557 PRG:5557 85 65 ; ----------------------------------------------------------------------------- ; Routine: UpdateBubbleFrame_Loop ; Global: Branch target inside UpdateBubbleFrame: taken when the loop repeats. ; Local: Part of UpdateBubbleFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateBubbleFrame_Loop: rts ; CPU:$D559 PRG:5559 60 ; ----------------------------------------------------------------------------- ; Routine: UpdateBubbleFrame_Loop2 ; Global: Branch target inside UpdateBubbleFrame: taken when Loop2. ; Local: Part of UpdateBubbleFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateBubbleFrame_Loop2: lda Zp58 ; CPU:$D55A PRG:555A A5 58 bne UpdateBubbleFrame_Loop3 ; CPU:$D55C PRG:555C D0 02 inc Zp61 ; CPU:$D55E PRG:555E E6 61 ; ----------------------------------------------------------------------------- ; Routine: UpdateBubbleFrame_Loop3 ; Global: Branch target inside UpdateBubbleFrame: taken when Loop3. ; Local: Part of UpdateBubbleFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- UpdateBubbleFrame_Loop3: inc Zp61 ; CPU:$D560 PRG:5560 E6 61 rts ; CPU:$D562 PRG:5562 60 ; ----------------------------------------------------------------------------- ; Routine: TickHudOnEvenFrame ; Global: Updates the score display on every second frame. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickHudOnEvenFrame: lda FrameCounter ; CPU:$D563 PRG:5563 A5 31 ror a ; CPU:$D565 PRG:5565 6A bcs TickHudOnEvenFrame_Loop ; CPU:$D566 PRG:5566 B0 01 rts ; CPU:$D568 PRG:5568 60 ; ----------------------------------------------------------------------------- ; Routine: TickHudOnEvenFrame_Loop ; Global: Branch target inside TickHudOnEvenFrame: taken when the loop repeats. ; Local: Part of TickHudOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickHudOnEvenFrame_Loop: lda Zp6F ; CPU:$D569 PRG:5569 A5 6F asl a ; CPU:$D56B PRG:556B 0A tay ; CPU:$D56C PRG:556C A8 ldx Zp37 ; CPU:$D56D PRG:556D A6 37 lda $D40E,y ; CPU:$D56F PRG:556F B9 0E D4 sta $0338,x ; CPU:$D572 PRG:5572 9D 38 03 lda $D40F,y ; CPU:$D575 PRG:5575 B9 0F D4 sta $0339,x ; CPU:$D578 PRG:5578 9D 39 03 lda #$E0 ; CPU:$D57B PRG:557B A9 E0 sta $033A,x ; CPU:$D57D PRG:557D 9D 3A 03 lda #$F1 ; CPU:$D580 PRG:5580 A9 F1 sta $033B,x ; CPU:$D582 PRG:5582 9D 3B 03 lda #$00 ; CPU:$D585 PRG:5585 A9 00 sta $033C,x ; CPU:$D587 PRG:5587 9D 3C 03 txa ; CPU:$D58A PRG:558A 8A clc ; CPU:$D58B PRG:558B 18 adc #$04 ; CPU:$D58C PRG:558C 69 04 sta Zp37 ; CPU:$D58E PRG:558E 85 37 lda #$00 ; CPU:$D590 PRG:5590 A9 00 sta Zp61 ; CPU:$D592 PRG:5592 85 61 rts ; CPU:$D594 PRG:5594 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_D595 ; Global: Branch target inside Sub: taken when D595. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_D595: ldx #$00 ; CPU:$D595 PRG:5595 A2 00 ldy #$00 ; CPU:$D597 PRG:5597 A0 00 stx Zp24 ; CPU:$D599 PRG:5599 86 24 ; ----------------------------------------------------------------------------- ; Routine: TickHudOnEvenFrame_OnNonzero ; Global: Branch target inside TickHudOnEvenFrame: taken when the tested value is not zero. ; Local: Part of TickHudOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickHudOnEvenFrame_OnNonzero: ldx Zp24 ; CPU:$D59B PRG:559B A6 24 lda $0568,x ; CPU:$D59D PRG:559D BD 68 05 cmp #$FF ; CPU:$D5A0 PRG:55A0 C9 FF bne TickHudOnEvenFrame_Loop2 ; CPU:$D5A2 PRG:55A2 D0 01 rts ; CPU:$D5A4 PRG:55A4 60 ; ----------------------------------------------------------------------------- ; Routine: TickHudOnEvenFrame_Loop2 ; Global: Branch target inside TickHudOnEvenFrame: taken when Loop2. ; Local: Part of TickHudOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickHudOnEvenFrame_Loop2: tax ; CPU:$D5A5 PRG:55A5 AA tya ; CPU:$D5A6 PRG:55A6 98 sta $0400,x ; CPU:$D5A7 PRG:55A7 9D 00 04 inc Zp24 ; CPU:$D5AA PRG:55AA E6 24 bne TickHudOnEvenFrame_OnNonzero ; CPU:$D5AC PRG:55AC D0 ED rts ; CPU:$D5AE PRG:55AE 60 ; ----------------------------------------------------------------------------- ; Routine: Sub_D5AF ; Global: Branch target inside Sub: taken when D5AF. ; Local: Part of Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Sub_D5AF: ldy #$00 ; CPU:$D5AF PRG:55AF A0 00 ldx #$6E ; CPU:$D5B1 PRG:55B1 A2 6E ; ----------------------------------------------------------------------------- ; Routine: TickHudOnEvenFrame_OnNonzero2 ; Global: Branch target inside TickHudOnEvenFrame: taken when OnNonzero2. ; Local: Part of TickHudOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickHudOnEvenFrame_OnNonzero2: dex ; CPU:$D5B3 PRG:55B3 CA ; ----------------------------------------------------------------------------- ; Routine: TickHudOnEvenFrame_OnNonnegative ; Global: Branch target inside TickHudOnEvenFrame: taken when the tested value is not negative. ; Local: Part of TickHudOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickHudOnEvenFrame_OnNonnegative: lda $0400,x ; CPU:$D5B4 PRG:55B4 BD 00 04 beq TickHudOnEvenFrame_Loop3 ; CPU:$D5B7 PRG:55B7 F0 07 bpl TickHudOnEvenFrame_Loop4 ; CPU:$D5B9 PRG:55B9 10 0B txa ; CPU:$D5BB PRG:55BB 8A sta $0568,y ; CPU:$D5BC PRG:55BC 99 68 05 iny ; CPU:$D5BF PRG:55BF C8 ; ----------------------------------------------------------------------------- ; Routine: TickHudOnEvenFrame_Loop3 ; Global: Branch target inside TickHudOnEvenFrame: taken when Loop3. ; Local: Part of TickHudOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickHudOnEvenFrame_Loop3: dex ; CPU:$D5C0 PRG:55C0 CA bpl TickHudOnEvenFrame_OnNonnegative ; CPU:$D5C1 PRG:55C1 10 F1 sty Zp58 ; CPU:$D5C3 PRG:55C3 84 58 rts ; CPU:$D5C5 PRG:55C5 60 ; ----------------------------------------------------------------------------- ; Routine: TickHudOnEvenFrame_Loop4 ; Global: Branch target inside TickHudOnEvenFrame: taken when Loop4. ; Local: Part of TickHudOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickHudOnEvenFrame_Loop4: txa ; CPU:$D5C6 PRG:55C6 8A and #$F0 ; CPU:$D5C7 PRG:55C7 29 F0 tax ; CPU:$D5C9 PRG:55C9 AA bne TickHudOnEvenFrame_OnNonzero2 ; CPU:$D5CA PRG:55CA D0 E7 sty Zp58 ; CPU:$D5CC PRG:55CC 84 58 rts ; CPU:$D5CE PRG:55CE 60 ; ----------------------------------------------------------------------------- ; Routine: TickSpritesOnEvenFrame ; Global: Updates the sprite table on every second frame. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickSpritesOnEvenFrame: lda FrameCounter ; CPU:$D5CF PRG:55CF A5 31 ror a ; CPU:$D5D1 PRG:55D1 6A bcs TickSpritesOnEvenFrame_Loop; CPU:$D5D2 PRG:55D2 B0 01 rts ; CPU:$D5D4 PRG:55D4 60 ; ----------------------------------------------------------------------------- ; Routine: TickSpritesOnEvenFrame_Loop ; Global: Branch target inside TickSpritesOnEvenFrame: taken when the loop repeats. ; Local: Part of TickSpritesOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickSpritesOnEvenFrame_Loop: lda #$A8 ; CPU:$D5D5 PRG:55D5 A9 A8 sta Zp17 ; CPU:$D5D7 PRG:55D7 85 17 lda #$F2 ; CPU:$D5D9 PRG:55D9 A9 F2 sta Zp18 ; CPU:$D5DB PRG:55DB 85 18 lda #$0C ; CPU:$D5DD PRG:55DD A9 0C sta Zp1F ; CPU:$D5DF PRG:55DF 85 1F ldy #$00 ; CPU:$D5E1 PRG:55E1 A0 00 ; ----------------------------------------------------------------------------- ; Routine: TickSpritesOnEvenFrame_OnNonnegative ; Global: Branch target inside TickSpritesOnEvenFrame: taken when the tested value is not negative. ; Local: Part of TickSpritesOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickSpritesOnEvenFrame_OnNonnegative: dec Zp58 ; CPU:$D5E3 PRG:55E3 C6 58 bpl TickSpritesOnEvenFrame_Loop2 ; CPU:$D5E5 PRG:55E5 10 08 inc Zp61 ; CPU:$D5E7 PRG:55E7 E6 61 lda #$00 ; CPU:$D5E9 PRG:55E9 A9 00 sta Zp56 ; CPU:$D5EB PRG:55EB 85 56 beq TickSpritesOnEvenFrame_Loop4 ; CPU:$D5ED PRG:55ED F0 1E ; ----------------------------------------------------------------------------- ; Routine: TickSpritesOnEvenFrame_Loop2 ; Global: Branch target inside TickSpritesOnEvenFrame: taken when Loop2. ; Local: Part of TickSpritesOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickSpritesOnEvenFrame_Loop2: ldx Zp58 ; CPU:$D5EF PRG:55EF A6 58 lda $0568,x ; CPU:$D5F1 PRG:55F1 BD 68 05 sta Zp24 ; CPU:$D5F4 PRG:55F4 85 24 jsr Sub_84BF ; CPU:$D5F6 PRG:55F6 20 BF 84 lda Zp1A ; CPU:$D5F9 PRG:55F9 A5 1A cmp #$24 ; CPU:$D5FB PRG:55FB C9 24 beq TickSpritesOnEvenFrame_Loop3 ; CPU:$D5FD PRG:55FD F0 0A ldx Zp24 ; CPU:$D5FF PRG:55FF A6 24 lda #$00 ; CPU:$D601 PRG:5601 A9 00 sta $0400,x ; CPU:$D603 PRG:5603 9D 00 04 jsr Sub_858A ; CPU:$D606 PRG:5606 20 8A 85 ; ----------------------------------------------------------------------------- ; Routine: TickSpritesOnEvenFrame_Loop3 ; Global: Branch target inside TickSpritesOnEvenFrame: taken when Loop3. ; Local: Part of TickSpritesOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickSpritesOnEvenFrame_Loop3: dec Zp1F ; CPU:$D609 PRG:5609 C6 1F bpl TickSpritesOnEvenFrame_OnNonnegative ; CPU:$D60B PRG:560B 10 D6 ; ----------------------------------------------------------------------------- ; Routine: TickSpritesOnEvenFrame_Loop4 ; Global: Branch target inside TickSpritesOnEvenFrame: taken when Loop4. ; Local: Part of TickSpritesOnEvenFrame. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- TickSpritesOnEvenFrame_Loop4: ldx Zp36 ; CPU:$D60D PRG:560D A6 36 lda #$00 ; CPU:$D60F PRG:560F A9 00 sta $0300,x ; CPU:$D611 PRG:5611 9D 00 03 rts ; CPU:$D614 PRG:5614 60 ; ----------------------------------------------------------------------------- ; Routine: SetSoundChannels ; Global: Turns the APU channels on. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SetSoundChannels: lda #$01 ; CPU:$D615 PRG:5615 A9 01 sta a:$00E3 ; CPU:$D617 PRG:5617 8D E3 00 lda #$01 ; CPU:$D61A PRG:561A A9 01 sta a:$00E2 ; CPU:$D61C PRG:561C 8D E2 00 lda #$04 ; CPU:$D61F PRG:561F A9 04 jsr BankedCall ; CPU:$D621 PRG:5621 20 04 80 inc Zp61 ; CPU:$D624 PRG:5624 E6 61 rts ; CPU:$D626 PRG:5626 60 ; ---- data $D627-$DFFF (2521 bytes) ---- .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D627 PRG:5627 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D637 PRG:5637 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D647 PRG:5647 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D657 PRG:5657 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D667 PRG:5667 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D677 PRG:5677 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D687 PRG:5687 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D697 PRG:5697 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D6A7 PRG:56A7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D6B7 PRG:56B7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D6C7 PRG:56C7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D6D7 PRG:56D7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D6E7 PRG:56E7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D6F7 PRG:56F7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D707 PRG:5707 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D717 PRG:5717 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D727 PRG:5727 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D737 PRG:5737 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D747 PRG:5747 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D757 PRG:5757 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D767 PRG:5767 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D777 PRG:5777 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D787 PRG:5787 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D797 PRG:5797 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D7A7 PRG:57A7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D7B7 PRG:57B7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D7C7 PRG:57C7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D7D7 PRG:57D7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D7E7 PRG:57E7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D7F7 PRG:57F7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D807 PRG:5807 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D817 PRG:5817 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D827 PRG:5827 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D837 PRG:5837 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D847 PRG:5847 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D857 PRG:5857 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D867 PRG:5867 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D877 PRG:5877 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D887 PRG:5887 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D897 PRG:5897 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D8A7 PRG:58A7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D8B7 PRG:58B7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D8C7 PRG:58C7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D8D7 PRG:58D7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D8E7 PRG:58E7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D8F7 PRG:58F7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D907 PRG:5907 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D917 PRG:5917 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D927 PRG:5927 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D937 PRG:5937 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D947 PRG:5947 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D957 PRG:5957 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D967 PRG:5967 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D977 PRG:5977 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D987 PRG:5987 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D997 PRG:5997 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D9A7 PRG:59A7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D9B7 PRG:59B7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D9C7 PRG:59C7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D9D7 PRG:59D7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D9E7 PRG:59E7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D9F7 PRG:59F7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA07 PRG:5A07 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA17 PRG:5A17 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA27 PRG:5A27 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA37 PRG:5A37 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA47 PRG:5A47 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA57 PRG:5A57 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA67 PRG:5A67 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA77 PRG:5A77 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA87 PRG:5A87 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA97 PRG:5A97 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DAA7 PRG:5AA7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DAB7 PRG:5AB7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DAC7 PRG:5AC7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DAD7 PRG:5AD7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DAE7 PRG:5AE7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DAF7 PRG:5AF7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB07 PRG:5B07 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB17 PRG:5B17 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB27 PRG:5B27 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB37 PRG:5B37 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB47 PRG:5B47 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB57 PRG:5B57 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB67 PRG:5B67 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB77 PRG:5B77 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB87 PRG:5B87 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB97 PRG:5B97 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DBA7 PRG:5BA7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DBB7 PRG:5BB7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DBC7 PRG:5BC7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DBD7 PRG:5BD7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DBE7 PRG:5BE7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DBF7 PRG:5BF7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC07 PRG:5C07 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC17 PRG:5C17 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC27 PRG:5C27 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC37 PRG:5C37 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC47 PRG:5C47 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC57 PRG:5C57 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC67 PRG:5C67 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC77 PRG:5C77 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC87 PRG:5C87 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC97 PRG:5C97 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DCA7 PRG:5CA7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DCB7 PRG:5CB7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DCC7 PRG:5CC7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DCD7 PRG:5CD7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DCE7 PRG:5CE7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DCF7 PRG:5CF7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD07 PRG:5D07 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD17 PRG:5D17 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD27 PRG:5D27 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD37 PRG:5D37 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD47 PRG:5D47 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD57 PRG:5D57 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD67 PRG:5D67 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD77 PRG:5D77 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD87 PRG:5D87 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD97 PRG:5D97 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DDA7 PRG:5DA7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DDB7 PRG:5DB7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DDC7 PRG:5DC7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DDD7 PRG:5DD7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DDE7 PRG:5DE7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DDF7 PRG:5DF7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE07 PRG:5E07 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE17 PRG:5E17 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE27 PRG:5E27 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE37 PRG:5E37 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE47 PRG:5E47 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE57 PRG:5E57 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE67 PRG:5E67 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE77 PRG:5E77 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE87 PRG:5E87 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE97 PRG:5E97 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DEA7 PRG:5EA7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DEB7 PRG:5EB7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DEC7 PRG:5EC7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DED7 PRG:5ED7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DEE7 PRG:5EE7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DEF7 PRG:5EF7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF07 PRG:5F07 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF17 PRG:5F17 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF27 PRG:5F27 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF37 PRG:5F37 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF47 PRG:5F47 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF57 PRG:5F57 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF67 PRG:5F67 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF77 PRG:5F77 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF87 PRG:5F87 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF97 PRG:5F97 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DFA7 PRG:5FA7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DFB7 PRG:5FB7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DFC7 PRG:5FC7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DFD7 PRG:5FD7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DFE7 PRG:5FE7 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DFF7 PRG:5FF7 FF FF FF FF FF FF FF FF FF .segment "PRG3" .org $E000 ; ---- data $E000-$FEFF (7936 bytes) ---- .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E000 PRG:6000 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E010 PRG:6010 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E020 PRG:6020 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E030 PRG:6030 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E040 PRG:6040 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E050 PRG:6050 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E060 PRG:6060 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E070 PRG:6070 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E080 PRG:6080 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E090 PRG:6090 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E0A0 PRG:60A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E0B0 PRG:60B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E0C0 PRG:60C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E0D0 PRG:60D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E0E0 PRG:60E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E0F0 PRG:60F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E100 PRG:6100 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E110 PRG:6110 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E120 PRG:6120 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E130 PRG:6130 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E140 PRG:6140 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E150 PRG:6150 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E160 PRG:6160 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E170 PRG:6170 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E180 PRG:6180 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E190 PRG:6190 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E1A0 PRG:61A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E1B0 PRG:61B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E1C0 PRG:61C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E1D0 PRG:61D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E1E0 PRG:61E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E1F0 PRG:61F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E200 PRG:6200 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E210 PRG:6210 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E220 PRG:6220 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E230 PRG:6230 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E240 PRG:6240 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E250 PRG:6250 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E260 PRG:6260 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E270 PRG:6270 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E280 PRG:6280 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E290 PRG:6290 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E2A0 PRG:62A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E2B0 PRG:62B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E2C0 PRG:62C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E2D0 PRG:62D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E2E0 PRG:62E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E2F0 PRG:62F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E300 PRG:6300 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E310 PRG:6310 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E320 PRG:6320 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E330 PRG:6330 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E340 PRG:6340 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E350 PRG:6350 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E360 PRG:6360 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E370 PRG:6370 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E380 PRG:6380 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E390 PRG:6390 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E3A0 PRG:63A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E3B0 PRG:63B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E3C0 PRG:63C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E3D0 PRG:63D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E3E0 PRG:63E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E3F0 PRG:63F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E400 PRG:6400 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E410 PRG:6410 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E420 PRG:6420 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E430 PRG:6430 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E440 PRG:6440 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E450 PRG:6450 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E460 PRG:6460 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E470 PRG:6470 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E480 PRG:6480 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E490 PRG:6490 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E4A0 PRG:64A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E4B0 PRG:64B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E4C0 PRG:64C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E4D0 PRG:64D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E4E0 PRG:64E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E4F0 PRG:64F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E500 PRG:6500 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E510 PRG:6510 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E520 PRG:6520 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E530 PRG:6530 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E540 PRG:6540 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E550 PRG:6550 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E560 PRG:6560 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E570 PRG:6570 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E580 PRG:6580 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E590 PRG:6590 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E5A0 PRG:65A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E5B0 PRG:65B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E5C0 PRG:65C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E5D0 PRG:65D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E5E0 PRG:65E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E5F0 PRG:65F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E600 PRG:6600 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E610 PRG:6610 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E620 PRG:6620 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E630 PRG:6630 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E640 PRG:6640 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E650 PRG:6650 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E660 PRG:6660 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E670 PRG:6670 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E680 PRG:6680 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E690 PRG:6690 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E6A0 PRG:66A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E6B0 PRG:66B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E6C0 PRG:66C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E6D0 PRG:66D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E6E0 PRG:66E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E6F0 PRG:66F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E700 PRG:6700 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E710 PRG:6710 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E720 PRG:6720 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E730 PRG:6730 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E740 PRG:6740 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E750 PRG:6750 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E760 PRG:6760 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E770 PRG:6770 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E780 PRG:6780 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E790 PRG:6790 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E7A0 PRG:67A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E7B0 PRG:67B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E7C0 PRG:67C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E7D0 PRG:67D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E7E0 PRG:67E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E7F0 PRG:67F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E800 PRG:6800 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E810 PRG:6810 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E820 PRG:6820 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E830 PRG:6830 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E840 PRG:6840 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E850 PRG:6850 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E860 PRG:6860 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E870 PRG:6870 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E880 PRG:6880 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E890 PRG:6890 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E8A0 PRG:68A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E8B0 PRG:68B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E8C0 PRG:68C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E8D0 PRG:68D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E8E0 PRG:68E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E8F0 PRG:68F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E900 PRG:6900 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E910 PRG:6910 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E920 PRG:6920 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E930 PRG:6930 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E940 PRG:6940 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E950 PRG:6950 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E960 PRG:6960 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E970 PRG:6970 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E980 PRG:6980 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E990 PRG:6990 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E9A0 PRG:69A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E9B0 PRG:69B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E9C0 PRG:69C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E9D0 PRG:69D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E9E0 PRG:69E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E9F0 PRG:69F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA00 PRG:6A00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA10 PRG:6A10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA20 PRG:6A20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA30 PRG:6A30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA40 PRG:6A40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA50 PRG:6A50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA60 PRG:6A60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA70 PRG:6A70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA80 PRG:6A80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA90 PRG:6A90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EAA0 PRG:6AA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EAB0 PRG:6AB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EAC0 PRG:6AC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EAD0 PRG:6AD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EAE0 PRG:6AE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EAF0 PRG:6AF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB00 PRG:6B00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB10 PRG:6B10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB20 PRG:6B20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB30 PRG:6B30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB40 PRG:6B40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB50 PRG:6B50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB60 PRG:6B60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB70 PRG:6B70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB80 PRG:6B80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB90 PRG:6B90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EBA0 PRG:6BA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EBB0 PRG:6BB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EBC0 PRG:6BC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EBD0 PRG:6BD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EBE0 PRG:6BE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EBF0 PRG:6BF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC00 PRG:6C00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC10 PRG:6C10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC20 PRG:6C20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC30 PRG:6C30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC40 PRG:6C40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC50 PRG:6C50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC60 PRG:6C60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC70 PRG:6C70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC80 PRG:6C80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC90 PRG:6C90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ECA0 PRG:6CA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ECB0 PRG:6CB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ECC0 PRG:6CC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ECD0 PRG:6CD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ECE0 PRG:6CE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ECF0 PRG:6CF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED00 PRG:6D00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED10 PRG:6D10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED20 PRG:6D20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED30 PRG:6D30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED40 PRG:6D40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED50 PRG:6D50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED60 PRG:6D60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED70 PRG:6D70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED80 PRG:6D80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED90 PRG:6D90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EDA0 PRG:6DA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EDB0 PRG:6DB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EDC0 PRG:6DC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EDD0 PRG:6DD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EDE0 PRG:6DE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EDF0 PRG:6DF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE00 PRG:6E00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE10 PRG:6E10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE20 PRG:6E20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE30 PRG:6E30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE40 PRG:6E40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE50 PRG:6E50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE60 PRG:6E60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE70 PRG:6E70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE80 PRG:6E80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE90 PRG:6E90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EEA0 PRG:6EA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EEB0 PRG:6EB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EEC0 PRG:6EC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EED0 PRG:6ED0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EEE0 PRG:6EE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EEF0 PRG:6EF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF00 PRG:6F00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF10 PRG:6F10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF20 PRG:6F20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF30 PRG:6F30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF40 PRG:6F40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF50 PRG:6F50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF60 PRG:6F60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF70 PRG:6F70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF80 PRG:6F80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF90 PRG:6F90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EFA0 PRG:6FA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EFB0 PRG:6FB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EFC0 PRG:6FC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EFD0 PRG:6FD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EFE0 PRG:6FE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EFF0 PRG:6FF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F000 PRG:7000 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F010 PRG:7010 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F020 PRG:7020 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F030 PRG:7030 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F040 PRG:7040 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F050 PRG:7050 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F060 PRG:7060 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F070 PRG:7070 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F080 PRG:7080 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F090 PRG:7090 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0A0 PRG:70A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0B0 PRG:70B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0C0 PRG:70C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0D0 PRG:70D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0E0 PRG:70E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0F0 PRG:70F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F100 PRG:7100 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F110 PRG:7110 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F120 PRG:7120 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F130 PRG:7130 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F140 PRG:7140 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F150 PRG:7150 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F160 PRG:7160 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F170 PRG:7170 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F180 PRG:7180 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F190 PRG:7190 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1A0 PRG:71A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1B0 PRG:71B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1C0 PRG:71C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $30, $31, $32, $33, $34, $35, $36, $37, $38, $39 ; CPU:$F1D0 PRG:71D0 FF FF FF FF FF FF 30 31 32 33 34 35 36 37 38 39 .byte $04, $01, $30, $30, $30, $30, $0E, $31, $2A, $28, $0E, $39, $27, $18, $0E, $36 ; CPU:$F1E0 PRG:71E0 04 01 30 30 30 30 0E 31 2A 28 0E 39 27 18 0E 36 .byte $31, $17, $0E, $31, $15, $22, $0E, $31, $2A, $28, $FF, $30, $25, $22, $FF, $2B ; CPU:$F1F0 PRG:71F0 31 17 0E 31 15 22 0E 31 2A 28 FF 30 25 22 FF 2B .byte $28, $30, $FF, $31, $15, $22, $00, $20, $20, $23, $23, $00, $21, $01, $01, $01 ; CPU:$F200 PRG:7200 28 30 FF 31 15 22 00 20 20 23 23 00 21 01 01 01 .byte $01, $01, $21, $01, $00, $01, $00, $00, $82, $F2, $88, $F2, $90, $F2, $98, $F2 ; CPU:$F210 PRG:7210 01 01 21 01 00 01 00 00 82 F2 88 F2 90 F2 98 F2 .byte $78, $F6, $91, $F6, $64, $F6, $68, $F6, $6C, $F6, $70, $F6, $74, $F6, $C6, $F2 ; CPU:$F220 PRG:7220 78 F6 91 F6 64 F6 68 F6 6C F6 70 F6 74 F6 C6 F2 .byte $56, $F2, $5A, $F2, $5E, $F2, $00, $00, $00, $F8, $00, $F8, $00, $F8, $00, $F8 ; CPU:$F230 PRG:7230 56 F2 5A F2 5E F2 00 00 00 F8 00 F8 00 F8 00 F8 .byte $00, $F8, $48, $98, $00, $F8, $00, $F8, $00, $F8, $00, $F8, $00, $F8, $44, $78 ; CPU:$F240 PRG:7240 00 F8 48 98 00 F8 00 F8 00 F8 00 F8 00 F8 44 78 .byte $A0, $6D, $A0, $85, $B0, $85, $62, $F2, $FF, $FF, $6A, $F2, $FF, $FF, $74, $F2 ; CPU:$F250 PRG:7250 A0 6D A0 85 B0 85 62 F2 FF FF 6A F2 FF FF 74 F2 .byte $FF, $FF, $02, $03, $25, $34, $4A, $90, $91, $92, $02, $04, $A3, $A4, $C1, $E4 ; CPU:$F260 PRG:7260 FF FF 02 03 25 34 4A 90 91 92 02 04 A3 A4 C1 E4 .byte $E6, $E7, $E9, $EA, $03, $04, $A5, $B3, $B4, $E5, $ED, $EE, $E8, $FF, $FF, $EB ; CPU:$F270 PRG:7270 E6 E7 E9 EA 03 04 A5 B3 B4 E5 ED EE E8 FF FF EB .byte $EC, $FF, $AE, $F2, $BA, $F2, $FF, $FF, $B4, $F2, $C0, $F2, $B4, $F2, $FF, $FF ; CPU:$F280 PRG:7280 EC FF AE F2 BA F2 FF FF B4 F2 C0 F2 B4 F2 FF FF .byte $BA, $F2, $AE, $F2, $AE, $F2, $FF, $FF, $C0, $F2, $B4, $F2, $FF, $FF, $A8, $F2 ; CPU:$F290 PRG:7290 BA F2 AE F2 AE F2 FF FF C0 F2 B4 F2 FF FF A8 F2 .byte $AE, $F2, $B4, $F2, $AE, $F2, $B4, $F2, $02, $02, $FF, $FF, $FF, $FF, $02, $02 ; CPU:$F2A0 PRG:72A0 AE F2 B4 F2 AE F2 B4 F2 02 02 FF FF FF FF 02 02 .byte $01, $02, $03, $04, $02, $02, $05, $06, $07, $08, $02, $02, $A6, $A7, $A8, $A9 ; CPU:$F2B0 PRG:72B0 01 02 03 04 02 02 05 06 07 08 02 02 A6 A7 A8 A9 .byte $02, $02, $AA, $AB, $AC, $AD, $CA, $F2, $FF, $FF, $05, $01, $94, $95, $A1, $9F ; CPU:$F2C0 PRG:72C0 02 02 AA AB AC AD CA F2 FF FF 05 01 94 95 A1 9F .byte $97, $00, $00, $77, $78, $7C, $82, $8B, $8C, $A3, $A4, $A5, $A6, $A7, $A8, $AD ; CPU:$F2D0 PRG:72D0 97 00 00 77 78 7C 82 8B 8C A3 A4 A5 A6 A7 A8 AD .byte $AE, $AF, $B0, $B5, $B6, $B7, $B8, $6D, $6E, $6F, $72, $84, $8A, $A1, $A2, $A9 ; CPU:$F2E0 PRG:72E0 AE AF B0 B5 B6 B7 B8 6D 6E 6F 72 84 8A A1 A2 A9 .byte $AA, $AB, $AC, $B1, $B2, $B3, $B4, $B9, $BA, $BB, $BC, $A8, $F2, $01, $F3, $07 ; CPU:$F2F0 PRG:72F0 AA AB AC B1 B2 B3 B4 B9 BA BB BC A8 F2 01 F3 07 .byte $F3, $02, $02, $E8, $E9, $EA, $EB, $02, $02, $EC, $ED, $EE, $EF, $02, $02, $BD ; CPU:$F300 PRG:7300 F3 02 02 E8 E9 EA EB 02 02 EC ED EE EF 02 02 BD .byte $BE, $BF, $C0, $00, $00, $21, $F3, $31, $F3, $41, $F3, $51, $F3, $61, $F3, $71 ; CPU:$F310 PRG:7310 BE BF C0 00 00 21 F3 31 F3 41 F3 51 F3 61 F3 71 .byte $F3, $01, $11, $02, $12, $02, $11, $01, $10, $11, $01, $10, $00, $10, $01, $11 ; CPU:$F320 PRG:7320 F3 01 11 02 12 02 11 01 10 11 01 10 00 10 01 11 .byte $02, $02, $11, $22, $12, $02, $12, $22, $11, $22, $12, $02, $11, $22, $11, $02 ; CPU:$F330 PRG:7330 02 02 11 22 12 02 12 22 11 22 12 02 11 22 11 02 .byte $12, $02, $10, $11, $12, $01, $12, $11, $10, $11, $03, $02, $01, $12, $01, $02 ; CPU:$F340 PRG:7340 12 02 10 11 12 01 12 11 10 11 03 02 01 12 01 02 .byte $03, $11, $31, $22, $12, $12, $32, $22, $11, $32, $12, $22, $31, $31, $11, $22 ; CPU:$F350 PRG:7350 03 11 31 22 12 12 32 22 11 32 12 22 31 31 11 22 .byte $32, $10, $20, $11, $12, $12, $23, $11, $10, $23, $13, $22, $21, $21, $10, $22 ; CPU:$F360 PRG:7360 32 10 20 11 12 12 23 11 10 23 13 22 21 21 10 22 .byte $23, $01, $11, $21, $12, $02, $11, $22, $10, $22, $11, $02, $10, $21, $11, $01 ; CPU:$F370 PRG:7370 23 01 11 21 12 02 11 22 10 22 11 02 10 21 11 01 .byte $12, $01, $01, $02, $03, $04, $01, $02, $03, $04, $01, $02, $03, $04, $00, $00 ; CPU:$F380 PRG:7380 12 01 01 02 03 04 01 02 03 04 01 02 03 04 00 00 .byte $9C, $F3, $BC, $F3, $DC, $F3, $FC, $F3, $1C, $F4, $3C, $F4, $01, $01, $01, $01 ; CPU:$F390 PRG:7390 9C F3 BC F3 DC F3 FC F3 1C F4 3C F4 01 01 01 01 .byte $02, $01, $01, $01, $01, $01, $02, $01, $01, $01, $02, $02, $01, $02, $02, $01 ; CPU:$F3A0 PRG:73A0 02 01 01 01 01 01 02 01 01 01 02 02 01 02 02 01 .byte $01, $02, $01, $03, $02, $01, $01, $03, $01, $03, $02, $04, $01, $01, $01, $01 ; CPU:$F3B0 PRG:73B0 01 02 01 03 02 01 01 03 01 03 02 04 01 01 01 01 .byte $01, $01, $01, $02, $01, $01, $02, $01, $02, $01, $02, $01, $02, $01, $01, $02 ; CPU:$F3C0 PRG:73C0 01 01 01 02 01 01 02 01 02 01 02 01 02 01 01 02 .byte $01, $01, $03, $02, $02, $01, $03, $01, $01, $02, $03, $04, $01, $01, $01, $01 ; CPU:$F3D0 PRG:73D0 01 01 03 02 02 01 03 01 01 02 03 04 01 01 01 01 .byte $02, $01, $01, $01, $01, $01, $02, $01, $02, $01, $01, $02, $01, $02, $01, $02 ; CPU:$F3E0 PRG:73E0 02 01 01 01 01 01 02 01 02 01 01 02 01 02 01 02 .byte $01, $02, $03, $01, $01, $01, $02, $03, $04, $01, $02, $03, $01, $01, $01, $01 ; CPU:$F3F0 PRG:73F0 01 02 03 01 01 01 02 03 04 01 02 03 01 01 01 01 .byte $01, $02, $01, $01, $01, $01, $02, $01, $02, $02, $01, $01, $02, $01, $02, $01 ; CPU:$F400 PRG:7400 01 02 01 01 01 01 02 01 02 02 01 01 02 01 02 01 .byte $01, $03, $02, $01, $02, $01, $01, $03, $01, $04, $02, $03, $01, $01, $01, $01 ; CPU:$F410 PRG:7410 01 03 02 01 02 01 01 03 01 04 02 03 01 01 01 01 .byte $01, $01, $01, $02, $01, $02, $01, $01, $01, $01, $02, $02, $02, $01, $01, $02 ; CPU:$F420 PRG:7420 01 01 01 02 01 02 01 01 01 01 02 02 02 01 01 02 .byte $01, $01, $02, $03, $02, $03, $01, $01, $02, $01, $03, $04, $01, $01, $01, $01 ; CPU:$F430 PRG:7430 01 01 02 03 02 03 01 01 02 01 03 04 01 01 01 01 .byte $01, $01, $02, $01, $01, $02, $01, $01, $02, $01, $02, $01, $01, $02, $02, $01 ; CPU:$F440 PRG:7440 01 01 02 01 01 02 01 01 02 01 02 01 01 02 02 01 .byte $03, $02, $01, $01, $01, $01, $03, $02, $03, $01, $04, $02, $64, $F4, $64, $F5 ; CPU:$F450 PRG:7450 03 02 01 01 01 01 03 02 03 01 04 02 64 F4 64 F5 .byte $E4, $F4, $E4, $F5, $24, $63, $14, $24, $55, $62, $14, $50, $60, $31, $56, $40 ; CPU:$F460 PRG:7460 E4 F4 E4 F5 24 63 14 24 55 62 14 50 60 31 56 40 .byte $61, $45, $11, $60, $10, $44, $32, $61, $13, $20, $43, $34, $15, $37, $63, $32 ; CPU:$F470 PRG:7470 61 45 11 60 10 44 32 61 13 20 43 34 15 37 63 32 .byte $33, $35, $12, $34, $25, $32, $10, $12, $34, $15, $62, $46, $23, $44, $13, $31 ; CPU:$F480 PRG:7480 33 35 12 34 25 32 10 12 34 15 62 46 23 44 13 31 .byte $17, $10, $22, $16, $51, $31, $41, $65, $10, $62, $11, $20, $30, $14, $34, $11 ; CPU:$F490 PRG:7490 17 10 22 16 51 31 41 65 10 62 11 20 30 14 34 11 .byte $34, $27, $13, $60, $37, $26, $33, $32, $32, $11, $53, $52, $61, $52, $12, $64 ; CPU:$F4A0 PRG:74A0 34 27 13 60 37 26 33 32 32 11 53 52 61 52 12 64 .byte $57, $67, $67, $64, $30, $31, $64, $30, $27, $10, $63, $40, $17, $31, $67, $60 ; CPU:$F4B0 PRG:74B0 57 67 67 64 30 31 64 30 27 10 63 40 17 31 67 60 .byte $13, $47, $10, $40, $13, $33, $60, $21, $33, $63, $60, $66, $64, $61, $35, $50 ; CPU:$F4C0 PRG:74C0 13 47 10 40 13 33 60 21 33 63 60 66 64 61 35 50 .byte $21, $12, $62, $53, $17, $41, $11, $42, $63, $65, $14, $54, $62, $30, $30, $12 ; CPU:$F4D0 PRG:74D0 21 12 62 53 17 41 11 42 63 65 14 54 62 30 30 12 .byte $33, $30, $36, $60, $14, $55, $11, $15, $64, $24, $33, $61, $10, $26, $13, $35 ; CPU:$F4E0 PRG:74E0 33 30 36 60 14 55 11 15 64 24 33 61 10 26 13 35 .byte $31, $62, $66, $37, $26, $12, $45, $54, $14, $35, $55, $16, $42, $34, $45, $15 ; CPU:$F4F0 PRG:74F0 31 62 66 37 26 12 45 54 14 35 55 16 42 34 45 15 .byte $54, $66, $35, $17, $25, $65, $43, $63, $46, $15, $32, $64, $32, $47, $33, $66 ; CPU:$F500 PRG:7500 54 66 35 17 25 65 43 63 46 15 32 64 32 47 33 66 .byte $46, $20, $56, $45, $66, $25, $21, $23, $13, $26, $45, $14, $51, $46, $17, $43 ; CPU:$F510 PRG:7510 46 20 56 45 66 25 21 23 13 26 45 14 51 46 17 43 .byte $56, $34, $16, $63, $55, $66, $25, $37, $15, $30, $36, $47, $15, $57, $41, $27 ; CPU:$F520 PRG:7520 56 34 16 63 55 66 25 37 15 30 36 47 15 57 41 27 .byte $25, $67, $24, $36, $13, $37, $54, $27, $21, $16, $44, $57, $36, $44, $50, $17 ; CPU:$F530 PRG:7530 25 67 24 36 13 37 54 27 21 16 44 57 36 44 50 17 .byte $33, $65, $41, $43, $12, $55, $46, $16, $45, $23, $65, $53, $47, $26, $51, $35 ; CPU:$F540 PRG:7540 33 65 41 43 12 55 46 16 45 23 65 53 47 26 51 35 .byte $46, $62, $57, $22, $27, $40, $67, $52, $67, $35, $36, $60, $24, $56, $65, $51 ; CPU:$F550 PRG:7550 46 62 57 22 27 40 67 52 67 35 36 60 24 56 65 51 .byte $44, $23, $25, $53, $64, $50, $17, $55, $46, $17, $40, $51, $34, $47, $53, $60 ; CPU:$F560 PRG:7560 44 23 25 53 64 50 17 55 46 17 40 51 34 47 53 60 .byte $54, $27, $63, $10, $37, $20, $17, $27, $14, $41, $30, $26, $35, $36, $20, $16 ; CPU:$F570 PRG:7570 54 27 63 10 37 20 17 27 14 41 30 26 35 36 20 16 .byte $55, $14, $40, $12, $24, $52, $17, $21, $37, $54, $21, $63, $14, $46, $30, $13 ; CPU:$F580 PRG:7580 55 14 40 12 24 52 17 21 37 54 21 63 14 46 30 13 .byte $34, $26, $44, $11, $36, $23, $65, $42, $64, $50, $25, $45, $16, $12, $41, $56 ; CPU:$F590 PRG:7590 34 26 44 11 36 23 65 42 64 50 25 45 16 12 41 56 .byte $31, $32, $47, $53, $35, $45, $30, $10, $27, $52, $24, $13, $36, $11, $57, $23 ; CPU:$F5A0 PRG:75A0 31 32 47 53 35 45 30 10 27 52 24 13 36 11 57 23 .byte $42, $21, $65, $25, $66, $16, $46, $31, $26, $62, $47, $22, $43, $67, $60, $37 ; CPU:$F5B0 PRG:75B0 42 21 65 25 66 16 46 31 26 62 47 22 43 67 60 37 .byte $55, $62, $33, $57, $44, $15, $62, $27, $65, $22, $61, $67, $25, $66, $51, $57 ; CPU:$F5C0 PRG:75C0 55 62 33 57 44 15 62 27 65 22 61 67 25 66 51 57 .byte $37, $57, $47, $15, $43, $37, $35, $45, $67, $56, $65, $15, $46, $56, $32, $43 ; CPU:$F5D0 PRG:75D0 37 57 47 15 43 37 35 45 67 56 65 15 46 56 32 43 .byte $61, $33, $66, $67, $44, $45, $22, $41, $16, $43, $21, $55, $14, $55, $23, $10 ; CPU:$F5E0 PRG:75E0 61 33 66 67 44 45 22 41 16 43 21 55 14 55 23 10 .byte $42, $13, $61, $56, $54, $37, $26, $66, $44, $67, $12, $17, $15, $65, $47, $65 ; CPU:$F5F0 PRG:75F0 42 13 61 56 54 37 26 66 44 67 12 17 15 65 47 65 .byte $65, $36, $66, $22, $37, $46, $33, $44, $65, $36, $11, $66, $63, $41, $43, $65 ; CPU:$F600 PRG:7600 65 36 66 22 37 46 33 44 65 36 11 66 63 41 43 65 .byte $17, $35, $31, $37, $56, $62, $45, $33, $15, $42, $14, $17, $56, $14, $54, $55 ; CPU:$F610 PRG:7610 17 35 31 37 56 62 45 33 15 42 14 17 56 14 54 55 .byte $64, $46, $27, $35, $16, $26, $53, $57, $45, $50, $15, $37, $32, $36, $11, $26 ; CPU:$F620 PRG:7620 64 46 27 35 16 26 53 57 45 50 15 37 32 36 11 26 .byte $17, $34, $56, $67, $35, $24, $36, $13, $63, $65, $16, $15, $34, $61, $40, $25 ; CPU:$F630 PRG:7630 17 34 56 67 35 24 36 13 63 65 16 15 34 61 40 25 .byte $53, $27, $46, $31, $13, $26, $55, $60, $26, $57, $66, $25, $25, $56, $47, $54 ; CPU:$F640 PRG:7640 53 27 46 31 13 26 55 60 26 57 66 25 25 56 47 54 .byte $16, $27, $64, $25, $45, $35, $23, $46, $27, $32, $36, $53, $25, $52, $35, $24 ; CPU:$F650 PRG:7650 16 27 64 25 45 35 23 46 27 32 36 53 25 52 35 24 .byte $66, $44, $55, $57, $7C, $F6, $FF, $FF, $7F, $F6, $FF, $FF, $82, $F6, $FF, $FF ; CPU:$F660 PRG:7660 66 44 55 57 7C F6 FF FF 7F F6 FF FF 82 F6 FF FF .byte $85, $F6, $FF, $FF, $88, $F6, $FF, $FF, $8B, $F6, $FF, $FF, $01, $01, $79, $01 ; CPU:$F670 PRG:7670 85 F6 FF FF 88 F6 FF FF 8B F6 FF FF 01 01 79 01 .byte $01, $7A, $01, $01, $7B, $01, $01, $7C, $01, $01, $7D, $02, $02, $7E, $7F, $80 ; CPU:$F680 PRG:7680 01 7A 01 01 7B 01 01 7C 01 01 7D 02 02 7E 7F 80 .byte $81, $95, $F6, $FF, $FF, $04, $04, $69, $6A, $6B, $6C, $6D, $6E, $6F, $70, $71 ; CPU:$F690 PRG:7690 81 95 F6 FF FF 04 04 69 6A 6B 6C 6D 6E 6F 70 71 .byte $72, $73, $74, $75, $76, $77, $78, $AB, $F6, $EB, $F6, $55, $C5, $C5, $C5, $45 ; CPU:$F6A0 PRG:76A0 72 73 74 75 76 77 78 AB F6 EB F6 55 C5 C5 C5 45 .byte $55, $55, $55, $55, $00, $00, $00, $44, $54, $54, $57, $55, $00, $00, $00, $44 ; CPU:$F6B0 PRG:76B0 55 55 55 55 00 00 00 44 54 54 57 55 00 00 00 44 .byte $55, $55, $55, $55, $00, $00, $00, $44, $55, $55, $55, $55, $00, $00, $00, $44 ; CPU:$F6C0 PRG:76C0 55 55 55 55 00 00 00 44 55 55 55 55 00 00 00 44 .byte $55, $55, $55, $55, $00, $00, $00, $44, $DD, $FF, $55, $55, $AA, $22, $00, $44 ; CPU:$F6D0 PRG:76D0 55 55 55 55 00 00 00 44 DD FF 55 55 AA 22 00 44 .byte $5D, $53, $55, $F5, $AA, $AA, $AA, $26, $F5, $F5, $F5, $D5, $F5, $F5, $F5, $D5 ; CPU:$F6E0 PRG:76E0 5D 53 55 F5 AA AA AA 26 F5 F5 F5 D5 F5 F5 F5 D5 .byte $F5, $F5, $F5, $DD, $FF, $FF, $FF, $DD, $FF, $FF, $FF, $DD, $FF, $FF, $FF, $DD ; CPU:$F6F0 PRG:76F0 F5 F5 F5 DD FF FF FF DD FF FF FF DD FF FF FF DD .byte $FF, $FF, $FF, $DD, $FF, $FF, $FF, $DD, $FF, $FF, $FF, $DD, $FF, $FF, $FF, $DD ; CPU:$F700 PRG:7700 FF FF FF DD FF FF FF DD FF FF FF DD FF FF FF DD .byte $FF, $FF, $FF, $DD, $FF, $FF, $FF, $DD, $FF, $FF, $FF, $55, $55, $55, $55, $55 ; CPU:$F710 PRG:7710 FF FF FF DD FF FF FF DD FF FF FF 55 55 55 55 55 .byte $55, $55, $55, $55, $55, $55, $55, $55, $55, $55, $55, $44, $20, $84, $20, $C4 ; CPU:$F720 PRG:7720 55 55 55 55 55 55 55 55 55 55 55 44 20 84 20 C4 .byte $20, $04, $21, $44, $21, $84, $21, $C4, $21, $04, $22, $44, $22, $84, $22, $C4 ; CPU:$F730 PRG:7730 20 04 21 44 21 84 21 C4 21 04 22 44 22 84 22 C4 .byte $22, $50, $24, $50, $24, $50, $24, $50, $24, $50, $24, $66, $20, $A6, $20, $E6 ; CPU:$F740 PRG:7740 22 50 24 50 24 50 24 50 24 50 24 66 20 A6 20 E6 .byte $20, $26, $21, $66, $21, $A6, $21, $E6, $21, $26, $22, $66, $22, $A6, $22, $E6 ; CPU:$F750 PRG:7750 20 26 21 66 21 A6 21 E6 21 26 22 66 22 A6 22 E6 .byte $22, $50, $24, $50, $24, $50, $24, $50, $24, $50, $24, $48, $20, $88, $20, $C8 ; CPU:$F760 PRG:7760 22 50 24 50 24 50 24 50 24 50 24 48 20 88 20 C8 .byte $20, $08, $21, $48, $21, $88, $21, $C8, $21, $08, $22, $48, $22, $88, $22, $C8 ; CPU:$F770 PRG:7770 20 08 21 48 21 88 21 C8 21 08 22 48 22 88 22 C8 .byte $22, $50, $24, $50, $24, $50, $24, $50, $24, $50, $24, $6A, $20, $AA, $20, $EA ; CPU:$F780 PRG:7780 22 50 24 50 24 50 24 50 24 50 24 6A 20 AA 20 EA .byte $20, $2A, $21, $6A, $21, $AA, $21, $EA, $21, $2A, $22, $6A, $22, $AA, $22, $EA ; CPU:$F790 PRG:7790 20 2A 21 6A 21 AA 21 EA 21 2A 22 6A 22 AA 22 EA .byte $22, $50, $24, $50, $24, $50, $24, $50, $24, $50, $24, $4C, $20, $8C, $20, $CC ; CPU:$F7A0 PRG:77A0 22 50 24 50 24 50 24 50 24 50 24 4C 20 8C 20 CC .byte $20, $0C, $21, $4C, $21, $8C, $21, $CC, $21, $0C, $22, $4C, $22, $8C, $22, $CC ; CPU:$F7B0 PRG:77B0 20 0C 21 4C 21 8C 21 CC 21 0C 22 4C 22 8C 22 CC .byte $22, $50, $24, $50, $24, $50, $24, $50, $24, $50, $24, $6E, $20, $AE, $20, $EE ; CPU:$F7C0 PRG:77C0 22 50 24 50 24 50 24 50 24 50 24 6E 20 AE 20 EE .byte $20, $2E, $21, $6E, $21, $AE, $21, $EE, $21, $2E, $22, $6E, $22, $AE, $22, $EE ; CPU:$F7D0 PRG:77D0 20 2E 21 6E 21 AE 21 EE 21 2E 22 6E 22 AE 22 EE .byte $22, $50, $24, $50, $24, $50, $24, $50, $24, $50, $24, $50, $20, $90, $20, $D0 ; CPU:$F7E0 PRG:77E0 22 50 24 50 24 50 24 50 24 50 24 50 20 90 20 D0 .byte $20, $10, $21, $50, $21, $90, $21, $D0, $21, $10, $22, $50, $22, $90, $22, $D0 ; CPU:$F7F0 PRG:77F0 20 10 21 50 21 90 21 D0 21 10 22 50 22 90 22 D0 .byte $22, $50, $24, $50, $24, $50, $24, $50, $24, $50, $24, $04, $01, $F8, $4F, $4F ; CPU:$F800 PRG:7800 22 50 24 50 24 50 24 50 24 50 24 04 01 F8 4F 4F .byte $44, $04, $02, $F8, $41, $4D, $45, $4F, $F9, $45, $52, $03, $01, $55, $55, $55 ; CPU:$F810 PRG:7810 44 04 02 F8 41 4D 45 4F F9 45 52 03 01 55 55 55 .byte $03, $01, $FF, $FF, $FF, $08, $02, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F820 PRG:7820 03 01 FF FF FF 08 02 FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $07, $01, $53, $54, $41, $F8, $45, $FF, $D4 ; CPU:$F830 PRG:7830 FF FF FF FF FF FF FF 07 01 53 54 41 F8 45 FF D4 .byte $05, $01, $3C, $41, $55, $53, $45, $08, $22, $4F, $F8, $E1, $23, $1B, $F8, $08 ; CPU:$F840 PRG:7840 05 01 3C 41 55 53 45 08 22 4F F8 E1 23 1B F8 08 .byte $03, $45, $D5, $44, $FF, $FF, $FF, $FF, $FF, $43, $4F, $D5, $54, $49, $D5, $55 ; CPU:$F850 PRG:7850 03 45 D5 44 FF FF FF FF FF 43 4F D5 54 49 D5 55 .byte $45, $43, $52, $45, $44, $49, $54, $FF, $FF, $08, $22, $25, $F8, $28, $22, $25 ; CPU:$F860 PRG:7860 45 43 52 45 44 49 54 FF FF 08 22 25 F8 28 22 25 .byte $F8, $E1, $23, $20, $F8, $05, $04, $03, $02, $01, $00, $EF, $FF, $0F, $10, $01 ; CPU:$F870 PRG:7870 F8 E1 23 20 F8 05 04 03 02 01 00 EF FF 0F 10 01 .byte $F0, $F1, $FF, $11, $10, $01, $F0, $00, $F0, $04, $F2, $08, $F4, $0C, $F6, $10 ; CPU:$F880 PRG:7880 F0 F1 FF 11 10 01 F0 00 F0 04 F2 08 F4 0C F6 10 .byte $F8, $10, $FC, $10, $00, $10, $04, $10, $08, $0C, $0A, $08, $0C, $04, $0E, $00 ; CPU:$F890 PRG:7890 F8 10 FC 10 00 10 04 10 08 0C 0A 08 0C 04 0E 00 .byte $10, $FC, $0E, $F8, $0C, $F4, $0A, $F0, $08, $F0, $04, $F0, $00, $F0, $FC, $F0 ; CPU:$F8A0 PRG:78A0 10 FC 0E F8 0C F4 0A F0 08 F0 04 F0 00 F0 FC F0 .byte $F8, $F4, $F6, $F8, $F4, $FC, $F2, $04, $01, $55, $55, $55, $55, $E5, $F8, $FA ; CPU:$F8B0 PRG:78B0 F8 F4 F6 F8 F4 FC F2 04 01 55 55 55 55 E5 F8 FA .byte $F8, $0F, $F9, $24, $F9, $39, $F9, $55, $F9, $71, $F9, $8D, $F9, $A9, $F9, $CC ; CPU:$F8C0 PRG:78C0 F8 0F F9 24 F9 39 F9 55 F9 71 F9 8D F9 A9 F9 CC .byte $F9, $EF, $F9, $12, $FA, $35, $FA, $5F, $FA, $89, $FA, $B3, $FA, $DD, $FA, $0E ; CPU:$F8D0 PRG:78D0 F9 EF F9 12 FA 35 FA 5F FA 89 FA B3 FA DD FA 0E .byte $FB, $3F, $FB, $70, $FB, $03, $01, $00, $02, $04, $00, $04, $03, $00, $01, $04 ; CPU:$F8E0 PRG:78E0 FB 3F FB 70 FB 03 01 00 02 04 00 04 03 00 01 04 .byte $00, $03, $02, $00, $04, $03, $00, $02, $01, $00, $04, $03, $00, $01, $02, $00 ; CPU:$F8F0 PRG:78F0 00 03 02 00 04 03 00 02 01 00 04 03 00 01 02 00 .byte $04, $03, $00, $02, $01, $00, $80, $03, $00, $01, $02, $00, $03, $04, $00, $02 ; CPU:$F900 PRG:7900 04 03 00 02 01 00 80 03 00 01 02 00 03 04 00 02 .byte $01, $00, $04, $03, $00, $80, $04, $00, $01, $02, $00, $04, $03, $00, $02, $01 ; CPU:$F910 PRG:7910 01 00 04 03 00 80 04 00 01 02 00 04 03 00 02 01 .byte $00, $04, $02, $00, $03, $02, $00, $04, $01, $00, $02, $03, $00, $04, $01, $00 ; CPU:$F920 PRG:7920 00 04 02 00 03 02 00 04 01 00 02 03 00 04 01 00 .byte $80, $02, $00, $03, $01, $00, $04, $02, $00, $02, $01, $03, $00, $04, $80, $02 ; CPU:$F930 PRG:7930 80 02 00 03 01 00 04 02 00 02 01 03 00 04 80 02 .byte $00, $02, $04, $01, $00, $03, $02, $03, $00, $80, $01, $04, $00, $04, $02, $03 ; CPU:$F940 PRG:7940 00 02 04 01 00 03 02 03 00 80 01 04 00 04 02 03 .byte $00, $03, $01, $04, $00, $02, $03, $01, $00, $01, $04, $02, $00, $02, $04, $01 ; CPU:$F950 PRG:7950 00 03 01 04 00 02 03 01 00 01 04 02 00 02 04 01 .byte $00, $03, $80, $02, $00, $02, $01, $03, $00, $03, $80, $02, $00, $02, $04, $01 ; CPU:$F960 PRG:7960 00 03 80 02 00 02 01 03 00 03 80 02 00 02 04 01 .byte $00, $02, $01, $04, $00, $04, $03, $01, $00, $80, $02, $04, $00, $01, $03, $01 ; CPU:$F970 PRG:7970 00 02 01 04 00 04 03 01 00 80 02 04 00 01 03 01 .byte $00, $02, $80, $04, $00, $04, $03, $01, $00, $01, $02, $04, $00, $02, $04, $03 ; CPU:$F980 PRG:7980 00 02 80 04 00 04 03 01 00 01 02 04 00 02 04 03 .byte $00, $01, $80, $01, $00, $04, $03, $02, $00, $02, $80, $04, $00, $01, $03, $02 ; CPU:$F990 PRG:7990 00 01 80 01 00 04 03 02 00 02 80 04 00 01 03 02 .byte $00, $03, $04, $01, $00, $02, $01, $03, $00, $04, $04, $03, $02, $00, $01, $80 ; CPU:$F9A0 PRG:79A0 00 03 04 01 00 02 01 03 00 04 04 03 02 00 01 80 .byte $02, $04, $00, $04, $03, $01, $02, $00, $02, $80, $04, $03, $00, $03, $01, $02 ; CPU:$F9B0 PRG:79B0 02 04 00 04 03 01 02 00 02 80 04 03 00 03 01 02 .byte $04, $00, $04, $04, $03, $01, $00, $01, $80, $04, $02, $00, $03, $04, $03, $02 ; CPU:$F9C0 PRG:79C0 04 00 04 04 03 01 00 01 80 04 02 00 03 04 03 02 .byte $00, $02, $01, $80, $04, $00, $01, $80, $03, $02, $00, $03, $02, $01, $04, $00 ; CPU:$F9D0 PRG:79D0 00 02 01 80 04 00 01 80 03 02 00 03 02 01 04 00 .byte $04, $01, $03, $02, $00, $80, $02, $04, $01, $00, $03, $01, $03, $02, $00, $01 ; CPU:$F9E0 PRG:79E0 04 01 03 02 00 80 02 04 01 00 03 01 03 02 00 01 .byte $02, $04, $03, $00, $03, $04, $01, $02, $00, $80, $80, $03, $04, $00, $04, $01 ; CPU:$F9F0 PRG:79F0 02 04 03 00 03 04 01 02 00 80 80 03 04 00 04 01 .byte $02, $01, $00, $03, $01, $80, $03, $00, $03, $02, $01, $04, $00, $01, $04, $02 ; CPU:$FA00 PRG:7A00 02 01 00 03 01 80 03 00 03 02 01 04 00 01 04 02 .byte $03, $00, $01, $01, $02, $04, $00, $04, $03, $01, $03, $00, $03, $02, $04, $02 ; CPU:$FA10 PRG:7A10 03 00 01 01 02 04 00 04 03 01 03 00 03 02 04 02 .byte $00, $01, $80, $03, $01, $00, $02, $80, $02, $04, $00, $04, $01, $03, $04, $00 ; CPU:$FA20 PRG:7A20 00 01 80 03 01 00 02 80 02 04 00 04 01 03 04 00 .byte $03, $02, $80, $02, $00, $04, $02, $01, $02, $03, $00, $03, $80, $04, $04, $01 ; CPU:$FA30 PRG:7A30 03 02 80 02 00 04 02 01 02 03 00 03 80 04 04 01 .byte $00, $04, $02, $03, $80, $02, $00, $03, $01, $04, $01, $03, $00, $02, $80, $80 ; CPU:$FA40 PRG:7A40 00 04 02 03 80 02 00 03 01 04 01 03 00 02 80 80 .byte $02, $04, $00, $01, $04, $02, $03, $02, $00, $03, $80, $01, $01, $04, $00, $04 ; CPU:$FA50 PRG:7A50 02 04 00 01 04 02 03 02 00 03 80 01 01 04 00 04 .byte $01, $02, $03, $01, $00, $02, $03, $01, $80, $02, $00, $01, $80, $04, $03, $04 ; CPU:$FA60 PRG:7A60 01 02 03 01 00 02 03 01 80 02 00 01 80 04 03 04 .byte $00, $04, $02, $01, $80, $02, $00, $03, $01, $03, $04, $01, $00, $04, $02, $80 ; CPU:$FA70 PRG:7A70 00 04 02 01 80 02 00 03 01 03 04 01 00 04 02 80 .byte $02, $03, $00, $01, $03, $80, $04, $02, $00, $02, $01, $03, $04, $01, $00, $03 ; CPU:$FA80 PRG:7A80 02 03 00 01 03 80 04 02 00 02 01 03 04 01 00 03 .byte $80, $04, $02, $03, $00, $02, $02, $03, $01, $04, $00, $01, $04, $80, $02, $03 ; CPU:$FA90 PRG:7A90 80 04 02 03 00 02 02 03 01 04 00 01 04 80 02 03 .byte $00, $02, $80, $03, $04, $01, $00, $03, $01, $02, $80, $02, $00, $02, $04, $03 ; CPU:$FAA0 PRG:7AA0 00 02 80 03 04 01 00 03 01 02 80 02 00 02 04 03 .byte $01, $03, $00, $04, $04, $01, $02, $03, $00, $02, $03, $80, $01, $04, $00, $01 ; CPU:$FAB0 PRG:7AB0 01 03 00 04 04 01 02 03 00 02 03 80 01 04 00 01 .byte $01, $02, $03, $02, $00, $04, $03, $80, $01, $03, $00, $01, $80, $02, $04, $02 ; CPU:$FAC0 PRG:7AC0 01 02 03 02 00 04 03 80 01 03 00 01 80 02 04 02 .byte $00, $03, $02, $01, $80, $01, $00, $04, $01, $03, $02, $04, $00, $01, $02, $03 ; CPU:$FAD0 PRG:7AD0 00 03 02 01 80 01 00 04 01 03 02 04 00 01 02 03 .byte $04, $03, $02, $00, $03, $80, $04, $01, $03, $04, $00, $01, $01, $03, $04, $80 ; CPU:$FAE0 PRG:7AE0 04 03 02 00 03 80 04 01 03 04 00 01 01 03 04 80 .byte $01, $00, $02, $04, $80, $01, $03, $04, $00, $03, $01, $02, $80, $04, $01, $00 ; CPU:$FAF0 PRG:7AF0 01 00 02 04 80 01 03 04 00 03 01 02 80 04 01 00 .byte $02, $04, $03, $01, $02, $03, $00, $03, $01, $80, $03, $04, $01, $00, $04, $02 ; CPU:$FB00 PRG:7B00 02 04 03 01 02 03 00 03 01 80 03 04 01 00 04 02 .byte $01, $03, $04, $04, $00, $01, $03, $04, $80, $02, $03, $00, $04, $02, $01, $80 ; CPU:$FB10 PRG:7B10 01 03 04 04 00 01 03 04 80 02 03 00 04 02 01 80 .byte $03, $01, $00, $01, $04, $02, $80, $02, $01, $00, $04, $03, $01, $80, $03, $04 ; CPU:$FB20 PRG:7B20 03 01 00 01 04 02 80 02 01 00 04 03 01 80 03 04 .byte $00, $01, $02, $03, $80, $02, $01, $00, $02, $04, $01, $04, $03, $04, $00, $03 ; CPU:$FB30 PRG:7B30 00 01 02 03 80 02 01 00 02 04 01 04 03 04 00 03 .byte $01, $80, $01, $04, $03, $00, $02, $80, $04, $03, $02, $01, $00, $02, $04, $02 ; CPU:$FB40 PRG:7B40 01 80 01 04 03 00 02 80 04 03 02 01 00 02 04 02 .byte $01, $04, $02, $00, $03, $01, $03, $02, $03, $01, $00, $02, $80, $04, $80, $04 ; CPU:$FB50 PRG:7B50 01 04 02 00 03 01 03 02 03 01 00 02 80 04 80 04 .byte $02, $00, $03, $01, $02, $80, $03, $01, $00, $02, $03, $04, $02, $04, $03, $00 ; CPU:$FB60 PRG:7B60 02 00 03 01 02 80 03 01 00 02 03 04 02 04 03 00 .byte $03, $01, $02, $04, $01, $04, $00, $02, $04, $01, $03, $02, $03, $00, $03, $03 ; CPU:$FB70 PRG:7B70 03 01 02 04 01 04 00 02 04 01 03 02 03 00 03 03 .byte $02, $01, $04, $01, $00, $01, $80, $04, $03, $02, $03, $00, $80, $80, $02, $01 ; CPU:$FB80 PRG:7B80 02 01 04 01 00 01 80 04 03 02 03 00 80 80 02 01 .byte $04, $02, $00, $02, $04, $03, $80, $80, $01, $00, $03, $01, $02, $01, $04, $03 ; CPU:$FB90 PRG:7B90 04 02 00 02 04 03 80 80 01 00 03 01 02 01 04 03 .byte $00, $04, $01, $30, $30, $30, $30, $06, $01, $30, $30, $30, $30, $30, $30, $0A ; CPU:$FBA0 PRG:7BA0 00 04 01 30 30 30 30 06 01 30 30 30 30 30 30 0A .byte $02, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FBB0 PRG:7BB0 02 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FBC0 PRG:7BC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FBD0 PRG:7BD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FBE0 PRG:7BE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FBF0 PRG:7BF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC00 PRG:7C00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC10 PRG:7C10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC20 PRG:7C20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC30 PRG:7C30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC40 PRG:7C40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC50 PRG:7C50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC60 PRG:7C60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC70 PRG:7C70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC80 PRG:7C80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC90 PRG:7C90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FCA0 PRG:7CA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FCB0 PRG:7CB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FCC0 PRG:7CC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FCD0 PRG:7CD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FCE0 PRG:7CE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FCF0 PRG:7CF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD00 PRG:7D00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD10 PRG:7D10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD20 PRG:7D20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD30 PRG:7D30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD40 PRG:7D40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD50 PRG:7D50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD60 PRG:7D60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD70 PRG:7D70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD80 PRG:7D80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD90 PRG:7D90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FDA0 PRG:7DA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FDB0 PRG:7DB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FDC0 PRG:7DC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FDD0 PRG:7DD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FDE0 PRG:7DE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FDF0 PRG:7DF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE00 PRG:7E00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE10 PRG:7E10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE20 PRG:7E20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE30 PRG:7E30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE40 PRG:7E40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE50 PRG:7E50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE60 PRG:7E60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE70 PRG:7E70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE80 PRG:7E80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE90 PRG:7E90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FEA0 PRG:7EA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FEB0 PRG:7EB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FEC0 PRG:7EC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FED0 PRG:7ED0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FEE0 PRG:7EE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FEF0 PRG:7EF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ; ----------------------------------------------------------------------------- ; Routine: Reset ; Global: Power-on entry: sets up the stack, clears the PPU and starts the bank switch. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero 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: ldx #$FF ; CPU:$FF00 PRG:7F00 A2 FF txs ; CPU:$FF02 PRG:7F02 9A sei ; CPU:$FF03 PRG:7F03 78 cld ; CPU:$FF04 PRG:7F04 D8 lda #$00 ; CPU:$FF05 PRG:7F05 A9 00 sta PPUCTRL ; CPU:$FF07 PRG:7F07 8D 00 20 sta PPUMASK ; CPU:$FF0A PRG:7F0A 8D 01 20 lda #$30 ; CPU:$FF0D PRG:7F0D A9 30 jsr WritePrgBankReg ; CPU:$FF0F PRG:7F0F 20 49 FF jsr WaitForBankSwitch ; CPU:$FF12 PRG:7F12 20 57 FF bcc SelectChrBanks ; CPU:$FF15 PRG:7F15 90 18 lda #$10 ; CPU:$FF17 PRG:7F17 A9 10 jsr WritePrgBankReg ; CPU:$FF19 PRG:7F19 20 49 FF lda #$30 ; CPU:$FF1C PRG:7F1C A9 30 jsr WritePrgBankReg ; CPU:$FF1E PRG:7F1E 20 49 FF jsr DelayOuterLoop ; CPU:$FF21 PRG:7F21 20 4C FF jsr DelayOuterLoop ; CPU:$FF24 PRG:7F24 20 4C FF lda #$10 ; CPU:$FF27 PRG:7F27 A9 10 jsr WritePrgBankReg ; CPU:$FF29 PRG:7F29 20 49 FF jmp StartGame ; CPU:$FF2C PRG:7F2C 4C 3E FF ; ----------------------------------------------------------------------------- ; Routine: SelectChrBanks ; Global: Picks the CHR banks for the stage that is about to be drawn. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SelectChrBanks: lda #$20 ; CPU:$FF2F PRG:7F2F A9 20 jsr WritePrgBankReg ; CPU:$FF31 PRG:7F31 20 49 FF lda #$30 ; CPU:$FF34 PRG:7F34 A9 30 jsr WritePrgBankReg ; CPU:$FF36 PRG:7F36 20 49 FF lda #$20 ; CPU:$FF39 PRG:7F39 A9 20 jsr WritePrgBankReg ; CPU:$FF3B PRG:7F3B 20 49 FF ; ----------------------------------------------------------------------------- ; Routine: StartGame ; Global: Switches to the first PRG bank and hands over to the game code. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- StartGame: lda #$30 ; CPU:$FF3E PRG:7F3E A9 30 sta $4100 ; CPU:$FF40 PRG:7F40 8D 00 41 jsr StartBankSwitchDelay ; CPU:$FF43 PRG:7F43 20 62 FF jmp InitializeGame ; CPU:$FF46 PRG:7F46 4C 36 80 ; ----------------------------------------------------------------------------- ; Routine: WritePrgBankReg ; Global: Writes the MMC3 PRG bank register at $4100. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- WritePrgBankReg: sta $4100 ; CPU:$FF49 PRG:7F49 8D 00 41 ; ----------------------------------------------------------------------------- ; Routine: DelayOuterLoop ; Global: Outer half of the power-on delay loop. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DelayOuterLoop: ldy #$04 ; CPU:$FF4C PRG:7F4C A0 04 ; ----------------------------------------------------------------------------- ; Routine: DelayOuterLoop_OnNonzero ; Global: Branch target inside DelayOuterLoop: taken when the tested value is not zero. ; Local: Part of DelayOuterLoop. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DelayOuterLoop_OnNonzero: ldx #$CE ; CPU:$FF4E PRG:7F4E A2 CE ; ----------------------------------------------------------------------------- ; Routine: DelayInnerLoop ; Global: Inner half of the power-on delay loop. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- DelayInnerLoop: dex ; CPU:$FF50 PRG:7F50 CA bne DelayInnerLoop ; CPU:$FF51 PRG:7F51 D0 FD dey ; CPU:$FF53 PRG:7F53 88 bne DelayOuterLoop_OnNonzero ; CPU:$FF54 PRG:7F54 D0 F8 rts ; CPU:$FF56 PRG:7F56 60 ; ----------------------------------------------------------------------------- ; Routine: WaitForBankSwitch ; Global: Waits for the bank switch counter to run out. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- WaitForBankSwitch: lda #$41 ; CPU:$FF57 PRG:7F57 A9 41 cmp $07F0 ; CPU:$FF59 PRG:7F59 CD F0 07 bne WaitForBankSwitch_Loop ; CPU:$FF5C PRG:7F5C D0 02 sec ; CPU:$FF5E PRG:7F5E 38 rts ; CPU:$FF5F PRG:7F5F 60 ; ----------------------------------------------------------------------------- ; Routine: WaitForBankSwitch_Loop ; Global: Branch target inside WaitForBankSwitch: taken when the loop repeats. ; Local: Part of WaitForBankSwitch. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- WaitForBankSwitch_Loop: clc ; CPU:$FF60 PRG:7F60 18 rts ; CPU:$FF61 PRG:7F61 60 ; ----------------------------------------------------------------------------- ; Routine: StartBankSwitchDelay ; Global: Starts the bank switch delay counter. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- StartBankSwitchDelay: lda #$41 ; CPU:$FF62 PRG:7F62 A9 41 sta $07F0 ; CPU:$FF64 PRG:7F64 8D F0 07 rts ; CPU:$FF67 PRG:7F67 60 ; ---- data $FF68-$FF6F (8 bytes) ---- .byte $A9, $5A, $8D, $F0, $07, $60, $FF, $FF ; CPU:$FF68 PRG:7F68 A9 5A 8D F0 07 60 FF FF ; ----------------------------------------------------------------------------- ; Routine: SwitchPrgBank ; Global: Writes A to the MMC3 PRG bank register with the mode bits forced on. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SwitchPrgBank: ora #$30 ; CPU:$FF70 PRG:7F70 09 30 sta $4100 ; CPU:$FF72 PRG:7F72 8D 00 41 rts ; CPU:$FF75 PRG:7F75 60 ; ---- data $FF76-$FF7F (10 bytes) ---- .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF76 PRG:7F76 FF FF FF FF FF FF FF FF FF FF ; ----------------------------------------------------------------------------- ; Routine: SwitchPrgBankKeepA ; Global: Writes X to the MMC3 PRG bank register and keeps A. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- SwitchPrgBankKeepA: pha ; CPU:$FF80 PRG:7F80 48 txa ; CPU:$FF81 PRG:7F81 8A ora #$30 ; CPU:$FF82 PRG:7F82 09 30 sta $4100 ; CPU:$FF84 PRG:7F84 8D 00 41 pla ; CPU:$FF87 PRG:7F87 68 rts ; CPU:$FF88 PRG:7F88 60 ; ---- data $FF89-$FFFF (119 bytes) ---- .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF89 PRG:7F89 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF99 PRG:7F99 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFA9 PRG:7FA9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFB9 PRG:7FB9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFC9 PRG:7FC9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFD9 PRG:7FD9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFE9 PRG:7FE9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $8F, $80, $00, $FF, $36, $80 ; CPU:$FFF9 PRG:7FF9 FF 8F 80 00 FF 36 80 .segment "PRG4" .org $8000 ; ---- data $8000-$800C (13 bytes) ---- .byte $EA, $EA, $86, $2C, $85, $2D, $A5, $2C, $29, $07, $20, $1B, $80 ; CPU:$8000 PRG:8000 EA EA 86 2C 85 2D A5 2C 29 07 20 1B 80 ; ----------------------------------------------------------------------------- ; Routine: Bank4_CallBankedHandler ; Global: Switches the PRG bank and dispatches to the handler the caller named. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_CallBankedHandler: jsr Bank4_Sub_8088 ; CPU:$800D PRG:800D 20 88 80 lda PrgBankNumber ; CPU:$8010 PRG:8010 A5 2C and #$07 ; CPU:$8012 PRG:8012 29 07 jmp Bank4_Sub_801B ; CPU:$8014 PRG:8014 4C 1B 80 ; ---- data $8017-$801A (4 bytes) ---- .byte $85, $2C, $09, $08 ; CPU:$8017 PRG:8017 85 2C 09 08 ; ----------------------------------------------------------------------------- ; Routine: Bank4_Sub_801B ; Global: Branch target inside Bank4_Sub: taken when 801B. ; Local: Part of Bank4_Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Sub_801B: tax ; CPU:$801B PRG:801B AA jsr SwitchPrgBank ; CPU:$801C PRG:801C 20 70 FF lda $8026,x ; CPU:$801F PRG:801F BD 26 80 sta $8026,x ; CPU:$8022 PRG:8022 9D 26 80 rts ; CPU:$8025 PRG:8025 60 ; ---- data $8026-$8087 (98 bytes) ---- ; referenced by `lda $8026,x` at $801F (operand $8026 falls inside this region) ; referenced by `sta $8026,x` at $8022 (operand $8026 falls inside this region) .byte $00, $01, $02, $03, $04, $05, $06, $07, $10, $11, $12, $13, $14, $15, $16, $17 ; CPU:$8026 PRG:8026 00 01 02 03 04 05 06 07 10 11 12 13 14 15 16 17 .byte $78, $D8, $AD, $02, $20, $10, $FB, $A9, $00, $8D, $00, $20, $8D, $01, $20, $A2 ; CPU:$8036 PRG:8036 78 D8 AD 02 20 10 FB A9 00 8D 00 20 8D 01 20 A2 .byte $FF, $9A, $A9, $00, $20, $1B, $80, $A9, $00, $85, $00, $85, $01, $A0, $02, $A2 ; CPU:$8046 PRG:8046 FF 9A A9 00 20 1B 80 A9 00 85 00 85 01 A0 02 A2 .byte $06, $91, $00, $C8, $E0, $00, $D0, $04, $C0, $E0, $B0, $09, $C0, $00, $D0, $F1 ; CPU:$8056 PRG:8056 06 91 00 C8 E0 00 D0 04 C0 E0 B0 09 C0 00 D0 F1 .byte $E6, $01, $CA, $10, $EC, $85, $00, $85, $01, $A9, $00, $8D, $15, $40, $A9, $1E ; CPU:$8066 PRG:8066 E6 01 CA 10 EC 85 00 85 01 A9 00 8D 15 40 A9 1E .byte $85, $02, $A9, $88, $8D, $00, $20, $85, $01, $A9, $01, $85, $6A, $E6, $2F, $4C ; CPU:$8076 PRG:8076 85 02 A9 88 8D 00 20 85 01 A9 01 85 6A E6 2F 4C .byte $83, $80 ; CPU:$8086 PRG:8086 83 80 ; ----------------------------------------------------------------------------- ; Routine: Bank4_Sub_8088 ; Global: Branch target inside Bank4_Sub: taken when 8088. ; Local: Part of Bank4_Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Sub_8088: lda HandlerIndex ; CPU:$8088 PRG:8088 A5 2D asl a ; CPU:$808A PRG:808A 0A tay ; CPU:$808B PRG:808B A8 lda $8096,y ; CPU:$808C PRG:808C B9 96 80 pha ; CPU:$808F PRG:808F 48 lda $8095,y ; CPU:$8090 PRG:8090 B9 95 80 pha ; CPU:$8093 PRG:8093 48 rts ; CPU:$8094 PRG:8094 60 ; ---- data $8095-$80A6 (18 bytes) ---- ; referenced by `lda $8096,y` at $808C (operand $8096 falls inside this region) ; referenced by `lda $8095,y` at $8090 (operand $8095 falls inside this region) .byte $A6, $80, $30, $81, $83, $A7, $19, $A7, $F0, $AA, $25, $A7, $17, $81, $4F, $AB ; CPU:$8095 PRG:8095 A6 80 30 81 83 A7 19 A7 F0 AA 25 A7 17 81 4F AB .byte $60, $81 ; CPU:$80A5 PRG:80A5 60 81 ; ----------------------------------------------------------------------------- ; Routine: Bank4_StartVramWrite ; Global: Sets the PPU address for the next VRAM write. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_StartVramWrite: lda Zp2E ; CPU:$80A7 PRG:80A7 A5 2E asl a ; CPU:$80A9 PRG:80A9 0A tax ; CPU:$80AA PRG:80AA AA pha ; CPU:$80AB PRG:80AB 48 lda $839A,x ; CPU:$80AC PRG:80AC BD 9A 83 sta Zp11 ; CPU:$80AF PRG:80AF 85 11 lda $839B,x ; CPU:$80B1 PRG:80B1 BD 9B 83 sta Zp12 ; CPU:$80B4 PRG:80B4 85 12 jsr Bank4_Sub_80C9 ; CPU:$80B6 PRG:80B6 20 C9 80 pla ; CPU:$80B9 PRG:80B9 68 tax ; CPU:$80BA PRG:80BA AA lda $83C0,x ; CPU:$80BB PRG:80BB BD C0 83 sta Zp11 ; CPU:$80BE PRG:80BE 85 11 lda $83C1,x ; CPU:$80C0 PRG:80C0 BD C1 83 sta Zp12 ; CPU:$80C3 PRG:80C3 85 12 jsr Bank4_Sub_8118 ; CPU:$80C5 PRG:80C5 20 18 81 rts ; CPU:$80C8 PRG:80C8 60 ; ----------------------------------------------------------------------------- ; Routine: Bank4_Sub_80C9 ; Global: Branch target inside Bank4_Sub: taken when 80C9. ; Local: Part of Bank4_Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Sub_80C9: lda #$00 ; CPU:$80C9 PRG:80C9 A9 00 sta PPUCTRL ; CPU:$80CB PRG:80CB 8D 00 20 sta PPUMASK ; CPU:$80CE PRG:80CE 8D 01 20 ldy #$00 ; CPU:$80D1 PRG:80D1 A0 00 lda PPUSTATUS ; CPU:$80D3 PRG:80D3 AD 02 20 lda (Zp11),y ; CPU:$80D6 PRG:80D6 B1 11 sta PPUADDR ; CPU:$80D8 PRG:80D8 8D 06 20 jsr Bank4_Sub_8111 ; CPU:$80DB PRG:80DB 20 11 81 lda (Zp11),y ; CPU:$80DE PRG:80DE B1 11 sta PPUADDR ; CPU:$80E0 PRG:80E0 8D 06 20 ; ----------------------------------------------------------------------------- ; Routine: Bank4_Bank4_StartVramWrite_OnZero ; Global: Branch target inside Bank4_Bank4_StartVramWrite: taken when the tested value is zero. ; Local: Part of Bank4_Bank4_StartVramWrite. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Bank4_StartVramWrite_OnZero: jsr Bank4_Sub_8111 ; CPU:$80E3 PRG:80E3 20 11 81 lda (Zp11),y ; CPU:$80E6 PRG:80E6 B1 11 bpl Bank4_Bank4_StartVramWrite_Loop ; CPU:$80E8 PRG:80E8 10 16 cmp #$FF ; CPU:$80EA PRG:80EA C9 FF beq Bank4_Bank4_StartVramWrite_Loop2 ; CPU:$80EC PRG:80EC F0 22 and #$7F ; CPU:$80EE PRG:80EE 29 7F sta ControllerByte ; CPU:$80F0 PRG:80F0 85 07 ; ----------------------------------------------------------------------------- ; Routine: Bank4_Bank4_StartVramWrite_OnNonzero ; Global: Branch target inside Bank4_Bank4_StartVramWrite: taken when the tested value is not zero. ; Local: Part of Bank4_Bank4_StartVramWrite. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Bank4_StartVramWrite_OnNonzero: jsr Bank4_Sub_8111 ; CPU:$80F2 PRG:80F2 20 11 81 lda (Zp11),y ; CPU:$80F5 PRG:80F5 B1 11 sta PPUDATA ; CPU:$80F7 PRG:80F7 8D 07 20 dec ControllerByte ; CPU:$80FA PRG:80FA C6 07 bne Bank4_Bank4_StartVramWrite_OnNonzero ; CPU:$80FC PRG:80FC D0 F4 beq Bank4_Bank4_StartVramWrite_OnZero ; CPU:$80FE PRG:80FE F0 E3 ; ----------------------------------------------------------------------------- ; Routine: Bank4_Bank4_StartVramWrite_Loop ; Global: Branch target inside Bank4_Bank4_StartVramWrite: taken when the loop repeats. ; Local: Part of Bank4_Bank4_StartVramWrite. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Bank4_StartVramWrite_Loop: sta ControllerByte ; CPU:$8100 PRG:8100 85 07 jsr Bank4_Sub_8111 ; CPU:$8102 PRG:8102 20 11 81 lda (Zp11),y ; CPU:$8105 PRG:8105 B1 11 ; ----------------------------------------------------------------------------- ; Routine: Bank4_Bank4_StartVramWrite_OnNonzero2 ; Global: Branch target inside Bank4_Bank4_StartVramWrite: taken when OnNonzero2. ; Local: Part of Bank4_Bank4_StartVramWrite. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Bank4_StartVramWrite_OnNonzero2: sta PPUDATA ; CPU:$8107 PRG:8107 8D 07 20 dec ControllerByte ; CPU:$810A PRG:810A C6 07 bne Bank4_Bank4_StartVramWrite_OnNonzero2 ; CPU:$810C PRG:810C D0 F9 beq Bank4_Bank4_StartVramWrite_OnZero ; CPU:$810E PRG:810E F0 D3 ; ----------------------------------------------------------------------------- ; Routine: Bank4_Bank4_StartVramWrite_Loop2 ; Global: Branch target inside Bank4_Bank4_StartVramWrite: taken when Loop2. ; Local: Part of Bank4_Bank4_StartVramWrite. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Bank4_StartVramWrite_Loop2: rts ; CPU:$8110 PRG:8110 60 ; ----------------------------------------------------------------------------- ; Routine: Bank4_Sub_8111 ; Global: Branch target inside Bank4_Sub: taken when 8111. ; Local: Part of Bank4_Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Sub_8111: inc Zp11 ; CPU:$8111 PRG:8111 E6 11 bne Bank4_Bank4_StartVramWrite_Loop3 ; CPU:$8113 PRG:8113 D0 02 inc Zp12 ; CPU:$8115 PRG:8115 E6 12 ; ----------------------------------------------------------------------------- ; Routine: Bank4_Bank4_StartVramWrite_Loop3 ; Global: Branch target inside Bank4_Bank4_StartVramWrite: taken when Loop3. ; Local: Part of Bank4_Bank4_StartVramWrite. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Bank4_StartVramWrite_Loop3: rts ; CPU:$8117 PRG:8117 60 ; ----------------------------------------------------------------------------- ; Routine: Bank4_Sub_8118 ; Global: Branch target inside Bank4_Sub: taken when 8118. ; Local: Part of Bank4_Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Sub_8118: lda PPUSTATUS ; CPU:$8118 PRG:8118 AD 02 20 lda #$3F ; CPU:$811B PRG:811B A9 3F sta PPUADDR ; CPU:$811D PRG:811D 8D 06 20 lda #$00 ; CPU:$8120 PRG:8120 A9 00 sta PPUADDR ; CPU:$8122 PRG:8122 8D 06 20 tay ; CPU:$8125 PRG:8125 A8 ; ----------------------------------------------------------------------------- ; Routine: Bank4_Bank4_StartVramWrite_OnCarryClear ; Global: Branch target inside Bank4_Bank4_StartVramWrite: taken when the addition or subtraction did not carry. ; Local: Part of Bank4_Bank4_StartVramWrite. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Bank4_StartVramWrite_OnCarryClear: lda (Zp11),y ; CPU:$8126 PRG:8126 B1 11 sta PPUDATA ; CPU:$8128 PRG:8128 8D 07 20 iny ; CPU:$812B PRG:812B C8 cpy #$20 ; CPU:$812C PRG:812C C0 20 bcc Bank4_Bank4_StartVramWrite_OnCarryClear ; CPU:$812E PRG:812E 90 F6 rts ; CPU:$8130 PRG:8130 60 ; ---- data $8131-$8160 (48 bytes) ---- .byte $A5, $91, $0A, $AA, $BD, $8A, $81, $85, $11, $BD, $8B, $81, $85, $12, $A4, $92 ; CPU:$8131 PRG:8131 A5 91 0A AA BD 8A 81 85 11 BD 8B 81 85 12 A4 92 .byte $B1, $11, $D0, $06, $A0, $00, $84, $92, $B1, $11, $C5, $75, $B0, $11, $A9, $00 ; CPU:$8141 PRG:8141 B1 11 D0 06 A0 00 84 92 B1 11 C5 75 B0 11 A9 00 .byte $85, $75, $C8, $B1, $11, $85, $93, $C8, $B1, $11, $85, $94, $C8, $84, $92, $60 ; CPU:$8151 PRG:8151 85 75 C8 B1 11 85 93 C8 B1 11 85 94 C8 84 92 60 ; ----------------------------------------------------------------------------- ; Routine: Bank4_UpdateNametable ; Global: Rewrites the nametable entries that changed. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_UpdateNametable: ldy #$00 ; CPU:$8161 PRG:8161 A0 00 lda Zp94 ; CPU:$8163 PRG:8163 A5 94 beq Bank4_Bank4_UpdateNametable_Loop ; CPU:$8165 PRG:8165 F0 1F ; ----------------------------------------------------------------------------- ; Routine: Bank4_Bank4_UpdateNametable_OnZero ; Global: Branch target inside Bank4_Bank4_UpdateNametable: taken when the tested value is zero. ; Local: Part of Bank4_Bank4_UpdateNametable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Bank4_UpdateNametable_OnZero: lda (Zp93),y ; CPU:$8167 PRG:8167 B1 93 beq Bank4_Bank4_UpdateNametable_Loop ; CPU:$8169 PRG:8169 F0 1B sta PPUADDR ; CPU:$816B PRG:816B 8D 06 20 iny ; CPU:$816E PRG:816E C8 lda (Zp93),y ; CPU:$816F PRG:816F B1 93 sta PPUADDR ; CPU:$8171 PRG:8171 8D 06 20 iny ; CPU:$8174 PRG:8174 C8 lda (Zp93),y ; CPU:$8175 PRG:8175 B1 93 sta Zp11 ; CPU:$8177 PRG:8177 85 11 iny ; CPU:$8179 PRG:8179 C8 ; ----------------------------------------------------------------------------- ; Routine: Bank4_Bank4_UpdateNametable_OnNonzero ; Global: Branch target inside Bank4_Bank4_UpdateNametable: taken when the tested value is not zero. ; Local: Part of Bank4_Bank4_UpdateNametable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Bank4_UpdateNametable_OnNonzero: lda (Zp93),y ; CPU:$817A PRG:817A B1 93 sta PPUDATA ; CPU:$817C PRG:817C 8D 07 20 iny ; CPU:$817F PRG:817F C8 dec Zp11 ; CPU:$8180 PRG:8180 C6 11 bne Bank4_Bank4_UpdateNametable_OnNonzero ; CPU:$8182 PRG:8182 D0 F6 beq Bank4_Bank4_UpdateNametable_OnZero ; CPU:$8184 PRG:8184 F0 E1 ; ----------------------------------------------------------------------------- ; Routine: Bank4_Bank4_UpdateNametable_Loop ; Global: Branch target inside Bank4_Bank4_UpdateNametable: taken when the loop repeats. ; Local: Part of Bank4_Bank4_UpdateNametable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank4_Bank4_UpdateNametable_Loop: sta Zp94 ; CPU:$8186 PRG:8186 85 94 rts ; CPU:$8188 PRG:8188 60 ; ---- data $8189-$9FFF (7799 bytes) ---- ; referenced by `lda $839A,x` at $80AC (operand $839A falls inside this region) ; referenced by `lda $839B,x` at $80B1 (operand $839B falls inside this region) ; referenced by `lda $83C0,x` at $80BB (operand $83C0 falls inside this region) ; referenced by `lda $83C1,x` at $80C0 (operand $83C1 falls inside this region) .byte $40, $A2, $81, $ED, $81, $04, $82, $37, $82, $5E, $82, $77, $82, $D6, $82, $E7 ; CPU:$8189 PRG:8189 40 A2 81 ED 81 04 82 37 82 5E 82 77 82 D6 82 E7 .byte $82, $FE, $82, $23, $83, $38, $83, $87, $83, $18, $A9, $81, $18, $CB, $81, $00 ; CPU:$8199 PRG:8199 82 FE 82 23 83 38 83 87 83 18 A9 81 18 CB 81 00 .byte $24, $E8, $02, $AF, $B0, $25, $4D, $02, $FF, $FF, $25, $6D, $02, $FF, $FF, $25 ; CPU:$81A9 PRG:81A9 24 E8 02 AF B0 25 4D 02 FF FF 25 6D 02 FF FF 25 .byte $8D, $04, $FF, $B8, $B2, $B3, $25, $AD, $03, $B6, $B9, $B4, $25, $CE, $02, $BA ; CPU:$81B9 PRG:81B9 8D 04 FF B8 B2 B3 25 AD 03 B6 B9 B4 25 CE 02 BA .byte $B5, $00, $24, $E8, $02, $37, $50, $25, $4D, $02, $7F, $80, $25, $6D, $02, $7E ; CPU:$81C9 PRG:81C9 B5 00 24 E8 02 37 50 25 4D 02 7F 80 25 6D 02 7E .byte $81, $25, $8D, $04, $7D, $82, $FF, $FF, $25, $AD, $03, $7C, $83, $FF, $25, $CE ; CPU:$81D9 PRG:81D9 81 25 8D 04 7D 82 FF FF 25 AD 03 7C 83 FF 25 CE .byte $02, $84, $FF, $00, $18, $F4, $81, $18, $FC, $81, $00, $26, $AB, $04, $66, $73 ; CPU:$81E9 PRG:81E9 02 84 FF 00 18 F4 81 18 FC 81 00 26 AB 04 66 73 .byte $7A, $86, $00, $26, $AB, $04, $D5, $D6, $D7, $D8, $00, $18, $0B, $82, $18, $21 ; CPU:$81F9 PRG:81F9 7A 86 00 26 AB 04 D5 D6 D7 D8 00 18 0B 82 18 21 .byte $82, $00, $25, $13, $02, $39, $3E, $27, $16, $02, $D2, $D7, $27, $36, $03, $D3 ; CPU:$8209 PRG:8209 82 00 25 13 02 39 3E 27 16 02 D2 D7 27 36 03 D3 .byte $D6, $D8, $27, $56, $02, $D4, $D5, $00, $25, $13, $02, $D0, $D1, $27, $16, $02 ; CPU:$8219 PRG:8219 D6 D8 27 56 02 D4 D5 00 25 13 02 D0 D1 27 16 02 .byte $72, $77, $27, $36, $03, $73, $76, $85, $27, $56, $02, $74, $75, $00, $18, $3E ; CPU:$8229 PRG:8229 72 77 27 36 03 73 76 85 27 56 02 74 75 00 18 3E .byte $82, $18, $4E, $82, $00, $24, $ED, $02, $B3, $B4, $25, $0D, $02, $B5, $B8, $25 ; CPU:$8239 PRG:8239 82 18 4E 82 00 24 ED 02 B3 B4 25 0D 02 B5 B8 25 .byte $2D, $02, $B6, $B7, $00, $24, $ED, $02, $86, $8E, $25, $0D, $02, $85, $8F, $25 ; CPU:$8249 PRG:8249 2D 02 B6 B7 00 24 ED 02 86 8E 25 0D 02 85 8F 25 .byte $2D, $02, $84, $90, $00, $18, $65, $82, $18, $6E, $82, $00, $25, $E8, $01, $F7 ; CPU:$8259 PRG:8259 2D 02 84 90 00 18 65 82 18 6E 82 00 25 E8 01 F7 .byte $26, $07, $01, $F8, $00, $25, $E8, $01, $81, $26, $07, $01, $5F, $00, $18, $7E ; CPU:$8269 PRG:8269 26 07 01 F8 00 25 E8 01 81 26 07 01 5F 00 18 7E .byte $82, $18, $AA, $82, $00, $24, $E9, $02, $F1, $EC, $26, $4B, $04, $E9, $E8, $E7 ; CPU:$8279 PRG:8279 82 18 AA 82 00 24 E9 02 F1 EC 26 4B 04 E9 E8 E7 .byte $E6, $26, $6B, $04, $E0, $E1, $E4, $E5, $26, $8B, $04, $EB, $E2, $E3, $EA, $26 ; CPU:$8289 PRG:8289 E6 26 6B 04 E0 E1 E4 E5 26 8B 04 EB E2 E3 EA 26 .byte $AB, $03, $ED, $EE, $EF, $26, $CB, $03, $92, $92, $F2, $26, $EC, $02, $F0, $92 ; CPU:$8299 PRG:8299 AB 03 ED EE EF 26 CB 03 92 92 F2 26 EC 02 F0 92 .byte $00, $24, $E9, $02, $35, $53, $26, $4B, $04, $63, $FF, $FF, $FF, $26, $6B, $04 ; CPU:$82A9 PRG:82A9 00 24 E9 02 35 53 26 4B 04 63 FF FF FF 26 6B 04 .byte $64, $70, $7F, $87, $26, $8B, $04, $65, $6F, $92, $9A, $26, $AB, $03, $66, $6E ; CPU:$82B9 PRG:82B9 64 70 7F 87 26 8B 04 65 6F 92 9A 26 AB 03 66 6E .byte $80, $26, $CB, $03, $67, $6D, $81, $26, $EC, $02, $6C, $82, $00, $18, $DD, $82 ; CPU:$82C9 PRG:82C9 80 26 CB 03 67 6D 81 26 EC 02 6C 82 00 18 DD 82 .byte $18, $E2, $82, $00, $25, $26, $01, $EE, $00, $25, $26, $01, $0E, $00, $18, $EE ; CPU:$82D9 PRG:82D9 18 E2 82 00 25 26 01 EE 00 25 26 01 0E 00 18 EE .byte $82, $18, $F6, $82, $00, $25, $14, $04, $D5, $D6, $D7, $D8, $00, $25, $14, $04 ; CPU:$82E9 PRG:82E9 82 18 F6 82 00 25 14 04 D5 D6 D7 D8 00 25 14 04 .byte $1E, $39, $3E, $5C, $00, $18, $05, $83, $18, $14, $83, $00, $26, $17, $01, $B8 ; CPU:$82F9 PRG:82F9 1E 39 3E 5C 00 18 05 83 18 14 83 00 26 17 01 B8 .byte $26, $36, $02, $B7, $B9, $26, $57, $02, $BA, $BB, $00, $26, $17, $01, $7C, $26 ; CPU:$8309 PRG:8309 26 36 02 B7 B9 26 57 02 BA BB 00 26 17 01 7C 26 .byte $36, $02, $72, $7D, $26, $57, $02, $7E, $89, $00, $18, $2A, $83, $18, $31, $83 ; CPU:$8319 PRG:8319 36 02 72 7D 26 57 02 7E 89 00 18 2A 83 18 31 83 .byte $00, $25, $15, $03, $F2, $F3, $F4, $00, $25, $15, $03, $14, $15, $16, $00, $18 ; CPU:$8329 PRG:8329 00 25 15 03 F2 F3 F4 00 25 15 03 14 15 16 00 18 .byte $3F, $83, $18, $63, $83, $00, $24, $D5, $01, $CF, $25, $71, $02, $DC, $D7, $25 ; CPU:$8339 PRG:8339 3F 83 18 63 83 00 24 D5 01 CF 25 71 02 DC D7 25 .byte $91, $02, $D6, $D8, $25, $B1, $02, $D5, $D9, $25, $D1, $02, $D4, $DA, $25, $F0 ; CPU:$8349 PRG:8349 91 02 D6 D8 25 B1 02 D5 D9 25 D1 02 D4 DA 25 F0 .byte $03, $D2, $D3, $DB, $26, $10, $02, $D0, $D1, $00, $24, $D5, $01, $10, $25, $71 ; CPU:$8359 PRG:8359 03 D2 D3 DB 26 10 02 D0 D1 00 24 D5 01 10 25 71 .byte $02, $FF, $2C, $25, $91, $02, $33, $34, $25, $B1, $02, $3B, $3C, $25, $D1, $02 ; CPU:$8369 PRG:8369 02 FF 2C 25 91 02 33 34 25 B1 02 3B 3C 25 D1 02 .byte $43, $44, $25, $F0, $03, $4A, $4B, $4C, $26, $10, $02, $52, $53, $00, $18, $8E ; CPU:$8379 PRG:8379 43 44 25 F0 03 4A 4B 4C 26 10 02 52 53 00 18 8E .byte $83, $18, $94, $83, $00, $25, $E8, $02, $F9, $FA, $00, $25, $E8, $02, $81, $91 ; CPU:$8389 PRG:8389 83 18 94 83 00 25 E8 02 F9 FA 00 25 E8 02 81 91 .byte $00, $47, $85, $A1, $87, $8C, $8A, $B1, $8C, $B1, $8D, $51, $8F, $15, $91, $92 ; CPU:$8399 PRG:8399 00 47 85 A1 87 8C 8A B1 8C B1 8D 51 8F 15 91 92 .byte $92, $44, $94, $E6, $95, $81, $97, $23, $99, $D3, $9A, $76, $9C, $DA, $9D, $79 ; CPU:$83A9 PRG:83A9 92 44 94 E6 95 81 97 23 99 D3 9A 76 9C DA 9D 79 .byte $9F, $21, $A1, $E3, $A3, $92, $A5, $E6, $83, $16, $84, $36, $84, $E6, $83, $56 ; CPU:$83B9 PRG:83B9 9F 21 A1 E3 A3 92 A5 E6 83 16 84 36 84 E6 83 56 .byte $84, $76, $84, $86, $84, $96, $84, $A6, $84, $B6, $84, $C6, $84, $D6, $84, $E6 ; CPU:$83C9 PRG:83C9 84 76 84 86 84 96 84 A6 84 B6 84 C6 84 D6 84 E6 .byte $84, $F6, $84, $06, $85, $16, $85, $27, $85, $27, $85, $E6, $83, $0E, $0E, $05 ; CPU:$83D9 PRG:83D9 84 F6 84 06 85 16 85 27 85 27 85 E6 83 0E 0E 05 .byte $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E, $0E ; CPU:$83E9 PRG:83E9 0E 0E 0E 0E 0E 0E 0E 0E 0E 0E 0E 0E 0E 0E 0E 0E .byte $0E, $0E, $25, $13, $1A, $0E, $21, $25, $1A, $0E, $21, $13, $30, $0E, $3A, $2A ; CPU:$83F9 PRG:83F9 0E 0E 25 13 1A 0E 21 25 1A 0E 21 13 30 0E 3A 2A .byte $1A, $0E, $32, $27, $07, $0E, $30, $28, $08, $0E, $32, $2C, $12, $0E, $31, $2A ; CPU:$8409 PRG:8409 1A 0E 32 27 07 0E 30 28 08 0E 32 2C 12 0E 31 2A .byte $28, $0E, $30, $25, $22, $0E, $2B, $28, $30, $0E, $31, $22, $13, $0E, $31, $2A ; CPU:$8419 PRG:8419 28 0E 30 25 22 0E 2B 28 30 0E 31 22 13 0E 31 2A .byte $28, $0E, $2A, $25, $22, $0E, $21, $28, $30, $0E, $27, $27, $17, $0E, $31, $2A ; CPU:$8429 PRG:8429 28 0E 2A 25 22 0E 21 28 30 0E 27 27 17 0E 31 2A .byte $28, $0E, $2A, $25, $22, $0E, $21, $28, $30, $0E, $30, $27, $17, $0E, $31, $2A ; CPU:$8439 PRG:8439 28 0E 2A 25 22 0E 21 28 30 0E 30 27 17 0E 31 2A .byte $28, $0E, $2A, $25, $22, $0E, $21, $28, $30, $0E, $30, $27, $17, $0E, $21, $13 ; CPU:$8449 PRG:8449 28 0E 2A 25 22 0E 21 28 30 0E 30 27 17 0E 21 13 .byte $18, $0E, $27, $18, $1A, $0E, $18, $2B, $1A, $0E, $21, $11, $30, $0E, $25, $1A ; CPU:$8459 PRG:8459 18 0E 27 18 1A 0E 18 2B 1A 0E 21 11 30 0E 25 1A .byte $0E, $0E, $36, $26, $0E, $0E, $18, $2B, $1A, $0E, $21, $11, $30, $0E, $21, $36 ; CPU:$8469 PRG:8469 0E 0E 36 26 0E 0E 18 2B 1A 0E 21 11 30 0E 21 36 .byte $26, $0E, $25, $13, $1A, $0E, $21, $25, $1A, $0E, $21, $13, $30, $0E, $21, $13 ; CPU:$8479 PRG:8479 26 0E 25 13 1A 0E 21 25 1A 0E 21 13 30 0E 21 13 .byte $1A, $0E, $21, $36, $27, $0E, $21, $01, $36, $0E, $21, $13, $30, $FF, $23, $37 ; CPU:$8489 PRG:8489 1A 0E 21 36 27 0E 21 01 36 0E 21 13 30 FF 23 37 .byte $28, $FF, $23, $37, $2A, $FF, $23, $37, $30, $FF, $23, $25, $20, $FF, $23, $25 ; CPU:$8499 PRG:8499 28 FF 23 37 2A FF 23 37 30 FF 23 25 20 FF 23 25 .byte $30, $FF, $2A, $17, $38, $FF, $37, $17, $30, $FF, $23, $13, $20, $0E, $14, $11 ; CPU:$84A9 PRG:84A9 30 FF 2A 17 38 FF 37 17 30 FF 23 13 20 0E 14 11 .byte $30, $0E, $21, $25, $38, $0E, $37, $27, $11, $0E, $10, $11, $30, $0E, $21, $25 ; CPU:$84B9 PRG:84B9 30 0E 21 25 38 0E 37 27 11 0E 10 11 30 0E 21 25 .byte $1A, $0E, $21, $36, $27, $0E, $21, $36, $26, $0E, $21, $13, $30, $0E, $21, $25 ; CPU:$84C9 PRG:84C9 1A 0E 21 36 27 0E 21 36 26 0E 21 13 30 0E 21 25 .byte $1A, $0E, $21, $36, $27, $0E, $21, $36, $26, $0E, $21, $03, $30, $FF, $21, $37 ; CPU:$84D9 PRG:84D9 1A 0E 21 36 27 0E 21 36 26 0E 21 03 30 FF 21 37 .byte $30, $FF, $28, $37, $26, $FF, $28, $21, $30, $FF, $25, $21, $30, $0E, $37, $27 ; CPU:$84E9 PRG:84E9 30 FF 28 37 26 FF 28 21 30 FF 25 21 30 0E 37 27 .byte $30, $0E, $37, $27, $1B, $0E, $37, $27, $17, $0E, $1B, $10, $30, $0E, $21, $36 ; CPU:$84F9 PRG:84F9 30 0E 37 27 1B 0E 37 27 17 0E 1B 10 30 0E 21 36 .byte $26, $0E, $21, $25, $2A, $0E, $21, $36, $27, $0E, $21, $13, $30, $FF, $23, $37 ; CPU:$8509 PRG:8509 26 0E 21 25 2A 0E 21 36 27 0E 21 13 30 FF 23 37 .byte $28, $FF, $23, $37, $2A, $FF, $37, $26, $30, $FF, $23, $25, $20, $0E, $0E, $31 ; CPU:$8519 PRG:8519 28 FF 23 37 2A FF 37 26 30 FF 23 25 20 0E 0E 31 .byte $2A, $28, $0E, $30, $2C, $1C, $0E, $36, $31, $17, $0E, $31, $15, $22, $0E, $31 ; CPU:$8529 PRG:8529 2A 28 0E 30 2C 1C 0E 36 31 17 0E 31 15 22 0E 31 .byte $2A, $28, $FF, $30, $25, $22, $FF, $2B, $28, $30, $FF, $31, $15, $22, $20, $00 ; CPU:$8539 PRG:8539 2A 28 FF 30 25 22 FF 2B 28 30 FF 31 15 22 20 00 .byte $44, $FF, $83, $91, $92, $93, $04, $FF, $83, $94, $95, $96, $02, $FF, $87, $97 ; CPU:$8549 PRG:8549 44 FF 83 91 92 93 04 FF 83 94 95 96 02 FF 87 97 .byte $98, $99, $9A, $9B, $9C, $9D, $02, $FF, $82, $9E, $9F, $09, $FF, $98, $A0, $A1 ; CPU:$8559 PRG:8559 98 99 9A 9B 9C 9D 02 FF 82 9E 9F 09 FF 98 A0 A1 .byte $A2, $A3, $A4, $A5, $A6, $A7, $A8, $A9, $AA, $AB, $AC, $AD, $AE, $AF, $B0, $B1 ; CPU:$8569 PRG:8569 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF B0 B1 .byte $B2, $B3, $B4, $B5, $B6, $B7, $08, $FF, $98, $B8, $B9, $BA, $BB, $BC, $BD, $BE ; CPU:$8579 PRG:8579 B2 B3 B4 B5 B6 B7 08 FF 98 B8 B9 BA BB BC BD BE .byte $BF, $C0, $C1, $C2, $C3, $C4, $FF, $C5, $C6, $C7, $C8, $C9, $CA, $CB, $CC, $CD ; CPU:$8589 PRG:8589 BF C0 C1 C2 C3 C4 FF C5 C6 C7 C8 C9 CA CB CC CD .byte $CE, $08, $FF, $98, $CF, $D0, $D1, $D2, $D3, $D4, $D5, $D6, $D7, $D8, $D9, $DA ; CPU:$8599 PRG:8599 CE 08 FF 98 CF D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA .byte $DB, $DC, $DD, $DE, $DF, $E0, $E1, $E2, $E3, $E4, $E5, $E6, $2F, $FF, $86, $54 ; CPU:$85A9 PRG:85A9 DB DC DD DE DF E0 E1 E2 E3 E4 E5 E6 2F FF 86 54 .byte $48, $45, $FF, $52, $49, $02, $44, $82, $4C, $45, $11, $FF, $8F, $4F, $46, $FF ; CPU:$85B9 PRG:85B9 48 45 FF 52 49 02 44 82 4C 45 11 FF 8F 4F 46 FF .byte $54, $48, $45, $FF, $4D, $41, $47, $49, $43, $FF, $42, $55, $02, $42, $82, $4C ; CPU:$85C9 PRG:85C9 54 48 45 FF 4D 41 47 49 43 FF 42 55 02 42 82 4C .byte $45, $0C, $FF, $81, $BC, $12, $BE, $81, $BF, $0C, $FF, $81, $BD, $05, $AF, $81 ; CPU:$85D9 PRG:85D9 45 0C FF 81 BC 12 BE 81 BF 0C FF 81 BD 05 AF 81 .byte $E4, $04, $AF, $89, $B7, $B8, $B9, $BA, $BB, $AF, $E4, $AF, $C0, $0C, $FF, $81 ; CPU:$85E9 PRG:85E9 E4 04 AF 89 B7 B8 B9 BA BB AF E4 AF C0 0C FF 81 .byte $BD, $02, $AF, $83, $E4, $AF, $E5, $03, $AF, $88, $E4, $AF, $B6, $B5, $B4, $B3 ; CPU:$85F9 PRG:85F9 BD 02 AF 83 E4 AF E5 03 AF 88 E4 AF B6 B5 B4 B3 .byte $B2, $B1, $02, $AF, $81, $C0, $0C, $FF, $81, $BD, $04, $AF, $81, $B0, $03, $AF ; CPU:$8609 PRG:8609 B2 B1 02 AF 81 C0 0C FF 81 BD 04 AF 81 B0 03 AF .byte $88, $E5, $AE, $AD, $AC, $AB, $AA, $A9, $A8, $02, $AF, $81, $C0, $0C, $FF, $86 ; CPU:$8619 PRG:8619 88 E5 AE AD AC AB AA A9 A8 02 AF 81 C0 0C FF 86 .byte $BD, $E3, $E2, $E1, $9E, $9F, $02, $AF, $81, $A0, $02, $AF, $89, $A1, $A2, $A3 ; CPU:$8629 PRG:8629 BD E3 E2 E1 9E 9F 02 AF 81 A0 02 AF 89 A1 A2 A3 .byte $A4, $A5, $A6, $A7, $AF, $C0, $0C, $FF, $94, $BD, $DE, $DF, $E0, $9D, $9C, $9B ; CPU:$8639 PRG:8639 A4 A5 A6 A7 AF C0 0C FF 94 BD DE DF E0 9D 9C 9B .byte $9A, $99, $AF, $E5, $98, $97, $96, $95, $94, $93, $92, $AF, $C0, $0C, $FF, $91 ; CPU:$8649 PRG:8649 9A 99 AF E5 98 97 96 95 94 93 92 AF C0 0C FF 91 .byte $BD, $DB, $DC, $DD, $88, $89, $8A, $8B, $AF, $E5, $AF, $8C, $8D, $8E, $8F, $90 ; CPU:$8659 PRG:8659 BD DB DC DD 88 89 8A 8B AF E5 AF 8C 8D 8E 8F 90 .byte $91, $02, $AF, $81, $C0, $0C, $FF, $91, $BD, $D8, $D9, $DA, $87, $86, $85, $84 ; CPU:$8669 PRG:8669 91 02 AF 81 C0 0C FF 91 BD D8 D9 DA 87 86 85 84 .byte $83, $82, $81, $80, $7F, $7E, $7D, $7C, $7B, $02, $AF, $81, $C0, $0C, $FF, $91 ; CPU:$8679 PRG:8679 83 82 81 80 7F 7E 7D 7C 7B 02 AF 81 C0 0C FF 91 .byte $BD, $D6, $D7, $6D, $6E, $6F, $70, $71, $72, $73, $74, $75, $76, $77, $78, $79 ; CPU:$8689 PRG:8689 BD D6 D7 6D 6E 6F 70 71 72 73 74 75 76 77 78 79 .byte $7A, $02, $AF, $81, $C0, $0C, $FF, $94, $BD, $6C, $6B, $6A, $69, $68, $67, $66 ; CPU:$8699 PRG:8699 7A 02 AF 81 C0 0C FF 94 BD 6C 6B 6A 69 68 67 66 .byte $65, $64, $63, $62, $61, $60, $5F, $5E, $5D, $5C, $5B, $C0, $0C, $FF, $94, $BD ; CPU:$86A9 PRG:86A9 65 64 63 62 61 60 5F 5E 5D 5C 5B C0 0C FF 94 BD .byte $49, $4A, $4B, $4C, $4D, $4E, $4F, $50, $51, $52, $53, $54, $55, $56, $57, $58 ; CPU:$86B9 PRG:86B9 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58 .byte $59, $5A, $C0, $0C, $FF, $94, $BD, $48, $47, $46, $45, $44, $43, $42, $41, $40 ; CPU:$86C9 PRG:86C9 59 5A C0 0C FF 94 BD 48 47 46 45 44 43 42 41 40 .byte $3F, $3E, $3D, $3C, $3B, $3A, $39, $38, $37, $C0, $0C, $FF, $94, $BD, $25, $26 ; CPU:$86D9 PRG:86D9 3F 3E 3D 3C 3B 3A 39 38 37 C0 0C FF 94 BD 25 26 .byte $27, $28, $29, $2A, $2B, $2C, $2D, $2E, $2F, $30, $31, $32, $33, $34, $35, $36 ; CPU:$86E9 PRG:86E9 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 .byte $C0, $0C, $FF, $94, $BD, $24, $23, $22, $21, $20, $1F, $1E, $1D, $1C, $1B, $1A ; CPU:$86F9 PRG:86F9 C0 0C FF 94 BD 24 23 22 21 20 1F 1E 1D 1C 1B 1A .byte $19, $18, $17, $16, $15, $14, $13, $C0, $0C, $FF, $94, $BD, $01, $02, $03, $04 ; CPU:$8709 PRG:8709 19 18 17 16 15 14 13 C0 0C FF 94 BD 01 02 03 04 .byte $05, $06, $07, $08, $09, $0A, $0B, $0C, $0D, $0E, $0F, $10, $11, $12, $C0, $0C ; CPU:$8719 PRG:8719 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 C0 0C .byte $FF, $81, $C3, $12, $C2, $81, $C1, $09, $FF, $82, $C4, $C5, $02, $C6, $96, $C5 ; CPU:$8729 PRG:8729 FF 81 C3 12 C2 81 C1 09 FF 82 C4 C5 02 C6 96 C5 .byte $FF, $C7, $C8, $C9, $FF, $CA, $CB, $C7, $CC, $FF, $CD, $CA, $C7, $C9, $CB, $CE ; CPU:$8739 PRG:8739 FF C7 C8 C9 FF CA CB C7 CC FF CD CA C7 C9 CB CE .byte $C9, $D5, $FF, $CF, $D0, $0B, $FF, $8E, $D1, $D2, $C9, $D3, $CA, $C7, $D1, $CB ; CPU:$8749 PRG:8749 C9 D5 FF CF D0 0B FF 8E D1 D2 C9 D3 CA C7 D1 CB .byte $FF, $D4, $CA, $D5, $C9, $D0, $10, $FF, $92, $C9, $CB, $CF, $C9, $D3, $CF, $D1 ; CPU:$8759 PRG:8759 FF D4 CA D5 C9 D0 10 FF 92 C9 CB CF C9 D3 CF D1 .byte $CA, $CB, $D2, $C9, $CB, $CF, $FF, $CA, $CB, $C7, $CC, $49, $FF, $81, $0F, $07 ; CPU:$8769 PRG:8769 CA CB D2 C9 CB CF FF CA CB C7 CC 49 FF 81 0F 07 .byte $FF, $07, $F0, $81, $FE, $04, $FF, $82, $0F, $CF, $03, $FF, $85, $BB, $AA, $EE ; CPU:$8779 PRG:8779 FF 07 F0 81 FE 04 FF 82 0F CF 03 FF 85 BB AA EE .byte $00, $C0, $03, $FF, $81, $BB, $02, $AA, $82, $00, $8C, $03, $FF, $85, $77, $D5 ; CPU:$8789 PRG:8789 00 C0 03 FF 81 BB 02 AA 82 00 8C 03 FF 85 77 D5 .byte $F5, $77, $08, $12, $FF, $FF, $FF, $FF, $24, $00, $8A, $1F, $20, $1F, $20, $1F ; CPU:$8799 PRG:8799 F5 77 08 12 FF FF FF FF 24 00 8A 1F 20 1F 20 1F .byte $20, $1F, $20, $1F, $20, $0C, $FF, $9D, $1F, $20, $1F, $20, $1F, $20, $1F, $20 ; CPU:$87A9 PRG:87A9 20 1F 20 1F 20 0C FF 9D 1F 20 1F 20 1F 20 1F 20 .byte $1F, $20, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $07, $0D, $21, $22 ; CPU:$87B9 PRG:87B9 1F 20 21 22 21 22 21 22 21 22 21 22 07 0D 21 22 .byte $21, $22, $21, $22, $21, $02, $22, $97, $16, $0F, $22, $21, $22, $21, $22, $21 ; CPU:$87C9 PRG:87C9 21 22 21 22 21 02 22 97 16 0F 22 21 22 21 22 21 .byte $22, $21, $22, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $08, $04, $09 ; CPU:$87D9 PRG:87D9 22 21 22 1F 20 1F 20 1F 20 1F 20 1F 20 08 04 09 .byte $00, $B7, $01, $10, $20, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $21, $22, $21 ; CPU:$87E9 PRG:87E9 00 B7 01 10 20 1F 20 1F 20 1F 20 1F 20 21 22 21 .byte $22, $21, $22, $21, $22, $21, $22, $09, $05, $FF, $4F, $50, $54, $49, $4F, $4E ; CPU:$87F9 PRG:87F9 22 21 22 21 22 21 22 09 05 FF 4F 50 54 49 4F 4E .byte $53, $FF, $02, $11, $22, $21, $22, $21, $22, $21, $22, $21, $22, $1F, $20, $1F ; CPU:$8809 PRG:8809 53 FF 02 11 22 21 22 21 22 21 22 21 22 1F 20 1F .byte $20, $1F, $20, $1F, $20, $1F, $20, $0A, $06, $09, $15, $9E, $03, $12, $20, $1F ; CPU:$8819 PRG:8819 20 1F 20 1F 20 1F 20 0A 06 09 15 9E 03 12 20 1F .byte $20, $1F, $20, $1F, $20, $1F, $20, $21, $22, $21, $22, $21, $22, $21, $22, $21 ; CPU:$8829 PRG:8829 20 1F 20 1F 20 1F 20 21 22 21 22 21 22 21 22 21 .byte $22, $0B, $0C, $21, $22, $21, $22, $21, $22, $21, $02, $22, $90, $17, $13, $22 ; CPU:$8839 PRG:8839 22 0B 0C 21 22 21 22 21 22 21 02 22 90 17 13 22 .byte $21, $22, $21, $22, $21, $22, $21, $22, $1F, $20, $1F, $20, $18, $16, $1E, $93 ; CPU:$8849 PRG:8849 21 22 21 22 21 22 21 22 1F 20 1F 20 18 16 1E 93 .byte $1B, $1F, $20, $1F, $20, $21, $22, $21, $22, $19, $FF, $31, $FF, $50, $4C, $41 ; CPU:$8859 PRG:8859 1B 1F 20 1F 20 21 22 21 22 19 FF 31 FF 50 4C 41 .byte $59, $45, $52, $03, $FF, $94, $32, $FF, $50, $4C, $41, $59, $45, $52, $53, $FF ; CPU:$8869 PRG:8869 59 45 52 03 FF 94 32 FF 50 4C 41 59 45 52 53 FF .byte $1C, $21, $22, $21, $22, $1F, $20, $1F, $20, $1A, $16, $14, $AA, $1D, $1F, $20 ; CPU:$8879 PRG:8879 1C 21 22 21 22 1F 20 1F 20 1A 16 14 AA 1D 1F 20 .byte $1F, $20, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22 ; CPU:$8889 PRG:8889 1F 20 21 22 21 22 21 22 21 22 21 22 21 22 21 22 .byte $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22 ; CPU:$8899 PRG:8899 21 22 21 22 21 22 21 22 21 22 21 22 21 22 21 22 .byte $21, $22, $1F, $20, $1F, $20, $18, $16, $1E, $90, $1B, $1F, $20, $1F, $20, $21 ; CPU:$88A9 PRG:88A9 21 22 1F 20 1F 20 18 16 1E 90 1B 1F 20 1F 20 21 .byte $22, $21, $22, $19, $FF, $53, $54, $41, $47, $45, $03, $FF, $87, $31, $FF, $32 ; CPU:$88B9 PRG:88B9 22 21 22 19 FF 53 54 41 47 45 03 FF 87 31 FF 32 .byte $FF, $33, $FF, $34, $06, $FF, $8A, $1C, $21, $22, $21, $22, $1F, $20, $1F, $20 ; CPU:$88C9 PRG:88C9 FF 33 FF 34 06 FF 8A 1C 21 22 21 22 1F 20 1F 20 .byte $1A, $16, $14, $AA, $1D, $1F, $20, $1F, $20, $21, $22, $21, $22, $21, $22, $21 ; CPU:$88D9 PRG:88D9 1A 16 14 AA 1D 1F 20 1F 20 21 22 21 22 21 22 21 .byte $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21 ; CPU:$88E9 PRG:88E9 22 21 22 21 22 21 22 21 22 21 22 21 22 21 22 21 .byte $22, $21, $22, $21, $22, $21, $22, $21, $22, $1F, $20, $1F, $20, $18, $16, $1E ; CPU:$88F9 PRG:88F9 22 21 22 21 22 21 22 21 22 1F 20 1F 20 18 16 1E .byte $8F, $1B, $1F, $20, $1F, $20, $21, $22, $21, $22, $19, $FF, $45, $41, $53, $59 ; CPU:$8909 PRG:8909 8F 1B 1F 20 1F 20 21 22 21 22 19 FF 45 41 53 59 .byte $03, $FF, $84, $48, $41, $52, $44, $02, $FF, $92, $53, $54, $41, $43, $4B, $45 ; CPU:$8919 PRG:8919 03 FF 84 48 41 52 44 02 FF 92 53 54 41 43 4B 45 .byte $44, $FF, $1C, $21, $22, $21, $22, $1F, $20, $1F, $20, $1A, $16, $14, $AA, $1D ; CPU:$8929 PRG:8929 44 FF 1C 21 22 21 22 1F 20 1F 20 1A 16 14 AA 1D .byte $1F, $20, $1F, $20, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22 ; CPU:$8939 PRG:8939 1F 20 1F 20 21 22 21 22 21 22 21 22 21 22 21 22 .byte $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22 ; CPU:$8949 PRG:8949 21 22 21 22 21 22 21 22 21 22 21 22 21 22 21 22 .byte $21, $22, $21, $22, $1F, $20, $1F, $20, $18, $16, $1E, $90, $1B, $1F, $20, $1F ; CPU:$8959 PRG:8959 21 22 21 22 1F 20 1F 20 18 16 1E 90 1B 1F 20 1F .byte $20, $21, $22, $21, $22, $19, $FF, $4C, $45, $56, $45, $4C, $03, $FF, $89, $31 ; CPU:$8969 PRG:8969 20 21 22 21 22 19 FF 4C 45 56 45 4C 03 FF 89 31 .byte $FF, $32, $FF, $33, $FF, $34, $FF, $35, $04, $FF, $8A, $1C, $21, $22, $21, $22 ; CPU:$8979 PRG:8979 FF 32 FF 33 FF 34 FF 35 04 FF 8A 1C 21 22 21 22 .byte $1F, $20, $1F, $20, $1A, $16, $14, $AA, $1D, $1F, $20, $1F, $20, $21, $22, $21 ; CPU:$8989 PRG:8989 1F 20 1F 20 1A 16 14 AA 1D 1F 20 1F 20 21 22 21 .byte $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21 ; CPU:$8999 PRG:8999 22 21 22 21 22 21 22 21 22 21 22 21 22 21 22 21 .byte $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $1F, $20, $1F ; CPU:$89A9 PRG:89A9 22 21 22 21 22 21 22 21 22 21 22 21 22 1F 20 1F .byte $20, $18, $16, $1E, $90, $1B, $1F, $20, $1F, $20, $21, $22, $21, $22, $19, $FF ; CPU:$89B9 PRG:89B9 20 18 16 1E 90 1B 1F 20 1F 20 21 22 21 22 19 FF .byte $54, $55, $4E, $45, $31, $03, $FF, $85, $54, $55, $4E, $45, $32, $03, $FF, $8F ; CPU:$89C9 PRG:89C9 54 55 4E 45 31 03 FF 85 54 55 4E 45 32 03 FF 8F .byte $54, $55, $4E, $45, $33, $1C, $21, $22, $21, $22, $1F, $20, $1F, $20, $1A, $16 ; CPU:$89D9 PRG:89D9 54 55 4E 45 33 1C 21 22 21 22 1F 20 1F 20 1A 16 .byte $14, $B2, $1D, $1F, $20, $1F, $20, $21, $22, $21, $22, $21, $22, $21, $22, $21 ; CPU:$89E9 PRG:89E9 14 B2 1D 1F 20 1F 20 21 22 21 22 21 22 21 22 21 .byte $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21 ; CPU:$89F9 PRG:89F9 22 21 22 21 22 21 22 21 22 21 22 21 22 21 22 21 .byte $22, $1F, $20, $21, $22, $21, $22, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $1F ; CPU:$8A09 PRG:8A09 22 1F 20 21 22 21 22 1F 20 1F 20 1F 20 1F 20 1F .byte $20, $1F, $20, $18, $06, $1E, $9A, $1B, $1F, $20, $1F, $20, $1F, $20, $1F, $20 ; CPU:$8A19 PRG:8A19 20 1F 20 18 06 1E 9A 1B 1F 20 1F 20 1F 20 1F 20 .byte $1F, $20, $1F, $20, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22 ; CPU:$8A29 PRG:8A29 1F 20 1F 20 21 22 21 22 21 22 21 22 21 22 21 22 .byte $19, $06, $FF, $9A, $1C, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21 ; CPU:$8A39 PRG:8A39 19 06 FF 9A 1C 21 22 21 22 21 22 21 22 21 22 21 .byte $22, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $1A, $06, $14 ; CPU:$8A49 PRG:8A49 22 1F 20 1F 20 1F 20 1F 20 1F 20 1F 20 1A 06 14 .byte $AD, $1D, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $21, $22 ; CPU:$8A59 PRG:8A59 AD 1D 1F 20 1F 20 1F 20 1F 20 1F 20 1F 20 21 22 .byte $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22 ; CPU:$8A69 PRG:8A69 21 22 21 22 21 22 21 22 21 22 21 22 21 22 21 22 .byte $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $40, $FF ; CPU:$8A79 PRG:8A79 21 22 21 22 21 22 21 22 21 22 21 22 21 22 40 FF .byte $FF, $FF, $FF, $24, $00, $8A, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $1F, $20 ; CPU:$8A89 PRG:8A89 FF FF FF 24 00 8A 1F 20 1F 20 1F 20 1F 20 1F 20 .byte $02, $1F, $89, $20, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $02, $1F, $B4, $20 ; CPU:$8A99 PRG:8A99 02 1F 89 20 1F 20 1F 20 1F 20 1F 20 02 1F B4 20 .byte $1F, $20, $1F, $20, $1F, $20, $1F, $20, $21, $22, $21, $22, $21, $22, $21, $22 ; CPU:$8AA9 PRG:8AA9 1F 20 1F 20 1F 20 1F 20 21 22 21 22 21 22 21 22 .byte $21, $24, $25, $21, $22, $21, $22, $21, $22, $21, $22, $21, $2E, $2F, $21, $22 ; CPU:$8AB9 PRG:8AB9 21 24 25 21 22 21 22 21 22 21 22 21 2E 2F 21 22 .byte $21, $22, $21, $22, $21, $22, $21, $22, $1F, $20, $1F, $20, $1F, $20, $1F, $20 ; CPU:$8AC9 PRG:8AC9 21 22 21 22 21 22 21 22 1F 20 1F 20 1F 20 1F 20 .byte $1F, $26, $27, $09, $0E, $B7, $3A, $3B, $1F, $20, $1F, $20, $1F, $20, $1F, $20 ; CPU:$8AD9 PRG:8AD9 1F 26 27 09 0E B7 3A 3B 1F 20 1F 20 1F 20 1F 20 .byte $1F, $20, $21, $22, $21, $22, $21, $22, $21, $22, $21, $28, $29, $FF, $54, $4F ; CPU:$8AE9 PRG:8AE9 1F 20 21 22 21 22 21 22 21 22 21 28 29 FF 54 4F .byte $50, $FF, $54, $45, $4E, $FF, $3C, $3D, $21, $22, $21, $22, $21, $22, $21, $22 ; CPU:$8AF9 PRG:8AF9 50 FF 54 45 4E FF 3C 3D 21 22 21 22 21 22 21 22 .byte $21, $22, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $1F, $2A, $2B, $09, $23, $97 ; CPU:$8B09 PRG:8B09 21 22 1F 20 1F 20 1F 20 1F 20 1F 2A 2B 09 23 97 .byte $5B, $5C, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $1F, $20, $21, $22, $21, $22 ; CPU:$8B19 PRG:8B19 5B 5C 1F 20 1F 20 1F 20 1F 20 1F 20 21 22 21 22 .byte $21, $22, $21, $22, $21, $2C, $2D, $09, $FF, $90, $5D, $5E, $21, $22, $21, $22 ; CPU:$8B29 PRG:8B29 21 22 21 22 21 2C 2D 09 FF 90 5D 5E 21 22 21 22 .byte $21, $22, $21, $22, $21, $22, $1F, $20, $64, $65, $05, $63, $81, $6A, $0B, $FF ; CPU:$8B39 PRG:8B39 21 22 21 22 21 22 1F 20 64 65 05 63 81 6A 0B FF .byte $81, $69, $06, $63, $87, $67, $68, $1F, $20, $21, $22, $66, $03, $FF, $84, $4E ; CPU:$8B49 PRG:8B49 81 69 06 63 87 67 68 1F 20 21 22 66 03 FF 84 4E .byte $41, $4D, $45, $02, $FF, $82, $42, $55, $02, $42, $82, $4C, $45, $04, $FF, $85 ; CPU:$8B59 PRG:8B59 41 4D 45 02 FF 82 42 55 02 42 82 4C 45 04 FF 85 .byte $53, $43, $4F, $52, $45, $02, $FF, $86, $62, $21, $22, $1F, $20, $5F, $1A, $FF ; CPU:$8B69 PRG:8B69 53 43 4F 52 45 02 FF 86 62 21 22 1F 20 5F 1A FF .byte $8D, $61, $1F, $20, $21, $22, $60, $FF, $31, $6B, $FF, $59, $45, $48, $13, $FF ; CPU:$8B79 PRG:8B79 8D 61 1F 20 21 22 60 FF 31 6B FF 59 45 48 13 FF .byte $86, $62, $21, $22, $1F, $20, $5F, $1A, $FF, $8D, $61, $1F, $20, $21, $22, $60 ; CPU:$8B89 PRG:8B89 86 62 21 22 1F 20 5F 1A FF 8D 61 1F 20 21 22 60 .byte $FF, $32, $6B, $FF, $43, $48, $45, $13, $FF, $86, $62, $21, $22, $1F, $20, $5F ; CPU:$8B99 PRG:8B99 FF 32 6B FF 43 48 45 13 FF 86 62 21 22 1F 20 5F .byte $1A, $FF, $8D, $61, $1F, $20, $21, $22, $60, $FF, $33, $6B, $FF, $54, $52, $49 ; CPU:$8BA9 PRG:8BA9 1A FF 8D 61 1F 20 21 22 60 FF 33 6B FF 54 52 49 .byte $13, $FF, $86, $62, $21, $22, $1F, $20, $5F, $1A, $FF, $8D, $61, $1F, $20, $21 ; CPU:$8BB9 PRG:8BB9 13 FF 86 62 21 22 1F 20 5F 1A FF 8D 61 1F 20 21 .byte $22, $60, $FF, $34, $6B, $FF, $48, $6B, $59, $13, $FF, $86, $62, $21, $22, $1F ; CPU:$8BC9 PRG:8BC9 22 60 FF 34 6B FF 48 6B 59 13 FF 86 62 21 22 1F .byte $20, $5F, $1A, $FF, $8D, $61, $1F, $20, $21, $22, $60, $FF, $35, $6B, $FF, $59 ; CPU:$8BD9 PRG:8BD9 20 5F 1A FF 8D 61 1F 20 21 22 60 FF 35 6B FF 59 .byte $41, $4E, $13, $FF, $86, $62, $21, $22, $1F, $20, $5F, $1A, $FF, $8D, $61, $1F ; CPU:$8BE9 PRG:8BE9 41 4E 13 FF 86 62 21 22 1F 20 5F 1A FF 8D 61 1F .byte $20, $21, $22, $60, $FF, $36, $6B, $FF, $4A, $41, $43, $13, $FF, $86, $62, $21 ; CPU:$8BF9 PRG:8BF9 20 21 22 60 FF 36 6B FF 4A 41 43 13 FF 86 62 21 .byte $22, $1F, $20, $5F, $1A, $FF, $8D, $61, $1F, $20, $21, $22, $60, $FF, $37, $6B ; CPU:$8C09 PRG:8C09 22 1F 20 5F 1A FF 8D 61 1F 20 21 22 60 FF 37 6B .byte $FF, $44, $6B, $48, $13, $FF, $86, $62, $21, $22, $1F, $20, $5F, $1A, $FF, $8D ; CPU:$8C19 PRG:8C19 FF 44 6B 48 13 FF 86 62 21 22 1F 20 5F 1A FF 8D .byte $61, $1F, $20, $21, $22, $60, $FF, $38, $6B, $FF, $54, $49, $4E, $13, $FF, $86 ; CPU:$8C29 PRG:8C29 61 1F 20 21 22 60 FF 38 6B FF 54 49 4E 13 FF 86 .byte $62, $21, $22, $1F, $20, $5F, $1A, $FF, $8D, $61, $1F, $20, $21, $22, $60, $FF ; CPU:$8C39 PRG:8C39 62 21 22 1F 20 5F 1A FF 8D 61 1F 20 21 22 60 FF .byte $39, $6B, $FF, $42, $41, $42, $13, $FF, $86, $62, $21, $22, $1F, $20, $5F, $1A ; CPU:$8C49 PRG:8C49 39 6B FF 42 41 42 13 FF 86 62 21 22 1F 20 5F 1A .byte $FF, $8D, $61, $1F, $20, $21, $22, $60, $FF, $31, $30, $6B, $4B, $41, $54, $13 ; CPU:$8C59 PRG:8C59 FF 8D 61 1F 20 21 22 60 FF 31 30 6B 4B 41 54 13 .byte $FF, $87, $62, $21, $22, $1F, $20, $6E, $6C, $19, $6D, $A3, $6F, $1F, $20, $21 ; CPU:$8C69 PRG:8C69 FF 87 62 21 22 1F 20 6E 6C 19 6D A3 6F 1F 20 21 .byte $22, $60, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22 ; CPU:$8C79 PRG:8C79 22 60 21 22 21 22 21 22 21 22 21 22 21 22 21 22 .byte $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $21, $22, $62, $21, $22, $11 ; CPU:$8C89 PRG:8C89 21 22 21 22 21 22 21 22 21 22 21 22 62 21 22 11 .byte $FF, $06, $5A, $02, $FF, $06, $5A, $02, $FF, $06, $5A, $02, $FF, $06, $5A, $02 ; CPU:$8C99 PRG:8C99 FF 06 5A 02 FF 06 5A 02 FF 06 5A 02 FF 06 5A 02 .byte $FF, $06, $5A, $09, $FF, $FF, $FF, $FF, $20, $00, $46, $FF, $83, $50, $4C, $41 ; CPU:$8CA9 PRG:8CA9 FF 06 5A 09 FF FF FF FF 20 00 46 FF 83 50 4C 41 .byte $02, $4E, $85, $45, $44, $FF, $42, $59, $16, $FF, $8B, $54, $52, $49, $43, $49 ; CPU:$8CB9 PRG:8CB9 02 4E 85 45 44 FF 42 59 16 FF 8B 54 52 49 43 49 .byte $41, $FF, $43, $48, $45, $4E, $35, $FF, $86, $50, $52, $4F, $47, $52, $41, $02 ; CPU:$8CC9 PRG:8CC9 41 FF 43 48 45 4E 35 FF 86 50 52 4F 47 52 41 02 .byte $4D, $85, $45, $44, $FF, $42, $59, $13, $FF, $8B, $53, $49, $4C, $56, $45, $52 ; CPU:$8CD9 PRG:8CD9 4D 85 45 44 FF 42 59 13 FF 8B 53 49 4C 56 45 52 .byte $53, $FF, $4C, $49, $4E, $35, $FF, $8A, $47, $52, $41, $50, $48, $49, $43, $FF ; CPU:$8CE9 PRG:8CE9 53 FF 4C 49 4E 35 FF 8A 47 52 41 50 48 49 43 FF .byte $42, $59, $16, $FF, $8A, $4B, $41, $54, $48, $59, $FF, $43, $48, $45, $4E, $36 ; CPU:$8CF9 PRG:8CF9 42 59 16 FF 8A 4B 41 54 48 59 FF 43 48 45 4E 36 .byte $FF, $90, $41, $52, $54, $FF, $44, $49, $52, $45, $43, $54, $49, $4F, $4E, $FF ; CPU:$8D09 PRG:8D09 FF 90 41 52 54 FF 44 49 52 45 43 54 49 4F 4E FF .byte $42, $59, $10, $FF, $8A, $50, $4F, $4E, $59, $FF, $43, $48, $49, $4F, $55, $36 ; CPU:$8D19 PRG:8D19 42 59 10 FF 8A 50 4F 4E 59 FF 43 48 49 4F 55 36 .byte $FF, $88, $4D, $55, $53, $49, $43, $FF, $42, $59, $18, $FF, $82, $4B, $4F, $02 ; CPU:$8D29 PRG:8D29 FF 88 4D 55 53 49 43 FF 42 59 18 FF 82 4B 4F 02 .byte $53, $88, $45, $4C, $FF, $48, $55, $41, $4E, $47, $34, $FF, $89, $54, $48, $41 ; CPU:$8D39 PRG:8D39 53 88 45 4C FF 48 55 41 4E 47 34 FF 89 54 48 41 .byte $4E, $4B, $53, $FF, $54, $4F, $17, $FF, $88, $4A, $41, $43, $4B, $FF, $59, $45 ; CPU:$8D49 PRG:8D49 4E 4B 53 FF 54 4F 17 FF 88 4A 41 43 4B FF 59 45 .byte $48, $38, $FF, $85, $42, $47, $4D, $40, $8E, $1B, $FF, $92, $57, $41, $56, $49 ; CPU:$8D59 PRG:8D59 48 38 FF 85 42 47 4D 40 8E 1B FF 92 57 41 56 49 .byte $4E, $47, $FF, $55, $50, $FF, $41, $4E, $44, $FF, $44, $4F, $57, $4E, $2E, $FF ; CPU:$8D69 PRG:8D69 4E 47 FF 55 50 FF 41 4E 44 FF 44 4F 57 4E 2E FF .byte $85, $42, $47, $4D, $40, $8F, $1B, $FF, $87, $42, $4C, $4F, $57, $FF, $42, $55 ; CPU:$8D79 PRG:8D79 85 42 47 4D 40 8F 1B FF 87 42 4C 4F 57 FF 42 55 .byte $02, $42, $83, $4C, $45, $53, $34, $FF, $85, $42, $47, $4D, $40, $7C, $1B, $FF ; CPU:$8D89 PRG:8D89 02 42 83 4C 45 53 34 FF 85 42 47 4D 40 7C 1B FF .byte $90, $57, $4F, $4E, $44, $45, $52, $46, $55, $4C, $FF, $53, $45, $41, $42, $45 ; CPU:$8D99 PRG:8D99 90 57 4F 4E 44 45 52 46 55 4C FF 53 45 41 42 45 .byte $44, $77, $FF, $13, $FF, $FF, $FF, $FF, $24, $00, $66, $FF, $81, $FB, $06, $FA ; CPU:$8DA9 PRG:8DA9 44 77 FF 13 FF FF FF FF 24 00 66 FF 81 FB 06 FA .byte $83, $01, $02, $03, $03, $FA, $84, $04, $05, $06, $07, $02, $FA, $81, $F9, $0C ; CPU:$8DB9 PRG:8DB9 83 01 02 03 03 FA 84 04 05 06 07 02 FA 81 F9 0C .byte $FF, $81, $FC, $06, $11, $83, $08, $09, $0A, $03, $11, $84, $0B, $0C, $0D, $0E ; CPU:$8DC9 PRG:8DC9 FF 81 FC 06 11 83 08 09 0A 03 11 84 0B 0C 0D 0E .byte $02, $11, $81, $FD, $0C, $FF, $84, $FC, $11, $0F, $10, $02, $11, $84, $12, $13 ; CPU:$8DD9 PRG:8DD9 02 11 81 FD 0C FF 84 FC 11 0F 10 02 11 84 12 13 .byte $14, $15, $03, $11, $84, $17, $18, $19, $1A, $02, $11, $81, $FD, $0C, $FF, $8C ; CPU:$8DE9 PRG:8DE9 14 15 03 11 84 17 18 19 1A 02 11 81 FD 0C FF 8C .byte $FC, $11, $1B, $1C, $1D, $1E, $1F, $20, $21, $22, $23, $24, $02, $11, $82, $26 ; CPU:$8DF9 PRG:8DF9 FC 11 1B 1C 1D 1E 1F 20 21 22 23 24 02 11 82 26 .byte $27, $03, $11, $81, $FD, $0C, $FF, $90, $FC, $28, $29, $2A, $2B, $2C, $2D, $2E ; CPU:$8E09 PRG:8E09 27 03 11 81 FD 0C FF 90 FC 28 29 2A 2B 2C 2D 2E .byte $2F, $30, $31, $32, $33, $11, $35, $36, $03, $11, $81, $FD, $0C, $FF, $94, $FC ; CPU:$8E19 PRG:8E19 2F 30 31 32 33 11 35 36 03 11 81 FD 0C FF 94 FC .byte $37, $38, $39, $3A, $3B, $3C, $3D, $3E, $3F, $40, $41, $42, $43, $44, $45, $46 ; CPU:$8E29 PRG:8E29 37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 43 44 45 46 .byte $47, $48, $49, $0C, $FF, $94, $FC, $4B, $4C, $4D, $4E, $4F, $50, $51, $52, $53 ; CPU:$8E39 PRG:8E39 47 48 49 0C FF 94 FC 4B 4C 4D 4E 4F 50 51 52 53 .byte $54, $55, $56, $57, $58, $59, $5A, $5B, $5C, $5D, $0C, $FF, $94, $5E, $5F, $60 ; CPU:$8E49 PRG:8E49 54 55 56 57 58 59 5A 5B 5C 5D 0C FF 94 5E 5F 60 .byte $61, $62, $63, $64, $65, $66, $67, $68, $69, $6A, $6B, $6C, $6D, $6E, $6F, $70 ; CPU:$8E59 PRG:8E59 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 .byte $71, $0C, $FF, $94, $72, $73, $74, $75, $76, $77, $78, $79, $7A, $7B, $7C, $7D ; CPU:$8E69 PRG:8E69 71 0C FF 94 72 73 74 75 76 77 78 79 7A 7B 7C 7D .byte $7E, $7F, $80, $81, $82, $83, $84, $85, $0C, $FF, $89, $86, $87, $88, $89, $8A ; CPU:$8E79 PRG:8E79 7E 7F 80 81 82 83 84 85 0C FF 89 86 87 88 89 8A .byte $8B, $8C, $8D, $8E, $04, $8F, $87, $93, $94, $95, $96, $97, $98, $99, $0C, $FF ; CPU:$8E89 PRG:8E89 8B 8C 8D 8E 04 8F 87 93 94 95 96 97 98 99 0C FF .byte $89, $9A, $9B, $9C, $9D, $9E, $9F, $A0, $A1, $A2, $03, $8F, $88, $A6, $A7, $A8 ; CPU:$8E99 PRG:8E99 89 9A 9B 9C 9D 9E 9F A0 A1 A2 03 8F 88 A6 A7 A8 .byte $A9, $EF, $F0, $F1, $F8, $0C, $FF, $89, $AA, $AB, $AC, $AD, $AE, $AF, $B0, $B1 ; CPU:$8EA9 PRG:8EA9 A9 EF F0 F1 F8 0C FF 89 AA AB AC AD AE AF B0 B1 .byte $B2, $02, $8F, $83, $B5, $B6, $B7, $05, $16, $81, $F8, $0C, $FF, $8D, $B8, $B9 ; CPU:$8EB9 PRG:8EB9 B2 02 8F 83 B5 B6 B7 05 16 81 F8 0C FF 8D B8 B9 .byte $BA, $BB, $BC, $BD, $BE, $BF, $C0, $8F, $C2, $C3, $C4, $06, $16, $81, $F8, $0C ; CPU:$8EC9 PRG:8EC9 BA BB BC BD BE BF C0 8F C2 C3 C4 06 16 81 F8 0C .byte $FF, $8C, $C5, $C6, $C7, $C8, $C9, $CA, $CB, $CC, $CD, $CE, $CF, $D0, $07, $16 ; CPU:$8ED9 PRG:8ED9 FF 8C C5 C6 C7 C8 C9 CA CB CC CD CE CF D0 07 16 .byte $81, $F8, $0C, $FF, $8A, $D1, $D2, $D3, $D4, $D5, $D6, $D7, $D8, $F2, $F3, $09 ; CPU:$8EE9 PRG:8EE9 81 F8 0C FF 8A D1 D2 D3 D4 D5 D6 D7 D8 F2 F3 09 .byte $16, $81, $F8, $0C, $FF, $88, $D9, $DA, $DB, $DC, $DD, $DE, $DF, $E0, $0B, $16 ; CPU:$8EF9 PRG:8EF9 16 81 F8 0C FF 88 D9 DA DB DC DD DE DF E0 0B 16 .byte $81, $F8, $0C, $FF, $83, $E1, $E2, $E3, $10, $16, $81, $F8, $0C, $FF, $81, $F5 ; CPU:$8F09 PRG:8F09 81 F8 0C FF 83 E1 E2 E3 10 16 81 F8 0C FF 81 F5 .byte $12, $F6, $81, $F7, $77, $FF, $77, $FF, $3B, $FF, $81, $3F, $06, $FF, $83, $CF ; CPU:$8F19 PRG:8F19 12 F6 81 F7 77 FF 77 FF 3B FF 81 3F 06 FF 83 CF .byte $03, $0C, $05, $FF, $84, $F3, $A0, $00, $0F, $03, $FF, $86, $BF, $AF, $AB, $56 ; CPU:$8F29 PRG:8F29 03 0C 05 FF 84 F3 A0 00 0F 03 FF 86 BF AF AB 56 .byte $55, $DD, $02, $FF, $82, $7B, $5A, $03, $55, $81, $DD, $02, $FF, $81, $F7, $04 ; CPU:$8F39 PRG:8F39 55 DD 02 FF 82 7B 5A 03 55 81 DD 02 FF 81 F7 04 .byte $F5, $81, $FD, $11, $FF, $FF, $FF, $FF, $24, $00, $66, $FF, $81, $C5, $09, $C0 ; CPU:$8F49 PRG:8F49 F5 81 FD 11 FF FF FF FF 24 00 66 FF 81 C5 09 C0 .byte $82, $01, $02, $03, $C0, $82, $DB, $DC, $02, $C0, $81, $BF, $0C, $FF, $82, $C6 ; CPU:$8F59 PRG:8F59 82 01 02 03 C0 82 DB DC 02 C0 81 BF 0C FF 82 C6 .byte $F9, $06, $76, $85, $D1, $03, $04, $05, $06, $02, $76, $82, $DD, $DE, $02, $76 ; CPU:$8F69 PRG:8F69 F9 06 76 85 D1 03 04 05 06 02 76 82 DD DE 02 76 .byte $81, $BE, $0C, $FF, $83, $C6, $76, $F9, $04, $76, $8D, $C7, $07, $08, $09, $0A ; CPU:$8F79 PRG:8F79 81 BE 0C FF 83 C6 76 F9 04 76 8D C7 07 08 09 0A .byte $0B, $76, $D9, $DF, $E0, $DA, $76, $BE, $0C, $FF, $81, $C6, $06, $76, $8A, $F9 ; CPU:$8F89 PRG:8F89 0B 76 D9 DF E0 DA 76 BE 0C FF 81 C6 06 76 8A F9 .byte $0C, $0D, $0E, $0F, $10, $76, $E1, $E2, $E3, $02, $76, $81, $BE, $0C, $FF, $85 ; CPU:$8F99 PRG:8F99 0C 0D 0E 0F 10 76 E1 E2 E3 02 76 81 BE 0C FF 85 .byte $C6, $F9, $76, $16, $17, $04, $76, $8B, $11, $12, $13, $14, $15, $E4, $E5, $E6 ; CPU:$8FA9 PRG:8FA9 C6 F9 76 16 17 04 76 8B 11 12 13 14 15 E4 E5 E6 .byte $E7, $76, $BE, $0C, $FF, $81, $C6, $02, $76, $91, $18, $19, $76, $F9, $76, $28 ; CPU:$8FB9 PRG:8FB9 E7 76 BE 0C FF 81 C6 02 76 91 18 19 76 F9 76 28 .byte $29, $2A, $2B, $2C, $2D, $E8, $E9, $EA, $EB, $76, $BE, $0C, $FF, $81, $C6, $02 ; CPU:$8FC9 PRG:8FC9 29 2A 2B 2C 2D E8 E9 EA EB 76 BE 0C FF 81 C6 02 .byte $76, $83, $1A, $1B, $1C, $02, $76, $8C, $35, $36, $37, $38, $39, $3A, $EC, $ED ; CPU:$8FD9 PRG:8FD9 76 83 1A 1B 1C 02 76 8C 35 36 37 38 39 3A EC ED .byte $EE, $EF, $76, $BE, $0C, $FF, $87, $1D, $1E, $1F, $20, $21, $22, $23, $02, $76 ; CPU:$8FE9 PRG:8FE9 EE EF 76 BE 0C FF 87 1D 1E 1F 20 21 22 23 02 76 .byte $8B, $24, $25, $26, $27, $2E, $76, $F0, $F1, $F2, $76, $BE, $0C, $FF, $94, $2F ; CPU:$8FF9 PRG:8FF9 8B 24 25 26 27 2E 76 F0 F1 F2 76 BE 0C FF 94 2F .byte $30, $31, $32, $33, $34, $D8, $76, $F5, $3B, $3C, $3D, $3E, $3F, $40, $76, $F3 ; CPU:$9009 PRG:9009 30 31 32 33 34 D8 76 F5 3B 3C 3D 3E 3F 40 76 F3 .byte $F4, $76, $BE, $0C, $FF, $90, $41, $42, $43, $44, $45, $46, $D7, $F6, $47, $48 ; CPU:$9019 PRG:9019 F4 76 BE 0C FF 90 41 42 43 44 45 46 D7 F6 47 48 .byte $49, $4A, $4B, $4C, $4D, $4E, $03, $76, $81, $BE, $0C, $FF, $90, $D3, $4F, $50 ; CPU:$9029 PRG:9029 49 4A 4B 4C 4D 4E 03 76 81 BE 0C FF 90 D3 4F 50 .byte $51, $52, $53, $76, $54, $55, $56, $57, $58, $59, $5A, $5B, $5C, $03, $76, $81 ; CPU:$9039 PRG:9039 51 52 53 76 54 55 56 57 58 59 5A 5B 5C 03 76 81 .byte $BE, $0C, $FF, $91, $C6, $76, $5D, $5E, $5F, $60, $61, $62, $63, $64, $65, $66 ; CPU:$9049 PRG:9049 BE 0C FF 91 C6 76 5D 5E 5F 60 61 62 63 64 65 66 .byte $67, $68, $69, $6A, $6B, $02, $76, $81, $BE, $0C, $FF, $8B, $C6, $76, $6C, $6D ; CPU:$9059 PRG:9059 67 68 69 6A 6B 02 76 81 BE 0C FF 8B C6 76 6C 6D .byte $6E, $6F, $70, $71, $72, $73, $74, $03, $75, $86, $78, $79, $7A, $7B, $7C, $BE ; CPU:$9069 PRG:9069 6E 6F 70 71 72 73 74 03 75 86 78 79 7A 7B 7C BE .byte $0C, $FF, $94, $C6, $7D, $7E, $7F, $80, $81, $82, $83, $84, $85, $86, $87, $88 ; CPU:$9079 PRG:9079 0C FF 94 C6 7D 7E 7F 80 81 82 83 84 85 86 87 88 .byte $89, $8A, $8B, $8C, $8D, $8E, $BE, $0C, $FF, $94, $C6, $8F, $90, $91, $92, $93 ; CPU:$9089 PRG:9089 89 8A 8B 8C 8D 8E BE 0C FF 94 C6 8F 90 91 92 93 .byte $94, $95, $96, $97, $98, $99, $9A, $9B, $9C, $9D, $9E, $75, $A0, $A1, $0C, $FF ; CPU:$9099 PRG:9099 94 95 96 97 98 99 9A 9B 9C 9D 9E 75 A0 A1 0C FF .byte $94, $C6, $A2, $A3, $A4, $A5, $A6, $A7, $A8, $A9, $AA, $AB, $AC, $AD, $AE, $AF ; CPU:$90A9 PRG:90A9 94 C6 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF .byte $B0, $75, $B3, $B4, $B2, $0C, $FF, $8A, $F7, $B5, $B6, $B7, $B8, $B9, $BA, $BB ; CPU:$90B9 PRG:90B9 B0 75 B3 B4 B2 0C FF 8A F7 B5 B6 B7 B8 B9 BA BB .byte $BC, $BD, $03, $75, $87, $C1, $C2, $C3, $C4, $B5, $B6, $9F, $0C, $FF, $8A, $D2 ; CPU:$90C9 PRG:90C9 BC BD 03 75 87 C1 C2 C3 C4 B5 B6 9F 0C FF 8A D2 .byte $C8, $C9, $CA, $CB, $CC, $CD, $CE, $CF, $D0, $03, $77, $87, $D4, $D5, $D6, $F8 ; CPU:$90D9 PRG:90D9 C8 C9 CA CB CC CD CE CF D0 03 77 87 D4 D5 D6 F8 .byte $C8, $C9, $B1, $77, $FF, $77, $FF, $3C, $FF, $81, $CF, $05, $FF, $84, $BF, $33 ; CPU:$90E9 PRG:90E9 C8 C9 B1 77 FF 77 FF 3C FF 81 CF 05 FF 84 BF 33 .byte $00, $AA, $04, $FF, $84, $AA, $23, $00, $AA, $04, $FF, $84, $AA, $A7, $52, $DC ; CPU:$90F9 PRG:90F9 00 AA 04 FF 84 AA 23 00 AA 04 FF 84 AA A7 52 DC .byte $04, $FF, $84, $FE, $F7, $55, $D5, $1A, $FF, $FF, $FF, $FF, $24, $00, $77, $FF ; CPU:$9109 PRG:9109 04 FF 84 FE F7 55 D5 1A FF FF FF FF 24 00 77 FF .byte $0F, $FF, $81, $D9, $09, $DA, $82, $02, $03, $06, $DA, $81, $DB, $0D, $FF, $81 ; CPU:$9119 PRG:9119 0F FF 81 D9 09 DA 82 02 03 06 DA 81 DB 0D FF 81 .byte $DD, $08, $01, $85, $C5, $04, $05, $01, $D8, $04, $01, $81, $DC, $0D, $FF, $81 ; CPU:$9129 PRG:9129 DD 08 01 85 C5 04 05 01 D8 04 01 81 DC 0D FF 81 .byte $DD, $08, $01, $84, $06, $07, $08, $09, $05, $01, $81, $DC, $0D, $FF, $81, $DD ; CPU:$9139 PRG:9139 DD 08 01 84 06 07 08 09 05 01 81 DC 0D FF 81 DD .byte $08, $01, $84, $0D, $0C, $0B, $0A, $05, $01, $81, $DC, $0D, $FF, $81, $DD, $08 ; CPU:$9149 PRG:9149 08 01 84 0D 0C 0B 0A 05 01 81 DC 0D FF 81 DD 08 .byte $01, $84, $0E, $0F, $10, $11, $02, $01, $84, $86, $87, $88, $89, $0D, $FF, $81 ; CPU:$9159 PRG:9159 01 84 0E 0F 10 11 02 01 84 86 87 88 89 0D FF 81 .byte $DD, $04, $01, $81, $D8, $02, $01, $85, $16, $15, $14, $13, $12, $02, $01, $84 ; CPU:$9169 PRG:9169 DD 04 01 81 D8 02 01 85 16 15 14 13 12 02 01 84 .byte $8A, $8B, $8C, $8D, $0D, $FF, $81, $DD, $05, $01, $8D, $D8, $23, $17, $18, $19 ; CPU:$9179 PRG:9179 8A 8B 8C 8D 0D FF 81 DD 05 01 8D D8 23 17 18 19 .byte $1A, $1B, $1C, $01, $8E, $8F, $90, $91, $0D, $FF, $83, $DD, $01, $D8, $03, $01 ; CPU:$9189 PRG:9189 1A 1B 1C 01 8E 8F 90 91 0D FF 83 DD 01 D8 03 01 .byte $88, $D8, $24, $22, $21, $20, $1F, $1E, $1D, $02, $01, $83, $92, $93, $DC, $0D ; CPU:$9199 PRG:9199 88 D8 24 22 21 20 1F 1E 1D 02 01 83 92 93 DC 0D .byte $FF, $83, $DD, $01, $D8, $02, $01, $8E, $37, $25, $26, $27, $28, $29, $2A, $2B ; CPU:$91A9 PRG:91A9 FF 83 DD 01 D8 02 01 8E 37 25 26 27 28 29 2A 2B .byte $2C, $D8, $01, $95, $94, $DC, $0D, $FF, $93, $DD, $CC, $C9, $C8, $38, $36, $35 ; CPU:$91B9 PRG:91B9 2C D8 01 95 94 DC 0D FF 93 DD CC C9 C8 38 36 35 .byte $34, $33, $32, $31, $30, $2F, $2D, $2E, $96, $97, $98, $99, $0D, $FF, $93, $D1 ; CPU:$91C9 PRG:91C9 34 33 32 31 30 2F 2D 2E 96 97 98 99 0D FF 93 D1 .byte $CD, $CA, $C7, $39, $3A, $3B, $3C, $3D, $3E, $3F, $40, $41, $42, $43, $9D, $9C ; CPU:$91D9 PRG:91D9 CD CA C7 39 3A 3B 3C 3D 3E 3F 40 41 42 43 9D 9C .byte $9B, $9A, $0D, $FF, $93, $D2, $CE, $CB, $C6, $4E, $4D, $4C, $4B, $4A, $49, $48 ; CPU:$91E9 PRG:91E9 9B 9A 0D FF 93 D2 CE CB C6 4E 4D 4C 4B 4A 49 48 .byte $47, $46, $45, $44, $5B, $5C, $9E, $9F, $0D, $FF, $93, $D3, $D0, $A6, $AD, $4F ; CPU:$91F9 PRG:91F9 47 46 45 44 5B 5C 9E 9F 0D FF 93 D3 D0 A6 AD 4F .byte $50, $51, $52, $7D, $54, $55, $56, $57, $58, $59, $5A, $5D, $AE, $AF, $0D, $FF ; CPU:$9209 PRG:9209 50 51 52 7D 54 55 56 57 58 59 5A 5D AE AF 0D FF .byte $93, $D4, $A8, $A4, $A5, $6C, $6B, $6A, $69, $68, $67, $66, $65, $64, $63, $62 ; CPU:$9219 PRG:9219 93 D4 A8 A4 A5 6C 6B 6A 69 68 67 66 65 64 63 62 .byte $5F, $5E, $B0, $B1, $0D, $FF, $93, $D5, $A9, $A3, $A7, $6D, $6E, $6F, $70, $71 ; CPU:$9229 PRG:9229 5F 5E B0 B1 0D FF 93 D5 A9 A3 A7 6D 6E 6F 70 71 .byte $72, $73, $74, $75, $76, $77, $60, $61, $C1, $C2, $0D, $FF, $93, $D6, $AA, $AB ; CPU:$9239 PRG:9239 72 73 74 75 76 77 60 61 C1 C2 0D FF 93 D6 AA AB .byte $A0, $78, $79, $7A, $7B, $7C, $85, $7E, $7F, $80, $81, $82, $83, $84, $C0, $C3 ; CPU:$9249 PRG:9249 A0 78 79 7A 7B 7C 85 7E 7F 80 81 82 83 84 C0 C3 .byte $0D, $FF, $93, $CF, $AC, $D7, $A1, $B2, $B3, $B4, $B5, $B6, $B7, $B8, $B9, $BA ; CPU:$9259 PRG:9259 0D FF 93 CF AC D7 A1 B2 B3 B4 B5 B6 B7 B8 B9 BA .byte $BB, $BC, $BD, $BE, $BF, $C4, $77, $FF, $77, $FF, $4E, $FF, $82, $BB, $FE, $03 ; CPU:$9269 PRG:9269 BB BC BD BE BF C4 77 FF 77 FF 4E FF 82 BB FE 03 .byte $FF, $85, $7F, $CC, $FF, $8B, $EF, $02, $FF, $85, $7F, $55, $0F, $FF, $00, $03 ; CPU:$9279 PRG:9279 FF 85 7F CC FF 8B EF 02 FF 85 7F 55 0F FF 00 03 .byte $FF, $82, $F7, $F5, $15, $FF, $FF, $FF, $FF, $24, $00, $77, $FF, $0F, $FF, $81 ; CPU:$9289 PRG:9289 FF 82 F7 F5 15 FF FF FF FF 24 00 77 FF 0F FF 81 .byte $E0, $08, $E1, $83, $84, $85, $9B, $04, $E1, $83, $C1, $D5, $D6, $0D, $FF, $86 ; CPU:$9299 PRG:9299 E0 08 E1 83 84 85 9B 04 E1 83 C1 D5 D6 0D FF 86 .byte $E2, $DE, $17, $36, $37, $E8, $02, $DE, $86, $6C, $83, $86, $9A, $9C, $AE, $02 ; CPU:$92A9 PRG:92A9 E2 DE 17 36 37 E8 02 DE 86 6C 83 86 9A 9C AE 02 .byte $DE, $83, $C2, $D4, $D7, $0D, $FF, $8E, $E2, $DE, $18, $35, $38, $51, $DE, $E8 ; CPU:$92B9 PRG:92B9 DE 83 C2 D4 D7 0D FF 8E E2 DE 18 35 38 51 DE E8 .byte $6D, $82, $87, $99, $9D, $E8, $02, $DE, $83, $C3, $D3, $D8, $0D, $FF, $93, $E2 ; CPU:$92C9 PRG:92C9 6D 82 87 99 9D E8 02 DE 83 C3 D3 D8 0D FF 93 E2 .byte $DE, $19, $34, $39, $50, $DE, $E8, $DE, $81, $88, $98, $9E, $E8, $AF, $C0, $C4 ; CPU:$92D9 PRG:92D9 DE 19 34 39 50 DE E8 DE 81 88 98 9E E8 AF C0 C4 .byte $D2, $E3, $0D, $FF, $93, $E2, $16, $1A, $33, $3A, $E8, $52, $6B, $6E, $80, $89 ; CPU:$92E9 PRG:92E9 D2 E3 0D FF 93 E2 16 1A 33 3A E8 52 6B 6E 80 89 .byte $97, $9F, $E7, $B0, $BF, $C5, $D1, $E3, $0D, $FF, $8B, $01, $15, $1B, $32, $3B ; CPU:$92F9 PRG:92F9 97 9F E7 B0 BF C5 D1 E3 0D FF 8B 01 15 1B 32 3B .byte $E7, $53, $6A, $6F, $DE, $8A, $02, $DE, $86, $AD, $B1, $BE, $C6, $DE, $E3, $0D ; CPU:$9309 PRG:9309 E7 53 6A 6F DE 8A 02 DE 86 AD B1 BE C6 DE E3 0D .byte $FF, $8A, $02, $14, $1C, $31, $3C, $E8, $54, $69, $DE, $E8, $03, $DE, $86, $AC ; CPU:$9319 PRG:9319 FF 8A 02 14 1C 31 3C E8 54 69 DE E8 03 DE 86 AC .byte $B2, $BD, $C7, $D0, $D9, $0D, $FF, $8A, $E2, $13, $1D, $30, $3D, $4F, $55, $68 ; CPU:$9329 PRG:9329 B2 BD C7 D0 D9 0D FF 8A E2 13 1D 30 3D 4F 55 68 .byte $70, $E8, $03, $DE, $86, $AB, $B3, $BC, $C8, $CF, $DA, $0D, $FF, $8E, $E2, $12 ; CPU:$9339 PRG:9339 70 E8 03 DE 86 AB B3 BC C8 CF DA 0D FF 8E E2 12 .byte $1E, $2F, $3E, $4E, $56, $67, $71, $7F, $8B, $96, $A0, $AA, $02, $DE, $83, $C9 ; CPU:$9349 PRG:9349 1E 2F 3E 4E 56 67 71 7F 8B 96 A0 AA 02 DE 83 C9 .byte $CE, $DB, $0D, $FF, $8B, $03, $11, $1F, $2E, $3F, $4D, $57, $66, $72, $7E, $8C ; CPU:$9359 PRG:9359 CE DB 0D FF 8B 03 11 1F 2E 3F 4D 57 66 72 7E 8C .byte $02, $DE, $81, $E8, $02, $DE, $83, $E8, $DE, $DC, $0D, $FF, $8B, $04, $10, $20 ; CPU:$9369 PRG:9369 02 DE 81 E8 02 DE 83 E8 DE DC 0D FF 8B 04 10 20 .byte $2D, $40, $4C, $58, $65, $73, $7D, $8D, $02, $DE, $81, $E8, $02, $DE, $83, $E8 ; CPU:$9379 PRG:9379 2D 40 4C 58 65 73 7D 8D 02 DE 81 E8 02 DE 83 E8 .byte $DE, $E3, $0D, $FF, $8A, $E2, $0F, $21, $2C, $41, $4B, $59, $64, $74, $E8, $02 ; CPU:$9389 PRG:9389 DE E3 0D FF 8A E2 0F 21 2C 41 4B 59 64 74 E8 02 .byte $DE, $87, $E8, $A9, $B4, $DE, $E8, $DE, $E3, $0D, $FF, $8A, $05, $0E, $22, $2B ; CPU:$9399 PRG:9399 DE 87 E8 A9 B4 DE E8 DE E3 0D FF 8A 05 0E 22 2B .byte $42, $4A, $5A, $63, $75, $DE, $02, $8E, $87, $E7, $A8, $B5, $DE, $E7, $DE, $E3 ; CPU:$93A9 PRG:93A9 42 4A 5A 63 75 DE 02 8E 87 E7 A8 B5 DE E7 DE E3 .byte $0D, $FF, $93, $06, $0D, $23, $2A, $DE, $49, $5B, $62, $76, $7C, $76, $7C, $A1 ; CPU:$93B9 PRG:93B9 0D FF 93 06 0D 23 2A DE 49 5B 62 76 7C 76 7C A1 .byte $A7, $B6, $BB, $CA, $CD, $DD, $0D, $FF, $8D, $07, $0C, $24, $29, $43, $48, $5C ; CPU:$93C9 PRG:93C9 A7 B6 BB CA CD DD 0D FF 8D 07 0C 24 29 43 48 5C .byte $61, $77, $7B, $90, $95, $A2, $02, $FF, $82, $BA, $CB, $02, $CC, $0D, $FF, $8F ; CPU:$93D9 PRG:93D9 61 77 7B 90 95 A2 02 FF 82 BA CB 02 CC 0D FF 8F .byte $08, $0B, $25, $28, $44, $47, $5D, $60, $DF, $7A, $91, $94, $A3, $A6, $B7, $03 ; CPU:$93E9 PRG:93E9 08 0B 25 28 44 47 5D 60 DF 7A 91 94 A3 A6 B7 03 .byte $FF, $81, $EA, $0D, $FF, $90, $09, $0A, $26, $27, $45, $46, $5E, $5F, $78, $79 ; CPU:$93F9 PRG:93F9 FF 81 EA 0D FF 90 09 0A 26 27 45 46 5E 5F 78 79 .byte $92, $93, $A4, $A5, $B8, $B9, $02, $E9, $81, $E4, $77, $FF, $77, $FF, $43, $FF ; CPU:$9409 PRG:9409 92 93 A4 A5 B8 B9 02 E9 81 E4 77 FF 77 FF 43 FF .byte $81, $0C, $02, $FF, $87, $F7, $DD, $FF, $7F, $53, $98, $AA, $02, $FF, $81, $FC ; CPU:$9419 PRG:9419 81 0C 02 FF 87 F7 DD FF 7F 53 98 AA 02 FF 81 FC .byte $02, $FF, $84, $F7, $7B, $AA, $EE, $05, $FF, $84, $55, $EA, $AE, $EF, $04, $FF ; CPU:$9429 PRG:9429 02 FF 84 F7 7B AA EE 05 FF 84 55 EA AE EF 04 FF .byte $81, $F5, $02, $FA, $81, $FE, $12, $FF, $FF, $FF, $FF, $24, $00, $77, $FF, $0F ; CPU:$9439 PRG:9439 81 F5 02 FA 81 FE 12 FF FF FF FF 24 00 77 FF 0F .byte $FF, $81, $79, $02, $6D, $81, $69, $06, $7A, $89, $19, $1A, $7A, $21, $22, $7A ; CPU:$9449 PRG:9449 FF 81 79 02 6D 81 69 06 7A 89 19 1A 7A 21 22 7A .byte $6B, $6D, $7B, $0D, $FF, $81, $80, $02, $6C, $81, $68, $05, $84, $8A, $14, $13 ; CPU:$9459 PRG:9459 6B 6D 7B 0D FF 81 80 02 6C 81 68 05 84 8A 14 13 .byte $15, $1B, $20, $23, $84, $6A, $6C, $7C, $0D, $FF, $81, $80, $02, $6C, $90, $68 ; CPU:$9469 PRG:9469 15 1B 20 23 84 6A 6C 7C 0D FF 81 80 02 6C 90 68 .byte $B5, $01, $06, $07, $0C, $0D, $12, $16, $1C, $1F, $24, $84, $6A, $6C, $7C, $0D ; CPU:$9479 PRG:9479 B5 01 06 07 0C 0D 12 16 1C 1F 24 84 6A 6C 7C 0D .byte $FF, $81, $80, $02, $6C, $90, $68, $B3, $02, $05, $08, $0B, $0E, $11, $17, $1D ; CPU:$9489 PRG:9489 FF 81 80 02 6C 90 68 B3 02 05 08 0B 0E 11 17 1D .byte $1E, $25, $84, $6A, $6C, $7C, $0D, $FF, $81, $80, $02, $6C, $8B, $68, $B4, $03 ; CPU:$9499 PRG:9499 1E 25 84 6A 6C 7C 0D FF 81 80 02 6C 8B 68 B4 03 .byte $04, $09, $0A, $0F, $10, $18, $84, $BA, $02, $84, $83, $6A, $6C, $7C, $0D, $FF ; CPU:$94A9 PRG:94A9 04 09 0A 0F 10 18 84 BA 02 84 83 6A 6C 7C 0D FF .byte $81, $80, $02, $6C, $8B, $68, $84, $77, $78, $2A, $26, $27, $28, $29, $82, $83 ; CPU:$94B9 PRG:94B9 81 80 02 6C 8B 68 84 77 78 2A 26 27 28 29 82 83 .byte $02, $84, $83, $6A, $6C, $7C, $0D, $FF, $81, $80, $02, $6C, $81, $68, $02, $84 ; CPU:$94C9 PRG:94C9 02 84 83 6A 6C 7C 0D FF 81 80 02 6C 81 68 02 84 .byte $02, $2E, $85, $2B, $2C, $2D, $2E, $37, $03, $84, $83, $6A, $6C, $7C, $0D, $FF ; CPU:$94D9 PRG:94D9 02 2E 85 2B 2C 2D 2E 37 03 84 83 6A 6C 7C 0D FF .byte $81, $80, $02, $6C, $81, $34, $02, $6E, $87, $31, $32, $33, $6E, $35, $36, $38 ; CPU:$94E9 PRG:94E9 81 80 02 6C 81 34 02 6E 87 31 32 33 6E 35 36 38 .byte $03, $6E, $83, $6F, $6C, $7C, $0D, $FF, $82, $8D, $97, $02, $95, $8F, $94, $39 ; CPU:$94F9 PRG:94F9 03 6E 83 6F 6C 7C 0D FF 82 8D 97 02 95 8F 94 39 .byte $3A, $3B, $3C, $3D, $3E, $3F, $40, $41, $85, $86, $87, $A3, $B9, $0D, $FF, $93 ; CPU:$9509 PRG:9509 3A 3B 3C 3D 3E 3F 40 41 85 86 87 A3 B9 0D FF 93 .byte $96, $98, $B1, $AB, $93, $4A, $49, $48, $47, $46, $45, $44, $43, $42, $A5, $A6 ; CPU:$9519 PRG:9519 96 98 B1 AB 93 4A 49 48 47 46 45 44 43 42 A5 A6 .byte $8E, $91, $B8, $0D, $FF, $93, $96, $99, $B0, $AC, $92, $4B, $4C, $4D, $4E, $4F ; CPU:$9529 PRG:9529 8E 91 B8 0D FF 93 96 99 B0 AC 92 4B 4C 4D 4E 4F .byte $50, $51, $52, $53, $A4, $A7, $AA, $8F, $B7, $0D, $FF, $93, $96, $9A, $AF, $AD ; CPU:$9539 PRG:9539 50 51 52 53 A4 A7 AA 8F B7 0D FF 93 96 9A AF AD .byte $81, $5C, $5B, $5A, $59, $58, $57, $56, $55, $54, $88, $A8, $A9, $90, $B7, $0D ; CPU:$9549 PRG:9549 81 5C 5B 5A 59 58 57 56 55 54 88 A8 A9 90 B7 0D .byte $FF, $93, $A2, $9B, $AE, $B2, $5D, $5E, $5F, $60, $61, $62, $63, $64, $65, $66 ; CPU:$9559 PRG:9559 FF 93 A2 9B AE B2 5D 5E 5F 60 61 62 63 64 65 66 .byte $89, $8A, $8B, $8C, $30, $0D, $FF, $84, $A1, $67, $9D, $9E, $0A, $67, $82, $9F ; CPU:$9569 PRG:9569 89 8A 8B 8C 30 0D FF 84 A1 67 9D 9E 0A 67 82 9F .byte $A0, $02, $67, $81, $2F, $0D, $FF, $84, $80, $6C, $71, $72, $0B, $6C, $81, $73 ; CPU:$9579 PRG:9579 A0 02 67 81 2F 0D FF 84 80 6C 71 72 0B 6C 81 73 .byte $02, $6C, $81, $B6, $0D, $FF, $84, $80, $6C, $71, $72, $0B, $6C, $81, $74, $02 ; CPU:$9589 PRG:9589 02 6C 81 B6 0D FF 84 80 6C 71 72 0B 6C 81 74 02 .byte $6C, $81, $B6, $0D, $FF, $84, $7F, $7E, $75, $76, $0B, $7E, $81, $9C, $02, $7E ; CPU:$9599 PRG:9599 6C 81 B6 0D FF 84 7F 7E 75 76 0B 7E 81 9C 02 7E .byte $81, $7D, $77, $FF, $77, $FF, $3E, $FF, $82, $33, $CC, $02, $FF, $82, $33, $CC ; CPU:$95A9 PRG:95A9 81 7D 77 FF 77 FF 3E FF 82 33 CC 02 FF 82 33 CC .byte $02, $FF, $82, $33, $CC, $02, $FF, $82, $33, $0C, $02, $0F, $82, $03, $CC, $02 ; CPU:$95B9 PRG:95B9 02 FF 82 33 CC 02 FF 82 33 0C 02 0F 82 03 CC 02 .byte $FF, $81, $BB, $02, $AA, $83, $55, $95, $ED, $02, $FF, $82, $7B, $6A, $03, $5A ; CPU:$95C9 PRG:95C9 FF 81 BB 02 AA 83 55 95 ED 02 FF 82 7B 6A 03 5A .byte $83, $EE, $FF, $FE, $05, $FA, $81, $FE, $11, $FF, $FF, $FF, $FF, $24, $00, $77 ; CPU:$95D9 PRG:95D9 83 EE FF FE 05 FA 81 FE 11 FF FF FF FF 24 00 77 .byte $FF, $0F, $FF, $81, $A6, $05, $36, $04, $46, $04, $36, $85, $46, $B6, $B7, $B8 ; CPU:$95E9 PRG:95E9 FF 0F FF 81 A6 05 36 04 46 04 36 85 46 B6 B7 B8 .byte $49, $0D, $FF, $81, $9C, $05, $FF, $84, $CA, $C7, $C8, $C9, $04, $FF, $85, $A7 ; CPU:$95F9 PRG:95F9 49 0D FF 81 9C 05 FF 84 CA C7 C8 C9 04 FF 85 A7 .byte $B2, $B3, $B4, $B5, $0D, $FF, $81, $9C, $02, $FF, $81, $AF, $02, $FF, $84, $0C ; CPU:$9609 PRG:9609 B2 B3 B4 B5 0D FF 81 9C 02 FF 81 AF 02 FF 84 0C .byte $0D, $0E, $0F, $03, $FF, $86, $D0, $B9, $BA, $BB, $BC, $BD, $0D, $FF, $8A, $9C ; CPU:$9619 PRG:9619 0D 0E 0F 03 FF 86 D0 B9 BA BB BC BD 0D FF 8A 9C .byte $04, $05, $06, $07, $FF, $08, $09, $0A, $0B, $03, $FF, $86, $CF, $CE, $BE, $BF ; CPU:$9629 PRG:9629 04 05 06 07 FF 08 09 0A 0B 03 FF 86 CF CE BE BF .byte $C0, $C1, $0D, $FF, $8A, $10, $11, $12, $13, $14, $FF, $15, $16, $17, $18, $03 ; CPU:$9639 PRG:9639 C0 C1 0D FF 8A 10 11 12 13 14 FF 15 16 17 18 03 .byte $FF, $86, $CC, $CD, $C2, $C3, $C5, $6D, $0D, $FF, $8B, $19, $1A, $1B, $1C, $1D ; CPU:$9649 PRG:9649 FF 86 CC CD C2 C3 C5 6D 0D FF 8B 19 1A 1B 1C 1D .byte $CB, $1E, $1F, $20, $21, $22, $02, $FF, $83, $33, $34, $35, $02, $FF, $81, $70 ; CPU:$9659 PRG:9659 CB 1E 1F 20 21 22 02 FF 83 33 34 35 02 FF 81 70 .byte $0D, $FF, $90, $23, $24, $25, $26, $27, $28, $29, $2A, $2B, $2C, $2D, $2E, $2F ; CPU:$9669 PRG:9669 0D FF 90 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F .byte $30, $31, $32, $02, $FF, $81, $70, $0D, $FF, $90, $C4, $37, $38, $39, $3A, $3B ; CPU:$9679 PRG:9679 30 31 32 02 FF 81 70 0D FF 90 C4 37 38 39 3A 3B .byte $3C, $3D, $3E, $3F, $40, $41, $42, $43, $44, $45, $02, $FF, $81, $70, $0D, $FF ; CPU:$9689 PRG:9689 3C 3D 3E 3F 40 41 42 43 44 45 02 FF 81 70 0D FF .byte $8F, $9C, $47, $48, $DC, $4A, $4B, $4C, $4D, $4E, $4F, $50, $51, $52, $53, $54 ; CPU:$9699 PRG:9699 8F 9C 47 48 DC 4A 4B 4C 4D 4E 4F 50 51 52 53 54 .byte $03, $FF, $81, $70, $0D, $FF, $8F, $9C, $FF, $55, $56, $57, $58, $59, $5A, $5B ; CPU:$96A9 PRG:96A9 03 FF 81 70 0D FF 8F 9C FF 55 56 57 58 59 5A 5B .byte $5C, $5D, $5E, $5F, $60, $61, $03, $FF, $81, $70, $0D, $FF, $8F, $9C, $FF, $62 ; CPU:$96B9 PRG:96B9 5C 5D 5E 5F 60 61 03 FF 81 70 0D FF 8F 9C FF 62 .byte $63, $64, $65, $66, $67, $68, $69, $6A, $6B, $6C, $03, $6E, $03, $FF, $81, $70 ; CPU:$96C9 PRG:96C9 63 64 65 66 67 68 69 6A 6B 6C 03 6E 03 FF 81 70 .byte $0D, $FF, $8F, $9C, $FF, $6F, $03, $71, $72, $73, $74, $75, $76, $77, $03, $79 ; CPU:$96D9 PRG:96D9 0D FF 8F 9C FF 6F 03 71 72 73 74 75 76 77 03 79 .byte $03, $7B, $03, $FF, $81, $70, $0D, $FF, $8F, $9C, $FF, $7C, $7D, $7E, $7F, $80 ; CPU:$96E9 PRG:96E9 03 7B 03 FF 81 70 0D FF 8F 9C FF 7C 7D 7E 7F 80 .byte $81, $82, $83, $84, $03, $86, $87, $88, $03, $FF, $81, $70, $0D, $FF, $81, $9C ; CPU:$96F9 PRG:96F9 81 82 83 84 03 86 87 88 03 FF 81 70 0D FF 81 9C .byte $02, $FF, $8A, $89, $8A, $8B, $8C, $8D, $8E, $8F, $90, $03, $92, $05, $FF, $81 ; CPU:$9709 PRG:9709 02 FF 8A 89 8A 8B 8C 8D 8E 8F 90 03 92 05 FF 81 .byte $70, $0D, $FF, $81, $9C, $03, $FF, $89, $93, $94, $95, $96, $97, $98, $99, $9A ; CPU:$9719 PRG:9719 70 0D FF 81 9C 03 FF 89 93 94 95 96 97 98 99 9A .byte $9B, $05, $FF, $81, $70, $0D, $FF, $81, $9C, $03, $FF, $89, $9D, $9E, $9F, $A0 ; CPU:$9729 PRG:9729 9B 05 FF 81 70 0D FF 81 9C 03 FF 89 9D 9E 9F A0 .byte $A1, $A2, $A3, $A4, $A5, $05, $FF, $81, $70, $0D, $FF, $81, $91, $03, $85, $89 ; CPU:$9739 PRG:9739 A1 A2 A3 A4 A5 05 FF 81 70 0D FF 81 91 03 85 89 .byte $A8, $A9, $AA, $AB, $AC, $AD, $AE, $03, $B0, $05, $85, $81, $7A, $77, $FF, $77 ; CPU:$9749 PRG:9749 A8 A9 AA AB AC AD AE 03 B0 05 85 81 7A 77 FF 77 .byte $FF, $43, $FF, $85, $5F, $AA, $BF, $AA, $EE, $02, $FF, $85, $55, $D5, $3A, $BA ; CPU:$9759 PRG:9759 FF 43 FF 85 5F AA BF AA EE 02 FF 85 55 D5 3A BA .byte $AA, $04, $FF, $84, $FE, $33, $FF, $BB, $04, $FF, $83, $CF, $03, $CF, $06, $FF ; CPU:$9769 PRG:9769 AA 04 FF 84 FE 33 FF BB 04 FF 83 CF 03 CF 06 FF .byte $82, $F0, $FC, $13, $FF, $FF, $FF, $FF, $24, $00, $77, $FF, $0F, $FF, $84, $EB ; CPU:$9779 PRG:9779 82 F0 FC 13 FF FF FF FF 24 00 77 FF 0F FF 84 EB .byte $EA, $D0, $D1, $02, $EA, $83, $CA, $C9, $C8, $02, $EA, $81, $B5, $06, $EA, $81 ; CPU:$9789 PRG:9789 EA D0 D1 02 EA 83 CA C9 C8 02 EA 81 B5 06 EA 81 .byte $E9, $0D, $FF, $8D, $EC, $01, $CF, $CC, $D3, $01, $C5, $C6, $C7, $01, $C1, $C0 ; CPU:$9799 PRG:9799 E9 0D FF 8D EC 01 CF CC D3 01 C5 C6 C7 01 C1 C0 .byte $BF, $05, $01, $81, $E8, $0D, $FF, $8D, $EC, $01, $CE, $CB, $D2, $01, $C4, $C3 ; CPU:$97A9 PRG:97A9 BF 05 01 81 E8 0D FF 8D EC 01 CE CB D2 01 C4 C3 .byte $C2, $ED, $BB, $BC, $BD, $05, $01, $81, $E8, $0D, $FF, $81, $EC, $03, $01, $82 ; CPU:$97B9 PRG:97B9 C2 ED BB BC BD 05 01 81 E8 0D FF 81 EC 03 01 82 .byte $90, $91, $04, $01, $89, $BA, $B9, $B8, $AA, $03, $01, $EF, $01, $E8, $0D, $FF ; CPU:$97C9 PRG:97C9 90 91 04 01 89 BA B9 B8 AA 03 01 EF 01 E8 0D FF .byte $90, $EC, $01, $EE, $8D, $8C, $8A, $8B, $01, $ED, $B4, $B3, $AF, $B7, $05, $06 ; CPU:$97D9 PRG:97D9 90 EC 01 EE 8D 8C 8A 8B 01 ED B4 B3 AF B7 05 06 .byte $07, $02, $01, $81, $E8, $0D, $FF, $81, $EC, $02, $01, $83, $8E, $88, $89, $03 ; CPU:$97E9 PRG:97E9 07 02 01 81 E8 0D FF 81 EC 02 01 83 8E 88 89 03 .byte $01, $8A, $B0, $B1, $B2, $0B, $0A, $09, $08, $AB, $01, $E8, $0D, $FF, $81, $EC ; CPU:$97F9 PRG:97F9 01 8A B0 B1 B2 0B 0A 09 08 AB 01 E8 0D FF 81 EC .byte $03, $01, $8F, $92, $86, $85, $84, $01, $AD, $AC, $8F, $0D, $0E, $0F, $10, $11 ; CPU:$9809 PRG:9809 03 01 8F 92 86 85 84 01 AD AC 8F 0D 0E 0F 10 11 .byte $01, $E8, $0D, $FF, $81, $EC, $02, $01, $90, $94, $7B, $7C, $7D, $7E, $7F, $04 ; CPU:$9819 PRG:9819 01 E8 0D FF 81 EC 02 01 90 94 7B 7C 7D 7E 7F 04 .byte $4E, $4F, $16, $15, $14, $13, $12, $01, $E8, $0D, $FF, $81, $EC, $02, $01, $90 ; CPU:$9829 PRG:9829 4E 4F 16 15 14 13 12 01 E8 0D FF 81 EC 02 01 90 .byte $95, $72, $71, $70, $6F, $80, $93, $23, $21, $1B, $1A, $19, $18, $17, $01, $E8 ; CPU:$9839 PRG:9839 95 72 71 70 6F 80 93 23 21 1B 1A 19 18 17 01 E8 .byte $0D, $FF, $93, $EC, $ED, $01, $96, $73, $6C, $6D, $6E, $82, $83, $24, $22, $20 ; CPU:$9849 PRG:9849 0D FF 93 EC ED 01 96 73 6C 6D 6E 82 83 24 22 20 .byte $1F, $1E, $1D, $1C, $01, $E8, $0D, $FF, $81, $EC, $02, $01, $90, $97, $74, $6B ; CPU:$9859 PRG:9859 1F 1E 1D 1C 01 E8 0D FF 81 EC 02 01 90 97 74 6B .byte $6A, $62, $61, $81, $25, $26, $27, $28, $29, $2A, $2B, $01, $E8, $0D, $FF, $93 ; CPU:$9869 PRG:9869 6A 62 61 81 25 26 27 28 29 2A 2B 01 E8 0D FF 93 .byte $E6, $A1, $9D, $9C, $75, $99, $69, $63, $5F, $60, $32, $31, $30, $2F, $2E, $2D ; CPU:$9879 PRG:9879 E6 A1 9D 9C 75 99 69 63 5F 60 32 31 30 2F 2E 2D .byte $2C, $01, $E8, $0D, $FF, $93, $E1, $A0, $9E, $9B, $76, $79, $68, $64, $5E, $5B ; CPU:$9889 PRG:9889 2C 01 E8 0D FF 93 E1 A0 9E 9B 76 79 68 64 5E 5B .byte $01, $38, $37, $36, $35, $34, $33, $4D, $E8, $0D, $FF, $93, $DF, $DE, $9F, $9A ; CPU:$9899 PRG:9899 01 38 37 36 35 34 33 4D E8 0D FF 93 DF DE 9F 9A .byte $77, $78, $67, $65, $5D, $5A, $3F, $3E, $3D, $3C, $3B, $3A, $39, $01, $E8, $0D ; CPU:$98A9 PRG:98A9 77 78 67 65 5D 5A 3F 3E 3D 3C 3B 3A 39 01 E8 0D .byte $FF, $93, $DC, $DD, $E0, $E2, $7A, $A2, $A3, $A4, $5C, $59, $46, $45, $44, $43 ; CPU:$98B9 PRG:98B9 FF 93 DC DD E0 E2 7A A2 A3 A4 5C 59 46 45 44 43 .byte $42, $41, $40, $01, $E8, $0D, $FF, $93, $DB, $DA, $D9, $D8, $E5, $98, $A6, $A5 ; CPU:$98C9 PRG:98C9 42 41 40 01 E8 0D FF 93 DB DA D9 D8 E5 98 A6 A5 .byte $A9, $58, $4A, $49, $48, $47, $52, $51, $50, $01, $E8, $0D, $FF, $88, $D5, $D4 ; CPU:$98D9 PRG:98D9 A9 58 4A 49 48 47 52 51 50 01 E8 0D FF 88 D5 D4 .byte $D6, $D7, $E3, $E4, $A7, $A8, $02, $E7, $82, $4C, $4B, $02, $02, $85, $53, $54 ; CPU:$98E9 PRG:98E9 D6 D7 E3 E4 A7 A8 02 E7 82 4C 4B 02 02 85 53 54 .byte $55, $56, $57, $77, $FF, $77, $FF, $43, $FF, $81, $BF, $07, $FF, $84, $56, $DD ; CPU:$98F9 PRG:98F9 55 56 57 77 FF 77 FF 43 FF 81 BF 07 FF 84 56 DD .byte $BB, $9A, $04, $FF, $84, $75, $55, $67, $55, $03, $FF, $85, $33, $CB, $33, $00 ; CPU:$9909 PRG:9909 BB 9A 04 FF 84 75 55 67 55 03 FF 85 33 CB 33 00 .byte $04, $06, $FF, $02, $F0, $12, $FF, $FF, $FF, $FF, $24, $00, $77, $FF, $0F, $FF ; CPU:$9919 PRG:9919 04 06 FF 02 F0 12 FF FF FF FF 24 00 77 FF 0F FF .byte $86, $DE, $DC, $E6, $87, $88, $89, $05, $DC, $85, $8F, $90, $97, $DB, $E6, $02 ; CPU:$9929 PRG:9929 86 DE DC E6 87 88 89 05 DC 85 8F 90 97 DB E6 02 .byte $DC, $81, $DF, $0D, $FF, $81, $E1, $02, $01, $84, $04, $05, $06, $9C, $03, $01 ; CPU:$9939 PRG:9939 DC 81 DF 0D FF 81 E1 02 01 84 04 05 06 9C 03 01 .byte $84, $83, $84, $85, $86, $02, $01, $83, $4A, $01, $DD, $0D, $FF, $87, $E1, $01 ; CPU:$9949 PRG:9949 84 83 84 85 86 02 01 83 4A 01 DD 0D FF 87 E1 01 .byte $8A, $07, $08, $09, $0A, $02, $01, $86, $99, $82, $81, $80, $7F, $9B, $03, $01 ; CPU:$9959 PRG:9959 8A 07 08 09 0A 02 01 86 99 82 81 80 7F 9B 03 01 .byte $81, $DD, $0D, $FF, $8F, $E1, $01, $0B, $0C, $0D, $0E, $0F, $E5, $01, $96, $7B ; CPU:$9969 PRG:9969 81 DD 0D FF 8F E1 01 0B 0C 0D 0E 0F E5 01 96 7B .byte $7C, $7D, $7E, $9A, $03, $01, $81, $DD, $0D, $FF, $8F, $E1, $01, $10, $11, $12 ; CPU:$9979 PRG:9979 7C 7D 7E 9A 03 01 81 DD 0D FF 8F E1 01 10 11 12 .byte $13, $14, $01, $DA, $01, $7A, $79, $76, $75, $E0, $03, $01, $81, $DD, $0D, $FF ; CPU:$9989 PRG:9989 13 14 01 DA 01 7A 79 76 75 E0 03 01 81 DD 0D FF .byte $88, $E1, $01, $15, $16, $17, $18, $19, $E8, $03, $01, $82, $78, $77, $05, $01 ; CPU:$9999 PRG:9999 88 E1 01 15 16 17 18 19 E8 03 01 82 78 77 05 01 .byte $81, $DD, $0D, $FF, $88, $E1, $01, $1A, $1B, $1C, $1D, $1E, $E9, $02, $01, $86 ; CPU:$99A9 PRG:99A9 81 DD 0D FF 88 E1 01 1A 1B 1C 1D 1E E9 02 01 86 .byte $70, $71, $72, $73, $74, $DA, $02, $01, $81, $DD, $0D, $FF, $90, $E1, $01, $1F ; CPU:$99B9 PRG:99B9 70 71 72 73 74 DA 02 01 81 DD 0D FF 90 E1 01 1F .byte $20, $21, $22, $23, $2A, $01, $95, $6F, $6E, $6D, $6C, $6B, $93, $02, $01, $81 ; CPU:$99C9 PRG:99C9 20 21 22 23 2A 01 95 6F 6E 6D 6C 6B 93 02 01 81 .byte $DD, $0D, $FF, $90, $E1, $E7, $24, $25, $26, $27, $28, $29, $01, $65, $66, $67 ; CPU:$99D9 PRG:99D9 DD 0D FF 90 E1 E7 24 25 26 27 28 29 01 65 66 67 .byte $68, $69, $6A, $91, $02, $01, $81, $DD, $0D, $FF, $81, $E1, $02, $01, $8D, $2B ; CPU:$99E9 PRG:99E9 68 69 6A 91 02 01 81 DD 0D FF 81 E1 02 01 8D 2B .byte $2C, $2D, $2E, $01, $E7, $64, $63, $62, $61, $60, $5F, $5E, $02, $01, $81, $DD ; CPU:$99F9 PRG:99F9 2C 2D 2E 01 E7 64 63 62 61 60 5F 5E 02 01 81 DD .byte $0D, $FF, $81, $E3, $02, $01, $84, $2F, $30, $31, $32, $02, $01, $87, $57, $58 ; CPU:$9A09 PRG:9A09 0D FF 81 E3 02 01 84 2F 30 31 32 02 01 87 57 58 .byte $59, $5A, $5B, $5C, $5D, $02, $01, $81, $DD, $0D, $FF, $87, $E3, $BA, $BC, $33 ; CPU:$9A19 PRG:9A19 59 5A 5B 5C 5D 02 01 81 DD 0D FF 87 E3 BA BC 33 .byte $34, $35, $36, $02, $01, $8A, $9D, $55, $54, $53, $52, $51, $94, $C5, $C6, $C7 ; CPU:$9A29 PRG:9A29 34 35 36 02 01 8A 9D 55 54 53 52 51 94 C5 C6 C7 .byte $0D, $FF, $88, $E3, $A9, $BB, $01, $37, $38, $39, $3C, $02, $01, $89, $56, $45 ; CPU:$9A39 PRG:9A39 0D FF 88 E3 A9 BB 01 37 38 39 3C 02 01 89 56 45 .byte $4E, $4F, $50, $AA, $AB, $AC, $AD, $0D, $FF, $93, $E3, $A7, $B8, $B9, $92, $3A ; CPU:$9A49 PRG:9A49 4E 4F 50 AA AB AC AD 0D FF 93 E3 A7 B8 B9 92 3A .byte $3B, $3D, $3E, $8D, $44, $46, $4D, $C8, $C4, $B1, $B0, $AF, $AE, $0D, $FF, $8C ; CPU:$9A59 PRG:9A59 3B 3D 3E 8D 44 46 4D C8 C4 B1 B0 AF AE 0D FF 8C .byte $E3, $A5, $B7, $B6, $BF, $01, $3F, $40, $41, $42, $43, $47, $03, $01, $84, $04 ; CPU:$9A69 PRG:9A69 E3 A5 B7 B6 BF 01 3F 40 41 42 43 47 03 01 84 04 .byte $CC, $CD, $CE, $0D, $FF, $86, $A2, $A3, $B4, $B5, $C1, $C3, $04, $01, $89, $49 ; CPU:$9A79 PRG:9A79 CC CD CE 0D FF 86 A2 A3 B4 B5 C1 C3 04 01 89 49 .byte $48, $4B, $01, $D5, $D3, $4C, $C9, $CA, $0D, $FF, $88, $9F, $A0, $A1, $B3, $BD ; CPU:$9A89 PRG:9A89 48 4B 01 D5 D3 4C C9 CA 0D FF 88 9F A0 A1 B3 BD .byte $BE, $C0, $C2, $03, $E2, $88, $8B, $8C, $D6, $D4, $D2, $D1, $D0, $CF, $77, $FF ; CPU:$9A99 PRG:9A99 BE C0 C2 03 E2 88 8B 8C D6 D4 D2 D1 D0 CF 77 FF .byte $77, $FF, $43, $FF, $8C, $AA, $EE, $F7, $FE, $33, $FF, $3F, $FF, $55, $DA, $FF ; CPU:$9AA9 PRG:9AA9 77 FF 43 FF 8C AA EE F7 FE 33 FF 3F FF 55 DA FF .byte $E2, $03, $FF, $83, $3F, $26, $CC, $02, $FF, $81, $33, $02, $FF, $81, $33, $02 ; CPU:$9AB9 PRG:9AB9 E2 03 FF 83 3F 26 CC 02 FF 81 33 02 FF 81 33 02 .byte $00, $83, $0C, $FF, $F3, $19, $FF, $FF, $FF, $FF, $24, $00, $77, $FF, $0F, $FF ; CPU:$9AC9 PRG:9AC9 00 83 0C FF F3 19 FF FF FF FF 24 00 77 FF 0F FF .byte $81, $B4, $06, $B5, $84, $3C, $3D, $5B, $5C, $07, $B5, $81, $B6, $0D, $FF, $81 ; CPU:$9AD9 PRG:9AD9 81 B4 06 B5 84 3C 3D 5B 5C 07 B5 81 B6 0D FF 81 .byte $BA, $03, $01, $81, $AF, $02, $01, $84, $3B, $B2, $B3, $5D, $07, $01, $81, $B7 ; CPU:$9AE9 PRG:9AE9 BA 03 01 81 AF 02 01 84 3B B2 B3 5D 07 01 81 B7 .byte $0D, $FF, $81, $BA, $04, $01, $87, $AF, $01, $3A, $3E, $5A, $5E, $A4, $03, $01 ; CPU:$9AF9 PRG:9AF9 0D FF 81 BA 04 01 87 AF 01 3A 3E 5A 5E A4 03 01 .byte $81, $AF, $02, $01, $81, $B7, $0D, $FF, $81, $BA, $06, $01, $85, $39, $3F, $59 ; CPU:$9B09 PRG:9B09 81 AF 02 01 81 B7 0D FF 81 BA 06 01 85 39 3F 59 .byte $5F, $79, $06, $01, $81, $B7, $0D, $FF, $81, $BA, $04, $01, $88, $AE, $01, $38 ; CPU:$9B19 PRG:9B19 5F 79 06 01 81 B7 0D FF 81 BA 04 01 88 AE 01 38 .byte $40, $58, $60, $78, $7A, $05, $01, $81, $B7, $0D, $FF, $81, $BA, $03, $01, $8A ; CPU:$9B29 PRG:9B29 40 58 60 78 7A 05 01 81 B7 0D FF 81 BA 03 01 8A .byte $AD, $AF, $01, $37, $41, $57, $61, $77, $7B, $91, $03, $01, $82, $AF, $B7, $0D ; CPU:$9B39 PRG:9B39 AD AF 01 37 41 57 61 77 7B 91 03 01 82 AF B7 0D .byte $FF, $81, $BA, $04, $01, $8A, $22, $23, $36, $42, $56, $62, $76, $7C, $90, $92 ; CPU:$9B49 PRG:9B49 FF 81 BA 04 01 8A 22 23 36 42 56 62 76 7C 90 92 .byte $03, $01, $81, $B7, $0D, $FF, $81, $BA, $03, $01, $8C, $0F, $21, $24, $35, $43 ; CPU:$9B59 PRG:9B59 03 01 81 B7 0D FF 81 BA 03 01 8C 0F 21 24 35 43 .byte $55, $63, $75, $7D, $B1, $93, $9E, $02, $01, $81, $B7, $0D, $FF, $81, $BA, $02 ; CPU:$9B69 PRG:9B69 55 63 75 7D B1 93 9E 02 01 81 B7 0D FF 81 BA 02 .byte $01, $90, $0E, $10, $20, $25, $34, $44, $54, $64, $74, $7E, $B1, $94, $9D, $9F ; CPU:$9B79 PRG:9B79 01 90 0E 10 20 25 34 44 54 64 74 7E B1 94 9D 9F .byte $01, $B7, $0D, $FF, $81, $BA, $02, $01, $90, $0D, $11, $1F, $26, $33, $45, $53 ; CPU:$9B89 PRG:9B89 01 B7 0D FF 81 BA 02 01 90 0D 11 1F 26 33 45 53 .byte $65, $73, $80, $8E, $B0, $7F, $A0, $01, $B7, $0D, $FF, $8E, $BA, $01, $A6, $0C ; CPU:$9B99 PRG:9B99 65 73 80 8E B0 7F A0 01 B7 0D FF 8E BA 01 A6 0C .byte $12, $1E, $27, $32, $46, $52, $66, $72, $80, $8D, $02, $7F, $83, $A1, $01, $B7 ; CPU:$9BA9 PRG:9BA9 12 1E 27 32 46 52 66 72 80 8D 02 7F 83 A1 01 B7 .byte $0D, $FF, $81, $BA, $02, $01, $8B, $0B, $13, $1D, $28, $31, $47, $51, $67, $71 ; CPU:$9BB9 PRG:9BB9 0D FF 81 BA 02 01 8B 0B 13 1D 28 31 47 51 67 71 .byte $81, $8C, $02, $7F, $83, $A2, $01, $B7, $0D, $FF, $93, $BA, $01, $02, $0A, $14 ; CPU:$9BC9 PRG:9BC9 81 8C 02 7F 83 A2 01 B7 0D FF 93 BA 01 02 0A 14 .byte $1C, $29, $30, $48, $50, $68, $70, $82, $8B, $95, $9C, $A3, $01, $B7, $0D, $FF ; CPU:$9BD9 PRG:9BD9 1C 29 30 48 50 68 70 82 8B 95 9C A3 01 B7 0D FF .byte $93, $BA, $01, $03, $09, $15, $1B, $2A, $2F, $49, $4F, $69, $6F, $83, $8A, $96 ; CPU:$9BE9 PRG:9BE9 93 BA 01 03 09 15 1B 2A 2F 49 4F 69 6F 83 8A 96 .byte $9B, $01, $AD, $B7, $0D, $FF, $90, $BA, $01, $A5, $08, $16, $1A, $2B, $2E, $4A ; CPU:$9BF9 PRG:9BF9 9B 01 AD B7 0D FF 90 BA 01 A5 08 16 1A 2B 2E 4A .byte $4E, $8F, $6E, $84, $89, $97, $9A, $02, $01, $81, $B7, $0D, $FF, $93, $BA, $01 ; CPU:$9C09 PRG:9C09 4E 8F 6E 84 89 97 9A 02 01 81 B7 0D FF 93 BA 01 .byte $04, $07, $01, $19, $01, $2D, $01, $4D, $6A, $6D, $85, $88, $98, $99, $AC, $01 ; CPU:$9C19 PRG:9C19 04 07 01 19 01 2D 01 4D 6A 6D 85 88 98 99 AC 01 .byte $B7, $0D, $FF, $93, $B9, $A8, $05, $06, $17, $18, $A7, $2C, $4B, $4C, $6B, $6C ; CPU:$9C29 PRG:9C29 B7 0D FF 93 B9 A8 05 06 17 18 A7 2C 4B 4C 6B 6C .byte $86, $87, $A9, $AA, $AB, $BB, $B8, $77, $FF, $77, $FF, $42, $FF, $86, $BB, $AA ; CPU:$9C39 PRG:9C39 86 87 A9 AA AB BB B8 77 FF 77 FF 42 FF 86 BB AA .byte $2A, $8A, $AA, $EE, $02, $FF, $86, $BB, $AF, $66, $98, $FA, $EE, $02, $FF, $86 ; CPU:$9C49 PRG:9C49 2A 8A AA EE 02 FF 86 BB AF 66 98 FA EE 02 FF 86 .byte $BB, $66, $99, $EE, $FF, $EE, $02, $FF, $83, $BB, $46, $59, $02, $FF, $81, $EE ; CPU:$9C59 PRG:9C59 BB 66 99 EE FF EE 02 FF 83 BB 46 59 02 FF 81 EE .byte $03, $FF, $02, $F0, $02, $FF, $81, $FE, $11, $FF, $FF, $FF, $FF, $24, $00, $77 ; CPU:$9C69 PRG:9C69 03 FF 02 F0 02 FF 81 FE 11 FF FF FF FF 24 00 77 .byte $FF, $0F, $FF, $81, $C0, $12, $BC, $81, $BF, $0C, $FF, $81, $C1, $12, $FF, $81 ; CPU:$9C79 PRG:9C79 FF 0F FF 81 C0 12 BC 81 BF 0C FF 81 C1 12 FF 81 .byte $BE, $0C, $FF, $81, $C1, $12, $FF, $81, $BE, $0C, $FF, $81, $C1, $0E, $FF, $85 ; CPU:$9C89 PRG:9C89 BE 0C FF 81 C1 12 FF 81 BE 0C FF 81 C1 0E FF 85 .byte $A0, $A7, $AE, $FF, $BE, $0C, $FF, $87, $C1, $0D, $0F, $28, $29, $42, $43, $08 ; CPU:$9C99 PRG:9C99 A0 A7 AE FF BE 0C FF 87 C1 0D 0F 28 29 42 43 08 .byte $FF, $85, $A1, $A8, $95, $FF, $BE, $0C, $FF, $8A, $0E, $0C, $10, $27, $2A, $41 ; CPU:$9CA9 PRG:9CA9 FF 85 A1 A8 95 FF BE 0C FF 8A 0E 0C 10 27 2A 41 .byte $44, $5B, $5C, $73, $05, $FF, $85, $E8, $E1, $E3, $FF, $BE, $0C, $FF, $8A, $C1 ; CPU:$9CB9 PRG:9CB9 44 5B 5C 73 05 FF 85 E8 E1 E3 FF BE 0C FF 8A C1 .byte $FF, $11, $26, $2B, $40, $45, $5A, $5D, $72, $05, $FF, $85, $DF, $74, $DE, $B5 ; CPU:$9CC9 PRG:9CC9 FF 11 26 2B 40 45 5A 5D 72 05 FF 85 DF 74 DE B5 .byte $E7, $0C, $FF, $8A, $C1, $FF, $12, $25, $2C, $E5, $46, $59, $5E, $71, $02, $FF ; CPU:$9CD9 PRG:9CD9 E7 0C FF 8A C1 FF 12 25 2C E5 46 59 5E 71 02 FF .byte $88, $87, $9A, $9B, $A2, $E2, $B2, $B6, $B9, $0C, $FF, $94, $C1, $FF, $13, $24 ; CPU:$9CE9 PRG:9CE9 88 87 9A 9B A2 E2 B2 B6 B9 0C FF 94 C1 FF 13 24 .byte $2D, $3E, $47, $58, $5F, $70, $75, $86, $88, $99, $9C, $A5, $E4, $B3, $B7, $BA ; CPU:$9CF9 PRG:9CF9 2D 3E 47 58 5F 70 75 86 88 99 9C A5 E4 B3 B7 BA .byte $0C, $FF, $94, $C1, $FF, $14, $23, $2E, $3D, $48, $57, $60, $6F, $76, $85, $89 ; CPU:$9D09 PRG:9D09 0C FF 94 C1 FF 14 23 2E 3D 48 57 60 6F 76 85 89 .byte $98, $9D, $A6, $AD, $B4, $B8, $BB, $0C, $FF, $8F, $C1, $FF, $15, $22, $2F, $3C ; CPU:$9D19 PRG:9D19 98 9D A6 AD B4 B8 BB 0C FF 8F C1 FF 15 22 2F 3C .byte $49, $56, $61, $6E, $77, $84, $8A, $97, $9E, $04, $FF, $81, $BE, $0C, $FF, $8E ; CPU:$9D29 PRG:9D29 49 56 61 6E 77 84 8A 97 9E 04 FF 81 BE 0C FF 8E .byte $C1, $0B, $16, $E6, $30, $3B, $4A, $55, $62, $6D, $78, $83, $8B, $96, $05, $FF ; CPU:$9D39 PRG:9D39 C1 0B 16 E6 30 3B 4A 55 62 6D 78 83 8B 96 05 FF .byte $81, $BE, $0C, $FF, $8D, $01, $0A, $17, $20, $31, $3A, $4B, $54, $63, $6C, $79 ; CPU:$9D49 PRG:9D49 81 BE 0C FF 8D 01 0A 17 20 31 3A 4B 54 63 6C 79 .byte $82, $8C, $06, $FF, $81, $BE, $0C, $FF, $8E, $02, $09, $18, $1F, $32, $39, $4C ; CPU:$9D59 PRG:9D59 82 8C 06 FF 81 BE 0C FF 8E 02 09 18 1F 32 39 4C .byte $53, $64, $6B, $7A, $81, $8D, $94, $05, $FF, $81, $BE, $0C, $FF, $8E, $03, $08 ; CPU:$9D69 PRG:9D69 53 64 6B 7A 81 8D 94 05 FF 81 BE 0C FF 8E 03 08 .byte $19, $1E, $33, $38, $4D, $52, $65, $6A, $7B, $80, $8E, $93, $05, $FF, $81, $BE ; CPU:$9D79 PRG:9D79 19 1E 33 38 4D 52 65 6A 7B 80 8E 93 05 FF 81 BE .byte $0C, $FF, $8E, $04, $07, $1A, $1D, $34, $37, $4E, $51, $66, $69, $7C, $7F, $8F ; CPU:$9D89 PRG:9D89 0C FF 8E 04 07 1A 1D 34 37 4E 51 66 69 7C 7F 8F .byte $92, $05, $FF, $81, $BE, $0C, $FF, $8F, $05, $06, $1B, $1C, $35, $36, $4F, $50 ; CPU:$9D99 PRG:9D99 92 05 FF 81 BE 0C FF 8F 05 06 1B 1C 35 36 4F 50 .byte $67, $68, $7D, $7E, $90, $91, $9F, $04, $C3, $81, $BD, $77, $FF, $77, $FF, $45 ; CPU:$9DA9 PRG:9DA9 67 68 7D 7E 90 91 9F 04 C3 81 BD 77 FF 77 FF 45 .byte $FF, $81, $5F, $03, $FF, $81, $F3, $02, $AA, $83, $FE, $B5, $DF, $03, $FF, $82 ; CPU:$9DB9 PRG:9DB9 FF 81 5F 03 FF 81 F3 02 AA 83 FE B5 DF 03 FF 82 .byte $22, $FA, $02, $FF, $81, $FD, $02, $FF, $83, $B3, $AA, $66, $1C, $FF, $FF, $FF ; CPU:$9DC9 PRG:9DC9 22 FA 02 FF 81 FD 02 FF 83 B3 AA 66 1C FF FF FF .byte $FF, $24, $00, $66, $FF, $81, $CB, $05, $BF, $81, $93, $0C, $BF, $81, $67, $0C ; CPU:$9DD9 PRG:9DD9 FF 24 00 66 FF 81 CB 05 BF 81 93 0C BF 81 67 0C .byte $FF, $81, $E2, $06, $A1, $84, $76, $A1, $01, $02, $08, $A1, $81, $4D, $0C, $FF ; CPU:$9DE9 PRG:9DE9 FF 81 E2 06 A1 84 76 A1 01 02 08 A1 81 4D 0C FF .byte $81, $E2, $03, $A1, $81, $21, $03, $A1, $84, $03, $04, $05, $06, $07, $A1, $81 ; CPU:$9DF9 PRG:9DF9 81 E2 03 A1 81 21 03 A1 84 03 04 05 06 07 A1 81 .byte $4D, $0C, $FF, $8C, $E2, $A1, $16, $17, $18, $A1, $4F, $07, $08, $09, $0A, $0B ; CPU:$9E09 PRG:9E09 4D 0C FF 8C E2 A1 16 17 18 A1 4F 07 08 09 0A 0B .byte $07, $A1, $81, $4D, $0C, $FF, $8C, $E2, $A1, $19, $1A, $1B, $A1, $41, $0C, $0D ; CPU:$9E19 PRG:9E19 07 A1 81 4D 0C FF 8C E2 A1 19 1A 1B A1 41 0C 0D .byte $0E, $0F, $10, $07, $A1, $81, $4D, $0C, $FF, $8D, $E2, $1C, $1D, $1E, $1F, $20 ; CPU:$9E29 PRG:9E29 0E 0F 10 07 A1 81 4D 0C FF 8D E2 1C 1D 1E 1F 20 .byte $B4, $A1, $11, $12, $13, $14, $15, $06, $A1, $81, $4D, $0C, $FF, $8D, $E2, $22 ; CPU:$9E39 PRG:9E39 B4 A1 11 12 13 14 15 06 A1 81 4D 0C FF 8D E2 22 .byte $23, $24, $25, $26, $27, $28, $29, $2A, $2B, $2C, $2D, $06, $A1, $81, $4D, $0C ; CPU:$9E49 PRG:9E49 23 24 25 26 27 28 29 2A 2B 2C 2D 06 A1 81 4D 0C .byte $FF, $8D, $2E, $2F, $30, $31, $32, $33, $34, $35, $36, $37, $38, $39, $3A, $06 ; CPU:$9E59 PRG:9E59 FF 8D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 06 .byte $A1, $81, $4D, $0C, $FF, $8E, $E2, $3C, $3D, $3E, $3F, $40, $A1, $42, $43, $44 ; CPU:$9E69 PRG:9E69 A1 81 4D 0C FF 8E E2 3C 3D 3E 3F 40 A1 42 43 44 .byte $45, $46, $47, $4E, $05, $A1, $81, $4D, $0C, $FF, $86, $E2, $48, $49, $4A, $4B ; CPU:$9E79 PRG:9E79 45 46 47 4E 05 A1 81 4D 0C FF 86 E2 48 49 4A 4B .byte $4C, $03, $A1, $88, $50, $51, $52, $53, $54, $55, $56, $57, $02, $A1, $81, $4D ; CPU:$9E89 PRG:9E89 4C 03 A1 88 50 51 52 53 54 55 56 57 02 A1 81 4D .byte $0C, $FF, $87, $E2, $59, $5A, $5B, $5C, $5D, $5E, $02, $A1, $88, $5F, $60, $61 ; CPU:$9E99 PRG:9E99 0C FF 87 E2 59 5A 5B 5C 5D 5E 02 A1 88 5F 60 61 .byte $62, $63, $64, $65, $66, $02, $A1, $81, $4D, $0C, $FF, $86, $E2, $68, $69, $6A ; CPU:$9EA9 PRG:9EA9 62 63 64 65 66 02 A1 81 4D 0C FF 86 E2 68 69 6A .byte $6B, $6C, $03, $A1, $88, $6E, $6F, $70, $71, $72, $73, $74, $75, $02, $A1, $81 ; CPU:$9EB9 PRG:9EB9 6B 6C 03 A1 88 6E 6F 70 71 72 73 74 75 02 A1 81 .byte $4D, $0C, $FF, $94, $E2, $A1, $78, $79, $7A, $7B, $E0, $7C, $B5, $B6, $80, $81 ; CPU:$9EC9 PRG:9EC9 4D 0C FF 94 E2 A1 78 79 7A 7B E0 7C B5 B6 80 81 .byte $82, $83, $84, $85, $86, $DD, $A1, $4D, $0C, $FF, $81, $E2, $02, $A1, $91, $88 ; CPU:$9ED9 PRG:9ED9 82 83 84 85 86 DD A1 4D 0C FF 81 E2 02 A1 91 88 .byte $89, $7D, $7E, $7F, $B7, $87, $8D, $8E, $8F, $90, $91, $92, $DB, $DC, $A1, $4D ; CPU:$9EE9 PRG:9EE9 89 7D 7E 7F B7 87 8D 8E 8F 90 91 92 DB DC A1 4D .byte $0C, $FF, $94, $9C, $AA, $BE, $A1, $DF, $8A, $8B, $8C, $E1, $E2, $97, $98, $99 ; CPU:$9EF9 PRG:9EF9 0C FF 94 9C AA BE A1 DF 8A 8B 8C E1 E2 97 98 99 .byte $9A, $9B, $DE, $9D, $9E, $9F, $A0, $0C, $FF, $94, $77, $B8, $BD, $C0, $C5, $94 ; CPU:$9F09 PRG:9F09 9A 9B DE 9D 9E 9F A0 0C FF 94 77 B8 BD C0 C5 94 .byte $95, $96, $CC, $CF, $E3, $A2, $A3, $A4, $A5, $A6, $A7, $A8, $A9, $4D, $0C, $FF ; CPU:$9F19 PRG:9F19 95 96 CC CF E3 A2 A3 A4 A5 A6 A7 A8 A9 4D 0C FF .byte $94, $6D, $B9, $BC, $C1, $C4, $C6, $E0, $C9, $CD, $D0, $D2, $D4, $A1, $AB, $AC ; CPU:$9F29 PRG:9F29 94 6D B9 BC C1 C4 C6 E0 C9 CD D0 D2 D4 A1 AB AC .byte $AD, $AE, $AF, $B0, $4D, $0C, $FF, $94, $58, $BA, $BB, $C2, $C3, $C7, $C8, $CA ; CPU:$9F39 PRG:9F39 AD AE AF B0 4D 0C FF 94 58 BA BB C2 C3 C7 C8 CA .byte $CE, $D1, $D3, $D5, $D6, $D7, $D8, $D9, $DA, $B1, $B2, $B3, $77, $FF, $77, $FF ; CPU:$9F49 PRG:9F49 CE D1 D3 D5 D6 D7 D8 D9 DA B1 B2 B3 77 FF 77 FF .byte $43, $FF, $82, $33, $CC, $06, $FF, $82, $A0, $AA, $06, $FF, $83, $7B, $DA, $7F ; CPU:$9F59 PRG:9F59 43 FF 82 33 CC 06 FF 82 A0 AA 06 FF 83 7B DA 7F .byte $05, $FF, $81, $77, $02, $55, $07, $FF, $82, $F7, $FD, $11, $FF, $FF, $FF, $FF ; CPU:$9F69 PRG:9F69 05 FF 81 77 02 55 07 FF 82 F7 FD 11 FF FF FF FF .byte $24, $00, $77, $FF, $0F, $FF, $81, $D9, $06, $DA, $83, $50, $51, $6C, $08, $DA ; CPU:$9F79 PRG:9F79 24 00 77 FF 0F FF 81 D9 06 DA 83 50 51 6C 08 DA .byte $81, $DB, $0D, $FF, $83, $DD, $FE, $E3, $03, $FE, $89, $E3, $4F, $52, $6B, $FE ; CPU:$9F89 PRG:9F89 81 DB 0D FF 83 DD FE E3 03 FE 89 E3 4F 52 6B FE .byte $E3, $84, $9C, $9D, $02, $FE, $82, $E4, $DC, $0D, $FF, $93, $DD, $FE, $E3, $FE ; CPU:$9F99 PRG:9F99 E3 84 9C 9D 02 FE 82 E4 DC 0D FF 93 DD FE E3 FE .byte $28, $3F, $E3, $DF, $53, $6A, $6D, $FE, $85, $9B, $9E, $FE, $E3, $FE, $DC, $0D ; CPU:$9FA9 PRG:9FA9 28 3F E3 DF 53 6A 6D FE 85 9B 9E FE E3 FE DC 0D .byte $FF, $93, $DD, $FE, $E4, $FE, $29, $3E, $E4, $4E, $54, $69, $6E, $D4, $86, $9A ; CPU:$9FB9 PRG:9FB9 FF 93 DD FE E4 FE 29 3E E4 4E 54 69 6E D4 86 9A .byte $9F, $FE, $E3, $FE, $DC, $0D, $FF, $81, $DD, $02, $FE, $90, $E5, $2A, $3D, $FE ; CPU:$9FC9 PRG:9FC9 9F FE E3 FE DC 0D FF 81 DD 02 FE 90 E5 2A 3D FE .byte $4D, $55, $68, $6F, $D3, $FE, $99, $A0, $B6, $B7, $FE, $DC, $0D, $FF, $93, $DD ; CPU:$9FD9 PRG:9FD9 4D 55 68 6F D3 FE 99 A0 B6 B7 FE DC 0D FF 93 DD .byte $12, $13, $27, $2B, $3C, $40, $4C, $FE, $67, $70, $D2, $E3, $98, $A1, $B5, $B8 ; CPU:$9FE9 PRG:9FE9 12 13 27 2B 3C 40 4C FE 67 70 D2 E3 98 A1 B5 B8 .byte $CB, $CC, $0D, $FF, $93, $DD, $11 ; CPU:$9FF9 PRG:9FF9 CB CC 0D FF 93 DD 11 .segment "PRG5" .org $A000 ; ---- data $A000-$A719 (1818 bytes) ---- ; referenced by `lda $A650,x` at $AA17 (operand $A650 falls inside this region) ; referenced by `lda $A650,x` at $AA1E (operand $A650 falls inside this region) .byte $14, $26, $2C, $3B, $41, $4B, $FE, $66, $71, $E0, $FE, $97, $A2, $B4, $B9, $CA ; CPU:$A000 PRG:A000 14 26 2C 3B 41 4B FE 66 71 E0 FE 97 A2 B4 B9 CA .byte $CD, $0D, $FF, $87, $DD, $10, $15, $DE, $2D, $3A, $42, $02, $FE, $8A, $65, $72 ; CPU:$A010 PRG:A010 CD 0D FF 87 DD 10 15 DE 2D 3A 42 02 FE 8A 65 72 .byte $E1, $E3, $96, $A3, $B3, $BA, $C9, $CE, $0D, $FF, $84, $DD, $0F, $16, $25, $02 ; CPU:$A020 PRG:A020 E1 E3 96 A3 B3 BA C9 CE 0D FF 84 DD 0F 16 25 02 .byte $FE, $8D, $E3, $4A, $56, $64, $73, $E2, $FE, $95, $A4, $B2, $BB, $C8, $DC, $0D ; CPU:$A030 PRG:A030 FE 8D E3 4A 56 64 73 E2 FE 95 A4 B2 BB C8 DC 0D .byte $FF, $93, $01, $0E, $17, $24, $2E, $FE, $E4, $49, $57, $63, $74, $83, $87, $94 ; CPU:$A040 PRG:A040 FF 93 01 0E 17 24 2E FE E4 49 57 63 74 83 87 94 .byte $A5, $B1, $BC, $C7, $DC, $0D, $FF, $93, $02, $0D, $18, $23, $2F, $09, $FE, $06 ; CPU:$A050 PRG:A050 A5 B1 BC C7 DC 0D FF 93 02 0D 18 23 2F 09 FE 06 .byte $58, $62, $75, $82, $88, $93, $A6, $B0, $BD, $C6, $DC, $0D, $FF, $93, $03, $0C ; CPU:$A060 PRG:A060 58 62 75 82 88 93 A6 B0 BD C6 DC 0D FF 93 03 0C .byte $19, $22, $30, $39, $07, $FE, $81, $89, $76, $81, $89, $92, $A7, $AF, $BE, $C5 ; CPU:$A070 PRG:A070 19 22 30 39 07 FE 81 89 76 81 89 92 A7 AF BE C5 .byte $CF, $0D, $FF, $93, $04, $0B, $1A, $21, $31, $38, $81, $89, $59, $61, $77, $80 ; CPU:$A080 PRG:A080 CF 0D FF 93 04 0B 1A 21 31 38 81 89 59 61 77 80 .byte $8A, $91, $A8, $AE, $BF, $C4, $D0, $0D, $FF, $93, $05, $0A, $1B, $20, $32, $37 ; CPU:$A090 PRG:A090 8A 91 A8 AE BF C4 D0 0D FF 93 05 0A 1B 20 32 37 .byte $43, $48, $5A, $60, $78, $7F, $8B, $90, $A9, $AD, $C0, $C3, $D1, $0D, $FF, $93 ; CPU:$A0A0 PRG:A0A0 43 48 5A 60 78 7F 8B 90 A9 AD C0 C3 D1 0D FF 93 .byte $7E, $79, $1C, $1F, $33, $36, $44, $47, $5B, $5F, $79, $7E, $8C, $8F, $AA, $AC ; CPU:$A0B0 PRG:A0B0 7E 79 1C 1F 33 36 44 47 5B 5F 79 7E 8C 8F AA AC .byte $C1, $C2, $7E, $0D, $FF, $93, $7E, $79, $FF, $1E, $34, $35, $45, $46, $5C, $5E ; CPU:$A0C0 PRG:A0C0 C1 C2 7E 0D FF 93 7E 79 FF 1E 34 35 45 46 5C 5E .byte $7A, $7D, $8D, $7E, $D6, $D5, $AB, $D7, $7E, $0D, $FF, $83, $D8, $E6, $8E, $02 ; CPU:$A0D0 PRG:A0D0 7A 7D 8D 7E D6 D5 AB D7 7E 0D FF 83 D8 E6 8E 02 .byte $E6, $03, $8E, $85, $E6, $5D, $7B, $7C, $E6, $03, $8E, $02, $E6, $81, $D8, $77 ; CPU:$A0E0 PRG:A0E0 E6 03 8E 85 E6 5D 7B 7C E6 03 8E 02 E6 81 D8 77 .byte $FF, $77, $FF, $44, $FF, $83, $35, $03, $CC, $04, $FF, $81, $DF, $02, $00, $82 ; CPU:$A0F0 PRG:A0F0 FF 77 FF 44 FF 83 35 03 CC 04 FF 81 DF 02 00 82 .byte $54, $DF, $02, $FF, $85, $B3, $6C, $7F, $F3, $A5, $03, $FF, $86, $BB, $AE, $AB ; CPU:$A100 PRG:A100 54 DF 02 FF 85 B3 6C 7F F3 A5 03 FF 86 BB AE AB .byte $65, $AA, $EF, $02, $FF, $82, $FB, $FA, $03, $AA, $81, $EE, $11, $FF, $FF, $FF ; CPU:$A110 PRG:A110 65 AA EF 02 FF 82 FB FA 03 AA 81 EE 11 FF FF FF .byte $FF, $20, $00, $83, $5B, $5C, $5B, $10, $FF, $B1, $5B, $5C, $5B, $5C, $5B, $5C ; CPU:$A120 PRG:A120 FF 20 00 83 5B 5C 5B 10 FF B1 5B 5C 5B 5C 5B 5C .byte $5B, $5C, $5B, $5C, $5B, $5C, $5B, $5D, $5E, $5D, $1F, $0B, $0C, $0A, $0D, $0B ; CPU:$A130 PRG:A130 5B 5C 5B 5C 5B 5C 5B 5D 5E 5D 1F 0B 0C 0A 0D 0B .byte $0C, $0A, $0D, $0B, $0C, $0A, $0D, $0B, $0C, $24, $5D, $5E, $5D, $5E, $5D, $5E ; CPU:$A140 PRG:A140 0C 0A 0D 0B 0C 0A 0D 0B 0C 24 5D 5E 5D 5E 5D 5E .byte $5D, $5E, $5D, $5E, $5D, $5E, $5D, $5B, $5C, $5B, $20, $02, $FF, $82, $00, $09 ; CPU:$A150 PRG:A150 5D 5E 5D 5E 5D 5E 5D 5B 5C 5B 20 02 FF 82 00 09 .byte $02, $FF, $82, $00, $09, $02, $FF, $82, $00, $09, $02, $FF, $92, $21, $5B, $5C ; CPU:$A160 PRG:A160 02 FF 82 00 09 02 FF 82 00 09 02 FF 92 21 5B 5C .byte $5B, $5C, $5B, $5C, $5B, $5C, $5B, $5C, $5B, $5C, $5B, $5D, $5E, $5D, $1F, $0E ; CPU:$A170 PRG:A170 5B 5C 5B 5C 5B 5C 5B 5C 5B 5C 5B 5D 5E 5D 1F 0E .byte $FF, $83, $22, $10, $15, $08, $16, $87, $1C, $1B, $5D, $5B, $5C, $5B, $20, $0E ; CPU:$A180 PRG:A180 FF 83 22 10 15 08 16 87 1C 1B 5D 5B 5C 5B 20 0E .byte $FF, $82, $21, $11, $0A, $FF, $86, $1A, $5B, $5D, $5E, $5D, $1F, $0E, $FF, $82 ; CPU:$A190 PRG:A190 FF 82 21 11 0A FF 86 1A 5B 5D 5E 5D 1F 0E FF 82 .byte $22, $12, $0A, $FF, $86, $19, $5D, $5B, $5C, $5B, $20, $0E, $FF, $83, $21, $13 ; CPU:$A1A0 PRG:A1A0 22 12 0A FF 86 19 5D 5B 5C 5B 20 0E FF 83 21 13 .byte $14, $08, $17, $87, $1D, $18, $5B, $5D, $5E, $5D, $1F, $0E, $FF, $92, $22, $5D ; CPU:$A1B0 PRG:A1B0 14 08 17 87 1D 18 5B 5D 5E 5D 1F 0E FF 92 22 5D .byte $5E, $5D, $5E, $5D, $5E, $5D, $5E, $5D, $5E, $5D, $5E, $5D, $5B, $5C, $5B, $20 ; CPU:$A1C0 PRG:A1C0 5E 5D 5E 5D 5E 5D 5E 5D 5E 5D 5E 5D 5B 5C 5B 20 .byte $0E, $FF, $84, $21, $5B, $10, $15, $06, $16, $88, $1C, $1B, $5E, $5B, $5D, $5E ; CPU:$A1D0 PRG:A1D0 0E FF 84 21 5B 10 15 06 16 88 1C 1B 5E 5B 5D 5E .byte $5D, $1F, $0E, $FF, $88, $22, $5D, $11, $53, $54, $41, $2C, $45, $03, $FF, $87 ; CPU:$A1E0 PRG:A1E0 5D 1F 0E FF 88 22 5D 11 53 54 41 2C 45 03 FF 87 .byte $1A, $5C, $5D, $5B, $5C, $5B, $20, $0E, $FF, $85, $21, $5B, $11, $42, $55, $02 ; CPU:$A1F0 PRG:A1F0 1A 5C 5D 5B 5C 5B 20 0E FF 85 21 5B 11 42 55 02 .byte $42, $82, $4C, $45, $02, $FF, $87, $1A, $5E, $5B, $5D, $5E, $5D, $1F, $0E, $FF ; CPU:$A200 PRG:A200 42 82 4C 45 02 FF 87 1A 5E 5B 5D 5E 5D 1F 0E FF .byte $83, $22, $5D, $11, $04, $FF, $04, $30, $82, $1A, $5C, $02, $5D, $83, $5E, $5D ; CPU:$A210 PRG:A210 83 22 5D 11 04 FF 04 30 82 1A 5C 02 5D 83 5E 5D .byte $20, $0E, $FF, $88, $21, $5D, $11, $53, $43, $4F, $52, $45, $03, $FF, $87, $1A ; CPU:$A220 PRG:A220 20 0E FF 88 21 5D 11 53 43 4F 52 45 03 FF 87 1A .byte $5E, $5D, $5B, $5C, $5B, $1F, $0E, $FF, $83, $22, $5B, $11, $04, $FF, $04, $30 ; CPU:$A230 PRG:A230 5E 5D 5B 5C 5B 1F 0E FF 83 22 5B 11 04 FF 04 30 .byte $87, $1A, $5C, $5B, $5D, $5E, $5D, $20, $0E, $FF, $88, $21, $5D, $11, $54, $4F ; CPU:$A240 PRG:A240 87 1A 5C 5B 5D 5E 5D 20 0E FF 88 21 5D 11 54 4F .byte $54, $41, $4C, $03, $FF, $87, $1A, $5E, $5D, $5B, $5C, $5B, $1F, $0E, $FF, $83 ; CPU:$A250 PRG:A250 54 41 4C 03 FF 87 1A 5E 5D 5B 5C 5B 1F 0E FF 83 .byte $22, $5B, $12, $02, $FF, $06, $30, $87, $19, $5C, $5B, $5D, $5E, $5D, $20, $0E ; CPU:$A260 PRG:A260 22 5B 12 02 FF 06 30 87 19 5C 5B 5D 5E 5D 20 0E .byte $FF, $84, $21, $5D, $13, $14, $06, $17, $88, $1D, $18, $5E, $5D, $5B, $5C, $5B ; CPU:$A270 PRG:A270 FF 84 21 5D 13 14 06 17 88 1D 18 5E 5D 5B 5C 5B .byte $1F, $0E, $FF, $92, $22, $5B, $5C, $5B, $5C, $5B, $5C, $5B, $5C, $5B, $5C, $5B ; CPU:$A280 PRG:A280 1F 0E FF 92 22 5B 5C 5B 5C 5B 5C 5B 5C 5B 5C 5B .byte $5C, $5B, $5D, $5E, $5D, $20, $0E, $FF, $84, $21, $5D, $10, $15, $06, $16, $88 ; CPU:$A290 PRG:A290 5C 5B 5D 5E 5D 20 0E FF 84 21 5D 10 15 06 16 88 .byte $1C, $1B, $5E, $5D, $5B, $5C, $5B, $1F, $0E, $FF, $83, $22, $5B, $11, $08, $FF ; CPU:$A2A0 PRG:A2A0 1C 1B 5E 5D 5B 5C 5B 1F 0E FF 83 22 5B 11 08 FF .byte $87, $1A, $5C, $5B, $5D, $5E, $5D, $20, $0E, $FF, $83, $21, $5D, $11, $08, $FF ; CPU:$A2B0 PRG:A2B0 87 1A 5C 5B 5D 5E 5D 20 0E FF 83 21 5D 11 08 FF .byte $82, $1A, $5E, $02, $5D, $83, $5E, $5D, $1F, $0E, $FF, $83, $22, $5D, $11, $08 ; CPU:$A2C0 PRG:A2C0 82 1A 5E 02 5D 83 5E 5D 1F 0E FF 83 22 5D 11 08 .byte $FF, $87, $1A, $5E, $5D, $5B, $5C, $5B, $20, $0E, $FF, $83, $21, $5B, $11, $08 ; CPU:$A2D0 PRG:A2D0 FF 87 1A 5E 5D 5B 5C 5B 20 0E FF 83 21 5B 11 08 .byte $FF, $87, $1A, $5C, $5B, $5D, $5E, $5D, $1F, $0E, $FF, $83, $22, $5D, $11, $08 ; CPU:$A2E0 PRG:A2E0 FF 87 1A 5C 5B 5D 5E 5D 1F 0E FF 83 22 5D 11 08 .byte $FF, $82, $1A, $5E, $02, $5D, $83, $5E, $5D, $20, $02, $FF, $02, $FF, $02, $FF ; CPU:$A2F0 PRG:A2F0 FF 82 1A 5E 02 5D 83 5E 5D 20 02 FF 02 FF 02 FF .byte $02, $FF, $02, $FF, $02, $FF, $02, $FF, $83, $21, $5D, $11, $08, $FF, $8E, $1A ; CPU:$A300 PRG:A300 02 FF 02 FF 02 FF 02 FF 83 21 5D 11 08 FF 8E 1A .byte $5E, $5D, $5B, $5C, $5B, $1F, $C9, $CA, $FF, $CC, $61, $62, $5F, $02, $FF, $88 ; CPU:$A310 PRG:A310 5E 5D 5B 5C 5B 1F C9 CA FF CC 61 62 5F 02 FF 88 .byte $66, $67, $68, $FF, $79, $22, $5B, $12, $08, $FF, $98, $19, $5C, $5B, $5D, $5E ; CPU:$A320 PRG:A320 66 67 68 FF 79 22 5B 12 08 FF 98 19 5C 5B 5D 5E .byte $5D, $20, $C8, $C7, $C6, $C5, $74, $73, $71, $70, $6C, $6B, $6A, $69, $FF, $60 ; CPU:$A330 PRG:A330 5D 20 C8 C7 C6 C5 74 73 71 70 6C 6B 6A 69 FF 60 .byte $21, $5D, $12, $08, $FF, $99, $19, $5E, $5D, $5B, $5C, $5B, $1F, $FF, $C3, $C4 ; CPU:$A340 PRG:A340 21 5D 12 08 FF 99 19 5E 5D 5B 5C 5B 1F FF C3 C4 .byte $7A, $7B, $7D, $7E, $7F, $80, $81, $83, $85, $5F, $75, $22, $5B, $13, $14, $06 ; CPU:$A350 PRG:A350 7A 7B 7D 7E 7F 80 81 83 85 5F 75 22 5B 13 14 06 .byte $17, $B4, $1D, $18, $5C, $5B, $5D, $5E, $5D, $20, $C1, $9F, $98, $97, $96, $95 ; CPU:$A360 PRG:A360 17 B4 1D 18 5C 5B 5D 5E 5D 20 C1 9F 98 97 96 95 .byte $94, $90, $89, $88, $87, $86, $76, $CB, $21, $5D, $5E, $5D, $5E, $5D, $5E, $5D ; CPU:$A370 PRG:A370 94 90 89 88 87 86 76 CB 21 5D 5E 5D 5E 5D 5E 5D .byte $5E, $5D, $5E, $5D, $5E, $5D, $5B, $5C, $5B, $1F, $A0, $63, $99, $9A, $28, $3A ; CPU:$A380 PRG:A380 5E 5D 5E 5D 5E 5D 5B 5C 5B 1F A0 63 99 9A 28 3A .byte $3B, $3F, $9B, $9C, $9D, $9E, $02, $C2, $8F, $22, $5B, $5C, $5B, $5C, $5B, $5C ; CPU:$A390 PRG:A390 3B 3F 9B 9C 9D 9E 02 C2 8F 22 5B 5C 5B 5C 5B 5C .byte $5B, $5C, $5B, $5C, $5B, $5C, $5B, $55, $03, $F5, $81, $75, $04, $55, $03, $FF ; CPU:$A3A0 PRG:A3A0 5B 5C 5B 5C 5B 5C 5B 55 03 F5 81 75 04 55 03 FF .byte $81, $77, $02, $54, $82, $57, $55, $03, $FF, $81, $77, $04, $55, $03, $FF, $81 ; CPU:$A3B0 PRG:A3B0 81 77 02 54 82 57 55 03 FF 81 77 04 55 03 FF 81 .byte $77, $04, $55, $03, $FF, $81, $77, $04, $55, $03, $FF, $83, $77, $DD, $FF, $02 ; CPU:$A3C0 PRG:A3C0 77 04 55 03 FF 81 77 04 55 03 FF 83 77 DD FF 02 .byte $55, $8C, $FF, $BF, $AA, $66, $5D, $53, $55, $F5, $EF, $BB, $AA, $26, $03, $F5 ; CPU:$A3D0 PRG:A3D0 55 8C FF BF AA 66 5D 53 55 F5 EF BB AA 26 03 F5 .byte $FF, $FF, $FF, $20, $00, $20, $FF, $A2, $24, $1F, $0B, $0C, $0A, $0D, $0B, $0C ; CPU:$A3E0 PRG:A3E0 FF FF FF 20 00 20 FF A2 24 1F 0B 0C 0A 0D 0B 0C .byte $0A, $0D, $0B, $0C, $0A, $0D, $0B, $0C, $24, $1F, $0B, $0C, $0A, $0D, $0B, $0C ; CPU:$A3F0 PRG:A3F0 0A 0D 0B 0C 0A 0D 0B 0C 24 1F 0B 0C 0A 0D 0B 0C .byte $0A, $0D, $0B, $0C, $0A, $0D, $0B, $0C, $21, $20, $02, $FF, $82, $00, $09, $02 ; CPU:$A400 PRG:A400 0A 0D 0B 0C 0A 0D 0B 0C 21 20 02 FF 82 00 09 02 .byte $FF, $82, $00, $09, $02, $FF, $82, $00, $09, $02, $FF, $82, $21, $20, $02, $FF ; CPU:$A410 PRG:A410 FF 82 00 09 02 FF 82 00 09 02 FF 82 21 20 02 FF .byte $82, $00, $09, $02, $FF, $82, $00, $09, $02, $FF, $82, $00, $09, $02, $FF, $82 ; CPU:$A420 PRG:A420 82 00 09 02 FF 82 00 09 02 FF 82 00 09 02 FF 82 .byte $22, $1F, $0E, $FF, $82, $22, $1F, $0E, $FF, $82, $21, $20, $0E, $FF, $82, $21 ; CPU:$A430 PRG:A430 22 1F 0E FF 82 22 1F 0E FF 82 21 20 0E FF 82 21 .byte $20, $0E, $FF, $82, $22, $1F, $0E, $FF, $82, $22, $1F, $0E, $FF, $82, $21, $20 ; CPU:$A440 PRG:A440 20 0E FF 82 22 1F 0E FF 82 22 1F 0E FF 82 21 20 .byte $0E, $FF, $82, $21, $20, $0E, $FF, $82, $22, $1F, $0E, $FF, $82, $22, $1F, $0E ; CPU:$A450 PRG:A450 0E FF 82 21 20 0E FF 82 22 1F 0E FF 82 22 1F 0E .byte $FF, $82, $21, $20, $0E, $FF, $82, $21, $20, $0E, $FF, $82, $22, $1F, $0E, $FF ; CPU:$A460 PRG:A460 FF 82 21 20 0E FF 82 21 20 0E FF 82 22 1F 0E FF .byte $82, $22, $1F, $0E, $FF, $82, $21, $20, $0E, $FF, $82, $21, $20, $0E, $FF, $82 ; CPU:$A470 PRG:A470 82 22 1F 0E FF 82 21 20 0E FF 82 21 20 0E FF 82 .byte $22, $1F, $0E, $FF, $82, $22, $1F, $0E, $FF, $82, $21, $20, $0E, $FF, $82, $21 ; CPU:$A480 PRG:A480 22 1F 0E FF 82 22 1F 0E FF 82 21 20 0E FF 82 21 .byte $20, $0E, $FF, $82, $22, $1F, $0E, $FF, $82, $22, $1F, $0E, $FF, $82, $21, $20 ; CPU:$A490 PRG:A490 20 0E FF 82 22 1F 0E FF 82 22 1F 0E FF 82 21 20 .byte $0E, $FF, $82, $21, $20, $0E, $FF, $82, $22, $1F, $0E, $FF, $82, $22, $1F, $0E ; CPU:$A4A0 PRG:A4A0 0E FF 82 21 20 0E FF 82 22 1F 0E FF 82 22 1F 0E .byte $FF, $82, $21, $20, $0E, $FF, $82, $21, $20, $0E, $FF, $82, $22, $1F, $0E, $FF ; CPU:$A4B0 PRG:A4B0 FF 82 21 20 0E FF 82 21 20 0E FF 82 22 1F 0E FF .byte $82, $22, $1F, $0E, $FF, $82, $21, $20, $0E, $FF, $82, $21, $20, $0E, $FF, $82 ; CPU:$A4C0 PRG:A4C0 82 22 1F 0E FF 82 21 20 0E FF 82 21 20 0E FF 82 .byte $22, $1F, $0E, $FF, $82, $22, $1F, $0E, $FF, $82, $21, $20, $0E, $FF, $82, $21 ; CPU:$A4D0 PRG:A4D0 22 1F 0E FF 82 22 1F 0E FF 82 21 20 0E FF 82 21 .byte $20, $0E, $FF, $82, $22, $1F, $0E, $FF, $82, $22, $1F, $0E, $FF, $82, $21, $20 ; CPU:$A4E0 PRG:A4E0 20 0E FF 82 22 1F 0E FF 82 22 1F 0E FF 82 21 20 .byte $0E, $FF, $82, $21, $20, $0E, $FF, $82, $22, $1F, $0E, $FF, $82, $22, $1F, $0E ; CPU:$A4F0 PRG:A4F0 0E FF 82 21 20 0E FF 82 22 1F 0E FF 82 22 1F 0E .byte $FF, $82, $21, $20, $0E, $FF, $82, $21, $20, $0E, $FF, $82, $22, $42, $04, $30 ; CPU:$A500 PRG:A500 FF 82 21 20 0E FF 82 21 20 0E FF 82 22 42 04 30 .byte $03, $FF, $81, $54, $06, $30, $82, $22, $42, $04, $30, $03, $FF, $81, $54, $06 ; CPU:$A510 PRG:A510 03 FF 81 54 06 30 82 22 42 04 30 03 FF 81 54 06 .byte $30, $82, $21, $53, $04, $30, $0A, $FF, $82, $21, $53, $04, $30, $0A, $FF, $82 ; CPU:$A520 PRG:A520 30 82 21 53 04 30 0A FF 82 21 53 04 30 0A FF 82 .byte $22, $1F, $0E, $FF, $82, $22, $1F, $0E, $FF, $82, $21, $20, $0E, $FF, $82, $21 ; CPU:$A530 PRG:A530 22 1F 0E FF 82 22 1F 0E FF 82 21 20 0E FF 82 21 .byte $20, $0E, $FF, $82, $22, $1F, $0E, $FF, $82, $22, $1F, $0E, $FF, $81, $D5, $03 ; CPU:$A540 PRG:A540 20 0E FF 82 22 1F 0E FF 82 22 1F 0E FF 81 D5 03 .byte $F5, $81, $D5, $03, $F5, $81, $DD, $03, $FF, $81, $DD, $03, $FF, $81, $DD, $03 ; CPU:$A550 PRG:A550 F5 81 D5 03 F5 81 DD 03 FF 81 DD 03 FF 81 DD 03 .byte $FF, $81, $DD, $03, $FF, $81, $DD, $03, $FF, $81, $DD, $03, $FF, $81, $DD, $03 ; CPU:$A560 PRG:A560 FF 81 DD 03 FF 81 DD 03 FF 81 DD 03 FF 81 DD 03 .byte $FF, $81, $DD, $03, $FF, $81, $DD, $03, $FF, $81, $DD, $03, $FF, $82, $55, $D5 ; CPU:$A570 PRG:A570 FF 81 DD 03 FF 81 DD 03 FF 81 DD 03 FF 82 55 D5 .byte $02, $F5, $82, $55, $D5, $02, $F5, $81, $FD, $03, $FF, $81, $FD, $03, $FF, $FF ; CPU:$A580 PRG:A580 02 F5 82 55 D5 02 F5 81 FD 03 FF 81 FD 03 FF FF .byte $FF, $FF, $24, $00, $77, $FF, $2E, $FF, $8F, $47, $41, $4D, $45, $FF, $54, $45 ; CPU:$A590 PRG:A590 FF FF 24 00 77 FF 2E FF 8F 47 41 4D 45 FF 54 45 .byte $53, $54, $49, $4E, $47, $FF, $42, $59, $11, $FF, $86, $46, $52, $45, $44, $FF ; CPU:$A5A0 PRG:A5A0 53 54 49 4E 47 FF 42 59 11 FF 86 46 52 45 44 FF .byte $48, $02, $4F, $81, $54, $17, $FF, $8C, $44, $45, $42, $4F, $52, $41, $48, $FF ; CPU:$A5B0 PRG:A5B0 48 02 4F 81 54 17 FF 8C 44 45 42 4F 52 41 48 FF .byte $52, $4F, $53, $45, $54, $FF, $8C, $53, $54, $4F, $52, $59, $FF, $41, $4E, $44 ; CPU:$A5C0 PRG:A5C0 52 4F 53 45 54 FF 8C 53 54 4F 52 59 FF 41 4E 44 .byte $FF, $54, $57, $02, $45, $87, $4B, $49, $4E, $47, $FF, $42, $59, $0B, $FF, $87 ; CPU:$A5D0 PRG:A5D0 FF 54 57 02 45 87 4B 49 4E 47 FF 42 59 0B FF 87 .byte $50, $48, $49, $4C, $FF, $4D, $49, $02, $4B, $85, $45, $4C, $53, $4F, $4E, $52 ; CPU:$A5E0 PRG:A5E0 50 48 49 4C FF 4D 49 02 4B 85 45 4C 53 4F 4E 52 .byte $FF, $97, $4F, $52, $49, $47, $49, $4E, $41, $4C, $FF, $4D, $45, $52, $4D, $41 ; CPU:$A5F0 PRG:A5F0 FF 97 4F 52 49 47 49 4E 41 4C FF 4D 45 52 4D 41 .byte $49, $44, $FF, $41, $52, $54, $FF, $42, $59, $09, $FF, $88, $4D, $41, $52, $54 ; CPU:$A600 PRG:A600 49 44 FF 41 52 54 FF 42 59 09 FF 88 4D 41 52 54 .byte $49, $4E, $FF, $47, $02, $45, $56, $FF, $91, $53, $50, $45, $43, $49, $41, $4C ; CPU:$A610 PRG:A610 49 4E FF 47 02 45 56 FF 91 53 50 45 43 49 41 4C .byte $FF, $54, $48, $41, $4E, $4B, $53, $FF, $54, $4F, $0F, $FF, $98, $52, $49, $43 ; CPU:$A620 PRG:A620 FF 54 48 41 4E 4B 53 FF 54 4F 0F FF 98 52 49 43 .byte $48, $41, $52, $44, $FF, $FE, $FF, $50, $41, $54, $52, $49, $43, $49, $41, $FF ; CPU:$A630 PRG:A630 48 41 52 44 FF FE FF 50 41 54 52 49 43 49 41 FF .byte $46, $52, $49, $43, $4B, $77, $FF, $77, $FF, $77, $FF, $1E, $FF, $FF, $FF, $FF ; CPU:$A640 PRG:A640 46 52 49 43 4B 77 FF 77 FF 77 FF 1E FF FF FF FF .byte $00, $00, $B0, $06, $50, $06, $F4, $05, $A0, $05, $50, $05, $00, $05, $B8, $04 ; CPU:$A650 PRG:A650 00 00 B0 06 50 06 F4 05 A0 05 50 05 00 05 B8 04 .byte $78, $04, $38, $04, $F8, $03, $C0, $03, $88, $03, $58, $03, $28, $03, $FA, $02 ; CPU:$A660 PRG:A660 78 04 38 04 F8 03 C0 03 88 03 58 03 28 03 FA 02 .byte $D0, $02, $A8, $02, $80, $02, $5C, $02, $3C, $02, $1C, $02, $FC, $01, $E0, $01 ; CPU:$A670 PRG:A670 D0 02 A8 02 80 02 5C 02 3C 02 1C 02 FC 01 E0 01 .byte $C4, $01, $AC, $01, $94, $01, $7D, $01, $68, $01, $54, $01, $40, $01, $2E, $01 ; CPU:$A680 PRG:A680 C4 01 AC 01 94 01 7D 01 68 01 54 01 40 01 2E 01 .byte $1E, $01, $0E, $01, $FE, $00, $F0, $00, $E2, $00, $D6, $00, $CA, $00, $BE, $00 ; CPU:$A690 PRG:A690 1E 01 0E 01 FE 00 F0 00 E2 00 D6 00 CA 00 BE 00 .byte $B4, $00, $AA, $00, $A0, $00, $97, $00, $8F, $00, $87, $00, $7F, $00, $78, $00 ; CPU:$A6A0 PRG:A6A0 B4 00 AA 00 A0 00 97 00 8F 00 87 00 7F 00 78 00 .byte $71, $00, $6B, $00, $65, $00, $5F, $00, $5A, $00, $55, $00, $50, $00, $4B, $00 ; CPU:$A6B0 PRG:A6B0 71 00 6B 00 65 00 5F 00 5A 00 55 00 50 00 4B 00 .byte $47, $00, $43, $00, $3F, $00, $3C, $00, $38, $00, $00, $00, $0C, $00, $0C, $00 ; CPU:$A6C0 PRG:A6C0 47 00 43 00 3F 00 3C 00 38 00 00 00 0C 00 0C 00 .byte $0C, $00, $0C, $00, $0D, $00, $0E, $00, $1F, $00, $00, $00, $01, $00, $02, $00 ; CPU:$A6D0 PRG:A6D0 0C 00 0C 00 0D 00 0E 00 1F 00 00 00 01 00 02 00 .byte $03, $00, $04, $00, $05, $00, $06, $00, $07, $00, $08, $00, $09, $00, $0A, $00 ; CPU:$A6E0 PRG:A6E0 03 00 04 00 05 00 06 00 07 00 08 00 09 00 0A 00 .byte $0B, $00, $0C, $00, $0D, $00, $0E, $00, $0F, $00, $80, $00, $81, $00, $82, $00 ; CPU:$A6F0 PRG:A6F0 0B 00 0C 00 0D 00 0E 00 0F 00 80 00 81 00 82 00 .byte $83, $00, $84, $00, $85, $00, $86, $00, $87, $00, $88, $00, $89, $00, $8A, $00 ; CPU:$A700 PRG:A700 83 00 84 00 85 00 86 00 87 00 88 00 89 00 8A 00 .byte $8B, $00, $8C, $00, $8D, $00, $8E, $00, $8F, $00 ; CPU:$A710 PRG:A710 8B 00 8C 00 8D 00 8E 00 8F 00 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Sub_OnZero ; Global: Branch target inside Bank5_Sub: taken when the tested value is zero. ; Local: Part of Bank5_Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Sub_OnZero: lda #$00 ; CPU:$A71A PRG:A71A A9 00 sta APUSTATUS ; CPU:$A71C PRG:A71C 8D 15 40 sta $0700 ; CPU:$A71F PRG:A71F 8D 00 07 sta $07A1 ; CPU:$A722 PRG:A722 8D A1 07 rts ; CPU:$A725 PRG:A725 60 ; ----------------------------------------------------------------------------- ; Routine: Bank5_UpdateSound ; Global: Updates the sound engine of the second half. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_UpdateSound: lda ZpDD ; CPU:$A726 PRG:A726 A5 DD beq Bank5_Sub_OnZero ; CPU:$A728 PRG:A728 F0 F0 lda ZpDE ; CPU:$A72A PRG:A72A A5 DE asl a ; CPU:$A72C PRG:A72C 0A tax ; CPU:$A72D PRG:A72D AA lda $AB5B,x ; CPU:$A72E PRG:A72E BD 5B AB sta ZpDF ; CPU:$A731 PRG:A731 85 DF lda $AB5C,x ; CPU:$A733 PRG:A733 BD 5C AB sta ZpE0 ; CPU:$A736 PRG:A736 85 E0 ldx ZpDF ; CPU:$A738 PRG:A738 A6 DF ldy ZpE0 ; CPU:$A73A PRG:A73A A4 E0 jsr Bank5_Sub_A75B ; CPU:$A73C PRG:A73C 20 5B A7 rts ; CPU:$A73F PRG:A73F 60 ; ---- data $A740-$A75A (27 bytes) ---- .byte $A9, $00, $8D, $A1, $07, $A5, $DE, $0A, $AA, $BD, $5B, $AB, $85, $DF, $BD, $5C ; CPU:$A740 PRG:A740 A9 00 8D A1 07 A5 DE 0A AA BD 5B AB 85 DF BD 5C .byte $AB, $85, $E0, $A6, $DF, $A4, $E0, $20, $A9, $AA, $60 ; CPU:$A750 PRG:A750 AB 85 E0 A6 DF A4 E0 20 A9 AA 60 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Sub_A75B ; Global: Branch target inside Bank5_Sub: taken when A75B. ; Local: Part of Bank5_Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Sub_A75B: lda #$00 ; CPU:$A75B PRG:A75B A9 00 sta APUSTATUS ; CPU:$A75D PRG:A75D 8D 15 40 stx ZpD7 ; CPU:$A760 PRG:A760 86 D7 sty ZpD8 ; CPU:$A762 PRG:A762 84 D8 ldx #$3B ; CPU:$A764 PRG:A764 A2 3B lda #$00 ; CPU:$A766 PRG:A766 A9 00 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_UpdateSound_OnNonnegative ; Global: Branch target inside Bank5_Bank5_UpdateSound: taken when the tested value is not negative. ; Local: Part of Bank5_Bank5_UpdateSound. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_UpdateSound_OnNonnegative: sta $0711,x ; CPU:$A768 PRG:A768 9D 11 07 dex ; CPU:$A76B PRG:A76B CA bpl Bank5_Bank5_UpdateSound_OnNonnegative ; CPU:$A76C PRG:A76C 10 FA sta ZpD6 ; CPU:$A76E PRG:A76E 85 D6 ldy #$08 ; CPU:$A770 PRG:A770 A0 08 lda (ZpD7),y ; CPU:$A772 PRG:A772 B1 D7 sta $0702 ; CPU:$A774 PRG:A774 8D 02 07 sta $0701 ; CPU:$A777 PRG:A777 8D 01 07 iny ; CPU:$A77A PRG:A77A C8 lda (ZpD7),y ; CPU:$A77B PRG:A77B B1 D7 sta $0700 ; CPU:$A77D PRG:A77D 8D 00 07 sta APUSTATUS ; CPU:$A780 PRG:A780 8D 15 40 rts ; CPU:$A783 PRG:A783 60 ; ----------------------------------------------------------------------------- ; Routine: Bank5_ReadSoundTable ; Global: Reads the sound table of the second half. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_ReadSoundTable: ldy #$00 ; CPU:$A784 PRG:A784 A0 00 lda (ZpD7),y ; CPU:$A786 PRG:A786 B1 D7 sta ZpD9 ; CPU:$A788 PRG:A788 85 D9 iny ; CPU:$A78A PRG:A78A C8 lda (ZpD7),y ; CPU:$A78B PRG:A78B B1 D7 sta ZpDA ; CPU:$A78D PRG:A78D 85 DA Sub_A78F: lda #$01 ; CPU:$A78F PRG:A78F A9 01 sta $0707 ; CPU:$A791 PRG:A791 8D 07 07 lda #$00 ; CPU:$A794 PRG:A794 A9 00 sta $0708 ; CPU:$A796 PRG:A796 8D 08 07 jsr Bank5_Sub_A7FF ; CPU:$A799 PRG:A799 20 FF A7 ldy #$02 ; CPU:$A79C PRG:A79C A0 02 lda (ZpD7),y ; CPU:$A79E PRG:A79E B1 D7 sta ZpD9 ; CPU:$A7A0 PRG:A7A0 85 D9 iny ; CPU:$A7A2 PRG:A7A2 C8 lda (ZpD7),y ; CPU:$A7A3 PRG:A7A3 B1 D7 sta ZpDA ; CPU:$A7A5 PRG:A7A5 85 DA lda #$02 ; CPU:$A7A7 PRG:A7A7 A9 02 sta $0707 ; CPU:$A7A9 PRG:A7A9 8D 07 07 lda #$01 ; CPU:$A7AC PRG:A7AC A9 01 sta $0708 ; CPU:$A7AE PRG:A7AE 8D 08 07 jsr Bank5_Sub_A7FF ; CPU:$A7B1 PRG:A7B1 20 FF A7 ldy #$04 ; CPU:$A7B4 PRG:A7B4 A0 04 lda (ZpD7),y ; CPU:$A7B6 PRG:A7B6 B1 D7 sta ZpD9 ; CPU:$A7B8 PRG:A7B8 85 D9 iny ; CPU:$A7BA PRG:A7BA C8 lda (ZpD7),y ; CPU:$A7BB PRG:A7BB B1 D7 sta ZpDA ; CPU:$A7BD PRG:A7BD 85 DA lda #$04 ; CPU:$A7BF PRG:A7BF A9 04 sta $0707 ; CPU:$A7C1 PRG:A7C1 8D 07 07 lda #$02 ; CPU:$A7C4 PRG:A7C4 A9 02 sta $0708 ; CPU:$A7C6 PRG:A7C6 8D 08 07 jsr Bank5_Sub_A7FF ; CPU:$A7C9 PRG:A7C9 20 FF A7 ldy #$06 ; CPU:$A7CC PRG:A7CC A0 06 lda (ZpD7),y ; CPU:$A7CE PRG:A7CE B1 D7 sta ZpD9 ; CPU:$A7D0 PRG:A7D0 85 D9 iny ; CPU:$A7D2 PRG:A7D2 C8 lda (ZpD7),y ; CPU:$A7D3 PRG:A7D3 B1 D7 sta ZpDA ; CPU:$A7D5 PRG:A7D5 85 DA lda #$08 ; CPU:$A7D7 PRG:A7D7 A9 08 sta $0707 ; CPU:$A7D9 PRG:A7D9 8D 07 07 lda #$03 ; CPU:$A7DC PRG:A7DC A9 03 sta $0708 ; CPU:$A7DE PRG:A7DE 8D 08 07 jsr Bank5_Sub_A7FF ; CPU:$A7E1 PRG:A7E1 20 FF A7 lda $0701 ; CPU:$A7E4 PRG:A7E4 AD 01 07 bne Bank5_Bank5_ReadSoundTable_Loop ; CPU:$A7E7 PRG:A7E7 D0 12 dec $0711 ; CPU:$A7E9 PRG:A7E9 CE 11 07 dec $0712 ; CPU:$A7EC PRG:A7EC CE 12 07 dec $0713 ; CPU:$A7EF PRG:A7EF CE 13 07 dec $0714 ; CPU:$A7F2 PRG:A7F2 CE 14 07 lda $0702 ; CPU:$A7F5 PRG:A7F5 AD 02 07 sta $0701 ; CPU:$A7F8 PRG:A7F8 8D 01 07 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when the loop repeats. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop: dec $0701 ; CPU:$A7FB PRG:A7FB CE 01 07 rts ; CPU:$A7FE PRG:A7FE 60 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Sub_A7FF ; Global: Branch target inside Bank5_Sub: taken when A7FF. ; Local: Part of Bank5_Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Sub_A7FF: lda ZpD6 ; CPU:$A7FF PRG:A7FF A5 D6 and $0707 ; CPU:$A801 PRG:A801 2D 07 07 beq Bank5_Bank5_ReadSoundTable_Loop4 ; CPU:$A804 PRG:A804 F0 22 lda APUSTATUS ; CPU:$A806 PRG:A806 AD 15 40 and $0707 ; CPU:$A809 PRG:A809 2D 07 07 bne Bank5_Bank5_ReadSoundTable_Loop2 ; CPU:$A80C PRG:A80C D0 09 lda $0707 ; CPU:$A80E PRG:A80E AD 07 07 eor #$FF ; CPU:$A811 PRG:A811 49 FF and ZpD6 ; CPU:$A813 PRG:A813 25 D6 sta ZpD6 ; CPU:$A815 PRG:A815 85 D6 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop2 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop2. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop2: lda $0700 ; CPU:$A817 PRG:A817 AD 00 07 and $0707 ; CPU:$A81A PRG:A81A 2D 07 07 beq Bank5_Bank5_ReadSoundTable_Loop3 ; CPU:$A81D PRG:A81D F0 08 ldx $0708 ; CPU:$A81F PRG:A81F AE 08 07 lda $0711,x ; CPU:$A822 PRG:A822 BD 11 07 beq Bank5_Bank5_ReadSoundTable_Loop6 ; CPU:$A825 PRG:A825 F0 12 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop3 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop3. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop3: rts ; CPU:$A827 PRG:A827 60 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop4 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop4. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop4: lda $0700 ; CPU:$A828 PRG:A828 AD 00 07 and $0707 ; CPU:$A82B PRG:A82B 2D 07 07 bne Bank5_Bank5_ReadSoundTable_Loop5 ; CPU:$A82E PRG:A82E D0 01 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_OnZero ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when the tested value is zero. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_OnZero: rts ; CPU:$A830 PRG:A830 60 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop5 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop5. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop5: ldx $0708 ; CPU:$A831 PRG:A831 AE 08 07 lda $0711,x ; CPU:$A834 PRG:A834 BD 11 07 bne Bank5_Bank5_ReadSoundTable_Loop7 ; CPU:$A837 PRG:A837 D0 03 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop6 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop6. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop6: jmp Bank5_Bank5_ReadSoundTable_OnZero2 ; CPU:$A839 PRG:A839 4C 13 A9 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop7 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop7. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop7: cpx #$02 ; CPU:$A83C PRG:A83C E0 02 beq Bank5_Bank5_ReadSoundTable_OnZero ; CPU:$A83E PRG:A83E F0 F0 ldy $071D,x ; CPU:$A840 PRG:A840 BC 1D 07 beq Bank5_Bank5_ReadSoundTable_OnZero ; CPU:$A843 PRG:A843 F0 EB dec $0741,x ; CPU:$A845 PRG:A845 DE 41 07 bne Bank5_Bank5_ReadSoundTable_OnZero ; CPU:$A848 PRG:A848 D0 E6 dey ; CPU:$A84A PRG:A84A 88 beq Bank5_Bank5_ReadSoundTable_Loop8 ; CPU:$A84B PRG:A84B F0 0B dey ; CPU:$A84D PRG:A84D 88 beq Bank5_Bank5_ReadSoundTable_Loop10 ; CPU:$A84E PRG:A84E F0 2B dey ; CPU:$A850 PRG:A850 88 beq Bank5_Bank5_ReadSoundTable_Loop12 ; CPU:$A851 PRG:A851 F0 55 dey ; CPU:$A853 PRG:A853 88 beq Bank5_Bank5_ReadSoundTable_Loop13 ; CPU:$A854 PRG:A854 F0 59 bne Bank5_Bank5_ReadSoundTable_OnZero ; CPU:$A856 PRG:A856 D0 D8 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop8 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop8. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop8: lda $070D,x ; CPU:$A858 PRG:A858 BD 0D 07 clc ; CPU:$A85B PRG:A85B 18 adc $0721,x ; CPU:$A85C PRG:A85C 7D 21 07 sta $0721,x ; CPU:$A85F PRG:A85F 9D 21 07 lda #$0F ; CPU:$A862 PRG:A862 A9 0F cmp $0721,x ; CPU:$A864 PRG:A864 DD 21 07 beq Bank5_Bank5_ReadSoundTable_Loop15 ; CPU:$A867 PRG:A867 F0 66 bcs Bank5_Bank5_ReadSoundTable_Loop9 ; CPU:$A869 PRG:A869 B0 06 sta $0721,x ; CPU:$A86B PRG:A86B 9D 21 07 jmp Bank5_Bank5_ReadSoundTable_Loop15 ; CPU:$A86E PRG:A86E 4C CF A8 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop9 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop9. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop9: lda $072D,x ; CPU:$A871 PRG:A871 BD 2D 07 and #$0F ; CPU:$A874 PRG:A874 29 0F sta $0741,x ; CPU:$A876 PRG:A876 9D 41 07 bne Bank5_Bank5_ReadSoundTable_Loop17 ; CPU:$A879 PRG:A879 D0 61 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop10 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop10. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop10: lda $0721,x ; CPU:$A87B PRG:A87B BD 21 07 sec ; CPU:$A87E PRG:A87E 38 sbc $070D,x ; CPU:$A87F PRG:A87F FD 0D 07 sta $0721,x ; CPU:$A882 PRG:A882 9D 21 07 bcs Bank5_Bank5_ReadSoundTable_Loop11 ; CPU:$A885 PRG:A885 B0 0B ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_OnCarryClear ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when the addition or subtraction did not carry. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_OnCarryClear: lda $073D,x ; CPU:$A887 PRG:A887 BD 3D 07 and #$0F ; CPU:$A88A PRG:A88A 29 0F sta $0721,x ; CPU:$A88C PRG:A88C 9D 21 07 jmp Bank5_Bank5_ReadSoundTable_Loop15 ; CPU:$A88F PRG:A88F 4C CF A8 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop11 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop11. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop11: lda $073D,x ; CPU:$A892 PRG:A892 BD 3D 07 and #$0F ; CPU:$A895 PRG:A895 29 0F cmp $0721,x ; CPU:$A897 PRG:A897 DD 21 07 beq Bank5_Bank5_ReadSoundTable_Loop15 ; CPU:$A89A PRG:A89A F0 33 bcc Bank5_Bank5_ReadSoundTable_OnCarryClear ; CPU:$A89C PRG:A89C 90 E9 lda $0731,x ; CPU:$A89E PRG:A89E BD 31 07 and #$0F ; CPU:$A8A1 PRG:A8A1 29 0F sta $0741,x ; CPU:$A8A3 PRG:A8A3 9D 41 07 bne Bank5_Bank5_ReadSoundTable_Loop17 ; CPU:$A8A6 PRG:A8A6 D0 34 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop12 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop12. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop12: lda $0741,x ; CPU:$A8A8 PRG:A8A8 BD 41 07 beq Bank5_Bank5_ReadSoundTable_Loop15 ; CPU:$A8AB PRG:A8AB F0 22 bne Bank5_Bank5_ReadSoundTable_Loop17 ; CPU:$A8AD PRG:A8AD D0 2D ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop13 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop13. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop13: lda $0721,x ; CPU:$A8AF PRG:A8AF BD 21 07 sec ; CPU:$A8B2 PRG:A8B2 38 sbc $070D,x ; CPU:$A8B3 PRG:A8B3 FD 0D 07 sta $0721,x ; CPU:$A8B6 PRG:A8B6 9D 21 07 bcc Bank5_Bank5_ReadSoundTable_Loop14 ; CPU:$A8B9 PRG:A8B9 90 0C beq Bank5_Bank5_ReadSoundTable_Loop14 ; CPU:$A8BB PRG:A8BB F0 0A lda $0739,x ; CPU:$A8BD PRG:A8BD BD 39 07 and #$0F ; CPU:$A8C0 PRG:A8C0 29 0F sta $0741,x ; CPU:$A8C2 PRG:A8C2 9D 41 07 bne Bank5_Bank5_ReadSoundTable_Loop17 ; CPU:$A8C5 PRG:A8C5 D0 15 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop14 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop14. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop14: ldy #$00 ; CPU:$A8C7 PRG:A8C7 A0 00 tya ; CPU:$A8C9 PRG:A8C9 98 sta $0721,x ; CPU:$A8CA PRG:A8CA 9D 21 07 beq Bank5_Bank5_ReadSoundTable_Loop16 ; CPU:$A8CD PRG:A8CD F0 06 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop15 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop15. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop15: ldy $071D,x ; CPU:$A8CF PRG:A8CF BC 1D 07 jsr Bank5_Bank5_ReadSoundTable_OnZero4 ; CPU:$A8D2 PRG:A8D2 20 54 AA ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop16 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop16. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop16: sta $0741,x ; CPU:$A8D5 PRG:A8D5 9D 41 07 tya ; CPU:$A8D8 PRG:A8D8 98 sta $071D,x ; CPU:$A8D9 PRG:A8D9 9D 1D 07 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop17 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop17. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop17: lda $0721,x ; CPU:$A8DC PRG:A8DC BD 21 07 pha ; CPU:$A8DF PRG:A8DF 48 lda $0709,x ; CPU:$A8E0 PRG:A8E0 BD 09 07 pha ; CPU:$A8E3 PRG:A8E3 48 ldy #$05 ; CPU:$A8E4 PRG:A8E4 A0 05 lda #$00 ; CPU:$A8E6 PRG:A8E6 A9 00 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_OnNonzero ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when the tested value is not zero. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_OnNonzero: lsr $0709,x ; CPU:$A8E8 PRG:A8E8 5E 09 07 bcc Bank5_Bank5_ReadSoundTable_Loop18 ; CPU:$A8EB PRG:A8EB 90 04 clc ; CPU:$A8ED PRG:A8ED 18 adc $0721,x ; CPU:$A8EE PRG:A8EE 7D 21 07 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop18 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop18. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop18: asl $0721,x ; CPU:$A8F1 PRG:A8F1 1E 21 07 dey ; CPU:$A8F4 PRG:A8F4 88 bne Bank5_Bank5_ReadSoundTable_OnNonzero ; CPU:$A8F5 PRG:A8F5 D0 F1 tay ; CPU:$A8F7 PRG:A8F7 A8 pla ; CPU:$A8F8 PRG:A8F8 68 sta $0709,x ; CPU:$A8F9 PRG:A8F9 9D 09 07 pla ; CPU:$A8FC PRG:A8FC 68 sta $0721,x ; CPU:$A8FD PRG:A8FD 9D 21 07 tya ; CPU:$A900 PRG:A900 98 lsr a ; CPU:$A901 PRG:A901 4A lsr a ; CPU:$A902 PRG:A902 4A lsr a ; CPU:$A903 PRG:A903 4A lsr a ; CPU:$A904 PRG:A904 4A ora $0729,x ; CPU:$A905 PRG:A905 1D 29 07 pha ; CPU:$A908 PRG:A908 48 txa ; CPU:$A909 PRG:A909 8A clc ; CPU:$A90A PRG:A90A 18 rol a ; CPU:$A90B PRG:A90B 2A rol a ; CPU:$A90C PRG:A90C 2A tay ; CPU:$A90D PRG:A90D A8 pla ; CPU:$A90E PRG:A90E 68 sta APUPULSE1CTRL,y ; CPU:$A90F PRG:A90F 99 00 40 rts ; CPU:$A912 PRG:A912 60 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_OnZero2 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when OnZero2. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_OnZero2: lda $0715,x ; CPU:$A913 PRG:A913 BD 15 07 clc ; CPU:$A916 PRG:A916 18 adc ZpD9 ; CPU:$A917 PRG:A917 65 D9 sta ZpDB ; CPU:$A919 PRG:A919 85 DB lda $0719,x ; CPU:$A91B PRG:A91B BD 19 07 adc ZpDA ; CPU:$A91E PRG:A91E 65 DA sta ZpDC ; CPU:$A920 PRG:A920 85 DC ldy #$00 ; CPU:$A922 PRG:A922 A0 00 lda (ZpDB),y ; CPU:$A924 PRG:A924 B1 DB bmi Bank5_Bank5_ReadSoundTable_Loop19 ; CPU:$A926 PRG:A926 30 03 jmp Bank5_Sub_A9E9 ; CPU:$A928 PRG:A928 4C E9 A9 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop19 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop19. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop19: cmp #$88 ; CPU:$A92B PRG:A92B C9 88 bcs Bank5_Bank5_ReadSoundTable_Loop20 ; CPU:$A92D PRG:A92D B0 03 jmp Bank5_Sub_A9C3 ; CPU:$A92F PRG:A92F 4C C3 A9 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop20 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop20. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop20: bne Bank5_Bank5_ReadSoundTable_Loop21 ; CPU:$A932 PRG:A932 D0 0A lda #$00 ; CPU:$A934 PRG:A934 A9 00 sta $0715,x ; CPU:$A936 PRG:A936 9D 15 07 sta $0719,x ; CPU:$A939 PRG:A939 9D 19 07 beq Bank5_Bank5_ReadSoundTable_OnZero2 ; CPU:$A93C PRG:A93C F0 D5 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop21 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop21. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop21: cmp #$89 ; CPU:$A93E PRG:A93E C9 89 bne Bank5_Bank5_ReadSoundTable_Loop22 ; CPU:$A940 PRG:A940 D0 12 lda $0707 ; CPU:$A942 PRG:A942 AD 07 07 eor #$FF ; CPU:$A945 PRG:A945 49 FF and $0700 ; CPU:$A947 PRG:A947 2D 00 07 sta APUSTATUS ; CPU:$A94A PRG:A94A 8D 15 40 sta $0700 ; CPU:$A94D PRG:A94D 8D 00 07 jsr Bank5_Sub_AA7A ; CPU:$A950 PRG:A950 20 7A AA rts ; CPU:$A953 PRG:A953 60 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop22 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop22. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop22: cmp #$8A ; CPU:$A954 PRG:A954 C9 8A bne Bank5_Bank5_ReadSoundTable_Loop23 ; CPU:$A956 PRG:A956 D0 1E lda $0745,x ; CPU:$A958 PRG:A958 BD 45 07 ora $0749,x ; CPU:$A95B PRG:A95B 1D 49 07 beq Bank5_Bank5_ReadSoundTable_Loop28 ; CPU:$A95E PRG:A95E F0 75 lda $0745,x ; CPU:$A960 PRG:A960 BD 45 07 sta $0715,x ; CPU:$A963 PRG:A963 9D 15 07 lda $0749,x ; CPU:$A966 PRG:A966 BD 49 07 sta $0719,x ; CPU:$A969 PRG:A969 9D 19 07 lda #$00 ; CPU:$A96C PRG:A96C A9 00 sta $0745,x ; CPU:$A96E PRG:A96E 9D 45 07 sta $0749,x ; CPU:$A971 PRG:A971 9D 49 07 beq Bank5_Bank5_ReadSoundTable_OnZero2 ; CPU:$A974 PRG:A974 F0 9D ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop23 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop23. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop23: cmp #$8B ; CPU:$A976 PRG:A976 C9 8B bne Bank5_Bank5_ReadSoundTable_Loop24 ; CPU:$A978 PRG:A978 D0 0F iny ; CPU:$A97A PRG:A97A C8 lda (ZpDB),y ; CPU:$A97B PRG:A97B B1 DB sta $0745,x ; CPU:$A97D PRG:A97D 9D 45 07 iny ; CPU:$A980 PRG:A980 C8 lda (ZpDB),y ; CPU:$A981 PRG:A981 B1 DB sta $0749,x ; CPU:$A983 PRG:A983 9D 49 07 jmp Bank5_Bank5_ReadSoundTable_Loop28 ; CPU:$A986 PRG:A986 4C D5 A9 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop24 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop24. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop24: cmp #$8C ; CPU:$A989 PRG:A989 C9 8C bne Bank5_Bank5_ReadSoundTable_Loop25 ; CPU:$A98B PRG:A98B D0 0F iny ; CPU:$A98D PRG:A98D C8 lda (ZpDB),y ; CPU:$A98E PRG:A98E B1 DB sta $0715,x ; CPU:$A990 PRG:A990 9D 15 07 iny ; CPU:$A993 PRG:A993 C8 lda (ZpDB),y ; CPU:$A994 PRG:A994 B1 DB sta $0719,x ; CPU:$A996 PRG:A996 9D 19 07 jmp Bank5_Bank5_ReadSoundTable_OnZero2 ; CPU:$A999 PRG:A999 4C 13 A9 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop25 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop25. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop25: cmp #$8D ; CPU:$A99C PRG:A99C C9 8D bne Bank5_Bank5_ReadSoundTable_Loop26 ; CPU:$A99E PRG:A99E D0 09 iny ; CPU:$A9A0 PRG:A9A0 C8 lda (ZpDB),y ; CPU:$A9A1 PRG:A9A1 B1 DB sta $0702 ; CPU:$A9A3 PRG:A9A3 8D 02 07 jmp Bank5_Bank5_ReadSoundTable_Loop28 ; CPU:$A9A6 PRG:A9A6 4C D5 A9 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop26 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop26. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop26: cmp #$8E ; CPU:$A9A9 PRG:A9A9 C9 8E bne Bank5_Bank5_ReadSoundTable_Loop27 ; CPU:$A9AB PRG:A9AB D0 09 iny ; CPU:$A9AD PRG:A9AD C8 lda (ZpDB),y ; CPU:$A9AE PRG:A9AE B1 DB sta $0703,x ; CPU:$A9B0 PRG:A9B0 9D 03 07 jmp Bank5_Bank5_ReadSoundTable_Loop28 ; CPU:$A9B3 PRG:A9B3 4C D5 A9 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop27 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop27. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop27: cmp #$8F ; CPU:$A9B6 PRG:A9B6 C9 8F bne Bank5_Bank5_ReadSoundTable_Loop28 ; CPU:$A9B8 PRG:A9B8 D0 1B iny ; CPU:$A9BA PRG:A9BA C8 lda (ZpDB),y ; CPU:$A9BB PRG:A9BB B1 DB sta $0709,x ; CPU:$A9BD PRG:A9BD 9D 09 07 jmp Bank5_Bank5_ReadSoundTable_Loop28 ; CPU:$A9C0 PRG:A9C0 4C D5 A9 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Sub_A9C3 ; Global: Branch target inside Bank5_Sub: taken when A9C3. ; Local: Part of Bank5_Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Sub_A9C3: and #$3F ; CPU:$A9C3 PRG:A9C3 29 3F clc ; CPU:$A9C5 PRG:A9C5 18 rol a ; CPU:$A9C6 PRG:A9C6 2A rol a ; CPU:$A9C7 PRG:A9C7 2A adc $0708 ; CPU:$A9C8 PRG:A9C8 6D 08 07 tax ; CPU:$A9CB PRG:A9CB AA iny ; CPU:$A9CC PRG:A9CC C8 lda (ZpDB),y ; CPU:$A9CD PRG:A9CD B1 DB sta $0721,x ; CPU:$A9CF PRG:A9CF 9D 21 07 ldx $0708 ; CPU:$A9D2 PRG:A9D2 AE 08 07 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop28 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop28. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop28: iny ; CPU:$A9D5 PRG:A9D5 C8 tya ; CPU:$A9D6 PRG:A9D6 98 clc ; CPU:$A9D7 PRG:A9D7 18 adc $0715,x ; CPU:$A9D8 PRG:A9D8 7D 15 07 sta $0715,x ; CPU:$A9DB PRG:A9DB 9D 15 07 lda #$00 ; CPU:$A9DE PRG:A9DE A9 00 adc $0719,x ; CPU:$A9E0 PRG:A9E0 7D 19 07 sta $0719,x ; CPU:$A9E3 PRG:A9E3 9D 19 07 jmp Bank5_Bank5_ReadSoundTable_OnZero2 ; CPU:$A9E6 PRG:A9E6 4C 13 A9 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Sub_A9E9 ; Global: Branch target inside Bank5_Sub: taken when A9E9. ; Local: Part of Bank5_Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Sub_A9E9: sta $0711,x ; CPU:$A9E9 PRG:A9E9 9D 11 07 clc ; CPU:$A9EC PRG:A9EC 18 lda #$02 ; CPU:$A9ED PRG:A9ED A9 02 adc $0715,x ; CPU:$A9EF PRG:A9EF 7D 15 07 sta $0715,x ; CPU:$A9F2 PRG:A9F2 9D 15 07 lda #$00 ; CPU:$A9F5 PRG:A9F5 A9 00 adc $0719,x ; CPU:$A9F7 PRG:A9F7 7D 19 07 sta $0719,x ; CPU:$A9FA PRG:A9FA 9D 19 07 lda ZpD6 ; CPU:$A9FD PRG:A9FD A5 D6 and $0707 ; CPU:$A9FF PRG:A9FF 2D 07 07 beq Bank5_Bank5_ReadSoundTable_Loop29 ; CPU:$AA02 PRG:AA02 F0 01 rts ; CPU:$AA04 PRG:AA04 60 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop29 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop29. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop29: iny ; CPU:$AA05 PRG:AA05 C8 lda (ZpDB),y ; CPU:$AA06 PRG:AA06 B1 DB pha ; CPU:$AA08 PRG:AA08 48 txa ; CPU:$AA09 PRG:AA09 8A clc ; CPU:$AA0A PRG:AA0A 18 rol a ; CPU:$AA0B PRG:AA0B 2A rol a ; CPU:$AA0C PRG:AA0C 2A tay ; CPU:$AA0D PRG:AA0D A8 pla ; CPU:$AA0E PRG:AA0E 68 beq Bank5_Bank5_ReadSoundTable_Loop30 ; CPU:$AA0F PRG:AA0F F0 04 clc ; CPU:$AA11 PRG:AA11 18 adc $0703,x ; CPU:$AA12 PRG:AA12 7D 03 07 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop30 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop30. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop30: asl a ; CPU:$AA15 PRG:AA15 0A tax ; CPU:$AA16 PRG:AA16 AA lda $A650,x ; CPU:$AA17 PRG:AA17 BD 50 A6 sta APUPULSE1TIMERLO,y ; CPU:$AA1A PRG:AA1A 99 02 40 inx ; CPU:$AA1D PRG:AA1D E8 lda $A650,x ; CPU:$AA1E PRG:AA1E BD 50 A6 ora #$08 ; CPU:$AA21 PRG:AA21 09 08 sta APUPULSE1TIMERHI,y ; CPU:$AA23 PRG:AA23 99 03 40 ldx $0708 ; CPU:$AA26 PRG:AA26 AE 08 07 cpx #$02 ; CPU:$AA29 PRG:AA29 E0 02 beq Bank5_Bank5_ReadSoundTable_Loop31 ; CPU:$AA2B PRG:AA2B F0 20 lda $073D,x ; CPU:$AA2D PRG:AA2D BD 3D 07 lsr a ; CPU:$AA30 PRG:AA30 4A lsr a ; CPU:$AA31 PRG:AA31 4A lsr a ; CPU:$AA32 PRG:AA32 4A lsr a ; CPU:$AA33 PRG:AA33 4A sta $0721,x ; CPU:$AA34 PRG:AA34 9D 21 07 jsr Bank5_Bank5_ReadSoundTable_Loop17 ; CPU:$AA37 PRG:AA37 20 DC A8 lda $0725,x ; CPU:$AA3A PRG:AA3A BD 25 07 sta APUPULSE1SWEEP,y ; CPU:$AA3D PRG:AA3D 99 01 40 ldy #$00 ; CPU:$AA40 PRG:AA40 A0 00 jsr Bank5_Bank5_ReadSoundTable_OnZero4 ; CPU:$AA42 PRG:AA42 20 54 AA sta $0741,x ; CPU:$AA45 PRG:AA45 9D 41 07 tya ; CPU:$AA48 PRG:AA48 98 sta $071D,x ; CPU:$AA49 PRG:AA49 9D 1D 07 rts ; CPU:$AA4C PRG:AA4C 60 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop31 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop31. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop31: lda $0729,x ; CPU:$AA4D PRG:AA4D BD 29 07 sta APUPULSE1CTRL,y ; CPU:$AA50 PRG:AA50 99 00 40 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_OnZero3 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when OnZero3. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_OnZero3: rts ; CPU:$AA53 PRG:AA53 60 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_OnZero4 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when OnZero4. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_OnZero4: iny ; CPU:$AA54 PRG:AA54 C8 cpy #$05 ; CPU:$AA55 PRG:AA55 C0 05 beq Bank5_Bank5_ReadSoundTable_Loop32 ; CPU:$AA57 PRG:AA57 F0 0D tya ; CPU:$AA59 PRG:AA59 98 clc ; CPU:$AA5A PRG:AA5A 18 rol a ; CPU:$AA5B PRG:AA5B 2A rol a ; CPU:$AA5C PRG:AA5C 2A adc $0708 ; CPU:$AA5D PRG:AA5D 6D 08 07 tax ; CPU:$AA60 PRG:AA60 AA lda $0729,x ; CPU:$AA61 PRG:AA61 BD 29 07 beq Bank5_Bank5_ReadSoundTable_OnZero4 ; CPU:$AA64 PRG:AA64 F0 EE ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop32 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop32. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop32: ldx $0708 ; CPU:$AA66 PRG:AA66 AE 08 07 pha ; CPU:$AA69 PRG:AA69 48 lsr a ; CPU:$AA6A PRG:AA6A 4A lsr a ; CPU:$AA6B PRG:AA6B 4A lsr a ; CPU:$AA6C PRG:AA6C 4A lsr a ; CPU:$AA6D PRG:AA6D 4A sta $070D,x ; CPU:$AA6E PRG:AA6E 9D 0D 07 pla ; CPU:$AA71 PRG:AA71 68 and #$0F ; CPU:$AA72 PRG:AA72 29 0F rts ; CPU:$AA74 PRG:AA74 60 ; ---- data $AA75-$AA79 (5 bytes) ---- .byte $AD, $00, $07, $D0, $D9 ; CPU:$AA75 PRG:AA75 AD 00 07 D0 D9 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Sub_AA7A ; Global: Branch target inside Bank5_Sub: taken when AA7A. ; Local: Part of Bank5_Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Sub_AA7A: lda $07A1 ; CPU:$AA7A PRG:AA7A AD A1 07 beq Bank5_Bank5_ReadSoundTable_OnZero3 ; CPU:$AA7D PRG:AA7D F0 D4 ldx #$01 ; CPU:$AA7F PRG:AA7F A2 01 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_OnNonzero2 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when OnNonzero2. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_OnNonzero2: lda $074D,x ; CPU:$AA81 PRG:AA81 BD 4D 07 sta $0700,x ; CPU:$AA84 PRG:AA84 9D 00 07 inx ; CPU:$AA87 PRG:AA87 E8 cpx #$4E ; CPU:$AA88 PRG:AA88 E0 4E bne Bank5_Bank5_ReadSoundTable_OnNonzero2 ; CPU:$AA8A PRG:AA8A D0 F5 ldy #$00 ; CPU:$AA8C PRG:AA8C A0 00 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_OnNonzero3 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when OnNonzero3. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_OnNonzero3: lda $074D,x ; CPU:$AA8E PRG:AA8E BD 4D 07 sta a:$00D7,y ; CPU:$AA91 PRG:AA91 99 D7 00 iny ; CPU:$AA94 PRG:AA94 C8 inx ; CPU:$AA95 PRG:AA95 E8 cpx #$54 ; CPU:$AA96 PRG:AA96 E0 54 bne Bank5_Bank5_ReadSoundTable_OnNonzero3 ; CPU:$AA98 PRG:AA98 D0 F4 lda $074D ; CPU:$AA9A PRG:AA9A AD 4D 07 sta $0700 ; CPU:$AA9D PRG:AA9D 8D 00 07 sta APUSTATUS ; CPU:$AAA0 PRG:AAA0 8D 15 40 lda #$00 ; CPU:$AAA3 PRG:AAA3 A9 00 sta $07A1 ; CPU:$AAA5 PRG:AAA5 8D A1 07 rts ; CPU:$AAA8 PRG:AAA8 60 ; ---- data $AAA9-$AAF0 (72 bytes) ---- ; referenced by `lda $AAEC,x` at $AB16 (operand $AAEC falls inside this region) .byte $8E, $A2, $07, $8C, $A3, $07, $AD, $A1, $07, $F0, $01, $60, $AD, $00, $07, $8D ; CPU:$AAA9 PRG:AAA9 8E A2 07 8C A3 07 AD A1 07 F0 01 60 AD 00 07 8D .byte $4D, $07, $A9, $00, $8D, $00, $07, $8D, $15, $40, $A2, $01, $BD, $00, $07, $9D ; CPU:$AAB9 PRG:AAB9 4D 07 A9 00 8D 00 07 8D 15 40 A2 01 BD 00 07 9D .byte $4D, $07, $E8, $E0, $4E, $D0, $F5, $A0, $00, $B9, $D7, $00, $9D, $4D, $07, $C8 ; CPU:$AAC9 PRG:AAC9 4D 07 E8 E0 4E D0 F5 A0 00 B9 D7 00 9D 4D 07 C8 .byte $E8, $E0, $54, $D0, $F4, $A9, $FF, $8D, $A1, $07, $AE, $A2, $07, $AC, $A3, $07 ; CPU:$AAD9 PRG:AAD9 E8 E0 54 D0 F4 A9 FF 8D A1 07 AE A2 07 AC A3 07 .byte $4C, $5B, $A7, $01, $02, $04, $08, $10 ; CPU:$AAE9 PRG:AAE9 4C 5B A7 01 02 04 08 10 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Sub_AAF1 ; Global: Branch target inside Bank5_Sub: taken when AAF1. ; Local: Part of Bank5_Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Sub_AAF1: pha ; CPU:$AAF1 PRG:AAF1 48 txa ; CPU:$AAF2 PRG:AAF2 8A pha ; CPU:$AAF3 PRG:AAF3 48 tya ; CPU:$AAF4 PRG:AAF4 98 pha ; CPU:$AAF5 PRG:AAF5 48 lda ZpE3 ; CPU:$AAF6 PRG:AAF6 A5 E3 beq Bank5_Bank5_ReadSoundTable_Loop34 ; CPU:$AAF8 PRG:AAF8 F0 4C lda #$0F ; CPU:$AAFA PRG:AAFA A9 0F sta APUSTATUS ; CPU:$AAFC PRG:AAFC 8D 15 40 lda #$00 ; CPU:$AAFF PRG:AAFF A9 00 sta ZpD6 ; CPU:$AB01 PRG:AB01 85 D6 lda ZpE2 ; CPU:$AB03 PRG:AB03 A5 E2 asl a ; CPU:$AB05 PRG:AB05 0A tax ; CPU:$AB06 PRG:AB06 AA lda $AB6D,x ; CPU:$AB07 PRG:AB07 BD 6D AB sta ZpDF ; CPU:$AB0A PRG:AB0A 85 DF lda $AB6E,x ; CPU:$AB0C PRG:AB0C BD 6E AB sta ZpE0 ; CPU:$AB0F PRG:AB0F 85 E0 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Sub_AB11 ; Global: Branch target inside Bank5_Sub: taken when AB11. ; Local: Part of Bank5_Sub. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Sub_AB11: ldy #$00 ; CPU:$AB11 PRG:AB11 A0 00 lda (ZpDF),y ; CPU:$AB13 PRG:AB13 B1 DF tax ; CPU:$AB15 PRG:AB15 AA lda $AAEC,x ; CPU:$AB16 PRG:AB16 BD EC AA ora ZpD6 ; CPU:$AB19 PRG:AB19 05 D6 sta ZpD6 ; CPU:$AB1B PRG:AB1B 85 D6 lda #$0F ; CPU:$AB1D PRG:AB1D A9 0F sta APUSTATUS ; CPU:$AB1F PRG:AB1F 8D 15 40 txa ; CPU:$AB22 PRG:AB22 8A asl a ; CPU:$AB23 PRG:AB23 0A asl a ; CPU:$AB24 PRG:AB24 0A tax ; CPU:$AB25 PRG:AB25 AA iny ; CPU:$AB26 PRG:AB26 C8 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_OnNonzero4 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when OnNonzero4. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_OnNonzero4: lda (ZpDF),y ; CPU:$AB27 PRG:AB27 B1 DF sta APUPULSE1CTRL,x ; CPU:$AB29 PRG:AB29 9D 00 40 inx ; CPU:$AB2C PRG:AB2C E8 iny ; CPU:$AB2D PRG:AB2D C8 cpy #$05 ; CPU:$AB2E PRG:AB2E C0 05 bne Bank5_Bank5_ReadSoundTable_OnNonzero4 ; CPU:$AB30 PRG:AB30 D0 F5 lda (ZpDF),y ; CPU:$AB32 PRG:AB32 B1 DF cmp #$FF ; CPU:$AB34 PRG:AB34 C9 FF beq Bank5_Bank5_ReadSoundTable_Loop34 ; CPU:$AB36 PRG:AB36 F0 0E clc ; CPU:$AB38 PRG:AB38 18 lda ZpDF ; CPU:$AB39 PRG:AB39 A5 DF adc #$05 ; CPU:$AB3B PRG:AB3B 69 05 sta ZpDF ; CPU:$AB3D PRG:AB3D 85 DF bcc Bank5_Bank5_ReadSoundTable_Loop33 ; CPU:$AB3F PRG:AB3F 90 02 inc ZpE0 ; CPU:$AB41 PRG:AB41 E6 E0 ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop33 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop33. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop33: jmp Bank5_Sub_AB11 ; CPU:$AB43 PRG:AB43 4C 11 AB ; ----------------------------------------------------------------------------- ; Routine: Bank5_Bank5_ReadSoundTable_Loop34 ; Global: Branch target inside Bank5_Bank5_ReadSoundTable: taken when Loop34. ; Local: Part of Bank5_Bank5_ReadSoundTable. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_Bank5_ReadSoundTable_Loop34: lda #$00 ; CPU:$AB46 PRG:AB46 A9 00 sta ZpE3 ; CPU:$AB48 PRG:AB48 85 E3 pla ; CPU:$AB4A PRG:AB4A 68 tay ; CPU:$AB4B PRG:AB4B A8 pla ; CPU:$AB4C PRG:AB4C 68 tax ; CPU:$AB4D PRG:AB4D AA pla ; CPU:$AB4E PRG:AB4E 68 rts ; CPU:$AB4F PRG:AB4F 60 ; ----------------------------------------------------------------------------- ; Routine: Bank5_SetSoundMode ; Global: Turns the sound channels on in the second half. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank5_SetSoundMode: lda #$04 ; CPU:$AB50 PRG:AB50 A9 04 sta ZpE2 ; CPU:$AB52 PRG:AB52 85 E2 lda #$01 ; CPU:$AB54 PRG:AB54 A9 01 sta ZpE3 ; CPU:$AB56 PRG:AB56 85 E3 jmp Bank5_Sub_AAF1 ; CPU:$AB58 PRG:AB58 4C F1 AA ; ---- data $AB5B-$BFFF (5285 bytes) ---- ; referenced by `lda $AB5B,x` at $A72E (operand $AB5B falls inside this region) ; referenced by `lda $AB5C,x` at $A733 (operand $AB5C falls inside this region) ; referenced by `lda $AB6D,x` at $AB07 (operand $AB6D falls inside this region) ; referenced by `lda $AB6E,x` at $AB0C (operand $AB6E falls inside this region) .byte $65, $B0, $32, $B3, $4C, $BB, $9D, $AB, $AC, $B7, $E5, $AE, $52, $B9, $A6, $BA ; CPU:$AB5B PRG:AB5B 65 B0 32 B3 4C BB 9D AB AC B7 E5 AE 52 B9 A6 BA .byte $56, $C0, $79, $AB, $7F, $AB, $85, $AB, $8B, $AB, $91, $AB, $97, $AB, $01, $44 ; CPU:$AB6B PRG:AB6B 56 C0 79 AB 7F AB 85 AB 8B AB 91 AB 97 AB 01 44 .byte $9C, $C8, $C0, $FF, $01, $09, $AB, $3B, $C1, $FF, $01, $40, $80, $4A, $28, $FF ; CPU:$AB7B PRG:AB7B 9C C8 C0 FF 01 09 AB 3B C1 FF 01 40 80 4A 28 FF .byte $01, $40, $80, $63, $28, $FF, $01, $5F, $A4, $3D, $C0, $FF, $01, $5E, $DB, $8C ; CPU:$AB8B PRG:AB8B 01 40 80 63 28 FF 01 5F A4 3D C0 FF 01 5E DB 8C .byte $43, $FF, $A7, $AB, $99, $AC, $65, $AD, $09, $AE, $02, $0F, $82, $04, $84, $18 ; CPU:$AB9B PRG:AB9B 43 FF A7 AB 99 AC 65 AD 09 AE 02 0F 82 04 84 18 .byte $87, $F0, $8F, $0B, $8D, $06, $8E, $02, $18, $00, $02, $00, $02, $1D, $02, $1E ; CPU:$ABAB PRG:ABAB 87 F0 8F 0B 8D 06 8E 02 18 00 02 00 02 1D 02 1E .byte $02, $1F, $02, $20, $04, $29, $02, $20, $04, $29, $02, $20, $06, $22, $08, $2A ; CPU:$ABBB PRG:ABBB 02 1F 02 20 04 29 02 20 04 29 02 20 06 22 08 2A .byte $02, $22, $02, $21, $02, $20, $04, $29, $02, $20, $04, $29, $02, $20, $06, $22 ; CPU:$ABCB PRG:ABCB 02 22 02 21 02 20 04 29 02 20 04 29 02 20 06 22 .byte $08, $2A, $02, $22, $02, $21, $02, $20, $04, $29, $02, $20, $04, $29, $04, $20 ; CPU:$ABDB PRG:ABDB 08 2A 02 22 02 21 02 20 04 29 02 20 04 29 04 20 .byte $02, $1E, $04, $27, $02, $1E, $02, $1E, $04, $27, $12, $25, $82, $5A, $8F, $0C ; CPU:$ABEB PRG:ABEB 02 1E 04 27 02 1E 02 1E 04 27 12 25 82 5A 8F 0C .byte $0C, $00, $02, $20, $02, $21, $03, $22, $01, $24, $02, $25, $06, $25, $02, $24 ; CPU:$ABFB PRG:ABFB 0C 00 02 20 02 21 03 22 01 24 02 25 06 25 02 24 .byte $02, $25, $04, $27, $08, $25, $02, $24, $02, $25, $03, $29, $01, $28, $02, $29 ; CPU:$AC0B PRG:AC0B 02 25 04 27 08 25 02 24 02 25 03 29 01 28 02 29 .byte $04, $2C, $02, $29, $02, $25, $02, $20, $06, $23, $06, $22, $04, $20, $03, $1E ; CPU:$AC1B PRG:AC1B 04 2C 02 29 02 25 02 20 06 23 06 22 04 20 03 1E .byte $01, $1D, $02, $1E, $02, $20, $02, $22, $04, $2A, $01, $24, $01, $25, $03, $29 ; CPU:$AC2B PRG:AC2B 01 1D 02 1E 02 20 02 22 04 2A 01 24 01 25 03 29 .byte $01, $28, $02, $29, $06, $2E, $81, $95, $03, $29, $01, $00, $81, $00, $10, $27 ; CPU:$AC3B PRG:AC3B 01 28 02 29 06 2E 81 95 03 29 01 00 81 00 10 27 .byte $82, $08, $8F, $0F, $08, $00, $02, $00, $02, $1D, $02, $1E, $02, $1F, $02, $20 ; CPU:$AC4B PRG:AC4B 82 08 8F 0F 08 00 02 00 02 1D 02 1E 02 1F 02 20 .byte $04, $29, $02, $20, $04, $29, $02, $20, $06, $22, $08, $2A, $02, $22, $02, $21 ; CPU:$AC5B PRG:AC5B 04 29 02 20 04 29 02 20 06 22 08 2A 02 22 02 21 .byte $02, $20, $04, $29, $02, $20, $04, $29, $02, $20, $06, $22, $08, $2A, $02, $22 ; CPU:$AC6B PRG:AC6B 02 20 04 29 02 20 04 29 02 20 06 22 08 2A 02 22 .byte $02, $21, $02, $20, $04, $29, $02, $20, $04, $29, $04, $20, $03, $1E, $01, $1D ; CPU:$AC7B PRG:AC7B 02 21 02 20 04 29 02 20 04 29 04 20 03 1E 01 1D .byte $02, $1E, $06, $27, $14, $25, $8A, $8B, $50, $00, $8C, $50, $00, $89, $82, $04 ; CPU:$AC8B PRG:AC8B 02 1E 06 27 14 25 8A 8B 50 00 8C 50 00 89 82 04 .byte $84, $18, $87, $F0, $8F, $04, $8E, $02, $40, $00, $04, $1D, $04, $00, $04, $19 ; CPU:$AC9B PRG:AC9B 84 18 87 F0 8F 04 8E 02 40 00 04 1D 04 00 04 19 .byte $04, $14, $04, $12, $04, $1B, $08, $00, $04, $1D, $04, $00, $04, $19, $04, $14 ; CPU:$ACAB PRG:ACAB 04 14 04 12 04 1B 08 00 04 1D 04 00 04 19 04 14 .byte $04, $12, $04, $1B, $04, $00, $04, $12, $04, $11, $04, $19, $08, $00, $82, $5A ; CPU:$ACBB PRG:ACBB 04 12 04 1B 04 00 04 12 04 11 04 19 08 00 82 5A .byte $8F, $0A, $0C, $00, $04, $19, $03, $1E, $01, $20, $02, $22, $06, $1E, $02, $1D ; CPU:$ACCB PRG:ACCB 8F 0A 0C 00 04 19 03 1E 01 20 02 22 06 1E 02 1D .byte $02, $1E, $04, $1F, $08, $22, $02, $1B, $02, $19, $03, $20, $01, $1F, $02, $20 ; CPU:$ACDB PRG:ACDB 02 1E 04 1F 08 22 02 1B 02 19 03 20 01 1F 02 20 .byte $04, $25, $02, $25, $02, $20, $02, $1D, $04, $20, $02, $1B, $06, $1A, $04, $1D ; CPU:$ACEB PRG:ACEB 04 25 02 25 02 20 02 1D 04 20 02 1B 06 1A 04 1D .byte $03, $1B, $01, $1D, $02, $1B, $02, $1D, $02, $1E, $04, $22, $01, $21, $01, $22 ; CPU:$ACFB PRG:ACFB 03 1B 01 1D 02 1B 02 1D 02 1E 04 22 01 21 01 22 .byte $08, $25, $04, $1D, $04, $20, $06, $22, $06, $23, $04, $24, $82, $04, $8F, $0D ; CPU:$AD0B PRG:AD0B 08 25 04 1D 04 20 06 22 06 23 04 24 82 04 8F 0D .byte $08, $00, $02, $00, $02, $1D, $02, $1E, $02, $1F, $02, $1D, $04, $20, $02, $1D ; CPU:$AD1B PRG:AD1B 08 00 02 00 02 1D 02 1E 02 1F 02 1D 04 20 02 1D .byte $04, $20, $02, $1D, $06, $1E, $08, $22, $02, $22, $02, $21, $02, $1D, $04, $20 ; CPU:$AD2B PRG:AD2B 04 20 02 1D 06 1E 08 22 02 22 02 21 02 1D 04 20 .byte $02, $1D, $04, $20, $02, $1D, $06, $1E, $08, $22, $02, $22, $02, $21, $02, $1D ; CPU:$AD3B PRG:AD3B 02 1D 04 20 02 1D 06 1E 08 22 02 22 02 21 02 1D .byte $04, $20, $02, $1D, $04, $20, $04, $1D, $03, $16, $01, $15, $02, $16, $06, $1E ; CPU:$AD4B PRG:AD4B 04 20 02 1D 04 20 04 1D 03 16 01 15 02 16 06 1E .byte $14, $1D, $8A, $8B, $30, $00, $8C, $30, $00, $89, $82, $1E, $8F, $08, $8E, $02 ; CPU:$AD5B PRG:AD5B 14 1D 8A 8B 30 00 8C 30 00 89 82 1E 8F 08 8E 02 .byte $40, $00, $20, $00, $0C, $19, $04, $19, $0C, $14, $04, $14, $10, $19, $0C, $00 ; CPU:$AD6B PRG:AD6B 40 00 20 00 0C 19 04 19 0C 14 04 14 10 19 0C 00 .byte $04, $19, $8F, $0A, $06, $1E, $02, $1E, $06, $1E, $02, $1E, $06, $1F, $02, $1F ; CPU:$AD7B PRG:AD7B 04 19 8F 0A 06 1E 02 1E 06 1E 02 1E 06 1F 02 1F .byte $06, $1F, $02, $1F, $06, $20, $02, $20, $06, $20, $02, $20, $06, $20, $06, $22 ; CPU:$AD8B PRG:AD8B 06 1F 02 1F 06 20 02 20 06 20 02 20 06 20 06 22 .byte $04, $1D, $06, $1B, $02, $1B, $06, $1B, $02, $1B, $06, $14, $02, $14, $04, $14 ; CPU:$AD9B PRG:AD9B 04 1D 06 1B 02 1B 06 1B 02 1B 06 14 02 14 04 14 .byte $04, $14, $06, $20, $06, $20, $04, $20, $8F, $0E, $0C, $00, $04, $20, $04, $19 ; CPU:$ADAB PRG:ADAB 04 14 06 20 06 20 04 20 8F 0E 0C 00 04 20 04 19 .byte $02, $11, $02, $14, $04, $19, $04, $1D, $04, $1E, $02, $16, $02, $19, $04, $1E ; CPU:$ADBB PRG:ADBB 02 11 02 14 04 19 04 1D 04 1E 02 16 02 19 04 1E .byte $04, $1E, $04, $19, $02, $11, $02, $14, $04, $19, $04, $1D, $04, $1E, $02, $16 ; CPU:$ADCB PRG:ADCB 04 1E 04 19 02 11 02 14 04 19 04 1D 04 1E 02 16 .byte $02, $19, $04, $1E, $04, $1E, $04, $19, $02, $11, $02, $14, $04, $19, $04, $19 ; CPU:$ADDB PRG:ADDB 02 19 04 1E 04 1E 04 19 02 11 02 14 04 19 04 19 .byte $04, $12, $04, $12, $04, $14, $04, $14, $04, $19, $02, $11, $02, $14, $04, $19 ; CPU:$ADEB PRG:ADEB 04 12 04 12 04 14 04 14 04 19 02 11 02 14 04 19 .byte $04, $14, $0C, $19, $04, $19, $8A, $8B, $18, $00, $8C, $18, $00, $89, $8F, $06 ; CPU:$ADFB PRG:ADFB 04 14 0C 19 04 19 8A 8B 18 00 8C 18 00 89 8F 06 .byte $8E, $03, $04, $44, $04, $44, $04, $44, $04, $44, $02, $3F, $02, $44, $02, $3F ; CPU:$AE0B PRG:AE0B 8E 03 04 44 04 44 04 44 04 44 02 3F 02 44 02 3F .byte $02, $44, $02, $3F, $02, $44, $02, $3F, $02, $44, $8F, $0B, $02, $3F, $01, $44 ; CPU:$AE1B PRG:AE1B 02 44 02 3F 02 44 02 3F 02 44 8F 0B 02 3F 01 44 .byte $01, $44, $02, $3F, $01, $44, $01, $44, $02, $3F, $01, $44, $01, $44, $02, $3F ; CPU:$AE2B PRG:AE2B 01 44 02 3F 01 44 01 44 02 3F 01 44 01 44 02 3F .byte $01, $44, $01, $44, $02, $3F, $01, $44, $01, $44, $02, $3F, $01, $44, $01, $44 ; CPU:$AE3B PRG:AE3B 01 44 01 44 02 3F 01 44 01 44 02 3F 01 44 01 44 .byte $02, $3F, $01, $44, $01, $44, $02, $3F, $01, $44, $01, $44, $02, $3F, $01, $44 ; CPU:$AE4B PRG:AE4B 02 3F 01 44 01 44 02 3F 01 44 01 44 02 3F 01 44 .byte $01, $44, $02, $3F, $01, $44, $01, $44, $02, $3F, $01, $44, $01, $44, $02, $3F ; CPU:$AE5B PRG:AE5B 01 44 02 3F 01 44 01 44 02 3F 01 44 01 44 02 3F .byte $01, $44, $01, $44, $02, $3F, $01, $44, $01, $44, $02, $3F, $01, $44, $01, $44 ; CPU:$AE6B PRG:AE6B 01 44 01 44 02 3F 01 44 01 44 02 3F 01 44 01 44 .byte $02, $3F, $01, $44, $01, $44, $02, $3F, $01, $44, $01, $44, $02, $3F, $01, $44 ; CPU:$AE7B PRG:AE7B 02 3F 01 44 01 44 02 3F 01 44 01 44 02 3F 01 44 .byte $01, $44, $02, $3F, $01, $44, $01, $44, $02, $3F, $01, $44, $01, $44, $02, $3F ; CPU:$AE8B PRG:AE8B 01 44 02 3F 01 44 01 44 02 3F 01 44 01 44 02 3F .byte $01, $44, $01, $44, $02, $3F, $01, $44, $01, $44, $02, $3F, $01, $44, $01, $44 ; CPU:$AE9B PRG:AE9B 01 44 01 44 02 3F 01 44 01 44 02 3F 01 44 01 44 .byte $02, $3F, $01, $44, $01, $44, $02, $3F, $01, $44, $01, $44, $8F, $0C, $02, $40 ; CPU:$AEAB PRG:AEAB 02 3F 01 44 01 44 02 3F 01 44 01 44 8F 0C 02 40 .byte $02, $40, $02, $44, $02, $40, $02, $40, $02, $40, $02, $44, $02, $40, $02, $40 ; CPU:$AEBB PRG:AEBB 02 40 02 44 02 40 02 40 02 40 02 44 02 40 02 40 .byte $02, $40, $02, $44, $02, $40, $02, $40, $02, $40, $01, $44, $01, $42, $01, $44 ; CPU:$AECB PRG:AECB 02 40 02 44 02 40 02 40 02 40 01 44 01 42 01 44 .byte $01, $42, $8A, $8B, $AE, $00, $8C, $AE, $00, $89, $EF, $AE, $84, $AF, $D6, $AF ; CPU:$AEDB PRG:AEDB 01 42 8A 8B AE 00 8C AE 00 89 EF AE 84 AF D6 AF .byte $2A, $B0, $02, $0F, $82, $BB, $84, $18, $87, $F0, $8F, $0D, $8E, $05, $8D, $02 ; CPU:$AEEB PRG:AEEB 2A B0 02 0F 82 BB 84 18 87 F0 8F 0D 8E 05 8D 02 .byte $06, $1D, $06, $1B, $06, $19, $12, $1B, $0C, $19, $06, $1D, $06, $1B, $06, $19 ; CPU:$AEFB PRG:AEFB 06 1D 06 1B 06 19 12 1B 0C 19 06 1D 06 1B 06 19 .byte $12, $1B, $0C, $19, $08, $1D, $08, $1B, $08, $19, $08, $1D, $08, $20, $08, $1E ; CPU:$AF0B PRG:AF0B 12 1B 0C 19 08 1D 08 1B 08 19 08 1D 08 20 08 1E .byte $24, $1D, $06, $1B, $06, $19, $06, $1D, $06, $1B, $06, $19, $12, $1B, $0C, $19 ; CPU:$AF1B PRG:AF1B 24 1D 06 1B 06 19 06 1D 06 1B 06 19 12 1B 0C 19 .byte $06, $1D, $06, $1B, $06, $19, $12, $1B, $0C, $19, $30, $19, $12, $12, $12, $14 ; CPU:$AF2B PRG:AF2B 06 1D 06 1B 06 19 12 1B 0C 19 30 19 12 12 12 14 .byte $0C, $12, $06, $1D, $06, $1B, $06, $19, $12, $1B, $0C, $19, $06, $1D, $06, $1B ; CPU:$AF3B PRG:AF3B 0C 12 06 1D 06 1B 06 19 12 1B 0C 19 06 1D 06 1B .byte $06, $19, $12, $1B, $0C, $19, $08, $1D, $08, $1B, $08, $19, $08, $1D, $08, $20 ; CPU:$AF4B PRG:AF4B 06 19 12 1B 0C 19 08 1D 08 1B 08 19 08 1D 08 20 .byte $08, $25, $24, $23, $06, $22, $06, $20, $06, $22, $06, $20, $06, $1E, $0C, $19 ; CPU:$AF5B PRG:AF5B 08 25 24 23 06 22 06 20 06 22 06 20 06 1E 0C 19 .byte $0C, $18, $06, $19, $06, $1E, $06, $1D, $06, $1B, $12, $19, $0C, $18, $30, $19 ; CPU:$AF6B PRG:AF6B 0C 18 06 19 06 1E 06 1D 06 1B 12 19 0C 18 30 19 .byte $06, $12, $0C, $14, $0C, $16, $12, $18, $88, $82, $05, $84, $18, $87, $80, $8F ; CPU:$AF7B PRG:AF7B 06 12 0C 14 0C 16 12 18 88 82 05 84 18 87 80 8F .byte $04, $8E, $05, $12, $14, $06, $14, $12, $14, $06, $14, $12, $15, $06, $15, $12 ; CPU:$AF8B PRG:AF8B 04 8E 05 12 14 06 14 12 14 06 14 12 15 06 15 12 .byte $15, $06, $15, $12, $16, $06, $16, $12, $16, $06, $16, $12, $17, $06, $17, $12 ; CPU:$AF9B PRG:AF9B 15 06 15 12 16 06 16 12 16 06 16 12 17 06 17 12 .byte $17, $06, $17, $12, $16, $06, $16, $12, $16, $06, $16, $12, $15, $06, $15, $12 ; CPU:$AFAB PRG:AFAB 17 06 17 12 16 06 16 12 16 06 16 12 15 06 15 12 .byte $15, $06, $15, $30, $14, $8A, $12, $16, $12, $18, $0C, $16, $8B, $49, $00, $8C ; CPU:$AFBB PRG:AFBB 15 06 15 30 14 8A 12 16 12 18 0C 16 8B 49 00 8C .byte $0A, $00, $06, $16, $0C, $18, $0C, $19, $12, $1B, $88, $82, $3A, $8F, $0A, $8E ; CPU:$AFCB PRG:AFCB 0A 00 06 16 0C 18 0C 19 12 1B 88 82 3A 8F 0A 8E .byte $05, $12, $19, $06, $19, $12, $19, $06, $19, $12, $19, $06, $19, $12, $19, $06 ; CPU:$AFDB PRG:AFDB 05 12 19 06 19 12 19 06 19 12 19 06 19 12 19 06 .byte $19, $12, $19, $06, $19, $12, $19, $06, $19, $12, $19, $06, $19, $12, $19, $06 ; CPU:$AFEB PRG:AFEB 19 12 19 06 19 12 19 06 19 12 19 06 19 12 19 06 .byte $19, $12, $1E, $06, $1E, $12, $1E, $06, $1E, $12, $1E, $06, $1E, $12, $1E, $06 ; CPU:$AFFB PRG:AFFB 19 12 1E 06 1E 12 1E 06 1E 12 1E 06 1E 12 1E 06 .byte $1E, $12, $19, $06, $19, $12, $19, $06, $19, $8A, $12, $1E, $12, $20, $0C, $1E ; CPU:$B00B PRG:B00B 1E 12 19 06 19 12 19 06 19 8A 12 1E 12 20 0C 1E .byte $8B, $4B, $00, $8C, $06, $00, $06, $1E, $0C, $20, $0C, $1E, $12, $20, $88, $8F ; CPU:$B01B PRG:B01B 8B 4B 00 8C 06 00 06 1E 0C 20 0C 1E 12 20 88 8F .byte $0B, $8E, $05, $06, $41, $06, $41, $06, $41, $0C, $40, $0C, $42, $06, $40, $06 ; CPU:$B02B PRG:B02B 0B 8E 05 06 41 06 41 06 41 0C 40 0C 42 06 40 06 .byte $41, $06, $41, $06, $41, $06, $41, $06, $41, $06, $41, $06, $43, $06, $41, $08 ; CPU:$B03B PRG:B03B 41 06 41 06 41 06 41 06 41 06 41 06 43 06 41 08 .byte $40, $08, $40, $08, $40, $08, $42, $08, $44, $08, $42, $06, $41, $06, $41, $06 ; CPU:$B04B PRG:B04B 40 08 40 08 40 08 42 08 44 08 42 06 41 06 41 06 .byte $41, $0C, $43, $06, $42, $06, $42, $06, $41, $88, $6F, $B0, $6E, $B1, $3F, $B2 ; CPU:$B05B PRG:B05B 41 0C 43 06 42 06 42 06 41 88 6F B0 6E B1 3F B2 .byte $F0, $B2, $02, $0F, $82, $04, $84, $0C, $87, $D0, $8F, $0C, $8E, $03, $8D, $06 ; CPU:$B06B PRG:B06B F0 B2 02 0F 82 04 84 0C 87 D0 8F 0C 8E 03 8D 06 .byte $06, $0D, $06, $16, $04, $14, $06, $0F, $06, $16, $04, $14, $06, $0D, $06, $16 ; CPU:$B07B PRG:B07B 06 0D 06 16 04 14 06 0F 06 16 04 14 06 0D 06 16 .byte $04, $14, $06, $0F, $06, $16, $82, $5A, $02, $1D, $02, $1E, $10, $20, $04, $00 ; CPU:$B08B PRG:B08B 04 14 06 0F 06 16 82 5A 02 1D 02 1E 10 20 04 00 .byte $02, $1E, $02, $1D, $02, $1E, $02, $1D, $02, $1B, $02, $19, $06, $1D, $0A, $20 ; CPU:$B09B PRG:B09B 02 1E 02 1D 02 1E 02 1D 02 1B 02 19 06 1D 0A 20 .byte $04, $00, $02, $1E, $02, $1D, $02, $1E, $02, $1D, $02, $1B, $02, $19, $02, $1B ; CPU:$B0AB PRG:B0AB 04 00 02 1E 02 1D 02 1E 02 1D 02 1B 02 19 02 1B .byte $02, $1D, $0C, $19, $04, $00, $02, $1E, $02, $1D, $02, $1E, $02, $1D, $02, $1B ; CPU:$B0BB PRG:B0BB 02 1D 0C 19 04 00 02 1E 02 1D 02 1E 02 1D 02 1B .byte $02, $19, $10, $00, $0C, $00, $8A, $8B, $69, $00, $8C, $22, $00, $8E, $05, $8A ; CPU:$B0CB PRG:B0CB 02 19 10 00 0C 00 8A 8B 69 00 8C 22 00 8E 05 8A .byte $8B, $72, $00, $8C, $22, $00, $8E, $07, $8A, $8B, $7B, $00, $8C, $22, $00, $04 ; CPU:$B0DB PRG:B0DB 8B 72 00 8C 22 00 8E 07 8A 8B 7B 00 8C 22 00 04 .byte $14, $10, $1D, $04, $00, $03, $1E, $01, $1D, $02, $1E, $04, $22, $12, $20, $04 ; CPU:$B0EB PRG:B0EB 14 10 1D 04 00 03 1E 01 1D 02 1E 04 22 12 20 04 .byte $00, $03, $1E, $01, $1D, $03, $1E, $01, $1D, $02, $1B, $02, $19, $10, $1D, $04 ; CPU:$B0FB PRG:B0FB 00 03 1E 01 1D 03 1E 01 1D 02 1B 02 19 10 1D 04 .byte $00, $04, $1E, $03, $1D, $01, $1E, $02, $1B, $12, $19, $04, $00, $04, $25, $03 ; CPU:$B10B PRG:B10B 00 04 1E 03 1D 01 1E 02 1B 12 19 04 00 04 25 03 .byte $24, $01, $25, $02, $22, $12, $20, $04, $00, $04, $25, $03, $24, $01, $25, $02 ; CPU:$B11B PRG:B11B 24 01 25 02 22 12 20 04 00 04 25 03 24 01 25 02 .byte $22, $12, $20, $04, $00, $03, $1E, $01, $1D, $02, $1E, $04, $22, $12, $20, $04 ; CPU:$B12B PRG:B12B 22 12 20 04 00 03 1E 01 1D 02 1E 04 22 12 20 04 .byte $00, $04, $1E, $03, $1D, $01, $1E, $02, $1B, $1E, $19, $8E, $08, $8A, $8B, $E0 ; CPU:$B13B PRG:B13B 00 04 1E 03 1D 01 1E 02 1B 1E 19 8E 08 8A 8B E0 .byte $00, $8C, $7B, $00, $04, $00, $8E, $03, $03, $29, $01, $28, $03, $29, $01, $2D ; CPU:$B14B PRG:B14B 00 8C 7B 00 04 00 8E 03 03 29 01 28 03 29 01 2D .byte $03, $26, $01, $25, $03, $26, $01, $2B, $03, $25, $01, $24, $02, $25, $06, $2C ; CPU:$B15B PRG:B15B 03 26 01 25 03 26 01 2B 03 25 01 24 02 25 06 2C .byte $04, $00, $88, $82, $04, $84, $02, $87, $18, $8F, $09, $8E, $03, $3C, $00, $04 ; CPU:$B16B PRG:B16B 04 00 88 82 04 84 02 87 18 8F 09 8E 03 3C 00 04 .byte $14, $02, $00, $06, $25, $04, $22, $02, $1D, $02, $1E, $04, $20, $0C, $00, $04 ; CPU:$B17B PRG:B17B 14 02 00 06 25 04 22 02 1D 02 1E 04 20 0C 00 04 .byte $00, $02, $1D, $02, $1B, $02, $1D, $04, $22, $02, $20, $10, $00, $04, $00, $02 ; CPU:$B18B PRG:B18B 00 02 1D 02 1B 02 1D 04 22 02 20 10 00 04 00 02 .byte $1D, $02, $1B, $02, $1D, $04, $20, $02, $20, $10, $00, $04, $00, $02, $1E, $02 ; CPU:$B19B PRG:B19B 1D 02 1B 02 1D 04 20 02 20 10 00 04 00 02 1E 02 .byte $1D, $02, $1E, $02, $1D, $02, $1B, $02, $19, $06, $1D, $06, $1B, $04, $00, $8A ; CPU:$B1AB PRG:B1AB 1D 02 1E 02 1D 02 1B 02 19 06 1D 06 1B 04 00 8A .byte $8B, $53, $00, $8C, $0E, $00, $8E, $05, $8A, $8B, $5C, $00, $8C, $0E, $00, $8E ; CPU:$B1BB PRG:B1BB 8B 53 00 8C 0E 00 8E 05 8A 8B 5C 00 8C 0E 00 8E .byte $07, $8A, $8B, $65, $00, $8C, $0E, $00, $04, $00, $04, $19, $03, $18, $01, $19 ; CPU:$B1CB PRG:B1CB 07 8A 8B 65 00 8C 0E 00 04 00 04 19 03 18 01 19 .byte $02, $16, $12, $14, $04, $00, $04, $19, $03, $18, $01, $19, $02, $16, $12, $14 ; CPU:$B1DB PRG:B1DB 02 16 12 14 04 00 04 19 03 18 01 19 02 16 12 14 .byte $04, $00, $03, $11, $01, $0F, $02, $11, $04, $16, $12, $14, $04, $00, $04, $19 ; CPU:$B1EB PRG:B1EB 04 00 03 11 01 0F 02 11 04 16 12 14 04 00 04 19 .byte $03, $18, $01, $19, $02, $16, $12, $14, $04, $00, $03, $11, $01, $0F, $02, $11 ; CPU:$B1FB PRG:B1FB 03 18 01 19 02 16 12 14 04 00 03 11 01 0F 02 11 .byte $04, $16, $12, $14, $04, $00, $03, $11, $01, $0F, $02, $11, $04, $16, $12, $14 ; CPU:$B20B PRG:B20B 04 16 12 14 04 00 03 11 01 0F 02 11 04 16 12 14 .byte $04, $00, $04, $19, $03, $18, $01, $19, $02, $16, $12, $14, $04, $00, $04, $1D ; CPU:$B21B PRG:B21B 04 00 04 19 03 18 01 19 02 16 12 14 04 00 04 1D .byte $02, $1C, $06, $1B, $0C, $19, $04, $00, $8E, $08, $8A, $8B, $CE, $00, $8C, $65 ; CPU:$B22B PRG:B22B 02 1C 06 1B 0C 19 04 00 8E 08 8A 8B CE 00 8C 65 .byte $00, $20, $00, $88, $82, $44, $8F, $0A, $8E, $03, $40, $00, $06, $19, $06, $16 ; CPU:$B23B PRG:B23B 00 20 00 88 82 44 8F 0A 8E 03 40 00 06 19 06 16 .byte $04, $0F, $10, $14, $06, $19, $06, $16, $04, $0F, $10, $14, $06, $19, $06, $16 ; CPU:$B24B PRG:B24B 04 0F 10 14 06 19 06 16 04 0F 10 14 06 19 06 16 .byte $04, $0F, $10, $14, $06, $19, $06, $16, $04, $0F, $0C, $14, $04, $00, $8A, $8B ; CPU:$B25B PRG:B25B 04 0F 10 14 06 19 06 16 04 0F 0C 14 04 00 8A 8B .byte $31, $00, $8C, $08, $00, $8E, $05, $8A, $8B, $3A, $00, $8C, $08, $00, $8E, $07 ; CPU:$B26B PRG:B26B 31 00 8C 08 00 8E 05 8A 8B 3A 00 8C 08 00 8E 07 .byte $8A, $8B, $43, $00, $8C, $08, $00, $06, $19, $06, $16, $04, $0F, $10, $14, $06 ; CPU:$B27B PRG:B27B 8A 8B 43 00 8C 08 00 06 19 06 16 04 0F 10 14 06 .byte $19, $06, $16, $04, $0F, $10, $14, $06, $19, $06, $16, $04, $0F, $10, $14, $06 ; CPU:$B28B PRG:B28B 19 06 16 04 0F 10 14 06 19 06 16 04 0F 10 14 06 .byte $19, $06, $16, $04, $0F, $10, $14, $06, $19, $06, $16, $04, $0F, $10, $14, $06 ; CPU:$B29B PRG:B29B 19 06 16 04 0F 10 14 06 19 06 16 04 0F 10 14 06 .byte $19, $06, $16, $04, $0F, $10, $14, $06, $19, $06, $16, $04, $0F, $10, $14, $04 ; CPU:$B2AB PRG:B2AB 19 06 16 04 0F 10 14 06 19 06 16 04 0F 10 14 04 .byte $00, $04, $14, $02, $17, $06, $18, $10, $19, $8E, $08, $8A, $8B, $8E, $00, $8C ; CPU:$B2BB PRG:B2BB 00 04 14 02 17 06 18 10 19 8E 08 8A 8B 8E 00 8C .byte $43, $00, $8E, $03, $02, $15, $02, $00, $02, $15, $02, $00, $02, $13, $02, $00 ; CPU:$B2CB PRG:B2CB 43 00 8E 03 02 15 02 00 02 15 02 00 02 13 02 00 .byte $02, $13, $02, $00, $02, $14, $02, $00, $02, $14, $06, $00, $01, $14, $01, $15 ; CPU:$B2DB PRG:B2DB 02 13 02 00 02 14 02 00 02 14 06 00 01 14 01 15 .byte $01, $16, $01, $18, $88, $8F, $0A, $8E, $06, $06, $3D, $06, $3D, $04, $3D, $06 ; CPU:$B2EB PRG:B2EB 01 16 01 18 88 8F 0A 8E 06 06 3D 06 3D 04 3D 06 .byte $3D, $06, $3D, $04, $3D, $06, $3D, $06, $3D, $04, $3D, $06, $3D, $06, $3D, $04 ; CPU:$B2FB PRG:B2FB 3D 06 3D 04 3D 06 3D 06 3D 04 3D 06 3D 06 3D 04 .byte $3D, $04, $3E, $02, $3F, $04, $3F, $02, $3F, $02, $3F, $02, $3F, $02, $3E, $02 ; CPU:$B30B PRG:B30B 3D 04 3E 02 3F 04 3F 02 3F 02 3F 02 3F 02 3E 02 .byte $3E, $02, $41, $02, $3E, $02, $3F, $02, $3F, $01, $41, $01, $41, $02, $3F, $8A ; CPU:$B31B PRG:B31B 3E 02 41 02 3E 02 3F 02 3F 01 41 01 41 02 3F 8A .byte $8B, $1C, $00, $8C, $1C, $00, $89, $3C, $B3, $20, $B5, $DE, $B6, $66, $B7, $02 ; CPU:$B32B PRG:B32B 8B 1C 00 8C 1C 00 89 3C B3 20 B5 DE B6 66 B7 02 .byte $0F, $82, $96, $84, $18, $87, $F0, $8E, $09, $8D, $06, $8F, $0D, $08, $0D, $08 ; CPU:$B33B PRG:B33B 0F 82 96 84 18 87 F0 8E 09 8D 06 8F 0D 08 0D 08 .byte $0A, $06, $0F, $04, $08, $02, $08, $02, $0A, $02, $0C, $04, $0D, $04, $0D, $04 ; CPU:$B34B PRG:B34B 0A 06 0F 04 08 02 08 02 0A 02 0C 04 0D 04 0D 04 .byte $0A, $04, $0A, $04, $0F, $02, $0F, $04, $08, $02, $08, $02, $0A, $02, $0C, $82 ; CPU:$B35B PRG:B35B 0A 04 0A 04 0F 02 0F 04 08 02 08 02 0A 02 0C 82 .byte $08, $01, $1C, $03, $1D, $04, $1D, $08, $1D, $02, $00, $02, $1B, $02, $1D, $02 ; CPU:$B36B PRG:B36B 08 01 1C 03 1D 04 1D 08 1D 02 00 02 1B 02 1D 02 .byte $1E, $04, $1D, $04, $1B, $06, $19, $0A, $14, $02, $00, $02, $1B, $02, $1D, $02 ; CPU:$B37B PRG:B37B 1E 04 1D 04 1B 06 19 0A 14 02 00 02 1B 02 1D 02 .byte $1E, $04, $1D, $04, $1B, $06, $1D, $0A, $20, $02, $00, $02, $1B, $02, $1D, $02 ; CPU:$B38B PRG:B38B 1E 04 1D 04 1B 06 1D 0A 20 02 00 02 1B 02 1D 02 .byte $1E, $04, $1D, $04, $1B, $10, $19, $10, $00, $01, $1F, $03, $20, $04, $20, $08 ; CPU:$B39B PRG:B39B 1E 04 1D 04 1B 10 19 10 00 01 1F 03 20 04 20 08 .byte $20, $02, $00, $02, $22, $02, $24, $02, $25, $04, $24, $04, $22, $02, $1F, $04 ; CPU:$B3AB PRG:B3AB 20 02 00 02 22 02 24 02 25 04 24 04 22 02 1F 04 .byte $20, $0A, $1D, $02, $00, $02, $22, $02, $24, $02, $25, $04, $24, $04, $22, $02 ; CPU:$B3BB PRG:B3BB 20 0A 1D 02 00 02 22 02 24 02 25 04 24 04 22 02 .byte $1F, $04, $20, $0A, $19, $02, $00, $02, $1B, $02, $1D, $02, $1E, $04, $1D, $04 ; CPU:$B3CB PRG:B3CB 1F 04 20 0A 19 02 00 02 1B 02 1D 02 1E 04 1D 04 .byte $1B, $10, $19, $10, $00, $04, $00, $03, $1D, $01, $1E, $02, $20, $06, $25, $02 ; CPU:$B3DB PRG:B3DB 1B 10 19 10 00 04 00 03 1D 01 1E 02 20 06 25 02 .byte $00, $02, $1E, $02, $20, $02, $22, $04, $20, $04, $1E, $06, $20, $0A, $19, $02 ; CPU:$B3EB PRG:B3EB 00 02 1E 02 20 02 22 04 20 04 1E 06 20 0A 19 02 .byte $00, $02, $1E, $02, $20, $02, $22, $04, $20, $04, $1E, $03, $1D, $01, $1E, $02 ; CPU:$B3FB PRG:B3FB 00 02 1E 02 20 02 22 04 20 04 1E 03 1D 01 1E 02 .byte $20, $0A, $25, $02, $00, $02, $22, $02, $24, $02, $25, $02, $28, $04, $27, $12 ; CPU:$B40B PRG:B40B 20 0A 25 02 00 02 22 02 24 02 25 02 28 04 27 12 .byte $25, $10, $00, $04, $00, $03, $1D, $01, $1E, $02, $20, $06, $25, $04, $00, $02 ; CPU:$B41B PRG:B41B 25 10 00 04 00 03 1D 01 1E 02 20 06 25 04 00 02 .byte $1E, $02, $1D, $02, $1E, $02, $1D, $02, $1E, $02, $22, $06, $20, $0A, $1D, $02 ; CPU:$B42B PRG:B42B 1E 02 1D 02 1E 02 1D 02 1E 02 22 06 20 0A 1D 02 .byte $00, $02, $1B, $02, $1D, $02, $1E, $02, $22, $02, $21, $02, $22, $02, $21, $06 ; CPU:$B43B PRG:B43B 00 02 1B 02 1D 02 1E 02 22 02 21 02 22 02 21 06 .byte $20, $06, $25, $04, $19, $02, $00, $02, $1B, $02, $1D, $02, $1E, $04, $1D, $04 ; CPU:$B44B PRG:B44B 20 06 25 04 19 02 00 02 1B 02 1D 02 1E 04 1D 04 .byte $1B, $10, $19, $10, $00, $04, $00, $03, $1D, $01, $1E, $02, $20, $06, $25, $02 ; CPU:$B45B PRG:B45B 1B 10 19 10 00 04 00 03 1D 01 1E 02 20 06 25 02 .byte $00, $02, $27, $02, $29, $02, $2A, $04, $28, $04, $27, $06, $25, $0A, $20, $02 ; CPU:$B46B PRG:B46B 00 02 27 02 29 02 2A 04 28 04 27 06 25 0A 20 02 .byte $00, $02, $27, $02, $29, $02, $2A, $04, $28, $04, $27, $06, $25, $0A, $20, $02 ; CPU:$B47B PRG:B47B 00 02 27 02 29 02 2A 04 28 04 27 06 25 0A 20 02 .byte $00, $02, $1B, $02, $1D, $02, $1E, $04, $1D, $04, $1B, $10, $19, $10, $00, $04 ; CPU:$B48B PRG:B48B 00 02 1B 02 1D 02 1E 04 1D 04 1B 10 19 10 00 04 .byte $1D, $04, $1D, $08, $1D, $02, $00, $02, $1B, $02, $1D, $02, $1E, $04, $1D, $04 ; CPU:$B49B PRG:B49B 1D 04 1D 08 1D 02 00 02 1B 02 1D 02 1E 04 1D 04 .byte $1B, $06, $19, $0A, $14, $02, $00, $02, $1B, $02, $1D, $02, $1E, $02, $1D, $02 ; CPU:$B4AB PRG:B4AB 1B 06 19 0A 14 02 00 02 1B 02 1D 02 1E 02 1D 02 .byte $1C, $02, $1D, $02, $1C, $02, $1D, $02, $1C, $02, $1D, $02, $1C, $02, $1D, $06 ; CPU:$B4BB PRG:B4BB 1C 02 1D 02 1C 02 1D 02 1C 02 1D 02 1C 02 1D 06 .byte $25, $02, $00, $02, $22, $02, $24, $02, $25, $04, $29, $04, $27, $10, $25, $10 ; CPU:$B4CB PRG:B4CB 25 02 00 02 22 02 24 02 25 04 29 04 27 10 25 10 .byte $00, $01, $1F, $03, $20, $04, $20, $08, $20, $02, $00, $02, $22, $02, $24, $02 ; CPU:$B4DB PRG:B4DB 00 01 1F 03 20 04 20 08 20 02 00 02 22 02 24 02 .byte $25, $04, $24, $04, $22, $02, $1F, $04, $20, $0A, $1D, $02, $00, $02, $22, $02 ; CPU:$B4EB PRG:B4EB 25 04 24 04 22 02 1F 04 20 0A 1D 02 00 02 22 02 .byte $24, $02, $25, $04, $24, $04, $22, $02, $1F, $04, $20, $0A, $19, $02, $00, $02 ; CPU:$B4FB PRG:B4FB 24 02 25 04 24 04 22 02 1F 04 20 0A 19 02 00 02 .byte $1B, $02, $1D, $02, $1E, $04, $1D, $04, $1B, $10, $19, $10, $00, $8A, $8B, $2E ; CPU:$B50B PRG:B50B 1B 02 1D 02 1E 04 1D 04 1B 10 19 10 00 8A 8B 2E .byte $00, $8C, $2E, $00, $89, $82, $04, $87, $18, $87, $F0, $8E, $09, $8F, $0C, $40 ; CPU:$B51B PRG:B51B 00 8C 2E 00 89 82 04 87 18 87 F0 8E 09 8F 0C 40 .byte $00, $01, $13, $03, $14, $04, $14, $08, $14, $02, $00, $02, $12, $02, $14, $02 ; CPU:$B52B PRG:B52B 00 01 13 03 14 04 14 08 14 02 00 02 12 02 14 02 .byte $16, $04, $14, $04, $12, $06, $14, $0A, $11, $02, $00, $02, $12, $02, $14, $02 ; CPU:$B53B PRG:B53B 16 04 14 04 12 06 14 0A 11 02 00 02 12 02 14 02 .byte $16, $04, $14, $04, $12, $06, $14, $0A, $1D, $02, $00, $02, $12, $02, $14, $02 ; CPU:$B54B PRG:B54B 16 04 14 04 12 06 14 0A 1D 02 00 02 12 02 14 02 .byte $16, $04, $14, $04, $12, $10, $11, $10, $00, $01, $1C, $03, $1D, $04, $1D, $08 ; CPU:$B55B PRG:B55B 16 04 14 04 12 10 11 10 00 01 1C 03 1D 04 1D 08 .byte $1D, $02, $00, $02, $1E, $02, $20, $02, $22, $04, $20, $04, $1E, $02, $1C, $04 ; CPU:$B56B PRG:B56B 1D 02 00 02 1E 02 20 02 22 04 20 04 1E 02 1C 04 .byte $1D, $0A, $19, $02, $00, $02, $1E, $02, $20, $02, $22, $04, $20, $04, $1E, $06 ; CPU:$B57B PRG:B57B 1D 0A 19 02 00 02 1E 02 20 02 22 04 20 04 1E 06 .byte $1D, $0A, $22, $02, $00, $02, $12, $02, $14, $02, $16, $04, $14, $04, $12, $10 ; CPU:$B58B PRG:B58B 1D 0A 22 02 00 02 12 02 14 02 16 04 14 04 12 10 .byte $11, $10, $00, $04, $00, $03, $19, $01, $1B, $02, $1D, $06, $22, $02, $00, $02 ; CPU:$B59B PRG:B59B 11 10 00 04 00 03 19 01 1B 02 1D 06 22 02 00 02 .byte $16, $02, $18, $02, $19, $04, $18, $04, $16, $06, $14, $0A, $11, $02, $00, $02 ; CPU:$B5AB PRG:B5AB 16 02 18 02 19 04 18 04 16 06 14 0A 11 02 00 02 .byte $16, $02, $18, $02, $19, $04, $18, $04, $16, $03, $14, $01, $16, $02, $18, $06 ; CPU:$B5BB PRG:B5BB 16 02 18 02 19 04 18 04 16 03 14 01 16 02 18 06 .byte $16, $04, $19, $02, $00, $02, $1E, $02, $20, $02, $22, $04, $20, $04, $1E, $10 ; CPU:$B5CB PRG:B5CB 16 04 19 02 00 02 1E 02 20 02 22 04 20 04 1E 10 .byte $1D, $10, $00, $04, $00, $03, $19, $01, $1B, $02, $1D, $06, $22, $04, $00, $02 ; CPU:$B5DB PRG:B5DB 1D 10 00 04 00 03 19 01 1B 02 1D 06 22 04 00 02 .byte $16, $02, $15, $02, $16, $02, $15, $02, $16, $02, $19, $06, $1D, $0A, $19, $02 ; CPU:$B5EB PRG:B5EB 16 02 15 02 16 02 15 02 16 02 19 06 1D 0A 19 02 .byte $00, $02, $12, $02, $14, $02, $16, $02, $19, $02, $18, $02, $19, $02, $18, $06 ; CPU:$B5FB PRG:B5FB 00 02 12 02 14 02 16 02 19 02 18 02 19 02 18 06 .byte $1D, $06, $22, $04, $11, $02, $00, $02, $12, $02, $14, $02, $16, $04, $14, $04 ; CPU:$B60B PRG:B60B 1D 06 22 04 11 02 00 02 12 02 14 02 16 04 14 04 .byte $12, $10, $11, $10, $00, $04, $00, $03, $19, $01, $1B, $02, $1D, $06, $22, $02 ; CPU:$B61B PRG:B61B 12 10 11 10 00 04 00 03 19 01 1B 02 1D 06 22 02 .byte $00, $02, $1E, $02, $20, $02, $22, $04, $23, $04, $22, $06, $20, $0A, $1D, $02 ; CPU:$B62B PRG:B62B 00 02 1E 02 20 02 22 04 23 04 22 06 20 0A 1D 02 .byte $00, $02, $1E, $02, $20, $02, $22, $04, $23, $04, $22, $06, $20, $0A, $1D, $02 ; CPU:$B63B PRG:B63B 00 02 1E 02 20 02 22 04 23 04 22 06 20 0A 1D 02 .byte $00, $02, $12, $02, $14, $02, $16, $04, $14, $04, $12, $10, $11, $10, $00, $04 ; CPU:$B64B PRG:B64B 00 02 12 02 14 02 16 04 14 04 12 10 11 10 00 04 .byte $14, $04, $14, $08, $14, $02, $00, $02, $12, $02, $14, $02, $16, $04, $14, $04 ; CPU:$B65B PRG:B65B 14 04 14 08 14 02 00 02 12 02 14 02 16 04 14 04 .byte $12, $06, $14, $0A, $11, $02, $00, $02, $12, $02, $14, $02, $16, $02, $14, $02 ; CPU:$B66B PRG:B66B 12 06 14 0A 11 02 00 02 12 02 14 02 16 02 14 02 .byte $13, $02, $14, $02, $13, $02, $14, $02, $13, $02, $14, $02, $13, $02, $14, $06 ; CPU:$B67B PRG:B67B 13 02 14 02 13 02 14 02 13 02 14 02 13 02 14 06 .byte $1D, $02, $00, $02, $1E, $02, $20, $02, $22, $04, $20, $04, $1E, $10, $1D, $10 ; CPU:$B68B PRG:B68B 1D 02 00 02 1E 02 20 02 22 04 20 04 1E 10 1D 10 .byte $00, $01, $1C, $03, $1D, $04, $1D, $08, $1D, $02, $00, $02, $1E, $02, $20, $02 ; CPU:$B69B PRG:B69B 00 01 1C 03 1D 04 1D 08 1D 02 00 02 1E 02 20 02 .byte $22, $04, $20, $04, $1E, $02, $1C, $04, $1D, $0A, $19, $02, $00, $02, $1E, $02 ; CPU:$B6AB PRG:B6AB 22 04 20 04 1E 02 1C 04 1D 0A 19 02 00 02 1E 02 .byte $20, $02, $22, $04, $20, $04, $1E, $06, $1D, $0A, $22, $02, $00, $02, $12, $02 ; CPU:$B6BB PRG:B6BB 20 02 22 04 20 04 1E 06 1D 0A 22 02 00 02 12 02 .byte $14, $02, $16, $04, $15, $04, $12, $10, $11, $10, $00, $8A, $8B, $0C, $00, $8C ; CPU:$B6CB PRG:B6CB 14 02 16 04 15 04 12 10 11 10 00 8A 8B 0C 00 8C .byte $0C, $00, $89, $82, $20, $84, $18, $87, $F0, $8E, $09, $8D, $06, $8F, $0D, $08 ; CPU:$B6DB PRG:B6DB 0C 00 89 82 20 84 18 87 F0 8E 09 8D 06 8F 0D 08 .byte $19, $08, $16, $06, $1B, $04, $14, $02, $14, $02, $16, $02, $18, $04, $19, $04 ; CPU:$B6EB PRG:B6EB 19 08 16 06 1B 04 14 02 14 02 16 02 18 04 19 04 .byte $19, $04, $16, $04, $16, $04, $1B, $02, $1B, $04, $14, $02, $14, $02, $16, $02 ; CPU:$B6FB PRG:B6FB 19 04 16 04 16 04 1B 02 1B 04 14 02 14 02 16 02 .byte $18, $04, $19, $04, $19, $04, $16, $04, $16, $04, $1B, $02, $1B, $04, $14, $02 ; CPU:$B70B PRG:B70B 18 04 19 04 19 04 16 04 16 04 1B 02 1B 04 14 02 .byte $14, $02, $16, $02, $18, $04, $19, $04, $19, $04, $16, $04, $16, $06, $1B, $04 ; CPU:$B71B PRG:B71B 14 02 16 02 18 04 19 04 19 04 16 04 16 06 1B 04 .byte $14, $02, $14, $02, $16, $02, $18, $04, $19, $04, $19, $04, $16, $02, $16, $04 ; CPU:$B72B PRG:B72B 14 02 14 02 16 02 18 04 19 04 19 04 16 02 16 04 .byte $1B, $04, $1B, $02, $1B, $02, $14, $02, $14, $02, $16, $02, $18, $04, $19, $04 ; CPU:$B73B PRG:B73B 1B 04 1B 02 1B 02 14 02 14 02 16 02 18 04 19 04 .byte $19, $04, $16, $04, $16, $03, $1B, $01, $1A, $02, $1B, $04, $14, $02, $14, $02 ; CPU:$B74B PRG:B74B 19 04 16 04 16 03 1B 01 1A 02 1B 04 14 02 14 02 .byte $16, $02, $18, $8A, $8B, $2E, $00, $8C, $2E, $00, $89, $8F, $01, $8E, $45, $20 ; CPU:$B75B PRG:B75B 16 02 18 8A 8B 2E 00 8C 2E 00 89 8F 01 8E 45 20 .byte $3E, $8F, $09, $8E, $04, $04, $42, $04, $42, $04, $42, $04, $42, $04, $3E, $03 ; CPU:$B76B PRG:B76B 3E 8F 09 8E 04 04 42 04 42 04 42 04 42 04 3E 03 .byte $42, $01, $40, $03, $3E, $01, $41, $02, $44, $02, $42, $04, $3D, $01, $41, $03 ; CPU:$B77B PRG:B77B 42 01 40 03 3E 01 41 02 44 02 42 04 3D 01 41 03 .byte $42, $04, $3D, $01, $41, $03, $43, $03, $3D, $01, $41, $02, $44, $02, $42, $02 ; CPU:$B78B PRG:B78B 42 04 3D 01 41 03 43 03 3D 01 41 02 44 02 42 02 .byte $3D, $01, $41, $01, $41, $02, $44, $02, $42, $8A, $8B, $20, $00, $8C, $20, $00 ; CPU:$B79B PRG:B79B 3D 01 41 01 41 02 44 02 42 8A 8B 20 00 8C 20 00 .byte $89, $B6, $B7, $47, $B8, $D4, $B8, $3F, $B9, $02, $0F, $84, $14, $87, $B4, $8F ; CPU:$B7AB PRG:B7AB 89 B6 B7 47 B8 D4 B8 3F B9 02 0F 84 14 87 B4 8F .byte $0D, $8D, $06, $82, $CD, $8E, $0C, $03, $1D, $01, $1C, $02, $1D, $06, $20, $04 ; CPU:$B7BB PRG:B7BB 0D 8D 06 82 CD 8E 0C 03 1D 01 1C 02 1D 06 20 04 .byte $25, $0C, $25, $03, $24, $01, $25, $03, $27, $01, $25, $02, $24, $06, $25, $04 ; CPU:$B7CB PRG:B7CB 25 0C 25 03 24 01 25 03 27 01 25 02 24 06 25 04 .byte $22, $0C, $1E, $03, $1D, $01, $1C, $03, $1D, $01, $1C, $02, $1D, $06, $25, $04 ; CPU:$B7DB PRG:B7DB 22 0C 1E 03 1D 01 1C 03 1D 01 1C 02 1D 06 25 04 .byte $1D, $03, $1B, $01, $1A, $02, $1B, $06, $22, $04, $19, $03, $18, $01, $17, $02 ; CPU:$B7EB PRG:B7EB 1D 03 1B 01 1A 02 1B 06 22 04 19 03 18 01 17 02 .byte $18, $0A, $20, $03, $1E, $01, $1D, $02, $1E, $06, $1D, $04, $1B, $03, $1D, $01 ; CPU:$B7FB PRG:B7FB 18 0A 20 03 1E 01 1D 02 1E 06 1D 04 1B 03 1D 01 .byte $1C, $02, $1D, $06, $20, $04, $25, $0C, $25, $03, $24, $01, $25, $03, $27, $01 ; CPU:$B80B PRG:B80B 1C 02 1D 06 20 04 25 0C 25 03 24 01 25 03 27 01 .byte $25, $02, $24, $06, $25, $04, $22, $0C, $1E, $03, $1D, $01, $1C, $03, $1D, $01 ; CPU:$B81B PRG:B81B 25 02 24 06 25 04 22 0C 1E 03 1D 01 1C 03 1D 01 .byte $1C, $02, $1D, $06, $25, $04, $1D, $03, $1B, $01, $1D, $02, $1E, $06, $1D, $04 ; CPU:$B82B PRG:B82B 1C 02 1D 06 25 04 1D 03 1B 01 1D 02 1E 06 1D 04 .byte $1B, $10, $19, $02, $21, $04, $20, $02, $21, $08, $20, $88, $82, $BB, $84, $14 ; CPU:$B83B PRG:B83B 1B 10 19 02 21 04 20 02 21 08 20 88 82 BB 84 14 .byte $87, $B4, $8F, $0D, $8E, $00, $04, $00, $02, $1D, $02, $1C, $04, $1D, $04, $25 ; CPU:$B84B PRG:B84B 87 B4 8F 0D 8E 00 04 00 02 1D 02 1C 04 1D 04 25 .byte $0C, $23, $02, $20, $02, $1E, $04, $22, $04, $20, $04, $1E, $04, $19, $0C, $21 ; CPU:$B85B PRG:B85B 0C 23 02 20 02 1E 04 22 04 20 04 1E 04 19 0C 21 .byte $04, $00, $04, $00, $03, $1D, $01, $1C, $02, $1D, $06, $25, $04, $00, $03, $1F ; CPU:$B86B PRG:B86B 04 00 04 00 03 1D 01 1C 02 1D 06 25 04 00 03 1F .byte $01, $20, $04, $22, $04, $25, $04, $20, $02, $1F, $02, $20, $04, $22, $04, $25 ; CPU:$B87B PRG:B87B 01 20 04 22 04 25 04 20 02 1F 02 20 04 22 04 25 .byte $03, $24, $01, $22, $02, $24, $06, $22, $04, $20, $04, $00, $02, $1D, $02, $1C ; CPU:$B88B PRG:B88B 03 24 01 22 02 24 06 22 04 20 04 00 02 1D 02 1C .byte $04, $1D, $04, $25, $0C, $23, $02, $20, $02, $1E, $04, $22, $04, $20, $04, $1E ; CPU:$B89B PRG:B89B 04 1D 04 25 0C 23 02 20 02 1E 04 22 04 20 04 1E .byte $04, $19, $0C, $21, $04, $00, $04, $00, $03, $1D, $01, $1C, $02, $1D, $06, $25 ; CPU:$B8AB PRG:B8AB 04 19 0C 21 04 00 04 00 03 1D 01 1C 02 1D 06 25 .byte $04, $22, $02, $12, $02, $14, $02, $16, $02, $18, $02, $19, $02, $1B, $10, $1D ; CPU:$B8BB PRG:B8BB 04 22 02 12 02 14 02 16 02 18 02 19 02 1B 10 1D .byte $02, $1E, $04, $20, $02, $1E, $08, $20, $88, $8F, $0C, $8E, $00, $82, $5A, $06 ; CPU:$B8CB PRG:B8CB 02 1E 04 20 02 1E 08 20 88 8F 0C 8E 00 82 5A 06 .byte $25, $06, $1D, $04, $20, $06, $25, $06, $1D, $04, $20, $06, $1E, $06, $16, $04 ; CPU:$B8DB PRG:B8DB 25 06 1D 04 20 06 25 06 1D 04 20 06 1E 06 16 04 .byte $19, $06, $1E, $06, $21, $04, $19, $06, $1D, $06, $14, $04, $19, $06, $1B, $06 ; CPU:$B8EB PRG:B8EB 19 06 1E 06 21 04 19 06 1D 06 14 04 19 06 1B 06 .byte $1F, $04, $22, $06, $20, $06, $18, $04, $1B, $04, $20, $04, $1E, $04, $1D, $04 ; CPU:$B8FB PRG:B8FB 1F 04 22 06 20 06 18 04 1B 04 20 04 1E 04 1D 04 .byte $1B, $06, $25, $06, $1D, $04, $20, $06, $25, $06, $1D, $04, $20, $06, $1E, $06 ; CPU:$B90B PRG:B90B 1B 06 25 06 1D 04 20 06 25 06 1D 04 20 06 1E 06 .byte $16, $04, $19, $06, $1E, $06, $21, $04, $19, $06, $1D, $06, $14, $04, $19, $06 ; CPU:$B91B PRG:B91B 16 04 19 06 1E 06 21 04 19 06 1D 06 14 04 19 06 .byte $20, $06, $20, $04, $20, $06, $19, $06, $14, $04, $19, $02, $21, $04, $20, $02 ; CPU:$B92B PRG:B92B 20 06 20 04 20 06 19 06 14 04 19 02 21 04 20 02 .byte $21, $08, $20, $88, $8F, $0D, $8E, $04, $04, $3E, $02, $44, $02, $42, $02, $3F ; CPU:$B93B PRG:B93B 21 08 20 88 8F 0D 8E 04 04 3E 02 44 02 42 02 3F .byte $02, $3F, $02, $44, $02, $3F, $88, $5C, $B9, $AD, $B9, $F0, $B9, $33, $BA, $02 ; CPU:$B94B PRG:B94B 02 3F 02 44 02 3F 88 5C B9 AD B9 F0 B9 33 BA 02 .byte $0F, $82, $02, $84, $18, $87, $78, $8F, $0D, $8E, $13, $8D, $05, $04, $1D, $04 ; CPU:$B95B PRG:B95B 0F 82 02 84 18 87 78 8F 0D 8E 13 8D 05 04 1D 04 .byte $00, $04, $20, $04, $00, $03, $1B, $01, $1A, $02, $1B, $06, $20, $04, $00, $04 ; CPU:$B96B PRG:B96B 00 04 20 04 00 03 1B 01 1A 02 1B 06 20 04 00 04 .byte $1D, $04, $00, $04, $20, $04, $00, $03, $22, $01, $21, $02, $22, $06, $1B, $04 ; CPU:$B97B PRG:B97B 1D 04 00 04 20 04 00 03 22 01 21 02 22 06 1B 04 .byte $00, $04, $1D, $04, $00, $04, $20, $04, $00, $03, $1B, $01, $1A, $02, $1B, $06 ; CPU:$B98B PRG:B98B 00 04 1D 04 00 04 20 04 00 03 1B 01 1A 02 1B 06 .byte $20, $04, $1D, $04, $19, $04, $00, $04, $17, $04, $00, $06, $15, $06, $14, $04 ; CPU:$B99B PRG:B99B 20 04 1D 04 19 04 00 04 17 04 00 06 15 06 14 04 .byte $00, $88, $82, $04, $8F, $0D, $8E, $07, $04, $19, $04, $11, $04, $1D, $04, $0D ; CPU:$B9AB PRG:B9AB 00 88 82 04 8F 0D 8E 07 04 19 04 11 04 1D 04 0D .byte $04, $00, $02, $13, $06, $00, $04, $18, $04, $19, $04, $11, $04, $1D, $04, $0D ; CPU:$B9BB PRG:B9BB 04 00 02 13 06 00 04 18 04 19 04 11 04 1D 04 0D .byte $04, $00, $04, $13, $04, $00, $04, $18, $04, $19, $04, $11, $04, $1D, $04, $0D ; CPU:$B9CB PRG:B9CB 04 00 04 13 04 00 04 18 04 19 04 11 04 1D 04 0D .byte $04, $00, $02, $13, $06, $00, $04, $18, $04, $00, $04, $19, $08, $1B, $06, $19 ; CPU:$B9DB PRG:B9DB 04 00 02 13 06 00 04 18 04 00 04 19 08 1B 06 19 .byte $06, $18, $04, $00, $88, $82, $24, $8F, $0C, $8E, $07, $04, $00, $04, $19, $04 ; CPU:$B9EB PRG:B9EB 06 18 04 00 88 82 24 8F 0C 8E 07 04 00 04 19 04 .byte $00, $04, $16, $04, $00, $04, $1B, $04, $00, $04, $14, $04, $00, $04, $19, $04 ; CPU:$B9FB PRG:B9FB 00 04 16 04 00 04 1B 04 00 04 14 04 00 04 19 04 .byte $00, $04, $16, $04, $00, $04, $1B, $04, $00, $04, $14, $04, $00, $04, $19, $04 ; CPU:$BA0B PRG:BA0B 00 04 16 04 00 04 1B 04 00 04 14 04 00 04 19 04 .byte $00, $04, $16, $04, $00, $04, $1B, $04, $00, $04, $14, $04, $00, $04, $19, $08 ; CPU:$BA1B PRG:BA1B 00 04 16 04 00 04 1B 04 00 04 14 04 00 04 19 08 .byte $17, $06, $15, $06, $14, $04, $00, $88, $8F, $0D, $8E, $03, $04, $40, $02, $44 ; CPU:$BA2B PRG:BA2B 17 06 15 06 14 04 00 88 8F 0D 8E 03 04 40 02 44 .byte $02, $41, $04, $40, $02, $44, $02, $41, $02, $40, $02, $40, $02, $44, $04, $40 ; CPU:$BA3B PRG:BA3B 02 41 04 40 02 44 02 41 02 40 02 40 02 44 04 40 .byte $02, $41, $02, $44, $02, $41, $04, $40, $02, $44, $02, $41, $02, $40, $02, $40 ; CPU:$BA4B PRG:BA4B 02 41 02 44 02 41 04 40 02 44 02 41 02 40 02 40 .byte $02, $44, $02, $41, $04, $40, $02, $40, $04, $44, $02, $44, $02, $44, $02, $44 ; CPU:$BA5B PRG:BA5B 02 44 02 41 04 40 02 40 04 44 02 44 02 44 02 44 .byte $04, $40, $02, $44, $02, $41, $04, $40, $02, $44, $02, $41, $04, $40, $02, $40 ; CPU:$BA6B PRG:BA6B 04 40 02 44 02 41 04 40 02 44 02 41 04 40 02 40 .byte $04, $44, $02, $44, $02, $44, $02, $44, $02, $43, $01, $43, $01, $43, $02, $43 ; CPU:$BA7B PRG:BA7B 04 44 02 44 02 44 02 44 02 43 01 43 01 43 02 43 .byte $04, $41, $02, $43, $02, $43, $02, $43, $02, $43, $01, $43, $01, $43, $02, $43 ; CPU:$BA8B PRG:BA8B 04 41 02 43 02 43 02 43 02 43 01 43 01 43 02 43 .byte $04, $40, $01, $42, $01, $42, $02, $42, $02, $42, $88, $B0, $BA, $DB, $BA, $02 ; CPU:$BA9B PRG:BA9B 04 40 01 42 01 42 02 42 02 42 88 B0 BA DB BA 02 .byte $BB, $27, $BB, $02, $0F, $82, $49, $84, $18, $87, $F0, $8E, $07, $8D, $06, $8F ; CPU:$BAAB PRG:BAAB BB 27 BB 02 0F 82 49 84 18 87 F0 8E 07 8D 06 8F .byte $0E, $01, $19, $02, $19, $01, $19, $02, $18, $02, $18, $02, $16, $02, $16, $02 ; CPU:$BABB PRG:BABB 0E 01 19 02 19 01 19 02 18 02 18 02 16 02 16 02 .byte $18, $02, $18, $01, $19, $02, $19, $01, $19, $02, $1B, $02, $1B, $10, $1D, $89 ; CPU:$BACB PRG:BACB 18 02 18 01 19 02 19 01 19 02 1B 02 1B 10 1D 89 .byte $82, $49, $84, $18, $87, $F0, $8E, $07, $01, $16, $02, $16, $01, $16, $02, $14 ; CPU:$BADB PRG:BADB 82 49 84 18 87 F0 8E 07 01 16 02 16 01 16 02 14 .byte $02, $14, $02, $12, $02, $12, $02, $14, $02, $14, $01, $16, $02, $16, $01, $16 ; CPU:$BAEB PRG:BAEB 02 14 02 12 02 12 02 14 02 14 01 16 02 16 01 16 .byte $02, $18, $02, $18, $10, $1A, $89, $82, $2A, $8E, $07, $01, $16, $02, $16, $01 ; CPU:$BAFB PRG:BAFB 02 18 02 18 10 1A 89 82 2A 8E 07 01 16 02 16 01 .byte $16, $02, $14, $02, $14, $02, $12, $02, $12, $02, $14, $02, $14, $01, $12, $02 ; CPU:$BB0B PRG:BB0B 16 02 14 02 14 02 12 02 12 02 14 02 14 01 12 02 .byte $12, $01, $12, $02, $14, $02, $14, $82, $78, $10, $16, $89, $8F, $0D, $8E, $03 ; CPU:$BB1B PRG:BB1B 12 01 12 02 14 02 14 82 78 10 16 89 8F 0D 8E 03 .byte $01, $43, $02, $43, $01, $43, $02, $41, $02, $41, $01, $43, $02, $43, $01, $43 ; CPU:$BB2B PRG:BB2B 01 43 02 43 01 43 02 41 02 41 01 43 02 43 01 43 .byte $02, $41, $02, $41, $01, $43, $02, $43, $01, $43, $02, $41, $02, $41, $10, $44 ; CPU:$BB3B PRG:BB3B 02 41 02 41 01 43 02 43 01 43 02 41 02 41 10 44 .byte $89, $56, $BB, $1F, $BD, $EA, $BE, $47, $C0, $02, $0F, $82, $CD, $84, $18, $87 ; CPU:$BB4B PRG:BB4B 89 56 BB 1F BD EA BE 47 C0 02 0F 82 CD 84 18 87 .byte $F0, $8E, $0C, $8D, $06, $8F, $0F, $03, $22, $01, $20, $02, $1D, $06, $22, $04 ; CPU:$BB5B PRG:BB5B F0 8E 0C 8D 06 8F 0F 03 22 01 20 02 1D 06 22 04 .byte $20, $0C, $20, $04, $00, $03, $22, $01, $20, $02, $1D, $04, $22, $02, $24, $02 ; CPU:$BB6B PRG:BB6B 20 0C 20 04 00 03 22 01 20 02 1D 04 22 02 24 02 .byte $22, $06, $20, $02, $00, $02, $1D, $02, $20, $02, $1D, $02, $1B, $02, $19, $06 ; CPU:$BB7B PRG:BB7B 22 06 20 02 00 02 1D 02 20 02 1D 02 1B 02 19 06 .byte $1C, $06, $1B, $08, $19, $02, $00, $02, $19, $02, $1E, $02, $1C, $02, $1B, $02 ; CPU:$BB8B PRG:BB8B 1C 06 1B 08 19 02 00 02 19 02 1E 02 1C 02 1B 02 .byte $19, $03, $1D, $01, $1B, $02, $1D, $06, $20, $04, $20, $0C, $20, $02, $1B, $02 ; CPU:$BB9B PRG:BB9B 19 03 1D 01 1B 02 1D 06 20 04 20 0C 20 02 1B 02 .byte $1D, $03, $1E, $01, $1C, $02, $19, $06, $16, $04, $19, $08, $20, $02, $20, $04 ; CPU:$BBAB PRG:BBAB 1D 03 1E 01 1C 02 19 06 16 04 19 08 20 02 20 04 .byte $1F, $0A, $1E, $02, $1C, $04, $1B, $22, $19, $82, $08, $8E, $00, $02, $23, $02 ; CPU:$BBBB PRG:BBBB 1F 0A 1E 02 1C 04 1B 22 19 82 08 8E 00 02 23 02 .byte $23, $02, $23, $02, $23, $02, $23, $02, $23, $02, $23, $04, $22, $02, $22, $02 ; CPU:$BBCB PRG:BBCB 23 02 23 02 23 02 23 02 23 02 23 04 22 02 22 02 .byte $22, $02, $22, $02, $22, $02, $22, $02, $22, $06, $25, $02, $00, $02, $20, $03 ; CPU:$BBDB PRG:BBDB 22 02 22 02 22 02 22 02 22 06 25 02 00 02 20 03 .byte $22, $01, $20, $02, $22, $02, $20, $02, $22, $04, $25, $02, $20, $02, $22, $04 ; CPU:$BBEB PRG:BBEB 22 01 20 02 22 02 20 02 22 04 25 02 20 02 22 04 .byte $25, $02, $20, $02, $23, $02, $23, $02, $23, $02, $23, $02, $23, $02, $23, $02 ; CPU:$BBFB PRG:BBFB 25 02 20 02 23 02 23 02 23 02 23 02 23 02 23 02 .byte $23, $04, $22, $02, $22, $02, $22, $02, $22, $02, $22, $02, $22, $02, $22, $06 ; CPU:$BC0B PRG:BC0B 23 04 22 02 22 02 22 02 22 02 22 02 22 02 22 06 .byte $25, $02, $00, $02, $20, $03, $22, $01, $20, $02, $22, $02, $20, $02, $22, $04 ; CPU:$BC1B PRG:BC1B 25 02 00 02 20 03 22 01 20 02 22 02 20 02 22 04 .byte $25, $02, $20, $02, $22, $04, $25, $02, $20, $8A, $82, $CD, $8B, $E7, $00, $8C ; CPU:$BC2B PRG:BC2B 25 02 20 02 22 04 25 02 20 8A 82 CD 8B E7 00 8C .byte $0C, $00, $8E, $11, $82, $CD, $06, $14, $02, $14, $03, $16, $01, $14, $02, $16 ; CPU:$BC3B PRG:BC3B 0C 00 8E 11 82 CD 06 14 02 14 03 16 01 14 02 16 .byte $02, $14, $03, $10, $01, $11, $02, $16, $04, $19, $02, $1C, $02, $1B, $02, $19 ; CPU:$BC4B PRG:BC4B 02 14 03 10 01 11 02 16 04 19 02 1C 02 1B 02 19 .byte $03, $1D, $01, $1C, $02, $1D, $06, $20, $04, $1D, $03, $1C, $01, $1B, $02, $1C ; CPU:$BC5B PRG:BC5B 03 1D 01 1C 02 1D 06 20 04 1D 03 1C 01 1B 02 1C .byte $06, $20, $04, $1C, $03, $1D, $01, $1C, $02, $1D, $06, $20, $04, $1D, $03, $1C ; CPU:$BC6B PRG:BC6B 06 20 04 1C 03 1D 01 1C 02 1D 06 20 04 1D 03 1C .byte $01, $1B, $02, $1C, $06, $20, $04, $20, $03, $1F, $01, $1E, $02, $1F, $06, $25 ; CPU:$BC7B PRG:BC7B 01 1B 02 1C 06 20 04 20 03 1F 01 1E 02 1F 06 25 .byte $04, $1F, $03, $20, $01, $1F, $02, $20, $04, $23, $01, $22, $01, $23, $02, $22 ; CPU:$BC8B PRG:BC8B 04 1F 03 20 01 1F 02 20 04 23 01 22 01 23 02 22 .byte $02, $20, $03, $22, $01, $21, $02, $22, $1A, $27, $8A, $8B, $56, $01, $8C, $05 ; CPU:$BC9B PRG:BC9B 02 20 03 22 01 21 02 22 1A 27 8A 8B 56 01 8C 05 .byte $01, $8E, $0C, $08, $00, $02, $20, $04, $1F, $0A, $1E, $02, $1C, $04, $1B, $22 ; CPU:$BCAB PRG:BCAB 01 8E 0C 08 00 02 20 04 1F 0A 1E 02 1C 04 1B 22 .byte $19, $03, $22, $01, $20, $02, $1D, $06, $22, $04, $20, $0C, $20, $04, $00, $03 ; CPU:$BCBB PRG:BCBB 19 03 22 01 20 02 1D 06 22 04 20 0C 20 04 00 03 .byte $22, $01, $20, $02, $1D, $04, $22, $02, $24, $02, $22, $06, $20, $02, $00, $02 ; CPU:$BCCB PRG:BCCB 22 01 20 02 1D 04 22 02 24 02 22 06 20 02 00 02 .byte $1D, $02, $20, $02, $1D, $02, $1B, $02, $19, $06, $1C, $06, $1B, $08, $19, $02 ; CPU:$BCDB PRG:BCDB 1D 02 20 02 1D 02 1B 02 19 06 1C 06 1B 08 19 02 .byte $00, $02, $19, $02, $1E, $02, $1C, $02, $1B, $02, $19, $03, $1D, $01, $1B, $02 ; CPU:$BCEB PRG:BCEB 00 02 19 02 1E 02 1C 02 1B 02 19 03 1D 01 1B 02 .byte $1D, $06, $20, $04, $20, $0C, $20, $02, $1B, $02, $1D, $03, $1E, $01, $1C, $02 ; CPU:$BCFB PRG:BCFB 1D 06 20 04 20 0C 20 02 1B 02 1D 03 1E 01 1C 02 .byte $19, $06, $16, $04, $19, $08, $20, $02, $20, $04, $1F, $0A, $1E, $02, $1C, $04 ; CPU:$BD0B PRG:BD0B 19 06 16 04 19 08 20 02 20 04 1F 0A 1E 02 1C 04 .byte $1B, $22, $19, $88, $82, $B8, $84, $18, $87, $F0, $8F, $0A, $8E, $00, $04, $00 ; CPU:$BD1B PRG:BD1B 1B 22 19 88 82 B8 84 18 87 F0 8F 0A 8E 00 04 00 .byte $04, $16, $04, $00, $04, $16, $04, $00, $04, $16, $04, $00, $04, $16, $04, $00 ; CPU:$BD2B PRG:BD2B 04 16 04 00 04 16 04 00 04 16 04 00 04 16 04 00 .byte $04, $16, $04, $00, $04, $16, $04, $00, $04, $17, $04, $00, $04, $17, $04, $00 ; CPU:$BD3B PRG:BD3B 04 16 04 00 04 16 04 00 04 17 04 00 04 17 04 00 .byte $04, $1C, $04, $00, $04, $1C, $04, $00, $04, $1C, $04, $00, $04, $1C, $04, $00 ; CPU:$BD4B PRG:BD4B 04 1C 04 00 04 1C 04 00 04 1C 04 00 04 1C 04 00 .byte $04, $16, $04, $00, $04, $16, $04, $00, $04, $18, $04, $00, $04, $18, $04, $00 ; CPU:$BD5B PRG:BD5B 04 16 04 00 04 16 04 00 04 18 04 00 04 18 04 00 .byte $04, $1C, $04, $00, $04, $1C, $02, $00, $02, $0F, $02, $14, $02, $18, $08, $1B ; CPU:$BD6B PRG:BD6B 04 1C 04 00 04 1C 02 00 02 0F 02 14 02 18 08 1B .byte $02, $00, $02, $0D, $02, $12, $02, $16, $08, $19, $06, $00, $02, $0F, $02, $10 ; CPU:$BD7B PRG:BD7B 02 00 02 0D 02 12 02 16 08 19 06 00 02 0F 02 10 .byte $06, $11, $10, $19, $82, $08, $02, $20, $02, $20, $02, $20, $02, $20, $02, $20 ; CPU:$BD8B PRG:BD8B 06 11 10 19 82 08 02 20 02 20 02 20 02 20 02 20 .byte $02, $20, $02, $20, $04, $1E, $02, $1E, $02, $1E, $02, $1E, $02, $1E, $02, $1E ; CPU:$BD9B PRG:BD9B 02 20 02 20 04 1E 02 1E 02 1E 02 1E 02 1E 02 1E .byte $02, $1E, $06, $20, $02, $00, $02, $20, $03, $22, $01, $20, $02, $22, $02, $20 ; CPU:$BDAB PRG:BDAB 02 1E 06 20 02 00 02 20 03 22 01 20 02 22 02 20 .byte $02, $22, $04, $25, $02, $20, $02, $22, $04, $25, $02, $20, $02, $20, $02, $20 ; CPU:$BDBB PRG:BDBB 02 22 04 25 02 20 02 22 04 25 02 20 02 20 02 20 .byte $02, $20, $02, $20, $02, $20, $02, $20, $02, $20, $04, $1E, $02, $1E, $02, $1E ; CPU:$BDCB PRG:BDCB 02 20 02 20 02 20 02 20 02 20 04 1E 02 1E 02 1E .byte $02, $1E, $02, $1E, $02, $1E, $02, $1E, $06, $20, $02, $00, $02, $20, $03, $22 ; CPU:$BDDB PRG:BDDB 02 1E 02 1E 02 1E 02 1E 06 20 02 00 02 20 03 22 .byte $01, $20, $02, $22, $02, $20, $02, $22, $04, $25, $02, $20, $02, $22, $04, $25 ; CPU:$BDEB PRG:BDEB 01 20 02 22 02 20 02 22 04 25 02 20 02 22 04 25 .byte $02, $20, $8A, $82, $B8, $8B, $E7, $00, $8C, $08, $00, $8E, $05, $82, $02, $04 ; CPU:$BDFB PRG:BDFB 02 20 8A 82 B8 8B E7 00 8C 08 00 8E 05 82 02 04 .byte $11, $04, $11, $04, $11, $04, $11, $04, $10, $04, $10, $04, $10, $04, $10, $82 ; CPU:$BE0B PRG:BE0B 11 04 11 04 11 04 11 04 10 04 10 04 10 04 10 82 .byte $B8, $04, $00, $04, $17, $04, $00, $04, $17, $04, $00, $04, $12, $04, $00, $04 ; CPU:$BE1B PRG:BE1B B8 04 00 04 17 04 00 04 17 04 00 04 12 04 00 04 .byte $12, $04, $00, $04, $17, $04, $00, $04, $17, $04, $00, $04, $12, $04, $00, $04 ; CPU:$BE2B PRG:BE2B 12 04 00 04 17 04 00 04 17 04 00 04 12 04 00 04 .byte $12, $04, $00, $04, $19, $04, $00, $04, $19, $04, $00, $04, $17, $04, $00, $04 ; CPU:$BE3B PRG:BE3B 12 04 00 04 19 04 00 04 19 04 00 04 17 04 00 04 .byte $17, $04, $00, $04, $1B, $04, $00, $04, $1B, $04, $00, $04, $19, $04, $00, $04 ; CPU:$BE4B PRG:BE4B 17 04 00 04 1B 04 00 04 1B 04 00 04 19 04 00 04 .byte $19, $8A, $8B, $44, $01, $8C, $FD, $00, $8E, $00, $02, $00, $02, $0F, $02, $14 ; CPU:$BE5B PRG:BE5B 19 8A 8B 44 01 8C FD 00 8E 00 02 00 02 0F 02 14 .byte $02, $18, $08, $1B, $02, $00, $02, $0D, $02, $12, $02, $16, $08, $19, $06, $00 ; CPU:$BE6B PRG:BE6B 02 18 08 1B 02 00 02 0D 02 12 02 16 08 19 06 00 .byte $02, $0F, $02, $10, $06, $11, $10, $19, $04, $00, $04, $16, $04, $00, $04, $16 ; CPU:$BE7B PRG:BE7B 02 0F 02 10 06 11 10 19 04 00 04 16 04 00 04 16 .byte $04, $00, $04, $16, $04, $00, $04, $16, $04, $00, $04, $16, $04, $00, $04, $16 ; CPU:$BE8B PRG:BE8B 04 00 04 16 04 00 04 16 04 00 04 16 04 00 04 16 .byte $04, $00, $04, $17, $04, $00, $04, $17, $04, $00, $04, $1C, $04, $00, $04, $1C ; CPU:$BE9B PRG:BE9B 04 00 04 17 04 00 04 17 04 00 04 1C 04 00 04 1C .byte $04, $00, $04, $1C, $04, $00, $04, $1C, $04, $00, $04, $16, $04, $00, $04, $16 ; CPU:$BEAB PRG:BEAB 04 00 04 1C 04 00 04 1C 04 00 04 16 04 00 04 16 .byte $04, $00, $04, $18, $04, $00, $04, $18, $04, $00, $04, $1C, $04, $00, $04, $1C ; CPU:$BEBB PRG:BEBB 04 00 04 18 04 00 04 18 04 00 04 1C 04 00 04 1C .byte $02, $00, $02, $0F, $02, $14, $02, $18, $08, $1B, $02, $00, $02, $0D, $02, $12 ; CPU:$BECB PRG:BECB 02 00 02 0F 02 14 02 18 08 1B 02 00 02 0D 02 12 .byte $02, $16, $08, $19, $06, $00, $02, $0F, $02, $10, $06, $11, $10, $19, $88, $82 ; CPU:$BEDB PRG:BEDB 02 16 08 19 06 00 02 0F 02 10 06 11 10 19 88 82 .byte $43, $8F, $0A, $8E, $00, $04, $19, $04, $20, $04, $19, $04, $20, $04, $19, $04 ; CPU:$BEEB PRG:BEEB 43 8F 0A 8E 00 04 19 04 20 04 19 04 20 04 19 04 .byte $20, $04, $19, $04, $20, $04, $19, $04, $20, $04, $19, $04, $20, $04, $19, $04 ; CPU:$BEFB PRG:BEFB 20 04 19 04 20 04 19 04 20 04 19 04 20 04 19 04 .byte $20, $04, $19, $04, $20, $04, $1E, $04, $25, $04, $1E, $04, $25, $04, $1E, $04 ; CPU:$BF0B PRG:BF0B 20 04 19 04 20 04 1E 04 25 04 1E 04 25 04 1E 04 .byte $25, $04, $1E, $04, $25, $04, $19, $04, $20, $04, $19, $04, $20, $04, $14, $04 ; CPU:$BF1B PRG:BF1B 25 04 1E 04 25 04 19 04 20 04 19 04 20 04 14 04 .byte $20, $04, $14, $04, $20, $04, $1E, $04, $25, $04, $1E, $04, $25, $10, $14, $10 ; CPU:$BF2B PRG:BF2B 20 04 14 04 20 04 1E 04 25 04 1E 04 25 10 14 10 .byte $12, $02, $0D, $02, $14, $1C, $19, $8E, $0C, $82, $0C, $02, $1D, $02, $1D, $02 ; CPU:$BF3B PRG:BF3B 12 02 0D 02 14 1C 19 8E 0C 82 0C 02 1D 02 1D 02 .byte $1D, $02, $1D, $02, $1D, $02, $1D, $02, $1D, $04, $1C, $02, $1C, $02, $1C, $02 ; CPU:$BF4B PRG:BF4B 1D 02 1D 02 1D 02 1D 02 1D 04 1C 02 1C 02 1C 02 .byte $1C, $02, $1C, $02, $1C, $02, $1C, $22, $1D, $02, $1D, $02, $1D, $02, $1D, $02 ; CPU:$BF5B PRG:BF5B 1C 02 1C 02 1C 02 1C 22 1D 02 1D 02 1D 02 1D 02 .byte $1D, $02, $1D, $02, $1D, $02, $1D, $04, $1C, $02, $1C, $02, $1C, $02, $1C, $02 ; CPU:$BF6B PRG:BF6B 1D 02 1D 02 1D 02 1D 04 1C 02 1C 02 1C 02 1C 02 .byte $1C, $02, $1C, $02, $1C, $22, $1D, $8A, $8E, $00, $82, $43, $8B, $A3, $00, $8C ; CPU:$BF7B PRG:BF7B 1C 02 1C 02 1C 22 1D 8A 8E 00 82 43 8B A3 00 8C .byte $04, $00, $8E, $05, $04, $19, $04, $19, $04, $19, $04, $19, $04, $12, $04, $14 ; CPU:$BF8B PRG:BF8B 04 00 8E 05 04 19 04 19 04 19 04 19 04 12 04 14 .byte $04, $16, $04, $12, $82, $43, $04, $19, $04, $20, $04, $19, $04, $20, $04, $12 ; CPU:$BF9B PRG:BF9B 04 16 04 12 82 43 04 19 04 20 04 19 04 20 04 12 .byte $04, $1C, $04, $12, $04, $1C, $04, $19, $04, $20, $04, $19, $04, $20, $04, $12 ; CPU:$BFAB PRG:BFAB 04 1C 04 12 04 1C 04 19 04 20 04 19 04 20 04 12 .byte $04, $1C, $04, $12, $04, $1C, $04, $1F, $04, $22, $04, $1F, $04, $22, $04, $19 ; CPU:$BFBB PRG:BFBB 04 1C 04 12 04 1C 04 1F 04 22 04 1F 04 22 04 19 .byte $04, $20, $04, $19, $04, $20, $04, $1B, $04, $22, $04, $1B, $04, $22, $04, $1B ; CPU:$BFCB PRG:BFCB 04 20 04 19 04 20 04 1B 04 22 04 1B 04 22 04 1B .byte $04, $22, $04, $1B, $04, $22, $8A, $8B, $FE, $00, $8C, $B7, $00, $8E, $00, $10 ; CPU:$BFDB PRG:BFDB 04 22 04 1B 04 22 8A 8B FE 00 8C B7 00 8E 00 10 .byte $14, $10, $12, $02, $0D, $02, $14, $1C, $19, $04, $19, $04, $20, $04, $19, $04 ; CPU:$BFEB PRG:BFEB 14 10 12 02 0D 02 14 1C 19 04 19 04 20 04 19 04 .byte $20, $04, $19, $04, $20 ; CPU:$BFFB PRG:BFFB 20 04 19 04 20 .segment "PRG6" .org $C000 ; ---- data $C000-$DFFF (8192 bytes) ---- .byte $04, $19, $04, $20, $04, $19, $04, $20, $04, $19, $04, $20, $04, $19, $04, $20 ; CPU:$C000 PRG:C000 04 19 04 20 04 19 04 20 04 19 04 20 04 19 04 20 .byte $04, $19, $04, $20, $04, $1E, $04, $25, $04, $1E, $04, $25, $04, $1E, $04, $25 ; CPU:$C010 PRG:C010 04 19 04 20 04 1E 04 25 04 1E 04 25 04 1E 04 25 .byte $04, $1E, $04, $25, $04, $19, $04, $20, $04, $19, $04, $20, $04, $14, $04, $20 ; CPU:$C020 PRG:C020 04 1E 04 25 04 19 04 20 04 19 04 20 04 14 04 20 .byte $04, $14, $04, $20, $04, $1E, $04, $25, $04, $1E, $04, $25, $10, $14, $10, $12 ; CPU:$C030 PRG:C030 04 14 04 20 04 1E 04 25 04 1E 04 25 10 14 10 12 .byte $02, $0D, $02, $14, $1C, $19, $88, $8E, $03, $8F, $0D, $04, $3F, $04, $44, $04 ; CPU:$C040 PRG:C040 02 0D 02 14 1C 19 88 8E 03 8F 0D 04 3F 04 44 04 .byte $3F, $03, $44, $01, $43, $88, $60, $C0, $CF, $C0, $64, $C1, $11, $C2, $02, $0F ; CPU:$C050 PRG:C050 3F 03 44 01 43 88 60 C0 CF C0 64 C1 11 C2 02 0F .byte $82, $89, $84, $14, $87, $78, $8E, $0C, $8F, $0C, $8D, $08, $02, $14, $01, $19 ; CPU:$C060 PRG:C060 82 89 84 14 87 78 8E 0C 8F 0C 8D 08 02 14 01 19 .byte $01, $19, $02, $19, $02, $1B, $04, $1D, $02, $1B, $02, $1D, $04, $1E, $02, $1D ; CPU:$C070 PRG:C070 01 19 02 19 02 1B 04 1D 02 1B 02 1D 04 1E 02 1D .byte $02, $1B, $02, $1B, $06, $1D, $02, $14, $01, $19, $01, $19, $02, $19, $02, $1B ; CPU:$C080 PRG:C080 02 1B 02 1B 06 1D 02 14 01 19 01 19 02 19 02 1B .byte $04, $1D, $02, $1B, $02, $1D, $04, $1E, $04, $1D, $08, $1B, $8E, $0F, $02, $14 ; CPU:$C090 PRG:C090 04 1D 02 1B 02 1D 04 1E 04 1D 08 1B 8E 0F 02 14 .byte $01, $19, $01, $19, $02, $19, $02, $1B, $04, $1D, $02, $1B, $02, $1D, $04, $1E ; CPU:$C0A0 PRG:C0A0 01 19 01 19 02 19 02 1B 04 1D 02 1B 02 1D 04 1E .byte $02, $1D, $02, $1B, $02, $1B, $06, $1D, $02, $14, $01, $19, $01, $19, $02, $19 ; CPU:$C0B0 PRG:C0B0 02 1D 02 1B 02 1B 06 1D 02 14 01 19 01 19 02 19 .byte $02, $1B, $04, $1D, $02, $1B, $02, $1D, $04, $1E, $04, $1D, $08, $1B, $88, $82 ; CPU:$C0C0 PRG:C0C0 02 1B 04 1D 02 1B 02 1D 04 1E 04 1D 08 1B 88 82 .byte $5A, $84, $0C, $87, $78, $8E, $00, $8F, $0A, $02, $1E, $01, $1D, $01, $1D, $02 ; CPU:$C0D0 PRG:C0D0 5A 84 0C 87 78 8E 00 8F 0A 02 1E 01 1D 01 1D 02 .byte $1D, $02, $1E, $04, $20, $02, $1E, $02, $1D, $04, $22, $02, $20, $02, $1E, $02 ; CPU:$C0E0 PRG:C0E0 1D 02 1E 04 20 02 1E 02 1D 04 22 02 20 02 1E 02 .byte $1E, $06, $20, $02, $1E, $01, $1D, $01, $1D, $02, $1D, $02, $1E, $04, $20, $02 ; CPU:$C0F0 PRG:C0F0 1E 06 20 02 1E 01 1D 01 1D 02 1D 02 1E 04 20 02 .byte $1E, $02, $1D, $01, $2A, $01, $25, $01, $22, $01, $1E, $01, $1D, $01, $20, $01 ; CPU:$C100 PRG:C100 1E 02 1D 01 2A 01 25 01 22 01 1E 01 1D 01 20 01 .byte $25, $01, $29, $01, $27, $01, $25, $01, $24, $01, $22, $04, $20, $8E, $03, $02 ; CPU:$C110 PRG:C110 25 01 29 01 27 01 25 01 24 01 22 04 20 8E 03 02 .byte $1E, $01, $1D, $01, $1D, $02, $1D, $02, $1E, $04, $20, $02, $1E, $02, $1D, $04 ; CPU:$C120 PRG:C120 1E 01 1D 01 1D 02 1D 02 1E 04 20 02 1E 02 1D 04 .byte $22, $02, $20, $02, $1E, $02, $1E, $06, $20, $02, $1E, $01, $1D, $01, $1D, $02 ; CPU:$C130 PRG:C130 22 02 20 02 1E 02 1E 06 20 02 1E 01 1D 01 1D 02 .byte $1D, $02, $1E, $04, $20, $02, $1E, $02, $1D, $01, $2A, $01, $25, $01, $22, $01 ; CPU:$C140 PRG:C140 1D 02 1E 04 20 02 1E 02 1D 01 2A 01 25 01 22 01 .byte $1E, $01, $1D, $01, $20, $01, $25, $01, $29, $01, $27, $01, $25, $01, $24, $01 ; CPU:$C150 PRG:C150 1E 01 1D 01 20 01 25 01 29 01 27 01 25 01 24 01 .byte $22, $04, $20, $88, $82, $4B, $8E, $00, $8F, $0A, $01, $19, $01, $00, $01, $19 ; CPU:$C160 PRG:C160 22 04 20 88 82 4B 8E 00 8F 0A 01 19 01 00 01 19 .byte $01, $19, $02, $19, $02, $14, $04, $19, $02, $14, $01, $19, $01, $00, $82, $14 ; CPU:$C170 PRG:C170 01 19 02 19 02 14 04 19 02 14 01 19 01 00 82 14 .byte $02, $19, $02, $00, $02, $19, $01, $14, $01, $00, $02, $14, $02, $19, $01, $20 ; CPU:$C180 PRG:C180 02 19 02 00 02 19 01 14 01 00 02 14 02 19 01 20 .byte $01, $20, $01, $20, $01, $20, $82, $4B, $01, $19, $01, $00, $01, $19, $01, $19 ; CPU:$C190 PRG:C190 01 20 01 20 01 20 82 4B 01 19 01 00 01 19 01 19 .byte $02, $19, $02, $14, $04, $19, $02, $14, $02, $19, $02, $12, $02, $00, $02, $12 ; CPU:$C1A0 PRG:C1A0 02 19 02 14 04 19 02 14 02 19 02 12 02 00 02 12 .byte $02, $00, $04, $14, $01, $20, $01, $1E, $01, $1D, $01, $1B, $8E, $03, $01, $19 ; CPU:$C1B0 PRG:C1B0 02 00 04 14 01 20 01 1E 01 1D 01 1B 8E 03 01 19 .byte $01, $00, $01, $19, $01, $19, $02, $19, $02, $14, $04, $19, $02, $14, $01, $19 ; CPU:$C1C0 PRG:C1C0 01 00 01 19 01 19 02 19 02 14 04 19 02 14 01 19 .byte $01, $00, $82, $14, $02, $19, $02, $00, $02, $19, $01, $14, $01, $00, $02, $14 ; CPU:$C1D0 PRG:C1D0 01 00 82 14 02 19 02 00 02 19 01 14 01 00 02 14 .byte $02, $19, $01, $20, $01, $20, $01, $20, $01, $20, $82, $4B, $01, $19, $01, $00 ; CPU:$C1E0 PRG:C1E0 02 19 01 20 01 20 01 20 01 20 82 4B 01 19 01 00 .byte $01, $19, $01, $19, $02, $19, $02, $14, $04, $19, $02, $14, $02, $19, $02, $12 ; CPU:$C1F0 PRG:C1F0 01 19 01 19 02 19 02 14 04 19 02 14 02 19 02 12 .byte $02, $00, $02, $12, $02, $00, $04, $14, $01, $20, $01, $1E, $01, $1D, $01, $1B ; CPU:$C200 PRG:C200 02 00 02 12 02 00 04 14 01 20 01 1E 01 1D 01 1B .byte $88, $8E, $05, $8F, $09, $02, $3E, $01, $44, $01, $44, $02, $44, $02, $44, $02 ; CPU:$C210 PRG:C210 88 8E 05 8F 09 02 3E 01 44 01 44 02 44 02 44 02 .byte $3E, $02, $44, $02, $3E, $02, $44, $88, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C220 PRG:C220 3E 02 44 02 3E 02 44 88 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:$C230 PRG:C230 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C240 PRG:C240 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C250 PRG:C250 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C260 PRG:C260 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C270 PRG:C270 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C280 PRG:C280 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C290 PRG:C290 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C2A0 PRG:C2A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C2B0 PRG:C2B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C2C0 PRG:C2C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C2D0 PRG:C2D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C2E0 PRG:C2E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C2F0 PRG:C2F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C300 PRG:C300 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C310 PRG:C310 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C320 PRG:C320 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C330 PRG:C330 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C340 PRG:C340 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C350 PRG:C350 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C360 PRG:C360 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C370 PRG:C370 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C380 PRG:C380 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C390 PRG:C390 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C3A0 PRG:C3A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C3B0 PRG:C3B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C3C0 PRG:C3C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C3D0 PRG:C3D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C3E0 PRG:C3E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C3F0 PRG:C3F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C400 PRG:C400 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C410 PRG:C410 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C420 PRG:C420 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C430 PRG:C430 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C440 PRG:C440 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C450 PRG:C450 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C460 PRG:C460 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C470 PRG:C470 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C480 PRG:C480 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C490 PRG:C490 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C4A0 PRG:C4A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C4B0 PRG:C4B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C4C0 PRG:C4C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C4D0 PRG:C4D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C4E0 PRG:C4E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C4F0 PRG:C4F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C500 PRG:C500 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C510 PRG:C510 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C520 PRG:C520 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C530 PRG:C530 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C540 PRG:C540 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C550 PRG:C550 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C560 PRG:C560 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C570 PRG:C570 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C580 PRG:C580 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C590 PRG:C590 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C5A0 PRG:C5A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C5B0 PRG:C5B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C5C0 PRG:C5C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C5D0 PRG:C5D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C5E0 PRG:C5E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C5F0 PRG:C5F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C600 PRG:C600 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C610 PRG:C610 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C620 PRG:C620 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C630 PRG:C630 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C640 PRG:C640 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C650 PRG:C650 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C660 PRG:C660 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C670 PRG:C670 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C680 PRG:C680 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C690 PRG:C690 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C6A0 PRG:C6A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C6B0 PRG:C6B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C6C0 PRG:C6C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C6D0 PRG:C6D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C6E0 PRG:C6E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C6F0 PRG:C6F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C700 PRG:C700 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C710 PRG:C710 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C720 PRG:C720 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C730 PRG:C730 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C740 PRG:C740 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C750 PRG:C750 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C760 PRG:C760 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C770 PRG:C770 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C780 PRG:C780 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C790 PRG:C790 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C7A0 PRG:C7A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C7B0 PRG:C7B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C7C0 PRG:C7C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C7D0 PRG:C7D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C7E0 PRG:C7E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C7F0 PRG:C7F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C800 PRG:C800 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C810 PRG:C810 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C820 PRG:C820 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C830 PRG:C830 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C840 PRG:C840 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C850 PRG:C850 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C860 PRG:C860 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C870 PRG:C870 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C880 PRG:C880 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C890 PRG:C890 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C8A0 PRG:C8A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C8B0 PRG:C8B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C8C0 PRG:C8C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C8D0 PRG:C8D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C8E0 PRG:C8E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C8F0 PRG:C8F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C900 PRG:C900 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C910 PRG:C910 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C920 PRG:C920 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C930 PRG:C930 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C940 PRG:C940 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C950 PRG:C950 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C960 PRG:C960 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C970 PRG:C970 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C980 PRG:C980 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C990 PRG:C990 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C9A0 PRG:C9A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C9B0 PRG:C9B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C9C0 PRG:C9C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C9D0 PRG:C9D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C9E0 PRG:C9E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$C9F0 PRG:C9F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CA00 PRG:CA00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CA10 PRG:CA10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CA20 PRG:CA20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CA30 PRG:CA30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CA40 PRG:CA40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CA50 PRG:CA50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CA60 PRG:CA60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CA70 PRG:CA70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CA80 PRG:CA80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CA90 PRG:CA90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CAA0 PRG:CAA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CAB0 PRG:CAB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CAC0 PRG:CAC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CAD0 PRG:CAD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CAE0 PRG:CAE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CAF0 PRG:CAF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CB00 PRG:CB00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CB10 PRG:CB10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CB20 PRG:CB20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CB30 PRG:CB30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CB40 PRG:CB40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CB50 PRG:CB50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CB60 PRG:CB60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CB70 PRG:CB70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CB80 PRG:CB80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CB90 PRG:CB90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CBA0 PRG:CBA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CBB0 PRG:CBB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CBC0 PRG:CBC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CBD0 PRG:CBD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CBE0 PRG:CBE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CBF0 PRG:CBF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CC00 PRG:CC00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CC10 PRG:CC10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CC20 PRG:CC20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CC30 PRG:CC30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CC40 PRG:CC40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CC50 PRG:CC50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CC60 PRG:CC60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CC70 PRG:CC70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CC80 PRG:CC80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CC90 PRG:CC90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CCA0 PRG:CCA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CCB0 PRG:CCB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CCC0 PRG:CCC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CCD0 PRG:CCD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CCE0 PRG:CCE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CCF0 PRG:CCF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CD00 PRG:CD00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CD10 PRG:CD10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CD20 PRG:CD20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CD30 PRG:CD30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CD40 PRG:CD40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CD50 PRG:CD50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CD60 PRG:CD60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CD70 PRG:CD70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CD80 PRG:CD80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CD90 PRG:CD90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CDA0 PRG:CDA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CDB0 PRG:CDB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CDC0 PRG:CDC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CDD0 PRG:CDD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CDE0 PRG:CDE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CDF0 PRG:CDF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CE00 PRG:CE00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CE10 PRG:CE10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CE20 PRG:CE20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CE30 PRG:CE30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CE40 PRG:CE40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CE50 PRG:CE50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CE60 PRG:CE60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CE70 PRG:CE70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CE80 PRG:CE80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CE90 PRG:CE90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CEA0 PRG:CEA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CEB0 PRG:CEB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CEC0 PRG:CEC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CED0 PRG:CED0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CEE0 PRG:CEE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CEF0 PRG:CEF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CF00 PRG:CF00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CF10 PRG:CF10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CF20 PRG:CF20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CF30 PRG:CF30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CF40 PRG:CF40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CF50 PRG:CF50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CF60 PRG:CF60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CF70 PRG:CF70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CF80 PRG:CF80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CF90 PRG:CF90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CFA0 PRG:CFA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CFB0 PRG:CFB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CFC0 PRG:CFC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CFD0 PRG:CFD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CFE0 PRG:CFE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$CFF0 PRG:CFF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D000 PRG:D000 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D010 PRG:D010 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D020 PRG:D020 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D030 PRG:D030 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D040 PRG:D040 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D050 PRG:D050 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D060 PRG:D060 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D070 PRG:D070 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D080 PRG:D080 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D090 PRG:D090 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D0A0 PRG:D0A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D0B0 PRG:D0B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D0C0 PRG:D0C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D0D0 PRG:D0D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D0E0 PRG:D0E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D0F0 PRG:D0F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D100 PRG:D100 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D110 PRG:D110 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D120 PRG:D120 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D130 PRG:D130 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D140 PRG:D140 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D150 PRG:D150 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D160 PRG:D160 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D170 PRG:D170 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D180 PRG:D180 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D190 PRG:D190 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D1A0 PRG:D1A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D1B0 PRG:D1B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D1C0 PRG:D1C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D1D0 PRG:D1D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D1E0 PRG:D1E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D1F0 PRG:D1F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D200 PRG:D200 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D210 PRG:D210 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D220 PRG:D220 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D230 PRG:D230 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D240 PRG:D240 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D250 PRG:D250 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D260 PRG:D260 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D270 PRG:D270 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D280 PRG:D280 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D290 PRG:D290 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D2A0 PRG:D2A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D2B0 PRG:D2B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D2C0 PRG:D2C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D2D0 PRG:D2D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D2E0 PRG:D2E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D2F0 PRG:D2F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D300 PRG:D300 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D310 PRG:D310 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D320 PRG:D320 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D330 PRG:D330 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D340 PRG:D340 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D350 PRG:D350 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D360 PRG:D360 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D370 PRG:D370 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D380 PRG:D380 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D390 PRG:D390 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D3A0 PRG:D3A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D3B0 PRG:D3B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D3C0 PRG:D3C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D3D0 PRG:D3D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D3E0 PRG:D3E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D3F0 PRG:D3F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D400 PRG:D400 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D410 PRG:D410 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D420 PRG:D420 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D430 PRG:D430 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D440 PRG:D440 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D450 PRG:D450 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D460 PRG:D460 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D470 PRG:D470 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D480 PRG:D480 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D490 PRG:D490 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D4A0 PRG:D4A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D4B0 PRG:D4B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D4C0 PRG:D4C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D4D0 PRG:D4D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D4E0 PRG:D4E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D4F0 PRG:D4F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D500 PRG:D500 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D510 PRG:D510 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D520 PRG:D520 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D530 PRG:D530 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D540 PRG:D540 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D550 PRG:D550 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D560 PRG:D560 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D570 PRG:D570 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D580 PRG:D580 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D590 PRG:D590 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D5A0 PRG:D5A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D5B0 PRG:D5B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D5C0 PRG:D5C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D5D0 PRG:D5D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D5E0 PRG:D5E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D5F0 PRG:D5F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D600 PRG:D600 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D610 PRG:D610 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D620 PRG:D620 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D630 PRG:D630 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D640 PRG:D640 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D650 PRG:D650 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D660 PRG:D660 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D670 PRG:D670 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D680 PRG:D680 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D690 PRG:D690 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D6A0 PRG:D6A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D6B0 PRG:D6B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D6C0 PRG:D6C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D6D0 PRG:D6D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D6E0 PRG:D6E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D6F0 PRG:D6F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D700 PRG:D700 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D710 PRG:D710 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D720 PRG:D720 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D730 PRG:D730 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D740 PRG:D740 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D750 PRG:D750 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D760 PRG:D760 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D770 PRG:D770 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D780 PRG:D780 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D790 PRG:D790 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D7A0 PRG:D7A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D7B0 PRG:D7B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D7C0 PRG:D7C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D7D0 PRG:D7D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D7E0 PRG:D7E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D7F0 PRG:D7F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D800 PRG:D800 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D810 PRG:D810 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D820 PRG:D820 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D830 PRG:D830 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D840 PRG:D840 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D850 PRG:D850 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D860 PRG:D860 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D870 PRG:D870 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D880 PRG:D880 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D890 PRG:D890 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D8A0 PRG:D8A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D8B0 PRG:D8B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D8C0 PRG:D8C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D8D0 PRG:D8D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D8E0 PRG:D8E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D8F0 PRG:D8F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D900 PRG:D900 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D910 PRG:D910 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D920 PRG:D920 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D930 PRG:D930 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D940 PRG:D940 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D950 PRG:D950 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D960 PRG:D960 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D970 PRG:D970 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D980 PRG:D980 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D990 PRG:D990 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D9A0 PRG:D9A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D9B0 PRG:D9B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D9C0 PRG:D9C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D9D0 PRG:D9D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D9E0 PRG:D9E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$D9F0 PRG:D9F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA00 PRG:DA00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA10 PRG:DA10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA20 PRG:DA20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA30 PRG:DA30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA40 PRG:DA40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA50 PRG:DA50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA60 PRG:DA60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA70 PRG:DA70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA80 PRG:DA80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DA90 PRG:DA90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DAA0 PRG:DAA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DAB0 PRG:DAB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DAC0 PRG:DAC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DAD0 PRG:DAD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DAE0 PRG:DAE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DAF0 PRG:DAF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB00 PRG:DB00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB10 PRG:DB10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB20 PRG:DB20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB30 PRG:DB30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB40 PRG:DB40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB50 PRG:DB50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB60 PRG:DB60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB70 PRG:DB70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB80 PRG:DB80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DB90 PRG:DB90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DBA0 PRG:DBA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DBB0 PRG:DBB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DBC0 PRG:DBC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DBD0 PRG:DBD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DBE0 PRG:DBE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DBF0 PRG:DBF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC00 PRG:DC00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC10 PRG:DC10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC20 PRG:DC20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC30 PRG:DC30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC40 PRG:DC40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC50 PRG:DC50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC60 PRG:DC60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC70 PRG:DC70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC80 PRG:DC80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DC90 PRG:DC90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DCA0 PRG:DCA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DCB0 PRG:DCB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DCC0 PRG:DCC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DCD0 PRG:DCD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DCE0 PRG:DCE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DCF0 PRG:DCF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD00 PRG:DD00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD10 PRG:DD10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD20 PRG:DD20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD30 PRG:DD30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD40 PRG:DD40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD50 PRG:DD50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD60 PRG:DD60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD70 PRG:DD70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD80 PRG:DD80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DD90 PRG:DD90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DDA0 PRG:DDA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DDB0 PRG:DDB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DDC0 PRG:DDC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DDD0 PRG:DDD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DDE0 PRG:DDE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DDF0 PRG:DDF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE00 PRG:DE00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE10 PRG:DE10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE20 PRG:DE20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE30 PRG:DE30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE40 PRG:DE40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE50 PRG:DE50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE60 PRG:DE60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE70 PRG:DE70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE80 PRG:DE80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DE90 PRG:DE90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DEA0 PRG:DEA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DEB0 PRG:DEB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DEC0 PRG:DEC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DED0 PRG:DED0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DEE0 PRG:DEE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DEF0 PRG:DEF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF00 PRG:DF00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF10 PRG:DF10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF20 PRG:DF20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF30 PRG:DF30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF40 PRG:DF40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF50 PRG:DF50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF60 PRG:DF60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF70 PRG:DF70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF80 PRG:DF80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DF90 PRG:DF90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DFA0 PRG:DFA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DFB0 PRG:DFB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DFC0 PRG:DFC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DFD0 PRG:DFD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DFE0 PRG:DFE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$DFF0 PRG:DFF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .segment "PRG7" .org $E000 ; ---- data $E000-$FF6F (8048 bytes) ---- .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E000 PRG:E000 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E010 PRG:E010 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E020 PRG:E020 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E030 PRG:E030 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E040 PRG:E040 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E050 PRG:E050 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E060 PRG:E060 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E070 PRG:E070 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E080 PRG:E080 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E090 PRG:E090 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E0A0 PRG:E0A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E0B0 PRG:E0B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E0C0 PRG:E0C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E0D0 PRG:E0D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E0E0 PRG:E0E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E0F0 PRG:E0F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E100 PRG:E100 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E110 PRG:E110 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E120 PRG:E120 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E130 PRG:E130 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E140 PRG:E140 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E150 PRG:E150 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E160 PRG:E160 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E170 PRG:E170 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E180 PRG:E180 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E190 PRG:E190 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E1A0 PRG:E1A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E1B0 PRG:E1B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E1C0 PRG:E1C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E1D0 PRG:E1D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E1E0 PRG:E1E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E1F0 PRG:E1F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E200 PRG:E200 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E210 PRG:E210 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E220 PRG:E220 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E230 PRG:E230 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E240 PRG:E240 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E250 PRG:E250 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E260 PRG:E260 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E270 PRG:E270 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E280 PRG:E280 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E290 PRG:E290 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E2A0 PRG:E2A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E2B0 PRG:E2B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E2C0 PRG:E2C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E2D0 PRG:E2D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E2E0 PRG:E2E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E2F0 PRG:E2F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E300 PRG:E300 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E310 PRG:E310 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E320 PRG:E320 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E330 PRG:E330 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E340 PRG:E340 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E350 PRG:E350 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E360 PRG:E360 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E370 PRG:E370 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E380 PRG:E380 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E390 PRG:E390 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E3A0 PRG:E3A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E3B0 PRG:E3B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E3C0 PRG:E3C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E3D0 PRG:E3D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E3E0 PRG:E3E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E3F0 PRG:E3F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E400 PRG:E400 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E410 PRG:E410 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E420 PRG:E420 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E430 PRG:E430 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E440 PRG:E440 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E450 PRG:E450 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E460 PRG:E460 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E470 PRG:E470 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E480 PRG:E480 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E490 PRG:E490 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E4A0 PRG:E4A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E4B0 PRG:E4B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E4C0 PRG:E4C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E4D0 PRG:E4D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E4E0 PRG:E4E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E4F0 PRG:E4F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E500 PRG:E500 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E510 PRG:E510 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E520 PRG:E520 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E530 PRG:E530 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E540 PRG:E540 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E550 PRG:E550 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E560 PRG:E560 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E570 PRG:E570 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E580 PRG:E580 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E590 PRG:E590 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E5A0 PRG:E5A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E5B0 PRG:E5B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E5C0 PRG:E5C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E5D0 PRG:E5D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E5E0 PRG:E5E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E5F0 PRG:E5F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E600 PRG:E600 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E610 PRG:E610 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E620 PRG:E620 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E630 PRG:E630 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E640 PRG:E640 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E650 PRG:E650 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E660 PRG:E660 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E670 PRG:E670 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E680 PRG:E680 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E690 PRG:E690 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E6A0 PRG:E6A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E6B0 PRG:E6B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E6C0 PRG:E6C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E6D0 PRG:E6D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E6E0 PRG:E6E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E6F0 PRG:E6F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E700 PRG:E700 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E710 PRG:E710 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E720 PRG:E720 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E730 PRG:E730 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E740 PRG:E740 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E750 PRG:E750 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E760 PRG:E760 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E770 PRG:E770 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E780 PRG:E780 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E790 PRG:E790 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E7A0 PRG:E7A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E7B0 PRG:E7B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E7C0 PRG:E7C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E7D0 PRG:E7D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E7E0 PRG:E7E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E7F0 PRG:E7F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E800 PRG:E800 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E810 PRG:E810 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E820 PRG:E820 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E830 PRG:E830 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E840 PRG:E840 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E850 PRG:E850 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E860 PRG:E860 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E870 PRG:E870 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E880 PRG:E880 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E890 PRG:E890 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E8A0 PRG:E8A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E8B0 PRG:E8B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E8C0 PRG:E8C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E8D0 PRG:E8D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E8E0 PRG:E8E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E8F0 PRG:E8F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E900 PRG:E900 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E910 PRG:E910 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E920 PRG:E920 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E930 PRG:E930 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E940 PRG:E940 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E950 PRG:E950 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E960 PRG:E960 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E970 PRG:E970 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E980 PRG:E980 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E990 PRG:E990 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E9A0 PRG:E9A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E9B0 PRG:E9B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E9C0 PRG:E9C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E9D0 PRG:E9D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E9E0 PRG:E9E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$E9F0 PRG:E9F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA00 PRG:EA00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA10 PRG:EA10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA20 PRG:EA20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA30 PRG:EA30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA40 PRG:EA40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA50 PRG:EA50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA60 PRG:EA60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA70 PRG:EA70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA80 PRG:EA80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EA90 PRG:EA90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EAA0 PRG:EAA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EAB0 PRG:EAB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EAC0 PRG:EAC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EAD0 PRG:EAD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EAE0 PRG:EAE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EAF0 PRG:EAF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB00 PRG:EB00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB10 PRG:EB10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB20 PRG:EB20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB30 PRG:EB30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB40 PRG:EB40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB50 PRG:EB50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB60 PRG:EB60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB70 PRG:EB70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB80 PRG:EB80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EB90 PRG:EB90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EBA0 PRG:EBA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EBB0 PRG:EBB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EBC0 PRG:EBC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EBD0 PRG:EBD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EBE0 PRG:EBE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EBF0 PRG:EBF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC00 PRG:EC00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC10 PRG:EC10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC20 PRG:EC20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC30 PRG:EC30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC40 PRG:EC40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC50 PRG:EC50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC60 PRG:EC60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC70 PRG:EC70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC80 PRG:EC80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EC90 PRG:EC90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ECA0 PRG:ECA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ECB0 PRG:ECB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ECC0 PRG:ECC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ECD0 PRG:ECD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ECE0 PRG:ECE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ECF0 PRG:ECF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED00 PRG:ED00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED10 PRG:ED10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED20 PRG:ED20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED30 PRG:ED30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED40 PRG:ED40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED50 PRG:ED50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED60 PRG:ED60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED70 PRG:ED70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED80 PRG:ED80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$ED90 PRG:ED90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EDA0 PRG:EDA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EDB0 PRG:EDB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EDC0 PRG:EDC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EDD0 PRG:EDD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EDE0 PRG:EDE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EDF0 PRG:EDF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE00 PRG:EE00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE10 PRG:EE10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE20 PRG:EE20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE30 PRG:EE30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE40 PRG:EE40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE50 PRG:EE50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE60 PRG:EE60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE70 PRG:EE70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE80 PRG:EE80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EE90 PRG:EE90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EEA0 PRG:EEA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EEB0 PRG:EEB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EEC0 PRG:EEC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EED0 PRG:EED0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EEE0 PRG:EEE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EEF0 PRG:EEF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF00 PRG:EF00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF10 PRG:EF10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF20 PRG:EF20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF30 PRG:EF30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF40 PRG:EF40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF50 PRG:EF50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF60 PRG:EF60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF70 PRG:EF70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF80 PRG:EF80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EF90 PRG:EF90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EFA0 PRG:EFA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EFB0 PRG:EFB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EFC0 PRG:EFC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EFD0 PRG:EFD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EFE0 PRG:EFE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$EFF0 PRG:EFF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F000 PRG:F000 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F010 PRG:F010 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F020 PRG:F020 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F030 PRG:F030 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F040 PRG:F040 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F050 PRG:F050 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F060 PRG:F060 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F070 PRG:F070 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F080 PRG:F080 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F090 PRG:F090 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0A0 PRG:F0A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0B0 PRG:F0B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0C0 PRG:F0C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0D0 PRG:F0D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0E0 PRG:F0E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F0F0 PRG:F0F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F100 PRG:F100 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F110 PRG:F110 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F120 PRG:F120 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F130 PRG:F130 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F140 PRG:F140 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F150 PRG:F150 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F160 PRG:F160 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F170 PRG:F170 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F180 PRG:F180 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F190 PRG:F190 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1A0 PRG:F1A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1B0 PRG:F1B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1C0 PRG:F1C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1D0 PRG:F1D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1E0 PRG:F1E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F1F0 PRG:F1F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F200 PRG:F200 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F210 PRG:F210 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F220 PRG:F220 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F230 PRG:F230 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F240 PRG:F240 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F250 PRG:F250 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F260 PRG:F260 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F270 PRG:F270 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F280 PRG:F280 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F290 PRG:F290 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F2A0 PRG:F2A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F2B0 PRG:F2B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F2C0 PRG:F2C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F2D0 PRG:F2D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F2E0 PRG:F2E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F2F0 PRG:F2F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F300 PRG:F300 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F310 PRG:F310 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F320 PRG:F320 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F330 PRG:F330 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F340 PRG:F340 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F350 PRG:F350 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F360 PRG:F360 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F370 PRG:F370 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F380 PRG:F380 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F390 PRG:F390 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F3A0 PRG:F3A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F3B0 PRG:F3B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F3C0 PRG:F3C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F3D0 PRG:F3D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F3E0 PRG:F3E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F3F0 PRG:F3F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F400 PRG:F400 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F410 PRG:F410 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F420 PRG:F420 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F430 PRG:F430 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F440 PRG:F440 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F450 PRG:F450 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F460 PRG:F460 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F470 PRG:F470 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F480 PRG:F480 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F490 PRG:F490 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F4A0 PRG:F4A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F4B0 PRG:F4B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F4C0 PRG:F4C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F4D0 PRG:F4D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F4E0 PRG:F4E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F4F0 PRG:F4F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F500 PRG:F500 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F510 PRG:F510 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F520 PRG:F520 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F530 PRG:F530 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F540 PRG:F540 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F550 PRG:F550 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F560 PRG:F560 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F570 PRG:F570 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F580 PRG:F580 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F590 PRG:F590 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F5A0 PRG:F5A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F5B0 PRG:F5B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F5C0 PRG:F5C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F5D0 PRG:F5D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F5E0 PRG:F5E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F5F0 PRG:F5F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F600 PRG:F600 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F610 PRG:F610 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F620 PRG:F620 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F630 PRG:F630 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F640 PRG:F640 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F650 PRG:F650 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F660 PRG:F660 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F670 PRG:F670 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F680 PRG:F680 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F690 PRG:F690 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F6A0 PRG:F6A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F6B0 PRG:F6B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F6C0 PRG:F6C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F6D0 PRG:F6D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F6E0 PRG:F6E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F6F0 PRG:F6F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F700 PRG:F700 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F710 PRG:F710 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F720 PRG:F720 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F730 PRG:F730 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F740 PRG:F740 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F750 PRG:F750 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F760 PRG:F760 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F770 PRG:F770 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F780 PRG:F780 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F790 PRG:F790 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F7A0 PRG:F7A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F7B0 PRG:F7B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F7C0 PRG:F7C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F7D0 PRG:F7D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F7E0 PRG:F7E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F7F0 PRG:F7F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F800 PRG:F800 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F810 PRG:F810 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F820 PRG:F820 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F830 PRG:F830 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F840 PRG:F840 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F850 PRG:F850 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F860 PRG:F860 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F870 PRG:F870 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F880 PRG:F880 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F890 PRG:F890 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F8A0 PRG:F8A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F8B0 PRG:F8B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F8C0 PRG:F8C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F8D0 PRG:F8D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F8E0 PRG:F8E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F8F0 PRG:F8F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F900 PRG:F900 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F910 PRG:F910 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F920 PRG:F920 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F930 PRG:F930 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F940 PRG:F940 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F950 PRG:F950 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F960 PRG:F960 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F970 PRG:F970 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F980 PRG:F980 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F990 PRG:F990 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F9A0 PRG:F9A0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F9B0 PRG:F9B0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F9C0 PRG:F9C0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F9D0 PRG:F9D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F9E0 PRG:F9E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$F9F0 PRG:F9F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FA00 PRG:FA00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FA10 PRG:FA10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FA20 PRG:FA20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FA30 PRG:FA30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FA40 PRG:FA40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FA50 PRG:FA50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FA60 PRG:FA60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FA70 PRG:FA70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FA80 PRG:FA80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FA90 PRG:FA90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FAA0 PRG:FAA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FAB0 PRG:FAB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FAC0 PRG:FAC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FAD0 PRG:FAD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FAE0 PRG:FAE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FAF0 PRG:FAF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FB00 PRG:FB00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FB10 PRG:FB10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FB20 PRG:FB20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FB30 PRG:FB30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FB40 PRG:FB40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FB50 PRG:FB50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FB60 PRG:FB60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FB70 PRG:FB70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FB80 PRG:FB80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FB90 PRG:FB90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FBA0 PRG:FBA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FBB0 PRG:FBB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FBC0 PRG:FBC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FBD0 PRG:FBD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FBE0 PRG:FBE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FBF0 PRG:FBF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC00 PRG:FC00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC10 PRG:FC10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC20 PRG:FC20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC30 PRG:FC30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC40 PRG:FC40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC50 PRG:FC50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC60 PRG:FC60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC70 PRG:FC70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC80 PRG:FC80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FC90 PRG:FC90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FCA0 PRG:FCA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FCB0 PRG:FCB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FCC0 PRG:FCC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FCD0 PRG:FCD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FCE0 PRG:FCE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FCF0 PRG:FCF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD00 PRG:FD00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD10 PRG:FD10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD20 PRG:FD20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD30 PRG:FD30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD40 PRG:FD40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD50 PRG:FD50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD60 PRG:FD60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD70 PRG:FD70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD80 PRG:FD80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FD90 PRG:FD90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FDA0 PRG:FDA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FDB0 PRG:FDB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FDC0 PRG:FDC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FDD0 PRG:FDD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FDE0 PRG:FDE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FDF0 PRG:FDF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE00 PRG:FE00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE10 PRG:FE10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE20 PRG:FE20 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE30 PRG:FE30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE40 PRG:FE40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE50 PRG:FE50 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE60 PRG:FE60 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE70 PRG:FE70 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE80 PRG:FE80 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FE90 PRG:FE90 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FEA0 PRG:FEA0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FEB0 PRG:FEB0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FEC0 PRG:FEC0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FED0 PRG:FED0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FEE0 PRG:FEE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FEF0 PRG:FEF0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $A2, $FF, $9A, $78, $D8, $A9, $00, $8D, $00, $20, $8D, $01, $20, $A9, $30, $20 ; CPU:$FF00 PRG:FF00 A2 FF 9A 78 D8 A9 00 8D 00 20 8D 01 20 A9 30 20 .byte $49, $FF, $20, $57, $FF, $90, $18, $A9, $10, $20, $49, $FF, $A9, $30, $20, $49 ; CPU:$FF10 PRG:FF10 49 FF 20 57 FF 90 18 A9 10 20 49 FF A9 30 20 49 .byte $FF, $20, $4C, $FF, $20, $4C, $FF, $A9, $10, $20, $49, $FF, $4C, $3E, $FF, $A9 ; CPU:$FF20 PRG:FF20 FF 20 4C FF 20 4C FF A9 10 20 49 FF 4C 3E FF A9 .byte $20, $20, $49, $FF, $A9, $30, $20, $49, $FF, $A9, $20, $20, $49, $FF, $A9, $30 ; CPU:$FF30 PRG:FF30 20 20 49 FF A9 30 20 49 FF A9 20 20 49 FF A9 30 .byte $8D, $00, $41, $20, $62, $FF, $4C, $36, $80, $8D, $00, $41, $A0, $04, $A2, $CE ; CPU:$FF40 PRG:FF40 8D 00 41 20 62 FF 4C 36 80 8D 00 41 A0 04 A2 CE .byte $CA, $D0, $FD, $88, $D0, $F8, $60, $A9, $41, $CD, $F0, $07, $D0, $02, $38, $60 ; CPU:$FF50 PRG:FF50 CA D0 FD 88 D0 F8 60 A9 41 CD F0 07 D0 02 38 60 .byte $18, $60, $A9, $41, $8D, $F0, $07, $60, $A9, $5A, $8D, $F0, $07, $60, $FF, $FF ; CPU:$FF60 PRG:FF60 18 60 A9 41 8D F0 07 60 A9 5A 8D F0 07 60 FF FF ; ----------------------------------------------------------------------------- ; Routine: Bank7_SwitchPrgBank ; Global: The copy of the bank switch the last bank of the image carries. ; Local: Called from the routine that owns it; its state lives in the zero page. ; Parameters: none - the routine reads its state from the zero page. ; Returns: none - the result is left in the registers the caller reads. ; Clobbers: A, X, Y and the zero-page scratch it uses. ; ----------------------------------------------------------------------------- Bank7_SwitchPrgBank: ora #$30 ; CPU:$FF70 PRG:FF70 09 30 sta $4100 ; CPU:$FF72 PRG:FF72 8D 00 41 rts ; CPU:$FF75 PRG:FF75 60 ; ---- data $FF76-$FFFF (138 bytes) ---- .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF76 PRG:FF76 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF86 PRG:FF86 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FF96 PRG:FF96 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFA6 PRG:FFA6 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFB6 PRG:FFB6 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFC6 PRG:FFC6 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFD6 PRG:FFD6 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF, $FF ; CPU:$FFE6 PRG:FFE6 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF .byte $FF, $FF, $FF, $FF, $89, $81, $00, $FF, $36, $80 ; CPU:$FFF6 PRG:FFF6 FF FF FF FF 89 81 00 FF 36 80