// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:21
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $359f  (11680 bytes)
// Crunched with Exomizer v2/v3 — depacked by emulation
// Packer entry: $080b (via BASIC SYS 2059)
// Entry point:  $1800 (6144)
// IRQ handler:  $1935 (irq_1935)
// IRQ handler:  $1a54 (irq_1a54)
// IRQ handler:  $1b9a (irq_1b9a)
// IRQ handler:  $20ed (irq_20ed)
//
// Code: 2974 bytes, Data: 8706 bytes
// Labels: 410, Subroutines: 21
//
// Cross-references: all OK
// ============================================


// --- Region $1000-$1009 ---
.pc = $1000 "loc_1000"

loc_1000:
        jmp loc_107a

dat_1003:
        .byte $4c,$aa,$10                           // L..

loc_1006:
        jmp loc_10b0

dat_1009:
        .byte $ff                                   // .

// --- Region $107a-$1453 ---
.pc = $107a "loc_107a"

loc_107a:
        ldx #$00
        txa

loc_107d:
        lda #$00
        sta $102c,x
        sta $1062,x
        lda #$01
        sta $1029,x
        lda #$09
        sta $102f,x
        lda #$10
        sta $1032,x
        inx
        cpx #$03
        bcc loc_107d
        lda $1011
        sta $1013
        lda #$0f
        sta $d418
        lda #$01
        sta $100a
        rts

loc_10aa:
        lda #$00
        sta $100a
        rts

loc_10b0:
        lda $100a
        bne loc_10b6
        rts

loc_10b6:
        ldx #$02

loc_10b8:
        lda $100e,x
        sta $fb
        tay
        lda $1029,x
        beq loc_10fd
        dec $105c,x
        bpl loc_10d4
        inc $105c,x
        lda $106b,x
        sta $d404,y
        jmp loc_1220

loc_10d4:
        lda $1044,x
        and #$10
        beq loc_10fa
        lda #$81
        sta $d404,y
        lda $1012
        asl
        tay
        lda dat_1453,y
        pha
        lda $1454,y
        pha
        ldy $fb
        pla
        sta $d401,y
        pla
        sta $d400,y
        jmp loc_137f

loc_10fa:
        jmp loc_1220

loc_10fd:
        txa
        tay
        lda $102f,y
        sta $fc
        lda $1032,y
        sta $fd
        lda #$00
        sta $100d
        ldy $102c,x
        lda #$00
        sta $1023,x
        lda ($fc),y
        cmp #$ff
        bne loc_111f
        jmp loc_140c

loc_111f:
        pha
        and #$20
        beq loc_1129
        lda #$01
        sta $100d

loc_1129:
        pla
        cmp #$80
        bcc loc_1131
        jmp loc_139a

loc_1131:
        and #$1f
        clc
        adc #$01
        sta $1029,x

loc_1139:
        iny
        lda ($fc),y
        pha
        iny
        tya
        sta $102c,x
        pla
        bne loc_1150
        lda $1050,x
        and #$fe
        sta $106b,x
        jmp loc_121d

loc_1150:
        clc
        adc $105f,x
        sta $1020,x
        asl
        tay
        lda dat_1453,y
        sta $1035,x
        lda $1454,y
        sta $1038,x
        lda $100d
        cmp #$01
        bne loc_116f
        jmp loc_121d

loc_116f:
        lda $1053,x
        pha
        and #$0f
        sta $105c,x
        pla
        lsr
        lsr
        lsr
        lsr
        clc
        adc #$01
        sta $106e,x
        sta $100c
        lda #$01
        sta $1065,x
        lda #$00
        sec
        sbc $100c
        sta $1071,x
        lda $1050,x
        sta $106b,x
        lda #$00
        sta $100b
        lda $1044,x
        and #$10
        beq loc_11c7
        lda #$01
        sta $100b
        lda $1012
        asl
        tay
        lda dat_1453,y
        pha
        lda dat_1453,y
        pha
        ldy $fb
        pla
        sta $d401,y
        pla
        sta $d400,y
        lda #$81
        jmp loc_11ca

loc_11c7:
        lda $104d,x

loc_11ca:
        ldy $fb
        pha
        and #$fe
        sta $d404,y
        pla
        sta $d404,y
        lda $1047,x
        sta $d405,y
        lda $104a,x
        sta $d406,y
        lda $1044,x
        sta $103e,x
        sta $103b,x
        sta $1014,x
        lda #$00
        sta $101a,x
        lda $1053
        lsr
        lsr
        lsr
        lsr
        sec
        sbc #$03
        sta $1065,x
        lda $1056,x
        sta $1017,x
        pha
        and #$0f
        asl
        asl
        sta $1068,x
        pla
        and #$f0
        lsr
        sta $1059,x
        lda $100b
        beq loc_121d
        jmp loc_137f

loc_121d:
        jmp loc_1365

loc_1220:
        lda $103b,x
        clc
        adc $1041,x
        bcc loc_122c
        inc $103e,x

loc_122c:
        sta $103b,x
        lda $1044,x
        cmp #$c0
        bcc loc_1239
        jmp loc_1349

loc_1239:
        cmp #$80
        bcs loc_12a4
        cmp #$40
        bcs loc_1244
        jmp loc_12d2

loc_1244:
        lda $101a,x
        clc
        adc $1056,x
        tay
        lda $1543,y
        cmp #$ff
        bne loc_1256
        jmp loc_137f

loc_1256:
        cmp #$41
        beq loc_1261
        cmp #$40
        beq loc_1261
        jmp loc_126a

loc_1261:
        pha
        iny
        lda $1543,y
        sta $101e
        pla

loc_126a:
        sta $101f
        iny
        lda $1543,y
        clc
        adc $1020,x
        asl
        iny
        sty $101d
        tay
        lda dat_1453,y
        pha
        lda $1454,y
        ldy $fb
        sta $d401,y
        pla
        sta $d400,y
        lda $101d
        sec
        sbc $1056,x
        sta $101a,x
        lda $101e
        sta $d403,y
        lda $101f
        sta $d404,y
        jmp loc_137f

loc_12a4:
        ldy $1017,x

loc_12a7:
        lda $1543,y
        cmp #$ff
        bne loc_12b4
        ldy $1056,x
        jmp loc_12a7

loc_12b4:
        sta $fe
        iny
        tya
        sta $1017,x
        lda $1020,x
        clc
        adc $fe
        asl
        tay
        lda dat_1453,y
        sta $1035,x
        lda $1454,y
        sta $1038,x
        jmp loc_1365

loc_12d2:
        lda $1023,x
        beq loc_12ff
        cmp #$80
        bcs loc_12ed
        lda $1035,x
        clc
        adc $1026,x
        bcc loc_12e7
        inc $1038,x

loc_12e7:
        sta $1035,x
        jmp loc_1365

loc_12ed:
        lda $1035,x
        sec
        sbc $1026,x
        bcs loc_12f9
        dec $1038,x

loc_12f9:
        sta $1035,x
        jmp loc_1365

loc_12ff:
        dec $1068,x
        bpl loc_1365
        inc $1068,x
        lda $1056,x
        beq loc_1365
        dec $1065,x
        lda $1065,x
        bpl loc_1334
        cmp $1071,x
        bne loc_131f
        lda $106e,x
        sta $1065,x

loc_131f:
        lda $1035,x
        clc
        adc $1059,x
        sta $1035,x
        lda $1038,x
        adc #$00
        sta $1038,x
        jmp loc_1365

loc_1334:
        lda $1035,x
        sec
        sbc $1059,x
        sta $1035,x
        lda $1038,x
        sbc #$00
        sta $1038,x
        jmp loc_1365

loc_1349:
        lda $1035,x
        sec
        sbc $1056,x
        bcs loc_1355
        dec $1038,x

loc_1355:
        sta $1035,x
        lda $1038,x
        bpl loc_1365
        lda #$01
        sta $1038,x
        sta $1035,x

loc_1365:
        ldy $fb
        lda $1035,x
        sta $d400,y
        lda $1038,x
        sta $d401,y
        lda $103b,x
        sta $d402,y
        lda $103e,x
        sta $d403,y

loc_137f:
        dex
        bpl loc_1397
        dec $1013
        bpl loc_1396
        lda $1011
        sta $1013
        dec $1029
        dec $102a
        dec $102b

loc_1396:
        rts

loc_1397:
        jmp loc_10b8

loc_139a:
        and #$1f
        clc
        adc #$01
        sta $1029,x
        iny
        lda ($fc),y
        cmp #$80
        bcs loc_13e4
        asl
        asl
        asl
        sty $fe
        tay
        lda $1513,y
        sta $104d,x
        lda $1514,y
        sta $1050,x
        lda $1515,y
        sta $1047,x
        lda $1516,y
        sta $104a,x
        lda $1517,y
        sta $1053,x
        lda $1518,y
        sta $1044,x
        lda $1519,y
        sta $1041,x
        lda $151a,y
        sta $1056,x
        ldy $fe
        jmp loc_1139

loc_13e4:
        and #$3f
        cmp #$20
        bcs loc_13fb
        and #$1f
        pha
        lda #$01
        sta $1023,x
        pla
        asl
        asl
        sta $1026,x
        jmp loc_1139

loc_13fb:
        and #$1f
        pha
        lda #$80
        sta $1023,x
        pla
        asl
        asl
        sta $1026,x
        jmp loc_1139

loc_140c:
        lda $1074,x
        sta $fc
        lda $1077,x
        sta $fd
        ldy $1062,x

loc_1419:
        lda ($fc),y
        cmp #$fe
        bne loc_1422
        jmp loc_10aa

loc_1422:
        cmp #$ff
        bne loc_142b
        ldy #$00
        jmp loc_1419

loc_142b:
        iny
        cmp #$80
        bcs loc_144b
        pha
        tya
        sta $1062,x
        pla
        tay
        lda $154d,y
        sta $102f,x
        lda $1551,y
        sta $1032,x
        lda #$00
        sta $102c,x
        jmp loc_10fd

loc_144b:
        and #$1f
        sta $105f,x
        jmp loc_1419

dat_1453:
        .byte $16                                   // .

// --- Region $1538-$1538 ---
.pc = $1538 "loc_1538"

loc_1538:
        brk

// --- Region $158d-$15d7 ---
.pc = $158d "Segment $158d"
.label loc_158e = * + 1
        bmi loc_158e
        sta ($03,x)
        .byte $0c,$01,$0c                           // nop $0c01 // ILLEGAL
        ora ($18,x)
        ora ($0c,x)
        ora ($18,x)
        ora ($0c,x)
        ora ($16,x)
        ora ($13,x)
        ora ($0c,x)
        ora ($18,x)
        ora ($0c,x)
        ora ($0c,x)
        ora ($18,x)
        ora ($0c,x)
        ora ($16,x)
        ora ($18,x)
        .byte $ff,$9f,$04                           // isc $049f,x // ILLEGAL
        bmi loc_1538
        txs
        and $23,x
        .byte $37,$03                               // rla $03,x // ILLEGAL
        and $07,x
        .byte $33,$07                               // rla ($07),y // ILLEGAL
        and $0f,x
        and $03,x
        bmi loc_15c7
        .byte $33,$01                               // rla ($01),y // ILLEGAL
.label loc_15c7 = * + 1
        bmi loc_15cb
        .byte $33,$01                               // rla ($01),y // ILLEGAL
.label loc_15cb = * + 1
        bmi loc_154f
        .byte $9e,$33,$2f                           // shx $2f33,y // ILLEGAL
        and $03,x
        sec
        .byte $03,$3c                               // slo ($3c,x) // ILLEGAL
        .byte $07,$3f                               // slo $3f // ILLEGAL

dat_15d6:
        // === Data block (2 bytes, $15d6-$15d7) ===
        .byte $03,$3e                               // .>

// --- Region $1720-$1720 ---
.pc = $1720 "$1720"
        brk

// --- Region $1800-$1c2c ---
.pc = $1800 "main_1800"

main_1800:
        sei
        lda #$00
        sta $0286
        jsr sub_315c
        lda #$35
        sta $0314
        lda #$19
        sta $0315
        lda #$00
        sta $dc0e
        ldx #$00
        lda #$0f

loc_181c:
        sta $d850,x
        inx
// Referenced by: jsr from $3323

sub_1820:
        bne loc_181c

loc_1822:
        lda $1d07,x
        sta $d000,x
        lda #$0f
        sta $da08,x
        sta $da30,x
        inx
        cpx #$2f
        bne loc_1822
        ldx #$0b

loc_1837:
        lda $1d36,x
        sta $07f8,x
        dex
        bpl loc_1837
        jsr sub_20bc
        lda #$34
        sta $38
        lda #$32
        sta $3d
        lda #$20
        sta $034f
        cli

loc_1851:
        lda #$aa
        cmp $d012
        beq loc_185b
        jmp loc_1851

loc_185b:
        jmp loc_2019

loc_185e:
        jsr sub_21bf
        jsr sub_1879
        jsr sub_2059
        jsr sub_1aa6
        jsr sub_1c1c
        jsr sub_1e59
        jsr sub_1f28
        jsr sub_316c
        jmp loc_1851

// Referenced by: jsr from $1861
sub_1879: {
        ldy $0340
        iny
        cpy #$50
        bne skip1
        ldy #$00
skip1:
        sty $0340
        lda $2588,y
        pha
        and #$07
        eor #$07
        ora #$10
        sta $0341
        pla
        lsr
        lsr
        lsr
        tay
        ldx #$00
loop1:
        lda scr_2400,y
        sta $0450,x
        lda $2440,y
        sta $0478,x
        lda $2480,y
        sta $04a0,x
        lda $24c0,y
        sta $04c8,x
        lda $2500,y
        sta $04f0,x
        lda $2540,y
        sta $0518,x
        lda $1c2e,x
        sta $1c87,x
        lda $1c46,x
        sta $1c9f,x
        iny
        inx
        cpx #$27
        bne loop1
        ldx $0342
        inx
        cpx #$2c
        bne skip2
        ldx #$00
skip2:
        stx $0342
        stx $0343
        ldy txt_1ccf,x
        ldx #$06
loop2:
        lda $1c79,x
        sta $1c87,y
        iny
        dex
        bpl loop2
        ldx $0343
        txa
        clc
        adc #$03
        tax
        ldy txt_1ccf,x
        ldx #$06
loop3:
        lda $1c72,x
        sta $1c87,y
        iny
        dex
        bpl loop3
        ldx $0343
        txa
        clc
        adc #$06
        tax
        ldy txt_1ccf,x
        ldx #$06
loop4:
        lda $1c80,x
        sta $1c87,y
        iny
        dex
        bpl loop4
        ldx $0343
        txa
        clc
        adc #$09
        tax
        ldy txt_1ccf,x
        ldx #$06
loop5:
        lda $1c72,x
        sta $1c87,y
        iny
        dex
        bpl loop5
        rts
}

irq_1935:
        inc $d019
        ldy #$23

loc_193a:
        dey
        bne loc_193a
        nop
        lda $0341
        sta $d016
        lsr $ea
        ldx #$00
        lda #$18

loc_194a:
        sta $d023
        lda $2358,x
        sta $d020
        sta $d021
        sty $d022
        ldy $1c88,x
        lda dat_1c2d
        sta $d023
        lda $2359,x
        sta $d020
        sta $d021
        sty $d022
        inx
        jsr sub_1a48
        ldy $1c88,x
        lda dat_1c2d
        sta $d023
        lda $2359,x
        sta $d020
        sta $d021
        sty $d022
        inx
        jsr sub_1a48
        ldy $1c88,x
        lda dat_1c2d
        sta $d023
        lda $2359,x
        sta $d020
        sta $d021
        sty $d022
        inx
        jsr sub_1a48
        ldy $1c88,x
        lda dat_1c2d
        sta $d023
        lda $2359,x
        sta $d020
        sta $d021
        sty $d022
        inx
        jsr sub_1a48
        ldy $1c88,x
        lda dat_1c2d
        sta $d023
        lda $2359,x
        sta $d020
        sta $d021
        sty $d022
        inx
        jsr sub_1a48
        ldy $1c88,x
        lda dat_1c2d
        sta $d023
        lda $2359,x
        sta $d020
        sta $d021
        sty $d022
        inx
        jsr sub_1a48
        ldy $1c88,x
        lda dat_1c2d
        sta $d023
        lda $2359,x
        sta $d020
        sta $d021
        sty $d022
        inx
        cpx #$47
        beq loc_1a1f
        cmp $ffff
        cmp $ffff
        cmp $ffff
        cmp $ffff
        ldy $1c88,x
        lda dat_1c2d
        inx
        jmp loc_194a

loc_1a1f:
        lda #$1b
        sta $d011
        lda #$18
        sta $d016
        lda #$00
        ldx #$05

loc_1a2d:
        dex
        bne loc_1a2d
        stx $d020
        stx $d021
        lda #$54
        sta $0314
        lda #$1a
        sta $0315
        lda #$85
        sta $d012
        jmp $ea7e
// Referenced by: jsr from $196f, $1988, $19a1, $19ba, $19d3, $19ec

sub_1a48:
        dec $0350
        dec $0350
        dec $0350
        cpx $ea
        rts

irq_1a54:
        ldx #$06

loc_1a56:
        dex
        bne loc_1a56
        nop
        nop
        nop
        ldx #$0e

loc_1a5e:
        bit $ea
        dec $d016
        inc $d016
        ldy $d012
        dey
        nop
        tya
        and #$07
        ora #$18
        sta $d011
        nop
        nop
        nop
        nop
        dex
        bpl loc_1a5e
        lda #$1b
        sta $d011
        inc $d019
        lda #$9a
        sta $0314
        lda #$1b
        sta $0315
        lda #$c7
        sta $d012
        lda #$97
        sta $dd00
        lda #$12
        sta $d018
        lda #$18
        sta $d016
        jsr sub_2107
        jmp $febc

// Referenced by: jsr from $1867
sub_1aa6: {
        ldx $034f
        inx
        cpx #$50
        bne skip1
        ldx #$00
skip1:
        stx $034f
        lda $23a0,x
        ldx #$00
        stx $d010
loop:
        sta $d000,x
        clc
        adc #$18
        ror $d010
        pha
        lda $d010
        beq skip2
        ora #$80
        sta $d010
skip2:
        pla
        inx
        inx
        cpx #$10
        bne loop
        asl $d010
        lda $d000
        cmp #$a0
        beq skip3
        cmp #$1a
        beq skip3
        cmp #$aa
        beq skip4
        cmp #$12
        beq skip4
        cmp #$b2
        beq skip5
        cmp #$0c
        beq skip5
        cmp #$b8
        beq skip6
        cmp #$06
        beq skip6
        cmp #$ba
        beq skip7
        cmp #$02
        beq skip7
        lda $0347
        jmp $1b20
skip3:
        lda #$01
        jmp $1b20
skip4:
        lda #$0f
        jmp $1b20
skip5:
        lda #$0c
        jmp $1b20
skip6:
        lda #$0b
        jmp $1b20
skip7:
        lda #$00
        sta $d027
        sta $d028
        sta $d029
        sta $d02a
        sta $d02b
        sta $d02c
        sta $d02d
        sta $d02e
        rts
}

// Referenced by: jsr from $20e4
sub_1b39: {
        lda #$33
        sta $01
        ldx #$00
        txa
loop1:
        sta $2600,x
        sta $2700,x
        inx
        bne loop1
        ldx #$00
loop2:
        stx $0350
        txa
        asl
        tax
        lda $1d5e,x
        sta $30
        lda $1d5f,x
        sta $31
        ldx $0350
        lda $3140,x
        jsr sub_1b71
        ldx $0350
        inx
        cpx #$18
        bne loop2
        lda #$37
        sta $01
        rts
}

// Referenced by: jsr from $1b61
sub_1b71: {
        sta $32
        lda #$00
        sta $33
        asl $32
        rol $33
        asl $32
        rol $33
        asl $32
        rol $33
        lda $33
        clc
        adc #$d0
        sta $33
        ldy #$00
loop:
        lda ($32),y
        sta ($30),y
        iny
        inc $30
        inc $30
        cpy #$08
        bne loop
        rts
}

irq_1b9a:
        ldx #$00

loc_1b9c:
        lda $1df6,x
        ldy $d012

loc_1ba2:
        cpy $d012
        beq loc_1ba2
        sta $d020
        sta $d021
        tya
        and #$07
        ora #$18
        sta $d011
        inx
        cpx $35
        bne loc_1b9c
        nop
        nop
        ldx #$00

loc_1bbe:
        lda $1e26,x
        ldy $d012

loc_1bc4:
        cpy $d012
        beq loc_1bc4
        sta $d020
        sta $d021
        nop
        nop
        nop
        bit $ea
        inx
        cpx #$13
        bne loc_1bbe
        lda #$15
        sbc $35
        tax

loc_1bde:
        lda $1e0d,x
        ldy $d012

loc_1be4:
        cpy $d012
        beq loc_1be4
        sta $d020
        sta $d021
        tya
        and #$07
        ora #$18
        sta $d011
        dex
        bne loc_1bde
        lda #$ed
        sta $0314
        lda #$20
        sta $0315
        lda #$1b
        sta $d011
        inc $d019
        lda #$f9
        sta $d012
        lda #$00
        sta $d020
        sta $d021
        jmp $ea7e
// Referenced by: jsr from $186a

sub_1c1c:
        ldx $36
        lda $1e39,x
        sta $35
        inx
        cpx #$20
        bne loc_1c2a
        ldx #$00

loc_1c2a:
        stx $36
        rts

// --- Region $1e59-$1f09 ---
.pc = $1e59 "sub_1e59"
// Referenced by: jsr from $186d

sub_1e59:
        lda $3b
        beq loc_1e60
        dec $3b
        rts

loc_1e60:
        lda $3a
        cmp #$09
        bcs loc_1ed1
        lda $39
        sec
        sbc $3a
        bmi loc_1e70
        sta $39
        rts

loc_1e70:
        clc
        adc #$08
        sta $39
        ldx #$00

loc_1e77:
        lda $06a9,x
        sta $06a8,x
        inx
        cpx #$27
        bne loc_1e77

loc_1e82:
        ldy #$00
        lda ($37),y
        cmp #$ee
        bcs loc_1e94
        sta $06cf

loc_1e8d:
        inc $37
        bne loc_1e93
        inc $38

loc_1e93:
        rts

loc_1e94:
        jsr sub_1e9a
        jmp loc_1e82
// Referenced by: jsr from $1e94, $1f02

sub_1e9a:
        cmp #$ef
        beq loc_1ebd
        cmp #$ee
        beq loc_1ec8
        ldx #$00

loc_1ea4:
        cmp dat_1f08,x
        beq loc_1eb1
        inx
        cpx #$10
        bne loc_1ea4
        jmp $fce2

loc_1eb1:
        lda $1f18,x
        sta $3a
        inc $37
        bne loc_1ebc
        inc $38

loc_1ebc:
        rts

loc_1ebd:
        lda #$34
        sta $38
        lda #$00
        sta $37
        pla
        pla
        rts

loc_1ec8:
        lda #$40
        sta $3b
        pla
        pla
        jmp loc_1e8d

loc_1ed1:
        lda $39
        clc
        adc $3a
        sec
        sbc #$07
        cmp #$08
        bcs loc_1ee0
        sta $39
        rts

loc_1ee0:
        sec
        sbc #$08
        sta $39
        ldx #$26

loc_1ee7:
        lda $06a8,x
        sta $06a9,x
        dex
        bpl loc_1ee7

loc_1ef0:
        ldy #$00
        lda ($37),y
        cmp #$ee
        bcs loc_1f02
        sta $06a8
        inc $37
        bne loc_1f01
        inc $38

loc_1f01:
        rts

loc_1f02:
        jsr sub_1e9a
        jmp loc_1ef0

dat_1f08:
        .byte $f0,$f1                               // ..

// --- Region $1f28-$209b ---
.pc = $1f28 "sub_1f28"
// Referenced by: jsr from $1870

sub_1f28:
        lda $3f
        beq loc_1f2f
        dec $3f
        rts

loc_1f2f:
        lda $3e
        beq loc_1f59
        cmp #$01
        beq loc_1fa5
        cmp #$02
        beq loc_1f56
        rts

loc_1f3c:
        ldx #$27

loc_1f3e:
        lda dat_17c0,x
        sta $0608,x
        clc
        adc #$78
        sta $0630,x
        dex
        bpl loc_1f3e
        lda #$02
        sta $3e
        lda #$60
        sta $3f
        rts

loc_1f56:
        jmp loc_2001

loc_1f59:
        ldy #$00
        ldx #$00

loc_1f5d:
        lda ($3c),y
        cmp #$fe
        beq loc_1f95
        cmp #$ff
        beq loc_1f9c
        sta dat_17c0,x
        clc
        adc #$28
        inx
        sta dat_17c0,x
        clc
        adc #$28
        inx
        sta dat_17c0,x
        inx
        iny
        cpy #$0f
        bne loc_1f5d

loc_1f7e:
        lda #$01
        sta $3e
        lda #$00
        sta $0353
        lda $3c
        clc
        adc #$10
        sta $3c
        lda $3d
        adc #$00
        sta $3d
        rts

loc_1f95:
        lda #$01
        sta $34
        jmp loc_1f7e

loc_1f9c:
        lda #$32
        sta $3d
        lda #$00
        sta $3c
        rts

loc_1fa5:
        lda $34
        bne loc_1f3c
        ldx #$14

loc_1fab:
        lda $0608,x
        sta $0609,x
        clc
        adc #$78
        sta $0631,x
        dex
        bpl loc_1fab
        inx

loc_1fbb:
        lda $061e,x
        sta $061d,x
        clc
        adc #$78
        sta $0645,x
        inx
        cpx #$12
        bne loc_1fbb
        lda #$15
        sec
        sbc $0353
        tax
        lda dat_17c0,x
        sta $0608
        clc
        adc #$78
        sta $0630
        ldx $0353
        lda $17d4,x
        sta $062f
        clc
        adc #$78
        sta $0657
        inc $0353
        lda $0353
        cmp #$15
        bne loc_2000
        lda #$02
        sta $3e
        lda #$40
        sta $3f

loc_2000:
        rts

loc_2001:
        ldx #$27
        lda #$20

loc_2005:
        sta $0608,x
        sta $0630,x
        dex
        bpl loc_2005
        lda #$00
        sta $3e
        sta $34
        lda #$40
        sta $3f
        rts

loc_2019:
        lda $34
        bne loc_2036
        ldx #$00

loc_201f:
.label sub_2020 = * + 1
        ldy bmp_21e5,x

loc_2022:
        dey
        bne loc_2022
        lda bmp_209c,x
        sta $d022
        sta $d023
        inx
        cpx #$11
        bne loc_201f
        jmp loc_204c

loc_2036:
        ldx #$00

loc_2038:
        ldy bmp_21e5,x

loc_203b:
        dey
        bne loc_203b
        lda tbl_20ac,x
        sta $d022
        sta $d023
        inx
        cpx #$11
        bne loc_2038

loc_204c:
        lda #$1a
        sta $d018
        lda $39
        sta $d016
        jmp loc_185e
// Referenced by: jsr from $1864

sub_2059:
        lda #$87
        sta $d001
        sta $d003
        sta $d005
        sta $d007
        sta $d009
        sta $d00b
        sta $d00d
        lda #$ff
        sta $d015
        lda #$00
        sta $d01c
        ldx #$98
        stx $07f8
        inx
        stx $07f9
        inx
        stx $07fa
        inx
        stx $07fb
        inx
        stx $07fc
        inx
        stx $07fd
        inx
        stx $07fe
        inx
        stx $07ff
        rts

// --- Region $20bc-$216b ---
.pc = $20bc "sub_20bc"

// Referenced by: jsr from $1840
sub_20bc: {
        lda #$00
        ldx #$20
loop:
        sta $0340,x
        dex
        bpl loop
        sta $3fff
        sta $34
        sta $36
        sta $37
        sta $39
        sta $3b
        sta $3c
        sta $3d
        sta $3e
        sta $3f
        lda #$01
        sta $0347
        lda #$02
        sta $3a
        jsr sub_1b39
        lda #$00
        jsr sub_3169
        rts
}

irq_20ed:
        lda #$13
        sta $d011
        lda #$35
        sta $0314
        lda #$19
        sta $0315
        lda #$37
        sta $d012
        inc $d019
        jmp $ea7e
// Referenced by: jsr from $1aa0

sub_2107:
        lda $d027
        sta $0347
        lda #$0a
        sta $d027
        sta $d028
        sta $d029
        sta $d02a
        sta $d02b
        sta $d02c
        sta $d02d
        lda #$7f
        sta $d01c
        sta $d015
        lda #$00
        sta $d001
        sta $d003
        sta $d005
        sta $d007
        sta $d009
        sta $d00b
        sta $d00d
        lda #$50
        sta $d000
        lda #$70
        sta $d002
        lda #$90
        sta $d004
        lda #$b0
        sta $d006
        lda #$d0
        sta $d008
        lda #$f0
        sta $d00a
        lda #$10
        sta $d00c
        lda #$40
        sta $d010
        rts

// --- Region $21bf-$21e4 ---
.pc = $21bf "sub_21bf"
// Referenced by: jsr from $185e

sub_21bf:
        ldx #$88
        stx $07f8
        inx
        stx $07f9
        stx $07fb
        inx
        stx $07fa
        inx
        stx $07fc
        stx $07fe
        inx
        stx $07fd
        lda $dc00
        and $dc01
        and #$10
        beq loc_21f6
        rts

// --- Region $21f6-$21fe ---
.pc = $21f6 "loc_21f6"

loc_21f6:
        lda $02
        sta $3fff
        jmp loc_3170

bmp_21fe:
        // === Bitmap data (1 bytes, $21fe-$21fe) ===
        .byte $60                                   // `

// --- Region $315c-$319c ---
.pc = $315c "sub_315c"
// Referenced by: jsr from $1806

sub_315c:
        lda #$37
        sta $01
        jsr $e544
        lda $3fff
        sta $02
        rts
// Referenced by: jsr from $20e9

sub_3169:
        jmp loc_1000
// Referenced by: jsr from $1873

sub_316c:
        jmp loc_1006

scr_316f:
        // === Screen RAM (1 bytes, $316f-$316f) ===
        .byte $ea                                   // scrcode: .

loc_3170:
        sei
        ldx #$ff
        txs
        jsr $fda3
        jsr $fd15
        jsr $ff5b
        ldx #$00
        stx $d020
        stx $d021
        ldx #$28

loc_3187:
        lda dat_31d8,x
        sta $0400,x
        lda #$00
        sta $d400,x
        lda #$01
        sta $d800,x
        dex
        bpl loc_3187
        jmp $fce2

// --- Region $3320-$3326 ---
.pc = $3320 "$3320"
        jsr sub_2020
        jsr sub_1820
        .byte $12                                   // jam // ILLEGAL

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

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

spr_0800:
        // === Charset data (2048 bytes, $0800-$0fff) ===
        .byte $00,$00,$00,$02,$00,$00,$00,$00       // char 0 @+0
        .byte $3f,$b5,$95,$95,$95,$95,$95,$95       // char 1 @+1
        .byte $ff,$95,$95,$95,$95,$95,$95,$95       // char 2 @+2
        .byte $3f,$b5,$95,$95,$95,$95,$95,$95       // char 3 @+3
        .byte $ff,$95,$95,$95,$95,$95,$95,$95       // char 4 @+4
        .byte $3f,$b5,$95,$95,$95,$95,$95,$95       // char 5 @+5
        .byte $3f,$b5,$95,$95,$95,$95,$95,$95       // char 6 @+6
        .byte $3f,$b5,$95,$95,$95,$95,$95,$95       // char 7 @+7
        .byte $ff,$95,$95,$95,$95,$95,$95,$95       // char 8 @+8
        .byte $3f,$25,$25,$2a,$02,$02,$02,$02       // char 9 @+9
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 10 @+10
        .byte $ff,$95,$95,$95,$95,$95,$95,$95       // char 11 @+11
        .byte $ff,$95,$95,$95,$95,$95,$95,$95       // char 12 @+12
        .byte $ff,$95,$95,$95,$95,$95,$95,$95       // char 13 @+13
        .byte $ff,$95,$95,$95,$95,$95,$95,$95       // char 14 @+14
        .byte $3f,$b5,$95,$95,$95,$95,$95,$95       // char 15 @+15
        .byte $ff,$95,$95,$95,$95,$95,$95,$95       // char 16 @+16
        .byte $3f,$b5,$95,$95,$95,$95,$95,$95       // char 17 @+17
        .byte $ff,$95,$95,$95,$95,$95,$95,$95       // char 18 @+18
        .byte $3f,$b5,$95,$95,$95,$95,$95,$a5       // char 19 @+19
        .byte $ff,$95,$95,$aa,$02,$02,$02,$02       // char 20 @+20
        .byte $ff,$95,$95,$95,$95,$95,$95,$95       // char 21 @+21
        .byte $ff,$95,$95,$95,$95,$95,$95,$95       // char 22 @+22
        .byte $ff,$95,$95,$95,$95,$95,$95,$95       // char 23 @+23
        .byte $ff,$95,$95,$95,$95,$95,$a5,$25       // char 24 @+24
        .byte $ff,$95,$95,$95,$95,$95,$95,$a5       // char 25 @+25
        .byte $ff,$95,$95,$95,$aa,$00,$00,$03       // char 26 @+26
        .byte $03,$3f,$25,$25,$2a,$02,$02,$02       // char 27 @+27
        .byte $ff,$95,$95,$aa,$00,$00,$3f,$b5       // char 28 @+28
        .byte $ff,$95,$95,$aa,$00,$00,$0f,$09       // char 29 @+29
        .byte $ff,$95,$95,$95,$95,$95,$95,$a5       // char 30 @+30
        .byte $ff,$95,$95,$95,$95,$95,$95,$95       // char 31 @+31
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 32 ' '
        .byte $3f,$b5,$95,$95,$95,$95,$95,$95       // char 33 '!'
        .byte $ff,$95,$95,$aa,$00,$00,$00,$03       // char 34 '"'
        .byte $3f,$b5,$95,$95,$95,$95,$a5           // char 35 (partial)

txt_091f:
        .byte $25                                   // char 35 (partial)
        .byte $3f,$b5,$95,$95,$95,$95,$95,$a5       // char 36 '$'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 37 '%'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 38 '&'
        .byte $00,$00,$00,$00,$00,$3f,$25,$25       // char 39 '''
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 40 '('
        .byte $ff                                   // char 41 (partial)

txt_0949:
        .byte $55,$55,$a9,$c9,$c9,$c9,$f9           // char 41 (partial)
        .byte $ff                                   // char 42 (partial)

txt_0951:
        .byte $55,$55,$a9,$c9,$c9,$f9,$55           // char 42 (partial)
        .byte $ff,$55,$55,$6a,$e0,$c0,$c0,$c0       // char 43 '+'
        .byte $ff                                   // char 44 (partial)

txt_0961:
        .byte $55,$55,$a9,$c9,$c9,$c9,$c9           // char 44 (partial)
        .byte $ff                                   // char 45 (partial)

txt_0969:
        .byte $55,$55,$aa,$c0,$c0,$ff,$55           // char 45 (partial)
        .byte $ff                                   // char 46 (partial)

txt_0971:
        .byte $55,$55,$aa,$c0,$c0,$ff,$55           // char 46 (partial)
        .byte $ff,$55,$55,$6a,$e0,$c0,$cf,$c9       // char 47 '/'
        .byte $cf,$c9,$c9,$c9,$c9,$c9,$f9,$55       // char 48 '0'
        .byte $ff                                   // char 49 (partial)

txt_0989:
        .byte $55,$55,$56,$57,$57,$57,$57           // char 49 (partial)
        .byte $0f,$09,$09,$09,$09,$09,$09,$09       // char 50 '2'
        .byte $cf,$c9,$c9,$c9,$c9,$c9,$f9,$55       // char 51 '3'
        .byte $c0,$c0,$c0,$c0,$c0,$c0,$c0,$c0       // char 52 '4'
        .byte $cf,$c9,$f9,$55,$e9,$c9,$c9,$c9       // char 53 '5'
        .byte $ff                                   // char 54 (partial)

txt_09b1:
        .byte $55,$55,$a9,$c9,$c9,$c9,$c9           // char 54 (partial)
        .byte $ff                                   // char 55 (partial)

txt_09b9:
        .byte $55,$55,$a9,$c9,$c9,$c9,$c9           // char 55 (partial)
        .byte $ff                                   // char 56 (partial)

txt_09c1:
        .byte $55,$55,$a9,$c9,$c9,$f9,$55           // char 56 (partial)
        .byte $ff                                   // char 57 (partial)

txt_09c9:
        .byte $55,$55,$a9,$c9,$c9,$c9,$c9           // char 57 (partial)
        .byte $ff                                   // char 58 (partial)

txt_09d1:
        .byte $55,$55,$a9,$c9,$c9,$f9,$55           // char 58 (partial)
        .byte $ff                                   // char 59 (partial)

txt_09d9:
        .byte $55,$55,$aa,$c0,$c0,$ff,$55           // char 59 (partial)
        .byte $ff                                   // char 60 (partial)

txt_09e1:
        .byte $55,$55,$56,$57,$57,$57,$57           // char 60 (partial)
        .byte $cf,$c9,$c9,$c9,$c9,$c9,$c9,$c9       // char 61 '='
        .byte $cf,$c9,$c9,$c9,$c9,$c9,$c9,$c9       // char 62 '>'
        .byte $cf,$c9,$c9,$c9,$c9,$c9,$c9,$c9       // char 63 '?'
        .byte $cf,$c9,$c9,$c9,$c9,$c9,$f9,$55       // char 64 '@'
        .byte $cf,$c9,$c9,$c9,$c9,$c9,$e9,$55       // char 65 'A'
        .byte $ff                                   // char 66 (partial)

txt_0a11:
        .byte $55,$55,$55,$a9,$35,$d5,$55           // char 66 (partial)
        .byte $ff                                   // char 67 (partial)

txt_0a19:
        .byte $57,$57,$57,$57,$57,$57,$57           // char 67 (partial)
        .byte $ff                                   // char 68 (partial)

txt_0a21:
        .byte $55,$55,$a9,$09,$09,$f9,$55           // char 68 (partial)
        .byte $ff                                   // char 69 (partial)

txt_0a29:
        .byte $55,$55,$a9,$09,$09,$f9,$55           // char 69 (partial)
        .byte $cf,$c9,$c9,$c9,$c9,$c9,$f9,$55       // char 70 'F'
        .byte $ff                                   // char 71 (partial)

txt_0a39:
        .byte $55,$55,$aa,$c0,$c0,$ff,$55           // char 71 (partial)
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 72 'H'
        .byte $ff                                   // char 73 (partial)

txt_0a49:
        .byte $55,$55,$aa,$c0,$c0,$ff,$55           // char 73 (partial)
        .byte $ff                                   // char 74 (partial)

txt_0a51:
        .byte $55,$55,$a9,$09,$09,$09,$f9           // char 74 (partial)
        .byte $ff                                   // char 75 (partial)

txt_0a59:
        .byte $55,$55,$a9,$c9,$c9,$f9,$55           // char 75 (partial)
        .byte $ff                                   // char 76 (partial)

txt_0a61:
        .byte $55,$55,$a9,$c9,$c9,$f9,$55           // char 76 (partial)
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 77 'M'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 78 'N'
        .byte $00,$00,$00,$00,$00,$ff,$55,$55       // char 79 'O'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 80 'P'
        .byte $f0,$7c                               // char 81 (partial)

txt_0a8a:
        .byte $5c,$5c,$5c,$5c,$5c,$5c               // char 81 (partial)
        .byte $f0,$7c,$5c,$5c,$5c,$5c,$7c,$70       // char 82 'R'
        .byte $fc                                   // char 83 (partial)

txt_0a99:
        .byte $5c,$5c,$ac,$00,$00,$00,$00           // char 83 (partial)
        .byte $f0,$7c                               // char 84 (partial)

txt_0aa2:
        .byte $5c,$5c,$5c,$5c,$5c,$5c               // char 84 (partial)
        .byte $fc                                   // char 85 (partial)

txt_0aa9:
        .byte $5c,$5c,$ac,$00,$00,$c0,$c0           // char 85 (partial)
        .byte $fc                                   // char 86 (partial)

txt_0ab1:
        .byte $5c,$5c,$ac,$00,$00,$c0,$c0           // char 86 (partial)
        .byte $fc                                   // char 87 (partial)

txt_0ab9:
        .byte $5c,$5c,$ac,$00,$00,$fc,$5c           // char 87 (partial)
        .byte $fc                                   // char 88 (partial)

txt_0ac1:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$5c           // char 88 (partial)
        .byte $f0,$70,$70,$b0,$00,$00,$00,$00       // char 89 'Y'
        .byte $fc                                   // char 90 (partial)

txt_0ad1:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$5c           // char 90 (partial)
        .byte $fc,$5c,$5c,$5c,$5c,$5c,$7c,$70       // char 91 '['
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 92 '\'
        .byte $fc                                   // char 93 (partial)

txt_0ae9:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$5c           // char 93 (partial)
        .byte $f0,$7c                               // char 94 (partial)

txt_0af2:
        .byte $5c,$5c,$5c,$5c,$5c,$5c               // char 94 (partial)
        .byte $f0,$7c                               // char 95 (partial)

txt_0afa:
        .byte $5c,$5c,$5c,$5c,$5c,$5c               // char 95 (partial)
        .byte $f0,$7c,$5c,$5c,$5c,$5c,$7c,$60       // char 96 '`'
        .byte $f0,$7c                               // char 97 (partial)

txt_0b0a:
        .byte $5c,$5c,$5c,$5c,$5c,$5c               // char 97 (partial)
        .byte $f0,$7c,$5c,$5c,$5c,$5c,$7c,$70       // char 98 'b'
        .byte $fc                                   // char 99 (partial)

txt_0b19:
        .byte $5c,$5c,$ac,$00,$00,$f0,$7c           // char 99 (partial)
        .byte $fc                                   // char 100 (partial)

txt_0b21:
        .byte $5c,$5c,$ac,$00,$00,$00,$00           // char 100 (partial)
        .byte $fc                                   // char 101 (partial)

txt_0b29:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$5c           // char 101 (partial)
        .byte $fc                                   // char 102 (partial)

txt_0b31:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$5c           // char 102 (partial)
        .byte $fc                                   // char 103 (partial)

txt_0b39:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$5c           // char 103 (partial)
        .byte $fc,$5c,$5c,$5c,$5c,$5c,$7c,$70       // char 104 'h'
        .byte $fc                                   // char 105 (partial)

txt_0b49:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$5c           // char 105 (partial)
        .byte $fc,$5c,$5c,$5c,$5c,$5c,$60,$80       // char 106 'j'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 107 'k'
        .byte $f0,$7c,$5c,$5c,$5c,$5c,$5c,$7c       // char 108 'l'
        .byte $f0,$7c,$5c,$5c,$5c,$5c,$7c,$70       // char 109 'm'
        .byte $fc                                   // char 110 (partial)

txt_0b71:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$5c           // char 110 (partial)
        .byte $fc                                   // char 111 (partial)

txt_0b79:
        .byte $5c,$5c,$ac,$00,$00,$f0,$7c           // char 111 (partial)
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 112 'p'
        .byte $fc                                   // char 113 (partial)

txt_0b89:
        .byte $5c,$5c,$ac,$00,$00,$f0,$7c           // char 113 (partial)
        .byte $f0,$7c                               // char 114 (partial)

txt_0b92:
        .byte $5c,$5c,$5c,$5c,$5c,$5c               // char 114 (partial)
        .byte $f0,$7c,$5c,$5c,$5c,$5c,$7c,$70       // char 115 's'
        .byte $f0,$7c                               // char 116 (partial)

txt_0ba2:
        .byte $5c,$5c,$5c,$5c,$5c,$5c               // char 116 (partial)
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 117 'u'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 118 'v'
        .byte $00,$00,$00,$00,$00,$f0,$70,$70       // char 119 'w'
        .byte $a7,$a7,$a7,$a7,$e7,$e7,$a7,$a7       // char 120 'x'
        .byte $95,$95,$95,$95,$95,$95,$aa,$00       // char 121 'y'
        .byte $95,$95,$95,$95,$95,$95,$aa,$00       // char 122 'z'
        .byte $95,$95,$95,$95,$95,$a5,$2a,$00       // char 123 '{'
        .byte $95,$95,$95,$95,$95,$95,$aa,$00       // char 124 '|'
        .byte $95,$95,$95,$95,$95,$a5,$2a,$00       // char 125 '}'
        .byte $95,$95,$95,$95,$95,$95,$aa,$00       // char 126 '~'
        .byte $95,$95,$95,$95,$95,$a5,$2a,$00       // char 127
        .byte $95,$95,$95,$95,$95,$95,$aa,$00       // char 128
        .byte $02,$02,$02,$3e,$25,$25,$2a,$00       // char 129
        .byte $ff,$95,$95,$95,$95,$a5,$2a,$00       // char 130
        .byte $95,$95,$95,$95,$95,$95,$aa,$00       // char 131
        .byte $95,$95,$95,$95,$95,$95,$aa,$00       // char 132
        .byte $95,$95,$95,$95,$95,$95,$aa,$00       // char 133
        .byte $95,$95,$95,$95,$95,$95,$aa,$00       // char 134
        .byte $95,$95,$95,$95,$95,$a5,$2a,$00       // char 135
        .byte $95,$95,$95,$95,$95,$95,$aa,$00       // char 136
        .byte $95,$95,$95,$95,$95,$a5,$2a,$00       // char 137
        .byte $95,$95,$95,$95,$95,$95,$aa,$00       // char 138
        .byte $2a,$00,$00,$ff,$95,$95,$aa,$00       // char 139
        .byte $02,$02,$02,$02,$02,$02,$02,$00       // char 140
        .byte $95,$95,$95,$95,$95,$a5,$2a,$00       // char 141
        .byte $95,$a5,$25,$25,$29,$09,$02,$00       // char 142
        .byte $95,$95,$95,$95,$95,$95,$aa,$00       // char 143
        .byte $f5,$95,$95,$95,$95,$95,$aa,$00       // char 144
        .byte $2a,$00,$00,$ff,$95,$95,$aa,$00       // char 145
        .byte $0d,$35,$d5,$95,$95,$95,$aa,$00       // char 146
        .byte $02,$02,$02,$3e,$25,$25,$2a,$00       // char 147
        .byte $95,$95,$95,$95,$95,$95,$aa,$00       // char 148
        .byte $0a,$00,$00,$ff,$95,$95,$aa,$00       // char 149
        .byte $2a,$00,$00,$00,$00,$00,$00,$00       // char 150
        .byte $aa,$00,$00,$ff,$95,$95,$aa,$00       // char 151
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 152
        .byte $95,$95,$95,$95,$95,$a5,$2a,$00       // char 153
        .byte $02,$02,$00,$00,$00,$00,$00,$00       // char 154
        .byte $a5,$95,$95,$95,$95,$a5,$2a,$00       // char 155
        .byte $2a,$00,$00,$ff,$95,$95,$aa,$00       // char 156
        .byte $00,$ff,$95,$95,$95,$aa,$00,$00       // char 157
        .byte $00,$3f,$25,$25,$2a,$ff,$95,$aa       // char 158
        .byte $25,$2a,$00,$00,$00,$00,$00,$00       // char 159
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 160
        .byte $55,$a9,$c9,$c9,$c9,$c9,$ca,$00       // char 161
        .byte $a9,$c9,$c9,$f9                       // char 162 (partial)

txt_0d14:
        .byte $55,$55,$aa,$00                       // char 162 (partial)
        .byte $c0,$c0,$f0,$7f                       // char 163 (partial)

txt_0d1c:
        .byte $55,$55,$aa,$00                       // char 163 (partial)
        .byte $c9,$c9,$c9,$f9                       // char 164 (partial)

txt_0d24:
        .byte $55,$55,$aa,$00                       // char 164 (partial)
        .byte $aa,$c0,$c0,$ff                       // char 165 (partial)

txt_0d2c:
        .byte $55,$55,$aa,$00                       // char 165 (partial)
        .byte $aa,$c0,$c0,$c0,$c0,$c0,$c0,$00       // char 166
        .byte $c9,$c9,$c9,$f9                       // char 167 (partial)

txt_0d3c:
        .byte $55,$55,$aa,$00                       // char 167 (partial)
        .byte $a9,$c9,$c9,$c9,$c9,$c9,$ca,$00       // char 168

txt_0d48:
        .byte $57,$57,$57,$57,$55,$55,$aa,$00       // char 169
        .byte $c9,$c9,$c9,$f9                       // char 170 (partial)

txt_0d54:
        .byte $55,$55,$aa,$00                       // char 170 (partial)
        .byte $a9,$c9,$c9,$c9,$c9,$c9,$ca,$00       // char 171
        .byte $c0,$c0,$c0,$ff                       // char 172 (partial)

txt_0d64:
        .byte $55,$55,$aa,$00                       // char 172 (partial)
        .byte $c9,$c9,$c9,$c9,$c9,$c9,$ca,$00       // char 173
        .byte $c9,$c9,$c9,$c9,$c9,$c9,$ca,$00       // char 174
        .byte $c9,$c9,$c9,$f9                       // char 175 (partial)

txt_0d7c:
        .byte $55,$55,$aa,$00                       // char 175 (partial)
        .byte $aa,$c0,$c0,$c0,$c0,$c0,$c0,$00       // char 176
        .byte $f9,$e5,$e5,$e5                       // char 177 (partial)

txt_0d8c:
        .byte $55,$55,$aa,$00                       // char 177 (partial)
        .byte $a9,$c9,$c9,$c9,$c9,$c9,$ca,$00       // char 178
        .byte $a9,$09,$09,$f9                       // char 179 (partial)

txt_0d9c:
        .byte $55,$55,$aa,$00                       // char 179 (partial)

txt_0da0:
        .byte $57,$57,$57,$57,$57,$57,$ab,$00       // char 180
        .byte $c9,$c9,$c9,$f9                       // char 181 (partial)

txt_0dac:
        .byte $55,$55,$aa,$00                       // char 181 (partial)
        .byte $c9,$c9,$f9,$75                       // char 182 (partial)

txt_0db4:
        .byte $55,$55,$aa,$00                       // char 182 (partial)
        .byte $c9,$c9,$f9,$55,$e9,$c9,$ca,$00       // char 183
        .byte $a9,$c9,$c9,$c9,$c9,$c9,$ca,$00       // char 184
        .byte $a9,$09,$09,$f9                       // char 185 (partial)

txt_0dcc:
        .byte $55,$55,$aa,$00                       // char 185 (partial)
        .byte $56,$58,$6f                           // char 186 (partial)

txt_0dd3:
        .byte $55,$55,$55,$aa,$00                   // char 186 (partial)

txt_0dd8:
        .byte $57,$57,$57,$57,$55,$55,$aa,$00       // char 187
        .byte $aa,$c0,$c0,$ff                       // char 188 (partial)

txt_0de4:
        .byte $55,$55,$aa,$00                       // char 188 (partial)
        .byte $a9,$09,$09,$f9                       // char 189 (partial)

txt_0dec:
        .byte $55,$55,$aa,$00                       // char 189 (partial)
        .byte $a9,$09,$09,$09,$09,$09,$0a,$00       // char 190
        .byte $a9,$09,$09,$f9                       // char 191 (partial)

txt_0dfc:
        .byte $55,$55,$aa,$00                       // char 191 (partial)
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 192
        .byte $a9,$c9,$c9,$f9                       // char 193 (partial)

txt_0e0c:
        .byte $55,$55,$aa,$00                       // char 193 (partial)
        .byte $55,$a9,$09,$09,$09,$09,$0a,$00       // char 194
        .byte $a9,$c9,$c9,$f9                       // char 195 (partial)

txt_0e1c:
        .byte $55,$55,$aa,$00                       // char 195 (partial)
        .byte $a9,$09,$09,$f9                       // char 196 (partial)

txt_0e24:
        .byte $55,$55,$aa,$00                       // char 196 (partial)
        .byte $00,$c0,$c0,$c0,$c0,$c0,$00,$00       // char 197
        .byte $00,$f0,$70,$70,$70,$70,$70,$b0       // char 198
        .byte $55,$aa,$00,$00,$00,$00,$00,$00       // char 199
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 200

txt_0e48:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$ac,$00       // char 201
        .byte $7c,$5c,$5c,$5c,$5c,$7c,$a0,$00       // char 202
        .byte $00,$00,$00,$fc                       // char 203 (partial)

txt_0e5c:
        .byte $5c,$5c,$ac,$00                       // char 203 (partial)
        .byte $5c,$5c,$5c,$5c,$5c,$7c,$a0,$00       // char 204
        .byte $c0,$00,$00,$fc                       // char 205 (partial)

txt_0e6c:
        .byte $5c,$5c,$ac,$00                       // char 205 (partial)
        .byte $c0,$00,$00,$00,$00,$00,$00,$00       // char 206
        .byte $5c,$5c,$5c,$5c,$5c,$7c,$a0,$00       // char 207

txt_0e80:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$ac,$00       // char 208
        .byte $00,$00,$00,$f0,$70,$70,$b0,$00       // char 209
        .byte $5c,$5c,$5c,$5c,$5c,$7c,$a0,$00       // char 210
        .byte $7c                                   // char 211 (partial)

txt_0e99:
        .byte $5c,$5c,$5c,$5c,$5c,$ac,$00           // char 211 (partial)
        .byte $00,$00,$00,$fc                       // char 212 (partial)

txt_0ea4:
        .byte $5c,$5c,$ac,$00                       // char 212 (partial)

txt_0ea8:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$ac,$00       // char 213

txt_0eb0:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$ac,$00       // char 214
        .byte $5c,$5c,$5c,$5c,$5c,$7c,$a0,$00       // char 215
        .byte $80,$00,$00,$00,$00,$00,$00,$00       // char 216
        .byte $5c,$5c,$5c,$5c,$5c,$7c,$a0,$00       // char 217
        .byte $7c                                   // char 218 (partial)

txt_0ed1:
        .byte $5c,$5c,$5c,$5c,$5c,$ac,$00           // char 218 (partial)
        .byte $5c,$5c,$5c,$5c,$5c,$7c,$a0,$00       // char 219
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 220

txt_0ee8:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$ac,$00       // char 221
        .byte $5c,$6c,$60,$60,$a0,$80,$00,$00       // char 222

txt_0ef8:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$ac,$00       // char 223
        .byte $7c                                   // char 224 (partial)

txt_0f01:
        .byte $5c,$5c,$5c,$5c,$5c,$ac,$00           // char 224 (partial)
        .byte $5c,$5c,$5c,$5c,$5c,$7c,$a0,$00       // char 225
        .byte $00,$00,$fc                           // char 226 (partial)

txt_0f13:
        .byte $5c,$5c,$5c,$ac,$00                   // char 226 (partial)
        .byte $00,$00,$00,$f0,$70,$70,$b0,$00       // char 227
        .byte $a0,$00,$00,$fc                       // char 228 (partial)

txt_0f24:
        .byte $5c,$5c,$a8,$00                       // char 228 (partial)
        .byte $7c,$5c,$5c,$5c,$5c,$7c,$a0,$00       // char 229

txt_0f30:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$ac,$00       // char 230
        .byte $5c,$5c,$5c,$5c,$5c,$7c,$a0,$00       // char 231
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 232
        .byte $5c,$5c,$5c,$5c,$5c,$7c,$a0,$00       // char 233

txt_0f50:
        .byte $5c,$5c,$5c,$5c,$5c,$5c,$ac,$00       // char 234
        .byte $7c,$5c,$5c,$5c,$5c,$7c,$a0,$00       // char 235
        .byte $5c,$5c,$5c,$5c,$5c,$7c,$a0,$00       // char 236
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 237
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 238
        .byte $70,$b0,$00,$00,$00,$00,$00,$00       // char 239
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 240
        .byte $e7,$e7,$e7,$e7,$a7,$a7,$a7,$af       // char 241
        .byte $a7,$a7,$a7,$a7,$a7,$a7,$a7,$a7       // char 242
        .byte $af,$ff,$ff,$ff,$a7,$a7,$a7,$a7       // char 243
        .byte $a7,$a7,$a7,$a7,$a7,$a7,$a7,$af       // char 244
        .byte $a7,$a7,$a7,$a7,$a7,$a7,$a7,$a7       // char 245
        .byte $a7,$a7,$a7,$a7,$a7,$a7,$a7,$af       // char 246
        .byte $a7,$e7,$e7,$e7,$a7,$a7,$a7,$af       // char 247
        .byte $ab,$af,$af,$af,$af,$af,$af,$af       // char 248
        .byte $af,$e7,$e7,$e7,$a7,$a7,$a7,$af       // char 249
        .byte $a7,$e7,$e7,$a7,$a7,$a7,$a7,$af       // char 250
        .byte $ff,$ff,$bf,$bf,$ff,$ff,$ff,$ff       // char 251
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 252
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 253
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 254
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 255

// --- Region $100a-$1079 ---
.pc = $100a "Segment $100a"
        .byte $01,$00,$01,$00,$00,$07,$0e,$02,$50,$02,$00,$14,$d7,$00,$00,$e0 // ........P.......
        .byte $00,$00,$00,$09,$08,$80,$3c,$18,$2c,$00,$00,$00,$00,$00,$6c,$01 // ......<.,.....l.
        .byte $01,$01,$19,$19,$4b,$6b,$8f,$b1,$15,$15,$15,$d0,$5a,$b0,$22,$04 // ....Kk......Z.".
        .byte $07,$00,$94,$d7,$00,$14,$d7,$00,$40,$00,$00,$14,$d7,$0a,$0a,$0a // ........@.......
        .byte $a9,$a9,$a9,$81,$41,$41,$10,$41,$40,$01,$00,$01,$00,$00,$e0,$00 // ....AA.A@.......
        .byte $00,$70,$00,$00,$00,$0c,$0c,$0c,$02,$0c,$02,$fd,$fd,$fd,$00,$00 // .p..............
        .byte $00,$10,$41,$40,$01,$01,$01,$ff,$ff,$ff,$55,$58,$65,$15,$15,$15 // ..A@......UXe...

// --- Region $1454-$1537 ---
.pc = $1454 "Segment $1454"
        .byte $01,$27,$01,$38,$01,$4b,$01,$5f,$01,$73,$01,$8a,$01,$a1,$01,$ba // .'.8.K._.s......
        .byte $01,$d4,$01,$f0,$01,$0e,$02,$2d,$02,$4e,$02,$71,$02,$96,$02,$bd // .......-.N.q....
        .byte $02,$e7,$02,$13,$03,$42,$03,$74,$03,$a9,$03,$e0,$03,$1b,$04,$5a // .....B.t.......Z
        .byte $04,$9b,$04,$e2,$04,$2c,$05,$7b,$05,$ce,$05,$27,$06,$85,$06,$e8 // .....,.{...'....
        .byte $06,$51,$07,$c1,$07,$37,$08,$b4,$08,$37,$09,$c4,$09,$57,$0a,$f5 // .Q...7...7...W..
        .byte $0a,$9c,$0b,$4e,$0c,$09,$0d,$d0,$0d,$a3,$0e,$82,$0f,$6e,$10,$68 // ...N.........n.h
        .byte $11,$6e,$12,$88,$13,$af,$14,$eb,$15,$39,$17,$9c,$18,$13,$1a,$a1 // .n.......9......
        .byte $1b,$46,$1d,$04,$1f,$dc,$20,$d0,$22,$dc,$24,$10,$27,$5e,$29,$d6 // .F.... .".$.'^).
        .byte $2b,$72                               // +r

txt_14d6:
        .text ".81&4B7"
        .byte $8c,$3a,$08,$3e,$b8,$41,$a0,$45,$b8   // .:.>.A.E.

txt_14e6:
        .text "I N"
        .byte $bc                                   // '<' | $80 (end-of-string marker)
        .byte $52,$ac,$57,$e4,$5c,$70,$62,$4c,$68,$84,$6e,$18,$75,$10,$7c,$70 // R.W.\pbLh.n.u.|p
        .byte $83,$40,$8b,$70,$93,$40,$9c,$78,$a5,$58,$af,$c8,$b9,$e0,$c4,$98 // .@.p.@.x.X......
        .byte $d0,$08,$dd,$30,$ea,$20,$f8,$2e,$fd,$41,$40,$0a,$a8,$01,$d8,$00 // ...0. ...A@.....
        .byte $f0,$81,$80,$0e,$e8,$00,$40,$00,$00,$81,$10,$0a,$a9,$01,$00,$00 // ......@.........
        .byte $00,$41,$41,$0a,$a9,$00,$14,$40,$00,$41,$41,$0a,$a9,$51 // .AA....@.AA..Q

// --- Region $1539-$158c ---
.pc = $1539 "dat_1539"

dat_1539:
        .byte $80,$88,$41,$40,$0a,$a9,$01,$d7,$00,$e0,$11,$04,$41,$08,$02,$80 // ..A@........A...
        .byte $1c,$80,$17,$ff,$68,$6b               // ....hk

loc_154f:
        .byte $8f,$b1,$15,$15,$15,$15,$8c,$01,$ff,$8c,$02,$02,$91,$02,$02,$8a // ................
        .byte $02,$02,$8c,$02,$02,$ff,$8c,$03,$ff,$1f,$00,$ff,$81,$00,$1c,$81 // ................
        .byte $02,$30,$01,$3c,$01,$30,$83,$01,$1c,$81,$00,$1c,$03,$1c,$81,$02 // .0.<.0..........
        .byte $30,$01,$3c,$01,$30,$81,$01,$1c,$81,$02,$30,$01,$3c,$01 // 0.<.0.....0.<.

// --- Region $15d8-$1603 ---
.pc = $15d8 "Segment $15d8"
        .byte $a7,$bc,$3e,$27,$3c,$83,$9e,$3e,$07,$3c,$0f,$3e,$07,$3c,$03,$35 // ..>'<..>.<.>.<.5
        .byte $a3,$9b,$35,$3f,$37,$83,$05,$24,$03,$24,$01,$22,$03,$22,$03,$20 // ..5?7..$.$.".". 
        .byte $01,$20,$03,$20,$03,$1e,$01,$1e,$01,$1e,$ff // . . .......

dat_1603:
        // === Fill data (1 bytes, $1603-$1603) ===
        .byte $00                                   // .

// --- Region $1721-$1721 ---
.pc = $1721 "dat_1721"

dat_1721:
        // === Fill data (1 bytes, $1721-$1721) ===
        .byte $00                                   // .

// --- Region $17c0-$17ff ---
.pc = $17c0 "dat_17c0"

dat_17c0:
        .byte $20,$48,$70,$20,$48,$70,$20,$48,$70,$17,$3f,$67,$01,$29,$51,$0e //  Hp Hp Hp.?g.)Q.
        .byte $36,$5e,$04,$2c,$54,$05,$2d,$55,$12,$3a,$62,$05,$2d,$55,$12,$3a // 6^.,T.-U.:b.-U.:
        .byte $62,$20,$48,$70,$20,$48,$70,$20,$48,$70,$20,$48,$70,$00,$00,$00 // b Hp Hp Hp Hp...
        .fill 16, $00

// --- Region $1c2d-$1e58 ---
.pc = $1c2d "dat_1c2d"

dat_1c2d:
        .byte $06,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$03,$01,$03,$03 // ................
        .byte $0e,$03,$0e,$0e,$06,$0e,$06,$06,$00,$00,$00,$00,$00,$00,$00,$00 // ................
        .fill 10, $00
        .byte $02,$02,$0a,$02,$0a,$0a,$07,$0a,$07,$07,$01,$07,$01,$01,$01,$00 // ................
        .fill 11, $00
        .byte $06,$0e,$03,$01,$03,$0e,$06,$02,$0a,$07,$01,$07,$0a,$02,$0b,$0c // ................
        .byte $0f,$01,$0f,$0c,$0b,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01 // ................
        .byte $03,$01,$03,$03,$0e,$03,$0e,$0e,$06,$0e,$06,$06,$00,$00,$00,$00 // ................
        .fill 13, $00
        .byte $02,$0a,$06,$0e,$03,$01,$03,$0e,$06,$0f,$01,$0f,$0c,$0b,$01,$01 // ................
        .fill 16, $00

txt_1ccf:
        .text "0/.,*(&# "
        .byte $1d,$1a,$17,$14,$11,$0e,$0b,$08,$06,$04,$03,$02,$01,$00,$00,$01 // ................
        .byte $02,$03,$04,$06,$08,$0b,$0e,$11,$14,$17,$1a,$1d // ............

txt_1cf4:
        .text " #&(*,./0/.,*(&# "
        .byte $1d,$1a,$70,$87,$88,$87,$90,$87,$a8,$87,$c0,$87,$d8,$87,$f0,$87 // ..p.............
        .byte $08,$87,$80,$0b,$37,$00,$00,$ff,$18,$00,$1f,$00,$01,$00,$00,$00 // ....7...........
        .byte $00,$00,$00,$00,$00,$00,$00,$02,$0f,$01,$01,$01,$01,$01,$01,$01 // ................
        .byte $00,$d8,$d9,$da,$db,$dc,$dd,$de,$df,$00,$02,$00,$02,$02,$0a,$02 // ................
        .byte $0a,$0a,$07,$0a,$07,$07,$01,$07,$01,$01,$07,$01,$07,$07,$0a,$07 // ................
        .byte $0a,$02,$0a,$02,$02,$00,$02,$00,$00,$0c,$26,$0d,$26,$0e // ..........&.&.

txt_1d63:
        .text "&L&M&N&"
        .byte $8c,$26,$8d,$26,$8e,$26,$cc,$26,$cd,$26,$ce,$26,$0c,$27,$0d,$27 // .&.&.&.&.&.&.'.'
        .byte $0e                                   // .

txt_1d7b:
        .text "'L'M'N'"
        .byte $8c
        .byte $27,$8d
        .byte $27,$8e
        .byte $27,$cc
        .byte $27,$cd
        .byte $27,$ce
        .text "'0*#"
        .byte $1b
        .byte $18,$13,$11,$10,$10,$11,$13,$18,$1b   // .........

txt_1d9b:
        .text "#*00*#"
        .byte $1b,$18,$13,$11,$10,$10,$11,$13,$18,$1b // ..........

txt_1dab:
        .text "#*00*#"
        .byte $1b,$18,$13,$11,$10,$10,$11,$13,$18,$1b // ..........

txt_1dbb:
        .text "#*00*#"
        .byte $1b,$18,$13,$11,$10,$10,$11,$13,$18,$1b // ..........

txt_1dcb:
        .text "#*00*#"
        .byte $1b,$18,$13,$11,$10,$10,$11,$13,$18,$1b // ..........

txt_1ddb:
        .text "#*00*#"
        .byte $1b,$18,$13,$11,$10,$10,$11,$13,$18,$1b,$23,$2a,$30,$10,$11,$13 // ..........#*0...
        .byte $18,$1b,$23,$2a,$30,$09,$0b,$09,$0b,$08,$09,$0b,$08,$0a,$09,$0b // ..#*0...........
        .byte $08,$0a,$07,$09,$0b,$08,$0a,$07,$01,$0d,$03,$0e,$0b,$06,$06,$0e // ................
        .byte $06,$0b,$0e,$03,$06,$0b,$0e,$03,$0d,$06,$0b,$0e,$03,$0d,$0e,$0b // ................
        .byte $06,$00,$00,$00,$00,$0b,$0c,$0f,$0c,$0b,$0c,$0c,$0c,$0c,$0c,$0c // ................
        .byte $0c,$0c,$0c,$0b,$0c,$0f,$0c,$0b,$01,$01,$01,$02,$02,$03,$04,$05 // ................
        .byte $06,$07,$08,$0a,$0c,$0e,$10,$12,$13,$12,$10,$0e,$0c,$0a,$08,$07 // ................
        .byte $05,$04,$03,$02,$02,$01,$01,$01       // ........

// --- Region $1f0a-$1f27 ---
.pc = $1f0a "Segment $1f0a"
        .byte $f2,$f3,$f4,$f5,$f6,$f7,$f8,$f9,$fa,$fb,$fc,$fd,$fe,$ff,$01,$02 // ................
        .byte $03,$04,$05,$06,$07,$08,$09,$0a,$0b,$0c,$0d,$0e,$0f,$10 // ..............

// --- Region $209c-$20bb ---
.pc = $209c "bmp_209c"

bmp_209c:
        // === Bitmap data (32 bytes, $209c-$20bb) ===
        .byte $00,$09,$09,$02,$08,$0a,$07,$01,$00,$00,$00,$06,$0e,$03,$01,$00 // ................

tbl_20ac:
        // === VIC register table (16 bytes, $20ac-$20bb) ===
        .byte $00,$0c,$0c,$0a,$0e,$04,$06,$00,$00,$00,$00,$09,$05,$0d,$01,$00 // ................

// --- Region $216c-$21be ---
.pc = $216c "bmp_216c"

bmp_216c:
        // === Bitmap data (83 bytes, $216c-$21be) ===
        .byte $00,$00,$00,$00,$18,$6d,$0f,$30,$8d,$07,$30,$ad,$08,$30,$18,$6d // .....m.0..0..0.m
        .byte $10,$30,$8d,$08,$30,$c8,$c8,$c0,$0e,$d0,$a7,$4e,$10,$d0,$ad,$01 // .0..0......N....
        .byte $30,$18,$6d,$09,$30,$8d,$01,$30,$8d,$05,$30,$ad,$02,$30,$18,$6d // 0.m.0..0..0..0.m
        .byte $0a,$30,$8d,$02,$30,$8d,$06,$30,$ad,$03,$30,$18,$6d,$0b,$30,$8d // .0..0..0..0.m.0.
        .byte $03,$30,$8d,$07,$30,$ad,$04,$30,$18,$6d,$0c,$30,$8d,$04,$30,$8d // .0..0..0.m.0..0.
        .byte $08,$30,$60                           // .0`

// --- Region $21e5-$21f5 ---
.pc = $21e5 "bmp_21e5"

bmp_21e5:
        // === Bitmap data (17 bytes, $21e5-$21f5) ===
        .byte $06,$01,$08,$08,$08,$08,$08,$08,$08,$01,$08,$08,$08,$08,$08,$08 // ................
        .byte $07                                   // .

// --- Region $21ff-$2434 ---
.pc = $21ff "Segment $21ff"
        .byte $29,$55,$55,$00,$59,$bb,$80,$66,$df,$e0,$59,$ab,$90,$66,$ee,$64 // )UU.Y..f..Y..f.d
        .byte $5a,$bb,$98,$61,$fd,$4d,$40,$55,$01,$40,$41,$01,$40,$41,$01,$40 // Z..a.M@U.@A.@A.@
        .byte $41,$01,$73,$41,$89,$6e,$41,$e9,$7f,$41,$b9,$6e,$41,$e9,$7f,$41 // A.sA.nA..A.nA..A
        .byte $e9,$6e,$41,$f9,$55,$41,$55,$00,$00,$00,$00,$00,$00,$00,$00,$00 // .nA.UAU.........
        .byte $00,$55,$55,$54,$6e,$ee,$e4,$7b,$fb,$b4,$6f,$ff,$e4,$7f,$ff,$b4 // .UUTn..{..o.....
        .byte $6f
        .byte $55,$54,$63
        .byte $40,$00
        .byte $40                                   // @ character
        .text "U"
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $00
        .byte $40,$40,$00
        .byte $40,$40
        .byte $55,$40,$62
        .byte $40,$00
        .text "ZUTV"
        .byte $ee,$e4
        .byte $59,$bb,$b4,$66,$66
        .byte $e4,$59,$ab,$a4,$55,$55,$54,$00,$00,$00,$00,$00,$00,$00,$00,$00 // .Y..UUT.........
        .byte $00,$55,$40,$55,$6e,$d1,$65,$6b,$f7,$99,$66,$ea,$65,$59,$bb,$99 // .U@Un.ek..f.eY..
        .byte $66,$ee,$a5,$51,$73                   // f..Qs

txt_2294:
        .text "Q"
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .text "A"
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .text "A"
        .byte $40                                   // @ character
        .text "QA"
        .byte $40                                   // @ character
        .text "HABD"
        .byte $71
        .byte $6b,$40,$79,$6e,$40,$7d,$6b,$40,$79,$6b,$40,$7d,$6f,$40,$79,$55 // k@yn@}k@yk@}o@yU
        .byte $40,$55,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$55,$55,$54,$6e // @U..........UUTn
        .byte $ee,$e4,$7b,$fb,$b4,$6f,$ff,$e4,$7f,$ff,$b4,$6f
        .text "UTC"
        .byte $40                                   // @ character
        .byte $00
        .byte $40,$40,$00
        .byte $40                                   // @ character
        .text "UT"
        .byte $40                                   // @ character
        .byte $00,$04
        .byte $55,$40,$04,$00
        .byte $40,$04
        .text "ZUTV"
        .byte $ee,$e4
        .byte $59,$bb,$b4,$66,$66,$e4
        .byte $59,$ab,$a4
        .byte $55
        .byte $55,$54,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$55,$00,$01 // UT...........U..
        .byte $9a,$00,$01,$66,$00,$01,$5a,$00,$01,$66,$00,$01,$de,$00,$01,$c2 // ...f..Z..f......
        .byte $00,$01,$02,$00,$01,$02,$00,$01,$02,$00,$01,$02,$00,$01,$0a,$00 // ................
        .byte $01,$fe,$00,$01,$be,$00,$01,$ee,$00,$01,$be,$00,$01,$ae,$00,$01 // ................
        .byte $56,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$6a,$df,$b3 // V............j..
        .byte $e6,$6a,$df,$b3,$e6,$05,$02,$04,$00,$0c,$0b,$1b,$02,$3b,$e6,$38 // .j...........;.8
        .text "9;<="
        .byte $09,$02,$08,$0a,$07,$0a,$08,$02,$09,$00,$07,$0a
        .byte $08,$02,$09,$00,$0a,$08,$02,$09,$00,$02,$09,$00,$02,$02,$0a,$02 // ................
        .byte $0a,$0a,$07,$0a,$07,$07,$01,$07,$01,$01,$03,$01,$03,$0e,$03,$0e // ................
        .byte $0e,$06,$0e,$06,$00,$09,$02,$00,$09,$02,$08,$0a,$00,$09,$02,$08 // ................
        .byte $0a,$07,$00,$09,$02,$08,$0a,$07,$0a,$08,$02,$09,$a0,$9a,$94,$8e // ................
        .byte $88,$82,$7c,$76,$70,$6a,$64,$5e       // ..|vpjd^

txt_23ac:
        .text "XRLF"
        .byte $40                                   // @ character
        .text ":4.(#"
        .byte $1e,$1a,$16,$12,$0f,$0c
        .byte $09,$06,$04,$02,$01,$02,$04,$06,$09,$0c,$0f,$12,$16,$1a,$1e // ...............

txt_23cb:
        .text "#(.4:"
        .byte $40                                   // @ character
        .text "FLRX"
        .byte $5e,$64,$6a,$70,$76,$7c
        .byte $82,$88,$8e,$94,$9a,$a0,$a5,$aa,$ae,$b2,$b5,$b8,$ba,$bb,$ba,$b8 // ................
        .byte $b5,$b2,$ae,$aa,$a5                   // .....

dat_23f0:
        // === Fill data (39 bytes, $23f0-$2416) ===
        .fill 16, $00

scr_2400:
        .fill 23, $00
        .byte $80,$81,$81,$81,$81,$81,$82,$83,$84,$81,$85,$86,$81,$87,$88,$81 // ................
        .fill 11, $81
        .byte $87,$89                               // ..

dat_2434:
        // === Fill data (1 bytes, $2434-$2434) ===
        .byte $00                                   // .

// --- Region $2456-$2474 ---
.pc = $2456 "dat_2456"

dat_2456:
        .byte $8a,$8b,$8c,$8d,$8d,$8d,$8e,$8f,$90,$8c,$91,$92,$93,$94,$95,$96 // scrcode: ................
        .byte $97,$98,$99,$9a,$9b,$9b,$9b,$9b,$9c,$9d,$9e,$9f,$9b,$a0 // scrcode: ..............

dat_2474:
        // === Fill data (1 bytes, $2474-$2474) ===
        .byte $00                                   // .

// --- Region $2495-$24b3 ---
.pc = $2495 "dat_2495"

dat_2495:
        .encoding "screencode_mixed"
        .byte $a1,$a2,$95,$a3                       // scrcode: ....
        .text "@@@"
        .byte $a4,$95,$95,$a5,$a6,$95,$a7,$a8,$a9,$95,$aa,$ab,$ac,$aa,$ad // scrcode: ...............
        .text "@@@@"
        .byte $ae,$af,$b0,$b1                       // scrcode: ....
        .encoding "petscii_upper"

dat_24b3:
        // === Fill data (1 bytes, $24b3-$24b3) ===
        .byte $00                                   // .

// --- Region $24d4-$24f3 ---
.pc = $24d4 "dat_24d4"

dat_24d4:
        .encoding "screencode_mixed"
        .byte $b2,$b3,$b4,$b5,$b6                   // scrcode: .....
        .text "@@"
        .byte $b7,$b8,$b9,$ba,$bb,$bc,$bd,$95,$be,$bf,$bf,$c0,$b0,$c1,$c0,$c2 // scrcode: ................
        .byte $c3                                   // scrcode: .
        .text "@@@@"
        .byte $c4,$c0,$c5,$c3                       // scrcode: ....
        .encoding "petscii_upper"

// --- Region $2513-$2534 ---
.pc = $2513 "dat_2513"

dat_2513:
        .encoding "screencode_mixed"
        .byte $c6,$c7,$95,$c8,$c9,$c9,$c9,$c9,$ca,$cb,$cc,$cd,$ce,$cf,$d0,$ce // scrcode: ................
        .byte $cf,$d1                               // scrcode: ..
        .text "@"
        .byte $cd,$ce,$c5,$d2,$d3,$d4,$d5,$d6,$d7,$d8 // scrcode: ..........
        .text "@"
        .byte $cd,$ce,$d9,$da                       // scrcode: ....
        .encoding "petscii_upper"

// --- Region $2552-$25ff ---
.pc = $2552 "dat_2552"

dat_2552:
        .encoding "screencode_mixed"
        .byte $db,$dc,$dd,$dd,$dd,$dd,$dd,$dd,$dd,$dd,$dd,$de,$df,$e0,$e1,$e2 // scrcode: ................
        .byte $e3,$e1,$e2,$e4                       // scrcode: ....
        .text "@"
        .byte $e0,$e5,$e6,$e7,$e8,$dd,$dd,$dd,$e2,$e4 // scrcode: ..........
        .text "@"
        .byte $e0,$e5,$e9,$ea                       // scrcode: ....
        .text "@@@@"
        .fill 15, $00                               // scrcode: @@@@@@@@@@@@@@@
        .text "acfjou"
        .byte $1b                                   // scrcode: .
        .encoding "petscii_upper"

txt_2590:
        .text "$,4<DLT"
        .byte $5c                                   // backslash character
        .byte $64,$6c,$74,$7c,$84,$8c,$94,$9c,$a4,$ac,$b4,$bc,$c4,$cc,$d4,$dc // scrcode: ................
        .byte $e2,$e7,$eb,$ef,$f2,$f4,$f6,$f7,$f7,$f6,$f4,$f2,$ef,$eb,$e7,$e2 // scrcode: ................
        .byte $dc,$d4,$cc,$c4,$bc,$b4,$ac,$a4       // scrcode: ........
        .byte $9c,$94,$8c,$84,$7c,$74,$6c,$64       // scrcode: ........

txt_25c8:
        .byte $5c                                   // backslash character
        .text "TLD<4,$"
        .encoding "screencode_mixed"
        .byte $1b                                   // scrcode: .
        .text "uojfdba@@@@"
        .byte $40                                   // scrcode: .
        .text "@@@"
        .encoding "petscii_upper"

txt_25e0:
        .text "0/-*'#"
        .encoding "screencode_mixed"
        .byte $1f                                   // scrcode: .
        .text "zvroljhgffghj"
        .byte $4c                                   // scrcode: .
        .text "ptx"
        .byte $1c                                   // scrcode: .
        .text " $("
        .byte $6c                                   // scrcode: .
        .encoding "petscii_upper"

txt_25fd:
        .text "./"
        .byte $bd                                   // '=' | $80 (end-of-string marker)

// --- Region $261b-$2621 ---
.pc = $261b "dat_261b"

dat_261b:
        .encoding "screencode_mixed"
        .text "xxxxxx"
        .encoding "petscii_upper"

dat_2621:
        // === Fill data (1 bytes, $2621-$2621) ===
        .byte $00                                   // .

// --- Region $265b-$2661 ---
.pc = $265b "dat_265b"

dat_265b:
        .encoding "screencode_mixed"
        .text "xxxxxx"
        .encoding "petscii_upper"

dat_2661:
        // === Fill data (1 bytes, $2661-$2661) ===
        .byte $00                                   // .

// --- Region $268e-$26a1 ---
.pc = $268e "dat_268e"

dat_268e:
        .encoding "screencode_mixed"
        .byte $7c                                   // scrcode: .
        .text "@@"
        .byte $66                                   // scrcode: .
        .text "@@"
        .byte $66                                   // scrcode: .
        .text "@@"
        .byte $7c                                   // scrcode: .
        .text "@@"
        .byte $66                                   // scrcode: .
        .text "xx"
        .byte $66                                   // scrcode: .
        .text "xx"
        .byte $7c                                   // scrcode: .
        .encoding "petscii_upper"

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

// --- Region $26cc-$26e1 ---
.pc = $26cc "dat_26cc"

dat_26cc:
        .encoding "screencode_mixed"
        .text "x"
        .byte $7e,$63                               // scrcode: ..
        .text "<x"
        .byte $77,$66                               // scrcode: ..
        .text "x"
        .byte $7f,$7e                               // scrcode: ..
        .text "x"
        .byte $6b,$66                               // scrcode: ..
        .text "x"
        .byte $63,$66                               // scrcode: ..
        .text "x"
        .byte $63,$66                               // scrcode: ..
        .text "x"
        .byte $63                                   // scrcode: .
        .encoding "petscii_upper"

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

// --- Region $270c-$2721 ---
.pc = $270c "dat_270c"

dat_270c:
        .encoding "screencode_mixed"
        .text "x"
        .byte $66                                   // scrcode: .
        .text "@<"
        .byte $76                                   // scrcode: .
        .text "@"
        .byte $66,$7e                               // scrcode: ..
        .text "@"
        .byte $7e,$7e                               // scrcode: ..
        .text "@"
        .byte $66,$6e                               // scrcode: ..
        .text "@"
        .byte $66,$66                               // scrcode: ..
        .text "x"
        .byte $66,$66                               // scrcode: ..
        .text "x"
        .encoding "petscii_upper"

dat_2721:
        // === Fill data (1 bytes, $2721-$2721) ===
        .byte $00                                   // .

// --- Region $275b-$2761 ---
.pc = $275b "dat_275b"

dat_275b:
        .encoding "screencode_mixed"
        .text "xxxxxx"
        .encoding "petscii_upper"

dat_2761:
        // === Fill data (1 bytes, $2761-$2761) ===
        .byte $00                                   // .

// --- Region $279b-$27a1 ---
.pc = $279b "dat_279b"

dat_279b:
        .encoding "screencode_mixed"
        .text "xxxxxx"
        .encoding "petscii_upper"

dat_27a1:
        // === Fill data (1 bytes, $27a1-$27a1) ===
        .byte $00                                   // .

// --- Region $27db-$27df ---
.pc = $27db "dat_27db"

dat_27db:
        .encoding "screencode_mixed"
        .text "x@@x"
        .encoding "petscii_upper"

dat_27df:
        // === Fill data (1 bytes, $27df-$27df) ===
        .byte $00                                   // .

// --- Region $2800-$28d8 ---
.pc = $2800 "chr_2800"

chr_2800:
        .fill 9, $00
        .byte $0c,$1e,$66,$7e,$66,$cc,$cc,$00,$3e,$33,$66,$7c,$66,$cc,$f8,$00 // ..f~f...>3f|f...
        .byte $1e,$33,$60,$60,$60,$cc,$78,$00,$3c,$36,$66,$66,$66,$d8,$f0,$00 // .3```.x.<6fff...
        .byte $3f,$30,$60,$78,$60,$c0,$fc,$00,$3f,$30,$60,$78,$60,$c0,$c0,$00 // ?0`x`...?0`x`...
        .byte $1e,$33,$60,$6e,$66,$cc,$78,$00,$33,$33,$66,$7e,$66,$cc,$cc,$00 // .3`nf.x.33f~f...
        .byte $1e,$0c,$18,$18,$18,$30,$78,$00,$0f,$06,$0c,$0c,$0c,$d8,$70,$00 // .....0x.......p.
        .byte $33,$36,$78,$70,$78,$d8,$cc,$00,$30,$30,$60,$60,$60,$c0,$fc,$00 // 36xpx...00```...
        .byte $31,$3b,$7f,$6b,$63,$c6,$c6,$00,$33,$3b,$7e,$7e,$6e,$cc,$cc,$00 // 1;.kc...3;~~n...
        .byte $1e,$33,$66,$66,$66,$cc,$78,$00,$3e,$33,$66,$7c,$60,$c0,$c0,$00 // .3fff.x.>3f|`...
        .byte $1e,$33,$66,$66,$66,$78,$1c,$00,$3e,$33,$66,$7c,$78,$d8,$cc,$00 // .3fffx..>3f|x...
        .byte $1e,$33,$60,$3c,$06,$cc,$78,$00,$3f,$0c,$18,$18,$18,$30,$30,$00 // .3`<..x.?....00.
        .byte $33,$33,$66,$66,$66,$cc,$78,$00,$33,$33,$66,$66,$66,$78,$30,$00 // 33fff.x.33fffx0.
        .byte $31,$31,$63,$6b,$7f,$ee,$c6,$00,$33,$33,$3c,$18,$3c,$cc,$cc,$00 // 11ck....33<.<...
        .byte $33,$33,$66,$3c,$18,$30,$30,$00,$3f,$03,$0c,$18,$30,$c0,$fc // 33f<.00.?...0..

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

// --- Region $2909-$2a00 ---
.pc = $2909 "dat_2909"

dat_2909:
        .byte $18,$18,$18,$18,$18,$00,$18           // char 33 (partial)
        .byte $00,$6c,$6c,$6c,$00,$00,$00,$00       // char 34 '"'
        .byte $00,$1c,$22,$49,$49,$26,$10,$0e       // char 35 '#'
        .byte $00,$49,$2a,$08,$7f,$08,$2a,$49       // char 36 '$'
        .byte $00,$66,$66,$66,$66,$66,$00,$66       // char 37 '%'
        .byte $38,$6c,$38,$76,$dc,$cc,$76,$00       // char 38 '&'
        .byte $18,$18,$30,$00,$00,$00,$00,$00       // char 39 '''
        .byte $00,$0c,$18,$30,$30,$30,$18,$0c       // char 40 '('
        .byte $00,$30,$18,$0c,$0c,$0c,$18,$30       // char 41 ')'
        .byte $00,$00,$66,$3c,$ff,$3c,$66,$00       // char 42 '*'
        .byte $00,$00,$18,$18,$7e,$18,$18,$00       // char 43 '+'
        .byte $00,$00,$00,$00,$00,$18,$18,$30       // char 44 ','
        .byte $00,$00,$00,$00,$7e,$00,$00,$00       // char 45 '-'
        .byte $00,$00,$00,$00,$00,$00,$18,$18       // char 46 '.'
        .byte $00,$00,$06,$0c,$18,$30,$60,$00       // char 47 '/'
        .byte $00,$7c,$c6,$ce,$d6,$e6,$c6,$7c       // char 48 '0'
        .byte $00,$18,$38,$18,$18,$18,$18,$7e       // char 49 '1'
        .byte $00,$3c,$66,$06,$3c,$60,$66,$7e       // char 50 '2'
        .byte $00,$3c,$46,$06,$1c,$06,$66,$3c       // char 51 '3'
        .byte $00,$18,$38,$58,$98,$fe,$18,$3c       // char 52 '4'
        .byte $00,$7e,$62,$60,$3c,$06,$66,$3c       // char 53 '5'
        .byte $00,$3c,$66,$60,$7c,$66,$66,$3c       // char 54 '6'
        .byte $00,$7e,$46,$06,$0c,$18,$18,$18       // char 55 '7'
        .byte $00,$3c,$66,$66,$3c,$66,$66,$3c       // char 56 '8'
        .byte $00,$3c,$66,$66,$3e,$06,$66,$3c       // char 57 '9'
        .byte $00,$00,$18,$18,$00,$18,$18,$00       // char 58 ':'
        .byte $00,$00,$18,$18,$00,$18,$18,$30       // char 59 ';'
        .byte $00,$63,$5d,$22,$22,$22,$5d,$63       // char 60 '<'
        .byte $00,$08,$6b,$77,$2a,$77,$6b,$08       // char 61 '='
        .byte $00,$02,$04,$08,$1e,$04,$08,$10       // char 62 '>'
        .byte $00,$3c,$66,$06,$0c,$18,$00,$18       // char 63 '?'

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

// --- Region $2c00-$2f7b ---
.pc = $2c00 "dat_2c00"

dat_2c00:
        .byte $ff,$35,$35,$0d,$0d,$03,$02,$02       // char 128
        .byte $ff                                   // char 129 (partial)

txt_2c09:
        .byte $55,$55,$55,$55,$55,$55,$55           // char 129 (partial)
        .byte $ff,$57,$5c,$5c,$70,$70,$c0,$c0       // char 130
        .byte $00,$00,$00,$00,$00,$00,$03,$03       // char 131
        .byte $03,$0d,$0d,$35,$d5,$d5,$55,$55       // char 132
        .byte $ff,$57,$57,$5c,$70,$70,$c0,$c2       // char 133
        .byte $c3,$02,$09,$09,$25,$25,$95,$55       // char 134
        .byte $c0,$70,$70,$5c,$5c,$57,$57,$55       // char 135
        .byte $ff,$95,$25,$25,$09,$09,$02,$c2       // char 136
        .byte $00,$00,$00,$00,$00,$00,$00,$c0       // char 137
        .byte $00,$00,$00,$00,$00,$00,$02,$02       // char 138
        .byte $02,$09,$09,$25,$a5,$95               // char 139 (partial)

txt_2c5e:
        .byte $55,$55                               // char 139 (partial)
        .byte $55,$55,$55,$55,$55,$55,$57,$57       // char 140
        .byte $55,$55,$55,$55,$55,$ff,$00,$00       // char 141
        .byte $57,$57,$5d,$5d,$75,$f5,$95,$95       // char 142
        .byte $c0,$70,$70,$5f,$55,$55,$55,$55       // char 143
        .byte $0d                                   // char 144 (partial)

txt_2c81:
        .byte $35,$35,$d5                           // char 144 (partial)

txt_2c84:
        .byte $55,$55,$55,$55                       // char 144 (partial)
        .byte $57,$5c,$5c,$70,$c0,$c0,$02,$09       // char 145
        .byte $02,$09,$25,$25,$95,$95               // char 146 (partial)

txt_2c96:
        .byte $55,$55                               // char 146 (partial)
        .byte $55,$55,$55,$55,$55,$55,$55,$54       // char 147
        .byte $55,$55,$55,$55,$55,$55,$00,$00       // char 148

txt_2ca8:
        .byte $55,$55,$55,$55,$55,$55,$55,$55       // char 149
        .byte $70,$70                               // char 150 (partial)

txt_2cb2:
        .byte $5c,$5c,$57,$57,$55,$55               // char 150 (partial)
        .byte $95,$25,$25,$09,$09,$02,$c0,$c0       // char 151

txt_2cc0:
        .byte $55,$55,$55,$55,$55,$55,$95,$95       // char 152
        .byte $55,$6a                               // char 153 (partial)

txt_2cca:
        .byte $5c,$5c,$57,$57,$55,$55               // char 153 (partial)
        .byte $55,$aa,$00,$00,$00,$00,$c0,$70       // char 154
        .byte $55,$aa,$00,$00,$00,$00,$00,$00       // char 155
        .byte $55,$95,$25,$25,$09,$02,$02,$00       // char 156

txt_2ce8:
        .byte $55,$55,$55,$55,$55,$55,$55,$95       // char 157

txt_2cf0:
        .byte $55,$5a,$5c,$57,$57,$55,$55,$55       // char 158
        .byte $55,$aa,$00,$00,$00,$c0,$c0,$70       // char 159
        .byte $c0,$a0,$00,$00,$00,$00,$00,$00       // char 160
        .byte $00,$00,$00,$00,$00,$02,$02,$09       // char 161
        .byte $09,$09,$25,$a5,$95,$55,$55,$55       // char 162
        .byte $5c,$5c,$70,$70,$ff,$57,$5c,$5c       // char 163
        .byte $25,$25,$09,$09,$02,$02,$09,$09       // char 164
        .byte $5c,$70,$70,$c0,$80,$80,$60,$60       // char 165
        .byte $09,$25,$a5,$95,$95,$95               // char 166 (partial)

txt_2d36:
        .byte $25,$25                               // char 166 (partial)
        .byte $54,$50,$40,$40,$40,$55,$55,$55       // char 167
        .byte $00,$00,$00,$00,$00,$55,$55,$55       // char 168
        .byte $15,$05,$05,$01,$01,$55,$55,$55       // char 169
        .byte $70                                   // char 170 (partial)

txt_2d51:
        .byte $5c,$5c,$57,$57,$55,$55,$55           // char 170 (partial)
        .byte $25,$25,$09,$09,$02,$c0,$c0,$70       // char 171
        .byte $55,$55,$55,$55,$55,$95,$95,$25       // char 172
        .byte $00,$00,$00,$00,$00,$c0,$70,$70       // char 173
        .byte $95,$25,$09,$09,$02,$02,$00,$00       // char 174

txt_2d78:
        .byte $55,$55,$55,$55,$55,$55,$95           // char 175 (partial)

txt_2d7f:
        .byte $25                                   // char 175 (partial)
        .byte $5c,$5c,$57,$57,$55,$55,$55,$55       // char 176
        .byte $00,$00,$00,$00,$c0,$c0,$70,$5c       // char 177
        .byte $00,$00,$00,$00,$02,$02,$09,$25       // char 178
        .byte $29,$25,$95,$95                       // char 179 (partial)

txt_2d9c:
        .byte $55,$55,$55,$55                       // char 179 (partial)
        .byte $55,$55,$55,$57,$57,$5c,$5c,$5c       // char 180
        .byte $55,$55,$55,$ff,$00,$00,$00,$00       // char 181
        .byte $70,$70,$c0,$c0,$00,$00,$00,$00       // char 182
        .byte $00,$00,$00,$00,$02,$02,$09,$29       // char 183
        .byte $25,$25,$95,$95                       // char 184 (partial)

txt_2dc4:
        .byte $55,$55,$55,$55                       // char 184 (partial)
        .byte $55,$55,$55,$55,$56,$56,$58,$58       // char 185
        .byte $55,$55,$55,$55,$95,$25,$25,$09       // char 186

txt_2dd8:
        .byte $58,$58,$56,$56,$55,$55,$55,$55       // char 187
        .byte $09,$09,$02,$02,$80,$60,$60,$58       // char 188
        .byte $55,$55,$55,$55,$95,$95,$25,$09       // char 189

txt_2df0:
        .byte $55,$55,$55,$aa,$80,$60,$60           // char 190 (partial)

txt_2df7:
        .byte $58                                   // char 190 (partial)
        .byte $55,$55,$55,$aa,$00,$00,$00,$00       // char 191
        .byte $55,$55,$55,$55,$95,$95,$25,$25       // char 192
        .byte $25,$09,$09,$02,$c0,$c0,$70           // char 193 (partial)

txt_2e0f:
        .byte $5c                                   // char 193 (partial)
        .byte $5c,$5c,$57,$55,$55,$55,$55,$55       // char 194
        .byte $00,$00,$00,$c0,$c0,$70,$70,$5c       // char 195
        .byte $25,$09,$09,$02,$00,$00,$00,$00       // char 196

txt_2e28:
        .byte $5c,$57,$57,$55,$55,$55,$55,$55       // char 197
        .byte $00,$00,$00,$02,$09,$09,$25,$25       // char 198
        .byte $25,$95,$95,$55,$55,$55,$55,$55       // char 199
        .byte $70,$70,$c0,$ff                       // char 200 (partial)

txt_2e44:
        .byte $55,$55,$55,$55                       // char 200 (partial)
        .byte $00,$00,$00,$ff                       // char 201 (partial)

txt_2e4c:
        .byte $55,$55,$55,$55                       // char 201 (partial)
        .byte $25,$a5,$95,$ff                       // char 202 (partial)

txt_2e54:
        .byte $55,$55,$55,$55                       // char 202 (partial)
        .byte $55,$55,$55,$ff,$55,$55,$55,$55       // char 203
        .byte $60,$60,$80,$c0,$60,$60,$58,$58       // char 204
        .byte $09,$02,$02,$00,$00,$00,$00,$00       // char 205
        .byte $55,$55,$55,$95,$95,$25,$09,$09       // char 206

txt_2e78:
        .byte $58,$56,$56,$55,$55,$55,$55,$55       // char 207
        .byte $09,$02,$02,$80,$60,$60,$58,$58       // char 208
        .byte $00,$00,$00,$80,$60,$60,$58,$58       // char 209
        .byte $09,$09,$02,$c0,$c0,$70,$70,$5c       // char 210
        .byte $55,$55,$55,$95,$95,$25,$25,$09       // char 211

txt_2ea0:
        .byte $5c,$57,$55,$55,$55,$55,$55,$55       // char 212
        .byte $00,$00,$c0,$c0,$7f,$55,$55,$55       // char 213
        .byte $00,$00,$00,$00,$ff,$55,$55,$55       // char 214
        .byte $08,$0a,$09,$09,$f5,$55,$55,$55       // char 215
        .byte $00,$00,$80,$80,$60,$60               // char 216 (partial)

txt_2ec6:
        .byte $58,$58                               // char 216 (partial)
        .byte $57,$57,$55,$55,$55,$55,$55,$55       // char 217
        .byte $00,$00,$c0,$c0,$70,$70,$5c,$57       // char 218
        .byte $00,$00,$02,$09,$09                   // char 219 (partial)

txt_2edd:
        .byte $25,$25,$aa                           // char 219 (partial)
        .byte $95,$95                               // char 220 (partial)

txt_2ee2:
        .byte $55,$55,$55,$55,$55,$aa               // char 220 (partial)

txt_2ee8:
        .byte $55,$55,$55,$55,$55,$55,$55,$aa       // char 221

txt_2ef0:
        .byte $56,$56,$55,$55,$55,$55,$55,$aa       // char 222
        .byte $00,$00,$80,$60,$60                   // char 223 (partial)

txt_2efd:
        .byte $58,$58,$aa                           // char 223 (partial)
        .byte $02,$02,$00,$00,$00,$00,$00,$00       // char 224
        .byte $55,$55,$95,$95,$25,$25,$09,$02       // char 225

txt_2f10:
        .byte $56,$55,$55,$55,$55,$55,$55,$aa       // char 226
        .byte $02,$82,$80,$60,$60                   // char 227 (partial)

txt_2f1d:
        .byte $58,$58,$aa                           // char 227 (partial)
        .byte $00,$80,$80,$60,$60                   // char 228 (partial)

txt_2f25:
        .byte $58,$58,$aa                           // char 228 (partial)
        .byte $55,$55,$95,$25,$25,$09,$09,$02       // char 229

txt_2f30:
        .byte $57,$57,$55,$55,$55,$55,$55,$aa       // char 230
        .byte $02,$02,$c0,$c0,$70,$70,$5c,$aa       // char 231
        .byte $55,$55,$95,$95,$25,$25,$09,$0a       // char 232

txt_2f48:
        .byte $57,$55,$55,$55,$55,$55,$55,$aa       // char 233
        .byte $00,$c0,$c0,$70,$70                   // char 234 (partial)

txt_2f55:
        .byte $5c,$5c,$aa                           // char 234 (partial)
        .byte $d5,$d5,$ff,$00,$00,$00,$00,$00       // char 235
        .byte $58,$58,$fc,$00,$00,$00,$00,$00       // char 236
        .byte $d5,$35,$3f,$00,$00,$00,$00,$00       // char 237
        .byte $56,$56,$ff,$00,$00,$00,$00,$00       // char 238
        .byte $0d,$0d,$0f                           // char 239 (partial)

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

// --- Region $3000-$315b ---
.pc = $3000 "scr_3000"

scr_3000:
        .byte $00,$0b,$b7,$63,$e6,$0b,$b7,$63,$e6,$05,$02,$04,$00,$0c,$0b,$1b // ...c...c........
        .byte $02,$3b,$e6                           // .;.

txt_3013:
        .text "89;<=?"
        .byte $40                                   // @ character
        .text "BCDFGHJKLMOPQRTUVWXYZ"
        .byte $5c                                   // backslash character
        .byte $5d,$5e,$5f,$60,$61,$61,$62,$63,$64,$65,$66,$67,$67,$68,$69,$69 // scrcode: ................
        .byte $6a,$6b,$6b,$6c,$6c,$6d,$6d,$6e,$6e,$6e,$6f,$6f,$6f,$6f,$70,$70 // scrcode: ................
        .byte $70,$70,$70,$70,$70,$70,$70,$70       // scrcode: ........
        .byte $70,$6f,$6f,$6f,$6f,$6e,$6e,$6e,$6d,$6d,$6c,$6c,$6b,$6b,$6a,$69 // scrcode: ................
        .byte $69,$68,$67,$67,$66,$65,$64,$63,$62,$61,$61,$60,$5f,$5e,$5d // scrcode: ...............

txt_3077:
        .byte $5c                                   // backslash character
        .text "ZYXWVUTRQPOMLKJHGFDCB"
        .byte $40                                   // @ character
        .text "?=<;98754310.-,*)(&%$#! "
        .encoding "screencode_mixed"
        .byte $1f,$1e,$1c,$1b                       // scrcode: ....
        .text "zyxwvtsrqpoonmlkjiihggfeeddccbbbaaaa"
        .fill 11, $00                               // scrcode: @@@@@@@@@@@
        .text "aaaabbbccddeefgghiijklmnoopqrstvwxyz"
        .byte $1b,$1c,$1e,$1f                       // scrcode: ....
        .encoding "petscii_upper"

txt_3101:
        .text " !#$%&()*,-.013457"
        .byte $00                                   // string terminator
        .encoding "screencode_mixed"
        .text "@@@@@@"
        .byte $78,$a9                               // scrcode: ..
        .text "a"
        .byte $8d                                   // scrcode: .
        .text "z"
        .byte $d0,$a9,$7f,$8d                       // scrcode: ....
        .text "m"
        .byte $dc,$a9,$cb,$8d                       // scrcode: ....
        .text "tc"
        .byte $a9                                   // scrcode: .
        .text ")"
        .byte $8d                                   // scrcode: .
        .text "uc"
        .byte $a9,$1b,$8d                           // scrcode: ...
        .text "q"
        .byte $d0,$a9,$fb,$8d                       // scrcode: ....
        .text "r"
        .byte $d0,$58,$60,$ee                       // scrcode: ....
        .text "y"
        .byte $d0                                   // scrcode: .
        .text " @....batman part i"
        .encoding "petscii_upper"

txt_3151:
        .text ".....      "

// --- Region $319d-$319d ---
.pc = $319d "dat_319d"

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

// --- Region $31d8-$331f ---
.pc = $31d8 "dat_31d8"

dat_31d8:
        .encoding "screencode_mixed"
        .text "-exact"
        .encoding "petscii_upper"

txt_31de:
        .text "-                          -"
        .encoding "screencode_mixed"
        .text "exact"
        .encoding "petscii_upper"

txt_31ff:
        .text "-                 "
        .encoding "screencode_mixed"
        .text "exact greets "
        .byte $fe                                   // scrcode: .
        .encoding "petscii_upper"

txt_321f:
        .text "     "
        .encoding "screencode_mixed"
        .text "sphinx"
        .encoding "petscii_upper"

txt_322a:
        .text "          "
        .encoding "screencode_mixed"
        .text "legend"
        .encoding "petscii_upper"

txt_323a:
        .text "         "
        .encoding "screencode_mixed"
        .text "wanderer"
        .encoding "petscii_upper"

txt_324b:
        .text "          "
        .encoding "screencode_mixed"
        .text "cfr"
        .encoding "petscii_upper"

txt_3258:
        .text "            "
        .encoding "screencode_mixed"
        .text "axenon"
        .encoding "petscii_upper"

txt_326a:
        .text "        "
        .encoding "screencode_mixed"
        .text "finish gold"
        .encoding "petscii_upper"

txt_327d:
        .text "        "
        .encoding "screencode_mixed"
        .text "bros"
        .encoding "petscii_upper"

txt_3289:
        .text "         "
        .encoding "screencode_mixed"
        .text "dominators"
        .encoding "petscii_upper"

txt_329c:
        .text "       "
        .encoding "screencode_mixed"
        .text "level"
        .encoding "petscii_upper"

txt_32a8:
        .text " $$        "
        .encoding "screencode_mixed"
        .text "shining"
        .encoding "petscii_upper"

txt_32ba:
        .text " #     "
        .encoding "screencode_mixed"
        .text "beyond force"
        .encoding "petscii_upper"

txt_32cd:
        .text "        "
        .encoding "screencode_mixed"
        .text "noise"
        .encoding "petscii_upper"

txt_32da:
        .text "        "
        .encoding "screencode_mixed"
        .text "byterapers"
        .encoding "petscii_upper"

txt_32ec:
        .text "      "
        .encoding "screencode_mixed"
        .text "wonderboys"
        .encoding "petscii_upper"

txt_32fc:
        .text "        "
        .encoding "screencode_mixed"
        .text "pulsar"
        .encoding "petscii_upper"

txt_330a:
        .text "           "
        .encoding "screencode_mixed"
        .text "hscg"
        .encoding "petscii_upper"

txt_3319:
        .text "       "

// --- Region $3327-$3540 ---
.pc = $3327 "bmp_3327"

bmp_3327:
        // === Screen RAM (217 bytes, $3327-$33ff) ===
        .encoding "screencode_mixed"
        .text "ay"
        .encoding "petscii_upper"

txt_3329:
        .text "           "
        .encoding "screencode_mixed"
        .text "xample"
        .encoding "petscii_upper"

txt_333a:
        .text "        "
        .encoding "screencode_mixed"
        .text "the force"
        .encoding "petscii_upper"

txt_334b:
        .text "        "
        .encoding "screencode_mixed"
        .text "zenobits"
        .encoding "petscii_upper"

txt_335b:
        .text "         "
        .encoding "screencode_mixed"
        .text "drive"
        .encoding "petscii_upper"

txt_3369:
        .text "           "
        .encoding "screencode_mixed"
        .text "zargon"
        .encoding "petscii_upper"

txt_337a:
        .text "           "
        .encoding "screencode_mixed"
        .text "sod"
        .encoding "petscii_upper"

txt_3388:
        .text "           "
        .encoding "screencode_mixed"
        .text "bytestar"
        .encoding "petscii_upper"

txt_339b:
        .text "         "
        .encoding "screencode_mixed"
        .text "lazer"
        .encoding "petscii_upper"

txt_33a9:
        .text "            "
        .encoding "screencode_mixed"
        .text "wot"
        .encoding "petscii_upper"

txt_33b8:
        .text "            "
        .encoding "screencode_mixed"
        .text "cosmos"
        .encoding "petscii_upper"

txt_33ca:
        .text "         "
        .byte $0d                                   // string terminator
        .encoding "screencode_mixed"
        .text "echanix"
        .encoding "petscii_upper"

txt_33db:
        .text "         "
        .encoding "screencode_mixed"
        .text "savage"
        .encoding "petscii_upper"

txt_33ea:
        .text "                "
        .byte $ff                                   // scrcode: .

txt_33fb:
        .text "      "
        .byte $f1,$20,$02,$01,$14,$0d,$01,$0e,$20,$10,$01,$12,$14,$31,$2d,$17 // . ...... ....1-.
        .byte $01,$13,$20,$03,$12,$01,$03,$0b,$05,$04,$20,$02,$19,$20,$0e,$05 // .. ....... .. ..
        .byte $0d,$05,$13,$09,$13,$20,$0f,$06,$20,$05,$18,$01,$03,$14,$20,$0f // ..... .. ..... .
        .byte $0e                                   // .

txt_3432:
        .text " 9/12/88."
        .byte $14,$08,$01,$0e,$18
        .byte $20,$14
        .byte $0f,$20,$0d,$01,$07,$09,$03,$20,$03,$09,$12,$03,$0c,$05,$2f,$02 // . ..... ....../.
        .byte $12,$0f,$13,$20,$06,$0f,$12,$20,$14,$08,$05,$20,$0f,$12,$09,$07 // ... ... ... ....
        .byte $09,$0e,$01,$0c,$21,$03,$0f,$0e,$14,$01,$03,$14,$20,$14,$08,$05 // ....!....... ...
        .byte $20,$02,$05,$13,$14,$20,$02,$19       //  .... ..

txt_347a:
        .fill 9, $20
        .byte $0e,$05,$0d,$05,$13,$09,$13,$20,$0f,$06,$20,$05,$18,$01,$03,$14 // ....... .. .....

txt_3493:
        .fill 12, $20
        .byte $10,$0c,$0b                           // ...

txt_34a2:
        .text " 098707 "
        .byte $03

txt_34ab:
        .fill 12, $20
        .text "3200 "
        .byte $08,$09,$0c,$04,$05,$13,$08,$05,$09,$0d

txt_34c6:
        .fill 13, $20
        .byte $17,$05,$13,$14,$2d,$07,$05,$12,$0d,$01,$0e,$19 // ....-.......

txt_34df:
        .fill 15, $20
        .byte $03,$2e,$15,$2e,$20,$09,$0e,$20,$16,$05,$0e,$0c,$0f // .... .. .....

txt_34fb:
        .byte $21,$21,$21                           // !!!

dat_34fe:
        // === Fill data (34 bytes, $34fe-$351f) ===
        .fill 34, $20
        .byte $ef                                   // .

txt_3521:
        .fill 31, $20

dat_3540:
        // === Fill data (1 bytes, $3540-$3540) ===
        .byte $00                                   // .
