// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-01 10:59:17
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $2eff  (9984 bytes)
// Crunched with Cruncher AB — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $0bf0 (3056)
// IRQ handler:  $0d00 (irq_0d00)
// IRQ handler:  $ea31 (irq_ea31)
//
// Code: 2225 bytes, Data: 7759 bytes
// Labels: 268, Subroutines: 7
//
// Cross-references: all OK
// ============================================


// --- Region $0bf0-$0c01 ---
.pc = $0bf0 "main_0bf0"

main_0bf0:
        lda #$0d
        jsr $ffd2
        lda $3fff
        sta smc_1cb6                                // SMC: modifies $1cb6
        lda #$00
        sta $3fff

spr_0c00:
        // === Screen RAM (2 bytes, $0c00-$0c01) ===
        .encoding "screencode_mixed"
        .text " "
        .byte $81                                   // scrcode: .
        .encoding "petscii_upper"

// --- Region $0c60-$0ccb ---
.pc = $0c60 "loc_0c60"

loc_0c60:
        ldx #$0a

loc_0c62:
        dex
        bne loc_0c62
        lda #$00
        sta $d020
        lsr $d019
        jsr sub_0f00
        lda #$19
        sta $d011
        jsr sub_1003
        jmp loc_1d50

chr_0c7b:
        // === Charset data (5 bytes, $0c7b-$0c7f) ===
        .byte $00,$00,$00,$00,$00                   // char 0 (partial)
// Referenced by: jsr from $0d7d

sub_0c80:
        ldx #$07

loc_0c82:
        lda #$2c
        sta $07f8,x
        lda #$0b
        sta $d027,x
        dex
        bpl loc_0c82
        ldx #$0f

loc_0c91:
        lda $0ce0,x
        sta $d000,x
        dex
        bpl loc_0c91
        lda #$0c
        sta $d025
        lda #$0f
        sta $d026
        lda #$c0
        sta $d010
        lda #$ff
        sta $d01b
        sta $d01d
        sta $d01c
        ldx #$1e

loc_0cb6:
.label smc_0cb7 = * + 1
        lda $0b62,x                                 // !SMC: modified by $0f4f
        sta $0b12,x
        dex
        bpl loc_0cb6
        ldx #$00

loc_0cc1:
        dex
        bne loc_0cc1
        ldx #$73

loc_0cc6:
        dex
        bne loc_0cc6
        nop
        nop
        rts

// --- Region $0d00-$0f32 ---
.pc = $0d00 "irq_0d00"

irq_0d00:
        lda #$31
        sta $d012
        lda #$18
        sta $d011
        lda #$19
        sta $d011
        lda $d012
        and #$07
        ora #$10
        sta $d011
        lda $d012
        and #$07
        ora #$10
        sta $d011
        lda $d012
        and #$07
        ora #$10
        sta $d011
        ldy #$00
        lda #$d0
        sta $d016
        lda #$18
        sta $d018
        lda #$03
        sta $d022
        lda #$0e
        sta $d023
        ldx #$00

loc_0d45:
        lda $d012

loc_0d48:
        cmp $d012
        beq loc_0d48
        sty $d020
        sty $d021
        and #$07
        ora #$10
        sta $d011
        ldy $1f0e,x
        inx
.label smc_0d5f = * + 1
        cpx #$35                                    // !SMC: modified by $1d7b
        bne loc_0d45
        lda #$d8
        sta $d016
        ldx #$00

loc_0d69:
        ldy $1e00,x

loc_0d6c:
        dey
        bne loc_0d6c
        lda $1e10,x
        sta $d020
        sta $d021
        inx
        cpx #$07
        bne loc_0d69
        jsr sub_0c80
        ldx #$00

loc_0d82:
        ldy $1e18,x

loc_0d85:
        dey
        bne loc_0d85
        lda $1e08,x
        sta $d020
        sta $d021
        inx
        cpx #$06
        bne loc_0d82
        lda #$d0
        sta $d016
.label smc_0d9c = * + 1
        ldx #$04                                    // !SMC: modified by $1d84
        ldy $1f0e,x

loc_0da0:
        lda $d012

loc_0da3:
        cmp $d012
        beq loc_0da3
        sty $d020
        sty $d021
        and #$07
        ora #$10
        sta $d011
        ldy $1f0e,x
        dex
        cpx #$ff
        bne loc_0da0
        ldx #$05

loc_0dbf:
        dex
        bne loc_0dbf
        lda #$00
        sta $d020
        sta $d021
        lda #$59
        sta $d011
        lda #$c8
        sta $d016
        lda #$12
        sta $d018
        ldx #$c8

loc_0ddb:
        dex
        bne loc_0ddb
        ldx #$07

loc_0de0:
        lda $0cf0,x
        sta $d000,x
        dex
        bpl loc_0de0
        ldx #$28
        stx $07f8
        inx
        stx $07f9
        inx
        stx $07fa
        inx
        stx $07fb
        lda #$0b
        sta $d027
        sta $d028
        sta $d029
        sta $d02a
        lda #$0f
        sta $d025
        lda #$0c
        sta $d026
        lda #$0c
        sta $d010
        lda #$00
        sta $d01b
        sta $d01d
.label smc_0e20 = * + 1
        lda #$c4                                    // !SMC: modified by $0fab
        sta $d016
        ldx #$20

loc_0e26:
        dex
        bne loc_0e26
        lda #$0f
        sta $d020
        ldx #$0a

loc_0e30:
        dex
        bne loc_0e30
        lda #$0c
        sta $d020
        ldx #$0a

loc_0e3a:
        dex
        bne loc_0e3a
        lda #$0b
        sta $d020
        ldx #$20

loc_0e44:
        dex
        bne loc_0e44
        lda #$06
        sta $d021
        lda #$0b
        sta $d023
        ldx #$14

loc_0e53:
        dex
        bne loc_0e53
        lda #$0e
        sta $d021
        lda #$0c
        sta $d023
        ldx #$07

loc_0e62:
        dex
        bne loc_0e62
        lda #$03
        sta $d021
        lda #$0f
        sta $d023
        ldx #$08

loc_0e71:
        dex
        bne loc_0e71
        lda #$07
        sta $d021
        lda #$07
        sta $d023
        ldx #$09

loc_0e80:
        dex
        bne loc_0e80
        lda #$07
        sta $d021
        lda #$07
        sta $d023
        ldx #$08

loc_0e8f:
        dex
        bne loc_0e8f
        lda #$03
        sta $d021
        lda #$0f
        sta $d023
        ldx #$08

loc_0e9e:
        dex
        bne loc_0e9e
        lda #$0e
        sta $d021
        lda #$0c
        sta $d023
        ldx #$09

loc_0ead:
        dex
        bne loc_0ead
        lda #$06
        sta $d021
        lda #$0b
        sta $d023
        ldx #$08

loc_0ebc:
        dex
        bne loc_0ebc
        ldx #$02

loc_0ec1:
        lda $d012

loc_0ec4:
        cmp $d012
        beq loc_0ec4
        and #$07
        ora #$50
        sta $d011
        dex
        bpl loc_0ec1
        lda #$00
        sta $d021
.label smc_0ed9 = * + 1
        lda #$c2                                    // !SMC: modified by $1fc7
        sta $d016
        ldx #$45

loc_0edf:
        dex
        bne loc_0edf
        lda #$02
        sta $d021
        lda #$09
        sta $d023
        lda #$0a
        sta $d021
        lda #$05
        sta $d023
        jmp loc_1eb0

chr_0ef9:
        // === Charset data (7 bytes, $0ef9-$0eff) ===
        .byte $00,$00,$00,$00,$00,$00,$00           // char 0 (partial)
// Referenced by: jsr from $0c6d

sub_0f00:
        inc smc_0f14
        lda smc_0f14
        cmp #$60
        bne loc_0f0f
        lda #$20
        sta smc_0f14                                // SMC: modifies $0f14

loc_0f0f:
        ldx #$00
        ldy #$00

loc_0f13:
.label smc_0f14 = * + 1
        lda $1e40,x                                 // !SMC: modified by $0f0c
        sta $1f0e,y
        sta $1f17,y
        sta $1f20,y
        sta $1f29,y
        sta $1f32,y
        sta $1f3b,y
        inx
        iny
        cpx #$09
        bne loc_0f13
        jmp loc_0f3b

chr_0f31:
        // === Charset data (2 bytes, $0f31-$0f32) ===
        .byte $00,$00                               // char 0 (partial)

// --- Region $0f3b-$0fc1 ---
.pc = $0f3b "loc_0f3b"

loc_0f3b:
        ldx #$0d

loc_0f3d:
        lda $1e70,x
.label smc_0f41 = * + 1
        sta $1f4b,x                                 // !SMC: modified by $1d65
        dex
        bpl loc_0f3d
        lda smc_0cb7
        cmp #$7e
        bne loc_0f52
        lda #$3e
        sta smc_0cb7                                // SMC: modifies $0cb7

loc_0f52:
        inc smc_0cb7
        jsr sub_0f60
        rts

chr_0f59:
        // === Charset data (7 bytes, $0f59-$0f5f) ===
        .byte $00,$00,$00,$00,$00,$00,$00           // char 0 (partial)
// Referenced by: jsr from $0f55

sub_0f60:
        ldx #$02

loc_0f62:
        dec $37
        lda $37
        and #$07
        ora #$c0
        cmp #$c6
        beq loc_0f77

loc_0f6e:
        dex
        bne loc_0f62
        jmp loc_0fa5

chr_0f74:
        // === Charset data (3 bytes, $0f74-$0f76) ===
        .byte $00,$00,$00                           // char 0 (partial)

loc_0f77:
        jsr sub_0f7d
        jmp loc_0f6e
// Referenced by: jsr from $0f77

sub_0f7d:
        ldy #$00

loc_0f7f:
        lda $05e1,y
        sta $05e0,y
        iny
        cpy #$27
        bne loc_0f7f
        ldy #$00
        lda ($3d),y
        beq loc_0f9c
        sta $0607

loc_0f93:
        inc $3d
        lda $3d
        bne loc_0f9b
        inc $3e

loc_0f9b:
        rts

loc_0f9c:
        sta $3d
        lda #$28
        sta $3e
        jmp loc_0f93

loc_0fa5:
        lda $37
        and #$07
        ora #$c0
        sta smc_0e20                                // SMC: modifies $0e20
        jmp loc_1fb0

loc_0fb1:
        lda #$00
        jsr sub_1000

loc_0fb6:
        lda $dc01
        cmp #$ef
        bne loc_0fb6
        jmp loc_1c9a

chr_0fc0:
        // === Charset data (2 bytes, $0fc0-$0fc1) ===
        .byte $00,$00                               // char 0 (partial)

// --- Region $1000-$1006 ---
.pc = $1000 "sub_1000"
// Referenced by: jsr from $0fb3

sub_1000:
        jmp loc_1040
// Referenced by: jsr from $0c75

sub_1003:
        jmp loc_10d2

dat_1006:
        .byte $01                                   // .

// --- Region $1040-$1491 ---
.pc = $1040 "loc_1040"

loc_1040:
        asl
        asl
        asl
        tay
        ldx #$00

loc_1046:
        lda $15ce,y
        sta $1014,x
        sta $101a,x
        lda $15cf,y
        sta $1017,x
        sta $101d,x
        iny
        iny
        inx
        cpx #$03
        bne loc_1046
        ldx #$00
        stx $100d
        lda $15ce,y
        sta $1551

loc_106a:
        sta $15b8,x
        inc $100d
        lda $1551
        clc
        adc $15ce,y
        sta $1551
        clc
        adc $100d
        inx
        cpx #$10
        bne loc_106a
        lda txt_1020
        beq loc_10b3
        ldx #$02

loc_108a:
        lda $15cf,y
        sta $100d
        and $1552,x
        sta dat_1006,x
        dex
        bpl loc_108a
        bit $100d
        bpl loc_10b3
        ldx #$00

loc_10a0:
        lda $15d0,y
        sta $101a,x
        lda $15d1,y
        sta $101d,x
        iny
        iny
        inx
        cpx #$03
        bne loc_10a0

loc_10b3:
        ldy #$00
        tya

loc_10b6:
        sta $d400,y
        sta $1558,y
        iny
        cpy #$1b
        bne loc_10b6
        lda #$1f
        sta $d418
        lda #$01
        sta $1564
        sta $1565
        sta $1566
        rts

loc_10d2:
        lda $fb
        pha
        lda $fc
        pha
        ldx #$02

loc_10da:
        lda dat_1006,x
        bne loc_10e2
        jmp loc_1484

loc_10e2:
        lda $1567,x
        beq loc_10ef
        lda #$00
        sta $1567,x
        jmp loc_120a

loc_10ef:
        lda $1564,x
        cmp #$01
        bne loc_10fb
        inc $1567,x
        bne loc_1101

loc_10fb:
        dec $1564,x
        jmp loc_12e8

loc_1101:
        lda $156a,x
        sta $1564,x
        lda $1014,x
        sta $fb
        lda $1017,x
        sta $fc
        ldy #$00
        tya
        sta $1561,x
        lda ($fb),y
        bpl loc_112a
        asl
        sta $1558,x
        inc $1014,x
        bne loc_1127
        inc $1017,x

loc_1127:
        iny
        lda ($fb),y

loc_112a:
        tay
        lda $16e7,y
        sta $fb
        lda $16f4,y
        sta $fc

loc_1135:
        ldy $155b,x
        lda ($fb),y
        bmi loc_1164
        beq loc_115a
        cmp #$7e
        beq loc_1150
        sta $156d,x
        lda $15ac,x
        beq loc_1153
        dec $15ac,x
        jmp loc_1153

loc_1150:
        inc $1561,x

loc_1153:
        lda #$ff
        sta $1009,x
        bne loc_11c6

loc_115a:
        lda #$fe
        sta $1009,x
        inc $1561,x
        bne loc_11c6

loc_1164:
        pha
        and #$e0
        cmp #$80
        bne loc_1184
        pla
        pha
        and #$10
        sta $1561,x
        pla
        and #$0f
        tay
        lda $15b8,y
        sta $1564,x
        sta $156a,x
        inc $155b,x
        bne loc_1135

loc_1184:
        cmp #$a0
        bne loc_1194
        pla
        asl
        asl
        asl
        sta $155e,x

loc_118f:
        inc $155b,x
        bne loc_1135

loc_1194:
        pla
        and #$3f
        asl
        tay
        lda $1678,y
        sta $15a3,x
        lda $1677,y
        pha
        and #$1f
        sta $15a6,x
        pla
        pha
        and #$80
        sta $15a9,x
        lda #$01
        sta $15ac,x
        lda #$00
        sta $15af,x
        sta $15b2,x
        pla
        and #$20
        bne loc_118f
        inc $15ac,x
        bne loc_118f

loc_11c6:
        inc $155b,x
        ldy $155b,x
        lda ($fb),y
        cmp #$7f
        bne loc_11ff
        lda #$00
        sta $155b,x
        tay
        lda $1014,x
        clc
        adc #$01
        sta $1014,x
        sta $fb
        lda $1017,x
        adc #$00
        sta $1017,x
        sta $fc
        lda ($fb),y
        cmp #$ff
        bne loc_11ff
        lda $101a,x
        sta $1014,x
        lda $101d,x
        sta $1017,x

loc_11ff:
        lda $1613
        bne loc_1207
        jmp loc_12e8

loc_1207:
        jmp loc_1484

loc_120a:
        lda $1561,x
        beq loc_1212
        jmp loc_12e8

loc_1212:
        ldy $1555,x
        lda #$08
        sta $d404,y
        ldy $155e,x
        lda $162f,y
        ldy $1555,x
        sta $d405,y
        ldy $155e,x
        lda $1630,y
        ldy $1555,x
        sta $d406,y
        lda #$09
        sta $d404,y
        ldy $155e,x
        lda $1636,y
        sta $159d,x
        sta $15a0,x
        cpx #$00
        bne loc_1292
        lda $1634,y
        sta $1589
        tay
        lda $1612,y
        beq loc_128d
        ldy #$f1
        sty $d417
        ldy #$00
        sty $158a
        cmp #$ff
        beq loc_1266
        lda #$01
        sta $158a

loc_1266:
        ldy $1589
        lda $1610,y
        pha
        and #$f0
        sta $1585
        pla
        asl
        asl
        asl
        asl
        sta $1586
        lda $1611,y
        sta $1587
        lda $1613,y
        sta $100c
        lda #$01
        sta $1588
        bne loc_1292

loc_128d:
        lda #$f0
        sta $d417

loc_1292:
        ldy $155e,x
        lda $1631,y
        pha
        lsr
        lsr
        lsr
        lsr
        sta $1573,x
        pla
        and #$0f
        sta $1576,x
        lda $1632,y
        sta $1579,x
        lda $1633,y
        pha
        and #$f0
        sta $157f,x
        pla
        and #$0f
        sta $1582,x
        lda #$00
        sta $157c,x
        sta $158b,x
        sta $1594,x
        lda $1635,y
        tay
        lda $1620,y
        clc
        adc #$02
        sta $1597,x
        lda $1621,y
        sta $158e,x
        clc
        adc #$01
        sta $1591,x
        lda $1622,y
        sta $159a,x
        jmp loc_1484

loc_12e8:
        lda $1579,x
        beq loc_132a
        lda $157c,x
        bne loc_130b
        lda $157f,x
        clc
        adc $1579,x
        sta $157f,x
        lda $1582,x
        adc #$00
        sta $1582,x
        cmp $1576,x
        bne loc_132a
        beq loc_1322

loc_130b:
        lda $157f,x
        sec
        sbc $1579,x
        sta $157f,x
        lda $1582,x
        sbc #$00
        sta $1582,x
        cmp $1573,x
        bne loc_132a

loc_1322:
        lda $157c,x
        eor #$01
        sta $157c,x

loc_132a:
        cpx #$00
        beq loc_1331
        jmp loc_136f

loc_1331:
        lda $158a
        cmp #$02
        beq loc_136f
        lda $1588
        bne loc_134e
        lda $100c
        clc
        adc $1587
        sta $100c
        cmp $1586
        bcc loc_136f
        bcs loc_135d

loc_134e:
        lda $100c
        sec
        sbc $1587
        sta $100c
        cmp $1585
        bcs loc_136f

loc_135d:
        lda $1588
        eor #$01
        sta $1588
        lda $158a
        beq loc_136f
        lda #$02
        sta $158a

loc_136f:
        lda $1597,x
        beq loc_13b6
        ldy $159d,x
        lda $15de,y
        bmi loc_1390
        cmp #$7f
        bne loc_1394
        lda $15a0,x
        clc
        adc $15f7,y
        sta $159d,x
        tay
        lda $15de,y
        bpl loc_1394

loc_1390:
        asl
        jmp loc_139d

loc_1394:
        clc
        adc $156d,x
        asl
        clc
        adc $1558,x

loc_139d:
        tay
        lda scr_1491,y
        sta $100e,x
        lda $1492,y
        sta $1011,x
        ldy $159d,x
        lda $15f7,y
        sta $1570,x
        inc $159d,x

loc_13b6:
        lda $15ac,x
        beq loc_13ff
        lda $15a9,x
        bne loc_13d6
        lda $15af,x
        clc
        adc $15a3,x
        sta $15af,x
        lda $15b2,x
        adc $15a6,x
        sta $15b2,x
        jmp loc_13e9

loc_13d6:
        lda $15af,x
        sec
        sbc $15a3,x
        sta $15af,x
        lda $15b2,x
        sbc $15a6,x
        sta $15b2,x

loc_13e9:
        lda $100e,x
        clc
        adc $15af,x
        sta $100e,x
        lda $1011,x
        adc $15b2,x
        sta $1011,x
        jmp loc_145a

loc_13ff:
        lda $1597,x
        beq loc_140c
        bmi loc_145a
        dec $1597,x
        jmp loc_145a

loc_140c:
        lda $1594,x
        beq loc_1426
        lda $100e,x
        clc
        adc $158b,x
        sta $100e,x
        lda $1011,x
        adc #$00
        sta $1011,x
        jmp loc_1438

loc_1426:
        lda $100e,x
        sec
        sbc $158b,x
        sta $100e,x
        lda $1011,x
        sbc #$00
        sta $1011,x

loc_1438:
        lda $158b,x
        clc
        adc $159a,x
        sta $158b,x
        dec $158e,x
        bne loc_145a
        lda $1591,x
        sta $158e,x
        lda #$00
        sta $158b,x
        lda $1594,x
        eor #$01
        sta $1594,x

loc_145a:
        ldy $1555,x
        lda $157f,x
        sta $d402,y
        lda $1582,x
        sta $d403,y
        lda $100c
        sta $d416
        lda $100e,x
        sta $d400,y
        lda $1011,x
        sta $d401,y
        lda $1570,x
        and $1009,x
        sta $d404,y

loc_1484:
        dex
        bmi loc_148a
        jmp loc_10da

loc_148a:
        pla
        sta $fc
        pla
        sta $fb
        rts

scr_1491:
        // === Screen RAM (1 bytes, $1491-$1491) ===
        .encoding "screencode_mixed"
        .text "v"
        .encoding "petscii_upper"

// --- Region $1816-$181a ---
.pc = $1816 "Segment $1816"
        ror.abs $0030,x
        .byte $3a                                   // nop // ILLEGAL
        brk

// --- Region $1c9a-$1cdc ---
.pc = $1c9a "loc_1c9a"

loc_1c9a:
        sei
        lda #$31
        ldy #$ea
        sta $0314
        sty $0315
        lda #$00
        sta $d019
        sta $d01a
        jsr $ff81
        lda #$08
        sta $c6
        nop
.label smc_1cb6 = * + 1
        lda #$00                                    // !SMC: modified by $0bf8
        sta $3fff
        lda #$00
        sta $d418
        ldx #$00

loc_1cc1:
        lda tbl_1cdc,x
        sta $0100,x
        inx
        cpx #$22
        bne loc_1cc1
        lda #$15
        sta $d018
        lda #$00
        sta $d020
        sta $d021
        jmp $0100

tbl_1cdc:
        // === VIC register table (1 bytes, $1cdc-$1cdc) ===
        .byte $78                                   // x

// --- Region $1d50-$1d8a ---
.pc = $1d50 "loc_1d50"

loc_1d50:
        inc smc_1d60
        lda smc_1d60
        cmp #$50
        bne loc_1d5f
        lda #$00
        sta smc_1d60                                // SMC: modifies $1d60

loc_1d5f:
.label smc_1d60 = * + 1
        lda $1d05                                   // !SMC: modified by $1d5c
        clc
        adc #$0d
        sta smc_0f41                                // SMC: modifies $0f41
        inc smc_1d78
        lda smc_1d78
        cmp #$f8
        bne loc_1d77
        lda #$98
        sta smc_1d78                                // SMC: modifies $1d78

loc_1d77:
.label smc_1d78 = * + 1
        ldx $1dda                                   // !SMC: modified by $1d74
        inx
        stx smc_0d5f                                // SMC: modifies $0d5f
        lda #$3a
        clc
        sbc smc_0d5f
        sta smc_0d9c                                // SMC: modifies $0d9c
        jmp $ea7e

scr_1d8a:
        // === Screen RAM (1 bytes, $1d8a-$1d8a) ===
        .encoding "screencode_mixed"
        .text "@"
        .encoding "petscii_upper"

// --- Region $1eb0-$1eff ---
.pc = $1eb0 "loc_1eb0"

loc_1eb0:
        ldx #$07

loc_1eb2:
        dex
        bne loc_1eb2
        lda #$07
        sta $d021
        lda #$0d
        sta $d023
        ldx #$08

loc_1ec1:
        dex
        bne loc_1ec1
        lda #$01
        sta $d021
        lda #$01
        sta $d023
        ldx #$08

loc_1ed0:
        dex
        bne loc_1ed0
        lda #$01
        sta $d021
        lda #$01
        sta $d023
        ldx #$09

loc_1edf:
        dex
        bne loc_1edf
        lda #$07
        sta $d021
        lda #$0d
        sta $d023
        ldx #$09

loc_1eee:
        dex
        bne loc_1eee
        lda #$0a
        sta $d021
        lda #$05
        sta $d023
        jmp loc_1f88

scr_1efe:
        // === Screen RAM (2 bytes, $1efe-$1eff) ===
        .encoding "screencode_mixed"
        .text "@@"
        .encoding "petscii_upper"

// --- Region $1f88-$1ffa ---
.pc = $1f88 "loc_1f88"

loc_1f88:
        ldx #$08

loc_1f8a:
        dex
        bne loc_1f8a
        lda #$02
        sta $d021
        lda #$09
        sta $d023
        ldx #$36

loc_1f99:
        dex
        bne loc_1f99
        lda #$0c
        sta $d020
        ldx #$09

loc_1fa3:
        dex
        bne loc_1fa3
        lda #$0f
        sta $d020
        jmp loc_0c60

scr_1fae:
        // === Screen RAM (2 bytes, $1fae-$1faf) ===
        .encoding "screencode_mixed"
        .text "@@"
        .encoding "petscii_upper"

loc_1fb0:
        ldx #$03

loc_1fb2:
        dec $38
        lda $38
        and #$07
        ora #$c0
        cmp #$c7
        beq loc_1fcb

loc_1fbe:
        dex
        bne loc_1fb2
        lda $38
        and #$07
        ora #$c0
        sta smc_0ed9                                // SMC: modifies $0ed9
        rts

loc_1fcb:
        jsr sub_1fd1
        jmp loc_1fbe
// Referenced by: jsr from $1fcb

sub_1fd1:
        ldy #$00

loc_1fd3:
        lda $0631,y
        sta $0630,y
        iny
        cpy #$27
        bne loc_1fd3
        ldy #$00
        lda ($3f),y
        beq loc_1ff0
        sta $0657

loc_1fe7:
        inc $3f
        lda $3f
        bne loc_1fef
        inc $40

loc_1fef:
        rts

loc_1ff0:
        sta $3f
        lda #$2d
        sta $40
        jmp loc_1fe7

scr_1ff9:
        // === Screen RAM (2 bytes, $1ff9-$1ffa) ===
        .encoding "screencode_mixed"
        .text "@@"
        .encoding "petscii_upper"

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

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

spr_0800:
        // === Charset data (958 bytes, $0800-$0bbd) ===
        .byte $00,$00,$00,$18,$18,$24,$42,$81       // char 0 @+0
        .byte $e1,$c9,$c9,$99,$99,$39,$21,$ff       // char 1 @+1
        .byte $03,$39,$39,$03,$39,$39,$03,$ff       // char 2 @+2
        .byte $83,$39,$3f,$3f,$3f,$39,$83,$ff       // char 3 @+3
        .byte $03,$f9,$f9,$39,$39,$39,$03,$ff       // char 4 @+4
        .byte $01                                   // char 5 (partial)

txt_0829:
        .byte $3f,$3f,$21,$3f,$3f,$21,$ff           // char 5 (partial)
        .byte $01                                   // char 6 (partial)

txt_0831:
        .byte $3f,$3f,$21,$3f,$3f,$3f,$ff           // char 6 (partial)
        .byte $83,$39,$3f,$31,$39,$39,$83,$ff       // char 7 @+7

txt_0840:
        .byte $39,$39,$39,$21,$39,$39,$39,$ff       // char 8 @+8
        .byte $81,$ff,$e7,$e7,$e7,$e7,$81,$ff       // char 9 @+9
        .byte $f9,$f9,$f9,$f9,$39,$39,$83,$ff       // char 10 @+10
        .byte $39,$33,$27,$0f,$27,$33,$39,$ff       // char 11 @+11

txt_0860:
        .byte $3f,$3f,$3f,$3f,$3f,$3f,$01,$ff       // char 12 @+12
        .byte $39,$11,$01,$29,$39,$39,$39,$ff       // char 13 @+13
        .byte $39,$19,$09,$21,$31,$39,$39,$ff       // char 14 @+14
        .byte $83,$39,$39,$39,$39,$39,$83,$ff       // char 15 @+15
        .byte $03,$f9,$f9,$03,$3f,$3f,$3f,$ff       // char 16 @+16
        .byte $83,$39,$39,$39,$39,$39,$80,$fc       // char 17 @+17
        .byte $03,$f9,$f9,$03,$33,$39,$39,$ff       // char 18 @+18
        .byte $81,$3f,$3f,$83,$f9,$f9,$03,$ff       // char 19 @+19
        .byte $81,$ff,$e7,$e7,$e7,$e7,$e7,$ff       // char 20 @+20

txt_08a8:
        .byte $39,$39,$39,$39,$39,$39,$81,$ff       // char 21 @+21
        .byte $39,$39,$93,$93,$c7,$c7,$ef,$ff       // char 22 @+22
        .byte $39,$39,$39,$29,$01,$11,$39,$ff       // char 23 @+23
        .byte $39,$39,$93,$c7,$93,$39,$39,$ff       // char 24 @+24
        .byte $39,$39,$93,$c7,$cf,$9f,$3f,$ff       // char 25 @+25
        .byte $81,$f9,$f3,$e7,$cf,$9f,$81,$ff       // char 26 @+26
        .byte $c3,$cf,$cf,$cf,$cf,$cf,$c3,$ff       // char 27 @+27
        .byte $c3,$99,$9f,$07,$9f,$9f,$01,$ff       // char 28 @+28
        .byte $c3,$f3,$f3,$f3,$f3,$f3,$c3,$ff       // char 29 @+29
        .byte $e7,$c3,$81,$e7,$e7,$e7,$e7,$ff       // char 30 @+30
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 31 @+31
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 32 ' '
        .byte $e7,$e7,$e7,$e7,$ff,$ff,$e7,$ff       // char 33 '!'
        .byte $99,$99,$99,$ff,$ff,$ff,$ff,$ff       // char 34 '"'
        .byte $99,$99,$00,$99,$00,$99,$99,$ff       // char 35 '#'
        .byte $e7,$c1,$9f,$c3,$f9,$83,$e7,$ff       // char 36 '$'
        .byte $9d,$99,$f3,$e7,$cf,$99,$b9,$ff       // char 37 '%'
        .byte $c3,$99,$c3,$c7,$98,$99,$c0,$ff       // char 38 '&'
        .byte $f9,$f3,$e7,$ff,$ff,$ff,$ff,$ff       // char 39 '''
        .byte $f3,$e7,$cf,$cf,$cf,$e7,$f3,$ff       // char 40 '('
        .byte $cf,$e7,$f3,$f3,$f3,$e7,$cf,$ff       // char 41 ')'
        .byte $ff,$a5,$c3,$81,$c3,$a5,$ff,$ff       // char 42 '*'
        .byte $ff,$e7,$e7,$81,$e7,$e7,$ff,$ff       // char 43 '+'
        .byte $ff,$ff,$ff,$ff,$ff,$e7,$e7,$cf       // char 44 ','
        .byte $ff,$ff,$ff,$81,$ff,$ff,$ff,$ff       // char 45 '-'
        .byte $ff,$ff,$ff,$ff,$ff,$e7,$e7,$ff       // char 46 '.'
        .byte $ff,$fc,$f9,$f3,$e7,$cf,$9f,$ff       // char 47 '/'
        .byte $83,$39,$31,$29,$19,$39,$83,$ff       // char 48 '0'
        .byte $e7,$c7,$87,$e7,$e7,$e7,$01,$ff       // char 49 '1'
        .byte $83,$39,$f9,$e3,$8f,$39,$01,$ff       // char 50 '2'
        .byte $83,$39,$f9,$c3,$f9,$39,$83,$ff       // char 51 '3'
        .byte $33,$33,$33,$01,$f3,$f3,$f3,$ff       // char 52 '4'
        .byte $01,$39,$3f,$03,$f9,$39,$83,$ff       // char 53 '5'
        .byte $83,$39,$3f,$03,$39,$39,$83,$ff       // char 54 '6'
        .byte $01,$39,$f3,$e7,$cf,$cf,$cf,$ff       // char 55 '7'
        .byte $83,$39,$39,$83,$39,$39,$83,$ff       // char 56 '8'
        .byte $83,$39,$39,$81,$f9,$39,$83,$ff       // char 57 '9'
        .byte $ff,$ff,$e7,$ff,$ff,$e7,$ff,$ff       // char 58 ':'
        .byte $ff,$ff,$e7,$ff,$ff,$e7,$e7,$cf       // char 59 ';'
        .byte $f1,$e7,$cf,$9f,$cf,$e7,$f1,$ff       // char 60 '<'
        .byte $ff,$ff,$81,$ff,$81,$ff,$ff,$ff       // char 61 '='
        .byte $8f,$e7,$f3,$f9,$f3,$e7,$8f,$ff       // char 62 '>'
        .byte $c3,$99,$f9,$f3,$e7,$ff,$e7,$ff       // char 63 '?'
        .byte $55,$55,$55,$ff,$ff,$f4,$aa,$aa       // char 64 '@'
        .byte $d0,$aa,$ab,$40,$aa,$ad,$00,$aa       // char 65 'A'
        .byte $b4,$00,$aa,$d0,$00,$ab,$40,$00       // char 66 'B'
        .byte $ad,$00,$00,$b4,$00,$00,$d0,$00       // char 67 'C'
        .byte $00,$d0,$00,$00,$b4,$00,$00,$ad       // char 68 'D'
        .byte $00,$00,$ab,$40,$00,$aa,$d0,$00       // char 69 'E'
        .byte $aa,$b4,$00,$aa,$ad,$00,$aa,$ab       // char 70 'F'
        .byte $40,$aa,$aa,$d0,$00,$00,$00,$6f       // char 71 'G'
        .byte $00,$00,$00,$aa,$aa,$d0,$aa,$ab       // char 72 'H'
        .byte $40,$aa,$ad,$00,$aa,$b4,$00,$aa       // char 73 'I'
        .byte $d0,$00,$ab,$40,$00,$ad,$00,$00       // char 74 'J'
        .byte $b4,$00,$00,$d0,$00,$00,$d0,$00       // char 75 'K'
        .byte $00,$b4,$00,$00,$ad,$00,$00,$ab       // char 76 'L'
        .byte $40,$00,$aa,$d0,$00,$aa,$b4,$00       // char 77 'M'
        .byte $aa,$ad,$00,$aa,$ab,$40,$aa,$aa       // char 78 'N'
        .byte $d0,$ff,$ff,$f4,$55,$55,$55,$00       // char 79 'O'
        .byte $55,$55,$55,$1f,$ff,$ff,$07,$aa       // char 80 'P'
        .byte $aa,$01,$ea,$aa,$00,$7a,$aa,$00       // char 81 'Q'
        .byte $1e,$aa,$00,$07,$aa,$00,$01,$ea       // char 82 'R'
        .byte $00,$00,$7a,$00,$00,$1e,$00,$00       // char 83 'S'
        .byte $07,$00,$00,$07,$00,$00,$1e,$00       // char 84 'T'
        .byte $00,$7a,$00,$01,$ea,$00,$07,$aa       // char 85 'U'
        .byte $00,$1e,$aa,$00,$7a,$aa,$01,$ea       // char 86 'V'
        .byte $aa,$07,$aa,$aa,$00,$00,$00,$ff       // char 87 'W'
        .byte $00,$00,$00,$07,$aa,$aa,$01,$ea       // char 88 'X'
        .byte $aa,$00,$7a,$aa,$00,$1e,$aa,$00       // char 89 'Y'
        .byte $07,$aa,$00,$01,$ea,$00,$00,$7a       // char 90 'Z'
        .byte $00,$00,$1e,$00,$00,$07,$00,$00       // char 91 '['
        .byte $07,$00,$00,$1e,$00,$00,$7a,$00       // char 92 '\'
        .byte $01,$ea,$00,$07,$aa,$00,$1e,$aa       // char 93 ']'
        .byte $00,$7a,$aa,$01,$ea,$aa,$07,$aa       // char 94 '^'
        .byte $aa,$1f,$ff,$ff,$55,$55,$55,$00       // char 95 '_'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 96 '`'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 97 'a'
        .byte $00,$00,$77,$77,$55,$55,$55,$99       // char 98 'b'
        .byte $99,$99,$66,$66,$66,$55,$55,$55       // char 99 'c'
        .byte $77,$77,$77,$dd,$dd,$dd,$ff,$ff       // char 100 'd'
        .byte $ff,$dd,$dd,$dd,$77,$77,$77,$55       // char 101 'e'
        .byte $55,$00,$00,$00,$00,$00,$00,$00       // char 102 'f'
        .byte $00,$00,$00,$00,$00,$00,$00,$55       // char 103 'g'
        .byte $55,$55,$66,$66,$66,$99,$99,$99       // char 104 'h'
        .byte $aa,$aa,$aa,$99,$99,$99,$66,$66       // char 105 'i'
        .byte $66,$55,$55,$55,$77,$77,$77,$dd       // char 106 'j'
        .byte $dd,$dd,$ff,$ff,$ff,$dd,$dd,$dd       // char 107 'k'
        .byte $77,$77,$77,$55,$55,$55,$99,$99       // char 108 'l'
        .byte $99,$66,$66,$66,$55,$55,$55,$77       // char 109 'm'
        .byte $77,$77,$dd,$dd,$dd,$ff,$ff,$ff       // char 110 'n'
        .byte $dd,$dd,$dd,$77,$77,$77,$55,$55       // char 111 'o'

spr_0b80:
        .byte $55,$66,$66,$66,$99,$99,$99,$aa       // char 112 'p'
        .byte $aa,$aa,$99,$99,$99,$66,$66,$66       // char 113 'q'
        .byte $55,$55,$55,$77,$77,$77,$dd,$dd       // char 114 'r'
        .byte $dd,$ff,$ff,$ff,$dd,$dd,$dd,$77       // char 115 's'
        .byte $77,$77,$55,$55,$55,$99,$99,$99       // char 116 't'
        .byte $66,$66,$66,$55,$55,$55,$77,$77       // char 117 'u'
        .byte $77,$dd,$dd,$dd,$ff,$ff,$ff,$dd       // char 118 'v'
        .byte $dd,$dd,$77,$77,$77                   // char 119 (partial)

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

// --- Region $0c02-$0c5f ---
.pc = $0c02 "Program $0c02"
        .encoding "screencode_mixed"
        .byte $ff,$78,$a9                           // scrcode: ...
        .text "a"
        .byte $8d                                   // scrcode: .
        .text "z"
        .byte $d0,$a9,$7f,$8d                       // scrcode: ....
        .text "m"
        .byte $dc,$a9                               // scrcode: ..
        .text "@"
        .byte $8d                                   // scrcode: .
        .text "tc"
        .byte $a9                                   // scrcode: .
        .text "m"
        .byte $8d                                   // scrcode: .
        .text "uc"
        .byte $a2                                   // scrcode: .
        .text "@"
        .encoding "petscii_upper"

loc_0c1a:
        .encoding "screencode_mixed"
        .byte $8a,$9d                               // scrcode: ..
        .text "(d"
        .byte $a9                                   // scrcode: .
        .text "n"
        .byte $9d                                   // scrcode: .
        .text "("
        .byte $d8,$e8,$e0,$f0,$d0,$f2,$a2           // scrcode: .......
        .text "'"
        .encoding "petscii_upper"

loc_0c2a:
        .encoding "screencode_mixed"
        .byte $bd,$d8                               // scrcode: ..
        .text "o"
        .byte $9d,$68                               // scrcode: ..
        .text "e"
        .byte $a9,$ff,$9d                           // scrcode: ...
        .text "xe"
        .byte $9d                                   // scrcode: .
        .text "@d"
        .byte $ca                                   // scrcode: .
        .text "p"
        .byte $ef,$a2                               // scrcode: ..
        .text "@"
        .byte $8a                                   // scrcode: .
        .encoding "petscii_upper"

loc_0c3e:
        .encoding "screencode_mixed"
        .byte $9d                                   // scrcode: .
        .text " "
        .byte $d9,$9d                               // scrcode: ..
        .text " "
        .byte $da,$ca,$d0,$f7,$a9,$ff,$8d           // scrcode: .......
        .text "u"
        .byte $d0,$a9                               // scrcode: ..
        .text "@"
        .byte $85                                   // scrcode: .
        .text "="
        .byte $85                                   // scrcode: .
        .text "?"
        .byte $a9                                   // scrcode: .
        .text "("
        .byte $85                                   // scrcode: .
        .text ">"
        .byte $a9                                   // scrcode: .
        .text "-"
        .byte $85                                   // scrcode: .
        .encoding "petscii_upper"

txt_0c59:
        .byte $40                                   // @ character
        .text "XL"
        .byte $b1                                   // '1' | $80 (end-of-string marker)
        .encoding "screencode_mixed"
        .text "o"
        .encoding "petscii_upper"

chr_0c5e:
        // === Charset data (2 bytes, $0c5e-$0c5f) ===
        .byte $00,$00                               // char 0 (partial)

// --- Region $0ccc-$0cff ---
.pc = $0ccc "chr_0ccc"

chr_0ccc:
        // === Charset data (52 bytes, $0ccc-$0cff) ===
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 0 @+0
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 1 @+1
        .byte $00,$00,$00,$00,$10,$b0,$40,$b0       // char 2 @+2
        .byte $70,$b0,$a0,$b0,$d0,$b0,$00,$b0       // char 3 @+3
        .byte $00,$b0,$30,$b0,$1f,$c9,$1f,$dc       // char 4 @+4
        .byte $37,$c9,$37,$dc,$00,$00,$00,$00       // char 5 @+5
        .byte $00,$00,$00,$00                       // char 6 (partial)

// --- Region $0f33-$0f3a ---
.pc = $0f33 "Program $0f33"
        .byte $00,$00,$00,$00,$00,$00               // char 0 (partial)
        .byte $00,$00                               // char 1 (partial)

// --- Region $0fc2-$0fff ---
.pc = $0fc2 "Program $0fc2"
        .byte $00,$00,$00,$00,$00,$00               // char 0 (partial)
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 1 @+1
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 2 @+2

txt_0fd8:
        .byte $20,$20,$20,$20,$20,$2d,$20,$02       // char 3 @+3
        .byte $0c,$0f,$0f,$04,$17,$19,$03,$08       // char 4 @+4
        .byte $20,$2d,$20,$06,$12,$0f,$0d,$20       // char 5 @+5
        .byte $09,$0d,$01,$07,$05,$20,$17,$0f       // char 6 @+6
        .byte $12,$0b,$13                           // char 7 (partial)

txt_0ffb:
        .byte $20,$20,$20,$20,$20                   // char 7 (partial)

// --- Region $1007-$103f ---
.pc = $1007 "Segment $1007"
        .byte $02,$04,$ff,$fe,$fe,$88,$07,$57,$10,$08,$0a,$27,$3e,$81,$aa,$d3 // .......W...'>...
        .byte $16,$16,$16,$81,$aa,$d3,$16,$16,$16   // .........

txt_1020:
        .text "-PLAYER BY JCH AND MUSIC BY JCH-"

// --- Region $1492-$1815 ---
.pc = $1492 "Segment $1492"
        .encoding "screencode_mixed"
        .text "a'a8a"
        .byte $4b                                   // scrcode: .
        .text "a"
        .byte $5f                                   // scrcode: .
        .text "a"
        .byte $73                                   // scrcode: .
        .text "a"
        .byte $8a                                   // scrcode: .
        .text "a"
        .byte $a1                                   // scrcode: .
        .text "a"
        .byte $ba                                   // scrcode: .
        .text "a"
        .byte $d4                                   // scrcode: .
        .text "a"
        .byte $f0                                   // scrcode: .
        .text "anb-b"
        .byte $4e                                   // scrcode: .
        .text "b"
        .byte $71                                   // scrcode: .
        .text "b"
        .byte $96                                   // scrcode: .
        .text "b"
        .byte $bd                                   // scrcode: .
        .text "b"
        .byte $e7                                   // scrcode: .
        .text "bsc"
        .byte $42                                   // scrcode: .
        .text "c"
        .byte $74                                   // scrcode: .
        .text "c"
        .byte $a9                                   // scrcode: .
        .text "c"
        .byte $e0                                   // scrcode: .
        .text "c"
        .byte $1b                                   // scrcode: .
        .text "d"
        .byte $5a                                   // scrcode: .
        .text "d"
        .byte $9b                                   // scrcode: .
        .text "d"
        .byte $e2                                   // scrcode: .
        .text "d,e"
        .byte $7b                                   // scrcode: .
        .text "e"
        .byte $ce                                   // scrcode: .
        .text "e'f"
        .byte $85                                   // scrcode: .
        .text "f"
        .byte $e8                                   // scrcode: .
        .text "f"
        .byte $51                                   // scrcode: .
        .text "g"
        .byte $c1                                   // scrcode: .
        .text "g7h"
        .byte $b4                                   // scrcode: .
        .text "h7i"
        .byte $c4                                   // scrcode: .
        .text "i"
        .byte $57                                   // scrcode: .
        .text "j"
        .byte $f5                                   // scrcode: .
        .text "j"
        .byte $9c                                   // scrcode: .
        .text "k"
        .byte $4e                                   // scrcode: .
        .text "lim"
        .byte $d0                                   // scrcode: .
        .text "m"
        .byte $a3                                   // scrcode: .
        .text "n"
        .byte $82                                   // scrcode: .
        .text "o"
        .byte $6e                                   // scrcode: .
        .text "p"
        .byte $68                                   // scrcode: .
        .text "q"
        .byte $6e                                   // scrcode: .
        .text "r"
        .byte $88                                   // scrcode: .
        .text "s"
        .byte $af                                   // scrcode: .
        .text "t"
        .byte $eb                                   // scrcode: .
        .text "u9w"
        .byte $9c                                   // scrcode: .
        .text "xsz"
        .byte $a1,$1b,$46,$1d                       // scrcode: ....
        .text "d"
        .byte $1f,$dc                               // scrcode: ..
        .text " "
        .byte $d0                                   // scrcode: .
        .byte $22,$dc                               // scrcode: ".
        .text "$p'"
        .byte $5e                                   // scrcode: .
        .text ")"
        .byte $d6                                   // scrcode: .
        .text "+"
        .byte $72                                   // scrcode: .
        .encoding "petscii_upper"

txt_1514:
        .text ".81&4B7"
        .encoding "screencode_mixed"
        .byte $8c                                   // scrcode: .
        .text ":h>"
        .byte $b8,$41,$a0,$45,$b8                   // scrcode: .....
        .encoding "petscii_upper"

txt_1524:
        .text "I N"
        .byte $bc                                   // '<' | $80 (end-of-string marker)
        .encoding "screencode_mixed"
        .byte $52,$ac,$57,$e4,$5c,$70,$62,$4c,$68,$84,$6e // scrcode: ...........
        .text "x"
        .byte $75                                   // scrcode: .
        .text "p"
        .byte $7c,$70,$83,$40,$8b,$70,$93,$40,$9c,$78 // scrcode: ..........
        .encoding "petscii_upper"

spr_1540:
        .encoding "screencode_mixed"
        .byte $a5,$58,$af,$c8,$b9,$e0,$c4,$98,$d0   // scrcode: .........
        .text "h"
        .byte $dd                                   // scrcode: .
        .text "0"
        .byte $ea                                   // scrcode: .
        .text " "
        .byte $f8                                   // scrcode: .
        .text "."
        .byte $fd                                   // scrcode: .
        .text "3abd@gn"
        .byte $1e                                   // scrcode: .
        .text "tx@@@h(8@aaccc@"
        .text "@@gccl0:"
        .byte $41,$41,$41                           // scrcode: ...
        .text "@nahod@p"
        .byte $40                                   // scrcode: .
        .text "@@@@"
        .byte $b0,$c0                               // scrcode: ..
        .text "hna "
        .byte $a0                                   // scrcode: .
        .text "faha@@@@@"
        .text "caad@@@"
        .byte $82,$82                               // scrcode: ..
        .text "c@@0foxbmu@@@@@a@@@@@@@@@@@f@@@"
        .text "cgkosw"
        .byte $1b,$1f                               // scrcode: ..
        .encoding "petscii_upper"

txt_15c0:
        .text "#'+/37;?"
        .byte $00                                   // string terminator
        .encoding "screencode_mixed"
        .text "@@"
        .byte $fc                                   // scrcode: .
        .text "<a"
        .byte $81                                   // scrcode: .
        .text "v"
        .byte $aa                                   // scrcode: .
        .text "v"
        .byte $d3                                   // scrcode: .
        .text "vcg"
        .byte $81                                   // scrcode: .
        .text "v"
        .byte $aa                                   // scrcode: .
        .text "v"
        .byte $d3                                   // scrcode: .
        .text "v"
        .byte $ff,$ff                               // scrcode: ..
        .text "@"
        .byte $7f,$c1,$aa,$c1,$a7,$c4,$aa,$7f       // scrcode: ........
        .text "@cg"
        .byte $7f                                   // scrcode: .
        .text "@dg"
        .byte $7f                                   // scrcode: .
        .text "ll"
        .text "@"
        .byte $7f                                   // scrcode: .
        .text "@@@"
        .byte $7f,$41                               // scrcode: ..
        .text "@"
        .byte $81,$41,$81,$41,$80                   // scrcode: .....
        .text "pd"
        .byte $41,$41,$41                           // scrcode: ...
        .text "@"
        .byte $41,$41,$41                           // scrcode: ...
        .text "@sspbqq"
        .byte $41                                   // scrcode: .
        .text "b"
        .byte $ff,$ff,$ff                           // scrcode: ...
        .text "a8ja"
        .byte $8f                                   // scrcode: .
        .text "*"
        .text "fa"
        .byte $a0                                   // scrcode: .
        .text "@@@@ab @"
        .byte $80                                   // scrcode: .
        .text "@@@dc0@@@@@@@@@@@@@"
        .byte $c8                                   // scrcode: .
        .text "h@hhdb@"
        .byte $c8                                   // scrcode: .
        .byte $48                                   // scrcode: .
        .text " dd@@@"
        .byte $c8,$48                               // scrcode: ..
        .text " ddd@@"
        .byte $8a,$ef                               // scrcode: ..
        .text "pnldi@"
        .byte $8a,$ef                               // scrcode: ..
        .text "pnldm@"
        .byte $e8                                   // scrcode: .
        .text "@@@ldqd"
        .byte $a8                                   // scrcode: .
        .text "t"
        .byte $40                                   // scrcode: .
        .text "alhu@@@@@@@@@"
        .byte $40                                   // scrcode: .
        .text "@"
        .byte $80                                   // scrcode: .
        .text "a@"
        .byte $a0,$80                               // scrcode: ..
        .text "@"
        .encoding "petscii_upper"

spr_1680:
        .encoding "screencode_mixed"
        .text "@"
        .byte $8c                                   // scrcode: .
        .text "a"
        .byte $8c                                   // scrcode: .
        .text "a"
        .byte $87                                   // scrcode: .
        .text "ae"
        .byte $8c                                   // scrcode: .
        .text "aa"
        .byte $91                                   // scrcode: .
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "e"
        .byte $8c                                   // scrcode: .
        .text "aa"
        .byte $87                                   // scrcode: .
        .text "ae"
        .byte $8c                                   // scrcode: .
        .text "aa"
        .byte $91                                   // scrcode: .
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "e"
        .byte $8c                                   // scrcode: .
        .text "aa"
        .byte $87                                   // scrcode: .
        .text "ae"
        .byte $8c                                   // scrcode: .
        .text "aa"
        .byte $91                                   // scrcode: .
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "e"
        .byte $ff,$8c                               // scrcode: ..
        .text "b"
        .byte $8c                                   // scrcode: .
        .text "c"
        .byte $87                                   // scrcode: .
        .text "bc"
        .byte $8c                                   // scrcode: .
        .text "bc"
        .byte $85                                   // scrcode: .
        .text "b"
        .byte $8a                                   // scrcode: .
        .text "d"
        .byte $8c                                   // scrcode: .
        .text "bc"
        .byte $87                                   // scrcode: .
        .text "bc"
        .byte $8c                                   // scrcode: .
        .text "bc"
        .byte $85                                   // scrcode: .
        .text "b"
        .byte $8a                                   // scrcode: .
        .text "d"
        .byte $8c                                   // scrcode: .
        .text "bc"
        .byte $87                                   // scrcode: .
        .text "bc"
        .byte $8c                                   // scrcode: .
        .text "bc"
        .byte $85                                   // scrcode: .
        .text "b"
        .byte $8a                                   // scrcode: .
        .text "d"
        .byte $ff,$8c                               // scrcode: ..
        .text "f"
        .byte $8c                                   // scrcode: .
        .text "g"
        .byte $87                                   // scrcode: .
        .text "fg"
        .byte $8c                                   // scrcode: .
        .text "fg"
        .byte $91                                   // scrcode: .
        .text "f"
        .byte $8f                                   // scrcode: .
        .text "h"
        .byte $8c                                   // scrcode: .
        .text "ijkl"
        .byte $ff                                   // scrcode: .
        .text "adr"
        .byte $1e                                   // scrcode: .
        .text ".>"
        .byte $4d,$58,$63,$73,$a9,$e6               // scrcode: ......
        .text ",wwww"
        .fill 8, $17                                // scrcode: WWWWWWWW
        .text "x"
        .byte $80                                   // scrcode: .
        .text "@"
        .byte $7f,$a3,$81                           // scrcode: ...
        .text "llol"
        .byte $a1                                   // scrcode: .
        .text "l"
        .byte $a3                                   // scrcode: .
        .text "l"
        .byte $a2,$83                               // scrcode: ..
        .text "j"
        .byte $7f,$a4,$83                           // scrcode: ...
        .text "0"
        .byte $81                                   // scrcode: .
        .text "@"
        .byte $83                                   // scrcode: .
        .text "0"
        .byte $81                                   // scrcode: .
        .text "@"
        .byte $83                                   // scrcode: .
        .text "0"
        .byte $7f,$a4,$83,$7e,$81                   // scrcode: .....
        .text "0"
        .byte $82                                   // scrcode: .
        .text "0"
        .byte $80                                   // scrcode: .
        .text "@"
        .byte $81                                   // scrcode: .
        .text "0"
        .byte $82                                   // scrcode: .
        .text "0"
        .byte $80                                   // scrcode: .
        .text "@"
        .byte $7f,$a5,$81                           // scrcode: ...
        .text "000"
        .byte $82                                   // scrcode: .
        .text "0"
        .byte $80                                   // scrcode: .
        .text "@"
        .byte $81                                   // scrcode: .
        .text "0"
        .byte $82                                   // scrcode: .
        .text "0"
        .byte $80                                   // scrcode: .
        .text "@"
        .byte $7f,$a3,$81                           // scrcode: ...
        .text "llol"
        .byte $a1                                   // scrcode: .
        .text "l"
        .byte $a3                                   // scrcode: .
        .text "l"
        .byte $a2                                   // scrcode: .
        .text "j"
        .byte $a1                                   // scrcode: .
        .text "l"
        .byte $7f,$a6,$81                           // scrcode: ...
        .encoding "petscii_upper"

txt_174f:
        .text "02302302"
        .byte $7f,$a6,$81                           // scrcode: ...

txt_175a:
        .text "02302320"
        .encoding "screencode_mixed"
        .byte $7f,$a7,$81                           // scrcode: ...
        .text "2"
        .byte $80                                   // scrcode: .
        .text "0@2@"
        .byte $83                                   // scrcode: .
        .text "4"
        .byte $80                                   // scrcode: .
        .text "0@"
        .byte $83                                   // scrcode: .
        .text "-"
        .byte $7f,$a7,$88                           // scrcode: ...
        .text "0"
        .byte $80                                   // scrcode: .
        .text "@"
        .byte $84                                   // scrcode: .
        .text "2"
        .byte $80                                   // scrcode: .
        .text "@"
        .byte $c0,$81                               // scrcode: ..
        .text "2"
        .byte $90                                   // scrcode: .
        .text "3"
        .byte $81,$7e,$80                           // scrcode: ...
        .text "@"
        .byte $82                                   // scrcode: .
        .text "2"
        .byte $80                                   // scrcode: .
        .text "@"
        .byte $82                                   // scrcode: .
        .text "0@"
        .byte $84                                   // scrcode: .
        .text "2"
        .byte $80                                   // scrcode: .
        .text "@"
        .byte $81                                   // scrcode: .
        .text "0@"
        .byte $80                                   // scrcode: .
        .text ".@"
        .byte $82                                   // scrcode: .
        .text ")"
        .byte $80                                   // scrcode: .
        .text "@"
        .byte $84                                   // scrcode: .
        .text "+"
        .byte $80                                   // scrcode: .
        .text "@.@0@2@"
        .byte $82                                   // scrcode: .
        .text "3"
        .byte $80                                   // scrcode: .
        .text "@"
        .byte $7f,$a7,$88                           // scrcode: ...
        .text "0"
        .byte $80                                   // scrcode: .
        .text "@"
        .byte $84                                   // scrcode: .
        .text "7"
        .byte $80                                   // scrcode: .
        .text "@"
        .text "5@3"
        .byte $82                                   // scrcode: .
        .text "@"
        .byte $80                                   // scrcode: .
        .text "2"
        .byte $82                                   // scrcode: .
        .text "@"
        .byte $81                                   // scrcode: .
        .text "."
        .byte $83                                   // scrcode: .
        .text "@"
        .byte $c1,$81                               // scrcode: ..
        .text "5"
        .byte $90                                   // scrcode: .
        .text "7"
        .byte $80,$7e                               // scrcode: ..
        .text ":@7"
        .byte $82                                   // scrcode: .
        .text "@"
        .byte $80                                   // scrcode: .
        .text ":"
        .byte $82                                   // scrcode: .
        .text "@"
        .byte $c2,$81                               // scrcode: ..
        .text ":"
        .byte $90                                   // scrcode: .
        .text "<"
        .byte $c3,$80,$7e                           // scrcode: ...
        .text ":@7"
        .text "@6@5@3@0@.@"
        .byte $7f,$a7,$81                           // scrcode: ...
        .text "0"
        .byte $80                                   // scrcode: .
        .text ".@+@"
        .byte $c1,$81                               // scrcode: ..
        .text "."
        .byte $90                                   // scrcode: .
        .text "0"
        .byte $80,$7e                               // scrcode: ..
        .text "0@2@3@"
        .byte $83                                   // scrcode: .
        .text "20"
        .byte $81                                   // scrcode: .
        .text "."
        .byte $80                                   // scrcode: .
        .text "+"
        .text "@)@"
        .byte $c0,$81                               // scrcode: ..
        .text ")"
        .byte $90                                   // scrcode: .
        .text "+"
        .byte $80,$7e                               // scrcode: ..
        .text ":@5@"
        .byte $c2,$81                               // scrcode: ..
        .text "5"
        .byte $90                                   // scrcode: .
        .text "7"
        .byte $80                                   // scrcode: .
        .encoding "petscii_upper"

// --- Region $181b-$1b72 ---
.pc = $181b "dat_181b"

dat_181b:
        .byte $3c,$00
        .byte $3f,$00
        .byte $3e,$00
        .byte $3c,$00
        .byte $35,$90
        .byte $37,$81
        .text "532."
        .byte $7f,$a7,$81,$30,$80,$2e,$00,$2b,$00,$c1,$81,$2e,$90,$30,$80,$7e // ...0...+.....0.~
        .byte $2b,$00,$2e,$00,$30,$00,$81,$33,$80,$32,$00,$30,$00,$33,$00,$81 // +...0..3.2.0.3..

txt_184b:
        .text "2037<>?"
        .byte $83,$3c,$80,$3a,$00,$3f,$00,$3c,$00,$c2,$81,$41,$90,$43,$82,$7e // .<.:.?.<...A.C.~
        .byte $81,$42,$41,$80,$3f,$00,$3c,$00,$3a,$00,$7f,$00,$ff,$00,$ff,$00 // .BA.?.<.:.......
        .byte $ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$00,$00 // ................
        .fill 8, $00
        .byte $c0,$91,$05,$96,$01,$01,$01,$01,$01,$01,$01,$01,$07,$0c,$07,$0c // ................
        .byte $99,$01,$01,$01,$01,$07,$0c,$07,$0c,$ff,$8a,$02,$02,$02,$02,$02 // ................
        .byte $02,$02,$02,$02,$08,$0b,$08,$0b,$8d,$02,$02,$02,$02,$08,$0b,$08 // ................
        .byte $0b,$ff,$91,$06,$06,$87,$0d,$8a,$03,$04,$03,$04,$96,$06,$87,$0d // ................
        .byte $8a,$09,$0a,$09,$0a,$8d,$03,$04,$03,$04,$09,$0a,$09,$0a,$ff,$f5 // ................
        .byte $f8,$34,$8e,$b0,$cd,$d4,$da,$16,$71,$94,$c4,$1f,$5b,$18,$18,$19 // .4......q...[...
        .byte $19,$19,$19,$19,$19,$1a,$1a,$1a,$1a,$1b,$1b,$80,$00,$7f,$a0,$85 // ................
        .byte $09,$80,$09,$00,$a2,$07,$84,$00,$a0,$80,$07,$00,$a0,$85,$05,$a0 // ................
        .byte $80,$05,$00,$a2,$07,$84,$00,$a0,$80,$09,$00,$85,$07,$80,$07,$00 // ................
        .byte $a2,$13,$84,$00,$a0,$80,$0c,$00,$85,$05,$80,$05,$00,$a2,$13,$00 // ................
        .byte $a1,$81,$10,$c0,$0e,$90,$10,$80,$7e,$7f,$a3,$80,$09,$00,$a4,$81 // ........~.......
        .byte $00,$80,$2d,$00,$a3,$09,$00,$a4,$2d,$82,$00,$80,$2d,$00,$a3,$09 // ..-.....-...-...
        .byte $00,$a3,$09,$82,$00,$a5,$80,$2d,$00,$a3,$09,$00,$a5,$2d,$82,$00 // .......-.....-..
        .byte $80,$2d,$00,$a3,$09,$00,$a3,$09,$00,$a6,$81,$00,$80,$2d,$00,$a3 // .-...........-..
        .byte $09,$00,$a6,$2d,$82,$00,$a6,$80,$2d,$00,$a3,$09,$00,$a3,$09,$00 // ...-....-.......
        .byte $a5,$2d,$00,$a3,$09,$82,$00,$a5,$80,$2d,$82,$00,$a5,$80,$2d,$00 // .-.......-....-.
        .byte $a5,$2d,$00,$7f,$ab,$87,$2d,$80,$28,$00,$2d,$00,$2f,$00,$81,$30 // .-....-.(.-./..0
        .byte $c3,$7e
        .byte $2f,$8b
        .byte $2d,$83
        .byte $2b,$81
        .text "&+-/"
        .byte $83
        .byte $2b,$89
        .byte $2d
        .byte $c3,$81,$7e,$83,$2b,$7f,$ab,$87,$2d,$80,$28,$00,$2d,$00,$2f,$00 // ..~.+...-.(.-./.
        .byte $81,$35,$c4,$7e,$90,$34,$80,$7e,$8b,$30,$83,$2f,$2b,$26,$8f,$2d // .5.~.4.~.0./+&.-
        .byte $83,$7e,$7f,$a7,$8f,$09,$7e,$7e,$7e,$7f,$8f,$00,$00,$00,$00,$7f // .~....~~~.......
        .byte $a0,$85,$05,$80,$05,$00,$a2,$07,$84,$00,$a0,$80,$07,$00,$a0,$85 // ................
        .byte $07,$a0,$80,$07,$00,$a2,$07,$84,$00,$a0,$80,$09,$00,$85,$05,$80 // ................
        .byte $05,$00,$a2,$13,$84,$00,$a0,$80,$0c,$00,$85,$07,$80,$07,$00,$a2 // ................
        .byte $13,$00,$a1,$81,$10,$c0,$0e,$90,$10,$80,$7e,$7f,$a3,$80,$09,$00 // ..........~.....
        .byte $a5,$81,$00,$80,$2d,$00,$a3,$09,$00,$a5,$2d,$82,$00,$a5,$80,$2d // ....-.....-....-
        .byte $00,$a3,$26,$00,$a6,$2d,$82,$00,$a6,$80,$2d,$00,$a3,$09,$00,$a6 // ..&..-....-.....
        .byte $2d,$82,$00,$a6,$80,$2d,$00,$a3,$09,$00,$a5,$2d,$82,$00,$80,$2d // -....-.....-...-
        .byte $00,$a3,$09,$00,$a5,$2d,$82,$00,$a5,$80,$2d,$00,$a3,$09,$00,$a3 // .....-....-.....
        .byte $09,$00,$a6,$2d,$00,$a3,$09,$00,$a6,$2d,$00,$a6,$2d,$82,$00,$a6 // ...-.....-..-...
        .byte $80,$2d,$00,$a6,$2d,$00,$7f,$ab,$83,$30,$2d,$30,$82,$32,$80,$00 // .-..-....0-0.2..
        .byte $c1,$81,$2d,$90,$2f,$84,$7e,$83,$2d,$82,$2b,$80,$00,$87,$29,$83 // ..-./.~.-.+...).
        .byte $2d,$80,$30,$82,$00,$83,$2f,$8b,$2b,$7f,$ab,$83,$30,$2d,$30,$82 // -.0.../.+...0-0.
        .byte $32,$80,$00,$c1,$81,$2d,$90,$2f,$84,$7e,$83,$2d,$82,$2b,$80,$00 // 2....-./.~.-.+..
        .byte $c7,$81,$2b,$90,$2d,$8c,$7e,$ad,$80,$28,$00,$28,$82,$00,$80,$26 // ..+.-.~..(.(...&
        .byte $00,$26,$82,$00,$80,$24,$00,$24,$00,$7f,$a3,$80,$09,$00,$a5,$81 // .&...$.$........
        .byte $00,$80,$2d,$00,$a3,$09,$00,$a5,$2d,$82,$00,$a5,$80,$2d,$00,$a3 // ..-.....-....-..
        .byte $26,$00,$a6,$2d,$82,$00,$a6,$80,$2d,$00,$a3,$09,$00,$a6,$2d,$82 // &..-....-.....-.
        .byte $00,$a6,$80,$2d,$00,$a3,$09,$00,$ac,$2d,$82,$00,$80,$2d,$00,$a3 // ...-.....-...-..
        .byte $09,$00,$ac,$2d,$82,$00,$ac,$80,$2d,$00,$a3,$09,$00,$a3,$09,$00 // ...-....-.......
        .byte $ac,$2d,$00,$a3,$09,$00,$ac,$2d,$00,$ac,$2d,$82,$00,$ac,$80,$2d // .-.....-..-....-
        .byte $00,$ac,$2d,$00,$7f,$a0,$85,$05,$80,$05,$00,$a2,$07,$84,$00,$a0 // ..-.............
        .byte $80,$07,$00,$a0,$85,$07,$a0,$80,$07,$00,$a2,$07,$84,$00,$a0,$80 // ................
        .byte $07,$00,$85,$09,$80,$09,$00,$a2,$13,$84,$00,$a0,$80,$0c,$00,$85 // ................
        .byte $09,$80,$09,$00,$a2,$13,$00,$a1,$81,$10,$c0,$0e,$90,$10,$80,$7e // ...............~
        .byte $7f,$8f,$00,$00,$00,$ad,$80,$28,$00,$28,$82,$00,$80,$26,$00,$26 // .......(.(...&.&
        .byte $82,$00,$80,$24,$00,$24,$00,$7f       // ...$.$..

dat_1b72:
        // === Fill data (1 bytes, $1b72-$1b72) ===
        .byte $00                                   // .

// --- Region $1c00-$1c00 ---
.pc = $1c00 "scr_1c00"

scr_1c00:
        .byte $00                                   // .

// --- Region $1cdd-$1d4f ---
.pc = $1cdd "Segment $1cdd"
        .byte $a9,$34,$85,$01,$a2,$00,$bd,$00,$2f,$9d,$01,$08,$e8,$d0,$f7,$ee // .4....../.......
        .byte $0c,$01,$ee,$09,$01,$d0,$ed,$a9,$37,$85,$01,$58,$4c,$e2,$fc,$00 // ........7..XL...
        .byte $00,$00,$00                           // ...

txt_1d00:
        .text "MJGDA>;852/,)'$"
        .byte $22                                   // double quote character
        .byte $1f,$1d,$1a,$18,$16,$14,$12,$10,$0e,$0c,$0b,$09,$08,$07,$06,$04 // ................
        .byte $04,$03,$02,$02,$01,$01,$01,$01,$01,$01,$01,$01,$02,$03,$03,$04 // ................
        .byte $05,$06,$08,$09,$0b,$0c,$0e,$10,$11,$13,$16,$18,$1a,$1c,$1f // ...............

txt_1d3f:
        .text "!$&),/247:="
        .byte $40                                   // @ character
        .text "DGJMP"

// --- Region $1d8b-$1eaf ---
.pc = $1d8b "Segment $1d8b"
        .encoding "screencode_mixed"
        .fill 13, $00                               // scrcode: @@@@@@@@@@@@@
        .byte $1c                                   // scrcode: .
        .text "zxwutrqonlkjihgfeddcccccccccddefghijkln"
        .text "oprsuwxz"
        .byte $1c,$1e                               // scrcode: ..
        .encoding "petscii_upper"

txt_1dca:
        .text " !#%&()*,-./012344555555555443210/.-,*)'&$#! "
        .encoding "screencode_mixed"
        .byte $1e,$1c                               // scrcode: ..
        .text "@@@@@@@dhhhhhhafdncma@@amcndf@@eahhhhh"
        .text "aiihheeggmmggeehhii@@@@@@@@@@@@@@kklloog"
        .text "gmmggoollkk@@@@@@@@@@@@@@iihheeggmm@@@@@"
        .text "@ikhlogaagolhki@@uvppqrstuvwpqrstuvwpqrs"
        .text "tuvwpqrstuvwpqrstuvwpqrst"
        .encoding "petscii_upper"

// --- Region $1f00-$1f87 ---
.pc = $1f00 "Segment $1f00"
        .encoding "screencode_mixed"
        .text "@ikhlogaagolhkkkllooggmkkllooggmkklloogg"
        .text "mkkllooggmkkllooggmkkllooggmikhikhikhiik"
        .text "hlogaagolhkihkihkihkihkihkiilhkiiiiiiiii"
        .fill 10, $09                               // scrcode: IIIIIIIIII
        .text "@@@@@@"
        .encoding "petscii_upper"

// --- Region $1ffb-$277d ---
.pc = $1ffb "Segment $1ffb"
        .encoding "screencode_mixed"
        .text "@@@@@"
        .encoding "petscii_upper"

scr_2000:
        // === Charset data (1918 bytes, $2000-$277d) ===
        .byte $1f,$15,$15,$15,$16,$15,$15,$16       // char 0 @+0
        .byte $ff                                   // char 1 (partial)

txt_2009:
        .byte $55,$55,$55,$aa                       // char 1 (partial)

txt_200d:
        .byte $55,$55,$aa                           // char 1 (partial)
        .byte $ff                                   // char 2 (partial)

txt_2011:
        .byte $56,$55,$55,$aa                       // char 2 (partial)

txt_2015:
        .byte $55,$55,$aa                           // char 2 (partial)
        .byte $c0,$fc,$af,$5b,$ab                   // char 3 (partial)

txt_201d:
        .byte $56,$55,$aa                           // char 3 (partial)
        .byte $00,$00,$00,$c0,$c0,$f0,$b0,$f0       // char 4 @+4
        .byte $00,$00,$00,$01,$01,$05,$05,$05       // char 5 @+5
        .byte $03,$15,$55,$55,$6a                   // char 6 (partial)

txt_2035:
        .byte $55,$55,$aa                           // char 6 (partial)
        .byte $ff                                   // char 7 (partial)

txt_2039:
        .byte $56,$55,$55,$aa                       // char 7 (partial)

txt_203d:
        .byte $55,$55,$aa                           // char 7 (partial)

spr_2040:
        .byte $c0,$fc,$af,$5b,$ab                   // char 8 (partial)

txt_2045:
        .byte $56,$55,$aa                           // char 8 (partial)
        .byte $00,$00,$00,$c0,$c0,$f0,$b0,$f0       // char 9 @+9
        .byte $1f,$15,$15,$15,$16,$15,$15,$16       // char 10 @+10
        .byte $ff                                   // char 11 (partial)

txt_2059:
        .byte $55,$55,$55,$aa                       // char 11 (partial)

txt_205d:
        .byte $55,$55,$aa                           // char 11 (partial)
        .byte $ff                                   // char 12 (partial)

txt_2061:
        .byte $56,$55,$55,$aa                       // char 12 (partial)

txt_2065:
        .byte $55,$55,$aa                           // char 12 (partial)
        .byte $c0,$fc,$af,$5b,$ab                   // char 13 (partial)

txt_206d:
        .byte $56,$55,$aa                           // char 13 (partial)
        .byte $00,$00,$00,$c0,$c0,$f0,$b0,$f0       // char 14 @+14
        .byte $1f,$15,$15,$15,$16,$15,$15,$16       // char 15 @+15
        .byte $ff,$5b,$5b,$5b,$af,$5b,$5b,$af       // char 16 @+16
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 17 @+17
        .byte $7f                                   // char 18 (partial)

txt_2091:
        .byte $55,$55,$55,$5a,$55,$55,$5a           // char 18 (partial)
        .byte $fc,$6c,$6c,$6c,$bc,$6c,$6c,$bc       // char 19 @+19
        .byte $00,$00,$00,$01,$01,$05,$05,$05       // char 20 @+20
        .byte $03,$15,$55,$55,$6a                   // char 21 (partial)

txt_20ad:
        .byte $55,$55,$aa                           // char 21 (partial)
        .byte $ff                                   // char 22 (partial)

txt_20b1:
        .byte $56,$55,$55,$aa                       // char 22 (partial)

txt_20b5:
        .byte $55,$55,$aa                           // char 22 (partial)
        .byte $c0,$fc,$af,$5b,$ab                   // char 23 (partial)

txt_20bd:
        .byte $56,$55,$aa                           // char 23 (partial)

spr_20c0:
        .byte $00,$00,$00,$c0,$c0,$f0,$b0,$f0       // char 24 @+24
        .byte $00,$00,$00,$01,$01,$05,$05,$05       // char 25 @+25
        .byte $03,$15,$55,$55,$6a                   // char 26 (partial)

txt_20d5:
        .byte $55,$55,$aa                           // char 26 (partial)
        .byte $ff                                   // char 27 (partial)

txt_20d9:
        .byte $56,$55,$55,$aa                       // char 27 (partial)

txt_20dd:
        .byte $55,$55,$aa                           // char 27 (partial)
        .byte $c0,$fc,$af,$5b,$ab                   // char 28 (partial)

txt_20e5:
        .byte $56,$55,$aa                           // char 28 (partial)
        .byte $00,$00,$00,$c0,$c0,$f0,$b0,$f0       // char 29 @+29
        .byte $1f,$15,$15,$15,$16,$15,$15,$16       // char 30 @+30
        .byte $ff                                   // char 31 (partial)

txt_20f9:
        .byte $55,$55,$55,$aa                       // char 31 (partial)

txt_20fd:
        .byte $55,$55,$aa                           // char 31 (partial)
        .byte $ff                                   // char 32 (partial)

txt_2101:
        .byte $56,$55,$55,$aa                       // char 32 (partial)

txt_2105:
        .byte $55,$55,$aa                           // char 32 (partial)
        .byte $c0,$fc,$af,$5b,$ab                   // char 33 (partial)

txt_210d:
        .byte $56,$55,$aa                           // char 33 (partial)
        .byte $00,$00,$00,$c0,$c0,$f0,$b0,$f0       // char 34 '"'
        .byte $00,$00,$00,$01,$01,$05,$05,$05       // char 35 '#'
        .byte $03,$15,$55,$55,$6a                   // char 36 (partial)

txt_2125:
        .byte $55,$55,$aa                           // char 36 (partial)
        .byte $ff                                   // char 37 (partial)

txt_2129:
        .byte $56,$55,$55,$aa                       // char 37 (partial)

txt_212d:
        .byte $55,$55,$aa                           // char 37 (partial)
        .byte $c0,$fc,$af,$5b,$ab                   // char 38 (partial)

txt_2135:
        .byte $56,$55,$aa                           // char 38 (partial)
        .byte $00,$00,$00,$c0,$c0,$f0,$b0,$f0       // char 39 '''
        .byte $16,$15,$16,$16,$16,$1b,$16,$16       // char 40 '('
        .byte $aa,$5b,$af,$af,$af,$f3,$af,$af       // char 41 ')'
        .byte $aa,$55,$05,$01,$01,$01,$01,$01       // char 42 '*'
        .byte $aa,$55,$aa,$6a,$6a,$bf,$6a,$6a       // char 43 '+'
        .byte $f0,$bc,$bc,$bc,$bc,$cc,$bc,$bc       // char 44 ','
        .byte $05,$15,$16,$16,$16,$1b,$16,$16       // char 45 '-'
        .byte $aa,$55,$aa,$ab,$ab,$f3,$af,$af       // char 46 '.'
        .byte $aa,$55,$f5,$f5,$c1,$c1,$00,$00       // char 47 '/'
        .byte $aa,$55,$aa,$6a,$6a,$6f,$5a,$5a       // char 48 '0'
        .byte $f0,$bc,$bc,$bc,$bc,$cc,$bc,$bc       // char 49 '1'
        .byte $16,$15,$16,$16,$16,$1b,$16,$16       // char 50 '2'
        .byte $aa,$5b,$af,$af,$af,$f3,$af,$af       // char 51 '3'
        .byte $aa,$55,$05,$01,$01,$01,$01,$01       // char 52 '4'
        .byte $aa,$55,$aa,$6a,$6a,$bf,$6a,$6a       // char 53 '5'
        .byte $f0,$bc,$bc,$bc,$bc,$cc,$bc,$bc       // char 54 '6'
        .byte $16,$15,$16,$16,$16,$1b,$16,$16       // char 55 '7'
        .byte $af,$5b,$af,$af,$af,$f3,$af,$aa       // char 56 '8'
        .byte $00,$00,$00,$00,$00,$c1,$ff,$aa       // char 57 '9'
        .byte $5a,$55,$5a,$5a,$5a,$6f,$ea,$aa       // char 58 ':'
        .byte $bc,$6c,$bc,$bc,$bc,$cc,$bc,$bc       // char 59 ';'
        .byte $05,$15,$16,$16,$16,$1b,$16,$16       // char 60 '<'
        .byte $aa,$55,$aa,$aa,$af,$f3,$af,$af       // char 61 '='
        .byte $aa,$55,$aa,$55,$c1,$00,$00,$00       // char 62 '>'
        .byte $aa,$55,$aa,$6a,$5a,$6f,$5a,$5a       // char 63 '?'
        .byte $f0,$bc,$bc,$bc,$bc,$cc,$bc,$bc       // char 64 '@'
        .byte $05,$15,$16,$16,$16,$1b,$16,$16       // char 65 'A'
        .byte $aa,$55,$aa,$ab,$ab,$f3,$af,$af       // char 66 'B'
        .byte $aa,$55,$f5,$f5,$c1,$c1,$00,$00       // char 67 'C'
        .byte $aa,$55,$aa,$6a,$6a,$6f,$5a,$5a       // char 68 'D'
        .byte $f0,$bc,$bc,$bc,$bc,$cc,$bc,$bc       // char 69 'E'
        .byte $16,$15,$16,$16,$16,$1b,$16,$16       // char 70 'F'
        .byte $aa,$55,$aa,$ad,$af,$f3,$af,$af       // char 71 'G'
        .byte $aa,$55,$aa,$55,$01,$00,$00,$00       // char 72 'H'
        .byte $aa,$55,$aa,$6a,$5a,$6f,$5a,$5a       // char 73 'I'
        .byte $f0,$bc,$bc,$bc,$bc,$cc,$bc,$bc       // char 74 'J'
        .byte $05,$15,$16,$16,$16,$1b,$16,$16       // char 75 'K'
        .byte $aa,$55,$aa,$aa,$af,$f3,$af,$af       // char 76 'L'
        .byte $aa,$55,$aa,$55,$c1,$00,$00,$00       // char 77 'M'
        .byte $aa,$55,$aa,$6a,$5a,$6f,$5a,$5a       // char 78 'N'
        .byte $f0,$bc,$bc,$bc,$bc,$cc,$bc,$bc       // char 79 'O'
        .byte $1b,$1b,$16,$1b,$1b,$1b,$1c,$1b       // char 80 'P'
        .byte $f3,$f3,$af,$f3,$ff,$ff,$00,$ff       // char 81 'Q'
        .byte $01,$01,$05,$fe,$ff,$ff,$00,$ff       // char 82 'R'
        .byte $bf,$bf,$6a,$ff,$fc,$fc,$03,$cf       // char 83 'S'
        .byte $3c,$30,$f0,$30,$f0,$c0,$c0,$00       // char 84 'T'
        .byte $1b,$1b,$16,$1b,$1b,$1b,$1c,$1b       // char 85 'U'
        .byte $f3,$f3,$af,$f3,$f3,$f3,$00,$ff       // char 86 'V'
        .byte $00,$00,$00,$00,$00,$ff,$00,$ff       // char 87 'W'
        .byte $6f,$6f,$5a,$6f,$6f,$6f,$00,$ff       // char 88 'X'
        .byte $cc,$cc,$bc,$cc,$cc,$cc,$0c,$cc       // char 89 'Y'
        .byte $1b,$1b,$16,$1b,$1b,$1b,$1c,$1b       // char 90 'Z'
        .byte $f3,$f3,$af,$f3,$ff,$ff,$00,$ff       // char 91 '['
        .byte $01,$01,$05,$fe,$ff,$ff,$00,$ff       // char 92 '\'
        .byte $bf,$bf,$6a,$ff,$fc,$fc,$03,$cf       // char 93 ']'
        .byte $3c,$30,$f0,$30,$f0,$c0,$c0,$00       // char 94 '^'
        .byte $1b,$1b,$16,$16,$06,$05,$01,$00       // char 95 '_'
        .byte $ff,$ff,$aa,$ff,$ff,$bf,$5c,$15       // char 96 '`'
        .byte $ff,$ff,$aa,$ff,$ff,$ff,$00,$55       // char 97 'a'
        .byte $ff,$ff,$aa,$ff,$ff,$ff,$00,$bf       // char 98 'b'
        .byte $cc,$cc,$bc,$cc,$cc,$cc,$0c,$cc       // char 99 'c'
        .byte $1b,$1b,$16,$1b,$1b,$1b,$1c,$1b       // char 100 'd'
        .byte $f3,$f3,$af,$f3,$f3,$f3,$03,$f3       // char 101 'e'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 102 'f'
        .byte $6f,$55,$00,$00,$00,$00,$00,$7f       // char 103 'g'

spr_2340:
        .byte $cc,$5c,$00,$00,$00,$00,$00,$fc       // char 104 'h'
        .byte $1b,$1b,$16,$1b,$1b,$1b,$1c,$1b       // char 105 'i'
        .byte $f3,$f3,$af,$f3,$f3,$f3,$00,$ff       // char 106 'j'
        .byte $00,$00,$00,$00,$00,$ff,$00,$ff       // char 107 'k'
        .byte $6f,$6f,$5a,$6f,$6f,$6f,$00,$ff       // char 108 'l'
        .byte $cc,$cc,$bc,$cc,$cc,$cc,$0c,$cc       // char 109 'm'
        .byte $1b,$1b,$16,$1b,$1b,$1b,$1c,$1b       // char 110 'n'
        .byte $f3,$f3,$af,$f3,$f3,$f3,$03,$f3       // char 111 'o'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 112 'p'
        .byte $6f,$6f,$5a,$6f,$6f,$6f,$40,$6f       // char 113 'q'
        .byte $cc,$cc,$bc,$cc,$cc,$cc,$0c,$cc       // char 114 'r'
        .byte $1b,$1b,$16,$1b,$1b,$1b,$1c,$1b       // char 115 's'
        .byte $f3,$f3,$af,$f3,$f3,$f3,$03,$f3       // char 116 't'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 117 'u'
        .byte $6f,$55,$00,$00,$00,$00,$00,$7f       // char 118 'v'
        .byte $cc,$5c,$00,$00,$00,$00,$00,$fc       // char 119 'w'
        .byte $1b,$1c,$1c,$1b,$10,$1c,$13,$1f       // char 120 'x'
        .byte $ff,$00,$00,$ff,$03,$cf,$33,$ff       // char 121 'y'
        .byte $ff,$00,$00,$ff,$54,$05,$01,$01       // char 122 'z'
        .byte $cf,$03,$00,$fc,$00,$cc,$33,$ff       // char 123 '{'
        .byte $00,$c0,$c0,$f0,$30,$f0,$30,$fc       // char 124 '|'
        .byte $1b,$1c,$1c,$1b,$10,$13,$1c,$1f       // char 125 '}'
        .byte $ff,$00,$00,$ff,$00,$33,$cd,$ff       // char 126 '~'
        .byte $ff,$00,$00,$ff,$00,$33,$55,$00       // char 127

scr_2400:
        .byte $ff,$00,$00,$ff,$00,$33,$4c,$7f       // char 128
        .byte $cc,$0c,$0c,$cc,$0c,$3c,$cc,$fc       // char 129
        .byte $1b,$1c,$1c,$1b,$10,$1c,$13,$1f       // char 130
        .byte $ff,$00,$00,$ff,$03,$cf,$33,$ff       // char 131
        .byte $ff,$00,$00,$ff,$54,$05,$01,$01       // char 132
        .byte $cf,$03,$00,$fc,$00,$cc,$33,$ff       // char 133
        .byte $00,$c0,$c0,$f0,$30,$f0,$30,$fc       // char 134
        .byte $00,$00,$00,$00,$00,$1f,$1c,$1f       // char 135
        .byte $00,$00,$00,$00,$00,$ff,$cf,$ff       // char 136
        .byte $01,$00,$00,$00,$00,$00,$00,$00       // char 137
        .byte $6f,$70,$70,$6f,$40,$4c,$73,$7f       // char 138
        .byte $cc,$0c,$0c,$cc,$0c,$cc,$3c,$fc       // char 139
        .byte $1b,$1c,$1c,$1b,$10,$13,$1c,$1f       // char 140
        .byte $f3,$03,$03,$f3,$03,$33,$cf,$ff       // char 141
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 142
        .byte $6f,$70,$70,$6f,$40,$73,$4c,$7f       // char 143
        .byte $cc,$0c,$0c,$cc,$0c,$3c,$cc,$fc       // char 144
        .byte $1b,$1c,$1c,$1b,$10,$13,$1c,$1f       // char 145
        .byte $ff,$00,$00,$ff,$00,$33,$cd,$ff       // char 146
        .byte $ff,$00,$00,$ff,$00,$33,$55,$00       // char 147
        .byte $ff,$00,$00,$ff,$00,$33,$4c,$7f       // char 148
        .byte $cc,$0c,$0c,$cc,$0c,$3c,$cc,$fc       // char 149
        .byte $1b,$1c,$1c,$1b,$10,$13,$1c,$1f       // char 150
        .byte $f3,$03,$03,$f3,$03,$33,$cf,$ff       // char 151
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 152
        .byte $6f,$40,$40,$6f,$40,$4c,$73,$7f       // char 153
        .byte $cc,$0c,$0c,$cc,$0c,$cc,$3c,$fc       // char 154
        .byte $1b,$1c,$1c,$1b,$10,$13,$1c,$1f       // char 155
        .byte $f3,$03,$03,$f3,$03,$33,$cf,$ff       // char 156
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 157
        .byte $6f,$70,$70,$6f,$40,$73,$4c,$7f       // char 158
        .byte $cc,$0c,$0c,$cc,$0c,$3c,$cc,$fc       // char 159
        .byte $1e,$1b,$1a,$16,$19,$15,$16,$19       // char 160
        .byte $ef,$bb,$ab,$67,$9b,$57,$67,$99       // char 161
        .byte $01,$01,$01,$01,$01,$05,$fe,$99       // char 162
        .byte $ee,$bb,$aa,$66,$99,$55,$66,$99       // char 163
        .byte $ec,$bc,$ac,$6c,$9c,$5c,$7c,$b0       // char 164
        .byte $1b,$1e,$1a,$19,$16,$15,$19,$16       // char 165
        .byte $bb,$ef,$ab,$9b,$67,$57,$9b,$67       // char 166
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 167
        .byte $7b,$6e,$6a,$59,$66,$55,$59,$66       // char 168
        .byte $bc,$ec,$ac,$9c,$6c,$5c,$9c,$6c       // char 169
        .byte $1e,$1b,$1a,$16,$19,$15,$16,$19       // char 170
        .byte $ef,$bb,$ab,$67,$9b,$57,$67,$99       // char 171
        .byte $01,$01,$01,$01,$01,$05,$fe,$99       // char 172
        .byte $ee,$bb,$aa,$66,$99,$55,$66,$99       // char 173
        .byte $ec,$bc,$ac,$6c,$9c,$5c,$7c,$b0       // char 174
        .byte $1b,$1e,$1a,$19,$16,$15,$15,$06       // char 175
        .byte $bb,$ef,$ab,$9b,$66,$55,$99,$66       // char 176
        .byte $00,$00,$00,$c1,$ff,$55,$99,$66       // char 177
        .byte $6e,$7b,$6a,$66,$99,$55,$99,$66       // char 178
        .byte $ec,$bc,$ac,$6c,$9c,$5c,$bc,$70       // char 179
        .byte $1b,$1e,$1a,$19,$16,$15,$15,$06       // char 180
        .byte $bb,$ef,$ab,$9b,$66,$55,$99,$66       // char 181
        .byte $00,$00,$00,$c1,$ff,$55,$99,$66       // char 182
        .byte $7b,$6e,$6a,$59,$66,$55,$99,$66       // char 183
        .byte $bc,$ec,$ac,$9c,$6c,$5c,$bc,$70       // char 184
        .byte $1b,$1e,$1a,$19,$16,$15,$19,$16       // char 185
        .byte $bb,$ef,$ab,$9b,$67,$57,$9b,$67       // char 186
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 187
        .byte $7b,$6e,$6a,$59,$66,$55,$59,$66       // char 188
        .byte $bc,$ec,$ac,$9c,$6c,$5c,$9c,$6c       // char 189
        .byte $1b,$1e,$1a,$19,$16,$15,$19,$16       // char 190
        .byte $bb,$ef,$ab,$9b,$67,$57,$9b,$67       // char 191
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 192
        .byte $6e,$7b,$6a,$66,$59,$55,$66,$59       // char 193
        .byte $ec,$bc,$ac,$6c,$9c,$5c,$6c,$9c       // char 194
        .byte $1b,$1e,$1a,$19,$16,$15,$15,$06       // char 195
        .byte $bb,$ef,$ab,$9b,$66,$55,$99,$66       // char 196
        .byte $00,$00,$00,$c1,$ff,$55,$99,$66       // char 197
        .byte $7b,$6e,$6a,$59,$66,$55,$99,$66       // char 198
        .byte $bc,$ec,$ac,$9c,$6c,$5c,$bc,$70       // char 199
        .byte $1a,$1b,$1e,$1f,$13,$1c,$10,$15       // char 200
        .byte $aa,$bb,$ee,$ff,$33,$cc,$00,$55       // char 201
        .byte $aa,$bb,$ee,$ff,$33,$cc,$00,$55       // char 202
        .byte $aa,$bb,$ee,$ff,$33,$cf,$fc,$40       // char 203
        .byte $b0,$b0,$f0,$c0,$c0,$00,$00,$00       // char 204
        .byte $1a,$1b,$1e,$1f,$13,$1c,$10,$15       // char 205
        .byte $ab,$bb,$ef,$ff,$33,$cf,$03,$57       // char 206
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 207
        .byte $6a,$6e,$7b,$7f,$4c,$73               // char 208 (partial)

txt_2686:
        .byte $40,$55                               // char 208 (partial)
        .byte $ac,$ec,$bc,$fc,$cc,$3c,$0c,$5c       // char 209
        .byte $1a,$1b,$1e,$1f,$13,$1c,$10,$15       // char 210
        .byte $aa,$bb,$ee,$ff,$33,$cc,$00,$55       // char 211
        .byte $aa,$bb,$ee,$ff,$33,$cc,$00,$55       // char 212
        .byte $aa,$bb,$ee,$ff,$33,$cf,$fc,$40       // char 213
        .byte $b0,$b0,$f0,$c0,$c0,$00,$00,$00       // char 214
        .byte $06,$07,$05,$01,$01,$00,$00,$00       // char 215
        .byte $aa,$bb,$ee,$ff,$73,$5c,$15,$01       // char 216
        .byte $aa,$bb,$ee,$ff,$33,$cc,$00,$55       // char 217
        .byte $aa,$bb,$ee,$ff,$33,$cf,$fc,$40       // char 218
        .byte $b0,$b0,$f0,$c0,$c0,$00,$00,$00       // char 219
        .byte $06,$07,$05,$01,$01,$00,$00,$00       // char 220
        .byte $aa,$bb,$ee,$ff,$73,$5c,$15,$01       // char 221
        .byte $aa,$bb,$ee,$ff,$33,$cc,$00,$55       // char 222
        .byte $aa,$bb,$ee,$ff,$33,$cf,$fc,$40       // char 223
        .byte $b0,$b0,$f0,$c0,$c0,$00,$00,$00       // char 224
        .byte $1a,$1b,$1e,$1f,$13,$1c,$10,$15       // char 225
        .byte $ab,$bb,$ef,$ff,$33,$cf,$03,$57       // char 226
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 227
        .byte $6a,$6e,$7b,$7f,$4c,$73               // char 228 (partial)

txt_2726:
        .byte $40,$55                               // char 228 (partial)
        .byte $ac,$ec,$bc,$fc,$cc,$3c,$0c,$5c       // char 229
        .byte $1a,$1b,$1e,$1f,$13,$1c,$10,$15       // char 230
        .byte $ab,$bb,$ef,$ff,$33,$cf,$03,$55       // char 231

spr_2740:
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 232
        .byte $6a,$6e,$7b,$7f,$4c,$73               // char 233 (partial)

txt_274e:
        .byte $40,$55                               // char 233 (partial)
        .byte $ac,$ec,$bc,$fc,$cc,$3c,$0c,$54       // char 234
        .byte $06,$07,$05,$01,$01,$00,$00,$00       // char 235
        .byte $aa,$bb,$ee,$ff,$73,$5c,$15,$01       // char 236
        .byte $aa,$bb,$ee,$ff,$33,$cc,$00,$55       // char 237
        .byte $aa,$bb,$ee,$ff,$33,$cf,$fc,$40       // char 238
        .byte $b0,$b0,$f0,$c0,$c0                   // char 239 (partial)

dat_277d:
        // === Fill data (1 bytes, $277d-$277d) ===
        .byte $00                                   // .

// --- Region $2800-$2aa4 ---
.pc = $2800 "scr_2800"

scr_2800:
        .text "     "
        .byte $8d,$95,$93,$89,$83

txt_280a:
        .text " ..."
        .byte $0f,$0b

txt_2810:
        .text "!   "
        .byte $82,$85,$85,$92

txt_2818:
        .text " ..."
        .byte $0f,$0b

txt_281e:
        .text "!   "
        .byte $90,$8c,$81,$99,$82,$8f,$99

txt_2829:
        .text " ..."
        .byte $0f,$0b

txt_282f:
        .text "!    "
        .byte $06,$09,$0e,$05
        .byte $21,$20,$09
        .byte $20,$03,$01,$0e
        .byte $20,$13,$14,$01,$12,$14,$20,$14,$19,$10,$09,$0e,$07,$20,$14,$08 //  ..... ...... ..
        .byte $09,$13,$20,$28,$02,$0f,$12,$09,$0e,$07,$29,$20,$14,$05,$18,$14 // .. (......) ....

txt_285f:
        .text "...    "
        .byte $82,$8c,$8f,$8f,$84,$97,$99,$83,$88
        .byte $20,$06,$12,$0f,$0d,$20,$89,$8d,$81,$87,$85,$a0,$97,$8f,$92,$8b //  .... ..........
        .byte $93,$20,$17,$01,$13,$20,$03,$12,$01,$03,$0b,$05,$04,$20,$28,$97 // . ... ....... (.
        .byte $89,$94,$88,$8f,$95,$94,$20,$01,$0e,$19,$20,$13,$03,$15,$12,$10 // ...... ... .....
        .byte $0c,$05,$13,$29,$20,$02,$19,$20,$84,$81,$8e,$99 // ...) .. ....

txt_28ab:
        .text " ...     "
        .byte $81,$94,$8f,$8d
        .byte $20,$08,$01
        .byte $13,$20,$0a,$0f,$09,$0e,$05,$04,$20,$82,$81,$82,$99,$87,$81,$8e // . ...... .......
        .byte $87,$20,$13,$0f,$20,$09,$20,$13,$05,$0e,$04,$20,$0d,$19,$20,$10 // . .. . .... .. .
        .byte $05,$12,$13,$0f,$0e,$01,$0c,$20,$27,$93,$81,$8c,$81,$8d,$a0,$81 // ....... '.......
        .byte $8c,$8c,$85,$83,$8f,$95,$8d,$27,$20,$14,$0f,$20,$14,$08,$05,$13 // .......' .. ....
        .byte $05,$20,$03,$0f,$0f,$0c,$20,$07,$15,$19,$13,$20,$28,$93,$8f,$84 // . .... .... (...
        .byte $89,$95,$8d,$2c,$20,$8e,$94,$92,$93,$2c,$20,$87,$8f,$87,$8f,$8c // ..., ...., .....
        .byte $2c,$20,$8d,$83,$a0,$86,$8c,$99
        .text ",..."
        .byte $01,$0e,$04
        .byte $20
        .byte $14,$08,$05,$20,$12,$05,$13,$14       // ... ....

txt_2933:
        .text "!)...      "
        .byte $17,$01,$09,$14
        .byte $20
        .byte $06,$0f,$12,$20,$0f,$15,$12,$20,$8d,$85,$87,$81,$84,$85,$8d,$8f // ... ... ........
        .byte $20,$28,$09,$0e,$20,$01,$15,$07,$15,$13,$14 //  (.. ......

txt_295e:
        .text ").         "
        .byte $14,$12,$19
        .byte $20,$14
        .byte $0f,$20,$07,$15,$05,$13,$13           // . .....

txt_2975:
        .text ":   "
        .byte $14,$08,$05,$19
        .byte $27,$12,$05
        .byte $20,$93,$8d,$81,$8c
        .byte $8c,$93                               // ..

txt_2987:
        .text "    ..."
        .byte $14,$08,$05,$19
        .byte $27,$12,$05
        .byte $20,$93
        .byte $94,$95,$90,$89,$84,$93               // ......

txt_299d:
        .text "   ... "
        .byte $14,$08,$05,$19
        .byte $27,$12,$05
        .byte $20,$81
        .byte $97,$86,$95,$8c,$93                   // .....

txt_29b2:
        .text " ...     "
        .byte $06,$0f,$15,$0e,$04
        .byte $21,$20
        .byte $09,$14,$27,$13,$20,$94,$88,$85,$20,$8d,$85,$8d,$82,$85,$92,$93 // ..'. ... .......
        .byte $a0,$8f,$86,$a0,$94,$92,$81,$8e,$93,$83,$8f,$8d,$20,$28,$01,$07 // ............ (..
        .byte $01,$07,$01                           // ...

txt_29e5:
        .text "!), "
        .byte $14,$08,$05,$13,$05
        .byte $20,$0c,$01,$0d,$05,$12,$13
        .byte $20,$01,$12,$05,$20,$13,$14,$09,$0c,$0c,$20,$13,$05,$01,$12,$03 //  ... ..... .....
        .byte $08,$09,$0e,$07,$20,$06,$0f,$12,$20,$02,$12,$01,$09,$0e,$13,$20 // .... ... ...... 
        .byte $28,$08,$09,$08,$09                   // (....

txt_2a1a:
        .text "!!)  ..."
        .byte $14,$12,$01,$0e,$13,$03,$0f,$0d

txt_2a2a:
        .text " = 10 "
        .byte $0d,$05,$0d,$02,$05,$12,$13

txt_2a37:
        .text " = 10 "
        .byte $0c,$01,$0d

spr_2a40:
        .byte $05,$12,$13,$21,$60,$20,$20,$20,$97,$88,$81,$94,$a0,$81,$a0,$93 // ...!`   ........
        .byte $88,$81,$8d,$85                       // ....

txt_2a54:
        .text "!!!!        "
        .byte $0f,$0b,$01,$19
        .byte $2c,$20,$84,$81,$8e,$99,$20,$13,$0c,$05,$05,$10,$09,$0e,$07,$20 // , .... ........ 
        .byte $0f,$06,$06                           // ...

txt_2a77:
        .text " ... "
        .byte $02,$19,$05

txt_2a7f:
        .text " +++"

dat_2a83:
        // === Fill data (33 bytes, $2a83-$2aa3) ===
        .fill 33, $20

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

// --- Region $2c00-$2c00 ---
.pc = $2c00 "scr_2c00"

scr_2c00:
        .byte $00                                   // .

// --- Region $2d00-$2e4c ---
.pc = $2d00 "dat_2d00"

dat_2d00:
        .byte $20,$20,$07,$12,$05,$05,$14,$09,$0e,$07,$13,$20,$07,$0f,$20,$14 //   ......... .. .
        .byte $0f,$20,$0f,$15,$12,$20,$06,$12,$09,$05,$0e,$04,$13,$20,$0c,$09 // . ... ....... ..
        .byte $0b,$05                               // ..

txt_2d22:
        .text " :    "
        .byte $87,$85,$8e,$85,$93,$89,$93,$a0,$90,$92
        .byte $8f,$8a,$85,$83,$94,$20,$2d,$20,$0c,$05,$07,$05,$0e,$04,$20,$2d // ..... - ...... -
        .byte $20,$89,$8b,$81,$92,$89,$ab,$94,$81,$8c,$85,$8e,$94,$20,$2d,$20 //  ............ - 
        .byte $06,$01,$09,$12,$0c,$09,$07,$08,$14,$20,$2d,$20,$85,$98,$94,$81 // ......... - ....
        .byte $93,$99,$20,$2d,$20,$10,$01,$12,$01,$0d,$0f,$15,$0e,$14,$2b,$01 // .. - .........+.
        .byte $0c,$10,$08,$01,$20,$06,$0c,$09,$07,$08,$14,$20,$2d,$20 // .... ...... - 

spr_2d80:
        .byte $8f,$8e,$85,$97,$81,$99,$20,$2d,$20,$01,$14,$07,$20,$2d,$20,$84 // ...... - ... - .
        .byte $85,$90,$92,$85,$84,$81,$94,$8f,$92,$93,$20,$2d,$20,$03,$0f,$0e // .......... - ...
        .byte $14,$05,$18                           // ...

txt_2da3:
        .byte $20,$2d,$20,$ae,$ae,$ae,$a0,$81,$8e,$84,$a0,$94,$88,$85,$a0,$8f //  - .............
        .byte $94,$88,$85,$92,$93                   // .....

txt_2db8:
        .text " ... "
        .byte $13,$0f,$12,$12,$19
        .byte $20,$02,$15,$14
        .byte $20,$0e
        .byte $0f,$17,$20,$09,$14,$27,$13,$20,$32,$08,$30,$30,$20,$01,$0d,$20 // .. ..'. 2.00 .. 
        .byte $01,$0e,$04,$20,$09,$20,$01,$0d,$20,$16,$05,$12,$19,$20,$14,$09 // ... . .. .... ..
        .byte $12,$05,$04                           // ...

txt_2deb:
        .text " ...        "
        .byte $13,$05,$05
        .byte $20
        .byte $19,$01                               // ..

txt_2dfd:
        .text " ++++          "
        .byte $82
        .byte $81,$82,$99,$87,$81,$8e,$87           // .......

txt_2e14:
        .text "... "
        .byte $03
        .byte $27,$05,$13,$14
        .byte $20,$06,$0f,$15

txt_2e21:
        .text " !!!"

dat_2e25:
        // === Fill data (39 bytes, $2e25-$2e4b) ===
        .fill 39, $20

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