// ============================================
// output - Part 1 of 2
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:52
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $dbff  (54272 bytes)
// Crunched with Cruncher AB — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $1900 (6400)
// IRQ handler:  $1bd0 (irq_1bd0)
// IRQ handler:  $196a (irq_196a)
// IRQ handler:  $ea31 (loc_ea31)
//
// Code: 2158 bytes, Data: 52114 bytes
// Labels: 201, Subroutines: 20
//
// Cross-references: all OK
// ============================================


// --- Region $1900-$19f6 ---
.pc = $1900 "main_1900"

main_1900:
        jsr sub_1e00
        sei
        lda #$34
        sei
        lda #$7f
        sta $dc0d
        ldx #$00
        stx $dc0e
        inx
        stx $d01a
        lda #$d8
        sta $d016
        lda #$32
        sta $d012
        lda #$03
        jsr sub_c000
        ldx #$00

loc_1926:
        lda $1f00,x
        sta $0450,x
        lda $2000,x
        sta $d850,x
        inx
        bne loc_1926
        jsr sub_1d00
        lda #$00
        sta $1cd2
        sta $1cd0
        jsr sub_1dc3
        lda #$f5
        sta spr_0800
        lda #$01
        sta $cc
        lda #$00
        sta $1cd2
        sta $1cd0
        jsr sub_1dc3
        lda #$d0
        sta $0314
        lda #$1b
        sta $0315
        lda #$12
        sta $d018
        cli

loc_1967:
        jmp loc_1967

irq_196a:
        lda #$1b
        sta $d011
        ldx #$06

loc_1971:
        dex
        bne loc_1971
        ldx #$00

loc_1976:
        ldy #$08
        lda $1a00,x

loc_197b:
        sta $d021
        sta $d020
        inx
        dey
        beq loc_1976
        cpx #$b1
        bcs $199e
        jsr sub_1b8c
        lda dat_1c00,x
        sta $d016
        lda $1b00,x
        sta $d022
        lda $1a00,x
        clc
        bcc loc_197b
        jsr sub_1dd0
        jsr sub_1de0
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        ldx #$11

loc_19b0:
        sta $1c9e,x
        dex
        bne loc_19b0
        lda $1cd3
        cmp #$80
        bne loc_19c0
        jsr sub_1ed0

loc_19c0:
        nop
        ldy $1b09
        ldx #$00

loc_19c6:
        lda $1b0a,x
        sta $1b09,x
        inx
        cpx #$7c
        bne loc_19c6
        sty $1b85
        inc $19ff
        ldx $19ff
        lda $1b98,x
        sta $d022
        lda $19ff
        cmp #$39
        bne loc_19ec
        lda #$00
        sta $19ff

loc_19ec:
        jsr sub_c135
        nop
        nop
        nop
        jmp loc_1e30

chr_19f5:
        // === Charset data (2 bytes, $19f5-$19f6) ===
        .byte $00,$00                               // char 0 (partial)

// --- Region $1b8c-$1b90 ---
.pc = $1b8c "sub_1b8c"
// Referenced by: jsr from $1989

sub_1b8c:
        nop
        nop
        nop
        nop
        rts

// --- Region $1bd0-$1be5 ---
.pc = $1bd0 "irq_1bd0"
// Referenced by: branch from $1bd5

irq_1bd0:
        lda $d012
        cmp #$32
        bne irq_1bd0
        lda #$6a
        sta $0314
        lda #$19
        sta $0315
        jmp $febc

chr_1be4:
        // === Charset data (2 bytes, $1be4-$1be5) ===
        .byte $00,$00                               // char 0 (partial)

// --- Region $1d00-$1d5c ---
.pc = $1d00 "sub_1d00"

// Referenced by: jsr from $1935
sub_1d00: {
        ldx #$05
        ldy #$e6
        stx $6a
        sty $69
        ldx #$00
loop1:
        lda dat_1ad0,x
        jsr sub_1d30
        inx
        cpx #$0f
        bne loop1
        ldx #$06
        ldy #$58
        stx $6a
        sty $69
        ldx #$00
loop2:
        lda $1ae0,x
        jsr sub_1d30
        inx
        cpx #$14
        bne loop2
        lda #$fe
        sta $0328
        rts
}
// Referenced by: jsr from $1d0d, $1d22, $1eeb, $1eef

sub_1d30:
        ldy #$00
        sta ($69),y
        clc
        adc #$40
        ldy #$01
        sta ($69),y
        clc
        adc #$40
        ldy #$28
        sta ($69),y
        clc
        adc #$40
        ldy #$29
        sta ($69),y
        inc $69
        jsr sub_1d56
        inc $69
        jsr sub_1d56
        rts

scr_1d54:
        // === Screen RAM (2 bytes, $1d54-$1d55) ===
        .encoding "screencode_mixed"
        .text "@@"
        .encoding "petscii_upper"
// Referenced by: jsr from $1d4b, $1d50

sub_1d56:
        lda $69
        bne loc_1d5c
        inc $6a

loc_1d5c:
        rts

// --- Region $1d70-$1e7c ---
.pc = $1d70 "sub_1d70"
// Referenced by: jsr from $1ed0

sub_1d70:
        ldx #$00

loc_1d72:
        lda $0721,x
        sta $0720,x
        lda $0749,x
        sta $0748,x
        inx
        cpx #$27
        bne loc_1d72
        lda $1cd2
        bne loc_1da0
        ldy #$00
        lda ($6b),y
        sta $0747
        sta $1cd2
        clc
        adc #$80
        sta $076f
        rts

scr_1d99:
        // === Screen RAM (7 bytes, $1d99-$1d9f) ===
        .encoding "screencode_mixed"
        .text "@@@@@@@"
        .encoding "petscii_upper"

loc_1da0:
        lda $1cd2
        clc
        adc #$40
        sta $0747
        clc
        adc #$80
        sta $076f
        lda #$00
        sta $1cd2
        inc $6b
        lda $6b
        bne loc_1dbc
        inc $6c

loc_1dbc:
        ldy #$00
        lda ($6b),y
        beq sub_1dc3
        rts
// Referenced by: jsr from $1940, $1954; branch from $1dc0

sub_1dc3:
        lda #$00
        sta $6b
        lda #$21
        sta $6c
        rts

scr_1dcc:
        // === Screen RAM (4 bytes, $1dcc-$1dcf) ===
        .encoding "screencode_mixed"
        .text "@@@@"
        .encoding "petscii_upper"
// Referenced by: jsr from $199e

sub_1dd0:
        lda #$01
        sta $d019
        lda #$c8
        sta $d016
        rts

scr_1ddb:
        // === Screen RAM (5 bytes, $1ddb-$1ddf) ===
        .encoding "screencode_mixed"
        .text "@@@@@"
        .encoding "petscii_upper"
// Referenced by: jsr from $19a1

sub_1de0:
        lda $1cd0
        sec
        sbc $1cd1
        sta $1cd0
        and #$80
        sta $1cd3
        lda $1cd0
        and #$07
        sta $1cd0
        rts

scr_1df8:
        // === Screen RAM (8 bytes, $1df8-$1dff) ===
        .encoding "screencode_mixed"
        .fill 8, $00                                // scrcode: @@@@@@@@
        .encoding "petscii_upper"
// Referenced by: jsr from $1900

sub_1e00:
        lda #$77
        sta $01
        lda #$9a
        jsr $ffd2
        lda #$93
        jsr $ffd2
        ldx #$00
        lda #$00

loc_1e12:
        sta $db20,x
        inx
        cpx #$50
        bne loc_1e12
        ldx #$00

loc_1e1c:
        lda $1be8,x
        sta $0571,x
        lda #$00
        sta $d971,x
        inx
        cpx #$16
        bne loc_1e1c
        rts

scr_1e2d:
        // === Screen RAM (3 bytes, $1e2d-$1e2f) ===
        .encoding "screencode_mixed"
        .text "@@@"
        .encoding "petscii_upper"

loc_1e30:
        lda $dc01
        and #$10
        beq loc_1e3a
        jmp $ea31

loc_1e3a:
        sei
        lda #$31
        ldy #$ea
        sta $0314
        sty $0315
        lda #$00
        sta $d019
        sta $d01a
        jsr $fda3
        lda $d016
        and #$f0
        ora #$08
        sta $d016
        lda #$93
        jsr $ffd2
        ldx #$00

loc_1e61:
        lda tbl_1e7c,x
        sta $0100,x
        inx
        cpx #$30
        bne loc_1e61
        lda #$15
        sta $d018
        lda #$06
        sta $d020
        sta $d021
        jmp $0100

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

// --- Region $1ed0-$1ef3 ---
.pc = $1ed0 "sub_1ed0"
// Referenced by: jsr from $19bd

sub_1ed0:
        jsr sub_1d70
        lda $028d
        cmp #$02
        bne loc_1ef2
        lda $cb
        cmp #$1c
        bne loc_1ef2
        lda #$02
        pha
        ldy #$aa
        ldx #$07
        stx $6a
        sty $69
        jsr sub_1d30
        pla
        jsr sub_1d30

loc_1ef2:
        rts

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

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

// --- Region $8dc1-$8dc7 ---
.pc = $8dc1 "Segment $8dc1"
        brk

dat_8dc2:
        .byte $00,$00,$00,$00,$00                   // .....
        brk

// --- Region $8dd0-$8dd0 ---
.pc = $8dd0 "Segment $8dd0"
        brk

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

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

// --- Region $c000-$c0c3 ---
.pc = $c000 "sub_c000"
// Referenced by: jsr from $1921

sub_c000:
        tax
        lda #$00
        sta $c12d
        sta $c12e
        clc

loc_c00a:
        dex
        bmi loc_c011
        adc #$07
        bne loc_c00a

loc_c011:
        tax
        lda #$00
        ldy #$22

loc_c016:
        sta dat_c0c4,y
        sta $c0e7,y
        sta $c10a,y
        dey
        bpl loc_c016
        tay
        lda $c720,x
        sta smc_c16e                                // SMC: modifies $c16e
        lda $c721,x
        sta $c0c7
        sta $f8
        lda $c722,x
        sta $c0c8
        sta $f9
        lda ($f8),y
        sta $c0c5
// Referenced by: jsr from $c6a1

sub_c03e:
        iny
        lda ($f8),y
        sta $c0c6
        dey
        lda $c723,x
        sta $c0ea
        sta $f8
        lda $c724,x
        sta $c0eb
        sta $f9
        lda ($f8),y
        sta $c0e8
        iny
        lda ($f8),y
        sta $c0e9
        dey
        lda $c725,x
        sta $c10d
        sta $f8
        lda $c726,x
        sta $c10e
        sta $f9
        lda ($f8),y
        sta $c10b
        iny
        lda ($f8),y
        sta $c10c
        iny
        sty $c0c9
        sty $c0ec
        sty $c10f
        dey
        sty $c0d3
        sty $c0f6
        sty $c119
        dey
        sty dat_c0c4
        sty $c0e7
        sty $c10a
        sty $c0e0
        sty $c103
        sty $c126
        sty $c0e4
        sty $c107
        sty $c12a
        sty smc_c4ba                                // SMC: modifies $c4ba
        jsr sub_c241
        lda #$01
        sta dat_c254
        sta $c12f
        sta $c130
        sta $c131
        sta $c12d
        rts

// --- Region $c135-$c238 ---
.pc = $c135 "sub_c135"
// Referenced by: jsr from $19ec

sub_c135:
        lda $f8
        pha
        lda $f9
        pha
        dec $c255
        bne loc_c147
        lda #$00
        sta $c255
        bne $c14d

loc_c147:
        jsr sub_c154
        jsr sub_cb26
        pla
        sta $f9
        pla
        sta $f8

loc_c153:
        rts
// Referenced by: jsr from $c147

sub_c154:
        lda $c12d
        beq loc_c153
        dec dat_c254
        bne loc_c172
        ldx #$00
        jsr sub_c3e7
        ldx #$23
        jsr sub_c3e7
        ldx #$46
        jsr sub_c3e7
.label smc_c16e = * + 1
        lda #$09                                    // !SMC: modified by $c026
        sta dat_c254

loc_c172:
        ldx #$00
        jsr sub_c493
        ldx #$23
        jsr sub_c493
        ldx #$46
        jsr sub_c493
        lda $c12f
        beq loc_c1bc
        lda $c0d8
        sta $d400
        lda $c0d9
        sta $d401
        lda $c0da
        sta $d402
        lda $c0db
        sta $d403
        lda $c0d6
        sta $d405
        lda $c0d7
        sta $d406
        ldx $c0e6
        lda $c0dc
        beq loc_c1b8
        dec $c0dc
        stx $d404

loc_c1b8:
        inx
        stx $d404

loc_c1bc:
        lda $c130
        beq loc_c1f7
        lda $c0fb
        sta $d407
        lda $c0fc
        sta $d408
        lda $c0fd
        sta $d409
        lda $c0fe
        sta $d40a
        lda $c0f9
        sta $d40c
        lda $c0fa
        sta $d40d
        ldx $c109
        lda $c0ff
        beq loc_c1f3
        dec $c0ff
        stx $d40b

loc_c1f3:
        inx
        stx $d40b

loc_c1f7:
        lda $c131
        beq loc_c232
        lda $c11e
        sta $d40e
        lda $c11f
        sta $d40f
        lda $c120
        sta $d410
        lda $c121
        sta $d411
        lda $c11c
        sta $d413
        lda $c11d
        sta $d414
        ldx $c12c
        lda $c122
        beq loc_c22e
        dec $c122
        stx $d412

loc_c22e:
        inx
        stx $d412

loc_c232:
        lda dat_c614
        sta $d418
        rts

// --- Region $c241-$c253 ---
.pc = $c241 "sub_c241"
// Referenced by: jsr from $c0af

sub_c241:
        ldx #$17
        lda #$00

loc_c245:
        sta $d400,x
        dex
        bpl loc_c245
        lda #$0f
        sta dat_c614
        sta $d418
        rts

// --- Region $c27e-$c294 ---
.pc = $c27e "loc_c27e"

loc_c27e:
        lda $c2
        ldx #$c2
        sty $c2
        ldy #$00
        lda ($f8),y
        sta smc_c16e
        inc $f8
        bne loc_c291
        inc $f9

loc_c291:
        jmp loc_c3fb

dat_c294:
        .byte $a9                                   // .

// --- Region $c2a5-$c35e ---
.pc = $c2a5 "loc_c2a5"

loc_c2a5:
        ldy #$00
        lda ($f8),y
        sta smc_c4ba
        inc $f8
        bne loc_c2b2
        inc $f9

loc_c2b2:
        jmp loc_c3fb

loc_c2b5:
        ldy #$00
        lda ($f8),y
        sta $c0e1,x
        iny
        lda ($f8),y
        sta $c0e2,x
        iny
        lda ($f8),y
        sta $c0e3,x
        lda $f8
        clc
        adc #$03
        sta $f8
        bcc loc_c2d3
        inc $f9

loc_c2d3:
        lda #$01
        sta $c0e4,x
        jmp loc_c3fb

loc_c2db:
        lda #$80
        bne loc_c2f1

loc_c2df:
        lda #$40
        bne loc_c2f1

loc_c2e3:
        lda #$20
        bne loc_c2f1

loc_c2e7:
        lda #$10
        bne loc_c2f1

loc_c2eb:
        lda #$14
        bne loc_c2f1

loc_c2ef:
        lda #$12

loc_c2f1:
        sta $c0e5,x
        jmp loc_c3fb

loc_c2f7:
        lda #$00
        sta $c0da,x
        sta $c0e4,x
        tay
        lda ($f8),y
        sta $c0db,x
        inc $f8
        bne loc_c30b
        inc $f9

loc_c30b:
        jmp loc_c3fb

dat_c30e:
        .byte $68,$68                               // hh

txt_c310:
        .text "L9"
        .byte $c2                                   // 'B' | $80 (end-of-string marker)

loc_c313:
        lda $c0c9,x
        clc
        adc $c0c7,x
        sta $f8
        lda $c0ca,x
        adc $c0c8,x
        sta $f9
        lda $c0c9,x
        adc #$02
        sta $c0c9,x
        lda #$00
        tay
        adc $c0ca,x
        sta $c0ca,x
        lda ($f8),y
        iny
        ora ($f8),y
        bne loc_c350
        lda $c0c7,x
        sta $f8
        lda $c0c8,x
        sta $f9
        lda #$02
        sta $c0c9,x
        lda #$00
        sta $c0ca,x

loc_c350:
        lda ($f8),y
        pha
        dey
        lda ($f8),y
        sta $f8
        pla
        sta $f9
        jmp loc_c3fb

dat_c35e:
        .byte $a9                                   // .

// --- Region $c3e7-$c613 ---
.pc = $c3e7 "sub_c3e7"
// Referenced by: jsr from $c160, $c165, $c16a

sub_c3e7:
        dec $c0d3,x
        bne loc_c423
        lda #$00
        sta dat_c0c4,x
        lda $c0c5,x
        sta $f8
        lda $c0c6,x
        sta $f9

loc_c3fb:
        ldy #$00
        lda ($f8),y
        tay
        inc $f8
        bne loc_c406
        inc $f9

loc_c406:
        tya
        bmi loc_c436
        lda #$01
        sta $c0dc,x
        tya
        sta $c0d5,x
        lda $c0d4,x
        sta $c0d3,x
        lda $f8
        sta $c0c5,x
        lda $f9
        sta $c0c6,x
        rts

loc_c423:
        lda dat_c0c4,x
        tay
        and #$08
        beq loc_c435
        tya
        bpl loc_c432
        inc $c0d5,x
        rts

loc_c432:
        dec $c0d5,x

loc_c435:
        rts

loc_c436:
        cmp #$c0
        bcc loc_c482
        adc #$1f
        bcs loc_c460
        adc #$10
        bcs loc_c467
        adc #$10
        tay
        lda $c6d3,y
        sta $c0cd,x
        lda $c6e3,y
        sta $c0ce,x
        lda #$00
        sta $c0cf,x
        lda #$10
        ora dat_c0c4,x
        sta dat_c0c4,x
        bne loc_c3fb

loc_c460:
        adc #$00
        sta $c0d4,x
        bcc loc_c3fb

loc_c467:
        ldy #$00
        lda ($f8),y
        sta $c0d6,x
        iny
        lda ($f8),y
        sta $c0d7,x
        lda $f8
        clc
        adc #$02
        sta $f8
        bcc loc_c47f
        inc $f9

loc_c47f:
        jmp loc_c3fb

loc_c482:
        asl
        tay
        lda $c256,y
        sta smc_c491                                // SMC: modifies $c491
        lda $c257,y
        sta smc_c492                                // SMC: modifies $c492
.label smc_c491 = * + 1
.label smc_c492 = * + 2
        jmp loc_c313                                // !SMC: modified by $c487, $c48d
// Referenced by: jsr from $c174, $c179, $c17e

sub_c493:
        lda $c0cf,x
        clc
        adc $c0cd,x
        sta $f8
        ldy #$00
        tya
        adc $c0ce,x
        sta $f9
        lda ($f8),y
        bpl loc_c4b1
        tay
        lda #$ff
        sta $c0cf,x
        tya
        and #$7f

loc_c4b1:
        clc
        adc $c0d5,x
        inc $c0cf,x
        clc
.label smc_c4ba = * + 1
        adc #$00                                    // !SMC: modified by $c0ac
        pha
        asl
        tay
        lda $c62d,y
        sta $f8
        lda $c62e,y
        sta $f9
        pla
        tay
        lda $c0e0,x
        and #$40
        beq loc_c54f
        lda $c0dd,x
        asl
        sta $c132
        lda $c0e0,x
        bpl loc_c4ea
        lda dat_c0c4,x
        and #$01
        beq loc_c4ea
        lda $c0df,x
        jmp loc_c520

loc_c4ea:
        lda $c0e0,x
        and #$20
        bne loc_c506
        lda $c0df,x
        sec
        sbc $c0de,x
        bcs loc_c51d
        lda $c0e0,x
        ora #$20
        sta $c0e0,x
        lda #$00
        beq loc_c51d

loc_c506:
        lda $c0df,x
        clc
        adc $c0de,x
        cmp $c132
        bcc loc_c51d
        lda $c0e0,x
        and #$df
        sta $c0e0,x
        lda $c132

loc_c51d:
        sta $c0df,x

loc_c520:
        sec
        sbc $c0dd,x
        sta $c133
        tya
        ldy #$00
        bcs loc_c52d
        dey

loc_c52d:
        sty $c134
        clc
        adc #$a0
        bcs loc_c540

loc_c535:
        asl $c133
        rol $c134
        clc
        adc #$18
        bcc loc_c535

loc_c540:
        lda $c133
        clc
        adc $f8
        sta $f8
        lda $c134
        adc $f9
        sta $f9

loc_c54f:
        lda dat_c0c4,x
        eor #$01
        sta dat_c0c4,x
        and #$24
        beq loc_c5ae
        dec $c0d2,x
        bne loc_c5ae
        inc $c0d2,x
        and #$04
        bne loc_c58c
        lda $c0d0,x
        clc
        adc $c0cb,x
        sta $c0cb,x
        lda $c0d1,x
        adc $c0cc,x
        sta $c0cc,x
        lda $f8
        clc
        adc $c0cb,x
        sta $f8
        lda $f9
        adc $c0cc,x
        sta $f9
        jmp loc_c5ae

loc_c58c:
        lda $c0d0,x
        clc
        adc $c0cb,x
        sta $c0cb,x
        lda $c0d1,x
        adc $c0cc,x
        sta $c0cc,x
        lda $f8
        sec
        sbc $c0cb,x
        sta $f8
        lda $f9
        sbc $c0cc,x
        sta $f9

loc_c5ae:
        lda $c0e4,x
        beq loc_c5ef
        bmi loc_c5d3
        lda $c0e3,x
        clc
        adc $c0da,x
        sta $c0da,x
        lda $c0db,x
        adc #$00
        sta $c0db,x
        cmp $c0e2,x
        bne loc_c5ef
        lda #$81
        sta $c0e4,x
        bne loc_c5ef

loc_c5d3:
        lda $c0da,x
        sec
        sbc $c0e3,x
        sta $c0da,x
        lda $c0db,x
        sbc #$00
        sta $c0db,x
        cmp $c0e1,x
        bne loc_c5ef
        lda #$01
        sta $c0e4,x

loc_c5ef:
        lda $c0e5,x
        sta $c0e6,x
        lda dat_c0c4,x
        and #$03
        cmp #$03
        bne loc_c609
        lda $f9
        adc #$30
        sta $f9
        lda #$80
        sta $c0e6,x

loc_c609:
        lda $f8
        sta $c0d8,x
        lda $f9
        sta $c0d9,x
        rts

// --- Region $c681-$c688 ---
.pc = $c681 "loc_c681"

loc_c681:
        bcc loc_c69b
        bpl loc_c69f
        bcs loc_c6a2
        rts

dat_c688:
        .byte $1d                                   // .

// --- Region $c69b-$c6ad ---
.pc = $c69b "loc_c69b"

loc_c69b:
        jsr sub_6034
.label loc_c69f = * + 1
        .byte $37,$c0                               // rla $c0,x // ILLEGAL
        .byte $3a                                   // nop // ILLEGAL
.label loc_c6a2 = * + 1
        jsr sub_c03e
        eor ($80,x)
        eor $80
        eor #$00
        lsr $52c0
        brk

// --- Region $cb0e-$cbf4 ---
.pc = $cb0e "loc_cb0e"

loc_cb0e:
        sta $c12e
        sta $d400
        sta $d401
        sta $d40e
        sta $d40f
        lda #$01
        sta $c12f
        sta $c131

loc_cb25:
        rts
// Referenced by: jsr from $c14a

sub_cb26:
        lda $c12e
        beq loc_cb25
        lda dat_cbf4
        beq loc_cb0e
        jsr sub_cc0d
        dec dat_cbf4
        lda $cc08
        bne loc_cb78
        lda $cc06
        bne loc_cb43
        jmp loc_cbf3

loc_cb43:
        dec $cc06
        lda $cbf5
        sta $cc08
        lda $cbf6
        sta $cc09
        sta $d400
        lda $cbf7
        ldx $cc07
        beq loc_cb60
        adc dat_cc26

loc_cb60:
        sta $cc0a
        sta $d401
        lda $cbf8
        sta $cc0b
        sta $d40e
        lda $cbf9
        sta $cc0c
        sta $d40f

loc_cb78:
        dec $cc08
        lda $cc04
        beq loc_cbb7
        bmi loc_cb9e
        lda $cc09
        clc
        adc $cc00
        sta $cc09
        sta $d400
        lda $cc0a
        adc $cc01
        sta $d401
        sta $cc0a
        jmp loc_cbb7

loc_cb9e:
        lda $cc09
        sec
        sbc $cc00
        sta $cc09
        sta $d400
        lda $cc0a
        sbc $cc01
        sta $d401
        sta $cc0a

loc_cbb7:
        lda $cc05
        beq loc_cbf3
        bmi loc_cbda
        lda $cc0b
        clc
        adc $cc02
        sta $cc0b
        sta $d40e
        lda $cc0c
        adc $cc03
        sta $d40f
        sta $cc0c
        jmp loc_cbf3

loc_cbda:
        lda $cc0b
        sec
        sbc $cc02
        sta $cc0b
        sta $d40e
        lda $cc0c
        sbc $cc03
        sta $d40f
        sta $cc0c

loc_cbf3:
        rts

dat_cbf4:
        .byte $06                                   // .

// --- Region $cc0d-$cc26 ---
.pc = $cc0d "sub_cc0d"
// Referenced by: jsr from $cb30

sub_cc0d:
        lda dat_cc26
        and #$48
        adc #$38
        asl
        asl
        rol $cc29
        rol $cc28
        rol $cc27
        rol dat_cc26
        lda dat_cc26
        rts

dat_cc26:
        .byte $1f                                   // .

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

// --- Region $0800-$0950 ---
.pc = $0800 "spr_0800"

spr_0800:
        // === Charset data (337 bytes, $0800-$0950) ===
        .byte $00,$00,$00,$d7,$f5,$7d,$5f,$d7       // char 0 @+0
        .byte $00,$00,$06,$0e,$1f,$1f,$3b,$33       // char 1 @+1
        .byte $00,$00,$1f,$1f,$18,$38,$31,$37       // char 2 @+2
        .byte $00,$00,$03,$0f,$1e,$38,$70,$60       // char 3 @+3
        .byte $00,$00,$3f,$3f,$30,$30,$70,$60       // char 4 @+4
        .byte $00,$00,$3f,$3f,$30,$70,$63,$7f       // char 5 @+5
        .byte $00,$00,$03,$3f,$3e,$30,$70,$63       // char 6 @+6
        .byte $00,$00,$03,$0f,$1e,$38,$70,$60       // char 7 @+7
        .byte $00,$00,$30,$30,$30,$70,$60,$67       // char 8 @+8
        .byte $00,$00,$03,$7f,$7f,$03,$07,$06       // char 9 @+9
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 10 @+10
        .byte $00,$00,$30,$30,$31,$33,$77,$6e       // char 11 @+11
        .byte $00,$00,$30,$30,$30,$70,$60,$60       // char 12 @+12
        .byte $00,$00,$30,$30,$38,$78,$7c,$6c       // char 13 @+13
        .byte $00,$00,$30,$30,$38,$38,$7c,$6c       // char 14 @+14
        .byte $00,$00,$0f,$1f,$38,$30,$70,$60       // char 15 @+15
        .byte $00,$00,$3f,$3f,$30,$70,$60,$63       // char 16 @+16
        .byte $00,$00,$0f,$1f,$38,$30,$70,$60       // char 17 @+17
        .byte $00,$00,$3f,$3f,$30,$70,$60,$63       // char 18 @+18
        .byte $00,$00,$07,$1f,$3c,$70,$e0,$c3       // char 19 @+19
        .byte $00,$00,$03,$7f,$7f,$03,$07,$06       // char 20 @+20
        .byte $00,$00,$30,$30,$30,$70,$60,$60       // char 21 @+21
        .byte $00,$00,$c0,$c0,$c0,$c0,$c0,$c0       // char 22 @+22
        .byte $00,$00,$c0,$c3,$c3,$c7,$c7,$cf       // char 23 @+23
        .byte $00,$00,$30,$30,$18,$1d,$0f,$0f       // char 24 @+24
        .byte $00,$00,$c0,$c0,$e0,$71,$31,$3b       // char 25 @+25
        .byte $00,$00,$07,$ff,$fc,$00,$00,$01       // char 26 @+26
        .byte $00,$7f,$40,$63,$61,$7f,$00,$00       // char 27 @+27
        .byte $00,$73,$7b,$6f,$67,$63,$00,$00       // char 28 @+28
        .byte $00,$ff,$00,$00,$00,$00,$00,$00       // char 29 @+29
        .byte $f8,$f8,$f8,$f8,$ff,$ff,$ff,$ff       // char 30 @+30
        .byte $00,$00,$00,$00,$01,$07,$0f,$1e       // char 31 @+31
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 32 ' '
        .byte $00,$00,$03,$03,$03,$07,$07,$07       // char 33 '!'
        .byte $00,$00,$0c,$0c,$18,$18,$00,$00       // char 34 '"'
        .byte $00,$00,$0f,$1f,$38,$70,$63,$3f       // char 35 '#'
        .byte $00,$00,$01,$01,$07,$1f,$39,$39       // char 36 '$'
        .byte $03,$03,$03,$03,$07,$06,$06,$06       // char 37 '%'
        .byte $00,$00,$00,$00,$00,$00,$00,$07       // char 38 '&'
        .byte $00,$00,$0e,$0e,$0e,$1c,$1c,$00       // char 39 '''
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 40 '('
        .byte $00,$00,$e0,$70,$38,$38,$1c,$1c       // char 41 ')'

dat_0950:
        // === Fill data (1 bytes, $0950-$0950) ===
        .byte $00                                   // .

// --- Region $0978-$0b48 ---
.pc = $0978 "dat_0978"

dat_0978:
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 47 '/'
        .byte $00,$00,$0f,$1f,$38,$30,$61,$63       // char 48 '0'
        .byte $00,$00,$03,$0f,$1f,$73,$67,$06       // char 49 '1'
        .byte $00,$00,$0f,$1f,$38,$30,$00,$01       // char 50 '2'
        .byte $00,$00,$07,$1f,$3c,$30,$00,$03       // char 51 '3'
        .byte $00,$00,$00,$00,$01,$07,$0f,$1e       // char 52 '4'
        .byte $00,$00,$3f,$3f,$30,$70,$63,$7f       // char 53 '5'
        .byte $00,$00,$00,$1f,$3f,$70,$60,$60       // char 54 '6'
        .byte $00,$00,$07,$ff,$fc,$00,$00,$01       // char 55 '7'
        .byte $00,$00,$0f,$1f,$38,$70,$63,$3f       // char 56 '8'
        .byte $00,$00,$07,$1f,$38,$70,$60,$31       // char 57 '9'
        .byte $00,$00,$00,$1c,$1c,$1c,$00,$00       // char 58 ':'
        .byte $00,$00,$00,$1c,$1c,$1c,$00,$00       // char 59 ';'
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 60 '<'
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 61 '='
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 62 '>'
        .byte $00,$00,$07,$0f,$1e,$1c,$00,$00       // char 63 '?'
        .byte $00,$7f,$63,$7f,$63,$63,$00,$00       // char 64 '@'
        .byte $00,$00,$00,$00,$00,$00,$00,$80       // char 65 'A'
        .byte $00,$00,$00,$c0,$e0,$e0,$c0,$80       // char 66 'B'
        .byte $00,$00,$c0,$e0,$70,$30,$00,$00       // char 67 'C'
        .byte $00,$00,$80,$c0,$e0,$60,$70,$70       // char 68 'D'
        .byte $00,$00,$f0,$f0,$00,$00,$c0,$c0       // char 69 'E'
        .byte $00,$00,$f0,$f0,$00,$00,$00,$c0       // char 70 'F'
        .byte $00,$00,$c0,$e0,$70,$30,$00,$00       // char 71 'G'
        .byte $00,$00,$30,$30,$30,$30,$70,$e0       // char 72 'H'
        .byte $00,$00,$f0,$f0,$00,$00,$00,$00       // char 73 'I'
        .byte $00,$00,$00,$f0,$f0,$30,$30,$30       // char 74 'J'
        .byte $00,$00,$30,$70,$e0,$c0,$00,$00       // char 75 'K'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 76 'L'
        .byte $00,$00,$30,$30,$70,$70,$f8,$f8       // char 77 'M'
        .byte $00,$00,$30,$30,$30,$30,$70,$60       // char 78 'N'
        .byte $00,$00,$80,$c0,$e0,$60,$70,$30       // char 79 'O'
        .byte $00,$00,$80,$e0,$f0,$70,$e0,$c0       // char 80 'P'
        .byte $00,$00,$80,$c0,$e0,$60,$70,$30       // char 81 'Q'
        .byte $00,$00,$80,$e0,$f0,$70,$e0,$c0       // char 82 'R'
        .byte $00,$00,$c0,$e0,$60,$00,$00,$e0       // char 83 'S'
        .byte $00,$00,$f0,$f0,$00,$00,$00,$00       // char 84 'T'
        .byte $00,$00,$30,$30,$30,$70,$60,$60       // char 85 'U'
        .byte $00,$00,$30,$30,$30,$70,$60,$e0       // char 86 'V'
        .byte $00,$00,$18,$18,$18,$18,$98,$b8       // char 87 'W'
        .byte $00,$00,$30,$70,$e0,$c0,$80,$00       // char 88 'X'
        .byte $00,$00,$30,$70,$e0,$c0,$80,$80       // char 89 'Y'
        .byte $00,$00,$f0,$f0,$30,$70,$e0,$c0       // char 90 'Z'
        .byte $00,$7e,$18,$18,$18,$7e,$00,$00       // char 91 '['
        .byte $00,$7f,$63,$7f,$66,$63,$00,$00       // char 92 '\'
        .byte $00,$00,$00,$00,$ff,$ff,$ff,$ff       // char 93 ']'
        .byte $f8,$f8,$f8,$f8,$00,$00,$00,$00       // char 94 '^'
        .byte $f8,$f8,$f8,$f8,$00,$00,$00,$00       // char 95 '_'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 96 '`'
        .byte $00,$00,$80,$80,$80,$00,$00,$00       // char 97 'a'
        .byte $00,$00,$60,$60,$c0,$c0,$00,$00       // char 98 'b'
        .byte $00,$00,$c0,$e0,$70,$30,$f0,$e0       // char 99 'c'
        .byte $00,$00,$80,$80,$e0,$f8,$9c,$80       // char 100 'd'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 101 'e'
        .byte $00,$00,$00,$00,$00,$1c,$fc,$e0       // char 102 'f'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 103 'g'
        .byte $00,$00,$07,$0e,$1c,$1c,$38,$38       // char 104 'h'

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

// --- Region $0b6f-$0eff ---
.pc = $0b6f "dat_0b6f"

dat_0b6f:
        .byte $1c                                   // char 109 (partial)
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 110 'n'
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 111 'o'
        .byte $00,$00,$80,$c0,$e0,$e0,$f0,$30       // char 112 'p'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 113 'q'
        .byte $00,$00,$c0,$e0,$70,$30,$60,$e0       // char 114 'r'
        .byte $00,$00,$c0,$e0,$60,$60,$60,$e0       // char 115 's'
        .byte $00,$00,$70,$f0,$f0,$b0,$70,$60       // char 116 't'
        .byte $00,$00,$f0,$f0,$00,$00,$c0,$c0       // char 117 'u'
        .byte $00,$00,$00,$80,$c0,$40,$00,$00       // char 118 'v'
        .byte $00,$00,$f0,$f0,$30,$70,$e0,$c0       // char 119 'w'
        .byte $00,$00,$c0,$e0,$70,$30,$f0,$e0       // char 120 'x'
        .byte $00,$00,$e0,$f0,$18,$18,$38,$f0       // char 121 'y'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 122 'z'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 123 '{'
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 124 '|'
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 125 '}'
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 126 '~'
        .byte $00,$00,$c0,$f0,$78,$38,$38,$38       // char 127

scr_0c00:
        .byte $00,$7f,$60,$60,$60,$7f,$00,$00       // char 128
        .byte $71,$61,$61,$ef,$ff,$f0,$e0,$e0       // char 129
        .byte $7f,$7c,$60,$e0,$c0,$c7,$ff,$fc       // char 130
        .byte $e0,$c0,$c0,$c0,$c0,$e3,$7f,$3e       // char 131
        .byte $60,$60,$e0,$c1,$c3,$cf,$fe,$f8       // char 132
        .byte $7e,$e0,$c0,$c0,$c0,$c7,$ff,$7c       // char 133
        .byte $7f,$7e,$e0,$c0,$c0,$c0,$c0,$c0       // char 134
        .byte $e1,$c7,$c7,$c0,$c0,$e1,$7f,$3f       // char 135
        .byte $7f,$7c,$e0,$c0,$c0,$c0,$c0,$c0       // char 136
        .byte $06,$06,$0e,$0c,$0c,$0f,$ff,$fc       // char 137
        .byte $00,$00,$00,$00,$c0,$c3,$ff,$7e       // char 138
        .byte $7c,$7c,$78,$fc,$ce,$c7,$c3,$c0       // char 139
        .byte $60,$60,$e0,$c0,$c0,$c7,$ff,$fc       // char 140
        .byte $6d,$6f,$ef,$cf,$c7,$c6,$c6,$c0       // char 141
        .byte $6e,$66,$67,$e3,$c1,$c1,$c0,$c0       // char 142
        .byte $e0,$c0,$c0,$c0,$c0,$e3,$7f,$3e       // char 143
        .byte $6f,$7e,$f8,$e0,$c0,$c0,$c0,$c0       // char 144
        .byte $e0,$c3,$c3,$c3,$c1,$e3,$7f,$3e       // char 145
        .byte $6f,$7e,$f8,$fc,$ce,$c7,$c3,$c0       // char 146
        .byte $ff,$7e,$00,$00,$00,$e1,$ff,$3f       // char 147
        .byte $06,$06,$0e,$0c,$0c,$0c,$0c,$0c       // char 148
        .byte $60,$e0,$c0,$c0,$c0,$c3,$ff,$7e       // char 149
        .byte $c0,$e1,$61,$63,$67,$6e,$7c,$38       // char 150
        .byte $cf,$dd,$f9,$f9,$70,$70,$60,$60       // char 151
        .byte $0e,$1f,$3f,$3b,$71,$e0,$c0,$c0       // char 152
        .byte $1f,$0f,$06,$0e,$0c,$0c,$0c,$0c       // char 153
        .byte $07,$0f,$1c,$38,$70,$e3,$ff,$fe       // char 154
        .byte $00,$63,$66,$7c,$66,$63,$00,$00       // char 155
        .byte $00,$7f,$60,$7f,$03,$7f,$00,$00       // char 156
        .byte $f8,$f8,$f8,$f8,$f8,$f8,$f8,$f8       // char 157
        .byte $00,$00,$00,$00,$0f,$0f,$0f,$0f       // char 158
        .byte $38,$70,$7c,$3f,$07,$00,$00,$00       // char 159
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 160
        .byte $0e,$0c,$0c,$00,$00,$38,$38,$00       // char 161
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 162
        .byte $7e,$e0,$c0,$c0,$c0,$c7,$ff,$7c       // char 163
        .byte $3f,$07,$01,$39,$1f,$07,$01,$01       // char 164
        .byte $06,$04,$00,$0c,$0c,$0c,$00,$00       // char 165
        .byte $3f,$38,$00,$00,$00,$00,$00,$00       // char 166
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 167
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 168
        .byte $1c,$1c,$1c,$1c,$38,$38,$70,$e0       // char 169
        .byte $00,$00,$00,$03,$03,$01,$03,$06       // char 170
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 171
        .byte $00,$00,$00,$07,$07,$07,$0e,$1c       // char 172
        .byte $00,$07,$3f,$38,$00,$00,$00,$00       // char 173
        .byte $00,$00,$00,$00,$00,$1c,$1c,$1c       // char 174
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 175
        .byte $e6,$c4,$cc,$d8,$f0,$e3,$7f,$3e       // char 176
        .byte $06,$06,$0e,$0c,$0c,$0f,$ff,$fc       // char 177
        .byte $07,$1f,$3c,$70,$60,$63,$ff,$fe       // char 178
        .byte $0f,$0e,$00,$00,$00,$e1,$ff,$3f       // char 179
        .byte $38,$70,$7c,$3f,$07,$00,$00,$00       // char 180
        .byte $7e,$00,$00,$00,$00,$47,$ff,$7c       // char 181
        .byte $7f,$ff,$c0,$c0,$c0,$c7,$ff,$7c       // char 182
        .byte $01,$03,$07,$0e,$1c,$38,$30,$30       // char 183
        .byte $7e,$e0,$c0,$c0,$c0,$c7,$ff,$7c       // char 184
        .byte $3f,$1e,$00,$00,$60,$73,$3f,$1e       // char 185
        .byte $00,$00,$00,$00,$1c,$1c,$1c,$00       // char 186
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 187
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 188
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 189
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 190
        .byte $00,$00,$01,$03,$03,$00,$03,$03       // char 191

spr_0e00:
        .byte $00,$7f,$60,$78,$60,$7f,$00,$00       // char 192
        .byte $80,$80,$c0,$c0,$c0,$e0,$60,$60       // char 193
        .byte $c0,$e0,$70,$70,$e0,$c0,$80,$00       // char 194
        .byte $00,$00,$00,$00,$c0,$c0,$80,$00       // char 195
        .byte $60,$e0,$c0,$c0,$80,$00,$00,$00       // char 196
        .byte $00,$00,$00,$00,$e0,$e0,$80,$00       // char 197
        .byte $c0,$00,$00,$00,$00,$00,$00,$00       // char 198
        .byte $f0,$f0,$30,$30,$70,$e0,$c0,$00       // char 199
        .byte $e0,$60,$60,$e0,$c0,$c0,$c0,$c0       // char 200
        .byte $00,$00,$00,$00,$00,$e0,$e0,$00       // char 201
        .byte $70,$60,$60,$e0,$c0,$c0,$80,$00       // char 202
        .byte $00,$00,$00,$00,$00,$80,$c0,$c0       // char 203
        .byte $00,$00,$00,$00,$30,$f0,$e0,$00       // char 204
        .byte $d8,$98,$98,$18,$18,$18,$18,$18       // char 205
        .byte $60,$60,$60,$e0,$c0,$c0,$c0,$c0       // char 206
        .byte $30,$30,$70,$60,$e0,$c0,$80,$00       // char 207
        .byte $80,$00,$00,$00,$00,$00,$00,$00       // char 208
        .byte $30,$30,$70,$e0,$e0,$c0,$e0,$60       // char 209
        .byte $80,$00,$00,$00,$00,$80,$c0,$c0       // char 210
        .byte $f0,$30,$30,$30,$70,$e0,$c0,$00       // char 211
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 212
        .byte $60,$60,$e0,$c0,$c0,$c0,$c0,$c0       // char 213
        .byte $c0,$c0,$80,$80,$00,$00,$00,$00       // char 214
        .byte $b0,$b0,$b0,$f0,$f0,$e0,$60,$60       // char 215
        .byte $00,$00,$00,$80,$c0,$e0,$70,$30       // char 216
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 217
        .byte $80,$00,$00,$00,$00,$f0,$f0,$00       // char 218
        .byte $00,$60,$60,$60,$63,$7f,$00,$00       // char 219
        .byte $00,$63,$63,$63,$36,$1c,$00,$00       // char 220
        .byte $00,$00,$00,$00,$f8,$f8,$f8,$f8       // char 221
        .byte $00,$ff,$18,$18,$18,$18,$00,$00       // char 222
        .byte $60,$60,$60,$f8,$f8,$c0,$c0,$c0       // char 223

// --- Region $0f18-$0f27 ---
.pc = $0f18 "dat_0f18"

dat_0f18:
        .byte $30,$30,$30,$30,$e0,$e0,$80,$00       // char 227
        .byte $c0,$f8,$9c,$9c,$f8,$e0,$80,$80       // char 228

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

dat_0f40:
        .byte $38,$38,$38,$38,$1c,$1c,$0e,$07       // char 232
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 233
        .byte $00,$00,$00,$80,$80,$80,$00,$00       // char 234
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 235
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 236
        .byte $fc,$e0,$00,$00,$00,$00,$00,$00       // char 237
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 238
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 239
        .byte $30,$30,$30,$60,$e0,$c0,$80,$00       // char 240
        .byte $00,$00,$00,$00,$00,$e0,$e0,$00       // char 241
        .byte $c0,$00,$00,$00,$00,$f0,$f0,$00       // char 242
        .byte $f0,$30,$30,$30,$70,$e0,$c0,$00       // char 243
        .byte $60,$60,$60,$f8,$f8,$c0,$c0,$c0       // char 244
        .byte $60,$60,$60,$60,$e0,$c0,$80,$00       // char 245
        .byte $80,$c0,$c0,$c0,$c0,$c0,$80,$00       // char 246
        .byte $80,$80,$00,$00,$00,$00,$00,$00       // char 247
        .byte $30,$30,$30,$30,$e0,$e0,$80,$00       // char 248
        .byte $f0,$30,$60,$60,$c0,$c0,$80,$00       // char 249
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 250
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 251
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 252
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 253
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 254
        .byte $70,$e0,$c0,$80,$80,$00,$80,$80       // char 255

dat_1000:
        // === Fill data (1 bytes, $1000-$1000) ===
        .byte $00                                   // .

// --- Region $1400-$1400 ---
.pc = $1400 "scr_1400"

scr_1400:
        .byte $00                                   // .

// --- Region $1800-$1800 ---
.pc = $1800 "chr_1800"

chr_1800:
        .byte $00                                   // .

// --- Region $19f7-$1a4f ---
.pc = $19f7 "Segment $19f7"
        .byte $00,$00,$00,$00,$00,$00               // char 0 (partial)
        .byte $00,$00,$07,$00,$00,$00,$06,$0e       // char 1 @+1
        .byte $0e,$03,$01,$03,$0e,$0e,$06,$00       // char 2 @+2
        .byte $00,$00,$00,$00,$02,$09,$02,$09       // char 3 @+3
        .byte $09,$02,$09,$02,$02,$08,$02,$08       // char 4 @+4
        .byte $08,$0a,$08,$0a,$0a,$07,$0a,$07       // char 5 @+5
        .byte $07,$01,$07,$01,$01,$07,$01,$07       // char 6 @+6
        .byte $07,$0a,$07,$0a,$0a,$08,$0a,$08       // char 7 @+7
        .byte $08,$02,$08,$02,$02,$09,$02,$09       // char 8 @+8
        .byte $09,$02,$09,$02,$00,$00,$00,$00       // char 9 @+9
        .byte $00,$06,$0e,$0e,$03,$01,$03,$0e       // char 10 @+10
        .byte $0e,$06                               // char 11 (partial)

dat_1a4f:
        // === Fill data (1 bytes, $1a4f-$1a4f) ===
        .byte $00                                   // .

// --- Region $1a9c-$1ab0 ---
.pc = $1a9c "dat_1a9c"

dat_1a9c:
        .byte $0a                                   // char 20 (partial)
        .byte $0a,$07,$0a,$07,$07,$01,$07,$01       // char 21 @+21
        .byte $01,$07,$01,$07,$07,$0a,$07,$0a       // char 22 @+22
        .byte $0a,$02,$0a                           // char 23 (partial)

dat_1ab0:
        // === Fill data (1 bytes, $1ab0-$1ab0) ===
        .byte $00                                   // .

// --- Region $1ad0-$1b8b ---
.pc = $1ad0 "dat_1ad0"

dat_1ad0:
        .byte $10,$12,$0f,$15,$04                   // char 27 (partial)
        .byte $0c,$19,$20,$10,$12,$05,$13,$05       // char 28 @+28
        .byte $0e,$14                               // char 29 (partial)

txt_1adf:
        .byte $20,$20,$20,$20,$07,$12               // char 29 (partial)
        .byte $05,$0d,$0c,$09,$0e,$27,$13,$20       // char 30 @+30
        .byte $10,$0f,$0f,$0c,$2e,$20,$20,$00       // char 31 @+31
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 32 ' '
        .byte $00,$00,$00,$0b,$0b,$0b,$0c,$0c       // char 33 '!'
        .byte $0c,$0f,$0f,$0f,$0f,$0f,$0c,$0c       // char 34 '"'
        .byte $0c,$0c,$0b,$0b,$0b,$06,$06,$06       // char 35 '#'
        .byte $04,$04,$0e,$0e,$0e,$01,$01,$01       // char 36 '$'
        .byte $0e,$0e,$0e,$04,$04,$04,$06,$06       // char 37 '%'
        .byte $02,$02,$02,$04,$04,$04,$04,$0a       // char 38 '&'
        .byte $0a,$0a,$01,$01,$01,$0a,$0a,$0a       // char 39 '''
        .byte $04,$04,$04,$02,$02,$02,$06,$06       // char 40 '('
        .byte $06,$06,$04,$04,$04,$0e,$0e,$0e       // char 41 ')'
        .byte $0e,$01,$01,$01,$0e,$0e,$04,$04       // char 42 '*'
        .byte $06,$06,$06,$06,$0b,$0b,$0b,$0c       // char 43 '+'
        .byte $0c,$0c,$0f,$0f,$0f,$0f,$0f,$01       // char 44 ','
        .byte $01,$01,$0f,$0f,$0c,$0c,$0c,$0b       // char 45 '-'
        .byte $0b,$0b,$0b,$09,$09,$09,$08,$08       // char 46 '.'
        .byte $07,$07,$07,$07,$01,$01,$01,$07       // char 47 '/'
        .byte $07,$08,$08,$08,$09,$09,$0b,$0b       // char 48 '0'
        .byte $0b,$0c,$0c,$0f,$0f,$01,$01,$01       // char 49 '1'
        .byte $0f,$00,$00,$ea,$ea,$ea,$ea           // char 50 (partial)

// --- Region $1b91-$1bcf ---
.pc = $1b91 "chr_1b91"

chr_1b91:
        // === Charset data (63 bytes, $1b91-$1bcf) ===
        .byte $00,$00,$00,$00,$00,$00,$00,$06       // char 0 @+0
        .byte $06,$06,$06,$06,$06,$06,$06,$0e       // char 1 @+1
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$0e,$03       // char 2 @+2
        .byte $03,$03,$03,$03,$03,$03,$03,$01       // char 3 @+3
        .byte $01,$01,$01,$01,$01,$01,$01,$03       // char 4 @+4
        .byte $03,$03,$03,$03,$03,$03,$03,$0e       // char 5 @+5
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$0e,$06       // char 6 @+6
        .byte $06,$06,$06,$06,$06,$06,$06           // char 7 (partial)

// --- Region $1be6-$1cff ---
.pc = $1be6 "Segment $1be6"
        .byte $00,$00,$db,$40,$9c,$c0               // char 0 (partial)
        .byte $5c,$20,$80,$5c,$40,$80,$9b,$5b       // char 1 @+1
        .byte $1c,$1b,$20,$9c,$c0,$5c,$dc,$5b       // char 2 @+2
        .byte $80,$c0,$00,$00                       // char 3 (partial)

dat_1c00:
        // === Fill data (70 bytes, $1c00-$1c45) ===
        .fill 70, $18

dat_1c46:
        // === Fill data (89 bytes, $1c46-$1c9e) ===
        .fill 89, $c8
        .encoding "screencode_mixed"
        .fill 17, $00                               // scrcode: @@@@@@@@@@@@@@@@@
        .encoding "petscii_upper"

dat_1cb0:
        // === Fill data (32 bytes, $1cb0-$1ccf) ===
        .fill 32, $c8
        .encoding "screencode_mixed"
        .text "@b@@@@@@@@@@@@@@@@@@@@@@syob rekaerb@@@@"
        .fill 8, $00                                // scrcode: @@@@@@@@
        .encoding "petscii_upper"

// --- Region $1d5d-$1d6f ---
.pc = $1d5d "scr_1d5d"

scr_1d5d:
        // === Screen RAM (19 bytes, $1d5d-$1d6f) ===
        .encoding "screencode_mixed"
        .fill 19, $00                               // scrcode: @@@@@@@@@@@@@@@@@@@
        .encoding "petscii_upper"

// --- Region $1e7d-$1ea1 ---
.pc = $1e7d "Segment $1e7d"
        .byte $a9,$34,$85,$01,$a2,$00,$bd,$01,$24,$9d,$01,$08,$e8,$d0,$f7,$ee // .4......$.......
        .byte $0c,$01,$ee,$09,$01,$d0,$ed,$a9,$37,$85,$01,$58,$a9,$00,$8d,$00 // ........7..X....
        .byte $08,$4c,$e2,$fc                       // .L..

dat_1ea1:
        .byte $00                                   // .

// --- Region $1ef4-$2008 ---
.pc = $1ef4 "Segment $1ef4"
        .encoding "screencode_mixed"
        .text "@d"
        .byte $60                                   // scrcode: .
        .text "@@@@@@@@@"
        .byte $9e,$5d,$dd                           // scrcode: ...
        .encoding "petscii_upper"

txt_1f03:
        .text "     "
        .encoding "screencode_mixed"
        .byte $9e,$5d,$5d,$5d,$5d,$5d,$5d,$dd,$9e,$5d,$5d,$5d,$5d,$5d,$5d,$dd // scrcode: ................
        .byte $9e,$5d,$5d,$5d,$5d,$5d,$5d,$dd,$9e,$5d,$5d,$5d,$5d,$5d,$5d,$dd // scrcode: ................
        .text "@@"
        .byte $9d                                   // scrcode: .
        .encoding "petscii_upper"

txt_1f2b:
        .text "     "
        .byte $00                                   // string terminator
        .encoding "screencode_mixed"
        .text "@@@@@@"
        .byte $9d                                   // scrcode: .
        .text "@@@@@@@"
        .byte $5e                                   // scrcode: .
        .text "@@@@@@@"
        .byte $5e                                   // scrcode: .
        .text "@@@@@@@"
        .byte $9d                                   // scrcode: .
        .text "@@"
        .byte $9d                                   // scrcode: .
        .encoding "petscii_upper"

txt_1f53:
        .text "     "
        .encoding "screencode_mixed"
        .byte $9e,$5d,$5d,$5d,$5d                   // scrcode: .....
        .text "@@"
        .byte $9d,$9e,$5d,$5d,$5d,$5d,$5d,$5d,$dd,$9e,$5d,$5d,$5d,$dd // scrcode: ..............
        .text "   "
        .byte $9e,$5d,$5d,$5d,$5d                   // scrcode: .....
        .text "@@"
        .byte $9d                                   // scrcode: .
        .text "@@"
        .byte $9d                                   // scrcode: .
        .text "  "
        .byte $9e,$5d,$dd                           // scrcode: ...
        .text "@@@@@@@"
        .byte $9d                                   // scrcode: .
        .text "@@@@@@@"
        .byte $9d                                   // scrcode: .
        .text "@@@@"
        .byte $5e                                   // scrcode: .
        .text "   @@@@@@@"
        .byte $5e                                   // scrcode: .
        .text "@@"
        .byte $1e,$5d,$5d                           // scrcode: ...
        .text "@@"
        .byte $9d                                   // scrcode: .
        .text "@@"
        .byte $1e,$5d,$5d                           // scrcode: ...
        .text "@@"
        .byte $9d,$9e,$5d,$5d,$5d,$5d               // scrcode: ......
        .text "@@"
        .byte $9d                                   // scrcode: .
        .text "@@"
        .byte $1e,$5d,$5d,$5d,$5d,$dd               // scrcode: ......
        .text "@@"
        .byte $9d                                   // scrcode: .
        .text " @@"
        .byte $1e,$dd                               // scrcode: ..
        .text "@@@@@@@"
        .byte $5e                                   // scrcode: .
        .text "@@@@@@@"
        .byte $5e                                   // scrcode: .
        .text "@@@@@@@"
        .byte $5e                                   // scrcode: .
        .text "@@@@@@@"
        .byte $5e                                   // scrcode: .
        .text "@@"
        .byte $5e                                   // scrcode: .
        .text "  @@"
        .byte $5e                                   // scrcode: .
        .encoding "petscii_upper"

txt_1ff0:
        .text "                "
        .byte $00                                   // string terminator
        .byte $00,$00,$0e,$0e,$0e,$0e,$0e           // char 0 (partial)

dat_2008:
        // === Fill data (1 bytes, $2008-$2008) ===
        .byte $00                                   // .

// --- Region $2028-$226f ---
.pc = $2028 "dat_2028"

dat_2028:
        .byte $0e,$0e,$00,$0e,$0e,$0e,$0e,$00       // char 5 @+5
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$0e,$00       // char 6 @+6
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$0e,$00       // char 7 @+7
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$0e,$00       // char 8 @+8
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$0e,$00       // char 9 @+9
        .byte $0e,$0e,$00,$00,$00,$0e,$0e,$00       // char 10 @+10
        .byte $00,$00,$00,$00,$00,$0e,$0e,$00       // char 11 @+11
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 12 @+12
        .byte $00,$00,$00,$00,$00,$0e,$0e,$00       // char 13 @+13
        .byte $00,$00,$00,$00,$00,$0e,$0e,$00       // char 14 @+14
        .byte $0e,$0e,$00,$0e,$0e,$00,$00,$00       // char 15 @+15
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$0e,$00       // char 16 @+16
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$0e,$00       // char 17 @+17
        .byte $0e,$0e,$0e,$0e,$00,$0e,$0e,$00       // char 18 @+18
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$0e,$00       // char 19 @+19
        .byte $0e,$0e,$00,$00,$00,$0e,$0e,$00       // char 20 @+20
        .byte $0e,$0e,$00,$00,$00,$0e,$0e,$00       // char 21 @+21
        .byte $00,$00,$00,$00,$00,$0e,$0e,$00       // char 22 @+22
        .byte $0e,$0e,$00,$00,$00,$00,$00,$00       // char 23 @+23
        .byte $0e,$0e,$00,$0e,$0e,$0e,$00,$00       // char 24 @+24
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$0e,$00       // char 25 @+25
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$0e,$00       // char 26 @+26
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$0e,$00       // char 27 @+27
        .byte $0e,$0e,$0e,$0e,$0e,$0e,$0e,$00       // char 28 @+28
        .byte $0e,$0e,$00,$0e,$0e,$0e,$0e,$00       // char 29 @+29
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 30 @+30
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 31 @+31
        .byte $19,$0f,$20,$0c,$01,$13,$05,$12       // char 32 ' '
        .byte $20,$06,$01,$0e,$13                   // char 33 (partial)

txt_210d:
        .byte $20,$21,$21                           // char 33 (partial)
        .byte $20,$07,$12,$05,$0d,$0c,$09,$0e       // char 34 '"'
        .byte $27,$13,$20,$10,$0f,$0f,$0c,$20       // char 35 '#'
        .byte $09,$13,$20,$03,$12,$01,$03,$0b       // char 36 '$'
        .byte $05,$04,$20,$02,$19,$20,$13,$14       // char 37 '%'
        .byte $05,$16,$05,$20,$0f,$06,$20,$0c       // char 38 '&'
        .byte $01,$13,$05,$12                       // char 39 (partial)

txt_213c:
        .byte $20,$2e,$2e,$20                       // char 39 (partial)
        .byte $02,$05,$13,$14,$20,$27,$07,$0f       // char 40 '('
        .byte $0f,$04,$20,$06,$0f,$12,$20,$01       // char 41 ')'
        .byte $20,$03,$0f,$10,$19,$20,$10,$01       // char 42 '*'
        .byte $12,$14,$19,$27,$20,$13,$0f,$06       // char 43 '+'
        .byte $14,$17,$01,$12,$05,$20,$06,$12       // char 44 ','
        .byte $05,$01,$0b,$05,$12,$13,$20,$14       // char 45 '-'
        .byte $0f,$04,$01,$19,$20,$01,$12,$05       // char 46 '.'
        .byte $20,$06,$15,$13,$09,$0f,$0e,$2c       // char 47 '/'
        .byte $02,$12,$05,$01,$0b,$05,$12,$20       // char 48 '0'
        .byte $02,$0f,$19,$13,$2c,$13,$09,$07       // char 49 '1'
        .byte $0d,$01,$2c,$04,$01,$0e,$09,$13       // char 50 '2'
        .byte $08,$20,$07,$0f,$0c,$04,$2c,$14       // char 51 '3'
        .byte $12,$09,$01,$04,$2c,$06,$0c,$01       // char 52 '4'
        .byte $14,$20,$33,$2c,$14,$08,$05,$20       // char 53 '5'
        .byte $08,$01,$03,$0b,$05,$12,$13,$20       // char 54 '6'
        .byte $05,$0c,$09,$14,$05,$2c,$03,$2e       // char 55 '7'
        .byte $01,$2e,$14,$2e,$13,$2c,$10,$15       // char 56 '8'
        .byte $02,$0c,$09,$03,$20,$05,$0e,$05       // char 57 '9'
        .byte $0d,$19,$2c,$04,$05,$0c,$14,$01       // char 58 ':'
        .byte $20,$06,$0f,$12,$03,$05,$20,$01       // char 59 ';'
        .byte $0d,$09,$07,$01,$2c,$05,$01,$13       // char 60 '<'
        .byte $14,$05,$0e,$04,$05,$12,$13,$20       // char 61 '='
        .byte $03,$12,$01,$03,$0b,$09,$0e,$07       // char 62 '>'
        .byte $20,$03,$12,$05,$17,$2c,$01,$0e       // char 63 '?'
        .byte $04,$20,$14,$0f,$20,$01,$02,$13       // char 64 '@'
        .byte $0f,$0c,$15,$14,$05,$0c,$19,$20       // char 65 'A'
        .byte $01,$0c,$0c,$20,$0c,$01,$13,$05       // char 66 'B'
        .byte $12,$20,$03,$0f,$0e,$14,$01,$03       // char 67 'C'
        .byte $14,$13,$20,$05,$16,$05,$12,$19       // char 68 'D'
        .byte $17,$08,$05,$12,$05                   // char 69 (partial)

txt_222d:
        .byte $20,$2e,$2e                           // char 69 (partial)
        .byte $20,$15,$13,$01,$20,$07,$12,$05       // char 70 'F'
        .byte $05,$14,$13,$20,$14,$0f,$20,$01       // char 71 'G'
        .byte $14,$03,$2c,$0e,$05,$10,$01,$2c       // char 72 'H'
        .byte $12,$01,$04,$2c,$14,$13,$14           // char 73 (partial)

txt_224f:
        .byte $20                                   // char 73 (partial)
        .byte $32,$30,$31,$30,$2c,$09,$0e,$03       // char 74 'J'
        .byte $2c,$05,$13,$09,$2c,$0d,$13,$09       // char 75 'K'
        .byte $2c,$01,$0e,$04,$20,$18,$10,$02       // char 76 'L'

txt_2268:
        .byte $20,$2e,$2e,$20,$20,$20,$20           // char 77 (partial)

dat_226f:
        // === Fill data (1 bytes, $226f-$226f) ===
        .byte $00                                   // .

// --- Region $2400-$2400 ---
.pc = $2400 "scr_2400"

scr_2400:
        .byte $00                                   // .

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

scr_2800:
        .byte $00                                   // .

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

scr_2c00:
        .byte $00                                   // .

// --- Region $3000-$3000 ---
.pc = $3000 "spr_3000"

spr_3000:
        .byte $00                                   // .

// --- Region $3400-$3400 ---
.pc = $3400 "scr_3400"

scr_3400:
        .byte $00                                   // .

// --- Region $3800-$3800 ---
.pc = $3800 "spr_3800"

spr_3800:
        .byte $00                                   // .

// --- Region $3c00-$3c00 ---
.pc = $3c00 "spr_3c00"

spr_3c00:
        .byte $00                                   // .

// --- Region $509e-$509e ---
.pc = $509e "dat_509e"

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

// --- Region $6034-$6034 ---
.pc = $6034 "sub_6034"
// Referenced by: jsr from $c69b

sub_6034:
        .byte $00                                   // .

// --- Region $8dc8-$8dcf ---
.pc = $8dc8 "dat_8dc8"

dat_8dc8:
        .fill 8, $00

// --- Region $8dd1-$8dd1 ---
.pc = $8dd1 "dat_8dd1"

dat_8dd1:
        // === Fill data (1 bytes, $8dd1-$8dd1) ===
        .byte $00                                   // .

// --- Region $bd08-$bd08 ---
.pc = $bd08 "dat_bd08"

dat_bd08:
        // === Fill data (1 bytes, $bd08-$bd08) ===
        .byte $00                                   // .

// --- Region $bdc6-$bdc6 ---
.pc = $bdc6 "dat_bdc6"

dat_bdc6:
        // === Fill data (1 bytes, $bdc6-$bdc6) ===
        .byte $00                                   // .

// --- Region $c0c4-$c134 ---
.pc = $c0c4 "dat_c0c4"

dat_c0c4:
        .byte $01,$0c,$ca,$6d,$c9,$02,$00,$00,$00,$f3,$c6,$00,$00,$00,$00,$01 // ...m............
        .byte $01,$32,$06,$20,$f4,$26,$00,$00,$00,$06,$03,$03,$40,$00,$00,$00 // .2. .&......@...
        .byte $00,$20,$20,$01,$e0,$c9,$69,$c9,$02,$00,$00,$00,$f3,$c6,$00,$00 // .  ...i.........
        .byte $00,$00,$01,$01,$17,$08,$40,$28,$08,$58,$07,$00,$01,$01,$00,$40 // ......@(.X.....@
        .byte $06,$08,$28,$01,$40,$40,$01,$59,$ca,$71,$c9,$1e,$00,$00,$00,$f3 // ..(.@@.Y.q......
        .byte $c6,$00,$00,$00,$00,$02,$02,$2f,$09,$20,$c8,$20,$30,$02,$00,$06 // ......./. . 0...
        .byte $03,$03,$40,$01,$03,$50,$01,$40,$40,$01,$00,$01,$01,$01,$0c,$e8 // ..@..P.@@.......
        .byte $ff                                   // .

// --- Region $c239-$c240 ---
.pc = $c239 "dat_c239"

dat_c239:
        .byte $a9,$00,$8d,$2e,$c1,$8d,$2d,$c1       // ......-.

// --- Region $c254-$c27d ---
.pc = $c254 "dat_c254"

dat_c254:
        .byte $09,$f2,$94,$c2,$c0,$c3,$c7,$c3,$ce,$c3,$62,$c3,$5e,$c3,$b6,$c3 // ..........b.^...
        .byte $ae,$c3,$13,$c3,$91,$c3,$db,$c2,$df,$c2,$e3,$c2,$e7,$c2,$dd,$c3 // ................
        .byte $f7,$c2,$b5,$c2,$0e,$c3,$eb,$c2,$ef,$c2 // ..........

// --- Region $c295-$c2a4 ---
.pc = $c295 "Segment $c295"
        .byte $00,$9d,$dc,$c0,$9d,$d6,$c0,$9d,$d7,$c0,$4c,$12,$c4,$4c,$12,$c4 // ..........L..L..

// --- Region $c35f-$c3e6 ---
.pc = $c35f "Segment $c35f"
        .byte $20,$d0,$02,$a9,$04,$1d,$c4,$c0,$9d,$c4,$c0,$a0,$00,$98,$9d,$cb //  ...............
        .byte $c0,$9d,$cc,$c0,$b1,$f8,$9d,$d0,$c0,$c8,$b1,$f8,$9d,$d1,$c0,$c8 // ................
        .byte $b1,$f8,$9d,$d2,$c0,$a5,$f8,$18,$69,$03,$85,$f8,$90,$6e,$e6,$f9 // ........i....n..
        .byte $b0,$6a,$a0,$00,$b1,$f8,$9d,$de,$c0,$c8,$b1,$f8,$9d,$dd,$c0,$9d // .j..............
        .byte $df,$c0,$a5,$f8,$18,$69,$02,$85,$f8,$90,$51,$e6,$f9,$b0,$4d,$bd // .....i....Q...M.
        .byte $c4,$c0,$09,$80,$9d,$c4,$c0,$bc,$c4,$c0,$09,$08,$9d,$c4,$c0,$d0 // ................
        .byte $3b,$a9,$00,$9d,$e0,$c0,$f0,$34,$a9,$40,$9d,$e0,$c0,$d0,$2d,$a0 // ;......4.@....-.
        .byte $00,$b1,$f8,$8d,$14,$c6,$e6,$f8,$d0,$22,$e6,$f9,$d0,$1e,$bd,$c4 // ........."......
        .byte $c0,$09,$03,$9d,$c4,$c0,$d0,$14       // ........

// --- Region $c614-$c680 ---
.pc = $c614 "dat_c614"

dat_c614:
        .byte $0f,$16,$01,$26,$01,$38,$01,$4b,$01,$60,$01,$72,$01,$89,$01,$a1 // ...&.8.K.`.r....
        .byte $01,$bb,$01,$d6,$01,$f1,$01,$0e,$02,$2c,$02,$4c,$02,$70,$02,$96 // .........,.L.p..
        .byte $02,$c0,$02,$e4,$02,$12,$03,$42,$03,$76,$03,$ac,$03,$e2,$03,$1c // .......B.v......
        .byte $04,$58,$04,$98,$04,$e0,$04,$2c,$05,$80,$05,$c8,$05,$24,$06,$84 // .X.....,.....$..
        .byte $06,$ec,$06,$58,$07,$c4,$07,$38,$08,$b0,$08,$30,$09,$c0,$09,$58 // ...X...8...0...X
        .byte $0a,$00,$0b,$90,$0b,$48,$0c,$08,$0d,$d8,$0d,$b0,$0e,$88,$0f,$70 // .....H.........p
        .byte $10,$60,$11,$60,$12,$80,$13,$b0,$14,$00,$16,$20,$17 // .`.`....... .

// --- Region $c689-$c69a ---
.pc = $c689 "Segment $c689"
        .byte $10,$1f,$e0,$20,$c0,$22,$c0,$24,$00,$27,$60,$29,$00 // ... .".$.'`).

txt_c696:
        .text ","
        .byte $40                                   // @ character
        .text ". 1"

// --- Region $c6ae-$cb0d ---
.pc = $c6ae "dat_c6ae"

dat_c6ae:
        .byte $58,$80,$5c,$40,$62,$40,$68,$c0,$6e,$80,$75,$40,$7c,$80,$83,$00 // X.\@b@h.n.u@|...
        .byte $8b,$00,$93,$00,$9c,$80,$a5,$00,$b0,$00,$b9,$80,$c3,$80,$d0,$80 // ................
        .byte $dd,$00,$eb,$80,$f8,$f3,$f4,$f7,$fa,$fe,$02,$05,$08,$0b,$0e,$10 // ................
        .byte $12,$14,$16,$18,$1c,$c6,$c6,$c6,$c6,$c6,$c7,$c7,$c7,$c7,$c7,$c7 // ................
        .byte $c7,$c7,$c7,$c7,$c7,$80,$00,$03,$87,$00,$04,$87,$00,$03,$07,$8c // ................
        .byte $00,$04,$07,$8c,$07,$0c,$8f,$07,$0c,$90,$03,$07,$8c,$04,$07,$8c // ................
        .byte $00,$8c,$00,$83,$00,$84,$00,$87,$05,$80,$00,$00,$00,$8c,$00,$0c // ................
        .byte $18,$a4,$09,$3c,$c7,$40,$c7,$4e,$c7,$06,$35,$c8,$5d,$c8,$49,$c8 // ...<.@.N..5.].I.
        .byte $04,$fe,$c8,$02,$c9,$06,$c9,$09,$6d,$c9,$69,$c9,$71,$c9,$5c,$c7 // ........m.i.q.\.
        .byte $00,$00,$72,$ca,$a6,$c7,$a6,$c7,$75,$ca,$a6,$c7,$a6,$c7,$00,$00 // ..r.....u.......
        .byte $d5,$c7,$d5,$c7,$03,$c8,$18,$c8,$03,$c8,$27,$c8,$00,$00,$8a,$c0 // ..........'.....
        .byte $e0,$95,$d0,$60,$00,$85,$64,$02,$01,$30,$d0,$06,$00,$30,$8e,$30 // ...`..d..0...0.0
        .byte $95,$d0,$60,$00,$85,$64,$02,$01,$30,$d0,$06,$00,$30,$8e,$30,$95 // ..`..d..0...0.0.
        .byte $d0,$60,$00,$85,$64,$02,$01,$30,$d0,$06,$00,$30,$8e,$30,$d0,$60 // .`..d..0...0.0.`
        .byte $00,$85,$64,$02,$01,$30,$d0,$06,$00,$30,$d0,$60,$00,$85,$64,$02 // ..d..0...0.`..d.
        .byte $01,$30,$d0,$06,$00,$8e,$30,$88,$8b,$89,$01,$02,$82,$90,$07,$08 // .0....0.........
        .byte $80,$d0,$07,$40,$c0,$e0,$18,$1b,$1f,$1b,$1a,$1d,$22,$1a,$1b,$1f // ...@........"...
        .byte $24,$1b,$1d,$20,$26,$1d,$1b,$1f,$24,$1b,$1a,$1d,$22,$1a,$18,$1b // $.. &...$..."...
        .byte $1f,$18,$17,$1a,$1f,$17,$88,$8b,$89,$0a,$14,$82,$90,$01,$03,$80 // ................
        .byte $d0,$08,$30,$c0,$e1,$95,$e0,$30,$30,$e1,$2f,$e0,$30,$30,$e1,$32 // ..0....00./.00.2
        .byte $e0,$30,$2f,$e3,$30,$e1,$95,$e0,$30,$30,$e1,$2f,$e0,$30,$30,$e1 // .0/.0...00./.00.
        .text "+'&+"
        .byte $88,$e1,$95,$e0
        .byte $30,$30,$e1
        .byte $2f,$e0
        .byte $30,$30,$e1
        .byte $32,$e0,$30,$2f,$e1,$30,$e0,$32,$33,$88,$e1,$35,$e0,$33,$32,$e1 // 2.0/.0.23..5.32.
        .byte $33,$e0,$35,$37,$e1,$38,$e5,$37,$88,$e0 // 3.57.8.7..

txt_c828:
        .text "5320320/"
        .byte $e1,$30,$e5,$2b,$88,$71,$c8,$7f,$c8,$7f,$c8,$7f,$c8,$7f,$c8,$7f // .0.+.q..........
        .byte $c8,$7f,$c8,$7f,$c8,$7f,$c8,$00,$00,$a0,$c8,$ae,$c8,$ae,$c8,$ae // ................
        .byte $c8,$ae,$c8,$ae,$c8,$ae,$c8,$ae,$c8,$ae,$c8,$00,$00,$cf,$c8,$dd // ................
        .byte $c8,$dd,$c8,$dd,$c8,$dd,$c8,$dd,$c8,$dd,$c8,$dd,$c8,$dd,$c8,$00 // ................
        .byte $00,$8b,$d0,$0c,$00,$8f,$08,$e4,$c0,$87,$15,$d0,$07,$20,$88,$e0 // ............. ..
        .byte $c0,$0c,$0c,$18,$0c,$0c,$18,$0c,$18,$0f,$0f,$1b,$0e,$0e,$1a,$0d // ................
        .byte $19,$0c,$0c,$18,$0c,$0c,$18,$0c,$0c,$07,$09,$0b,$07,$09,$0b,$88 // ................
        .byte $8b,$d0,$0c,$00,$8f,$08,$e4,$c3,$87,$21,$d0,$07,$20,$88,$e0,$c1 // .........!.. ...

txt_c8b0:
        .text "$$0$$0$0''3&&2%1$$0$$0$$"
        .byte $1f,$21,$23,$1f,$21,$23,$88,$8b,$d0,$0c,$00,$8f,$08,$e4,$c9,$87 // .!#.!#..........
        .byte $2d,$d0,$07,$20,$88,$e0,$c0           // -.. ...

txt_c8df:
        .text "00<00<0<33?22>1=00<00<00+-/+-/"
        .byte $88,$0a,$c9,$00,$00,$28,$c9,$00,$00,$48,$c9,$00,$00,$11,$8f,$08 // .....(...H......
        .byte $c0,$89,$08,$10,$82,$d0,$07,$20,$e0   // ....... .

txt_c916:
        .text ":987654321"
        .byte $d0                                   // 'P' | $80 (end-of-string marker)
        .byte $0a,$00,$eb,$30,$ef,$3c,$91,$8b,$8f,$08,$c0,$89,$08,$10,$82,$d0 // ...0.<..........
        .byte $07,$20,$e0                           // . .

txt_c934:
        .text "FEDCBA"
        .byte $40                                   // @ character
        .text "?>="
        .byte $e3,$80,$d0,$0a,$00,$e7,$34,$ef,$95,$91,$8d,$8f,$08,$c0,$89,$08 // ......4.........
        .byte $10,$82,$d0,$07,$20,$e0               // .... .

txt_c954:
        .text "RQPONMLKJI"
        .byte $8b,$e7,$80,$d0,$0a,$00,$e3,$37,$ef,$95,$91,$95,$c9,$00,$00,$e3 // .......7........
        .byte $c9,$00,$00,$0e,$ca,$12,$ca,$12,$ca,$39,$ca,$56,$ca,$39,$ca,$58 // .........9.V.9.X
        .byte $ca,$5a,$ca,$5a,$ca,$12,$ca,$12,$ca,$39,$ca,$56,$ca,$39,$ca,$58 // .Z.Z.....9.V.9.X
        .byte $ca,$5a,$ca,$5a,$ca,$00,$00,$90,$06,$08,$28,$89,$01,$01,$82,$e0 // .Z.Z......(.....
        .byte $8b,$d0,$09,$40,$c0,$18,$d0,$08,$40,$18,$8e,$18,$18,$18,$18,$8e // ...@....@.......
        .byte $18,$18,$d0,$09,$40,$15,$d0,$08,$40,$15,$8e,$15,$15,$15,$8e,$15 // ....@...@.......
        .byte $15,$8e,$15,$d0,$09,$40,$11,$d0,$08,$40,$11,$8e,$11,$11,$11,$11 // .....@...@......
        .byte $8e,$11,$11,$d0,$09,$40,$13,$d0,$08,$40,$13,$8e,$13,$13,$15,$8e // .....@...@......
        .byte $15,$17,$8e,$17,$88,$8c,$89,$03,$06,$82,$d0,$06,$20,$c0,$e0 // ............ ..

txt_c9ed:
        .text "$(+/047;!$(+-047"
        .byte $1d                                   // .

txt_c9fe:
        .text "!$()-04"
        .byte $1f                                   // .

txt_ca06:
        .text "#&)+/25"
        .byte $88,$ff,$80,$88,$88,$8b,$89,$03,$06,$82,$90,$01,$03,$50,$d0,$09 // .............P..
        .byte $20,$c0,$e1,$95,$e0
        .text "+(+(&"
        .byte $e8
        .byte $24,$e1,$95,$e0
        .byte $2d
        .text ")-)("
        .byte $e1
        .byte $26,$e2
        .byte $23,$e1
        .byte $24,$26,$88,$e1,$95,$e0

txt_ca3c:
        .text "+(+(&$"
        .byte $e1,$2d,$e0,$2f,$e4,$2d,$e1,$95,$e0   // .-./.-...

txt_ca4b:
        .text "-)-)(&"
        .byte $e1,$2f,$2d,$2b,$88,$29,$88,$2f,$88,$89,$0a,$14,$e2,$30,$e4,$30 // ./-+.)./.....0.0
        .byte $e2,$30,$e4,$30,$e2,$30,$e4,$30,$e0,$32,$32,$32,$e1,$34,$e2,$32 // .0.0.0.0.222.4.2
        .byte $88,$94,$00,$88,$94,$fd,$88,$48,$a9,$00,$8d,$2e,$c1,$8d,$2f,$c1 // .......H....../.
        .byte $8d,$31,$c1,$68,$0a,$aa,$bd,$2a,$cc,$8d,$96,$ca,$bd,$2b,$cc,$8d // .1.h...*.....+..
        .byte $97,$ca,$a2,$13,$bd,$d2,$cc,$9d,$f4,$cb,$ca,$10,$f7,$ad,$f5,$cb // ................
        .byte $8d,$08,$cc,$ad,$f6,$cb,$8d,$09,$cc,$ad,$fa,$cb,$8d,$05,$d4,$ad // ................
        .byte $fb,$cb,$8d,$13,$d4,$a9,$00,$8d,$06,$d4,$8d,$14,$d4,$ad,$f6,$cb // ................
        .byte $8d,$09,$cc,$8d,$00,$d4,$ad,$f7,$cb,$8d,$0a,$cc,$8d,$01,$d4,$ad // ................
        .byte $f8,$cb,$8d,$0b,$cc,$8d,$0e,$d4,$ad,$f9,$cb,$8d,$0c,$cc,$8d,$0f // ................
        .byte $d4,$ad,$fe,$cb,$8d,$03,$d4,$ad,$ff,$cb,$8d,$11,$d4,$ae,$fc,$cb // ................
        .byte $8e,$04,$d4,$e8,$8e,$04,$d4,$ae,$fd,$cb,$8e,$12,$d4,$e8,$8e,$12 // ................
        .byte $d4,$a9,$0f,$8d,$18,$d4,$8d,$14,$c6,$ee,$2e,$c1,$60 // ............`

// --- Region $cbf5-$cc0c ---
.pc = $cbf5 "Segment $cbf5"
        .byte $05,$00,$07,$50,$07,$0a,$0a,$40,$40,$08,$04,$28,$00,$28,$00,$ff // ...P...@@..(.(..
        .byte $ff,$00,$00,$01,$60,$06,$b0,$06       // ....`...

// --- Region $cc27-$cd00 ---
.pc = $cc27 "Segment $cc27"
        .byte $35,$ef,$03,$46,$cc,$5a,$cc,$6e,$cc,$82,$cc,$96,$cc,$aa,$cc,$be // 5..F.Z.n........
        .byte $cc,$d2,$cc,$e6,$cc,$fa,$cc,$0e,$cd,$22,$cd,$36,$cd,$4a,$cd,$50 // .........".6.J.P
        .byte $12,$0a,$03,$28,$02,$0b,$0b,$40,$40,$03,$05,$01,$02,$01,$04,$01 // ...(...@@.......
        .byte $01,$14,$00,$14,$63,$33,$1e,$33,$14,$09,$09,$14,$80,$08,$08,$01 // ....c3.3........
        .byte $0a,$00,$04,$01,$ff,$00,$00,$14,$06,$00,$0c,$00,$13,$09,$09,$40 // ...............@
        .byte $80,$03,$00,$00,$02,$00,$02,$ff,$ff,$05,$00,$19,$1f,$00,$08,$64 // ...............d
        .byte $13,$8a,$8a,$80,$80,$00,$00,$fa,$00,$fa,$01,$01,$01,$00,$00,$28 // ...............(
        .byte $1a,$01,$05,$65,$0f,$8d,$8c,$80,$80,$00,$00,$32,$00,$32,$00,$01 // ...e.......2.2..
        .byte $ff,$00,$00,$46,$05,$00,$06,$00,$03,$0c,$0c,$80,$80,$00,$00,$96 // ...F............
        .byte $00,$96,$00,$01,$01,$0f,$01,$28,$05,$00,$2f,$00,$31,$0a,$0a,$10 // .......(../.1...
        .byte $10,$08,$08,$28,$00,$27,$00,$ff,$ff,$06,$00,$28,$05,$00,$07,$50 // ...(.'.....(...P
        .byte $07,$0a,$0a,$40,$40,$08,$04,$28,$00,$28,$00,$ff,$ff,$06,$00,$14 // ...@@..(.(......
        .byte $06,$00,$04,$00,$1d,$09,$08,$14,$80,$00,$00,$14,$01,$64,$04,$01 // .............d..
        .byte $ff,$04,$01,$0f,$0c,$00,$0e,$00,$0d   // .........

dat_cd00:
        // === Fill data (1 bytes, $cd00-$cd00) ===
        .byte $00                                   // .
