// ============================================
// fe_gp-03 - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 vdisasm-one 1.0 build 1, 2026-03-29 17:54:16
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0200  End: $ffff  (65024 bytes)
// Crunched with Cruncher AB — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $0c05 (3077)
//
// Code: 523 bytes, Data: 64501 bytes
// Labels: 87, Subroutines: 5
//
// Cross-references: all OK
// ============================================


// --- Region $0a31-$0bbe ---
.pc = $0a31 "sub_0a31"
// Referenced by: jsr from $0b7f; branch from $0a34

sub_0a31:
        cmp $d012
        bne sub_0a31
        rts

// Referenced by: jsr from $0b87
sub_0a37: {
        dec $07e8
        bmi skip
        rts
skip:
        lda #$07
        sta $07e8
        ldx #$00
loop:
        lda $0799,x
        sta $0798,x
        lda $07c1,x
        sta $07c0,x
        inx
        cpx #$27
        bne loop
        jsr sub_0a92
        jsr sub_0a64
        sta $07bf
        ora #$40
        sta $07e7
        rts
}
// Referenced by: jsr from $0a58

sub_0a64:
        cmp #$00
        beq loc_0a80
        cmp #$1b
        beq loc_0a83
        cmp #$1c
        beq loc_0a86
        cmp #$1d
        beq loc_0a89
        cmp #$1e
        beq loc_0a8c
        cmp #$1f
        beq loc_0a8f
        cmp #$1b
        bmi loc_0a82

loc_0a80:
        lda #$40

loc_0a82:
        rts

loc_0a83:
        lda #$2b
        rts

loc_0a86:
        lda #$21
        rts

loc_0a89:
        lda #$3a
        rts

loc_0a8c:
        lda #$27
        rts

loc_0a8f:
        lda #$2d
        rts
// Referenced by: jsr from $0a55

sub_0a92:
        ldy #$00
        lda ($02),y
        ldx $04
        bne loc_0ab0
        lsr
        lsr
        lsr
        lsr
        lsr
        sta $07f9
        ldy #$01
        lda ($02),y
        lsr
        lsr
        and #$18
        ora $07f9
        inc $04
        rts

loc_0ab0:
        dex
        bne loc_0abe
        and #$1f
        inc $04

loc_0ab7:
        inc $02
        bne loc_0abd
        inc $03

loc_0abd:
        rts

loc_0abe:
        sta $07f9
        and #$80
        bne loc_0ad0
        lda $07f9
        and #$1f
        ldx #$00
        stx $04
        beq loc_0ab7

loc_0ad0:
        ldx #$a6
        stx $02
        ldx #$12
        stx $03
        ldx #$00
        stx $04
        lda $07f9
        and #$1f
        rts
// Referenced by: jsr from $0c16

sub_0ae2:
        lda $07ff
        cmp #$04
        beq loc_0aea
        rts

loc_0aea:
        lda $07fe
        bne loc_0af5
        dec $07fd
        beq loc_0af5
        rts

loc_0af5:
        lda #$40
        sta $07fd
        inc $07fe
        lda $07fe
        cmp #$01
        beq loc_0b17
        cmp #$02
        beq loc_0b1d
        lda #$0e
        sta $d023
        ldy #$00
        sty $07fe
        ldy #$08
        jmp loc_0b1f

loc_0b17:
        lda #$01
        sta $d023
        rts

loc_0b1d:
        ldy #$10

loc_0b1f:
        ldx #$08

loc_0b21:
        lda dat_0b2c,y
        sta.abs $00ff,x
        dey
        dex
        bpl loc_0b21
        rts

dat_0b2c:
        .byte $fd,$e9                               // ..

loc_0b2e:
        sbc #$e9
        sbc #$e9
        sbc #$e5
        sbc $fdfd,x
        inc $fafa,x
        nop
        nop
        lda $07fc
        sta $d022
        lda #$d2

loc_0b44:
        cmp $d012
        bne loc_0b44
        lda #$15
        sta $d018                                   // screen=$0400, charset=$1000
        lda #$06
        sta $d016                                   // hires, 38 cols, X-scroll=6
        ldx #$08

loc_0b55:
        lda $d012

loc_0b58:
        cmp $d012
        beq loc_0b58
        lda #$5b
        sta dat_d011                                // ECM, text mode, screen on, 25 rows, Y-scroll=3
        dec $d016
        dex
        bne loc_0b55
        lda #$1b
        sta dat_d011                                // text mode, screen on, 25 rows, Y-scroll=3
        lda #$11
        sta $d018                                   // screen=$0400, charset=$0000
        lda #$01
        sta $d022
        lda $07e8
        sta $d016
        lda #$00
        jsr sub_0a31
        lda #$18
        sta $d016                                   // multicolor, 40 cols, X-scroll=0
        jsr sub_0a37
        ldy $087c
        ldx #$00

loc_0b8f:
        lda $087d,x
        sta $087c,x
        inx
        cpx #$69
        bne loc_0b8f
        sty $08e5
        dec $07ff
        beq loc_0ba3
        rts

loc_0ba3:
        lda #$04
        sta $07ff
        ldy $08e6
        ldx #$00

loc_0bad:
        lda $08e7,x
        sta $08e6,x
        inx
        cpx #$07
        bne loc_0bad
        sty $08ed
        sty $07fc
        rts

// --- Region $0c02-$0c52 ---
.pc = $0c02 "loc_0c02"

loc_0c02:
        lda $d012
// Referenced by: branch from $0c08

main_0c05:
        cmp $d012
        beq main_0c05
        inc $d016
        cmp #$3a
        bne loc_0c02
        lda #$11
        sta $d018                                   // screen=$0400, charset=$0000
        jsr sub_0ae2
        lda $dc01
        cmp #$ef
        beq loc_0c24
        inc $d019                                   // acknowledge raster IRQ
        rti

loc_0c24:
        lda #$36
        sta $01
        sei
        lda dat_dc0d                                // acknowledge CIA1 pending IRQs
        jsr $fd15
        jsr $ff5b
        lda #$00
        sta dat_d011                                // text mode, screen off, 24 rows, Y-scroll=0
        sta $d020
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        jsr $f451
        lda #$34
        sta $01
        jmp loc_124a

// --- Region $124a-$125d ---
.pc = $124a "loc_124a"

loc_124a:
        ldx #$40

loc_124c:
        lda $125c,x
        sta $033f,x
        dex
        bne loc_124c
        lda #$34
        sta $01
        sei
        jmp $0340

dat_125d:
        .byte $ad                                   // .

// --- Region $147a-$1492 ---
.pc = $147a "loc_147a"

loc_147a:
        tsx
        bne loc_1483
        and ($1b),y
        jmp ($0314)

dat_1482:
        .byte $6c                                   // l

loc_1483:
        asl $03,x
        cli
        .byte $7f,$11,$61                           // rra $6111,x // ILLEGAL
        lda #$09
        tay
        eor ($48),y
        php
        jmp ($0318)

dat_1492:
        .byte $62                                   // b

// --- Region $ead0-$ead0 ---
.pc = $ead0 "Segment $ead0"
        brk

// --- Region $f451-$f451 ---
.pc = $f451 "Segment $f451"
        brk

// --- Region $fd15-$fd15 ---
.pc = $fd15 "Segment $fd15"
        brk

// --- Region $ff5b-$ff5b ---
.pc = $ff5b "Segment $ff5b"
        brk

// ============================================
// Data blocks
// ============================================

// --- Region $0800-$0a30 ---
.pc = $0800 "spr_0800"

spr_0800:
        // === Sprite data (64 bytes, $0800-$083f) ===
        .byte $16,$00,$00                           // ...#.##.................
        .byte $00,$00,$09                           // ....................#..#
        .byte $90,$09,$99                           // #..#........#..##..##..#
        .byte $08,$89,$08                           // ....#...#...#..#....#...
        .byte $88,$0a,$a8                           // #...#.......#.#.#.#.#...
        .byte $0a,$aa,$0f                           // ....#.#.#.#.#.#.....####
        .byte $fa,$0f,$ff                           // #####.#.....############
        .byte $07,$7f,$07                           // .....###.#######.....###
        .byte $70,$0b,$b0                           // .###........#.###.##....
        .byte $0b,$bc,$00                           // ....#.###.####..........
        .byte $0b,$0c,$cf                           // ....#.##....##..##..####
        .byte $00,$0b,$0c                           // ............#.##....##..
        .byte $cf,$01,$10                           // ##..####.......#...#....
        .byte $0b,$bc,$0f                           // ....#.###.####......####
        .byte $f1,$01,$10                           // ####...#.......#...#....
        .byte $0b,$bc,$0f                           // ....#.###.####......####
        .byte $f1,$01,$1f                           // ####...#.......#...#####
        .byte $00,$0b,$0c                           // ............#.##....##..
        .byte $cf,$01,$11                           // ##..####.......#...#...#
        .byte $0f,$fc,$00                           // ....##########..........
        .byte $0b,$0c,$cf                           // ....#.##....##..##..####
        .byte $01                                   // sprite 0 padding
        .byte $11,$0f,$fc,$0b,$b0,$0c,$cf,$01,$11,$0f,$fc,$0b,$b0,$0f,$f1,$01 // ................
        .byte $1f,$0c,$cb,$00,$01,$01,$1f,$0c,$cb,$00,$01,$0f,$fc,$0b,$b0,$0f // ................
        .byte $fc,$0b,$b0,$0c,$cb,$00,$0b,$00,$07,$0f,$f7,$0f,$ff,$0a,$af,$0a // ................
        .byte $aa,$08,$8a,$08,$88,$09,$98,$09,$99,$00,$09,$00,$77,$07,$77,$07 // ............w.w.
        .byte $77,$07,$77,$07,$77,$07,$76,$06,$66,$05,$55,$05,$54,$04,$04,$04 // w.w.w.v.f.U.T...
        .byte $43,$03,$32,$02,$21,$01,$10,$00,$00,$00,$00,$00,$00,$00,$00,$00 // C.2.!...........
        .byte $00,$01,$11,$01,$12,$02,$23,$04,$44,$04,$44,$05,$55,$06,$66,$06 // ......#.D.D.U.f.
        .byte $67,$07,$77,$07,$77,$07,$77,$07,$77,$07,$77,$07,$76,$06,$66,$05 // g.w.w.w.w.w.v.f.
        .byte $55,$04,$44,$04,$43,$03,$32,$02,$21,$01,$10,$00,$00,$00,$00,$00 // U.D.C.2.!.......
        .byte $00,$00,$00,$00,$00,$01,$11,$01,$12,$02,$23,$04,$44,$04,$44,$05 // ..........#.D.D.
        .byte $55,$06,$66,$06,$67,$07,$05,$58,$09,$49,$08,$85,$0d,$dd,$90,$0a // U.f.g..X.I......
        .byte $a2,$a9,$01,$9d,$00,$d8,$a9,$20,$9d,$00,$04,$9d,$20,$07,$ca,$10 // ....... .... ...
        .byte $e1,$a9,$8c,$85,$02,$a9,$12,$85,$03,$a9,$00,$85,$04,$85,$05,$20 // ............... 
        .byte $31,$09,$9d,$07,$04,$e0,$17,$d0,$f6,$a9,$00,$85,$05,$a9,$40,$8d // 1.............@.
        .byte $3b,$09,$20,$31,$09,$9d,$2b,$07,$e0,$10,$d0,$f6,$a0,$00,$4c,$eb // ;. 1..+.......L.
        .byte $09,$20,$92,$0a,$c9,$00,$d0,$02,$a9,$20,$09,$40,$e6,$05,$a6,$05 // . ....... .@....
        .byte $60,$7f,$ff,$e7,$ff,$fc,$7f,$ff,$e7,$ff,$fc,$70,$00,$e7,$00,$00 // `..........p....
        .byte $70,$1c,$e7,$07,$00,$73,$df,$e7,$e7,$e0,$73,$df,$e7,$e7,$e0,$71 // p....s....s....q
        .byte $dc,$07,$07,$00,$71,$dc,$07,$07,$00,$7f,$dc,$07,$07,$fc,$7f,$dc // ....q...........
        .byte $07,$07,$fc,$90,$00,$00,$90,$99,$89,$88,$a8,$aa,$fa,$ff,$7f,$70 // ...............p
        .byte $b0,$bc,$0b,$cf,$0b,$cf,$10,$bc,$f1,$10,$bc,$f1,$1f,$0b,$cf,$11 // ................
        .byte $fc,$0b,$cf,$11,$fc,$b0,$cf,$11,$fc,$b0,$f1,$1f,$cb,$01,$1f,$cb // ................
        .byte $01,$fc,$b0,$fc,$b0,$cb,$0b,$07,$f7,$ff,$af,$aa,$8a,$88,$98,$99 // ................
        .byte $09,$04,$43,$32,$21,$10,$00,$00,$00,$00,$00,$11,$12,$23,$44,$44 // ..C2!........#DD
        .byte $55,$66,$67,$77,$77,$77,$77,$77,$76,$66
        .text "UDC2!"
        .byte $10
        .byte $00,$00,$00,$00,$00,$11,$12
        .text "#DDU"
        .byte $66,$67,$77,$77,$77
        .byte $77,$77,$76,$66,$55,$54,$49,$85,$dd,$58,$90,$a2,$00,$bd,$74,$09 // wwvfUTI..X....t.
        .text "HJJJJ"
        .byte $99,$01,$08,$c8,$68,$99,$01,$08,$c8,$e8,$e0
        .byte $78,$d0,$ea,$20,$d0,$0a,$20,$08,$0b,$a9,$04,$8d,$ff,$07,$78,$a9 // x.. .. .......x.
        .byte $bf,$8d,$fe,$ff,$a9,$0b,$8d,$ff,$ff,$a9,$7f,$8d,$0d,$dc,$a9,$01 // ................
        .byte $8d,$1a,$d0,$a9,$1b,$8d,$11,$d0,$a9,$42,$8d,$12,$d0,$58,$4c,$2e // .........B...XL.
        .byte $0a                                   // .

// --- Region $0bbf-$0c01 ---
.pc = $0bbf "dat_0bbf"

dat_0bbf:
        .byte $a9,$42,$20,$31,$0a,$a0,$0d,$88,$d0,$fd,$a2,$08,$b9,$01,$08,$8d // .B 1............
        .byte $20,$d0,$8d,$21,$d0,$c8,$ca,$f0,$f1,$21,$2a,$01,$2a,$41,$2a,$01 //  ..!.....!*.*A*.

txt_0bdf:
        .text "*5*"
        .byte $c0                                   // '@' | $80 (end-of-string marker)
        .byte $7b,$b9,$7c,$08,$09,$10,$8d,$16,$d0,$b0,$02,$90,$db,$20,$3c,$0b // {.|.......... <.
        .byte $a9,$32,$20,$31,$0a,$a2,$15,$8e,$18,$d0,$3e,$eb,$02,$05,$2a // .2 1......>...*

// --- Region $0c53-$0c53 ---
.pc = $0c53 "dat_0c53"

dat_0c53:
        // === Fill data (1 bytes, $0c53-$0c53) ===
        .byte $00                                   // .

// --- Region $1000-$1000 ---
.pc = $1000 "spr_1000"

spr_1000:
        .byte $00                                   // .

// --- Region $125e-$1479 ---
.pc = $125e "Segment $125e"
        .byte $c8,$13,$8d,$01,$08,$ee,$41,$03,$d0,$03,$ee,$42,$03,$ee,$44,$03 // ......A....B..D.
        .byte $d0,$03,$ee,$45,$03,$ad,$44,$03,$c9,$53,$d0,$e3,$ad,$45,$03,$c9 // ...E..D..S...E..
        .byte $0c,$d0,$dc,$a9,$37,$85,$01,$58,$4c,$e2,$fc,$4c,$ae,$a7,$88,$45 // ....7..XL..L...E
        .byte $05,$0d,$09,$52,$a0,$13,$92,$49,$65,$33,$02,$01,$6b,$00,$af,$34 // ...R...Ie3..k..4
        .byte $f2,$20,$a1,$33,$61                   // . .3a

txt_12a3:
        .text "CE"
        .byte $c0                                   // '@' | $80 (end-of-string marker)
        .byte $05,$39,$08,$05,$20,$67,$1b,$46,$a0,$06,$2e,$13,$1c,$1c,$01,$07 // .9.. g.F........
        .byte $29,$0e,$14,$08,$33,$20,$e1,$0d,$a0,$17,$34,$28,$14,$08,$a0,$13 // )...3 ....4(....
        .byte $a3,$0f,$c4                           // ...

txt_12c9:
        .text " EL"
        .byte $a1                                   // '!' | $80 (end-of-string marker)
        .byte $13,$a0,$1d,$0d,$0f,$8f,$52,$0d,$01,$73,$41,$72,$05,$14,$12,$29 // ......R..sAr...)
        .byte $0e,$b2,$00,$2e,$04,$10,$05,$46,$45,$74,$00 // .......FEt.

txt_12e8:
        .text ". "
        .byte $c9                                   // 'I' | $80 (end-of-string marker)
        .byte $0c,$b3,$00,$9c,$60,$2f,$75,$13,$05,$a0,$0e,$e0,$33,$01,$43,$a0 // ....`/u.....3.C.
        .byte $0f,$c0,$34,$05,$20,$89,$13,$60,$26,$45,$45,$1c,$1c,$14,$08 // ..4. ..`&EE....

txt_130a:
        .text "3 3 IG"
        .byte $14,$20,$80,$70,$85,$21,$65,$40,$8f,$0e,$d4,$60,$a4,$09,$80,$54 // . .p.!e@...`...T
        .byte $41,$43,$60,$30,$f3,$29,$89,$4f,$d3,$20,$9c,$60,$26,$20,$2f,$75 // AC`0.).O. .`& /u
        .byte $17,$01,$d4,$20,$8f,$40,$6f,$10,$20,$69,$80,$55,$65,$40,$20,$04 // ... .@o. i.Ue@ .
        .byte $33,$2b,$02,$01,$6b,$15,$00,$5c,$80,$68,$b9,$00 // 3+..k..\.h..

txt_134c:
        .text " 3"
        .byte $a5                                   // '%' | $80 (end-of-string marker)
        .byte $00,$2f,$75,$17,$01                   // ./u..

txt_1354:
        .text "4)"
        .byte $c7                                   // 'G' | $80 (end-of-string marker)
        .byte $20,$cf,$12,$14,$08,$a0,$10,$33,$13,$ef,$52,$93,$00,$9c,$60,$2e //  ......3..R...`.
        .byte $04,$08,$05,$45,$40,$e5,$40,$ef,$00,$a0,$7e,$6c,$55,$c0,$61,$c4 // ...E@.@...~lU.a.
        .byte $20,$ce,$6f,$24,$3e,$1c,$1c,$08,$01,$c5,$40,$d5,$0e,$17,$09,$88 //  .o$>.....@.....
        .byte $40,$88,$45,$a0,$3c,$80,$67,$45,$45,$93,$40,$32,$05,$07,$0f,$2e // @.E.<.gEE.@2....
        .byte $27,$14,$0f,$01,$0c,$80,$23,$ee,$34,$23,$14,$60,$4f,$c0,$07,$1b // '.....#.4#.`O...
        .byte $46,$a0,$1c,$80,$73                   // F...s

txt_13ac:
        .text "'."
        .byte $a4                                   // '$' | $80 (end-of-string marker)
        .byte $00,$e6,$26,$1d,$00,$6e,$41,$6b,$19,$0f,$06,$07,$10,$66,$65,$00 // ..&..nAk.....fe.
        .byte $09,$e9,$76,$00,$00,$00,$18,$20,$a0,$0b,$08,$70,$17,$9e // ..v.... ...p..

txt_13cd:
        .text "2061"
        .byte $00                                   // string terminator
        .byte $00,$00,$78,$a9,$00,$8d,$20,$d0,$8d,$21,$d0,$a9,$0f,$8d,$86,$02 // ..x... ..!......
        .byte $a9,$93,$20,$d2,$ff,$a2,$27,$bd,$6b,$08,$9d,$00,$04,$ca,$10,$f7 // .. ...'.k.......
        .byte $a0,$00,$a9,$00,$99,$00,$db,$c8,$d0,$fa,$a2,$00,$bd,$45,$08,$9d // .............E..
        .byte $b7,$03,$e8,$c9,$e0,$d0,$f5,$4c,$b7,$03,$78,$a9,$30,$85,$01,$a2 // .......L..x.0...
        .byte $00,$bd,$93,$08,$9d,$03,$08,$e8,$d0,$f7,$ee,$c0,$03,$ee,$c3,$03 // ................
        .byte $ad,$c0,$03,$c9,$ff,$d0,$ea,$a9,$37,$85,$01,$58,$4c,$0b,$08,$e0 // ........7..XL...

txt_1432:
        .encoding "screencode_mixed"
        .text "for trainer read scroller"
        .encoding "petscii_upper"

txt_144b:
        .text " !!  "
        .byte $13,$0b,$19,$2f,$07,$10,$2b,$06,$05,$20,$4b,$43,$00,$28,$02,$02 // .../..+.. KC.(..
        .byte $29,$00,$a0,$00,$78,$4e,$11,$d0,$ea,$e6,$01,$b9,$e3,$10,$99,$cb // )...xN..........
        .byte $00,$c8,$d0,$f7,$4c,$00,$01,$01,$0c,$ec // ....L.....

// --- Region $1493-$181a ---
.pc = $1493 "Segment $1493"
        .byte $ec                                   // .

txt_1494:
        .text "!"
        .byte $40                                   // @ character
        .text ","
        .byte $c3                                   // 'C' | $80 (end-of-string marker)
        .byte $5b,$d3,$98,$03,$8a,$c4,$cd,$07,$3e,$b0,$a8,$6f,$08,$91,$aa,$68 // [.......>..o...h
        .byte $40,$92,$b7,$9a,$ad,$2d,$8d,$19,$d0,$ba,$e8,$e8,$20,$9a,$d4,$8e // @....-...... ...
        .byte $01,$4c,$7b,$ea,$08,$55,$35,$0b,$d0,$fa,$e3,$87,$f5,$c9,$aa,$d0 // .L{..U5.........
        .byte $f1,$aa,$90,$11,$a9,$aa,$c0,$01,$8a,$8b,$a5,$fb,$03,$85,$fc,$48 // ...............H
        .byte $58,$e5,$45,$c9,$04,$b0,$f7,$c9,$00,$f0,$6b,$c9,$03,$f0 // X.E.......k...

txt_14e6:
        .byte $5c                                   // backslash character
        .text "0/"
        .byte $bd                                   // '=' | $80 (end-of-string marker)
        .byte $67,$fd,$a8,$0d,$fb,$d8,$8b,$62,$0d,$28,$1f,$cb,$c0,$4a,$86,$ec // g......b.(...J..
        .byte $0b,$68,$91,$03,$5e,$10,$b4,$e3,$f0,$b5,$25,$8b,$a6,$01,$47,$ab // .h..^.....%...G.
        .byte $b1,$fb,$25,$04,$f6,$20,$6a,$0a,$b0,$fb,$a0,$05,$d9,$09,$fd,$e6 // ..%.. j.........
        .byte $fb,$67,$d3,$fc,$c6,$fd,$d0,$e0,$f0,$93,$20,$c4,$0a,$90,$d2,$85 // .g........ .....
        .byte $10,$09,$4c,$bf,$09,$b6,$0a,$fd,$17,$fc,$2e,$fb,$60,$78,$e9,$1c // ..L.........`x..
        .byte $87                                   // .

txt_153b:
        .text ")*"
        .byte $d1                                   // 'Q' | $80 (end-of-string marker)
        .byte $1d,$02,$e8,$07,$49,$2a,$84,$0a,$01,$d6,$e1,$48,$41,$58,$60,$48 // ....I*.....HAX`H
        .byte $99,$1a,$00,$68,$48,$8d,$9b,$e1,$98,$ae,$8d,$a0,$20,$1c,$3a,$29 // ...hH....... .:)
        .byte $07,$dc,$a9,$19,$b4,$03,$01,$8c,$dc,$29,$68,$e3,$3e,$5c,$52,$f2 // .........)h.>\R.
        .byte $9d,$04,$a1,$20,$1b,$ad,$88,$d0,$d2,$ee,$20,$d5,$1d,$38,$03,$dd // ... ...... ..8..
        .byte $e1,$a6,$dc,$68,$a8,$b3,$ad,$c3,$29,$10,$46,$74,$8d,$0d,$37,$7a // ...h....).Ft..7z
        .byte $01,$dd,$48,$39,$83,$24,$f8,$5a,$2e,$5d,$2e,$94,$65,$2f,$40,$00 // ..H9.$.Z.]..e/@.
        .byte $a5,$04,$8d,$51,$ab,$a5,$05,$8d,$69,$55,$81,$e9,$9b,$8e,$c0,$8e // ...Q....iU......
        .byte $f5,$8c,$c7,$29,$81,$ad,$e4,$1b,$8f,$a4,$57,$08,$ad,$e5,$0a,$dd // ...)......W.....
        .byte $e4,$0d,$f0,$12,$e8,$ec,$a3,$0d,$d0,$ea,$ca,$b7,$43,$04,$e9,$0f // ............C...
        .byte $05,$38,$60,$bd,$24,$0e,$a8,$bd,$64,$0e,$aa,$a5,$ee,$22,$70,$78 // .8`.$...d...."px
        .byte $6d,$0e,$02,$b9,$39,$90,$7c,$03,$0b,$64,$cc,$58,$b0,$99,$bb,$90 // m...9.|..d.X....
        .byte $d3,$6c,$17,$a5,$01,$48,$09,$06,$ad,$5e,$8c,$be,$8e,$ef,$fe,$a9 // .l...H...^......
        .byte $01,$20,$90,$52,$06,$68,$99,$cc,$60,$17,$36,$36,$08,$01,$00,$b4 // . .R.h..`.66....
        .byte $b2,$61,$eb,$70,$8d,$d7,$d7,$59,$ca,$61,$c2,$85,$85,$17,$93,$0d // .a.p...Y.a......
        .byte $45,$bc,$5d,$ad,$1f,$8d,$5f,$b4,$74,$40,$50,$94,$6f,$07,$96,$2e // E.]..._.t@P.o...
        .byte $8d,$68,$0d,$8d,$b7,$0a,$ee,$fe,$0c,$ad,$a6,$02,$b1,$58,$14,$a9 // .h...........X..
        .byte $a9,$8d,$0e,$52,$89,$ee,$0f,$9d,$24,$8d,$1c,$0d,$48,$5f,$37,$1d // ...R....$...H_7.
        .byte $47,$48,$81,$44,$ad,$6a,$48,$0b,$48,$4d,$86,$40,$55,$85,$7f,$3b // GH.D.jH.HM.@U..;
        .byte $e3,$23,$c9,$89,$d0,$db,$ad,$a4,$0a,$61,$37,$b0,$0a,$46,$0a,$f0 // .#.......a7..F..
        .byte $4f,$af,$e1,$29,$91,$3c,$bf,$38,$0c,$71,$a3,$52,$9b,$91,$09,$ad // O..).<.8.q.R....
        .byte $8b,$dc,$18,$69,$01,$8d,$d2,$66,$0d,$ad,$dd,$30,$2c,$f0,$17,$ad // ...i...f...0,...
        .byte $e6,$13,$6b,$94,$e7,$0a,$21,$cc,$90,$86,$0d,$a0,$02,$d0,$13,$ce // ..k...!.........
        .byte $88,$23,$d6,$6e,$85,$d3,$57,$6e,$ad,$03,$08,$85,$2b,$6f,$a0,$55 // .#.n..Wn....+o.U
        .byte $6c,$b3,$01,$43,$dd,$58,$db,$81,$fc,$e6,$fc,$d0,$02,$e6,$fd,$c8 // l..C.X..........
        .byte $cc,$87,$0b,$d0,$ef,$a9,$c8,$77,$f9,$01,$3f,$b8,$94,$a5,$fc,$b3 // .......w..?.....
        .byte $d4,$d2,$fd,$85,$05,$a4,$20,$46,$06,$fc,$16,$a7,$ae,$8f,$0b,$e0 // ...... F........
        .byte $02,$f0,$08,$c9,$08,$f0,$04,$c9,$01,$d0,$03,$4c,$e6,$ab,$ea,$4c // ...........L...L
        .byte $e4,$0b,$d3,$42,$df,$0c,$8d,$92,$20,$e7,$0c,$58,$ad,$8c,$12,$5b // ...B.... ..X...[
        .byte $15,$d0,$ad,$8b,$0b,$e3,$8a,$60,$e2,$53,$58,$64,$16,$35,$5d,$6d // .......`.SXd.5]m
        .byte $70,$fb,$78,$c8,$23,$4d,$82,$2c,$4c,$ee,$0c,$41,$92,$a9,$fb,$87 // p.x.#M.,L..A....
        .byte $2e,$0d,$f1,$19,$0c,$38,$ae,$2c,$9c,$2a,$1d,$32,$90,$04,$e5,$bb // .....8.,.*.2....
        .byte $f0,$f5,$38,$8a,$c4,$0f,$aa,$de,$24,$80,$12,$17,$34,$0a,$38,$14 // ..8.....$...4.8.
        .byte $ea,$e0,$07,$90,$4d,$fb,$b4,$4d,$0b,$8e,$87,$16,$fc,$ea,$58,$78 // ....M..M......Xx
        .byte $91,$04,$af,$f1,$c0,$18,$50,$01,$18,$60,$a0,$66,$17,$32,$22,$68 // ......P..`.f.2"h
        .byte $aa,$4c,$55,$0d,$a0,$b1,$55,$c7,$0c,$a2,$30,$9f,$16,$b1,$04,$a2 // .LU...U...0.....
        .byte $36,$86,$01,$aa,$29,$f0,$b7,$07,$8a,$06,$0a,$f0,$48,$38,$52,$f4 // 6...).......H8R.
        .byte $fc,$d0,$e9,$78,$e1,$06,$29,$07,$c9,$02,$90,$f2,$ad,$8e,$0b,$b9 // ...x..).........
        .byte $11
        .byte $2c,$9a
        .byte $50,$fb,$88,$0d,$71,$68
        .text "CJJ)0"
        .byte $09,$a8
        .byte $f2,$7d,$87,$19,$ea,$db,$30,$c8,$d0,$a9,$60,$fc,$95,$eb,$93,$2d // .}....0...`....-
        .byte $d1,$a2,$0c,$1a,$ae,$67,$cb,$c1,$42,$43,$64,$7a,$1a,$cc,$95,$e1 // .....g..BCdz....
        .byte $d1,$12,$cf,$a3,$65,$02,$82,$4d,$95,$a0,$19,$88,$56,$d6,$95,$d6 // ....e..M....V...
        .byte $d2,$24,$f3,$9f,$b3,$dc,$97,$56,$9f,$63,$59,$7b,$32,$87,$47,$bb // .$.....V.cY{2.G.
        .byte $6b,$1a,$79,$67,$78,$74,$51,$ba,$82,$5a,$92,$63,$94,$5a,$91,$63 // k.ygxtQ..Z.c.Z.c
        .byte $95,$df,$0b,$57,$df,$3b,$5f,$1c,$3a,$67,$13,$95,$71,$3b,$97,$e6 // ...W.;_.:g..q;..
        .byte $94,$7b,$30,$43,$74,$6f,$d4,$a0,$4b,$9b,$e9,$2e,$c5,$de,$b3,$fb // .{0Cto..K.......
        .byte $82,$54,$6b,$fe,$80,$b3,$3c,$85,$96,$c4,$5a,$c6 // .Tk...<...Z.

dat_181a:
        // === Fill data (1 bytes, $181a-$181a) ===
        .byte $00                                   // .

// --- Region $3740-$3740 ---
.pc = $3740 "spr_3740"

spr_3740:
        .byte $00                                   // .

// --- Region $d011-$d024 ---
.pc = $d011 "dat_d011"

dat_d011:
        .byte $1b,$42,$00,$00,$00,$1e,$00,$15,$81,$01,$00,$00,$00,$00,$00,$00 // .B..............
        .byte $00,$01,$0e                           // ...

dat_d024:
        // === Fill data (1 bytes, $d024-$d024) ===
        .byte $00                                   // .

// --- Region $d800-$d828 ---
.pc = $d800 "dat_d800"

dat_d800:
        // === Fill data (40 bytes, $d800-$d827) ===
        .fill 40, $01

dat_d828:
        // === Fill data (1 bytes, $d828-$d828) ===
        .byte $00                                   // .

// --- Region $d8c8-$dac8 ---
.pc = $d8c8 "dat_d8c8"

dat_d8c8:
        // === Fill data (512 bytes, $d8c8-$dac7) ===
        .fill 512, $0e

dat_dac8:
        // === Fill data (1 bytes, $dac8-$dac8) ===
        .byte $00                                   // .

// --- Region $db20-$db48 ---
.pc = $db20 "dat_db20"

dat_db20:
        // === Fill data (40 bytes, $db20-$db47) ===
        .fill 40, $07

dat_db48:
        // === Fill data (1 bytes, $db48-$db48) ===
        .byte $00                                   // .

// --- Region $db98-$dbe8 ---
.pc = $db98 "dat_db98"

dat_db98:
        // === Fill data (40 bytes, $db98-$dbbf) ===
        .fill 40, $0f

dat_dbc0:
        // === Fill data (40 bytes, $dbc0-$dbe7) ===
        .fill 40, $0c

dat_dbe8:
        // === Fill data (1 bytes, $dbe8-$dbe8) ===
        .byte $00                                   // .

// --- Region $dc0d-$dc0e ---
.pc = $dc0d "dat_dc0d"

dat_dc0d:
        .byte $7f                                   // .

dat_dc0e:
        // === Fill data (1 bytes, $dc0e-$dc0e) ===
        .byte $00                                   // .

// --- Region $ead1-$ead1 ---
.pc = $ead1 "dat_ead1"

dat_ead1:
        // === Fill data (1 bytes, $ead1-$ead1) ===
        .byte $00                                   // .

// --- Region $f452-$f452 ---
.pc = $f452 "dat_f452"

dat_f452:
        // === Fill data (1 bytes, $f452-$f452) ===
        .byte $00                                   // .

// --- Region $fd16-$fd16 ---
.pc = $fd16 "dat_fd16"

dat_fd16:
        // === Fill data (1 bytes, $fd16-$fd16) ===
        .byte $00                                   // .

// --- Region $ff5c-$ff5c ---
.pc = $ff5c "dat_ff5c"

dat_ff5c:
        // === Fill data (1 bytes, $ff5c-$ff5c) ===
        .byte $00                                   // .

// --- Region $fffe-$ffff ---
.pc = $fffe "dat_fffe"

dat_fffe:
        .byte $bf,$0b                               // ..
