// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:36:38
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $2f41  (10050 bytes)
// Crunched with Exomizer v2/v3 — depacked by emulation
// Packer entry: $080b (via BASIC SYS 2059)
// Entry point:  $2600 (9728)
// IRQ handler:  $266a (irq_266a)
// IRQ handler:  $2a00 (irq_2a00)
// IRQ handler:  $ea31 (loc_ea31)
//
// Code: 2285 bytes, Data: 7765 bytes
// Labels: 271, Subroutines: 15
//
// Cross-references: all OK
// ============================================


// --- Region $0a17-$0a1c ---
.pc = $0a17 "Program $0a17"
        .byte $5c,$aa,$57                           // nop $57aa,x // ILLEGAL
        .byte $57,$57                               // sre $57,x // ILLEGAL

scr_0a1c:
        // === Charset data (1 bytes, $0a1c-$0a1c) ===
        .byte $ff                                   // char 0 (partial)

// --- Region $1000-$1009 ---
.pc = $1000 "sub_1000"
// Referenced by: jsr from $2627

sub_1000:
        sei
        pha
        jsr sub_167d
        pla
        jsr sub_1689
        rts

// --- Region $1015-$15ba ---
.pc = $1015 "sub_1015"
// Referenced by: jsr from $26cd

sub_1015:
        dec $171d
        dec $171e
        dec $171f
        lda #$00
        sta $179f
        ldx #$02

loc_1025:
        lda $1781,x
        sta $fc
        ldy $1726,x
        lda $172f,x
        bmi loc_103d
        beq loc_103a
        jsr sub_16b6
        jmp loc_103d

loc_103a:
        jmp loc_159d

loc_103d:
        sty $174b
        stx $1750
        ldy $fc
        lda $1871,y
        sta $174e
        lda $171d,x
        bpl loc_1067
        lda $171a,x
        sta $171d,x
        dec $1738,x
        bmi loc_106a
        bne loc_1067
        lda $1741,x
        bne loc_1067
        lda #$fe
        sta $173e,x

loc_1067:
        jmp loc_1216

loc_106a:
        ldy $1732,x
        lda $1729,x
        sta $fe
        lda $172c,x
        sta $ff

loc_1077:
        lda ($fe),y
        cmp #$e0
        bcc loc_109a
        cmp #$f0
        beq loc_10a8
        bcs loc_10b8
        and #$0f
        sta $174c
        lda $1791
        and #$f0
        ora $174c
        sta $1791
        inc $1732,x
        iny
        jmp loc_1077

loc_109a:
        tay
        lda $185e,y
        sta $fa
        lda $1853,y
        sta $fb
        jmp loc_10e5

loc_10a8:
        iny
        lda ($fe),y
        sta $1735,x
        iny
        inc $1732,x
        inc $1732,x
        jmp loc_1077

loc_10b8:
        cmp #$ff
        beq loc_10db
        cmp #$fc
        beq loc_10d3
        cmp #$fe
        bne loc_10c7
        lda #$00
.label loc_10c7 = * + 1
        bit $01a9
        sta $172f
        sta $1730
        sta $1731
        rts

loc_10d3:
        lda #$00
        sta $172f,x
        jmp loc_159d

loc_10db:
        lda #$00
        sta $1732,x
        ldy #$00
        jmp loc_1077

loc_10e5:
        ldy $173b,x
        lda $1741,x
        sta $1744
        lda #$00
        sta $1741,x
        lda ($fa),y
        sec
        sbc #$01
        sta $174c
        and #$3f
        sta $1738,x
        bit $174c
        bpl loc_1108
        jmp loc_11f9

loc_1108:
        bvc loc_1110
        inc $173b,x
        jmp loc_11dd

loc_1110:
        iny
        clv
        lda $1744
        clc
        adc #$7f
        lda ($fa),y
        cmp #$7f
        bne loc_1127
        inc $1741,x
        inc $173b,x
        iny
        lda ($fa),y

loc_1127:
        pha
        bvs loc_1146
        ldy $fc
        and #$7f
        clc
        adc $1735,x
        sta $177a,x
        adc $1872
        asl
        tay
        lda spr_15bb,y
        sta $178b,x
        lda $15bc,y
        sta $1788,x

loc_1146:
        inc $173b,x
        inc $173b,x
        pla
        bmi loc_1152
        jmp loc_11f1

loc_1152:
        ldy $173b,x
        lda ($fa),y
        and #$7f
        clc
        adc $1735,x
        sta $1757,x
        iny
        lda ($fa),y
        sta $175a,x
        and #$7f
        sta $1754,x
        inc $173b,x
        inc $173b,x

loc_1171:
        lda $1744
        bne loc_11b3
        ldy $fc
        lda $1874,y
        and #$08
        beq loc_118d
        lda $186d,y
        bmi loc_118d
        sta $179b,x
        lda $186c,y
        jmp loc_1195

loc_118d:
        lda #$ff
        sta $179b,x
        lda $1869,y

loc_1195:
        sta $178e,x
        lda $1878,y
        and #$f0
        sta $1795,x
        lda $1878,y
        and #$0f
        sta $1798,x
        bit $174e
        bvs loc_11b3
        lda $186e,y
        sta $1760,x

loc_11b3:
        lda $1874,y
        and #$f7
        beq loc_11ca
        lda $1873,y
        sta $179e
        lda $186b,y
        and #$0f
        ora #$40
        sta $1780

loc_11ca:
        lda #$00
        sta $177d,x
        sta $1748,x
        sta $1774,x
        lda #$ff
        sta $173e,x
        sta $1763,x

loc_11dd:
        ldy $173b,x
        lda ($fa),y
        cmp #$ff
        bne loc_11ee
        lda #$00
        sta $173b,x
        inc $1732,x

loc_11ee:
        jmp loc_14a7

loc_11f1:
        lda #$00
        sta $175a,x
        jmp loc_1171

loc_11f9:
        iny
        lda ($fa),y
        asl
        asl
        asl
        asl
        sta $fc
        sta $1781,x
        lda #$00
        sta $1760,x
        inc $173b,x
        ldy $173b,x
        bit $174c
        jmp loc_1108

loc_1216:
        inc $1763,x
        lda $175a,x
        bne loc_1221
        jmp loc_12a5

loc_1221:
        bmi loc_1268
        lda $1754,x
        clc
        adc $1788,x
        sta $1788,x
        lda $178b,x
        adc #$00
        sta $178b,x
        lda $1757,x
        asl
        tay
        lda spr_15bb,y
        cmp $178b,x
        beq loc_1247
        bcs loc_12a5
        jmp loc_1251

loc_1247:
        lda $15bc,y
        cmp $1788,x
        beq loc_1251
        bcs loc_12a5

loc_1251:
        sta $1788,x
        lda spr_15bb,y
        sta $178b,x
        lda #$00
        sta $175a,x
        lda $1757,x
        sta $177a,x
        jmp loc_12a5

loc_1268:
        lda $1788,x
        sec
        sbc $1754,x
        sta $1788,x
        lda $178b,x
        sbc #$00
        sta $178b,x
        lda $1757,x
        asl
        tay
        lda spr_15bb,y
        cmp $178b,x
        bcc loc_12a5
        iny
        lda spr_15bb,y
        cmp $1788,x
        bcc loc_12a5
        sta $1788,x
        dey
        lda spr_15bb,y
        sta $178b,x
        lda #$00
        sta $175a,x
        lda $1757,x
        sta $177a,x

loc_12a5:
        ldy $fc
        lda $1760,x
        bmi loc_12cd
        lda $186e,y
        asl
        beq loc_12f0
        clc
        adc $1795,x
        sta $1795,x
        lda $1798,x
        adc #$00
        sta $1798,x
        cmp #$0f
        bne loc_12f0
        lda #$80
        sta $1760,x
        jmp loc_12f0

loc_12cd:
        lda $186e,y
        asl
        sta $174c
        lda $1795,x
        sec
        sbc $174c
        sta $1795,x
        lda $1798,x
        sbc $175d
        sta $1798,x
        cmp #$00
        bne loc_12f0
        lda #$00
        sta $1760,x

loc_12f0:
        bit $174e
        bvc loc_1300
        lda $1795,x
        and #$f0
        ora $1798,x
        sta $1878,y

loc_1300:
        lda $1874,y
        and #$08
        beq loc_1315
        lda $186d,y
        bpl loc_1315
        and #$7f
        clc
        adc $1795,x
        sta $1795,x

loc_1315:
        lda $179b,x
        bmi loc_131d
        jmp loc_1349

loc_131d:
        lda $1874,y
        and #$08
        pha
        lda $1763,x
        and #$01
        beq loc_132b
        iny

loc_132b:
        pla
        bne loc_1340
        bit $174e
        bvs loc_1340
        lda $173e,x
        and #$01
        bne loc_1340
        lda $186c,y
        jmp loc_1343

loc_1340:
        lda $1869,y

loc_1343:
        and $173e,x
        sta $178e,x

loc_1349:
        ldy $fc
        lda $174e
        and #$1f
        cmp $1763,x
        bcs loc_13ac
        lda $1774,x
        bne loc_137a
        lda #$40
        sta $176e,x
        lda $186f,y
        and #$0f
        asl
        asl
        asl
        sta $176b,x
        lda $186f,y
        and #$f0
        lsr
        lsr
        sta $1768,x
        inc $1774,x
        jmp loc_13d2

loc_137a:
        lda $176b,x
        beq loc_13ac
        lda #$ff
        sta $1774,x
        lda $176e,x
        bmi loc_13af
        lda $1788,x
        clc
        adc $176b,x
        sta $1788,x
        lda $178b,x
        adc #$00
        sta $178b,x
        lda $176e,x
        clc
        adc $1768,x
        sta $176e,x
        bpl loc_13ac
        lda #$80
        sta $176e,x

loc_13ac:
        jmp loc_13d2

loc_13af:
        lda $1788,x
        sec
        sbc $176b,x
        sta $1788,x
        lda $178b,x
        sbc #$00
        sta $178b,x
        lda $176e,x
        clc
        adc $1768,x
        sta $176e,x
        bcc loc_13d2
        lda #$00
        sta $176e,x

loc_13d2:
        lda $1870,y
        and #$f0
        cmp #$f0
        beq loc_1417
        lsr
        sta $174c
        clc
        adc $177d,x
        tay
        lda $18c9,y
        cmp #$ff
        bne loc_13f6
        lda #$00
        sta $177d,x
        ldy $174c
        lda $18c9,y

loc_13f6:
        clc
        adc $177a,x
        asl
        tay
        lda spr_15bb,y
        sta $178b,x
        lda $15bc,y
        sta $1788,x
        inc $177d,x
        lda $177d,x
        cmp #$08
        bcc loc_1417
        lda #$00
        sta $177d,x

loc_1417:
        lda $1870,y
        and #$0f
        cmp $1763,x
        bne loc_1432
        lda $177a,x
        asl
        tay
        lda spr_15bb,y
        sta $178b,x
        lda $15bc,y
        sta $1788,x

loc_1432:
        lda #$00
        sta $1751,x
        lda $174e
        and #$20
        beq loc_14a7
        ldy $fc
        lda $186d,y
        sta $ff
        lda $186c,y
        sta $fe
        ldy $1748,x
        lda ($fe),y
        bpl loc_1484
        cmp #$85
        bne loc_1467
        lda $1792,x
        sta $1751,x
        ldx $174b
        sta $d404,x
        ldx $1750
        jmp loc_14a7

loc_1467:
        sta $1792,x
        sta $1751,x
        ldx $174b
        sta $d404,x
        iny
        lda ($fe),y
        sta $d401,x
        iny
        tya
        ldx $1750
        sta $1748,x
        jmp loc_14a7

loc_1484:
        sta $1792,x
        sta $178e,x
        iny
        lda $1788,x
        sec
        sbc ($fe),y
        sta $1788,x
        iny
        lda $178b,x
        sbc ($fe),y
        sta $178b,x
        iny
        tya
        sta $1748,x
        lda #$00
        sta $1751,x

loc_14a7:
        ldy $fc
        lda $1874,y
        and #$f7
        bne loc_14b3
        jmp loc_1541

loc_14b3:
        pha
        and #$f0
        sta $174c
        pla
        and #$07
        asl
        asl
        asl
        asl
        sta $174d
        lda $1791
        and #$0f
        ora $174d
        sta $1791
        lda $17a0,x
        ora $174c
        sta $179f
        lda $1763,x
        bmi loc_1541
        lda $174e
        bmi loc_1504
        lda $1875,y
        beq loc_1501
        bmi loc_14f2
        clc
        adc $179e
        sta $179e
        jmp loc_1541

loc_14f2:
        and #$7f
        sta $174c
        lda $179e
        sec
        sbc $174c
        sta $179e

loc_1501:
        jmp loc_1541

loc_1504:
        bit $1780
        bmi loc_1501
        bvs loc_151c
        dec $1780
        bit $1780
        bpl loc_1501
        lda $1873,y
        sta $179e
        jmp loc_1541

loc_151c:
        dec $1780
        bit $1780
        bvc loc_152d
        lda $1873,y
        sta $179e
        jmp loc_1541

loc_152d:
        lda $186b,y
        lsr
        lsr
        lsr
        lsr
        sta $1780
        lda $1873,y
        clc
        adc $1875,y
        sta $179e

loc_1541:
        ldx $174b
        lda $1876,y
        sta $d405,x
        lda $1877,y
        sta $d406,x
        ldx $1750
        ldy $174b
        lda $1751,x
        bne loc_1589
        lda $179b,x
        bmi loc_1577
        lda $178e,x
        cmp #$81
        bne loc_1577
        sta $d404,y
        lda #$00
        sta $d400,y
        lda #$40
        sta $d401,y
        jmp loc_1589

loc_1577:
        lda $1788,x
        sta $d400,y
        lda $178b,x
        sta $d401,y
        lda $178e,x
        sta $d404,y

loc_1589:
        lda $1795,x
        sta $d402,y
        lda $1798,x
        sta $d403,y
        lda $179b,x
        bmi loc_159d
        dec $179b,x

loc_159d:
        dex
        bmi loc_15a3
        jmp loc_1025

loc_15a3:
        lda $1791
        sta $d418
        lda $179f
        sta $d417
        lda $179e
        sta $d416
        lda #$00
        sta $d415
        rts

// --- Region $167d-$16bf ---
.pc = $167d "sub_167d"
// Referenced by: jsr from $1002

sub_167d:
        lda #$00
        sta $172f
        sta $1730
        sta $1731
        rts

// Referenced by: jsr from $1006
sub_1689: {
        tax
        sta $174c
        asl
        clc
        adc $174c
        tay
        ldx #$00
loop:
        lda $17c1,y
        beq skip
        sta $172f,x
        lda $17bb,y
        sta $171a,x
        lda $17a9,y
        sta $1729,x
        lda $17b2,y
        sta $172c,x
skip:
        iny
        inx
        cpx #$03
        bcc loop
        rts
}
// Referenced by: jsr from $1034

sub_16b6:
        lda #$ff
        sta $172f,x
        sta $171d,x
        lda #$00

// --- Region $1817-$1824 ---
.pc = $1817 "Segment $1817"
        ora $01
        ora ($05,x)
        ora $08
        ora #$0a
        .byte $ff,$02,$ff                           // isc $ff02,x // ILLEGAL
        .byte $03,$03                               // slo ($03,x) // ILLEGAL

chr_1824:
        // === Screen RAM (1 bytes, $1824-$1824) ===
        .encoding "screencode_mixed"
        .text "c"
        .encoding "petscii_upper"

// --- Region $1d00-$1d8c ---
.pc = $1d00 "sub_1d00"
// Referenced by: jsr from $26b7

sub_1d00:
        jsr sub_1d03
// Referenced by: jsr from $1d00

sub_1d03:
        dec $3c
        lda $3c
        sta $d016
        cmp #$0e
        bne loc_1d6f
        lda #$16
        sta $3c
        sta $d016
        ldx #$00

loc_1d17:
        lda $0451,x
        sta $0450,x
        lda $0479,x
        sta $0478,x
        inx
        cpx #$27
        bne loc_1d17
        lda $5c
        beq loc_1d48
        ldy #$00
        lda ($60),y
        clc
        adc #$40
        sta $0477
        clc
        adc #$80
        sta $049f
        inc $60
        bne loc_1d42
        inc $61

loc_1d42:
        lda #$00
        sta $5c
        beq loc_1d6f

loc_1d48:
        ldy #$00
        lda ($60),y
        cmp #$00
        beq loc_1d85
        cmp #$ff
        beq loc_1d79
        cmp #$1e
        beq loc_1d7d
        cmp #$1f
        beq loc_1d81
        cmp #$ff
        beq loc_1d88
        nop
        nop
        sta $0477
        clc
        adc #$80
        sta $049f
        lda #$01
        sta $5c

loc_1d6f:
        rts

loc_1d70:
        lda #$2d
        sta $61
        lda #$00
        sta $60
        rts

loc_1d79:
        jsr sub_1e00
        rts

loc_1d7d:
        jsr sub_1e20
        rts

loc_1d81:
        jsr sub_1e40
        rts

loc_1d85:
        jmp loc_1d70

loc_1d88:
        jsr sub_1ea0
        rts

chr_1d8c:
        // === Charset data (1 bytes, $1d8c-$1d8c) ===
        .byte $00                                   // char 0 (partial)

// --- Region $1e00-$1e35 ---
.pc = $1e00 "sub_1e00"
// Referenced by: jsr from $1d79

sub_1e00:
        lda #$20
        sta smc_26b7                                // SMC: modifies $26b7
        lda #$60
        sta smc_26b8                                // SMC: modifies $26b8
        lda #$1e
        sta smc_26b9                                // SMC: modifies $26b9
        lda #$00
        sta $01a8
        lda #$f0
        sta $1e67
        rts

chr_1e1a:
        // === Charset data (6 bytes, $1e1a-$1e1f) ===
        .byte $00,$00,$00,$00,$00,$00               // char 0 (partial)
// Referenced by: jsr from $1d7d

sub_1e20:
        lda #$20
        sta smc_26b7                                // SMC: modifies $26b7
        lda #$00
        sta smc_26b8                                // SMC: modifies $26b8
        lda #$1d
        sta smc_26b9                                // SMC: modifies $26b9
        inc $60
        bne loc_1e35
        inc $61

loc_1e35:
        rts

// --- Region $1e40-$1e55 ---
.pc = $1e40 "sub_1e40"
// Referenced by: jsr from $1d81

sub_1e40:
        lda #$20
        sta smc_26b7                                // SMC: modifies $26b7
        lda #$fa
        sta smc_26b8                                // SMC: modifies $26b8
        lda #$1c
        sta smc_26b9                                // SMC: modifies $26b9
        inc $60
        bne loc_1e55
        inc $61

loc_1e55:
        rts

// --- Region $1ea0-$1eba ---
.pc = $1ea0 "sub_1ea0"
// Referenced by: jsr from $1d88

sub_1ea0:
        lda #$20
        sta smc_26b7                                // SMC: modifies $26b7
        lda #$60
        sta smc_26b8                                // SMC: modifies $26b8
        lda #$1e
        sta smc_26b9                                // SMC: modifies $26b9
        lda #$00
        sta $01a8
        lda #$20
        sta $1e67
        rts

chr_1eba:
        // === Charset data (1 bytes, $1eba-$1eba) ===
        .byte $00                                   // char 0 (partial)

// --- Region $1f00-$1f1c ---
.pc = $1f00 "loc_1f00"

loc_1f00:
        sei
        lda #$31
        sta $0314
        lda #$ea
        sta $0315
        lda #$f0
        sta $d01a
        cli
        jsr $ff84
        jsr $fda3
        jsr $ff5b
        jmp $fce2

// --- Region $2600-$26f0 ---
.pc = $2600 "main_2600"

main_2600:
        jsr $e544
        ldx #$00

loc_2605:
        lda $1c00,x
        sta $06b8,x
        inx
        cpx #$80
        bne loc_2605
        lda #$2d
        sta $61
        sei
        lda #$78
        lda #$7f
        sta $dc0d
        ldx #$00
        stx $dc0e
        inx
        stx $d01a
        lda #$00
        jsr sub_1000
        lda #$1b
        sta $d011
        ldx #$00

loc_2631:
        lda #$08
        sta $d800,x
        inx
        bne loc_2631
        ldx #$00

loc_263b:
        lda #$08
        sta $da00,x
        sta $db00,x
        inx
        bne loc_263b
        ldx #$00

loc_2648:
        lda dat_1b00,x
        sta $05b8,x
        inx
        bne loc_2648
        lda #$00
        sta $60
        nop
        nop
        lda #$6a
        sta $0314
        lda #$26
        sta $0315
        lda #$13
        sta $d018
        cli

loc_2667:
        jmp loc_2667

irq_266a:
        lda #$32
        sta $d012
        ldx #$06

loc_2671:
        dex
        bne loc_2671
        ldx #$00

loc_2676:
        ldy #$08
        lda $2700,x

loc_267b:
        sta $d020
        sta $d021
        inx
        dey
        beq loc_2676
        cpx #$6a
        bcs $2698
        jsr sub_2888
        lda chr_2800,x
        sta $d023
        lda $2700,x
        clc
        bcc loc_267b
        lda #$01
        sta $d019
        lda #$00
        sta $0314
        lda #$2a
        sta $0315
        lda $1cfd
        sta $d016
        lda #$13
        sta $d018
        lda #$00
        sta $d022

smc_26b7:
.label smc_26b8 = * + 1
.label smc_26b9 = * + 2
        jsr sub_1d00                                // !SMC: modified by $1e02, $1e07, $1e0c, $1e22, $1e27, $1e2c, $1e42, $1e47, $1e4c, $1ea2, $1ea7, $1eac
        ldy $2817
        ldx #$00

loc_26bf:
        lda $2818,x
        sta $2817,x
        inx
        cpx #$3a
        bne loc_26bf
        sty $284f
        jsr sub_1015
        jsr sub_26e0
        jsr sub_293c
        jmp $ea81

chr_26d9:
        // === Charset data (7 bytes, $26d9-$26df) ===
        .byte $60,$00,$00,$00,$00,$00,$00           // char 0 (partial)
// Referenced by: jsr from $26d0

sub_26e0:
        ldx #$00

loc_26e2:
        lda $1f80,x
        sta $2700,x
        inx
        cpx #$a8
        bne loc_26e2
        nop
        nop
        nop
        rts

// --- Region $2888-$2890 ---
.pc = $2888 "sub_2888"
// Referenced by: jsr from $2689

sub_2888:
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        rts

// --- Region $2900-$2953 ---
.pc = $2900 "loc_2900"

loc_2900:
        ldx #$07

loc_2902:
        lda $25a0,x
.label smc_2906 = * + 1
        sta $2724,x                                 // !SMC: modified by $293e
        dex
        bne loc_2902
        nop
        nop
        nop
        ldx #$07

loc_2910:
        lda $25a8,x
.label smc_2914 = * + 1
        sta $2733,x                                 // !SMC: modified by $2943
        dex
        bne loc_2910
        nop
        nop
        nop
        ldx #$07

loc_291e:
        lda $25b0,x
.label smc_2922 = * + 1
        sta $2742,x                                 // !SMC: modified by $2948
        dex
        bne loc_291e
        nop
        nop
        nop
        ldx #$07

loc_292c:
        lda $25b8,x
.label smc_2930 = * + 1
        sta $274e,x                                 // !SMC: modified by $294d
        dex
        bne loc_292c
        jmp loc_2980

chr_2938:
        // === Charset data (4 bytes, $2938-$293b) ===
        .byte $60,$60,$60,$60                       // char 0 (partial)
// Referenced by: jsr from $26d3

sub_293c:
        lda $e0
        sta smc_2906                                // SMC: modifies $2906
        lda $e1
        sta smc_2914                                // SMC: modifies $2914
        lda $e2
        sta smc_2922                                // SMC: modifies $2922
        lda $e3
        sta smc_2930                                // SMC: modifies $2930
        jmp loc_2900

chr_2953:
        // === Charset data (1 bytes, $2953-$2953) ===
        .byte $00                                   // char 0 (partial)

// --- Region $2980-$29ba ---
.pc = $2980 "loc_2980"

loc_2980:
        ldx #$33
        lda chr_2000,x
        sta $de
        inc $2981
        inx
        cpx #$60
        bne loc_2994

chr_298f:
        // === Charset data (5 bytes, $298f-$2993) ===
        .byte $a9,$00,$8d,$81,$29                   // char 0 (partial)

loc_2994:
        ldx #$00

loc_2996:
        lda $2cd1,x
        sta txt_2cd0,x
        inx
        cpx #$1f
        bne loc_2996
        lda $de
        sta $2cef
        lda $2cd1
        sta $e0
        lda $2cd6
        sta $e1
        lda $2cdb
        sta $e2
        lda $2ce0
        sta $e3
        rts

// --- Region $2a00-$2a5d ---
.pc = $2a00 "irq_2a00"

irq_2a00:
        lda #$82
        sta $d012
        ldx #$06

loc_2a07:
        dex
        bne loc_2a07
        ldx #$00

loc_2a0c:
        ldy #$08
        lda dat_2a96,x

loc_2a11:
        sta $d020
        sta $d021
        inx
        dey
        beq loc_2a0c
        cpx #$30
        bcs $2a2e
        jsr sub_2c1e
        lda $2b96,x
        sta $d022
        lda dat_2a96,x
        clc
        bcc loc_2a11
        lda #$01
        sta $d019
        lda #$26
        sta $0315
        lda #$6a
        sta $0314
        lda #$d8
        sta $d016
        nop
        nop
        nop
        nop
        nop
        lda #$18
        sta $d018
        lda #$00
        sta $d022
        jsr $ffe4
        cmp #$20
        beq loc_2a5b
        jmp $ea31

loc_2a5b:
        jmp loc_1f00

// --- Region $2c1e-$2c26 ---
.pc = $2c1e "sub_2c1e"
// Referenced by: jsr from $2a1f

sub_2c1e:
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        rts

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

// --- Region $0800-$08d8 ---
.pc = $0800 "spr_0800"

spr_0800:
        // === Charset data (217 bytes, $0800-$08d8) ===
        .byte $00,$00,$00,$00,$02,$09,$25,$95       // char 0 @+0
        .byte $aa,$95,$95,$95,$97,$97,$97,$95       // char 1 @+1
        .byte $aa,$95,$95,$95,$bf,$aa,$95,$95       // char 2 @+2
        .byte $aa,$95,$95,$95,$97,$97,$97,$97       // char 3 @+3
        .byte $aa,$95,$95,$95,$97,$97,$97,$97       // char 4 @+4
        .byte $aa,$95,$95,$95,$97,$96,$95,$95       // char 5 @+5
        .byte $aa,$95,$95,$95,$97,$96,$95,$95       // char 6 @+6
        .byte $aa,$95,$95,$95,$97,$97,$97,$97       // char 7 @+7
        .byte $aa,$97,$97,$97,$97,$97,$95,$95       // char 8 @+8
        .byte $0a,$09,$09,$09,$09,$09,$09,$09       // char 9 @+9
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 10 @+10
        .byte $aa,$97,$97,$97,$97,$97,$95,$95       // char 11 @+11
        .byte $aa,$97,$97,$97,$97,$97,$97,$97       // char 12 @+12
        .byte $a0,$a8,$9a,$96,$95,$95,$95,$97       // char 13 @+13
        .byte $aa,$95,$95,$95,$95,$97,$97,$97       // char 14 @+14
        .byte $aa,$95,$95,$95,$95,$97,$97,$97       // char 15 @+15
        .byte $aa,$95,$95,$95,$bf,$aa,$95,$95       // char 16 @+16
        .byte $aa,$95,$95,$95,$95,$97,$97,$97       // char 17 @+17
        .byte $aa,$95,$95,$95,$bf,$aa,$95,$95       // char 18 @+18
        .byte $aa,$95,$95,$95,$97,$96,$95,$95       // char 19 @+19
        .byte $aa,$95,$95,$95,$bd,$09,$09,$09       // char 20 @+20
        .byte $aa,$97,$97,$97,$97,$97,$97,$97       // char 21 @+21
        .byte $aa,$97,$97,$97,$97,$97,$97,$95       // char 22 @+22
        .byte $aa,$97,$97,$97,$97,$97,$97,$97       // char 23 @+23
        .byte $ab,$97,$97,$97,$97,$95,$a5,$29       // char 24 @+24
        .byte $aa,$97,$97,$97,$97,$97,$95,$95       // char 25 @+25
        .byte $aa,$95,$95,$95,$bf,$02,$0a,$09       // char 26 @+26

dat_08d8:
        // === Fill data (1 bytes, $08d8-$08d8) ===
        .byte $00                                   // .

// --- Region $0908-$0910 ---
.pc = $0908 "dat_0908"

dat_0908:
        .byte $0a,$09,$09,$09,$09,$09,$09,$09       // char 33 '!'

dat_0910:
        // === Fill data (1 bytes, $0910-$0910) ===
        .byte $00                                   // .

// --- Region $0938-$094f ---
.pc = $0938 "dat_0938"

dat_0938:
        .byte $0a,$09,$09,$0a,$09,$0b,$00,$00       // char 39 '''
        .byte $00,$02,$02,$0a,$09,$09,$09,$09       // char 40 '('
        .byte $2a,$27,$25,$25,$29,$09,$09,$09       // char 41 ')'

// --- Region $096d-$09d8 ---
.pc = $096d "dat_096d"

dat_096d:
        .byte $2a,$25,$25                           // char 45 (partial)
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 46 '.'
        .byte $00,$00,$00,$02,$02,$0a,$09,$29       // char 47 '/'
        .byte $aa,$95,$95,$95,$97,$97,$97,$97       // char 48 '0'
        .byte $0a,$09,$09,$09,$09,$09,$09,$09       // char 49 '1'
        .byte $aa,$95,$95,$95,$bf,$aa,$95,$95       // char 50 '2'
        .byte $aa,$95,$95,$95,$97,$be,$09,$09       // char 51 '3'
        .byte $aa,$97,$97,$97,$97,$97,$95,$95       // char 52 '4'
        .byte $aa,$95,$95,$95,$97,$96,$95,$95       // char 53 '5'
        .byte $aa,$95,$95,$95,$97,$96,$95,$95       // char 54 '6'
        .byte $aa,$95,$95,$95,$bf,$00,$00,$00       // char 55 '7'
        .byte $aa,$95,$95,$95,$97,$96,$95,$95       // char 56 '8'
        .byte $aa,$95,$95,$95,$97,$96,$95,$95       // char 57 '9'
        .byte $00,$00,$00,$0a,$09,$09,$09,$0b       // char 58 ':'

dat_09d8:
        // === Fill data (1 bytes, $09d8-$09d8) ===
        .byte $00                                   // .

// --- Region $09f8-$0a16 ---
.pc = $09f8 "dat_09f8"

dat_09f8:
        .byte $2a,$a5,$95,$95,$97,$be,$0a,$09       // char 63 '?'
        .byte $00,$00,$00,$00,$80,$60               // char 64 (partial)

txt_0a06:
        .byte $58,$56                               // char 64 (partial)
        .byte $aa,$57,$57,$57,$97,$97,$97,$57       // char 65 'A'
        .byte $aa                                   // char 66 (partial)

txt_0a11:
        .byte $57,$57,$57,$d7,$97,$57               // char 66 (partial)

// --- Region $0a1d-$0ad8 ---
.pc = $0a1d "Program $0a1d"
        .byte $00,$00,$00,$a0,$68,$5a,$57           // char 0 (partial)
        .byte $97,$97,$97,$97,$aa,$57,$57,$57       // char 1 @+1
        .byte $ff,$a8                               // char 2 (partial)

txt_0a2e:
        .byte $5c,$5c,$aa,$57,$57,$57               // char 2 (partial)
        .byte $ff,$a8                               // char 3 (partial)

txt_0a36:
        .byte $5c,$5c,$aa,$57,$57,$57               // char 3 (partial)
        .byte $ff,$aa,$97,$97,$aa,$97,$97,$97       // char 4 @+4
        .byte $97,$97                               // char 5 (partial)

txt_0a46:
        .byte $57,$57,$a0,$70,$70,$70               // char 5 (partial)
        .byte $70,$70,$70,$70,$aa,$97,$97,$97       // char 6 @+6
        .byte $97,$97,$97,$97,$aa,$97,$97,$97       // char 7 @+7
        .byte $97,$57,$5f,$7c,$00,$00,$00,$00       // char 8 @+8
        .byte $00,$00,$00,$00,$0a,$2b,$a7,$97       // char 9 @+9

txt_0a6c:
        .byte $57,$57,$57,$d7,$aa                   // char 10 (partial)

txt_0a71:
        .byte $57,$57,$57                           // char 10 (partial)
        .byte $57,$d7,$97,$97,$aa                   // char 11 (partial)

txt_0a79:
        .byte $57,$57,$57                           // char 11 (partial)
        .byte $57,$d7,$97,$97,$aa                   // char 12 (partial)

txt_0a81:
        .byte $57,$57,$57                           // char 12 (partial)
        .byte $d7,$97                               // char 13 (partial)

txt_0a86:
        .byte $57,$57,$aa                           // char 13 (partial)

txt_0a89:
        .byte $57,$57,$57                           // char 13 (partial)
        .byte $57,$d7,$97,$97,$aa                   // char 14 (partial)

txt_0a91:
        .byte $57,$57,$57                           // char 14 (partial)
        .byte $d7,$97                               // char 15 (partial)

txt_0a96:
        .byte $57,$5c,$aa,$57,$57,$57               // char 15 (partial)
        .byte $ff,$aa                               // char 16 (partial)

txt_0a9e:
        .byte $57,$57,$aa,$57,$57,$57               // char 16 (partial)
        .byte $7f,$70,$70,$70,$aa,$97,$97,$97       // char 17 @+17
        .byte $97,$97,$97,$97,$aa,$97,$97,$97       // char 18 @+18
        .byte $97,$97,$97,$57,$aa,$97,$97,$97       // char 19 @+19
        .byte $97,$97,$97,$97,$ab,$97,$97,$97       // char 20 @+20
        .byte $97,$57,$5f,$7e,$aa,$97,$97,$97       // char 21 @+21
        .byte $97,$97                               // char 22 (partial)

txt_0ace:
        .byte $57,$57,$ab                           // char 22 (partial)

txt_0ad1:
        .byte $57,$57,$57                           // char 22 (partial)
        .byte $d7,$57,$5f,$5c                       // char 23 (partial)

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

// --- Region $0b08-$0b10 ---
.pc = $0b08 "dat_0b08"

dat_0b08:
        .byte $a0,$70,$70,$70                       // char 29 (partial)
        .byte $70,$70,$70,$70                       // char 30 (partial)

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

// --- Region $0b38-$0b4f ---
.pc = $0b38 "dat_0b38"

dat_0b38:
        .byte $b0,$70,$70,$70                       // char 35 (partial)
        .byte $f0,$c0,$00,$00,$a8,$9c,$5c,$5c       // char 36 '$'
        .byte $7c,$70,$70,$70,$00,$c0,$c0,$f0       // char 37 '%'
        .byte $70,$70,$70,$70                       // char 38 (partial)

// --- Region $0b6d-$0bd8 ---
.pc = $0b6d "dat_0b6d"

dat_0b6d:
        .byte $a8,$5c,$5c,$00,$00,$00,$00           // char 42 (partial)
        .byte $00,$00,$00,$00,$2b,$a7,$97,$97       // char 43 '+'
        .byte $5f,$5c,$7c,$70,$aa                   // char 44 (partial)

txt_0b81:
        .byte $57,$57,$57                           // char 44 (partial)
        .byte $d7,$97,$97,$97,$a0,$70,$70,$70       // char 45 '-'
        .byte $70,$70,$70,$70,$aa                   // char 46 (partial)

txt_0b91:
        .byte $57,$57,$57                           // char 46 (partial)
        .byte $d7,$97                               // char 47 (partial)

txt_0b96:
        .byte $57,$57,$aa                           // char 47 (partial)

txt_0b99:
        .byte $57,$57,$57                           // char 47 (partial)
        .byte $d7,$97,$57,$57,$00,$00,$a8,$5c       // char 48 '0'
        .byte $5c,$5f                               // char 49 (partial)

txt_0ba6:
        .byte $57,$57,$aa,$57,$57,$57               // char 49 (partial)
        .byte $ff,$ab                               // char 50 (partial)

txt_0bae:
        .byte $57,$57,$aa,$57,$57,$57               // char 50 (partial)
        .byte $ff,$ab                               // char 51 (partial)

txt_0bb6:
        .byte $57,$57,$aa                           // char 51 (partial)

txt_0bb9:
        .byte $57,$57,$57                           // char 51 (partial)
        .byte $d7,$97,$97,$97,$aa                   // char 52 (partial)

txt_0bc1:
        .byte $57,$57,$57                           // char 52 (partial)
        .byte $d7,$97                               // char 53 (partial)

txt_0bc6:
        .byte $57,$57,$aa                           // char 53 (partial)

txt_0bc9:
        .byte $57,$57,$57                           // char 53 (partial)
        .byte $d7,$97,$57,$57,$00,$00,$00,$a0       // char 54 '6'
        .byte $70,$70,$70,$f0                       // char 55 (partial)

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

// --- Region $0bf8-$0cd7 ---
.pc = $0bf8 "dat_0bf8"

dat_0bf8:
        .byte $ac,$5b                               // char 59 (partial)

txt_0bfa:
        .byte $57,$57                               // char 59 (partial)
        .byte $d7,$57,$5b,$5b,$d5,$35,$0d,$03       // char 60 '<'
        .byte $00,$00,$00,$00,$95,$97,$97,$97       // char 61 '='
        .byte $97,$97,$bf,$00,$95,$97,$96,$95       // char 62 '>'
        .byte $95,$95,$bf,$00,$97,$97,$97,$95       // char 63 '?'
        .byte $95,$95,$bf,$00,$97,$97,$97,$95       // char 64 '@'
        .byte $95,$95,$bf,$00,$95,$97,$96,$95       // char 65 'A'
        .byte $95,$95,$bf,$00,$95,$97,$97,$97       // char 66 'B'
        .byte $97,$97,$bf,$00,$97,$97,$97,$95       // char 67 'C'
        .byte $95,$95,$bf,$00,$95,$97,$97,$97       // char 68 'D'
        .byte $97,$97,$bf,$00,$09,$09,$09,$09       // char 69 'E'
        .byte $09,$09,$0b,$00,$ab,$97,$97,$95       // char 70 'F'
        .byte $95,$95,$bf,$00,$95,$97,$97,$97       // char 71 'G'
        .byte $97,$97,$bf,$00,$97,$97,$97,$95       // char 72 'H'
        .byte $95,$95,$bf,$00,$97,$97,$97,$97       // char 73 'I'
        .byte $97,$97,$bf,$00,$97,$97,$97,$97       // char 74 'J'
        .byte $97,$97,$bf,$00,$97,$97,$95,$95       // char 75 'K'
        .byte $95,$95,$bf,$00,$95,$97,$97,$97       // char 76 'L'
        .byte $97,$97,$bf,$00,$97,$97,$95,$95       // char 77 'M'
        .byte $95,$95,$ff,$00,$95,$95,$97,$97       // char 78 'N'
        .byte $97,$97,$bf,$00,$95,$bf,$aa,$95       // char 79 'O'
        .byte $95,$95,$bf,$00,$09,$09,$09,$09       // char 80 'P'
        .byte $09,$09,$0b,$00,$97,$97,$95,$95       // char 81 'Q'
        .byte $95,$95,$bf,$00,$a5,$25,$25,$29       // char 82 'R'
        .byte $09,$09,$0b,$00,$97,$95,$95,$95       // char 83 'S'
        .byte $95,$97,$bf,$00,$25,$95,$97,$97       // char 84 'T'
        .byte $97,$97,$bf,$00,$95,$bd,$09,$09       // char 85 'U'
        .byte $09,$09,$0b,$00                       // char 86 (partial)

txt_0cd0:
        .byte $29,$25,$a5,$95                       // char 86 (partial)
        .byte $95,$95,$bf                           // char 87 (partial)

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

// --- Region $0d08-$0d0f ---
.pc = $0d08 "dat_0d08"

dat_0d08:
        .byte $09,$0b,$0a,$09                       // char 93 (partial)
        .byte $09,$09,$0b                           // char 94 (partial)

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

// --- Region $0d40-$0dd5 ---
.pc = $0d40 "dat_0d40"

dat_0d40:
        .byte $09,$09,$09,$0a                       // char 100 (partial)
        .byte $02,$02,$00,$00,$09,$09               // char 101 (partial)

txt_0d4a:
        .byte $29,$25                               // char 101 (partial)
        .byte $25,$27,$2f,$00,$00,$00,$00,$00       // char 102 'f'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 103 'g'
        .byte $00,$00,$00,$00,$00,$00,$0a,$09       // char 104 'h'
        .byte $09,$0a,$09,$0b,$25,$2f,$00,$00       // char 105 'i'
        .byte $00,$00,$00,$00,$00,$00,$0a,$09       // char 106 'j'
        .byte $09,$09,$0b,$00,$25,$a5,$97,$97       // char 107 'k'
        .byte $9f,$9c,$bc,$b0,$97,$97,$97,$95       // char 108 'l'
        .byte $95,$95,$bf,$00,$09,$09,$09,$09       // char 109 'm'
        .byte $09,$09,$0b,$00,$95,$97,$96,$95       // char 110 'n'
        .byte $95,$95,$bf,$00,$09,$ab,$96,$95       // char 111 'o'
        .byte $95,$95,$bf,$00,$95,$bf,$02,$02       // char 112 'p'
        .byte $02,$02,$02,$00,$95,$bf,$aa,$95       // char 113 'q'
        .byte $95,$95,$bf,$00,$95,$97,$96,$95       // char 114 'r'
        .byte $95,$95,$bf,$00,$00,$00,$00,$00       // char 115 's'
        .byte $00,$00,$00,$00,$95,$97,$96,$95       // char 116 't'
        .byte $95,$95,$bf,$00,$95,$bf,$aa,$95       // char 117 'u'
        .byte $95,$95,$bf,$00,$0a,$09,$09,$09       // char 118 'v'
        .byte $0b                                   // char 119 (partial)

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

// --- Region $0df8-$0ed7 ---
.pc = $0df8 "dat_0df8"

dat_0df8:
        .byte $09,$0b,$0a,$09                       // char 123 (partial)
        .byte $09,$09,$0b,$00,$57,$5c,$70,$c0       // char 124 '|'
        .byte $00,$00,$00,$00,$57,$97,$97,$97       // char 125 '}'
        .byte $97,$97,$bf,$00,$57,$d7,$97,$57       // char 126 '~'
        .byte $57,$57,$ff,$00,$00,$00,$aa,$57       // char 127
        .byte $57,$57,$ff,$00,$97,$97,$97,$57       // char 128
        .byte $5f,$7c,$f0,$00,$5c,$fc,$aa,$57       // char 129
        .byte $57,$57,$ff,$00,$5c,$fc,$00,$00       // char 130
        .byte $00,$00,$00,$00,$97,$97,$97,$57       // char 131
        .byte $57,$57,$ff,$00,$57,$97,$97,$97       // char 132
        .byte $97,$97,$bf,$00,$70,$70,$70,$70       // char 133
        .byte $70,$70,$f0,$00,$97,$97,$97,$57       // char 134
        .byte $57,$57,$ff,$00,$5f,$57,$97,$97       // char 135
        .byte $97,$97,$bf,$00,$00,$00,$aa,$57       // char 136
        .byte $57,$57,$ff,$00,$97,$97,$97,$97       // char 137
        .byte $97,$97,$bf,$00,$97,$97,$97,$97       // char 138
        .byte $97,$97,$bf,$00,$97,$97,$57,$57       // char 139
        .byte $57,$57,$ff,$00,$57,$ff,$00,$00       // char 140
        .byte $00,$00,$00,$00,$97,$97,$57,$57       // char 141
        .byte $57,$57,$f7,$3f,$5f,$57,$97,$97       // char 142
        .byte $97,$97,$bf,$00,$57,$d7,$97,$57       // char 143
        .byte $57,$57,$ff,$00,$70,$70,$70,$70       // char 144
        .byte $70,$70,$f0,$00,$97,$97,$57,$57       // char 145
        .byte $57,$57,$ff,$00,$5f,$5c,$5c,$7c       // char 146
        .byte $70,$70,$f0,$00,$97                   // char 147 (partial)

txt_0eb9:
        .byte $57,$57,$57                           // char 147 (partial)
        .byte $57,$d7,$ff,$00,$5c,$57,$97,$97       // char 148
        .byte $97,$97,$bf,$00,$57,$7f,$70,$70       // char 149
        .byte $70,$70,$f0,$00,$7c,$70,$ab,$57       // char 150
        .byte $57,$57,$ff                           // char 151 (partial)

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

// --- Region $0f08-$0f0f ---
.pc = $0f08 "dat_0f08"

dat_0f08:
        .byte $70,$f0,$a0,$70                       // char 157 (partial)
        .byte $70,$70,$f0                           // char 158 (partial)

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

// --- Region $0f40-$0fd5 ---
.pc = $0f40 "dat_0f40"

dat_0f40:
        .byte $70,$70,$7c,$5c                       // char 164 (partial)
        .byte $5c,$9c,$bc,$00,$70,$70,$70,$f0       // char 165
        .byte $c0,$c0,$00,$00,$00,$00,$00,$00       // char 166
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 167
        .byte $00,$00,$00,$00,$00,$00,$a0,$70       // char 168
        .byte $70,$70,$f0,$c0,$5c,$fc,$00,$00       // char 169
        .byte $00,$00,$00,$00,$00,$00,$a0,$70       // char 170
        .byte $70,$70,$f0,$00,$f0,$c0,$c0,$00       // char 171
        .byte $00,$00,$00,$00,$97,$97,$97,$57       // char 172
        .byte $57,$57,$ff,$00,$70,$70,$70,$70       // char 173
        .byte $70,$70,$f0,$00,$57,$ff,$ab,$57       // char 174
        .byte $57,$57,$ff,$00,$57,$d7,$97,$57       // char 175
        .byte $57,$57,$ff,$00,$57,$5f,$5c,$5c       // char 176
        .byte $5c,$5c,$fc,$00,$57,$d7,$97,$57       // char 177
        .byte $57,$57,$ff,$00,$57,$d7,$97,$57       // char 178
        .byte $57,$57,$ff,$00,$97,$97,$97,$97       // char 179
        .byte $97,$97,$bf,$00,$57,$d7,$97,$57       // char 180
        .byte $57,$57,$ff,$00,$57,$d7,$97,$57       // char 181
        .byte $57,$57,$ff,$00,$a0,$70,$70,$70       // char 182
        .byte $f0                                   // char 183 (partial)

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

// --- Region $100a-$1014 ---
.pc = $100a "dat_100a"

dat_100a:
        .byte $12,$05,$4c,$7d,$16,$4c,$89,$16,$4c,$d2,$16 // ..L}.L..L..

// --- Region $15bb-$167c ---
.pc = $15bb "spr_15bb"

spr_15bb:
        // === Sprite data (5 bytes, $15bb-$15bf) ===
        .byte $01,$0c,$01                           // .......#....##.........#
        .byte $1c,$01

spr_15c0:
        // === Sprite data (64 bytes, $15c0-$15ff) ===
        .byte $2d,$01,$3e                           // ..#.##.#.......#..#####.
        .byte $01,$51,$01                           // .......#.#.#...#.......#
        .byte $66,$01,$7b                           // .##..##........#.####.##
        .byte $01,$91,$01                           // .......##..#...#.......#
        .byte $a9,$01,$c3                           // #.#.#..#.......###....##
        .byte $01,$dd,$01                           // .......###.###.#.......#
        .byte $fa,$02,$18                           // #####.#.......#....##...
        .byte $02,$00,$02                           // ......#...............#.
        .byte $5a,$02,$7d                           // .#.##.#.......#..#####.#
        .byte $02,$a3,$02                           // ......#.#.#...##......#.
        .byte $cc,$02,$f6                           // ##..##........#.####.##.
        .byte $03,$23,$03                           // ......##..#...##......##
        .byte $53,$03,$86                           // .#.#..##......###....##.
        .byte $03,$bb,$03                           // ......###.###.##......##
        .byte $f4,$04,$30                           // ####.#.......#....##....
        .byte $04,$70,$04                           // .....#...###.........#..
        .byte $b4,$04,$fb                           // #.##.#.......#..#####.##
        .byte $05,$47,$05                           // .....#.#.#...###.....#.#
        .byte $98,$05,$ed                           // #..##........#.####.##.#
        .byte $06,$47,$06                           // .....##..#...###.....##.
        .byte $a7,$07,$0c                           // #.#..###.....###....##..
        .byte $07                                   // sprite 0 padding

spr_1600:
        // === Sprite data (64 bytes, $1600-$163f) ===
        .byte $77,$07,$e9                           // .###.###.....######.#..#
        .byte $08,$61,$08                           // ....#....##....#....#...
        .byte $e1,$09,$68                           // ###....#....#..#.##.#...
        .byte $09,$f7,$0a                           // ....#..#####.###....#.#.
        .byte $8f,$0b,$30                           // #...####....#.##..##....
        .byte $0b,$da,$0c                           // ....#.####.##.#.....##..
        .byte $8f,$0d,$4e                           // #...####....##.#.#..###.
        .byte $0e,$18,$0e                           // ....###....##.......###.
        .byte $ef,$0f,$d2                           // ###.####....######.#..#.
        .byte $10,$c3,$11                           // ...#....##....##...#...#
        .byte $c3,$12,$d1                           // ##....##...#..#.##.#...#
        .byte $13,$ef,$15                           // ...#..#####.####...#.#.#
        .byte $1f,$16,$60                           // ...#####...#.##..##.....
        .byte $17,$b5,$19                           // ...#.####.##.#.#...##..#
        .byte $1e,$1a,$9c                           // ...####....##.#.#..###..
        .byte $1c,$31,$1d                           // ...###....##...#...###.#
        .byte $df,$1f,$a5                           // ##.#####...######.#..#.#
        .byte $21,$86,$23                           // ..#....##....##...#...##
        .byte $86,$25,$a2                           // #....##...#..#.##.#...#.
        .byte $27,$df

txt_163b:
        .byte $2a
        .byte $3e,$2c,$c1                           // ..#####...#.##..##.....#
        .byte $2f                                   // sprite 0 padding

spr_1640:
        // === Sprite data (61 bytes, $1640-$167c) ===
        .byte $6b,$32,$3c                           // .##.#.##..##..#...####..
        .byte $35,$39,$38                           // ..##.#.#..###..#..###...
        .byte $63,$3b,$be                           // .##...##..###.###.#####.
        .byte $3f,$4b,$43                           // ..######.#..#.##.#....##
        .byte $0f,$47,$0c                           // ....####.#...###....##..

txt_164f:
        .byte $4b,$45,$4f                           // .#..#.##.#...#.#.#..####
        .byte $bf,$54,$7d                           // #.######.#.#.#...#####.#
        .byte $59,$83,$5e                           // .#.##..##.....##.#.####.
        .byte $d6,$64,$79                           // ##.#.##..##..#...####..#
        .byte $6a,$73,$70                           // .##.#.#..###..##.###....
        .byte $c7,$77,$7c                           // ##...###.###.###.#####..
        .byte $7e,$97,$86                           // .######.#..#.####....##.
        .byte $1e,$8e,$18                           // ...####.#...###....##...
        .byte $96,$8b,$9f                           // #..#.##.#...#.###..#####
        .byte $7e,$a8,$fa                           // .######.#.#.#...#####.#.
        .byte $b3,$06,$bd                           // #.##..##.....##.#.####.#
        .byte $ac,$c8,$f3                           // #.#.##..##..#...####..##
        .byte $d4,$e6,$e1                           // ##.#.#..###..##.###....#
        .byte $8f,$ee,$f8                           // #...#######.###.#####...
        .byte $fd,$2e,$00                           // ######.#..#.###.........
        .byte $00

// --- Region $16c0-$17ca ---
.pc = $16c0 "spr_16c0"

spr_16c0:
        // === Sprite data (64 bytes, $16c0-$16ff) ===
        .byte $9d,$3b,$17                           // #..###.#..###.##...#.###
        .byte $9d,$38,$17                           // #..###.#..###......#.###
        .byte $9d,$32,$17                           // #..###.#..##..#....#.###
        .byte $9d,$3e,$17                           // #..###.#..#####....#.###
        .byte $a9,$08,$99                           // #.#.#..#....#...#..##..#
        .byte $04,$d4,$60                           // .....#..##.#.#...##.....
        .byte $78,$a9,$f7                           // .####...#.#.#..#####.###
        .byte $8d,$14,$03                           // #...##.#...#.#........##
        .byte $a9,$16,$8d                           // #.#.#..#...#.##.#...##.#
        .byte $15,$03,$a9                           // ...#.#.#......###.#.#..#
        .byte $01,$8d,$1a                           // .......##...##.#...##.#.
        .byte $d0,$8d,$19                           // ##.#....#...##.#...##..#
        .byte $d0,$a9,$7f                           // ##.#....#.#.#..#.#######
        .byte $8d,$0d,$dc                           // #...##.#....##.###.###..
        .byte $2d,$11,$d0                           // ..#.##.#...#...###.#....
        .byte $8d,$11,$d0                           // #...##.#...#...###.#....
        .byte $a9,$52,$8d                           // #.#.#..#.#.#..#.#...##.#
        .byte $12,$d0,$58                           // ...#..#.##.#.....#.##...
        .byte $60,$ee,$20                           // .##.....###.###...#.....
        .byte $d0,$ee,$21                           // ##.#....###.###...#....#
        .byte $d0,$ad,$19                           // ##.#....#.#.##.#...##..#
        .byte $d0                                   // sprite 0 padding
        .byte $8d,$19,$d0,$20,$15,$10,$a9,$00,$8d,$20,$d0,$8d,$21,$d0,$ad,$12 // ... ..... ..!...
        .byte $d0,$c5,$02,$90,$02,$85,$02,$4c,$31,$ea,$02,$02,$02,$00,$00,$00 // .......L1.......
        .byte $00,$00,$00,$47,$47,$47,$00,$07,$0e,$00,$20,$22,$18,$18,$18,$ff // ...GGG.... "....
        .byte $ff,$ff,$13,$00,$28,$00,$00,$00,$2a,$00,$00,$1f,$0b,$15,$fe,$fe // ....(...*.......
        .byte $fe,$00,$00,$00,$00,$00,$00,$00,$00,$19,$00,$00,$00,$10,$00,$00 // ................
        .byte $00,$00,$48,$00,$2e,$00,$00,$05,$00,$00,$00,$00,$00,$00,$00,$00 // ..H.............
        .byte $00,$00,$22,$6b,$0a,$04,$00,$00,$24,$00,$00,$28,$00,$00,$48,$40 // .."k....$..(..H@
        .byte $40,$00,$00,$00,$ff,$01,$01,$00,$00,$00,$29,$30,$1f,$05,$00,$00 // @.........)0....
        .byte $40,$00,$10,$40,$00,$00,$00,$00,$30,$d7,$47,$0b,$05,$06,$40,$02 // @..@....0.G...@.
        .byte $40,$1f,$48,$48,$00,$b8,$80,$74,$0e,$08,$02,$ff,$ff,$ff,$b0,$00 // @.HH...t........
        .byte $01,$02,$04,$11,$21,$41,$81,$13,$15,$00,$20,$22,$10,$10,$10,$20 // ....!A.... "... 
        .byte $20,$20,$18,$18,$18                   //   ...

txt_17b5:
        .text "ABCABC"
        .byte $02,$02,$02,$01,$01,$01,$01,$01,$01,$00,$01,$00,$00,$00,$01 // ...............

dat_17ca:
        // === Fill data (1 bytes, $17ca-$17ca) ===
        .byte $00                                   // .

// --- Region $1800-$1816 ---
.pc = $1800 "scr_1800"

scr_1800:
        // === Screen RAM (23 bytes, $1800-$1816) ===
        .encoding "screencode_mixed"
        .byte $ef                                   // scrcode: .
        .text "aaeeaaeeaaeeaaeehijaae"
        .encoding "petscii_upper"

// --- Region $1825-$1cdf ---
.pc = $1825 "Segment $1825"
        .encoding "screencode_mixed"
        .text "cddddccccddddffggffggffggffggffggffggffg"
        .text "gffgg"
        .byte $ff                                   // scrcode: .
        .text "zzzzzzzzzzz"
        .byte $1b,$1e                               // scrcode: ..
        .text "2"
        .byte $43,$55,$67,$7b,$9b,$bb,$cb,$d5,$41,$41 // scrcode: ..........
        .text "@"
        .byte $81                                   // scrcode: .
        .text "ar@@@@@h"
        .text "@ii3@@@by@@"
        .byte $f0                                   // scrcode: .
        .text " @@@@h"
        .byte $f8,$88                               // scrcode: ..
        .text "@@@"
        .byte $1c                                   // scrcode: .
        .text "y@@"
        .byte $f0                                   // scrcode: .
        .text " @@@@h"
        .byte $f8,$88,$41,$41                       // scrcode: ....
        .text "@"
        .byte $81                                   // scrcode: .
        .text "ar@p@@@h@ii!"
        .byte $41,$41                               // scrcode: ..
        .text "@"
        .byte $81                                   // scrcode: .
        .text "a"
        .byte $22                                   // scrcode: "
        .text "@"
        .byte $f0                                   // scrcode: .
        .text "@@@h@ii!"
        .byte $41,$41                               // scrcode: ..
        .text "@"
        .byte $41,$41                               // scrcode: ..
        .text "r"
        .byte $95,$ff,$1f                           // scrcode: ...
        .text "@"
        .byte $81,$f1                               // scrcode: ..
        .text "am"
        .byte $dd,$cc                               // scrcode: ..
        .text "@@@l@@@e@l"
        .byte $ff                                   // scrcode: .
        .text "@@@@@6e@"
        .byte $e9,$89                               // scrcode: ..
        .text "@6e@"
        .byte $e9,$8f                               // scrcode: ..
        .text "@6e@"
        .byte $e9,$95                               // scrcode: ..
        .text "@6e"
        .text "@"
        .byte $e9,$9b                               // scrcode: ..
        .text "@6e@"
        .byte $e9,$a1                               // scrcode: ..
        .text "@6"
        .byte $ac,$b0,$70,$af,$ba,$63,$ae           // scrcode: .......
        .text "@"
        .byte $83,$80,$41                           // scrcode: ...
        .text "@@"
        .byte $41,$42                               // scrcode: ..
        .text "e"
        .byte $41                                   // scrcode: .
        .text "4@"
        .byte $81,$a0,$40                           // scrcode: ...
        .text "@@"
        .byte $40,$42                               // scrcode: ..
        .text "e"
        .byte $40                                   // scrcode: .
        .text "4"
        .text "@"
        .byte $80,$a0,$48                           // scrcode: ...
        .text "@@"
        .byte $85,$41                               // scrcode: ..
        .text "4b"
        .byte $41                                   // scrcode: .
        .text "4b"
        .byte $81,$40,$41                           // scrcode: ...
        .text "4"
        .byte $fe,$41                               // scrcode: ..
        .text "4"
        .byte $fe,$81,$40,$40                       // scrcode: ....
        .text "4b"
        .byte $40                                   // scrcode: .
        .text "4b"
        .byte $80,$40,$40                           // scrcode: ...
        .text "4"
        .byte $fe,$40                               // scrcode: ..
        .text "4"
        .byte $fe,$80,$40,$48                       // scrcode: ....
        .text "@@"
        .byte $85                                   // scrcode: .
        .text "6e@"
        .byte $e9,$89                               // scrcode: ..
        .text "@6e@"
        .byte $e9,$8f                               // scrcode: ..
        .text "@6e@"
        .byte $e9,$95                               // scrcode: ..
        .text "@6e@"
        .byte $e9,$9b                               // scrcode: ..
        .text "@6e@"
        .byte $e9,$a1                               // scrcode: ..
        .text "@6"
        .byte $ac,$b0,$70,$af,$ba,$63               // scrcode: ......
        .byte $ae                                   // scrcode: .
        .text "@"
        .byte $83,$80                               // scrcode: ..
        .text "@n"
        .byte $bc,$81,$7d,$ea                       // scrcode: ....
        .text "@"
        .byte $ff                                   // scrcode: .
        .text "@"
        .byte $7d                                   // scrcode: .
        .text "n"
        .byte $bc,$81,$85,$bd                       // scrcode: ....
        .text "l"
        .byte $bd,$ba                               // scrcode: ..
        .text "n"
        .byte $bc,$81                               // scrcode: ..
        .text "n"
        .byte $22                                   // scrcode: "
        .text "n"
        .byte $bc,$b8,$b7,$b0,$b7,$bc               // scrcode: ......
        .text "c"
        .byte $b8                                   // scrcode: .
        .text "u"
        .byte $b8,$8b,$61                           // scrcode: ...
        .byte $e2,$af,$b3,$ad                       // scrcode: ....
        .text "@"
        .byte $8c,$ad,$a0,$b7                       // scrcode: ....
        .text "&"
        .byte $b8,$e9,$a7,$8d,$c2                   // scrcode: .....
        .text "k"
        .byte $be                                   // scrcode: .
        .text "l"
        .byte $e9,$a7,$8d,$d0                       // scrcode: ....
        .text "g"
        .byte $71                                   // scrcode: .
        .text "l"
        .byte $e9,$a7,$81                           // scrcode: ...
        .text "0r"
        .byte $85,$80                               // scrcode: ..
        .text "6e@"
        .byte $e9,$89                               // scrcode: ..
        .text "@6e"
        .text "@"
        .byte $e9,$8f                               // scrcode: ..
        .text "@6e@"
        .byte $e9,$95                               // scrcode: ..
        .text "@6e@"
        .byte $e9,$9b                               // scrcode: ..
        .text "@6e@"
        .byte $e9,$a1                               // scrcode: ..
        .text "@6"
        .byte $ac,$b0,$70,$af,$ba,$63,$ae           // scrcode: .......
        .text "@"
        .byte $83,$80                               // scrcode: ..
        .text "@n"
        .byte $bc,$7d,$ea,$7d,$ea                   // scrcode: .....
        .text "@"
        .byte $88                                   // scrcode: .
        .text "@n"
        .byte $bc,$81,$85,$bd                       // scrcode: ....
        .text "l"
        .byte $bd,$ba                               // scrcode: ..
        .text "n"
        .byte $bc                                   // scrcode: .
        .text "@n"
        .byte $bc                                   // scrcode: .
        .text "n"
        .byte $bc,$81,$b7,$b0,$b7,$bc               // scrcode: ......
        .text "c"
        .byte $b8                                   // scrcode: .
        .text "u"
        .byte $b8,$f8,$61,$e2,$af                   // scrcode: .....
        .text "@"
        .byte $ad                                   // scrcode: .
        .text "@"
        .byte $8c,$ad,$a0,$b7                       // scrcode: ....
        .text "&"
        .byte $b8                                   // scrcode: .
        .byte $e9,$a7,$8d,$c2                       // scrcode: ....
        .text "k"
        .byte $be                                   // scrcode: .
        .text "l"
        .byte $e9,$a7,$8d,$d0                       // scrcode: ....
        .text "g"
        .byte $71                                   // scrcode: .
        .text "l"
        .byte $e9,$a7,$81                           // scrcode: ...
        .text "0r"
        .byte $85,$80                               // scrcode: ..
        .text "@"
        .byte $e0                                   // scrcode: .
        .text "@"
        .byte $ff,$84                               // scrcode: ..
        .text "@7d5d7b5d7b7d5"
        .text "d7d:"
        .byte $ff,$88                               // scrcode: ..
        .text "a0"
        .byte $88                                   // scrcode: .
        .text "b0"
        .byte $82                                   // scrcode: .
        .text "a0d0b0"
        .byte $88                                   // scrcode: .
        .text "b0"
        .byte $ff,$82                               // scrcode: ..
        .text "c7b7b"
        .byte $43                                   // scrcode: .
        .text "b7b7b7b"
        .byte $43                                   // scrcode: .
        .text "b7"
        .byte $ff                                   // scrcode: .
        .byte $82                                   // scrcode: .
        .text "c5b5b"
        .byte $41                                   // scrcode: .
        .text "b5b5b5b"
        .byte $41                                   // scrcode: .
        .text "b5"
        .byte $ff,$84                               // scrcode: ..
        .text "@7d:d7b5d7b7d:d7d5"
        .byte $ff,$82                               // scrcode: ..
        .text "d"
        .byte $1f                                   // scrcode: .
        .text "b"
        .byte $1f                                   // scrcode: .
        .text "b"
        .byte $1f                                   // scrcode: .
        .text "b+b"
        .byte $1f                                   // scrcode: .
        .text "b+b+b"
        .byte $1f                                   // scrcode: .
        .text "d"
        .byte $1f                                   // scrcode: .
        .text "b"
        .byte $1f                                   // scrcode: .
        .text "b+b"
        .byte $1f                                   // scrcode: .
        .text "b+b+b"
        .byte $1f,$ff,$82                           // scrcode: ...
        .text "d"
        .byte $1d                                   // scrcode: .
        .text "b"
        .byte $1d                                   // scrcode: .
        .text "b"
        .byte $1d                                   // scrcode: .
        .text "b)b"
        .byte $1d                                   // scrcode: .
        .text "b)b)b"
        .byte $1d                                   // scrcode: .
        .text "d"
        .byte $1d                                   // scrcode: .
        .text "b"
        .byte $1d                                   // scrcode: .
        .text "b)b"
        .byte $1d                                   // scrcode: .
        .text "b)b)b"
        .byte $1d,$ff,$98                           // scrcode: ...
        .text "e+h)h.h,d+d)h+"
        .byte $ff,$98                               // scrcode: ..
        .text "e"
        .text "+h)p.p)"
        .byte $ff,$98                               // scrcode: ..
        .text "e.h.h+p0h+x.h.h+h+p)@@@@@@@@@@@"
        .fill 11, $00                               // scrcode: @@@@@@@@@@@
        .encoding "petscii_upper"

dat_1b00:
        .text "                                                                                        XABC DEFG HIJK LMNO XABC                "
        .encoding "screencode_mixed"
        .byte $60,$61,$62,$63                       // scrcode: ....
        .text " "
        .byte $64,$65,$66,$67                       // scrcode: ....
        .text " "
        .byte $68,$69,$6a,$6b                       // scrcode: ....
        .text " "
        .byte $6c,$6d,$6e,$6f                       // scrcode: ....
        .text " "
        .byte $60,$61,$62,$63                       // scrcode: ....
        .encoding "petscii_upper"

txt_1b98:
        .text "                "
        .encoding "screencode_mixed"
        .byte $80,$81,$82,$83                       // scrcode: ....
        .text " "
        .byte $84,$85,$86,$87                       // scrcode: ....
        .text " "
        .byte $88,$89,$8a,$8b                       // scrcode: ....
        .text " "
        .byte $8c,$8d,$8e,$8f                       // scrcode: ....
        .text " "
        .byte $80,$81,$82,$83                       // scrcode: ....
        .encoding "petscii_upper"

dat_1bc0:
        .text "                                                   PQRS TUVW XYZ"
        .byte $5b                                   // char 123 (partial)

txt_1c01:
        .byte $20,$58,$41                           // char 123 (partial)
        .byte $42,$43,$20,$50,$51,$52,$53,$20       // char 124 '|'
        .byte $5c,$5d,$5e,$5f,$20,$5c,$5d,$5e       // char 125 '}'
        .byte $5f                                   // char 126 (partial)

txt_1c15:
        .byte $20,$20,$20,$20,$20,$20,$70           // char 126 (partial)
        .byte $71,$72,$73,$20,$74,$75,$76,$77       // char 127
        .byte $20,$78,$79,$7a,$7b,$20,$60,$61       // char 128
        .byte $62,$63,$20,$70,$71,$72,$73,$20       // char 129
        .byte $7c,$7d,$7e,$7f,$20,$7c,$7d,$7e       // char 130
        .byte $7f                                   // char 131 (partial)

txt_1c3d:
        .byte $20,$20,$20,$20,$20,$20,$90           // char 131 (partial)
        .byte $91,$92,$93,$20,$94,$95,$96,$97       // char 132
        .byte $20,$98,$99,$9a,$9b,$20,$80,$81       // char 133
        .byte $82,$83,$20,$90,$91,$92,$93,$20       // char 134
        .byte $9c,$9d,$9e,$9f,$20,$9c,$9d,$9e       // char 135
        .byte $9f                                   // char 136 (partial)

dat_1c65:
        .text "                                                                                                                           "

// --- Region $1cfa-$1cff ---
.pc = $1cfa "dat_1cfa"

dat_1cfa:
        .byte $20,$03                               // char 154 (partial)
        .byte $1d,$20,$03,$1d                       // char 155 (partial)

// --- Region $1e36-$1e3f ---
.pc = $1e36 "chr_1e36"

chr_1e36:
        // === Charset data (10 bytes, $1e36-$1e3f) ===
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 0 @+0
        .byte $00,$00                               // char 1 (partial)

// --- Region $1e56-$1e9f ---
.pc = $1e56 "chr_1e56"

chr_1e56:
        // === Charset data (74 bytes, $1e56-$1e9f) ===
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 0 @+0
        .byte $00,$00,$ee,$a8,$01,$ad,$a8,$01       // char 1 @+1
        .byte $c9,$f0,$f0,$16,$a9,$16,$8d,$16       // char 2 @+2
        .byte $d0,$60,$00,$00,$00,$00,$00,$00       // char 3 @+3
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 4 @+4
        .byte $00,$00,$a9,$20,$8d,$b7,$26,$a9       // char 5 @+5
        .byte $fd,$8d,$b8,$26,$a9,$1c,$8d,$b9       // char 6 @+6
        .byte $26,$e6,$60,$d0,$02,$e6,$61,$60       // char 7 @+7
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 8 @+8
        .byte $00,$00                               // char 9 (partial)

// --- Region $1f1d-$1f1d ---
.pc = $1f1d "dat_1f1d"

dat_1f1d:
        // === Fill data (1 bytes, $1f1d-$1f1d) ===
        .byte $00                                   // .

// --- Region $1f94-$1fd6 ---
.pc = $1f94 "dat_1f94"

dat_1f94:
        .byte $0b                                   // char 14 (partial)
        .byte $00,$0b,$0b,$0c,$0b,$0c,$0c,$0f       // char 15 @+15
        .byte $0c,$0f,$0f,$01,$0f,$01,$01,$00       // char 16 @+16
        .byte $00,$0b,$00,$0b,$0b,$02,$0b,$02       // char 17 @+17
        .byte $02,$0a,$02,$0a,$0a,$07,$0a,$07       // char 18 @+18
        .byte $07,$0a,$07,$0a,$0a,$02,$0a,$02       // char 19 @+19
        .byte $02,$0b,$02,$0b,$0b,$00,$0b,$00       // char 20 @+20
        .byte $00,$01,$01,$0f,$01,$0f,$0f,$0c       // char 21 @+21
        .byte $0f,$0c,$0c,$0b,$0c,$0b,$0b,$00       // char 22 @+22
        .byte $0b                                   // char 23 (partial)

dat_1fd6:
        // === Fill data (1 bytes, $1fd6-$1fd6) ===
        .byte $00                                   // .

// --- Region $2000-$2060 ---
.pc = $2000 "chr_2000"

chr_2000:
        // === Charset data (97 bytes, $2000-$2060) ===
        .byte $02,$03,$04,$05,$06,$07,$08,$09       // char 0 @+0
        .byte $0a,$0c,$0e,$10,$12,$14,$16,$18       // char 1 @+1
        .byte $1b,$1e                               // char 2 (partial)

txt_2012:
        .byte $21,$24,$27,$2a,$2d,$30               // char 2 (partial)
        .byte $33,$36,$39,$3c,$3f,$42,$45,$48       // char 3 @+3
        .byte $4a,$4c,$4e,$50,$52,$54,$56,$58       // char 4 @+4
        .byte $59,$5a,$5b,$5c,$5d,$5e,$5f,$60       // char 5 @+5
        .byte $60,$5f,$5e,$5d,$5c,$5b               // char 6 (partial)

txt_2036:
        .byte $5a,$59                               // char 6 (partial)
        .byte $58,$56,$54,$52,$50,$4e,$4c,$4a       // char 7 @+7
        .byte $48,$45,$42,$3f,$3c,$39,$36,$33       // char 8 @+8
        .byte $30,$2d,$2a,$27,$24,$21,$1e,$1b       // char 9 @+9
        .byte $18,$16,$14,$12,$10,$0e,$0c,$0a       // char 10 @+10
        .byte $09,$08,$07,$06,$05,$04,$03,$02       // char 11 @+11

dat_2060:
        // === Fill data (1 bytes, $2060-$2060) ===
        .byte $00                                   // .

// --- Region $2200-$25c0 ---
.pc = $2200 "dat_2200"

dat_2200:
        .byte $55,$6a,$6a,$6a,$6a,$6a,$6a           // char 64 (partial)

txt_2207:
        .byte $55                                   // char 64 (partial)
        .byte $55,$aa,$aa,$aa,$aa,$aa,$aa           // char 65 (partial)

txt_220f:
        .byte $55                                   // char 65 (partial)
        .byte $55,$aa,$aa,$aa,$aa,$aa,$aa,$5a       // char 66 'B'
        .byte $50,$94,$a5,$a9,$a9,$a9,$a9,$a9       // char 67 'C'
        .byte $00,$00,$00,$00,$00,$00,$01,$01       // char 68 'D'
        .byte $15,$1a,$1a,$6a,$6a,$6a,$aa,$aa       // char 69 'E'
        .byte $55,$aa,$aa,$aa,$aa,$aa,$aa,$aa       // char 70 'F'
        .byte $55,$a9,$a9,$a9,$a9,$a9,$a9,$a9       // char 71 'G'
        .byte $55,$6a,$6a,$6a,$6a,$6a,$55,$00       // char 72 'H'
        .byte $55,$aa,$aa,$aa,$aa,$aa,$55,$00       // char 73 'I'
        .byte $55,$aa,$aa,$aa,$aa,$aa,$55,$1a       // char 74 'J'
        .byte $55,$a9,$a9,$a9,$a9,$a9,$55,$a9       // char 75 'K'
        .byte $55,$6a,$6a,$6a,$6a,$6a,$55,$6a       // char 76 'L'
        .byte $55,$aa,$aa,$aa,$aa,$aa,$55,$a4       // char 77 'M'
        .byte $55,$aa,$aa,$aa,$aa,$aa,$5a,$1a       // char 78 'N'
        .byte $55,$a9,$a9,$a9,$a9,$a9,$a9,$a9       // char 79 'O'
        .byte $55,$6a,$6a,$6a,$6a,$6a,$6a,$6a       // char 80 'P'
        .byte $55,$aa,$aa,$aa,$aa,$aa,$aa,$a5       // char 81 'Q'
        .byte $55,$aa,$aa,$aa,$aa,$aa,$aa           // char 82 (partial)

txt_2297:
        .byte $55                                   // char 82 (partial)
        .byte $55,$a9,$a9,$a9,$a9,$a9,$a9,$55       // char 83 'S'
        .byte $55,$6a,$6a,$6a,$6a,$6a,$6a,$1a       // char 84 'T'
        .byte $54,$a4,$a4,$a4,$a4,$a4,$a4,$a5       // char 85 'U'
        .byte $15,$1a,$1a,$1a,$1a,$1a,$1a           // char 86 (partial)

txt_22b7:
        .byte $5a                                   // char 86 (partial)
        .byte $55,$a9,$a9,$a9,$a9,$a9,$a9,$a4       // char 87 'W'
        .byte $55,$6a,$6a,$6a,$6a,$6a,$6a           // char 88 (partial)

txt_22c7:
        .byte $55                                   // char 88 (partial)
        .byte $55,$aa,$aa,$aa,$aa,$aa,$aa           // char 89 (partial)

txt_22cf:
        .byte $55                                   // char 89 (partial)
        .byte $55,$aa,$aa,$aa,$aa,$aa,$aa,$5a       // char 90 'Z'
        .byte $50,$94,$a5,$a9,$a9,$a9,$a9,$a9       // char 91 '['
        .byte $55,$6a,$6a,$6a,$6a,$6a,$6a           // char 92 (partial)

txt_22e7:
        .byte $55                                   // char 92 (partial)
        .byte $55,$aa,$aa,$aa,$aa,$aa,$aa           // char 93 (partial)

txt_22ef:
        .byte $55                                   // char 93 (partial)
        .byte $55,$aa,$aa,$aa,$aa,$aa,$aa           // char 94 (partial)

txt_22f7:
        .byte $55                                   // char 94 (partial)
        .byte $55,$a9,$a9,$a9,$a9,$a9,$a9,$55       // char 95 '_'
        .byte $6a,$6a,$6a,$6a,$6a,$6a,$6a,$6a       // char 96 '`'
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa       // char 97 'a'
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa       // char 98 'b'
        .byte $a9,$a9,$a9,$a9,$a9,$a9,$a4,$a4       // char 99 'c'
        .byte $01,$06,$06,$06,$1a,$1a,$1a,$6a       // char 100 'd'
        .byte $aa,$aa,$aa,$aa,$a9,$a9,$a9,$a4       // char 101 'e'
        .byte $5a,$5a,$5a,$5a,$1a,$1a,$1a,$1a       // char 102 'f'
        .byte $a9,$a9,$a9,$a9,$a9,$a9,$a9,$a9       // char 103 'g'
        .byte $00,$00,$00,$00,$00,$01,$06,$1a       // char 104 'h'
        .byte $00,$01,$06,$1a,$6a,$aa,$aa,$aa       // char 105 'i'
        .byte $6a,$aa,$aa,$aa,$a9,$a4,$90,$40       // char 106 'j'
        .byte $a9,$a4,$90,$40,$00,$00,$00,$00       // char 107 'k'
        .byte $6a,$6a,$6a,$6a,$6a,$6a,$6a,$6a       // char 108 'l'
        .byte $a4,$a4,$a4,$a4,$a4,$a4,$a4,$a4       // char 109 'm'
        .byte $1a,$1a,$1a,$1a,$1a,$1a,$1a,$1a       // char 110 'n'
        .byte $a9,$a9,$a9,$a9,$a9,$a9,$a9,$a9       // char 111 'o'
        .byte $6a,$6a,$6a,$6a,$6a,$6a,$6a,$6a       // char 112 'p'
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa       // char 113 'q'
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa       // char 114 'r'

txt_2398:
        .byte $40,$40,$40,$40,$40,$40,$40,$40       // char 115 's'
        .byte $1a,$1a,$06,$06,$06,$06,$1a,$1a       // char 116 't'
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa       // char 117 'u'
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa       // char 118 'v'
        .byte $a4,$94,$90,$90,$90,$90,$a4,$a4       // char 119 'w'
        .byte $6a,$6a,$6a,$6a,$6a,$6a,$6a,$6a       // char 120 'x'
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa       // char 121 'y'
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa       // char 122 'z'
        .byte $a9,$a9,$a9,$a9,$a9,$a9,$a4,$a4       // char 123 '{'
        .byte $6a,$6a,$6a,$6a,$6a,$6a,$6a,$55       // char 124 '|'
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$55       // char 125 '}'
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$56       // char 126 '~'
        .byte $a9,$a9,$a9,$a9,$a9,$a9,$a9,$a9       // char 127
        .byte $6a,$6a,$6a,$6a,$6a,$6a,$6a,$55       // char 128
        .byte $a9,$a9,$a9,$a9,$a9,$a9,$a9,$55       // char 129
        .byte $55,$6a,$6a,$6a,$1a,$1a,$1a,$15       // char 130
        .byte $54,$a4,$a9,$a9,$a9,$a9,$a9,$55       // char 131
        .byte $6a,$6a,$6a,$6a,$6a,$6a,$6a,$55       // char 132
        .byte $a4,$a5,$aa,$aa,$aa,$aa,$aa,$55       // char 133
        .byte $1a                                   // char 134 (partial)

txt_2431:
        .byte $5a,$5a,$5a,$5a,$5a,$5a,$55           // char 134 (partial)
        .byte $a9,$a9,$a9,$a9,$a9,$a9,$a9,$55       // char 135
        .byte $6a,$6a,$6a,$6a,$6a,$6a,$6a,$55       // char 136
        .byte $a9,$a5,$aa,$aa,$aa,$aa,$aa,$55       // char 137
        .byte $00,$55,$aa,$aa,$aa,$aa,$aa,$55       // char 138
        .byte $00,$55,$a9,$a9,$a9,$a9,$a9,$55       // char 139
        .byte $6a,$6a,$6a,$6a,$6a,$6a,$6a,$55       // char 140
        .byte $a4,$a5,$aa,$aa,$aa,$aa,$aa,$55       // char 141
        .byte $1a,$5a,$aa,$aa,$aa,$aa,$aa,$55       // char 142
        .byte $a9,$a9,$a9,$a9,$a9,$a9,$a9,$55       // char 143
        .byte $6a,$6a,$6a,$6a,$6a,$6a,$6a,$55       // char 144
        .byte $a5,$aa,$aa,$aa,$aa,$aa,$aa           // char 145 (partial)

txt_248f:
        .byte $55                                   // char 145 (partial)
        .byte $55,$aa,$aa,$aa,$aa,$aa,$aa           // char 146 (partial)

txt_2497:
        .byte $55                                   // char 146 (partial)
        .byte $55,$a9,$a9,$a9,$a9,$a9,$a9,$55       // char 147
        .byte $1a,$6a,$6a,$6a,$6a,$6a,$6a,$55       // char 148
        .byte $a5,$a4,$a4,$a4,$a4,$a4,$a4,$54       // char 149
        .byte $5a,$1a,$1a,$1a,$1a,$1a,$1a,$15       // char 150
        .byte $a4,$a9,$a9,$a9,$a9,$a9,$a9,$55       // char 151
        .byte $6a,$6a,$6a,$6a,$6a,$6a,$6a,$55       // char 152
        .byte $a9,$a9,$a9,$a9,$a9,$a9,$a9,$55       // char 153
        .byte $55,$00,$00,$00,$00,$00,$00,$00       // char 154
        .byte $54,$00,$00,$00,$00,$00,$00,$00       // char 155
        .byte $6a,$6a,$6a,$6a,$6a,$6a,$6a,$55       // char 156
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$55       // char 157
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$55       // char 158
        .byte $a9,$a9,$a9,$a9,$a9,$a9,$a9,$55       // char 159
        .byte $06,$06,$16,$1a,$1a,$5a,$6a,$55       // char 160
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa       // char 161
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa       // char 162
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$55       // char 163
        .byte $90,$90,$94,$a4,$a4,$a5,$a9,$55       // char 164
        .byte $00,$00,$00,$00,$01,$01,$01,$05       // char 165
        .byte $1a,$5a,$6a,$6a,$6a,$aa,$aa,$aa       // char 166
        .byte $a4,$a5,$a9,$a9,$a9,$aa,$aa,$aa       // char 167
        .byte $00,$00,$00,$00,$40,$40,$40,$50       // char 168
        .byte $01,$01,$01,$05,$06,$06,$16,$1a       // char 169
        .byte $6a,$aa,$aa,$aa,$aa,$aa,$aa,$aa       // char 170
        .byte $a9,$aa,$aa,$aa,$aa,$aa,$aa,$aa       // char 171
        .byte $40,$40,$40,$50,$90,$90,$94,$a4       // char 172
        .byte $06,$06,$16,$1a,$1a,$5a,$6a,$6a       // char 173
        .byte $90,$90,$94,$a4,$a4,$a5,$a9,$a9       // char 174
        .byte $00,$00,$00,$00,$01,$01,$01,$05       // char 175
        .byte $14,$14,$69,$69,$69,$aa,$aa,$aa       // char 176
        .byte $00,$00,$00,$00                       // char 177 (partial)

txt_258c:
        .byte $40,$40,$40,$50                       // char 177 (partial)
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 178
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 179
        .byte $0b,$0c,$0f,$01,$01,$0f,$0c,$0b       // char 180
        .byte $0b,$0c,$0f,$01,$01,$0f,$0c,$0b       // char 181
        .byte $0b,$0c,$0f,$01,$01,$0f,$0c,$0b       // char 182
        .byte $0b,$0c,$0f,$01,$01,$0f,$0c,$0b       // char 183

dat_25c0:
        // === Fill data (1 bytes, $25c0-$25c0) ===
        .byte $00                                   // .

// --- Region $26f1-$26f1 ---
.pc = $26f1 "dat_26f1"

dat_26f1:
        // === Fill data (1 bytes, $26f1-$26f1) ===
        .byte $00                                   // .

// --- Region $2714-$2756 ---
.pc = $2714 "dat_2714"

dat_2714:
        .byte $0b,$00,$0b,$0b,$0c                   // char 4 (partial)
        .byte $0b,$0c,$0c,$0f,$0c,$0f,$0f,$01       // char 5 @+5
        .byte $0f,$01,$01,$00,$0c,$0f,$01,$01       // char 6 @+6
        .byte $0f,$0c,$0b,$02,$02,$0a,$02,$0a       // char 7 @+7
        .byte $0a,$07,$0a,$0c,$0f,$01,$01,$0f       // char 8 @+8
        .byte $0c,$0b,$0a,$02,$02,$0b,$02,$0b       // char 9 @+9
        .byte $0b,$00,$0c,$0f,$01,$01,$0f,$0c       // char 10 @+10
        .byte $0b,$0f,$0f,$0c,$0f,$0c,$0c,$0f       // char 11 @+11
        .byte $01,$01,$0f,$0c,$0b                   // char 12 (partial)

dat_2756:
        // === Fill data (1 bytes, $2756-$2756) ===
        .byte $00                                   // .

// --- Region $2780-$27e7 ---
.pc = $2780 "dat_2780"

dat_2780:
        .byte $02                                   // char 17 (partial)
        .byte $03,$04,$05,$06,$07,$08,$09,$0a       // char 18 @+18
        .byte $0c,$0e,$10,$12,$14,$16,$18,$1b       // char 19 @+19
        .byte $1e                                   // char 20 (partial)

txt_2792:
        .byte $21,$24,$27,$2a,$2d,$30,$33           // char 20 (partial)
        .byte $36,$39,$3c,$3f,$42,$45,$48,$4a       // char 21 @+21
        .byte $4c,$4e,$50,$52,$54,$56,$58,$0b       // char 22 @+22
        .byte $0f,$0c,$0b,$0f,$0c,$0b,$0f,$0c       // char 23 @+23
        .byte $0b,$0f,$0c,$0b,$0f,$0c,$0b,$0f       // char 24 @+24
        .byte $0c,$0b,$0f,$0c,$0b,$0f,$0c,$0b       // char 25 @+25
        .byte $0f,$0c,$0b,$0f,$0c,$0b,$0f,$0c       // char 26 @+26
        .byte $0b,$0f,$0c,$0b,$0f,$0c,$0b,$0c       // char 27 @+27
        .byte $0b,$0c,$0b,$0c,$0b,$0c,$0b,$0c       // char 28 @+28
        .byte $0b,$0c,$0b,$0c,$0b,$0c,$0b,$0b       // char 29 @+29
        .byte $0b,$0b,$0b,$0b,$0b,$0b,$0b           // char 30 (partial)

// --- Region $2800-$2887 ---
.pc = $2800 "chr_2800"

chr_2800:
        // === Charset data (136 bytes, $2800-$2887) ===
        .byte $00,$00,$00,$00,$00,$00,$00,$04       // char 0 @+0
        .byte $0c,$05,$0c,$05,$05,$05,$05,$03       // char 1 @+1
        .byte $00,$00,$00,$00,$00,$00,$00,$05       // char 2 @+2
        .byte $0c,$05,$0c,$0c,$04,$0c,$04,$04       // char 3 @+3
        .byte $02,$04,$02,$02,$09,$02,$09,$00       // char 4 @+4
        .byte $00,$00,$09,$02,$09,$02,$02,$04       // char 5 @+5
        .byte $04,$02,$04,$04,$04,$0c,$04,$0c       // char 6 @+6
        .byte $05,$05,$05,$05,$03,$03,$05,$03       // char 7 @+7
        .byte $03,$07,$07,$07,$01,$01,$07,$01       // char 8 @+8
        .byte $07,$07,$07,$03,$03,$03,$05,$05       // char 9 @+9
        .byte $04,$04,$04,$02,$04,$0f,$0f,$0f       // char 10 @+10
        .byte $0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f       // char 11 @+11
        .byte $0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f       // char 12 @+12
        .byte $0f,$0f,$0f,$0f,$0f,$0f,$0f,$0f       // char 13 @+13
        .byte $01,$03,$0e,$06,$00,$02,$08,$0a       // char 14 @+14
        .byte $01,$0a,$08,$02,$00,$02,$02,$08       // char 15 @+15
        .byte $08,$0a,$0a,$01,$01,$01,$00,$00       // char 16 @+16

// --- Region $2891-$28c8 ---
.pc = $2891 "chr_2891"

chr_2891:
        // === Charset data (56 bytes, $2891-$28c8) ===
        .byte $00,$00,$00,$00,$00,$00,$00,$0c       // char 0 @+0
        .byte $0c,$0c,$0c,$0c,$0c,$0c,$0c,$0f       // char 1 @+1
        .byte $0f,$0f,$0f,$0f,$0f,$0f,$0f,$01       // char 2 @+2
        .byte $01,$01,$01,$01,$01,$01,$01,$0f       // char 3 @+3
        .byte $0f,$0f,$0f,$0f,$0f,$0f,$0f,$0c       // char 4 @+4
        .byte $0c,$0c,$0c,$0c,$0c,$0c,$0c,$0b       // char 5 @+5
        .byte $0b,$0b,$0b,$0b,$0b,$0b,$0b           // char 6 (partial)

dat_28c8:
        // === Fill data (1 bytes, $28c8-$28c8) ===
        .byte $00                                   // .

// --- Region $2954-$2962 ---
.pc = $2954 "Segment $2954"
        .byte $30,$9d,$00,$27,$e8,$e0,$a8           // char 0 (partial)
        .byte $d0,$f5,$ea,$ea,$ea,$4c,$00,$29       // char 1 @+1

// --- Region $29bb-$29bc ---
.pc = $29bb "chr_29bb"

chr_29bb:
        // === Charset data (2 bytes, $29bb-$29bc) ===
        .byte $60                                   // char 0 (partial)

dat_29bc:
        // === Fill data (1 bytes, $29bc-$29bc) ===
        .byte $00                                   // .

// --- Region $2a5e-$2a5e ---
.pc = $2a5e "dat_2a5e"

dat_2a5e:
        // === Fill data (1 bytes, $2a5e-$2a5e) ===
        .byte $00                                   // .

// --- Region $2a96-$2b4b ---
.pc = $2a96 "dat_2a96"

dat_2a96:
        .byte $0b,$0c,$0f,$01,$01,$0f,$0c,$0b       // char 7 @+7
        .byte $00,$0b,$00,$0c,$00,$0c,$00,$0f       // char 8 @+8
        .byte $00,$01,$00,$01,$00,$02,$0a,$07       // char 9 @+9
        .byte $07,$0a,$02,$00,$01,$00,$01,$00       // char 10 @+10
        .byte $0f,$00,$0c,$00,$0c,$00,$0b,$00       // char 11 @+11
        .byte $0b,$0c,$0f,$01,$01,$0f,$0c,$0b       // char 12 @+12
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 13 @+13
        .byte $08,$08,$07,$08,$07,$07,$01,$07       // char 14 @+14
        .byte $01,$01,$07,$01,$07,$07,$08,$07       // char 15 @+15
        .byte $08,$08,$09,$08,$09,$09,$0b,$0b       // char 16 @+16
        .byte $05,$0b,$05,$05,$0d,$05,$2b,$0d       // char 17 @+17
        .byte $01,$2b,$01,$01,$0d,$01,$2b,$0d       // char 18 @+18
        .byte $05,$2b,$05,$05,$0b,$05,$0b,$0b       // char 19 @+19
        .byte $06,$06                               // char 20 (partial)

spr_2b00:
        .byte $06,$0e,$06,$0e,$0e,$03               // char 20 (partial)
        .byte $2c,$03,$03,$01,$03,$01,$01,$01       // char 21 @+21
        .byte $03,$03,$0e,$03,$2c,$0e,$06,$06       // char 22 @+22
        .byte $0e,$06,$06,$02,$02,$0a,$02,$0a       // char 23 @+23
        .byte $0a,$07,$0a,$07,$00,$0b,$0c,$0f       // char 24 @+24
        .byte $01,$0f,$0c,$0b,$00,$00,$00,$06       // char 25 @+25
        .byte $0e,$03,$01,$03,$0e,$06,$02,$08       // char 26 @+26
        .byte $0a,$01,$0a,$08,$02,$00,$05,$03       // char 27 @+27
        .byte $0d,$01,$2b,$03,$05,$00,$0c,$0c       // char 28 @+28
        .byte $0f,$01,$0f,$0b,$0c                   // char 29 (partial)

dat_2b4b:
        // === Fill data (1 bytes, $2b4b-$2b4b) ===
        .byte $00                                   // .

// --- Region $2ba4-$2c1d ---
.pc = $2ba4 "dat_2ba4"

dat_2ba4:
        .byte $0a,$02                               // char 40 (partial)
        .byte $02,$0b,$0b,$0c,$0f,$01,$07,$07       // char 41 ')'
        .byte $0f,$0c,$0b,$09,$00,$00,$00,$00       // char 42 '*'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 43 '+'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 44 ','
        .byte $03,$0d,$01,$2b,$03,$05,$00,$0b       // char 45 '-'
        .byte $0c,$0f,$01,$0f,$0c,$0b,$00,$0b       // char 46 '.'
        .byte $0b,$0c,$0c,$0f,$0f,$01,$01,$0f       // char 47 '/'
        .byte $0f,$0c,$0c,$0b,$0b,$00,$0b,$0c       // char 48 '0'
        .byte $0f,$0f,$0f,$0c,$0b,$00,$06,$0e       // char 49 '1'
        .byte $03,$01,$03,$0e,$06,$06,$06,$06       // char 50 '2'
        .byte $0e,$0e,$03,$03,$01,$01,$03,$03       // char 51 '3'
        .byte $0e,$0e,$06,$06,$00,$06,$0e,$03       // char 52 '4'
        .byte $01,$03,$0e,$06,$00,$02,$08,$0a       // char 53 '5'
        .byte $01,$0a,$08,$02,$00,$02,$02,$08       // char 54 '6'
        .byte $08,$0a,$0a,$01,$01,$01,$00,$00       // char 55 '7'

// --- Region $2c27-$2c5e ---
.pc = $2c27 "chr_2c27"

chr_2c27:
        // === Charset data (56 bytes, $2c27-$2c5e) ===
        .byte $60,$00,$00,$00,$00,$00,$00,$0c       // char 0 @+0
        .byte $0c,$0c,$0c,$0c,$0c,$0c,$0c,$0f       // char 1 @+1
        .byte $0f,$0f,$0f,$0f,$0f,$0f,$0f,$01       // char 2 @+2
        .byte $01,$01,$01,$01,$01,$01,$01,$0f       // char 3 @+3
        .byte $0f,$0f,$0f,$0f,$0f,$0f,$0f,$0c       // char 4 @+4
        .byte $0c,$0c,$0c,$0c,$0c,$0c,$0c,$0b       // char 5 @+5
        .byte $0b,$0b,$0b,$0b,$0b,$0b,$0b           // char 6 (partial)

dat_2c5e:
        // === Fill data (1 bytes, $2c5e-$2c5e) ===
        .byte $00                                   // .

// --- Region $2ca0-$2f3e ---
.pc = $2ca0 "txt_2ca0"

txt_2ca0:
        .byte $50,$52,$54,$56,$58,$59,$16           // char 15 (partial)
        .byte $5b,$5c,$5d,$5e,$5f,$60,$60,$5f       // char 16 @+16
        .byte $5e,$5d,$5c,$5b,$5a,$0c               // char 17 (partial)

txt_2cb5:
        .byte $58,$56                               // char 17 (partial)
        .byte $54,$52,$50,$4e,$4c,$4a,$48,$45       // char 18 @+18
        .byte $42,$01,$8d,$06,$d0,$78,$4c,$00       // char 19 @+19
        .byte $50,$00,$00,$00,$00,$00,$00,$00       // char 20 @+20
        .byte $00                                   // char 21 (partial)

txt_2cd0:
        .byte $24,$27,$2a,$2d,$30,$33,$36           // char 21 (partial)
        .byte $39,$3c,$3f,$42,$45,$48,$4a,$4c       // char 22 @+22
        .byte $4e,$50,$52,$54,$56,$58,$59,$5a       // char 23 @+23
        .byte $5b,$5c,$5d,$5e,$5f,$60,$60,$5f       // char 24 @+24
        .byte $5e,$00,$00,$00,$00,$00,$00,$00       // char 25 @+25
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 26 @+26
        .byte $00,$20,$20,$1e,$20,$14,$08,$05       // char 27 @+27
        .byte $20,$0d,$09,$07,$08,$14,$19,$20       // char 28 @+28
        .byte $20,$12,$01,$1a,$0f,$12,$20,$05       // char 29 @+29
        .byte $18,$10,$12,$05,$13,$13,$20,$20       // char 30 @+30
        .byte $10,$12,$05,$13,$05,$0e,$14,$13       // char 31 @+31
        .byte $3a,$20,$07,$0f,$20,$02,$01,$0c       // char 32 ' '
        .byte $0c                                   // char 33 (partial)

txt_2d30:
        .byte $20,$2e,$2e,$2e,$2e,$2e,$2e           // char 33 (partial)
        .byte $2e,$2e,$2e,$20,$20,$03,$12,$01       // char 34 '"'
        .byte $03,$0b,$05,$04,$20,$02,$19,$20       // char 35 '#'
        .byte $20,$0c,$15,$03,$01,$13,$20,$20       // char 36 '$'
        .byte $0f,$0e                               // char 37 (partial)

txt_2d51:
        .byte $20,$36,$2f,$33,$2d,$32               // char 37 (partial)
        .byte $37,$37,$32,$2e,$2e,$2e,$2e,$1f       // char 38 '&'

txt_2d5f:
        .byte $20,$20,$20,$20,$19,$05,$01,$12       // char 39 '''
        .byte $08,$20,$0d,$01,$0e,$2c,$20,$04       // char 40 '('
        .byte $09,$07,$20,$14,$08,$09,$13           // char 41 (partial)

txt_2d76:
        .byte $21                                   // char 41 (partial)
        .byte $21,$21,$21,$21,$2c,$20,$14,$08       // char 42 '*'
        .byte $01,$0e,$0b,$13,$20,$14,$0f,$20       // char 43 '+'
        .byte $0d,$2e,$09,$2e,$07,$2e,$20,$06       // char 44 ','
        .byte $0f,$12,$20,$14,$08,$05,$20,$0f       // char 45 '-'
        .byte $12,$09,$07,$09,$0e,$01,$0c           // char 46 (partial)

txt_2d9e:
        .byte $2e                                   // char 46 (partial)
        .byte $2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e       // char 47 '/'
        .byte $2e,$20,$20,$20,$20,$20,$20,$20       // char 48 '0'
        .byte $20,$20,$20,$20,$0f,$15,$12,$20       // char 49 '1'
        .byte $05,$15,$12,$0f,$10,$05,$01,$0e       // char 50 '2'
        .byte $20,$01,$0e,$04,$20,$01,$0d,$05       // char 51 '3'
        .byte $12,$09,$03,$01,$0e,$20,$12,$01       // char 52 '4'
        .byte $0e,$0b,$09,$0e,$07,$13,$20,$07       // char 53 '5'
        .byte $0f,$05,$13,$20,$14,$0f               // char 54 (partial)

txt_2ddd:
        .byte $3a,$20                               // char 54 (partial)
        .byte $20,$20,$20,$01,$03,$05,$20,$2d       // char 55 '7'
        .byte $20,$14,$12,$09,$13,$14,$01,$12       // char 56 '8'
        .byte $20,$2d,$20,$03,$06,$12,$20,$2d       // char 57 '9'
        .byte $20,$13,$03,$09,$05,$0e,$03,$05       // char 58 ':'

txt_2dff:
        .byte $20,$34,$35,$31,$20,$2d,$20,$08       // char 59 ';'
        .byte $0f,$14,$0c,$09,$0e,$05,$20,$2d       // char 60 '<'
        .byte $20,$17,$0f,$04,$20,$2d,$20,$0f       // char 61 '='
        .byte $12,$09,$0f,$0e,$20,$2d,$20,$10       // char 62 '>'
        .byte $05,$0e,$14,$01,$03,$0c,$05,$20       // char 63 '?'
        .byte $2d,$20,$06,$15,$13,$09,$0f,$0e       // char 64 '@'
        .byte $20,$2d,$20,$0d,$03,$07,$20,$2d       // char 65 'A'
        .byte $20,$14,$12,$09,$01,$04,$20,$2d       // char 66 'B'
        .byte $20,$02,$05,$01,$13,$14,$09,$05       // char 67 'C'
        .byte $20,$02,$0f,$19,$13,$20,$2d,$20       // char 68 'D'
        .byte $13,$08,$01,$12,$0b,$13,$20,$2d       // char 69 'E'
        .byte $20,$03,$01,$0f,$13,$20,$2d,$20       // char 70 'F'
        .byte $0d,$09,$03,$12,$0f,$0e,$05,$14       // char 71 'G'
        .byte $20,$2d,$20,$17,$01,$18,$0c,$19       // char 72 'H'
        .byte $1a,$05,$20,$2d,$20,$06,$12,$05       // char 73 'I'
        .byte $13,$08,$20,$2d,$20,$04,$04,$0c       // char 74 'J'
        .byte $20,$2d,$20,$1a,$05,$0e,$09,$14       // char 75 'K'
        .byte $08,$20,$2d,$20,$12,$01,$19,$20       // char 76 'L'
        .byte $2d,$20,$14,$12,$09,$01,$0e,$07       // char 77 'M'
        .byte $0c,$05,$20,$2d,$20,$05,$03,$03       // char 78 'N'
        .byte $20,$2d,$20,$0d,$01,$1a,$09,$18       // char 79 'O'

txt_2ea7:
        .byte $20,$32,$30,$31,$30,$20,$2d,$20       // char 80 'P'
        .byte $1a,$05,$18,$14,$12,$05,$18,$20       // char 81 'Q'
        .byte $2d,$20,$0c,$03,$13,$20,$2d,$20       // char 82 'R'
        .byte $07,$01,$0c,$01,$18,$19,$20,$2d       // char 83 'S'
        .byte $20,$14,$0c,$03,$20,$2d,$20,$04       // char 84 'T'
        .byte $05,$18,$09,$0f,$0e                   // char 85 (partial)

txt_2ed4:
        .byte $21,$20,$2d                           // char 85 (partial)
        .byte $20,$14,$13,$0b,$20,$2d,$20,$05       // char 86 'V'
        .byte $18,$03,$05,$0c,$20,$2d,$20,$12       // char 87 'W'
        .byte $05,$01,$0c,$09,$14,$19,$60,$2d       // char 88 'X'
        .byte $20,$13,$08,$09,$05,$0c,$04,$20       // char 89 'Y'
        .byte $2d,$20,$08,$03,$01,$20,$2d,$20       // char 90 'Z'
        .byte $04,$0f,$0d,$09,$0e,$01,$14,$0f       // char 91 '['
        .byte $12,$13,$20,$2d,$20,$01,$03,$03       // char 92 '\'

txt_2f0f:
        .byte $20,$2d,$20,$32,$30,$30,$30,$20       // char 93 ']'
        .byte $01,$2e,$04                           // char 94 (partial)

txt_2f1a:
        .byte $2e,$2e,$2e,$2e,$2e                   // char 94 (partial)
        .byte $20,$14,$08,$01,$14,$27,$13,$20       // char 95 '_'
        .byte $09,$14                               // char 96 (partial)

txt_2f29:
        .byte $2e,$2e,$2e,$20,$20,$20               // char 96 (partial)
        .byte $20,$20,$20,$20,$20,$20,$20,$20       // char 97 'a'
        .byte $20,$20,$20,$20,$20,$20,$20,$20       // char 98 'b'
