// ============================================
// output - Part 1 of 2
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:36:48
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0700  End: $3926  (12839 bytes)
// Crunched with Exomizer v2/v3 — depacked by emulation
// Packer entry: $080b (via BASIC SYS 2059)
// Entry point:  $2b00 (11008)
// IRQ handler:  $1f50 (nmi_1f50)
// IRQ handler:  $ea31 (irq_ea31)
// IRQ handler:  $2024 (irq_2024)
//
// Code: 2750 bytes, Data: 10089 bytes
// Labels: 320, Subroutines: 13
//
// Verification: 4 line(s) auto-corrected to .byte for exact byte matching
//
// Cross-references: all OK
// ============================================


// --- Region $1005-$10f8 ---
.pc = $1005 "loc_1005"

loc_1005:
        lda #$c5
        sta $d016
        jsr $fda3
        ldx #$49
        ldy #$10
        lda #$ca
        jsr sub_1030
        ldx #$08
        jsr sub_1020
        jmp loc_1050

scr_101e:
        // === Screen RAM (2 bytes, $101e-$101f) ===
        .encoding "screencode_mixed"
        .text "@@"
        .encoding "petscii_upper"

// Referenced by: jsr from $1018, $1078, $11a1, $1279, $2613, $2999, $29bd; branch from $102d
sub_1020: {
        txa
        ldx #$00
loop1:
        ldy #$00
loop2:
        dey
        bne loop2
        dex
        bne loop1
        tax
        dex
        bne sub_1020
        rts
}
// Referenced by: jsr from $1013, $10a5, $1255, $260e, $261c, $2994, $29a2, $2b36

sub_1030:
        sei
        stx $0314
        sty $0315
        sta $d012
// Referenced by: jsr from $1053

sub_103a:
        lda #$01
        sta $d01a
        sta $dc0d
        lda #$1b
        sta $d011
        cli
        rts

scr_1049:
        // === Screen RAM (7 bytes, $1049-$104f) ===
        .encoding "screencode_mixed"
        .byte $ee                                   // scrcode: .
        .text "y"
        .byte $d0,$4c                               // scrcode: ..
        .text "1"
        .byte $ea                                   // scrcode: .
        .text "@"
        .encoding "petscii_upper"

loc_1050:
        jsr $e518
        jsr sub_103a
        lda #$73
        ldy #$e4
        jsr $ab1e
        lda #$97
        ldx #$ff
        jsr $bdcd
        lda #$60
        ldy #$e4
        jsr $ab1e
        lda #$76
        ldy #$a3
        jsr $ab1e
        lda #$00
        sta $cc
        ldx #$08
        jsr sub_1020
        lda #$0e
        jsr sub_10f0
        lda #$0e
        sta $1110
        lda #$00
        sta $10fe
        sta $10ff
        lda #$1d
        sta $d018
        ldx #$4f
        lda #$1b

loc_1096:
        sta $06f8,x
        dex
        bpl loc_1096
        jsr sub_10c0
        ldx #$29
        ldy #$11
        lda #$ca
        jsr sub_1030
        ldx #$27

loc_10aa:
        lda #$1c
        sta $06f8,x
        lda #$1d
        sta $0720,x
        dex
        bpl loc_10aa
        jmp loc_1170

scr_10ba:
        // === Screen RAM (1 bytes, $10ba-$10ba) ===
        .encoding "screencode_mixed"
        .text "@"
        .encoding "petscii_upper"
// Referenced by: jsr from $11f0

sub_10bb:
        lda #$0e
        jsr sub_10f0
// Referenced by: jsr from $109c, $11fb; branch from $10e8

sub_10c0:
        ldx #$00

loc_10c2:
        ldy #$07

loc_10c4:
.label smc_10c5 = * + 1
        lda $1700,y                                 // !SMC: modified by $10e3, $10ec
.label smc_10c8 = * + 1
.label smc_10c9 = * + 2
        ora $30d8,x                                 // !SMC: modified by $11df, $11ea, $11f5
.label smc_10cb = * + 1
.label smc_10cc = * + 2
        sta $30d8,x                                 // !SMC: modified by $11e2, $11ed, $11f8
        inx
        dey
        bpl loc_10c4
.label smc_10d2 = * + 1
        cpx #$08                                    // !SMC: modified by $11e5
        bne loc_10c2
        ldx #$80

loc_10d7:
        jsr $eeb3
        dex
        bne loc_10d7
        lda smc_10c5
        clc
        adc #$08
        sta smc_10c5                                // SMC: modifies $10c5
        cmp #$40
        bne sub_10c0
        lda #$00
        sta smc_10c5                                // SMC: modifies $10c5
        rts
// Referenced by: jsr from $107d, $10bd

sub_10f0:
        ldx #$7f

loc_10f2:
        sta dat_1740,x
        dex
        bpl loc_10f2
        rts

// --- Region $1170-$1200 ---
.pc = $1170 "loc_1170"

loc_1170:
        lda #$80

loc_1172:
        cmp $10ff
        bne loc_1172
        lda #$00
        sta $fb
        lda #$15
        sta $fc

loc_117f:
        ldy #$00
        lda ($fb),y
        beq loc_11c7
        cmp #$85
        bne loc_1190
        lda #$80
        sta smc_11be                                // SMC: modifies $11be
        bne loc_11b7

loc_1190:
        cmp #$89
        bne loc_119b
        lda #$00
        sta smc_11be                                // SMC: modifies $11be
        beq loc_11b7

loc_119b:
        cmp #$86
        bne loc_11a6
        ldx #$05
        jsr sub_1020
        bne loc_11b7

loc_11a6:
        lda #$02

loc_11a8:
        sta $cd
        lda $cf
        bne loc_11a8
        inc $cc
        lda ($fb),y
        jsr $ffd2
        dec $cc

loc_11b7:
        inc $fb
        bne loc_11bd
        inc $fc

loc_11bd:
.label smc_11be = * + 1
        ldx #$80                                    // !SMC: modified by $118b, $1196

loc_11bf:
        beq loc_117f
        jsr $eeb3
        dex
        bpl loc_11bf

loc_11c7:
        lda #$02
        sta $cd

loc_11cb:
        lda $cf
        bne loc_11cb
        inc $cc
        lda #$00

loc_11d3:
        cmp $10ff
        bne loc_11d3

loc_11d8:
        lda #$00
        sta $10fe
        lda #$00
        sta smc_10c8                                // SMC: modifies $10c8
        sta smc_10cb                                // SMC: modifies $10cb
        sta smc_10d2                                // SMC: modifies $10d2
        lda #$31
        sta smc_10c9                                // SMC: modifies $10c9
        sta smc_10cc                                // SMC: modifies $10cc
        jsr sub_10bb
        lda #$30
        sta smc_10c9                                // SMC: modifies $10c9
        sta smc_10cc                                // SMC: modifies $10cc
        jsr sub_10c0
        jmp loc_1245

// --- Region $1245-$12c4 ---
.pc = $1245 "loc_1245"

loc_1245:
        lda #$09
        sta $10ff
        lda #$00
        sta $10fe
        ldx #$01
        ldy #$12
        lda #$14
        jsr sub_1030
        lda #$0b
        sta $d011
        lda #$63

loc_125f:
        cmp $10fe
        bne loc_125f
        sei
        lda #$0b
        sta $0286
        jsr $e544
        ldx #$07
        lda #$00

loc_1271:
        sta $3100,x
        dex
        bpl loc_1271
        ldx #$03
        jsr sub_1020
        ldx #$17

loc_127e:
        lda $12c6,x
        sta $0408,x
        lda $12de,x
        sta $0430,x
        lda $12f6,x
        sta $0458,x
        lda $130e,x
        sta $0480,x
        lda $1326,x
        sta $04a8,x
        lda $133e,x
        sta $04d0,x
        lda $1356,x
        sta $04f8,x
        lda $136e,x
        sta $0520,x
        dex
        bpl loc_127e
        lda #$d8
        sta $d016
        lda #$00
        sta $d022
        sta $d023
        sta $d021
        jmp loc_2600

scr_12c4:
        // === Screen RAM (1 bytes, $12c4-$12c4) ===
        .encoding "screencode_mixed"
        .text "@"
        .encoding "petscii_upper"

// --- Region $158d-$158d ---
.pc = $158d "Segment $158d"
        brk

// --- Region $1800-$1815 ---
.pc = $1800 "sub_1800"
// Referenced by: jsr from $201f, $2605

sub_1800:
        jmp loc_2108

dat_1803:
        .byte $4c,$17,$21                           // L.!
// Referenced by: jsr from $2029

sub_1806:
        lda $2174
        cmp #$02
        beq loc_1814
        cmp #$01
        bne loc_182a
        jmp loc_20e8

loc_1814:
        rts

dat_1815:
        .byte $01                                   // .

// --- Region $182a-$1c00 ---
.pc = $182a "loc_182a"

loc_182a:
        inc $2142
        inc $2143
        inc $2144
        lda #$1f
        sta $d418
        ldx #$02
        dec $2173
        bpl loc_1845
        lda $211d
        sta $2173

loc_1845:
        bit $d020
        stx $ff
        lda $211e,x
        sta $2156
        tay
        lda $2173
        cmp $211d
        bne loc_186b
        lda $1ea1,x
        sta $fb
        lda $1ea4,x
        sta $fc
        dec $2127,x
        bmi loc_186e
        jmp loc_19fa

loc_186b:
        jmp loc_1a0a

loc_186e:
        ldy $2121,x
        lda ($fb),y
        cmp #$fe
        beq loc_188c
        cmp #$ff
        bne loc_1894
        lda #$00
        sta $2127,x
        sta $2121,x
        sta $2124,x
        sta $2172
        jmp loc_186e

loc_188c:
        lda #$02
        sta $2174
        jmp loc_210b

loc_1894:
        sta $2167
        and #$80
        beq loc_18a9
        lda $2167
        and #$1f
        sta $214f,x
        inc $2121,x
        jmp loc_186e

loc_18a9:
        lda $2167
        and #$40
        beq loc_18be
        lda $2167
        and #$3f
        sta $2176,x
        inc $2121,x
        jmp loc_186e

loc_18be:
        lda $2167
        asl
        tay
        lda $1ea7,y
        sta $fd
        lda $1ea8,y
        sta $fe
        lda #$00
        sta $213f,x
        ldy $2124,x
        sta $2142,x
        lda #$03
        sta $2161,x

loc_18dd:
        lda ($fd),y
        sta $f8
        and #$f0
        cmp #$f0
        bne loc_18f7
        lda #$01
        sta $2180,x
        inc $2124,x
        iny
        lda ($fd),y
        sta $f8
        jmp loc_1957

loc_18f7:
        lda #$00
        sta $2180,x
        lda $f8
        and #$f0
        cmp #$e0
        bne loc_1930
        lda $f8
        and #$01
        clc
        adc #$01
        sta $213f,x
        lda $f8
        and #$0e
        lsr
        sta $2165
        inc $2124,x
        iny
        lda ($fd),y
        pha
        and #$f0
        sta $2164
        pla
        and #$0f
        sta smc_1af8                                // SMC: modifies $1af8
        inc $2124,x
        iny
        lda ($fd),y
        sta $f8

loc_1930:
        lda $f8
        and #$e0
        cmp #$c0
        bne loc_1942
        lda $f8
        and #$1f
        sta $2133,x
        jsr sub_19ed

loc_1942:
        lda $f8
        and #$c0
        cmp #$80
        bne loc_1957
        lda $f8
        and #$3f
        sta $212a,x
        jsr sub_19ed
        jmp loc_18dd

loc_1957:
        lda $212a,x
        sta $2127,x
        lda $f8
        clc
        adc $214f,x
        sta $2130,x
        tay
        lda dat_1d64,y
        pha
        lda $1dc4,y
        ldy $2156
        sta $d401,y
        sta $2136,x
        sta $2139,x
        pla
        sta $d400,y
        sta $213c,x
        lda $2180,x
        bne loc_19cc
        lda $2133,x
        asl
        asl
        asl
        tax
        stx $2152
        lda $218a,x
        sta $d405,y
        lda $218b,x
        sta $d406,y
        lda $218c,x
        pha
        lda $2188,x
        pha
        lda $2189,x
        ldx $ff
        sta $212d,x
        sta $2179,x
        lda #$00
        sta $d402,y
        sta $2145,x
        pla
        sta $214b,x
        and #$0f
        sta $d403,y
        sta $2148,x
        lda #$01
        sta $216f,x
        pla
        sta $216c,x

loc_19cc:
        inc $2124,x
        ldy $2124,x
        lda ($fd),y
        cmp #$ff
        bne loc_19ea

loc_19d8:
        lda #$00
        sta $2124,x
        lda $2176,x
        beq loc_19e7
        dec $2176,x
        bpl loc_19ea

loc_19e7:
        inc $2121,x

loc_19ea:
        jmp loc_1d52
// Referenced by: jsr from $193f, $1951

sub_19ed:
        inc $2124,x
        iny
        lda ($fd),y
        cmp #$ff
        beq loc_19d8
        sta $f8
        rts

loc_19fa:
        ldy $2156
        lda $2142,x
        beq loc_1a0a
        lda $212d,x
        and #$fe
        sta $2179,x

loc_1a0a:
        lda $2133,x
        asl
        asl
        asl
        tay
        lda $218d,y
        sta $2153
        lda $218e,y
        sta $2154
        lda $218f,y
        sta $2155
        and #$04
        bne loc_1a33
        lda $2155
        and #$10
        bne loc_1a33
        lda $2153
        bne loc_1a36

loc_1a33:
        jmp loc_2030

loc_1a36:
        pha
        and #$78
        lsr
        lsr
        lsr
        sta $2158,x
        pla
        and #$07
        sta $2157
        lda $215b,x
        beq loc_1a54
        dec $215e,x
        bne loc_1a68
        inc $215b,x
        bpl loc_1a68

loc_1a54:
        inc $215e,x
        lda $2158,x
        cmp $215e,x
        bcs loc_1a68
        sta $215e,x
        dec $215b,x
        dec $215e,x

loc_1a68:
        lda $2130,x
        tay
        lda $1d65,y
        sec
        sbc dat_1d64,y
        sta $217f
        lda $1dc5,y
        sbc $1dc4,y
        adc $2142,x
        lsr

loc_1a80:
        dec $2157
        bmi loc_1a8c
        lsr
        ror $217f
        jmp loc_1a80

loc_1a8c:
        sta $217e
        lda dat_1d64,y
        sta $217c
        lda $1dc4,y
        sta $217d
        lda $2158,x
        lsr
        tay

loc_1aa0:
        dey
        bmi loc_1ab9
        sec
        lda $217c
        sbc $217f
        sta $217c
        lda $217d
        sbc $217e
        sta $217d
        jmp loc_1aa0

loc_1ab9:
        lda $2142,x
        cmp #$04
        bcc loc_1aeb
        ldy $215e,x

loc_1ac3:
        dey
        bmi loc_1adc
        clc
        lda $217c
        adc $217f
        sta $217c
        lda $217d
        adc $217e
        sta $217d
        jmp loc_1ac3

loc_1adc:
        ldy $2156
        lda $217c
        sta $d400,y
        lda $217d
        sta $d401,y

loc_1aeb:
        ldx $ff
        ldy $2156
        lda $212a,x
        sec
        sbc $2127,x
.label smc_1af8 = * + 1
        cmp #$00                                    // !SMC: modified by $1925
        bcc loc_1b41
        lda $213f,x
        beq loc_1b41
        and #$03
        cmp #$01
        beq loc_1b25
        lda $2164
        sec
        lda $213c,x
        sbc $2164
        sta $213c,x
        sta $d400,y
        lda $2136,x
        sbc $2165
        sta $2136,x
        sta $d401,y
        jmp loc_1b41

loc_1b25:
        lda $2164
        clc
        lda $213c,x
        adc $2164
        sta $213c,x
        sta $d400,y
        lda $2136,x
        adc $2165
        sta $2136,x
        sta $d401,y

loc_1b41:
        lda $2154
        beq loc_1bb2
        and #$07
        tay
        dey
        tya
        asl
        asl
        tay
        lda $1e95,y
        cmp $2142,x
        bcc loc_1b59
        jmp loc_1b63

loc_1b59:
        iny
        iny
        lda $1e95,y
        cmp $2142,x
        bcc loc_1b6d

loc_1b63:
        iny
        lda $1e95,y
        sta $214e
        jmp loc_1b75

loc_1b6d:
        lda $2154
        and #$fc
        sta $214e

loc_1b75:
        lda $216f,x
        bne loc_1b97
        lda $2145,x
        sec
        sbc $214e
        sta $2145,x
        lda $2148,x
        sbc #$00
        sta $2148,x
        cmp #$01
        bcs loc_1bb2
        lda #$01
        sta $216f,x
        bne loc_1bb2

loc_1b97:
        lda $2145,x
        clc
        adc $214e
        sta $2145,x
        lda $2148,x
        adc #$00
        sta $2148,x
        cmp #$0f
        bcc loc_1bb2
        lda #$00
        sta $216f,x

loc_1bb2:
        lda #$00
        sta smc_1bd4                                // SMC: modifies $1bd4
        lda $214b,x
        and #$80
        beq loc_1bca
        lda $2142,x
        and #$01
        beq loc_1bca
        lda #$b0
        sta smc_1bd4                                // SMC: modifies $1bd4

loc_1bca:
        ldx $ff
        ldy $2156
        lda $2145,x
        clc
.label smc_1bd4 = * + 1
        adc #$00                                    // !SMC: modified by $1bb4, $1bc7
        sta $d402,y
        lda $2148,x
        adc #$00
        sta $d403,y
        lda $2155
        and #$40
        beq loc_1bfb
        ldx $ff
        lda $2142,x
        cmp #$03
        bcc loc_1bfb
        and #$03
        tax
        lda $1e32,x
        ldx $ff
        sta $2179,x

loc_1bfb:
        sty $2167
.label spr_1c00 = * + 2
        lda $2155

// --- Region $1c40-$1d63 ---
.pc = $1c40 "Segment $1c40"
        txa
        and $2168
        bne loc_1c4e
        txa
        clc
        adc $2168
        sta $d417

loc_1c4e:
        ldy #$06

loc_1c50:
        dey
        dey
        dey
        dey
        dey
        dey
        lda ($f9),y
        jmp loc_1c73

loc_1c5b:
        dey
        dey
        dey
        dey
        dey
        dey
        lda $2169,x
        clc
        adc ($f9),y
        jmp loc_1c73

loc_1c6a:
        lda $ff
        cmp $2175
        bne loc_1c7b
        lda #$ff

loc_1c73:
        ldx $ff
        sta $2169,x
        sta $d416

loc_1c7b:
        ldy $2167
        lda $2155
        and #$10
        beq loc_1ce3
        lda $2153
        and #$0f
        tax
        lda $1e3e,x
        sta smc_1caf                                // SMC: modifies $1caf
        lda $1e40,x
        sta smc_1cb0                                // SMC: modifies $1cb0
        lda $1e42,x
        sta smc_1cb7                                // SMC: modifies $1cb7
        lda $1e44,x
        sta smc_1cb8                                // SMC: modifies $1cb8
        ldx $ff
        lda $2142,x
        cmp #$0f
        bcs loc_1ce0
        tax
        dex
.label smc_1caf = * + 1
.label smc_1cb0 = * + 2
        lda $1e76,x                                 // !SMC: modified by $1c8e, $1c94
        ldy $ff
        sta $2179,y
.label smc_1cb7 = * + 1
.label smc_1cb8 = * + 2
        lda $1e66,x                                 // !SMC: modified by $1c9a, $1ca0
        sta $2168
        lda $2153
        and #$10
        beq loc_1ccf
        ldx $ff
        lda $2130,x
        clc
        adc $2168
        jmp loc_1d42

loc_1ccf:
        ldy $2156
        lda $2168
        clc
        adc #$0d
        sta $d401,y
        lda #$00
        sta $d400,y

loc_1ce0:
        jmp loc_1d52

loc_1ce3:
        lda $2155
        and #$80
        beq loc_1d1e
        ldx $ff
        ldy $2156
        lda $2142,x
        cmp #$02
        bcs loc_1d0a
        lda #$48
        sta $d401,y
        lda #$00
        sta $d400,y
        ldx $ff
        lda #$81
        sta $2179,x
        jmp loc_1d52

loc_1d0a:
        lda $213c,x
        sta $d400,y
        lda $2136,x
        sta $d401,y
        lda $212d,x
        and #$fe
        sta $2179,x

loc_1d1e:
        lda $2155
        and #$04
        beq loc_1d52
        dec $2161,x
        bpl loc_1d2f
        lda #$02
        sta $2161,x

loc_1d2f:
        ldx $ff
        lda $2161,x
        tax
        lda $1e86,x
        sta $41
        ldx $ff
        lda $2130,x
        clc
        adc $41

loc_1d42:
        tax
        ldy $2156
        lda dat_1d64,x
        sta $d400,y
        lda $1dc4,x
        sta $d401,y

loc_1d52:
        ldx $ff
        ldy $2156
        lda $2179,x
        sta $d404,y
        dex
        bmi loc_1d63
        jmp loc_1845

loc_1d63:
        rts

// --- Region $1f08-$1f72 ---
.pc = $1f08 "loc_1f08"

loc_1f08:
        lda dat_1740,x
        sta $d020
        ldy #$09

loc_1f10:
        dey
        bne loc_1f10
        nop
        inx
        cpx #$1e
        bne loc_1f08
        rts

dat_1f1a:
        .byte $00,$00,$00,$00,$00,$00               // ......

loc_1f20:
        lda #$00
        sta $d020
        sta $d021
        lda #$bc

loc_1f2a:
        cmp $d012
        bne loc_1f2a
        ldx #$0a

loc_1f31:
        dex
        bne loc_1f31
        lda #$0e
        ldx #$06
        sta $d020
        stx $d021
        inc $d019
        lda #$1d
        sta $d018
        jmp $ea31

dat_1f49:
        .byte $00,$00,$00,$00,$00,$00,$00           // .......

nmi_1f50:
        pha
        lda $dc01
        cmp #$df
        beq loc_1f5a
        pla
        rti

loc_1f5a:
        jsr $fda3
        jsr $e518
        sei
        lda #$31
        sta $0314
        lda #$ea
        sta $0315
        lda #$00
        sta $cc
        jmp loc_29c0

dat_1f72:
        .byte $00                                   // .

// --- Region $1fa0-$1fa0 ---
.pc = $1fa0 "Segment $1fa0"
        brk

// --- Region $2010-$204e ---
.pc = $2010 "Segment $2010"
        lda #$1b
        sta $d011
        lda #$24
        sta $0314
        lda #$20
        sta $0315
        jsr sub_1800
        cli
        rts

irq_2024:
        lda #$01
        sta $d019
        jsr sub_1806
        jmp $ea81

chr_202f:
        // === Charset data (1 bytes, $202f-$202f) ===
        .byte $00                                   // char 0 (partial)

loc_2030:
        lda $2153
        beq loc_2048
        lsr
        lsr
        lsr
        lsr
        tax
        lda $2153
        and #$0f

loc_203f:
        sta $1e88
        stx $1e87
        jmp loc_1aeb

loc_2048:
        lda #$18
        ldx #$0c
        bne loc_203f
        brk

// --- Region $20a0-$20ae ---
.pc = $20a0 "loc_20a0"

loc_20a0:
        sta dat_25fe
        ldx #$4f
        lda $2818

loc_20a8:
        sta $da08,x
        dex
        bpl loc_20a8
        rts

// --- Region $20d9-$2116 ---
.pc = $20d9 "sub_20d9"
// Referenced by: jsr from $2108

sub_20d9:
        lda #$00
        ldx #$62

loc_20dd:
        sta $2121,x
        dex
        bpl loc_20dd
        lda #$b0
        sta $2172

loc_20e8:
        lda #$00
        sta $2142
        sta $2143
        sta $2144
        ldx #$02

loc_20f5:
        sta $2121,x
        sta $2124,x
        sta $2127,x
        .byte $9e,$30,$21                           // shx $2130,y // ILLEGAL
        dex
        bpl loc_20f5
        sta $2174
        rts

loc_2108:
        jsr sub_20d9

loc_210b:
        ldx #$00
        txa

loc_210e:
        sta $d400,x
        inx
        cpx #$18
        bne loc_210e
        rts

// --- Region $2600-$262f ---
.pc = $2600 "loc_2600"

loc_2600:
        lda #$13
        sta $d018
        jsr sub_1800
        ldx #$24
        ldy #$20
        lda #$32
        jsr sub_1030
        ldx #$0e
        jsr sub_1020
        ldx #$64
        ldy #$26
        lda #$32
        jsr sub_1030
        lda #$40
        sta $10ff
        lda #$01
        sta $10fe
        sta $10fd
        jmp loc_2710

chr_262f:
        // === Charset data (1 bytes, $262f-$262f) ===
        .byte $00                                   // char 0 (partial)

// --- Region $2710-$272d ---
.pc = $2710 "loc_2710"

loc_2710:
        sta $10fb
        lda #$80
        sta $10fc
        lda #$bc

loc_271a:
        cmp $26a9
        bne loc_271a
        lda #$87
        ldy #$13
        jsr $ab1e
        lda #$0e
        sta $daf7
        jmp loc_2810

// --- Region $2810-$28ff ---
.pc = $2810 "loc_2810"

loc_2810:
        ldx #$50

loc_2812:
        lda #$01
        sta $d93f,x
        lda #$00
        sta $da07,x
        lda #$80
        sta $053f,x
        dex
        bne loc_2812
        ldx #$27

loc_2826:
        tax
        .byte $80,$9d                               // nop #$9d // ILLEGAL
        php
        asl $a9
        cpy #$9d
        bmi loc_2836
        dex
        bpl loc_2826
        nop
        nop
        nop

loc_2836:
        lda #$00
        sta $10fe
        ldx #$27

loc_283d:
        lda $2060,x
        sta $0540,x
        eor #$40
        sta $0568,x
        txa
        pha
        ldx #$05

loc_284c:
        jsr $eeb3
        dex
        bne loc_284c
        pla
        tax
        dex
        bpl loc_283d
        lda #$00
        sta $3f
        lda #$38
        sta $40
        lda #$02
        sta $02
        lda #$00
        sta $10fa
        lda #$80

loc_286a:
        cmp $0608
        beq loc_286a
        lda #$00
        sta $10fb

loc_2874:
        lda #$ef
        cmp $dc01
        beq loc_2880
        lda dat_28ff
        beq loc_2874

loc_2880:
        lda #$00
        sta $02
        lda #$01
        sta $10fb
        sta scr_10f9
        lda dat_2ec0
        and #$7f
        ldx #$00

loc_2893:
        sta $0908,x
        sta $0a00,x
        sta $0a58,x
        dex
        bne loc_2893
        ldx #$00
        stx $10fb

loc_28a4:
        cmp $2eff
        bne loc_28a4
        lda #$80
        sta $10ff
        lda #$00

loc_28b0:
        cmp $10ff
        bne loc_28b0
        ldx #$00
        ldy #$37

loc_28b9:
        lda #$30

loc_28bb:
        cmp $d012
        bne loc_28bb
        lda #$00
        sta $2e70,x
        sta $2e70,y
        inx
        dey
        bpl loc_28b9
        lda #$00
        sta $2638
        lda #$c8
        sta $d016
        ldy #$0f

loc_28d8:
        lda #$30

loc_28da:
        cmp $d012
        bne loc_28da
        ldx #$a0
        lda $2e00,y

loc_28e4:
        sta $d800,x
        sta $d89f,x
        dex
        bne loc_28e4
        ldx #$04

loc_28ef:
        lda #$30

loc_28f1:
        cmp $d012
        bne loc_28f1
        dex
        bne loc_28ef
        dey
        bpl loc_28d8
        jmp loc_2985

dat_28ff:
        .byte $00                                   // .

// --- Region $2948-$2a54 ---
.pc = $2948 "Segment $2948"
        bpl loc_29aa
        cmp #$0c
        bne loc_2954
        lda #$01
        sta $10fb
        rts

loc_2954:
        cmp #$0b
        bne loc_295e
        lda #$00

loc_295a:
        sta $10fb
        rts

loc_295e:
        cmp #$0e
        bne loc_2968
        lda #$01
        jmp loc_20a0

dat_2967:
        .byte $00                                   // .

loc_2968:
        cmp #$0d
        bne loc_2972
        lda #$00
        sta dat_25fe
        rts

loc_2972:
        cmp #$0f
        bne loc_297c
        lda #$01
        sta dat_28ff
        rts

loc_297c:
        cmp #$08
        bcs loc_2982
        sta $02

loc_2982:
        rts

dat_2983:
        .byte $00,$00                               // ..

loc_2985:
        sei
        lda #$c5
        sta $d016
        jsr $fda3
        ldx #$20
        ldy #$1f
        lda #$00
        jsr sub_1030
        ldx #$04
        jsr sub_1020
        ldx #$31
        ldy #$ea
        lda #$32
        jsr sub_1030
        jsr $fda3
.label loc_29aa = * + 2
        jsr $e518
        lda #$1d
        sta $d018
        lda #$87
        ldy #$13
        jsr $ab1e
        lda #$00
        sta $cc
        ldx #$0a
        jsr sub_1020

loc_29c0:
        jsr $e544
        lda #$15
        sta $d018
        lda #$76
        ldy #$a3
        jsr $ab1e
        ldx #$04
        jsr sub_1020
        lda #$52
        jsr $ffd2
        ldx #$01
        jsr sub_1020
        lda #$55
        jsr $ffd2
        ldx #$02
        jsr sub_1020
        lda #$4e
        jsr $ffd2
        ldx #$01
        jsr sub_1020
        inc $cc
        ldx #$02
        jsr sub_1020
        lda #$06
        sta $0286
        jsr $e544
        ldx #$07

loc_2a03:
        lda $2b60,x
        sta $d000,x
        lda $2b68,x
        sta $d008,x
        lda $2b70,x
        sta $d027,x
        lda $2b78,x
        sta $07f8,x
        dex
        bpl loc_2a03
        lda #$00
        sta $d01c
        lda #$06
        sta $d020
        ldx #$00

loc_2a2a:
        lda $0800,x
        sta $0340,x
        dex
        bne loc_2a2a
        lda #$00
        sta $d015
        lda #$0e
        sta $dbe6
        sta $dbe5
        lda #$e4
        sta $07e7
        sta $07e4
        lda #$0f
        sta $07e5
        lda #$0b
        sta $07e6
        jmp $fce2

// --- Region $2b00-$2b4e ---
.pc = $2b00 "smc_2b00"

smc_2b00:
        lda #$37                                    // !SMC: modified by $2b06
        sta $01
        lda #$00
        sta smc_2b00                                // SMC: modifies $2b00
        lda #$04
        sta $0288
        jsr $fda3
        jsr $e518
        jsr sub_3300
        lda #$50
        sta $0318
        lda #$1f
        sta $0319
        lda #$e1
        sta $0328
        lda $028d
        cmp #$02
        beq loc_2b30
        jmp loc_1005

loc_2b30:
        ldx #$49
        ldy #$10
        lda #$00
        jsr sub_1030
        lda #$1d
        sta $d018
        jmp loc_11d8

loc_2b41:
        ldx #$02

loc_2b43:
        lda $2b50,x
        eor #$f0
        sta $07e3,x
        dex
        bpl loc_2b43
        rts

// --- Region $3058-$305f ---
.pc = $3058 "loc_3058"

loc_3058:
        ror $6c
        sei
        bvs loc_30d5
        jmp ($0066)

// --- Region $30d5-$30d5 ---
.pc = $30d5 "loc_30d5"

loc_30d5:
        rts

// --- Region $32a9-$32ab ---
.pc = $32a9 "Segment $32a9"
        clc
        clc
        brk

// --- Region $3300-$330e ---
.pc = $3300 "sub_3300"
// Referenced by: jsr from $2b14

sub_3300:
        ldx #$15

loc_3302:
        lda dat_330e,x
        sta $0800,x
        dex
        bpl loc_3302
        jmp loc_2b41

dat_330e:
        .byte $00                                   // .

// --- Region $3778-$377d ---
.pc = $3778 "loc_3778"

loc_3778:
        clc
        bmi loc_37ab
        bmi loc_37dd
        rts

// --- Region $37ab-$37bb ---
.pc = $37ab "loc_37ab"

loc_37ab:
        .byte $03,$03                               // slo ($03,x) // ILLEGAL
        .byte $03,$fe                               // slo ($fe,x) // ILLEGAL
        brk

dat_37b0:
        .byte $63,$63,$63,$63,$63,$03               // ccccc.

loc_37b6:
        inc sub_1800,x
        bmi loc_37eb
        rts

// --- Region $37dd-$37f0 ---
.pc = $37dd "loc_37dd"

loc_37dd:
        clc
        bmi loc_37e0

loc_37e0:
        .byte $7f,$63,$63                           // rra $6363,x // ILLEGAL
        .byte $63,$63                               // rra ($63,x) // ILLEGAL
        rts

dat_37e6:
        .byte $3f,$00,$63,$63,$63                   // ?.ccc

loc_37eb:
        .byte $63,$63                               // rra ($63,x) // ILLEGAL
        .byte $03,$fe                               // slo ($fe,x) // ILLEGAL
        brk

dat_37f0:
        .byte $63                                   // c

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

// --- Region $0801-$1004 ---
.pc = $0801 "dat_0801"

dat_0801:
        // === BASIC loader stub ===
        .byte $13,$08                                                     // [corrected] was: .byte $0c,$08                               // next line pointer ($080c)
        .byte $c5,$07                                                     // [corrected] was: .byte $00,$00                               // line number 0
        .byte $9e                                   // SYS token
        .text "11008"                               // SYS 11008 → smc_2b00
        .byte $20                                                         // [corrected] was: .byte $00                                   // end of line
        .byte $43,$2e                                                     // [corrected] was: .byte $00,$00                               // end of BASIC program
        .text "A.T."
        .byte $00,$00,$00,$00
        .byte $36,$70,$0d,$b6,$d8,$0f,$1c,$d8
        .byte $00,$00,$00,$00,$00,$00,$ee,$00,$75,$28,$00,$15,$28,$00,$15,$ee // ........u(..(...
        .byte $76,$37,$82,$54,$11,$82,$54,$11,$ee,$74,$71,$00,$00,$00,$00,$00 // v7.T..T..tq.....
        .byte $00,$00,$00,$03,$1c,$00,$06,$36,$00,$0f,$36,$00,$0d,$b6,$00,$0d // .......6..6.....
        .byte $b6,$00,$07,$1c,$00,$00,$00,$c0,$00,$0c,$de,$79,$ef,$db,$6d,$8d // ...........y..m.
        .byte $db,$6c,$6d,$db,$6d,$ef,$00,$00,$00,$00,$00,$00,$07,$36,$f7,$0d // .lm.m........6..
        .byte $b6,$c3,$0f,$b6,$33,$0d,$9c,$f3,$00,$00,$00,$00,$00,$00,$00,$00 // ....3...........
        .byte $00,$00,$71,$c0,$00,$db,$60,$00,$1b,$60,$00,$71,$e0,$00,$c0,$c0 // ..q...`..`.q....
        .byte $00,$f9,$80,$00,$00,$00,$00,$00,$00,$18,$be,$db,$db,$b6,$db,$1e // ................
        .byte $b0,$db,$1b,$b0,$fb,$db,$00,$00,$00,$00,$00,$00,$bc,$ce,$18,$36 // ...............6
        .byte $db,$30,$3c,$df,$00,$36,$db,$60,$00,$00,$00,$00,$00,$00,$00,$00 // .0<..6.`........
        .fill 14, $00
        .byte $7f,$be,$fc,$80,$41,$02,$80,$40,$82,$61,$88,$8c,$12,$94,$90,$12 // ....A..@.a......
        .byte $94,$90,$12,$94,$90,$12,$9c,$90,$12,$80,$90,$12,$80,$90,$12,$9c // ................
        .byte $90,$12,$94,$90,$0c,$63,$60,$00,$00,$00,$00,$00,$00,$00,$00,$00 // .....c`.........
        .byte $00,$00,$00,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$dc,$dc,$dc,$dd // ................
        .byte $dd,$dd,$de,$de,$de,$de,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df // ................
        .byte $df,$df,$df,$df,$df,$df,$de,$de,$de,$de,$dd,$dd,$dd,$dc,$dc,$dc // ................
        .byte $db,$db,$da,$da,$da,$d9,$d9,$d9,$d9,$d8,$d8,$d8,$d8,$d8,$d8,$d8 // ................
        .fill 9, $d8
        .byte $d9,$d9,$d9,$d9,$da,$da,$da,$db,$db,$db,$dc,$dc,$dc,$dd,$dd,$dd // ................
        .byte $de,$de,$de,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df // ................
        .byte $df,$de,$de,$de,$dd,$dd,$dd,$dc,$dc,$dc,$db,$db,$da,$da,$da,$d9 // ................
        .byte $d9,$d9,$d8,$d8,$d8,$d8,$d8,$d8,$d8,$d8,$d8,$d8,$d8,$d8,$d8,$d8 // ................
        .byte $d9,$d9,$d9,$da,$da,$da,$db,$db,$db,$dc,$dc,$dc,$dd,$dd,$de,$de // ................
        .byte $de,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$de,$de,$de // ................
        .byte $dd,$dd,$dc,$dc,$dc,$db,$db,$da,$da,$d9,$d9,$d9,$d8,$d8,$d8,$d8 // ................
        .fill 8, $d8
        .byte $d9,$d9,$d9,$da,$da,$db,$db,$db,$dc,$dc,$dd,$dd,$de,$de,$de,$df // ................
        .fill 9, $df
        .byte $de,$de,$de,$dd,$dd,$dc,$dc,$db,$da,$da,$d9,$d9,$d9,$d8,$d8,$d8 // ................
        .byte $d8,$d8,$d8,$d8,$d8,$d8,$d8,$d9,$d9,$d9,$da,$da,$db,$dc,$dc,$dd // ................
        .byte $dd,$de,$de,$df,$df,$df,$df,$df,$df,$df,$df,$de,$de,$dd,$dd,$dc // ................
        .byte $db,$db,$da,$da,$d9,$d9,$d8,$d8,$d8,$d8,$d8,$d8,$d8,$d8,$d9,$d9 // ................
        .byte $da,$da,$db,$dc,$dc,$dd,$de,$de,$df,$df,$df,$df,$df,$df,$de,$de // ................
        .byte $dd,$dc,$dc,$db,$da,$d9,$d9,$d8,$d8,$d8,$d8,$d8,$d8,$d9,$d9,$da // ................
        .byte $db,$dc,$dc,$dd,$dd,$de,$de,$df,$df,$df,$df,$df,$df,$df,$df,$de // ................
        .byte $de,$dd,$dd,$dc,$db,$db,$da,$da,$d9,$d9,$d8,$d8,$d8,$d8,$d8,$d8 // ................
        .byte $d8,$d8,$d9,$d9,$da,$da,$db,$dc,$dc,$dd,$dd,$de,$de,$de,$df,$df // ................
        .fill 8, $df
        .byte $de,$de,$de,$dd,$dd,$dc,$dc,$db,$da,$da,$d9,$d9,$d9,$d8,$d8,$d8 // ................
        .byte $d8,$d8,$d8,$d8,$d8,$d8,$d8,$d9,$d9,$d9,$da,$da,$db,$dc,$dc,$dc // ................
        .byte $dd,$dd,$de,$de,$de,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df // ................
        .byte $df,$de,$de,$de,$dd,$dd,$dc,$dc,$dc,$db,$db,$da,$da,$d9,$d9,$d9 // ................
        .fill 12, $d8
        .byte $d9,$d9,$d9,$da,$da,$db,$db,$db,$dc,$dc,$dc,$dd,$dd,$dd,$de,$de // ................
        .byte $de,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$de // ................
        .byte $de,$de,$dd,$dd,$dd,$dc,$dc,$dc,$db,$db,$da,$da,$da,$d9,$d9,$d9 // ................
        .fill 14, $d8
        .byte $d9,$d9,$d9,$da,$da,$da,$db,$db,$db,$dc,$dc,$dc,$dd,$dd,$dd,$de // ................
        .byte $de,$de,$de,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df,$df // ................
        .byte $df,$df,$df,$de,$de,$de,$de,$dd,$dd,$dd,$dc,$dc,$dc,$db,$db,$da // ................
        .byte $da,$da,$d9,$d9,$d9,$d9,$d8,$d8,$d8,$d8,$d8,$d8,$d8,$d8,$d8,$d8 // ................
        .byte $d8,$d8,$d8,$d8,$d8,$d8,$d9,$d9,$d9,$d9,$da,$da,$da,$db,$db,$db // ................
        .byte $00                                   // .

txt_0b49:
        .text "XXXXXXXXXXXXXXX"
        .byte $00                                   // string terminator
        .byte $00,$00,$00,$00,$01,$06,$19,$00,$00,$0b,$2d,$a6,$9a,$6b,$ae,$0b // ..........-..k..
        .byte $ef,$bb,$ee,$bb,$ef,$be,$fb,$ff,$ff,$be,$fb,$ee,$ba,$e9,$a6,$ff // ................
        .byte $ff,$ee,$a6,$99,$65,$94,$51           // ....e.Q

spr_0b80:
        // === Sprite data (64 bytes, $0b80-$0bbf) ===
        .byte $ec,$ba,$e9                           // ###.##..#.###.#.###.#..#
        .byte $66,$45,$10                           // .##..##..#...#.#...#....
        .byte $41,$04,$00                           // .#.....#.....#..........
        .byte $40,$94,$59                           // .#......#..#.#...#.##..#
        .byte $66,$5a,$2b                           // .##..##..#.##.#...#.#.##
        .byte $5a,$00,$00                           // .#.##.#.................
        .byte $00,$00,$80                           // ................#.......
        .byte $e0,$b0,$fc                           // ###.....#.##....######..
        .byte $00,$00,$00                           // ........................
        .byte $00,$02,$06                           // ..............#......##.
        .byte $19,$66,$00                           // ...##..#.##..##.........
        .byte $03,$2e,$b7                           // ......##..#.###.#.##.###
        .byte $9a,$6b,$ae                           // #..##.#..##.#.###.#.###.
        .byte $bb,$2f,$bf                           // #.###.##..#.#####.######
        .byte $ee,$bb,$ef                           // ###.###.#.###.#####.####
        .byte $be,$fb,$ee                           // #.#####.#####.#####.###.
        .byte $ff,$ff,$fb                           // #####################.##
        .byte $ee,$ba,$e9                           // ###.###.#.###.#.###.#..#
        .byte $a6,$99,$fb                           // #.#..##.#..##..######.##
        .byte $ee,$bb,$9e                           // ###.###.#.###.###..####.
        .byte $65,$94,$51                           // .##..#.##..#.#...#.#...#
        .byte $44                                   // sprite 0 padding
        .byte $00,$e0,$a6,$99,$15,$46,$04,$11,$00,$00,$00,$40,$90,$68,$ac,$7b // .....F.....@.h.{
        .byte $ff,$fe,$bb,$99,$65,$94               // ....e.

txt_0bd6:
        .text "QD"
        .byte $b0                                   // '0' | $80 (end-of-string marker)
        .byte $e9,$a6,$99,$15,$41,$04,$11,$00,$00,$50,$64,$9a,$6b,$ae,$6b,$00 // ....A....Pd.k.k.
        .byte $00,$00,$00,$00,$80,$c0,$f0,$00,$00,$01,$05,$12,$06,$17,$5a,$26 // ..............Z&
        .byte $9a,$6b,$ae,$bb,$ef,$be,$fb           // .k.....

scr_0c00:
        // === Screen RAM (1024 bytes, $0c00-$0fff) ===
        .encoding "screencode_mixed"
        .byte $bb,$ef,$be,$fb,$ee,$ba,$e9,$a6,$ee,$ba,$e9,$a6,$99,$65,$94,$51 // scrcode: ................
        .byte $99,$65,$94,$51,$44                   // scrcode: .....
        .text "p"
        .byte $41                                   // scrcode: .
        .text "d"
        .byte $44                                   // scrcode: .
        .text "p"
        .byte $41                                   // scrcode: .
        .text "dq"
        .byte $45                                   // scrcode: .
        .text "v"
        .byte $59                                   // scrcode: .
        .text "q"
        .byte $45                                   // scrcode: .
        .text "v"
        .byte $59,$66,$9a,$6b,$ae                   // scrcode: .....
        .byte $67,$9a,$6b,$ae,$bb,$ef,$be,$f9,$fc,$fe,$f5,$d6,$4a,$1b,$5e,$6b // scrcode: ................
        .byte $9a,$6b,$ae,$bb,$ef,$be,$fb,$ee,$ef,$be,$fb,$ee,$ba,$e9,$a6,$99 // scrcode: ................
        .byte $ba,$e9,$a6,$99,$65,$94,$51,$40       // scrcode: ........
        .byte $65,$94,$51,$44                       // scrcode: ....
        .text "p"
        .byte $41                                   // scrcode: .
        .text "dap"
        .byte $41                                   // scrcode: .
        .text "dq"
        .byte $45                                   // scrcode: .
        .text "v"
        .byte $59,$66,$45                           // scrcode: ...
        .text "v"
        .byte $59,$66,$9a,$6b,$ae,$b9,$ac,$62,$85,$96,$4a,$1b,$5e,$6b,$ba,$e9 // scrcode: ................
        .byte $a6,$99,$65,$94,$51,$44               // scrcode: ......
        .byte $65,$94,$51,$44                       // scrcode: ....
        .text "p"
        .byte $41                                   // scrcode: .
        .text "dq"
        .byte $45                                   // scrcode: .
        .text "v"
        .byte $59,$66,$9a,$6b,$ae,$bb,$9f,$6b,$af,$bb,$ef,$be,$fb,$ee,$f0,$f0 // scrcode: ................
        .byte $fc,$fc,$fc,$fc,$f8,$ec,$67,$9b,$6a,$a7,$99,$65,$94 // scrcode: .............
        .text "@"
        .byte $ee,$ba,$e9,$a6,$44                   // scrcode: .....
        .text "p"
        .byte $40                                   // scrcode: .
        .text "@"
        .byte $99,$65,$94,$51                       // scrcode: ....
        .text "@@@@"
        .byte $44                                   // scrcode: .
        .text "p"
        .byte $41                                   // scrcode: .
        .text "daefi"
        .byte $66,$9a,$6b,$ae,$b6,$ee,$bf,$ff,$bb,$ef,$be,$fb,$99,$65,$94,$c0 // scrcode: ................
        .byte $ed,$ba,$e9,$a6,$46                   // scrcode: .....
        .text "q"
        .byte $42                                   // scrcode: .
        .text "a"
        .byte $9f,$6e,$ab,$9e,$6a,$99,$56,$49,$65,$94,$52,$49 // scrcode: ............
        .text "u"
        .byte $46                                   // scrcode: .
        .text "iv@a"
        .byte $42,$6f,$83,$42,$81,$80               // scrcode: ......
        .text "aad"
        .byte $d1                                   // scrcode: .
        .text "efab"
        .byte $9a,$6b,$6e,$6b,$9f,$6e,$ab,$9e,$ed,$be,$f9,$ee,$ba,$e9,$a6,$99 // scrcode: ................
        .byte $9f,$6e,$ab,$9e,$65,$94               // scrcode: ......
        .encoding "petscii_upper"

txt_0d06:
        .text "QI"
        .byte $ba                                   // ':' | $80 (end-of-string marker)
        .encoding "screencode_mixed"
        .byte $e9,$a6,$99                           // scrcode: ...
        .text "p"
        .byte $40                                   // scrcode: .
        .text "@"
        .byte $41,$65,$94,$51,$44                   // scrcode: .....
        .text "@@@ p"
        .byte $41                                   // scrcode: .
        .text "dqevy&"
        .byte $9a,$6b,$ae,$bb,$da,$b9,$fe,$ff,$ef,$be,$fb,$ee,$65,$94,$51 // scrcode: ...............
        .text "@"
        .byte $ba                                   // scrcode: .
        .byte $e9,$a6,$99                           // scrcode: ...
        .text "p"
        .byte $41                                   // scrcode: .
        .text "d@"
        .byte $b8,$e8,$a4,$98,$64                   // scrcode: .....
        .text "t"
        .byte $58                                   // scrcode: .
        .text "@"
        .byte $6e,$6e,$6e,$6e,$6e,$6e,$66,$6e,$40,$44,$40,$50,$60,$70,$fe,$70 // scrcode: ................
        .text "@@"
        .byte $41                                   // scrcode: .
        .text "@aa"
        .byte $42                                   // scrcode: .
        .text "av"
        .byte $4a,$1b,$5e,$6b,$9f,$6e,$ab,$ef,$bf,$ef,$af,$9e,$6a,$99,$56,$c4 // scrcode: ................
        .byte $c0,$c0,$80,$80,$42,$80,$40           // scrcode: .......
        .text "a@a@@@@@u"
        .byte $44                                   // scrcode: .
        .text "ad@ada"
        .byte $4a                                   // scrcode: .
        .byte $1b,$5e,$6b,$9f,$6f,$af,$bf,$d0,$80,$c0,$c0,$c0,$c0,$c8,$c0 // scrcode: ...............
        .text "baba"
        .byte $41                                   // scrcode: .
        .text "@a@"
        .byte $6a,$99,$56,$49                       // scrcode: ....
        .text "u"
        .byte $44                                   // scrcode: .
        .text "adu"
        .byte $46                                   // scrcode: .
        .text "iv"
        .byte $4a,$1b,$5e,$6b,$80                   // scrcode: .....
        .byte $40,$80,$80,$c0,$80,$c0,$d0           // scrcode: .......
        .text "@a"
        .byte $44                                   // scrcode: .
        .text "aefif"
        .byte $5a                                   // scrcode: .
        .text "+"
        .byte $6e,$7b,$af,$7e,$bb,$ae,$bf,$ff,$bf,$be,$7a,$a9,$66,$59 // scrcode: ..............
        .text "@p@@@d@af"
        .text "fff"
        .byte $46                                   // scrcode: .
        .text "fff"
        .byte $e4,$e4,$e4,$e4,$e4,$e4,$e4,$e4,$6e,$6e,$6e,$6e,$6e,$6e,$6e,$6e // scrcode: ................
        .byte $60                                   // scrcode: .
        .encoding "petscii_upper"

txt_0de9:
        .text "P"
        .byte $40                                   // @ character
        .text "A"
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .text "A"
        .encoding "screencode_mixed"
        .text "bbebaq@a"
        .byte $9e,$6a,$99,$56,$49                   // scrcode: .....
        .text "u"
        .byte $44                                   // scrcode: .
        .text "a"
        .byte $49                                   // scrcode: .
        .text "u"
        .byte $46                                   // scrcode: .
        .text "iv"
        .byte $4a,$1b,$5e,$40,$80,$40,$80,$84,$c0,$80,$c0 // scrcode: ...........
        .text "d@@@pa@a"
        .text "efiv"
        .byte $4a,$1b,$5e,$6b,$ef,$bf,$ff,$ee,$ba,$e9,$a6,$99,$ff,$fe,$fb,$99 // scrcode: ................
        .byte $65,$94                               // scrcode: ..
        .encoding "petscii_upper"

txt_0e2e:
        .text "QD"
        .byte $b8                                   // '8' | $80 (end-of-string marker)
        .encoding "screencode_mixed"
        .byte $e9,$a6,$44                           // scrcode: ...
        .text "p"
        .byte $41                                   // scrcode: .
        .text "dq@a"
        .byte $44                                   // scrcode: .
        .text "q"
        .byte $45                                   // scrcode: .
        .text "v"
        .byte $59,$66,$9f,$6f,$af,$bf,$ef,$bf,$ff,$ef,$c0,$c0,$c0,$c0,$c0,$c0 // scrcode: ................
        .byte $c4,$c0                               // scrcode: ..
        .text "jifi"
        .byte $45                                   // scrcode: .
        .text "dat"
        .byte $7a                                   // scrcode: .
        .byte $a9,$66,$59                           // scrcode: ...
        .text "%"
        .byte $54                                   // scrcode: .
        .text "qd%"
        .byte $56                                   // scrcode: .
        .text "y&"
        .byte $5a                                   // scrcode: .
        .text "+"
        .byte $6e,$7b                               // scrcode: ..
        .encoding "petscii_upper"

txt_0e68:
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .text "D"
        .byte $40                                   // @ character
        .text "PA"
        .byte $00                                   // string terminator
        .encoding "screencode_mixed"
        .text "@dh"
        .byte $6d                                   // scrcode: .
        .text "hddd@adaefi"
        .byte $6b,$9f,$6f,$af,$bf,$ef,$bf,$ff,$c4,$c0,$c0,$c0,$c0,$c4,$c0,$d0 // scrcode: ................
        .text "ab"
        .byte $41                                   // scrcode: .
        .text "bbqb"
        .byte $41,$65                               // scrcode: ..
        .byte $94,$51,$44                           // scrcode: ...
        .text "p"
        .byte $41                                   // scrcode: .
        .text "dtp"
        .byte $41                                   // scrcode: .
        .text "dq"
        .byte $45                                   // scrcode: .
        .text "v"
        .byte $59                                   // scrcode: .
        .text "q"
        .byte $45                                   // scrcode: .
        .text "v"
        .byte $59,$66,$9a,$6b,$ae,$66,$9a,$6b,$ae,$bb,$ef,$be,$fb,$9e,$bf,$ee // scrcode: ................
        .byte $ab,$9e,$6a,$99,$56,$49,$80           // scrcode: .......
        .byte $c0,$86,$84,$40,$80                   // scrcode: .....
        .encoding "petscii_upper"

txt_0ec6:
        .text "DB 0"
        .encoding "screencode_mixed"
        .byte $f9                                   // scrcode: .
        .text "00 p"
        .byte $40                                   // scrcode: .
        .text "padqevy&"
        .byte $af,$7f,$bf,$bf,$ff,$bf,$ff,$ff       // scrcode: ........
        .text "@"
        .byte $40                                   // scrcode: .
        .text "@b@p@i"
        .byte $40,$48,$44,$40,$61                   // scrcode: .....
        .encoding "petscii_upper"

txt_0eed:
        .byte $40                                   // @ character
        .text "U"
        .byte $aa                                   // '*' | $80 (end-of-string marker)
        .encoding "screencode_mixed"
        .text "@"
        .byte $48                                   // scrcode: .
        .text "a"
        .byte $40                                   // scrcode: .
        .text "aa"
        .byte $52,$a1,$ef,$bf,$ee,$ab,$9e,$6a,$99,$56,$c0,$81,$c0,$80,$92,$40 // scrcode: ................
        .byte $85,$4a                               // scrcode: ..
        .text "q@a"
        .byte $40                                   // scrcode: .
        .text "@"
        .encoding "petscii_upper"

txt_0f0d:
        .byte $40                                   // @ character
        .text "P"
        .byte $a0                                   // ' ' | $80 (end-of-string marker)
        .encoding "screencode_mixed"
        .byte $4b,$1b,$5e,$6b,$9f,$6f,$af,$bf,$45,$96,$c0,$c2,$c4,$c0,$c5,$ca // scrcode: ................
        .byte $9a,$69                               // scrcode: ..
        .text "bqa"
        .encoding "petscii_upper"

txt_0f25:
        .byte $40                                   // @ character
        .text "P"
        .byte $a0                                   // ' ' | $80 (end-of-string marker)
        .encoding "screencode_mixed"
        .byte $90,$41,$84,$80,$c4,$80,$c5,$ca       // scrcode: ........
        .text "@ad"
        .byte $41                                   // scrcode: .
        .text "e"
        .byte $46,$49,$86,$bf,$fe,$bb,$ae,$7a,$a9,$66,$59,$40 // scrcode: ............
        .text "d"
        .byte $40                                   // scrcode: .
        .text "apfu*"
        .byte $46                                   // scrcode: .
        .text "fv&6"
        .byte $fe,$76,$aa                           // scrcode: ...
        .byte $e4,$e4,$e4,$e4,$e4,$64,$e4,$e4,$6f,$6a,$55 // scrcode: ...........
        .text "@@@@@"
        .byte $ff,$aa,$55                           // scrcode: ...
        .text "@@@@@"
        .byte $f2,$a2,$51                           // scrcode: ...
        .text "b@@@@"
        .byte $9e,$65,$94,$51                       // scrcode: ....
        .text "@@@@"
        .byte $99                                   // scrcode: .
        .text "p"
        .byte $40                                   // scrcode: .
        .text "@@@@@"
        .byte $49                                   // scrcode: .
        .text "eb@@@@@"
        .byte $4f,$8a,$45,$80                       // scrcode: ....
        .text "@@@@"
        .byte $f0,$a0,$50                           // scrcode: ...
        .text "@@@@@eadq@@@@"
        .byte $9a                                   // scrcode: .
        .text "v"
        .byte $59,$66                               // scrcode: ..
        .text "@@@@"
        .byte $ef,$6f,$a7,$99                       // scrcode: ....
        .text "@@@@"
        .byte $cf,$ca,$c5,$c0                       // scrcode: ....
        .text "@@@@"
        .byte $45                                   // scrcode: .
        .text "adq@@@@"
        .byte $9f,$1f,$5b,$66                       // scrcode: ....
        .text "@@@@"
        .byte $ca,$89,$46                           // scrcode: ...
        .text "i@@@@"
        .byte $7a,$94,$51,$44                       // scrcode: ....
        .text "@@@@"
        .byte $65,$40                               // scrcode: ..
        .text "@@@@@@%vib@@@@?*u@@@@@"
        .byte $df,$aa,$55                           // scrcode: ...
        .text "@@@@@"
        .byte $e4,$a4,$54                           // scrcode: ...
        .text "@@@@@"
        .encoding "petscii_upper"

scr_1000:
        // === Screen RAM (5 bytes, $1000-$1004) ===
        .encoding "screencode_mixed"
        .byte $4c,$e2,$fc                           // scrcode: ...
        .text "@@"
        .encoding "petscii_upper"

// --- Region $10f9-$116f ---
.pc = $10f9 "scr_10f9"

scr_10f9:
        // === Screen RAM (119 bytes, $10f9-$116f) ===
        .encoding "screencode_mixed"
        .text "aaada"
        .byte $70                                   // scrcode: .
        .text "f"
        .byte $a0                                   // scrcode: .
        .text "h"
        .byte $bd,$40                               // scrcode: ..
        .text "w"
        .byte $8d                                   // scrcode: .
        .text " "
        .byte $d0,$8d                               // scrcode: ..
        .text "!"
        .byte $d0,$e8,$88,$f0,$f1,$e0               // scrcode: ......
        .text "n"
        .byte $b0                                   // scrcode: .
        .text "u"
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea // scrcode: ..............
        .byte $ea,$ea,$ea,$ea,$ea,$90,$da,$60,$ee   // scrcode: .........
        .text "y"
        .byte $d0,$a2                               // scrcode: ..
        .text "e"
        .byte $ca,$d0,$fd                           // scrcode: ...
        .text " @q"
        .byte $a2                                   // scrcode: .
        .text "f"
        .byte $ca,$d0,$fd,$a2                       // scrcode: ....
        .text "n"
        .byte $a0                                   // scrcode: .
        .text "f"
        .byte $8e                                   // scrcode: .
        .text " "
        .byte $d0,$8c                               // scrcode: ..
        .text "!"
        .byte $d0,$ce,$fe                           // scrcode: ...
        .text "p"
        .byte $d0,$1d,$a9                           // scrcode: ...
        .text "b"
        .byte $8d,$fe                               // scrcode: ..
        .text "p"
        .byte $a2                                   // scrcode: .
        .text "n"
        .byte $ac,$ff                               // scrcode: ..
        .text "p"
        .byte $b9                                   // scrcode: .
        .text "@v"
        .byte $9d,$40                               // scrcode: ..
        .text "w"
        .byte $c8,$ca                               // scrcode: ..
        .text "p"
        .byte $f6                                   // scrcode: .
        .text "x"
        .byte $ad,$ff                               // scrcode: ..
        .text "p"
        .byte $69                                   // scrcode: .
        .text "p"
        .byte $8d,$ff                               // scrcode: ..
        .text "p"
        .byte $4c                                   // scrcode: .
        .text "1"
        .byte $ea                                   // scrcode: .
        .text "@@@@@@@@"
        .encoding "petscii_upper"

// --- Region $1201-$1244 ---
.pc = $1201 "scr_1201"

scr_1201:
        // === Screen RAM (68 bytes, $1201-$1244) ===
        .encoding "screencode_mixed"
        .byte $ee                                   // scrcode: .
        .text "y"
        .byte $d0,$a2                               // scrcode: ..
        .text "a"
        .byte $ca,$d0,$fd,$ea,$a2                   // scrcode: .....
        .text "a h"
        .byte $1f,$a2                               // scrcode: ..
        .text "f"
        .byte $ca,$d0,$fd,$ea,$ce,$ff               // scrcode: ......
        .text "p"
        .byte $d0,$ea,$a9                           // scrcode: ...
        .text "i"
        .byte $8d,$ff                               // scrcode: ..
        .text "p"
        .byte $ae,$fe                               // scrcode: ..
        .text "p"
        .byte $a0,$1f,$bd                           // scrcode: ...
        .text "@t"
        .byte $99,$40                               // scrcode: ..
        .text "w"
        .byte $98,$49,$1f,$a8,$bd                   // scrcode: .....
        .text "@t"
        .byte $99,$40                               // scrcode: ..
        .text "w"
        .byte $98,$49,$1f,$a8,$e8,$88               // scrcode: ......
        .text "p"
        .byte $e8                                   // scrcode: .
        .text "x"
        .byte $ee,$fe                               // scrcode: ..
        .text "p"
        .byte $4c,$81,$ea                           // scrcode: ...
        .text "@@"
        .encoding "petscii_upper"

// --- Region $12c5-$1452 ---
.pc = $12c5 "Segment $12c5"
        .encoding "screencode_mixed"
        .text "@ "
        .byte $6b,$6c,$6d,$6e,$6f,$70,$71,$72,$73,$74,$75,$76,$77,$78,$79,$73 // scrcode: ................
        .byte $74,$75,$76,$7a,$7b,$7c,$7d,$7e,$7f,$80,$81,$82,$83,$84,$85,$86 // scrcode: ................
        .byte $87,$88,$89,$8a,$8b,$8c               // scrcode: ......
        .byte $8d,$87,$88,$8e,$8f,$8b,$90,$91,$92,$93,$94,$95,$96,$84,$97,$98 // scrcode: ................
        .byte $99,$9a,$8e,$9b,$9c,$9d,$9e,$9f,$a0,$a1,$a2,$a3,$90,$a4,$a5,$a6 // scrcode: ................
        .byte $a7,$a8,$a9,$aa,$ab,$80,$ac,$ad       // scrcode: ........
        .byte $ae,$af,$8b,$b0,$b1,$b2,$b3,$8f,$b4,$b5,$b6,$b7,$88,$b8,$b9,$ba // scrcode: ................
        .byte $bb,$bc,$bd,$be,$bf,$82,$c0,$c1,$c2,$c3,$87,$c4,$c5,$c6,$c7,$90 // scrcode: ................
        .byte $c8,$c9,$ca,$cb,$8f,$cc               // scrcode: ......
        .text " "
        .byte $ba                                   // scrcode: .
        .byte $bb,$bc,$cd,$ce,$cf,$84,$d0,$d1,$d2,$9a,$8e,$d3,$d4,$d5,$d6,$88 // scrcode: ................
        .byte $d7,$d8,$d9,$da,$90,$db,$dc,$ba,$bb,$bc,$dd,$de,$ab,$80,$df,$e0 // scrcode: ................
        .byte $e1,$af,$8b,$e2,$e3,$e4,$b3,$8f       // scrcode: ........
        .byte $b4,$e5,$e6,$b7,$88,$e7,$e8,$e9,$ea,$eb,$ec,$ed,$ee,$ef,$f0,$f1 // scrcode: ................
        .byte $f2,$f3,$f4,$f5,$f6,$f2               // scrcode: ......
        .text " "
        .byte $f7,$f8,$f6,$f9,$fa,$fb,$fc,$fd,$fe,$ff // scrcode: ..........
        .text " "
        .byte $9a                                   // scrcode: .
        .text "qqqqq"
        .fill 15, $11                               // scrcode: QQQQQQQQQQQQQQQ
        .byte $9d,$9d,$9d,$9d,$9d,$9d,$92,$d5,$ce,$c3,$c0,$c4,$ca,$1d // scrcode: ..............
        .text "q"
        .byte $c4,$c4,$ca,$c5,$1d,$cb,$c4,$cc,$ce,$c1,$1d,$c2,$c6,$cb,$c0,$c1 // scrcode: ................
        .byte $1d,$cf,$cf,$d4,$d3,$d0,$1d,$1d,$c8   // scrcode: .........
        .byte $c4,$cc,$cb,$ce,$cb,$1d,$c8,$c0,$ca,$1d,$c7,$d1,$d2,$1d,$1d,$1d // scrcode: ................
        .byte $1d,$1d,$1d                           // scrcode: ...
        .text "q"
        .byte $d9,$d9,$d9,$d9,$1d,$d8,$cd,$1d,$c2,$c6,$cb,$c0,$c1,$1d,$d1,$d2 // scrcode: ................
        .byte $1d,$c4,$ca,$c9                       // scrcode: ....
        .byte $c3,$c9,$c8,$c8,$c9,$c2,$1d,$d9,$d9,$d9,$d9,$91,$91,$91,$91,$91 // scrcode: ................
        .byte $1d,$1d,$1d                           // scrcode: ...
        .text "@"
        .encoding "petscii_upper"

dat_1400:
        // === Fill data (32 bytes, $1400-$141f) ===
        .fill 32, $0e
        .byte $09,$09,$02,$09,$02,$02,$08,$02,$08,$08,$0a,$08,$0a,$0a,$0f,$0a // ................
        .byte $0f,$0f,$07,$0f,$07,$07,$01,$07,$01,$01,$07,$01,$07,$07,$0f,$07 // ................
        .byte $0f,$0f,$0a,$0f,$0a,$0a,$08,$0a,$08,$08,$02,$08,$02,$02,$09,$02 // ................
        .byte $09,$09                               // ..

dat_1452:
        // === Fill data (1 bytes, $1452-$1452) ===
        .byte $00                                   // .

// --- Region $1500-$156b ---
.pc = $1500 "dat_1500"

dat_1500:
        .byte $89                                   // .

txt_1501:
        .text "PLEASE STAND BY..."
        .byte $86,$0d,$0d                           // ...

txt_1516:
        .text "PREPARE FOR THE INTRO!"
        .byte $86,$0d,$0d                           // ...

txt_152f:
        .text "READY."
        .byte $0d                                   // string terminator
        .byte $85
        .text "LIST"
        .byte $89,$0d,$0d

txt_153e:
        .text "SYS 2064:DUN BY GAZZA!"
        .byte $86,$0d,$0d                           // ...

txt_1557:
        .text "READY."
        .byte $0d                                   // string terminator
        .byte $86,$85                               // ..

txt_1560:
        .text "SYS 2064"
        .byte $86,$89,$0d                           // ...

dat_156b:
        // === Fill data (1 bytes, $156b-$156b) ===
        .byte $00                                   // .

// --- Region $158e-$158e ---
.pc = $158e "dat_158e"

dat_158e:
        // === Fill data (1 bytes, $158e-$158e) ===
        .byte $00                                   // .

// --- Region $1600-$17ff ---
.pc = $1600 "dat_1600"

dat_1600:
        .byte $0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e,$0e,$0e,$0e,$0e,$0e // ................
        .byte $0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e,$0e,$0e,$0e,$0e // ................
        .byte $0e,$0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e,$0e,$0e,$0e // ................
        .byte $0e,$0e,$0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e,$0e,$0e // ................
        .byte $0e,$0e,$0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e,$0e,$0e // ................
        .byte $0e,$0e,$0e,$0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e,$0e // ................
        .byte $0e,$0e,$0e,$0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e,$0e // ................
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e // ................
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e // ................
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e // ................
        .byte $0e,$0e,$0e,$0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e,$0e // ................
        .byte $0e,$0e,$0e,$0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e,$0e // ................
        .byte $0e,$0e,$0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e,$0e,$0e // ................
        .byte $0e,$0e,$0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e,$0e,$0e // ................
        .byte $0e,$0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e,$0e,$0e,$0e // ................
        .byte $0e,$0e,$06,$0e,$03,$0d,$01,$0d,$03,$0e,$06,$0e,$0e,$0e,$0e,$0e // ................
        .byte $00,$40,$00,$00,$10,$02,$00,$00,$02,$40,$04,$00,$10,$02,$40,$00 // .@.......@....@.
        .byte $02
        .byte $40,$05,$80,$10,$02
        .text "P$"
        .byte $22                                   // double quote
        .text "H"
        .byte $05,$aa,$90

txt_171d:
        .byte $22                                   // double quote character
        .text "Y$"
        .byte $b6                                   // '6' | $80 (end-of-string marker)

txt_1721:
        .text "JU"
        .byte $aa                                   // '*' | $80 (end-of-string marker)
        .byte $95,$aa,$59,$a4,$be,$eb,$75,$ae,$d5,$aa,$d9,$ac,$bf,$fb,$ff,$ee // ..Y...u.........
        .byte $f5,$bf,$f9,$ee,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff // ............

dat_1740:
        // === Fill data (192 bytes, $1740-$17ff) ===
        .fill 192, $0e

// --- Region $1816-$1829 ---
.pc = $1816 "Segment $1816"
        .byte $26,$ee,$16,$18,$ee,$16,$18,$ad,$16,$18,$c9,$32,$d0,$05,$a9,$01 // &..........2....
        .byte $8d,$15,$18,$60                       // ...`

// --- Region $1c01-$1c3f ---
.pc = $1c01 "dat_1c01"

dat_1c01:
        .byte $29,$01
        .byte $f0,$2a,$a6                           // ####......#.#.#.#.#..##.
        .byte $ff,$8e,$75                           // #########...###..###.#.#
        .byte $21,$a9,$89                           // ..#....##.#.#..##...#..#
        .byte $85,$f9,$a9                           // #....#.######..##.#.#..#
        .byte $1e,$85,$fa                           // ...####.#....#.######.#.
        .byte $a6,$ff,$bd                           // #.#..##.#########.####.#

txt_1c15:
        .byte $42,$21,$a0                           // .#....#...#....##.#.....
        .byte $0b,$d1,$f9                           // ....#.####.#...######..#
        .byte $b0,$33,$a0                           // #.##......##..###.#.....
        .byte $0a

loc_1c1f:
        .byte $d1,$f9
        .byte $b0,$38,$88                           // #.##......###...#...#...
        .byte $c0,$06,$d0                           // ##...........##.##.#....
        .byte $f7,$d1,$f9                           // ####.#####.#...######..#
        .byte $b0,$06,$4c                           // #.##.........##..#..##..
        .byte $7b,$1c

loc_1c2f:
        .byte $4c
        .byte $6a,$1c

loc_1c32:
        .byte $a5
        .byte $ff,$0a,$d0                           // ########....#.#.##.#....
        .byte $03,$18,$69                           // ......##...##....##.#..#
        .byte $01

loc_1c3a:
        .byte $8d,$68
        .byte $21,$ae,$72                           // ..#....##.#.###..###..#.
        .byte $21                                   // sprite 0 padding

// --- Region $1d64-$1f07 ---
.pc = $1d64 "dat_1d64"

dat_1d64:
        .byte $0c,$1c,$2d,$3e,$51,$66,$7b,$91,$a9,$c3,$dd,$fa,$18,$38,$5a,$7d // ..->Qf{......8Z}
        .byte $a3,$cc,$f6,$23,$53,$86,$bb,$e0,$30,$70,$b4,$fb,$47,$98,$ed,$47 // ...#S...0p..G..G
        .byte $a7,$0c,$77,$e9,$61,$e1,$68,$f7,$8f,$30,$da,$8f,$4e,$18,$ef,$d2 // ..w.a.h..0..N...
        .byte $c3,$c3,$d1,$ef,$1f,$60,$b5,$1e,$9c,$31,$df,$a5,$87,$86,$a2,$df // .....`...1......
        .byte $3e,$c1,$6b,$3c,$39,$63,$be,$4b,$0f,$0c,$45,$bf,$7d,$83,$d6,$79 // >.k<9c.K..E.}..y
        .byte $73,$c7,$7c,$97,$1e,$18,$8b,$7e,$fa,$06,$ac,$f3,$e6,$8f,$f8,$2e // s.|....~........
        .fill 12, $01
        .byte $02,$02,$02,$02,$02,$02,$02,$03,$03,$03,$03,$03,$04,$04,$04,$04 // ................
        .byte $05,$05,$05,$06,$06,$07,$07,$07,$08,$08,$09,$09,$0a,$0b,$0b,$0c // ................
        .byte $0d,$0e,$0e,$0f,$10,$11,$12,$13,$15,$16,$17,$19,$1a,$1c,$1d,$1f // ................

txt_1e00:
        .text "!#%'*,/258;?CGKOTY"
        .byte $5e,$64,$6a,$70,$77,$7e,$86,$8e,$96,$9f,$a8,$b3,$7a,$c9,$d4,$e1 // ^djpw~......z...
        .byte $ee,$fd                               // ..

txt_1e24:
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $00                                   // string terminator
        .byte $00,$00,$00,$00,$00,$00
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $06,$06,$07,$07,$08,$08
        .byte $07,$07,$56,$76,$1e,$1e,$46,$66,$1e,$1e,$13,$01,$ff,$23,$08,$13 // ..Vv..Ff.....#..
        .byte $03,$23,$00,$00,$00,$00,$00,$00,$00,$00,$81,$41,$40,$80,$80,$80 // .#.........A@...
        .byte $80,$80,$10,$10,$10,$10,$10,$10,$10,$10,$24,$fd,$fb,$f9,$f8,$f7 // ..........$.....
        .byte $f6,$f6,$f5,$f5,$f4,$f4,$f5,$f6,$f5,$f4,$81 // ...........

txt_1e77:
        .text "A"
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $00                                   // string terminator
        .byte $0c,$18,$c0,$f0,$f8,$f4,$f2,$40,$01,$02,$06,$0c,$10,$30,$04,$a0 // .......@.....0..
        .byte $08,$60,$04,$80,$0c,$10,$03,$80,$10,$40,$00,$80,$50,$1f,$1f,$20 // .`.......@..P.. 
        .byte $65,$23,$6c,$23,$96,$23,$b9,$23,$c5,$23,$e1,$23,$04,$24,$1c // e#l#.#.#.#.#.$.

txt_1eb6:
        .text "$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$"
        .byte $40                                   // @ character
        .text "$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$"
        .byte $b6                                   // '6' | $80 (end-of-string marker)
        .byte $24,$f6,$24,$15,$25,$7b,$01,$04,$06,$07,$ff,$00,$00,$00 // $.$.%{........

// --- Region $1f73-$1f84 ---
.pc = $1f73 "Segment $1f73"
        .fill 13, $00
        .byte $02,$02,$05,$05,$ff                   // .....

// --- Region $1fa1-$1fa1 ---
.pc = $1fa1 "dat_1fa1"

dat_1fa1:
        // === Fill data (1 bytes, $1fa1-$1fa1) ===
        .byte $00                                   // .

// --- Region $2000-$200f ---
.pc = $2000 "chr_2000"

chr_2000:
        // === Charset data (16 bytes, $2000-$200f) ===
        .byte $78,$a9,$7f,$8d,$0d,$dc,$a9,$01       // char 0 @+0
        .byte $8d,$1a,$d0,$a9,$fa,$8d,$12,$d0       // char 1 @+1

// --- Region $204f-$2087 ---
.pc = $204f "chr_204f"

chr_204f:
        // === Charset data (57 bytes, $204f-$2087) ===
        .byte $00,$03,$ff,$00,$00,$00,$00,$00       // char 0 @+0
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 1 @+1
        .byte $00,$80,$80,$80,$80,$80,$80,$80       // char 2 @+2
        .byte $80,$80,$80,$80,$80,$8b,$85,$8e       // char 3 @+3
        .byte $94,$95,$83,$8b,$99,$80,$92,$81       // char 4 @+4
        .byte $83,$89,$8e,$87,$a1,$80,$80,$80       // char 5 @+5
        .byte $80,$80,$80,$80,$80,$80,$80,$80       // char 6 @+6
        .byte $80                                   // char 7 (partial)

// --- Region $20af-$20af ---
.pc = $20af "chr_20af"

chr_20af:
        // === Charset data (1 bytes, $20af-$20af) ===
        .byte $00                                   // char 0 (partial)

// --- Region $2117-$2516 ---
.pc = $2117 "chr_2117"

chr_2117:
        // === Charset data (1024 bytes, $2117-$2516) ===
        .byte $a9,$02,$8d,$74,$21,$60,$01,$00       // char 0 @+0
        .byte $07,$0e,$02,$02,$00,$06,$09,$08       // char 1 @+1
        .byte $05,$05,$05,$05,$05,$05,$41,$41       // char 2 @+2
        .byte $11,$40,$15,$3c,$11,$01,$02,$2a       // char 3 @+3
        .byte $03,$21,$2a,$03,$21,$3e,$86,$87       // char 4 @+4
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 5 @+5
        .byte $00,$09,$08,$08,$09,$08,$18,$40       // char 6 @+6
        .byte $00,$00,$00,$88,$37,$40,$40,$00       // char 7 @+7
        .byte $ff,$06,$00,$00,$00,$00,$00,$04       // char 8 @+8
        .byte $00,$00,$03,$03,$03,$00,$00,$00       // char 9 @+9
        .byte $06,$02,$00,$50,$50,$00,$00,$00       // char 10 @+10
        .byte $01,$01,$01,$00,$01,$00,$01,$00       // char 11 @+11
        .byte $00,$00,$41,$41,$11,$b0,$25,$00       // char 12 @+12
        .byte $0e,$00,$00,$00,$00,$00,$00,$00       // char 13 @+13
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 14 @+14
        .byte $00,$08,$41,$00,$9b,$00,$00,$41       // char 15 @+15
        .byte $81,$18,$11,$00,$78,$00,$00,$00       // char 16 @+16
        .byte $10,$00,$81,$04,$04,$02,$00,$00       // char 17 @+17
        .byte $01,$08,$11,$00,$a8,$00,$01,$00       // char 18 @+18
        .byte $10,$08,$17,$00,$e8,$00,$00,$00       // char 19 @+19
        .byte $80,$09,$41,$00,$a8,$00,$37,$40       // char 20 @+20
        .byte $40,$08,$27,$00,$a9,$00,$1e,$f1       // char 21 @+21
        .byte $40,$01,$11,$00,$9e,$00,$25,$1f       // char 22 @+22
        .byte $40,$08,$41,$00,$a9,$00,$00,$f1       // char 23 @+23
        .byte $84,$08,$21,$00,$ae,$00,$25,$aa       // char 24 @+24
        .byte $40,$0f,$21,$00,$ae,$00,$34,$88       // char 25 @+25
        .byte $40,$02,$51,$00,$ae,$00,$25,$1f       // char 26 @+26
        .byte $40,$03,$41,$00,$ae,$00,$1f,$f1       // char 27 @+27
        .byte $40,$01,$41,$00,$a9,$23,$40,$00       // char 28 @+28
        .byte $c0,$0f,$41,$08,$98,$00,$00,$44       // char 29 @+29
        .byte $60,$08,$41,$00,$a9,$40,$35,$00       // char 30 @+30
        .byte $01,$09,$41,$02,$1a,$00,$37,$40       // char 31 @+31
        .byte $40,$08,$11,$04,$a8,$00,$11,$00       // char 32 ' '
        .byte $10,$c5,$41,$00,$59,$00,$47,$05       // char 33 '!'
        .byte $84,$08,$05,$00,$a7,$00,$00,$41       // char 34 '"'
        .byte $37,$04,$41,$13,$fb,$00,$19,$02       // char 35 '#'
        .byte $81,$19,$41,$00,$1e,$00,$37,$73       // char 36 '$'
        .byte $04,$01,$41,$00,$4f,$00,$00           // char 37 (partial)

txt_2246:
        .byte $41                                   // char 37 (partial)
        .byte $40,$c5,$41,$00,$59,$00,$57,$05       // char 38 '&'
        .byte $84,$01,$41,$00,$a9,$00,$38,$73       // char 39 '''
        .byte $04,$00,$81,$04,$04,$02,$00,$00       // char 40 '('
        .byte $01,$08,$15,$00,$68,$00,$00,$00       // char 41 ')'
        .byte $80,$08,$15,$00,$d8,$00,$00,$00       // char 42 '*'
        .byte $80,$18,$11,$08,$0d,$00,$00,$00       // char 43 '+'
        .byte $00,$07,$41,$c0,$dd,$e8,$53,$51       // char 44 ','
        .byte $00,$17,$41,$09,$aa,$02,$00,$a1       // char 45 '-'
        .byte $01,$27,$82,$2b,$29,$27,$22,$ff       // char 46 '.'

txt_228f:
        .byte $27,$26,$ca,$85,$24,$82,$26,$9d       // char 47 '/'
        .byte $27,$85,$29,$27,$82,$29,$27,$85       // char 48 '0'
        .byte $29,$88,$2b,$82,$2e,$91,$30,$2e       // char 49 '1'
        .byte $2b,$85                               // char 50 (partial)

txt_22a9:
        .byte $30,$2e,$2b,$29,$2b,$29               // char 50 (partial)
        .byte $27,$29,$cd,$a9,$2b,$85,$29,$a9       // char 51 '3'
        .byte $27,$85,$2b,$a9,$24,$c6,$82           // char 52 (partial)

txt_22be:
        .byte $2b                                   // char 52 (partial)
        .byte $24,$24,$29,$24,$24,$2b,$24,$24       // char 53 '5'
        .byte $29,$24,$29,$27,$26,$24,$22,$ff       // char 54 '6'
        .byte $00,$c6,$85,$24,$82,$22,$a0,$24       // char 55 '7'
        .byte $85                                   // char 56 (partial)

txt_22d8:
        .byte $27,$27,$27,$26,$26,$24,$22           // char 56 (partial)
        .byte $88,$27,$ac,$24,$85,$2b,$c7           // char 57 (partial)

txt_22e6:
        .byte $24                                   // char 57 (partial)
        .byte $24,$2c,$2b,$29,$27,$22,$ff,$ff       // char 58 ':'
        .byte $29,$27,$22,$ff,$ca,$85,$27,$82       // char 59 ';'
        .byte $24,$c7                               // char 60 (partial)

txt_22f9:
        .byte $27,$26,$ca,$85,$24,$82               // char 60 (partial)
        .byte $26,$9d,$27,$85,$29,$27,$82,$29       // char 61 '='
        .byte $27,$85,$29,$88,$2b,$82,$2e,$91       // char 62 '>'
        .byte $30,$2e,$2b,$85                       // char 63 (partial)

txt_2313:
        .byte $30,$2e,$2b,$29                       // char 63 (partial)
        .byte $2b,$29,$27,$29,$cd,$a9,$2b,$85       // char 64 '@'
        .byte $29,$a9,$27,$85,$2b,$a9,$24,$c6       // char 65 'A'
        .byte $82                                   // char 66 (partial)

txt_2328:
        .byte $2b,$24,$24,$29,$24,$24,$2b           // char 66 (partial)
        .byte $24,$24,$29,$24,$29,$27,$26,$24       // char 67 'C'
        .byte $22,$ff,$c7,$85,$27,$82,$24,$c5       // char 68 'D'
        .byte $00,$c6,$85,$24,$82,$22,$a0,$24       // char 69 'E'
        .byte $85                                   // char 70 (partial)

txt_2348:
        .byte $27,$27,$27,$26,$26,$24,$22           // char 70 (partial)
        .byte $88,$27,$ac,$24,$85,$2b,$c7           // char 71 (partial)

txt_2356:
        .byte $24                                   // char 71 (partial)
        .byte $24,$2c,$2b,$29,$27,$22,$ff,$ff       // char 72 'H'
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$c0,$af       // char 73 'I'
        .byte $3c,$3c,$3c,$3c,$ff,$d1,$88           // char 74 (partial)

txt_236e:
        .byte $36                                   // char 74 (partial)
        .byte $37,$a9,$39,$81,$3a,$83,$3b,$8b       // char 75 'K'
        .byte $3e,$8b,$39,$85,$36,$91,$39,$82       // char 76 'L'
        .byte $37,$36,$97,$37,$82,$c6               // char 77 (partial)

txt_2385:
        .byte $3e,$43                               // char 77 (partial)
        .byte $4a,$43,$3e,$43,$4a,$43,$3e,$43       // char 78 'N'
        .byte $4a,$43,$3e,$43,$4a,$43,$ff,$c1       // char 79 'O'
        .byte $85,$1a,$26,$1a,$26,$1a,$26,$1a       // char 80 'P'
        .byte $26,$17,$23,$17,$23,$17,$23,$17       // char 81 'Q'
        .byte $23,$13,$1f,$13,$1f,$13,$1f,$13       // char 82 'R'
        .byte $1f,$15,$21,$15,$21,$15,$21,$15       // char 83 'S'
        .byte $21,$ff,$c4,$85,$3c,$c3,$85,$5f       // char 84 'T'
        .byte $c2,$3c,$85,$c3,$5f,$ff,$d1,$88       // char 85 'U'

txt_23c7:
        .byte $36,$37,$a9,$39,$81,$3a,$83,$3b       // char 86 'V'
        .byte $8b,$3e,$39,$85,$36,$a3,$3b,$85       // char 87 'W'
        .byte $3b,$9d,$39,$88,$39,$88,$3b,$85       // char 88 'X'
        .byte $3d,$ff,$c1,$85,$15,$21,$15,$21       // char 89 'Y'
        .byte $15,$21,$15,$21,$17,$23,$17,$23       // char 90 'Z'
        .byte $17,$23,$17,$23,$13,$1f,$13,$1f       // char 91 '['
        .byte $13,$1f,$13,$1f,$15,$21,$15,$21       // char 92 '\'
        .byte $15,$21,$15,$21,$ff,$d1,$9d,$3d       // char 93 ']'
        .byte $85,$3e,$40,$9d,$3e,$88,$3b,$3d       // char 94 '^'
        .byte $85,$3e,$91,$42,$82                   // char 95 (partial)

txt_2414:
        .byte $40,$3e,$af                           // char 95 (partial)
        .byte $3b,$8b,$3d,$3b,$ff,$d1,$88,$39       // char 96 '`'
        .byte $3b,$85,$3d,$9d,$3d,$85,$3e,$3b       // char 97 'a'
        .byte $9d,$3e,$97,$3b,$39,$32,$34           // char 98 (partial)

dat_242e:
        // === Fill data (33 bytes, $242e-$244e) ===
        .fill 18, $ff

spr_2440:
        .fill 15, $ff

txt_244f:
        .byte $26,$27,$24,$cc,$82,$2b,$29,$85       // char 103 'g'
        .byte $2b,$97,$29,$c6,$82                   // char 104 (partial)

txt_245c:
        .byte $26,$27,$29                           // char 104 (partial)
        .byte $2b,$24,$26,$27,$29,$c9               // char 105 (partial)

txt_2465:
        .byte $22,$24                               // char 105 (partial)
        .byte $26,$27,$26,$24,$22,$c6,$26,$27       // char 106 'j'
        .byte $26,$22,$8e,$24,$88,$27,$27,$82       // char 107 'k'

txt_2477:
        .byte $26,$27,$c5,$00,$c9,$88,$2b,$85       // char 108 'l'
        .byte $c3,$2b,$cc,$82,$2b,$2e,$91,$30       // char 109 'm'
        .byte $82,$2b,$2e,$97,$30,$82               // char 110 (partial)

txt_248d:
        .byte $2b,$30                               // char 110 (partial)
        .byte $c5,$00,$00,$c8,$8b,$30,$82           // char 111 (partial)

txt_2496:
        .byte $2e                                   // char 111 (partial)
        .byte $30,$33,$30,$c7                       // char 112 (partial)

txt_249b:
        .byte $2e,$2b,$c8                           // char 112 (partial)

txt_249e:
        .byte $2b                                   // char 112 (partial)
        .byte $2e,$30,$2e,$c7,$8b,$2b,$c8,$9d       // char 113 'q'
        .byte $30,$c6,$88,$2b,$29,$85,$27,$29       // char 114 'r'
        .byte $27,$82,$2b,$29,$27,$22,$ff           // char 115 (partial)

txt_24b6:
        .byte $27                                   // char 115 (partial)
        .byte $26,$ca,$85,$24,$82,$26,$9d,$27       // char 116 't'
        .byte $85,$29,$27,$82,$29,$27,$85,$29       // char 117 'u'
        .byte $88,$2b,$82,$2e,$91,$30,$2e,$2b       // char 118 'v'
        .byte $85                                   // char 119 (partial)

txt_24d0:
        .byte $30,$2e,$2b,$29,$2b,$29,$27           // char 119 (partial)
        .byte $29,$cd,$a9,$2b,$85,$29,$a9,$27       // char 120 'x'
        .byte $85,$2b,$a9,$24,$c6,$82               // char 121 (partial)

txt_24e5:
        .byte $2b,$24                               // char 121 (partial)
        .byte $24,$29,$24,$24,$2b,$24,$24,$29       // char 122 'z'
        .byte $24,$29,$27,$26,$24,$22,$ff,$00       // char 123 '{'
        .byte $c6,$85,$24,$82,$22,$a0,$24,$85       // char 124 '|'

txt_24ff:
        .byte $27,$27,$27,$26,$26,$24,$22,$88       // char 125 '}'
        .byte $27,$ac,$24,$85,$2b,$c7               // char 126 (partial)

txt_250d:
        .byte $24,$24                               // char 126 (partial)
        .byte $2c,$2b,$29,$27,$22,$ff,$ff           // char 127 (partial)

dat_2516:
        // === Fill data (1 bytes, $2516-$2516) ===
        .byte $00                                   // .

// --- Region $25fe-$25ff ---
.pc = $25fe "dat_25fe"

dat_25fe:
        .byte $2f                                   // char 156 (partial)
        .byte $d0                                   // char 157 (partial)

// --- Region $2630-$270f ---
.pc = $2630 "Segment $2630"
        .byte $a0,$00,$a2,$08,$b9,$c1,$2e           // char 0 (partial)
        .byte $8d,$16,$d0,$8d,$16,$d0,$c8,$ca       // char 1 @+1
        .byte $f0,$f1,$b9,$00,$2f,$8d,$22,$d0       // char 2 @+2
        .byte $b9,$00,$10,$8d,$ff,$25,$b9,$00       // char 3 @+3
        .byte $10,$8d,$ff,$25,$b9,$00,$10,$8d       // char 4 @+4
        .byte $ff,$25,$b9,$c0,$2f,$8d,$23,$d0       // char 5 @+5
        .byte $c0,$3e,$90,$d1,$60,$ee,$19,$d0       // char 6 @+6
        .byte $ad,$c0,$2e,$8d,$16,$d0,$ea,$ea       // char 7 @+7
        .byte $ea,$ea,$ea                           // char 8 (partial)

txt_2672:
        .byte $20,$30,$26,$a9,$c0                   // char 8 (partial)
        .byte $8d,$16,$d0,$a9,$1d,$8d,$18,$d0       // char 9 @+9
        .byte $ad,$fe,$10,$d0,$24,$a2,$06,$ca       // char 10 @+10
        .byte $d0,$fd,$ad,$b0,$2e,$8d,$21,$d0       // char 11 @+11
        .byte $8d,$20,$d0,$a2,$01,$ca,$d0,$fd       // char 12 @+12

txt_2697:
        .byte $20,$30,$27,$a9,$c0,$ea,$8d,$16       // char 13 @+13
        .byte $d0,$a2,$07,$ca,$d0,$fd               // char 14 (partial)

txt_26a5:
        .byte $20,$59                               // char 14 (partial)
        .byte $27,$a9,$20,$cd,$12,$d0,$d0,$fb       // char 15 @+15
        .byte $a2,$0a,$ca,$d0,$fd,$a2,$0e,$a0       // char 16 @+16
        .byte $06,$a9,$c8,$8e,$20,$d0,$8c,$21       // char 17 @+17
        .byte $d0,$8d,$16,$d0,$20,$90,$27,$a9       // char 18 @+18
        .byte $25,$cd,$12,$d0,$d0,$fb,$ad,$ff       // char 19 @+19
        .byte $10,$f0,$09,$ee                       // char 20 (partial)

txt_26d3:
        .byte $42,$26,$ce                           // char 20 (partial)

txt_26d6:
        .byte $5a                                   // char 20 (partial)
        .byte $26,$ce,$ff,$10,$a9,$00,$8d,$20       // char 21 @+21
        .byte $d0,$8d,$21,$d0,$20,$06,$18,$a9       // char 22 @+22
        .byte $13,$8d,$18,$d0,$ad,$a9,$26,$c9       // char 23 @+23
        .byte $bc,$f0,$03,$ce,$a9,$26,$ce,$fc       // char 24 @+24
        .byte $10,$d0,$0d,$ad,$f7,$06,$49,$80       // char 25 @+25
        .byte $8d,$f7,$06,$a9,$14,$8d,$fc,$10       // char 26 @+26
        .byte $4c,$81,$ea,$00,$00,$00,$00,$00       // char 27 @+27
        .byte $00                                   // char 28 (partial)

// --- Region $272e-$280f ---
.pc = $272e "chr_272e"

chr_272e:
        // === Charset data (210 bytes, $272e-$27ff) ===
        .byte $00,$00,$a0,$08,$bd,$b1,$2e,$8d       // char 0 @+0
        .byte $20,$d0,$8d,$21,$d0,$e8,$88,$f0       // char 1 @+1
        .byte $f1,$e0,$0f,$b0,$15,$ea,$ea,$ea       // char 2 @+2
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 3 @+3
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 4 @+4
        .byte $90,$da,$60,$a0,$08,$bd,$70,$2e       // char 5 @+5
        .byte $8d,$20,$d0,$8d,$21,$d0,$e8,$88       // char 6 @+6
        .byte $f0,$f1,$e0,$37,$b0,$15,$ea,$ea       // char 7 @+7
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 8 @+8
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 9 @+9
        .byte $ea,$90                               // char 10 (partial)

spr_2780:
        .byte $da,$60,$00,$00,$00,$00               // char 10 (partial)
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 11 @+11
        .byte $00,$00,$ad,$fb,$10,$d0,$27,$a2       // char 12 @+12
        .byte $3e,$bd,$c0,$2e,$9d,$c1,$2e,$ca       // char 13 @+13
        .byte $10,$f7,$ad,$08,$09,$d0,$0c,$a9       // char 14 @+14
        .byte $09,$8d,$a2,$27,$a9,$08,$8d,$a1       // char 15 @+15
        .byte $27,$d0,$ef,$8d,$c0,$2e,$ee,$a1       // char 16 @+16
        .byte $27,$d0,$03,$ee,$a2,$27,$ad,$fa       // char 17 @+17
        .byte $10,$d0,$3b,$ad,$9b,$26,$29,$07       // char 18 @+18
        .byte $38,$e5,$02,$29,$07,$09,$c0,$8d       // char 19 @+19
        .byte $9b,$26,$b0,$2a,$a2,$00,$bd,$09       // char 20 @+20
        .byte $06,$9d,$08,$06,$e8,$e0,$50,$d0       // char 21 @+21
        .byte $f5,$a0,$00,$b1,$3f,$aa,$29,$80       // char 22 @+22
        .byte $d0,$05,$20,$00,$28,$a2,$80,$8a       // char 23 @+23
        .byte $8d,$2f,$06,$49,$40,$8d,$57,$06       // char 24 @+24
        .byte $e6,$3f,$d0,$02,$e6                   // char 25 (partial)

txt_27fb:
        .byte $40,$4c,$c0                           // char 25 (partial)
        .byte $2a,$00,$8a,$d0,$09,$a9,$ff,$85       // char 26 @+26
        .byte $3f,$a9,$37,$85,$40,$60,$4c,$35       // char 27 @+27
        .byte $29,$00                               // char 28 (partial)

// --- Region $2900-$2947 ---
.pc = $2900 "spr_2900"

spr_2900:
        // === Sprite data (64 bytes, $2900-$293f) ===
        .byte $ad,$f9,$10                           // #.#.##.######..#...#....
        .byte $d0,$2f,$a2                           // ##.#......#.#####.#...#.
        .byte $37,$bd,$30                           // ..##.####.####.#..##....
        .byte $2e,$9d,$70                           // ..#.###.#..###.#.###....
        .byte $2e,$ca,$10                           // ..#.###.##..#.#....#....
        .byte $f7,$ac

txt_2911:
        .byte $20
        .byte $2d,$a2,$09                           // ..#.##.##.#...#.....#..#
        .byte $bd,$10,$2e                           // #.####.#...#......#.###.
        .byte $99,$70,$2e                           // #..##..#.###......#.###.
        .byte $c8,$ca,$10                           // ##..#...##..#.#....#....
        .byte $f6,$ee,$11                           // ####.##.###.###....#...#
        .byte $29,$ac

txt_2923:
        .byte $21
        .byte $2c,$a2,$07                           // ..#.##..#.#...#......###
        .byte $bd,$20,$2e                           // #.####.#..#.......#.###.
        .byte $99,$70,$2e                           // #..##..#.###......#.###.
        .byte $c8,$ca,$10                           // ##..#...##..#.#....#....
        .byte $f6,$ee,$23                           // ####.##.###.###...#...##
        .byte $29,$60,$8a                           // ..#.#..#.##.....#...#.#.
        .byte $c9,$09,$d0                           // ##..#..#....#..###.#....
        .byte $06,$a9,$00                           // .....##.#.#.#..#........
        .byte $8d,$f9,$10                           // #...##.######..#...#....
        .byte $60                                   // sprite 0 padding
        .byte $c9,$0a,$d0                           // ##..#..#....#.#.##.#....
        .byte $06,$a9,$01                           // .....##.#.#.#..#.......#
        .byte $8d,$f9

// --- Region $2a55-$2a55 ---
.pc = $2a55 "dat_2a55"

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

// --- Region $2aac-$2aff ---
.pc = $2aac "dat_2aac"

dat_2aac:
        .byte $06,$06,$0e,$0e,$03,$03,$01,$01,$01,$01,$03,$03,$0e,$0e,$06,$06 // ................
        .byte $00,$00,$00,$00,$ad,$fe,$25,$d0,$36,$a2,$00,$bd,$09,$da,$9d,$08 // ......%.6.......
        .byte $da,$bd,$31,$da,$9d,$30,$da,$e8,$e0,$28,$d0,$ef,$ad,$80,$2b,$8d // ..1..0...(....+.
        .byte $2f,$da,$ad,$80,$2b,$8d,$57,$da,$ee,$d9,$2a,$ee,$df,$2a,$ad,$df // /...+.W...*..*..
        .byte $2a,$c9,$00,$d0,$0a,$a9,$80,$8d,$d9,$2a,$a9,$c0,$8d,$df,$2a,$4c // *........*....*L
        .byte $00,$29,$00,$00                       // .)..

// --- Region $2b4f-$2f00 ---
.pc = $2b4f "dat_2b4f"

dat_2b4f:
        .byte $00,$f3,$f1,$e4,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 // ................
        .byte $00,$56,$7e,$4b,$98,$63,$98,$57,$67,$eb,$7e,$e0,$98,$f8,$98,$eb // .V~K.c.Wg.~.....
        .byte $67,$fe,$f3,$f3,$ff,$fe,$fd,$fd,$ff,$0d,$0e,$0f,$10,$0d,$0e,$0f // g...............
        .byte $10,$00,$06,$0e,$03,$0d,$01,$01,$0d,$03,$0e,$06,$00,$00,$00,$00 // ................
        .byte $00,$00,$06,$0e,$03,$0d,$01,$01,$0d,$03,$0e,$06,$00,$00,$00,$00 // ................
        .byte $00,$00,$0b,$05,$03,$0d,$01,$01,$0d,$03,$05,$0b,$00,$00,$00,$00 // ................
        .byte $00,$00,$0b,$05,$03,$0d,$01,$01,$0d,$03,$05,$0b,$00,$00,$00,$00 // ................
        .byte $00,$00,$09,$08,$07,$0d,$01,$01,$0d,$07,$08,$09,$00,$00,$00,$00 // ................
        .byte $00,$00,$09,$08,$07,$0d,$01,$01,$0d,$07,$08,$09,$00,$00,$00,$00 // ................
        .byte $00,$00,$02,$0a,$07,$0d,$01,$01,$0d,$07,$0a,$02,$00,$00,$00,$00 // ................
        .byte $00,$00,$02,$0a,$07,$0d,$01,$01,$0d,$07,$0a,$02,$00,$00,$00,$00 // ................
        .byte $00,$18,$18,$19,$19,$1a,$1a,$1b,$1b,$1c,$1c,$1d,$1d,$1e,$1e,$1f // ................
        .byte $1f                                   // .

txt_2c10:
        .text "   !!!"
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .text "#############"
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .text "!!!   "
        .byte $1f,$1f,$1e,$1e,$1d,$1d,$1c,$1c,$1b,$1b,$1a,$1a,$19,$19,$18,$17 // ................
        .byte $17,$16,$16,$15,$15,$14,$14,$13,$13,$12,$12,$11,$11,$10,$10,$0f // ................
        .byte $0f,$0f,$0e,$0e,$0e,$0d,$0d,$0d,$0d,$0c,$0c,$0c,$0c,$0c,$0c,$0c // ................
        .byte $0c,$0c,$0c,$0c,$0c,$0d,$0d,$0d,$0d,$0d,$0e,$0e,$0e,$0f,$0f,$0f // ................
        .byte $10,$10,$11,$11,$12,$12,$13,$13,$14,$14,$15,$15,$16,$16,$17,$18 // ................
        .byte $18,$19,$19,$1a,$1a,$1b,$1b,$1c,$1c,$1d,$1d,$1e,$1e,$1f,$1f // ...............

txt_2c90:
        .text "   !!!"
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .text "############"
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .text "!!!   "
        .byte $1f,$1f,$1e,$1e,$1d,$1d,$1c,$1c,$1b,$1b,$1a,$1a,$19,$19,$18,$17 // ................
        .byte $17,$16,$16,$15,$15,$14,$14,$13,$13,$12,$12,$11,$11,$10,$10,$0f // ................
        .byte $0f,$0f,$0e,$0e,$0e,$0d,$0d,$0d,$0d,$0c,$0c,$0c,$0c,$0c,$0c,$0c // ................
        .byte $0c,$0c,$0c,$0c,$0c,$0d,$0d,$0d,$0d,$0d,$0e,$0e,$0e,$0f,$0f,$0f // ................
        .byte $10,$10,$11,$11,$12,$12,$13,$13,$14,$14,$15,$15,$16,$16,$17,$18 // ................
        .byte $19,$1a,$1c,$1d,$1f                   // .....

txt_2d06:
        .text " !"
        .byte $22                                   // double quote character
        .text "#$%%&&&&&&&%%$#"
        .byte $22                                   // double quote character
        .text "! "
        .byte $1f,$1d,$1c,$1a,$19,$17,$16,$15,$13,$12,$10,$0f,$0e,$0d,$0c,$0b // ................
        .byte $0a,$0a,$09,$09,$09,$09,$09,$09,$09,$0a,$0a,$0b,$0c,$0d,$0e,$0f // ................
        .byte $10,$12,$13,$15,$16,$18,$19,$1a,$1c,$1d,$1f // ...........

txt_2d46:
        .text " !"
        .byte $22                                   // double quote character
        .text "#$%%&&&&&&&%%$#"
        .byte $22                                   // double quote character
        .text "! "
        .byte $1f,$1d,$1c,$1a,$19,$17,$16,$14,$13,$12,$10,$0f,$0e,$0d,$0c,$0b // ................
        .byte $0a,$0a,$09,$09,$09,$09,$09,$09,$09,$0a,$0a,$0b,$0c,$0d,$0e,$0f // ................
        .byte $11,$12,$13,$15,$16,$18,$19,$1b,$1c,$1d,$1f // ...........

txt_2d86:
        .text " !"
        .byte $22                                   // double quote character
        .text "#$%%&&&&&&&%%$#"
        .byte $22                                   // double quote character
        .text "! "
        .byte $1e,$1d,$1c,$1a,$19,$17,$16,$14,$13,$12,$10,$0f,$0e,$0d,$0c,$0b // ................
        .byte $0a,$0a,$09,$09,$09,$09,$09,$09,$09,$0a,$0a,$0b,$0c,$0d,$0e,$0f // ................
        .byte $11,$12,$13,$15,$16,$18,$19,$1b,$1c,$1d,$1f // ...........

txt_2dc6:
        .text " !"
        .byte $22                                   // double quote character
        .text "#$%%&&&&&&&%%$#"
        .byte $22                                   // double quote character
        .text "! "
        .byte $1e,$1d,$1c,$1a,$19,$17,$16,$14,$13,$12,$10,$0f,$0e,$0d,$0c,$0b // ................
        .byte $0a,$0a,$09,$09,$09,$09,$09,$09,$09,$0a,$0a,$0b,$0c,$0d,$0e,$0f // ................
        .byte $11,$12,$13,$15,$16,$00,$00,$00,$00,$00,$00,$00,$06,$0e,$03,$01 // ................
        .byte $03,$0e,$06,$0e,$03,$06,$04,$0a,$0f,$07,$07,$0f,$0a,$04,$06,$00 // ................
        .byte $00,$00,$00,$00,$00,$09,$08,$05,$0d,$0d,$05,$08,$09,$00,$00,$00 // ................
        .fill 13, $00
        .byte $06,$06,$0e,$06,$0e,$0e,$03,$0e,$03,$03,$0d,$03,$0d,$0d,$07,$0d // ................
        .fill 10, $07
        .byte $0d,$07,$0d,$0d,$03,$0d,$03,$03,$0e,$03,$0e,$0e,$06,$0e,$06,$06 // ................
        .fill 22, $00
        .byte $06,$06,$0e,$06,$0e,$0e,$03,$0e,$03,$03,$0d,$03,$0d,$0d,$07,$0d // ................
        .fill 10, $07
        .byte $0d,$07,$0d,$0d,$03,$0d,$03,$03,$0e,$03,$0e,$0e,$06,$0e,$06,$06 // ................
        .fill 8, $00
        .byte $70,$00,$00,$60,$00,$00,$06,$00,$06,$0e,$00,$06,$0e,$0f,$0a,$02 // p..`............
        .byte $00,$0a,$02,$00,$02,$00               // ......

dat_2ec0:
        .text "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
        .byte $00                                   // string terminator

// --- Region $2f40-$2fc0 ---
.pc = $2f40 "dat_2f40"

dat_2f40:
        // === Fill data (64 bytes, $2f40-$2f7f) ===
        .fill 64, $06

dat_2f80:
        // === Fill data (64 bytes, $2f80-$2fbf) ===
        .fill 64, $0e

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

// --- Region $3000-$3057 ---
.pc = $3000 "dat_3000"

dat_3000:
        .byte $3c,$66,$6e,$6e,$60,$62,$3c,$00,$18,$3c,$66,$7e,$66,$66,$66,$00 // <fnn`b<..<f~fff.
        .byte $7c,$66,$66,$7c,$66,$66,$7c,$00,$3c,$66,$60,$60,$60,$66,$3c,$00 // |ff|ff|.<f```f<.
        .byte $78,$6c,$66,$66,$66,$6c,$78,$00,$7e,$60,$60,$78,$60,$60,$7e,$00 // xlffflx.~``x``~.
        .byte $7e,$60,$60,$78,$60,$60,$60,$00,$3c,$66,$60,$6e,$66,$66,$3c,$00 // ~``x```.<f`nff<.
        .byte $66,$66,$66,$7e,$66,$66,$66,$00,$3c,$18,$18,$18,$18,$18,$3c,$00 // fff~fff.<.....<.
        .byte $1e,$0c,$0c,$0c,$0c,$6c,$38,$00       // .....l8.

// --- Region $3060-$30d4 ---
.pc = $3060 "dat_3060"

dat_3060:
        .byte $60,$60,$60,$60,$60,$60,$7e,$00,$63,$77,$7f,$6b,$63,$63,$63,$00 // ``````~.cw.kccc.
        .byte $66,$76,$7e,$7e,$6e,$66,$66,$00,$3c,$66,$66,$66,$66,$66,$3c,$00 // fv~~nff.<fffff<.
        .byte $7c,$66,$66,$7c,$60,$60,$60,$00,$3c,$66,$66,$66,$66,$3c,$0e,$00 // |ff|```.<ffff<..
        .byte $7c,$66,$66,$7c,$78,$6c,$66,$00,$3c,$66,$60,$3c,$06,$66,$3c,$00 // |ff|xlf.<f`<.f<.
        .byte $7e,$18,$18,$18,$18,$18,$18,$00,$66,$66,$66,$66,$66,$66,$3c,$00 // ~.......ffffff<.
        .byte $66,$66,$66,$66,$66,$3c,$18,$00,$63,$63,$63,$6b,$7f,$77,$63,$00 // fffff<..ccck.wc.
        .byte $66,$66,$3c,$18,$3c,$66,$66,$00,$66,$66,$66,$3c,$18,$18,$18,$00 // ff<.<ff.fff<....
        .byte $7e,$06,$0c,$18,$30                   // ~...0

// --- Region $30d6-$32a8 ---
.pc = $30d6 "dat_30d6"

dat_30d6:
        .byte $7e,$00,$00,$00,$00,$00,$00,$00,$00,$00,$ff,$00,$00,$00,$00,$00 // ~...............
        .fill 9, $00
        .byte $ff,$00,$00,$00,$00,$18,$18,$18,$00,$00,$10,$30,$7f,$7f,$30,$10 // ...........0..0.
        .fill 9, $00
        .byte $18,$18,$18,$18,$00,$00,$18,$00,$66,$66,$66,$00,$00,$00,$00,$00 // ........fff.....
        .byte $66,$66,$ff,$66,$ff,$66,$66,$00,$18,$3e,$60,$3c,$06,$7c,$18,$00 // ff.f.ff..>`<.|..
        .byte $62,$66,$0c,$18,$30,$66,$46,$00,$3c,$66,$3c,$38,$67,$66,$3f,$00 // bf..0fF.<f<8gf?.
        .byte $06,$0c,$18,$00,$00,$00,$00,$00       // ........

spr_3140:
        // === Sprite data (64 bytes, $3140-$317f) ===
        .byte $0c,$18,$30                           // ....##.....##.....##....
        .byte $30,$30,$18                           // ..##......##.......##...
        .byte $0c,$00,$30                           // ....##............##....
        .byte $18,$0c,$0c                           // ...##.......##......##..
        .byte $0c,$18,$30                           // ....##.....##.....##....
        .byte $00,$00,$66                           // .................##..##.
        .byte $3c,$ff,$3c                           // ..####..########..####..
        .byte $66,$00,$00                           // .##..##.................
        .byte $00,$18,$18                           // ...........##......##...
        .byte $7e,$18,$18                           // .######....##......##...
        .byte $00,$00,$00                           // ........................
        .byte $00,$00,$00                           // ........................
        .byte $00,$18,$18                           // ...........##......##...
        .byte $30,$00,$00                           // ..##....................
        .byte $00,$7e,$00                           // .........######.........
        .byte $00,$00,$00                           // ........................
        .byte $00,$00,$00                           // ........................
        .byte $00,$00,$18                           // ...................##...
        .byte $18,$00,$00                           // ...##...................
        .byte $03,$06,$0c                           // ......##.....##.....##..
        .byte $18,$30,$60                           // ...##.....##.....##.....
        .byte $00                                   // sprite 0 padding
        .byte $3c,$66,$6e,$76,$66,$66,$3c,$00,$18,$18,$38,$18,$18,$18,$7e,$00 // <fnvff<...8...~.
        .byte $3c,$66,$06,$0c,$30,$60,$7e,$00,$3c,$66,$06,$1c,$06,$66,$3c,$00 // <f..0`~.<f...f<.
        .byte $06,$0e,$1e,$66,$7f,$06,$06,$00,$7e,$60,$7c,$06,$06,$66,$3c,$00 // ...f....~`|..f<.
        .byte $3c,$66,$60,$7c,$66,$66,$3c,$00,$7e,$66,$0c,$18,$18,$18,$18,$00 // <f`|ff<.~f......
        .byte $3c,$66,$66,$3c,$66,$66,$3c,$00,$3c,$66,$66,$3e,$06,$66,$3c,$00 // <ff<ff<.<ff>.f<.
        .byte $00,$00,$18,$00,$00,$18,$00,$00,$00,$00,$18,$00,$00,$18,$18,$30 // ...............0
        .byte $0e,$18,$30,$60,$30,$18,$0e,$00,$00,$00,$7e,$00,$7e,$00,$00,$00 // ..0`0.....~.~...
        .byte $70,$18,$0c,$06,$0c,$18,$70,$00,$3c,$66,$06,$0c,$18,$00,$18,$00 // p.....p.<f......
        .byte $00,$66,$66,$66,$7e,$66,$3c,$18,$00,$3e,$66,$66,$3e,$66,$66,$3e // .fff~f<..>ff>ff>
        .byte $00,$3c,$66,$06,$06,$06,$66,$3c,$00,$1e,$36,$66,$66,$66,$36,$1e // .<f...f<..6fff6.
        .byte $00,$7e,$06,$06,$1e,$06,$06,$7e,$00,$06,$06,$06,$1e,$06,$06,$7e // .~.....~.......~
        .byte $00,$3c,$18,$18,$18,$18,$18,$3c,$00,$66,$36,$1e,$0e,$1e,$36,$66 // .<.....<.f6...6f
        .byte $00,$c6,$c6,$c6,$d6,$fe,$ee,$c6,$00,$3c,$66,$66,$66,$66,$66,$3c // .........<fffff<
        .byte $00,$66,$36,$1e,$3e,$66,$66,$3e,$00,$3c,$66,$60,$3c,$06,$66,$3c // .f6.>ff>.<f`<.f<
        .byte $00,$18,$18,$18,$18,$18,$18,$7e,$00,$18,$3c,$66,$66,$66,$66,$66 // .......~..<fffff
        .byte $00,$18,$18,$18,$3c,$66,$66,$66,$00,$7e,$18,$18,$18,$1c,$18,$18 // ....<fff.~......
        .byte $00,$3c,$66,$60,$38,$60,$66,$3c,$00,$60,$60,$fe,$66,$78,$70,$60 // .<f`8`f<.``.fxp`
        .byte $00,$3c,$66,$66,$3e,$06,$66,$3c,$00,$3c,$66,$66,$3c,$66,$66,$3c // .<ff>.f<.<ff<ff<
        .byte $00,$3c,$66,$60,$7c,$66,$66,$3c,$00   // .<f`|ff<.

// --- Region $32ac-$32cf ---
.pc = $32ac "dat_32ac"

dat_32ac:
        .byte $00,$00,$00,$00,$00,$3c,$66,$66,$66,$66,$66,$66,$00,$66,$76,$7e // .....<ffffff.fv~
        .byte $7e,$6e,$66,$66,$00,$7e,$06,$0c,$30,$60,$66,$3c,$00,$00,$66,$3c // ~nff.~..0`f<..f<
        .byte $ff,$3c,$66                           // .<f

dat_32cf:
        // === Fill data (1 bytes, $32cf-$32cf) ===
        .byte $00                                   // .

// --- Region $330f-$3324 ---
.pc = $330f "Segment $330f"
        .byte $00,$00,$03,$c7,$00,$03,$6d,$80,$03,$cd,$80,$03,$27,$40,$00,$00 // ......m.....'@..
        .byte $00,$0e,$1c,$d8,$0f                   // .....

dat_3324:
        // === Fill data (1 bytes, $3324-$3324) ===
        .byte $00                                   // .

// --- Region $3409-$3777 ---
.pc = $3409 "dat_3409"

dat_3409:
        .byte $1c,$36,$63,$63,$63,$63,$63,$00,$7c,$66,$66,$66,$66,$66,$7e,$00 // .6ccccc.|fffff~.
        .byte $3c,$66,$60,$60,$60,$60,$60,$00,$7e,$63,$63,$63,$63,$63,$63,$00 // <f`````.~cccccc.
        .byte $7e,$60,$60,$60,$60,$60,$78,$00,$7e,$60,$60,$60,$60,$60,$78,$00 // ~`````x.~`````x.
        .byte $3c,$66,$60,$60,$60,$60,$6f,$00,$63,$63,$63,$63,$63,$63,$7f,$00 // <f````o.cccccc..
        .byte $7e,$18,$18,$18,$18,$18,$18,$00,$03,$03,$03,$03,$03,$03,$03,$00 // ~...............
        .byte $63,$63,$63,$66,$6c,$78,$70,$00,$60,$60,$60,$60,$60,$60,$60,$00 // cccflxp.```````.
        .byte $63,$77,$7f,$6b,$63,$63,$63,$00,$7e,$63,$63,$63,$63,$63,$63,$00 // cw.kccc.~cccccc.
        .byte $3e,$63,$63,$63,$63,$63,$63,$00,$7e,$63,$63,$63,$63,$63,$7e,$00 // >cccccc.~ccccc~.
        .byte $3e,$63,$63,$63,$63,$63,$63,$00,$7e,$63,$63,$63,$63,$63,$7e,$00 // >cccccc.~ccccc~.
        .byte $3c,$66,$60,$60,$60,$60,$3e,$00,$7e,$18,$18,$18,$18,$18,$18,$00 // <f````>.~.......
        .byte $63,$63,$63,$63,$63,$63,$63,$00,$63,$63,$63,$63,$63,$63,$63,$00 // ccccccc.ccccccc.
        .byte $63,$63,$63,$63,$63,$63,$63,$00,$63,$63,$63,$63,$36,$36,$1c,$00 // ccccccc.cccc66..
        .byte $63,$63,$63,$63,$63,$63,$3f,$00,$7f,$03,$06,$06,$0c,$0c,$18,$00 // cccccc?.........

txt_34d9:
        .text "?U"
        .byte $aa                                   // '*' | $80 (end-of-string marker)
        .byte $ff,$28,$28,$28,$00,$ff,$55,$aa,$ff,$a5,$a5,$a5,$00,$fc,$56,$ab // .(((..U.......V.
        .byte $ff,$14,$14,$14,$00,$06,$06,$0c,$0c,$18,$18,$30,$00,$30,$30,$18 // ...........0.00.
        .byte $18,$0c,$0c,$06,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$03,$03,$03 // ................
        .byte $06,$06,$06,$0c,$00,$36,$36,$36,$6c,$00,$00,$00,$00,$00,$00,$36 // .....666l......6
        .byte $36,$7f,$36,$36,$00,$00,$00,$00,$00,$00,$00,$00,$00,$26,$76,$26 // 6.66.........&v&
        .byte $0c,$0c,$0c,$18,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0c,$0c,$0c // ................
        .byte $18,$00,$00,$00,$00,$06,$0c,$0c,$18,$18,$18,$18,$00,$60,$30,$30 // .............`00
        .byte $18,$18,$18,$18,$00,$00,$00,$00,$00,$00,$00,$18,$00,$00,$00,$00 // ................
        .byte $18,$18,$18,$7e,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 // ...~............
        .byte $00,$00,$00,$7e,$00,$00,$00,$00,$00,$00,$00,$00,$00,$06,$06,$06 // ...~............
        .byte $0c,$0c,$0c,$18,$00,$3e,$63,$63,$63,$67,$67,$6b,$00,$18,$38,$78 // .....>cccggk..8x
        .byte $d8,$18,$18,$18,$00,$3c,$66,$06,$06,$06,$06,$3c,$00,$3c,$66,$06 // .....<f....<.<f.
        .byte $06,$06,$06,$1e,$00,$06,$06,$0e,$0e,$1e,$1e,$36,$00,$7e,$66,$60 // ...........6.~f`
        .byte $60,$60,$60,$7e,$00,$3c,$66,$60,$60,$60,$60,$7e,$00,$7f,$03,$06 // ```~.<f````~....
        .byte $06,$0c,$0c,$18,$00,$3e,$63,$63,$63,$63,$63,$3e,$00,$3e,$63,$63 // .....>ccccc>.>cc
        .byte $63,$63,$63,$3f,$00,$00,$00,$00,$00,$18,$18,$00,$00,$00,$00,$00 // ccc?............
        .byte $00,$18,$18,$00,$63,$1c,$36,$63,$63,$63,$63,$63,$63,$00,$3e,$63 // ....c.6cccccc.>c
        .byte $63,$63,$63,$63,$63,$00,$63,$63,$63,$63,$63,$63,$00,$3e,$63,$63 // ccccc.cccccc.>cc
        .byte $03,$03,$06,$06,$00,$00,$00,$00,$00,$00,$00,$00,$7f,$63,$63,$63 // .............ccc
        .byte $63,$60,$3f,$00,$63,$63,$63,$63,$63,$03,$fe,$00,$60,$60,$60,$60 // c`?.ccccc...````
        .byte $60,$60,$3f,$00,$63,$63,$63,$63,$63,$03,$fe,$00,$60,$60,$60,$60 // ``?.ccccc...````
        .byte $60,$00,$ff,$00,$60,$60,$60,$60,$60,$60,$60,$00,$63,$63,$63,$63 // `...```````.cccc
        .byte $63,$63,$3e,$00,$63,$63,$63,$63,$63,$03,$fe,$00,$18,$18,$18,$18 // cc>.ccccc.......
        .byte $18,$00,$ff,$00,$03,$03,$03,$03,$03,$03,$fe,$00,$78,$6c,$66,$63 // ............xlfc
        .byte $63,$03,$fe,$00,$60,$60,$60,$60,$60,$00,$ff,$00,$63,$63,$63,$63 // c...`````...cccc
        .byte $63,$03,$fe,$00,$63,$63,$63,$63,$63,$03,$e3,$00,$63,$63,$63,$63 // c...ccccc...cccc
        .byte $63,$03,$fe,$00,$60,$60,$60,$60,$60,$00,$f0,$00,$63,$63,$63,$63 // c...`````...cccc
        .byte $6d,$66,$3b,$00,$6c,$6c,$66,$66,$63,$03,$f3,$00,$03,$03,$03,$03 // mf;.llffc.......
        .byte $03,$03,$fe,$00,$18,$18,$18,$18,$18,$18,$18,$00,$63,$63,$63,$63 // ............cccc
        .byte $63,$03,$fe,$00,$63,$63,$63,$63,$36,$36,$1c,$00,$63,$63,$63,$6b // c...cccc66..ccck
        .byte $5d,$36,$e3,$00,$36,$36,$63,$63,$63,$03,$fe,$00,$03,$03,$03,$03 // ]6..66ccc.......
        .byte $03,$03,$fe,$00,$18,$30,$30,$60,$60,$c0,$ff,$00 // .....00``...

txt_36d8:
        .text "((((((8"
        .byte $00                                   // string terminator
        .byte $bd,$81,$bd,$a5,$a5,$a5,$e7,$00,$14,$14,$14,$14,$14,$14,$1c,$00 // ................
        .byte $30,$18,$18,$0c,$0c,$06,$06,$00,$06,$0c,$0c,$18,$18,$30,$30,$00 // 0............00.
        .fill 8, $00
        .byte $0c,$0c,$18,$18,$00,$30,$30,$00,$00,$00,$00,$00,$00,$00,$00,$00 // .....00.........
        .byte $36,$36,$36,$7f,$36,$36,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 // 666.66..........
        .byte $18,$30,$30,$30,$64,$6e,$64,$00,$00,$00,$00,$00,$00,$00,$00,$00 // .000dnd.........
        .fill 8, $00
        .byte $18,$18,$18,$18,$0c,$0c,$07,$00,$18,$18,$18,$18,$30,$30,$e0,$00 // ............00..
        .byte $18,$00,$00,$00,$00,$00,$00,$00,$18,$18,$18,$00,$00,$00,$00,$00 // ................
        .byte $00,$00,$00,$18,$18,$18,$30,$00,$00,$00,$00,$00,$00,$00,$00,$00 // ......0.........
        .byte $00,$00,$00,$00,$00,$18,$18,$00       // ........

// --- Region $377e-$37aa ---
.pc = $377e "dat_377e"

dat_377e:
        .byte $60,$00,$6b,$6b,$73,$73,$63,$03,$fe,$00,$18,$18,$18,$18,$18,$18 // `.kkssc.........
        .byte $ff,$00,$60,$60,$60,$60,$60,$00,$ff,$00,$03,$03,$03,$03,$03,$03 // ..`````.........
        .byte $fe,$00,$36,$66,$7f,$06,$06,$00,$0f,$00,$03,$03,$03 // ..6f.........

// --- Region $37bc-$37dc ---
.pc = $37bc "dat_37bc"

dat_37bc:
        .byte $60,$c0,$c0,$00,$63,$63,$63,$63,$63,$03,$fe,$00,$03,$03,$03,$03 // `...ccccc.......
        .byte $03,$03,$fe,$00,$00,$00,$00,$18,$18,$00,$00,$00,$00,$00,$00,$18 // ................
        .byte $18                                   // .

// --- Region $37f1-$3925 ---
.pc = $37f1 "Segment $37f1"
        .byte $63,$63,$63,$63,$03,$fe,$00,$0c,$0c,$18,$18,$00,$18,$18,$00 // cccc...........

scr_3800:
        // === Charset data (294 bytes, $3800-$3925) ===
        .byte $0b,$0d,$80,$97,$85,$8c,$83,$8f       // char 0 @+0
        .byte $8d,$85,$80,$8c,$81,$8d,$89,$85       // char 1 @+1
        .byte $93,$80,$81,$8e,$84,$80,$87,$85       // char 2 @+2
        .byte $8e,$94,$8c,$85,$8d,$85,$8e,$80       // char 3 @+3
        .byte $94,$8f,$80,$81,$8e,$8f,$94,$88       // char 4 @+4
        .byte $85,$92,$80,$83,$92,$81,$83,$8b       // char 5 @+5
        .byte $80,$84,$95,$8e,$80,$82,$99,$80       // char 6 @+6
        .byte $87,$81,$9a,$9a,$81,$80,$8f,$86       // char 7 @+7
        .byte $80,$9b,$9c,$9d,$80,$a1,$a1,$a1       // char 8 @+8
        .byte $80,$93,$8f,$92,$92,$99,$80,$86       // char 9 @+9
        .byte $8f,$92,$80,$8e,$8f,$80,$94,$92       // char 10 @+10
        .byte $81,$89,$8e,$85,$92,$80,$82,$95       // char 11 @+11
        .byte $94,$80,$89,$80,$88,$81,$96,$85       // char 12 @+12
        .byte $8e,$a7,$94,$80,$87,$8f,$94,$80       // char 13 @+13
        .byte $94,$88,$85,$80,$94,$89,$8d,$85       // char 14 @+14
        .byte $80,$86,$8f,$92,$80,$89,$94,$80       // char 15 @+15
        .byte $a1,$a1,$a1,$80,$8f,$92,$89,$87       // char 16 @+16
        .byte $89,$8e,$81,$8c,$80,$93,$95,$90       // char 17 @+17
        .byte $90,$8c,$89,$85,$84,$80,$82,$99       // char 18 @+18
        .byte $80,$83,$88,$95,$8d,$80,$8f,$86       // char 19 @+19
        .byte $80,$83,$88,$81,$8f,$93,$80,$a1       // char 20 @+20
        .byte $a1,$a1,$80,$93,$8f,$92,$92,$99       // char 21 @+21
        .byte $80,$8e,$8f,$80,$87,$92,$85,$85       // char 22 @+22
        .byte $94,$93,$80,$83,$8f,$9a,$80,$8e       // char 23 @+23
        .byte $8f,$80,$94,$89,$8d,$85,$80,$a1       // char 24 @+24
        .byte $a1,$a1                               // char 25 (partial)

dat_38ca:
        // === Fill data (40 bytes, $38ca-$38f1) ===
        .fill 40, $80
        .byte $8c,$b8,$92,$80,$8f,$8e               // char 30 (partial)
        .byte $ae,$ae,$ae,$ae                       // char 31 (partial)

dat_38fc:
        // === Fill data (40 bytes, $38fc-$3923) ===
        .fill 40, $80
        .byte $00,$80                               // char 36 (partial)
