// ============================================
// output - Part 1 of 2
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:36:53
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $3aff  (13056 bytes)
// Crunched with Cruncher AB — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $2e00 (11776)
// IRQ handler:  $2eed (irq_2eed)
// IRQ handler:  $ea31 (irq_ea31)
//
// Code: 2560 bytes, Data: 10496 bytes
// Labels: 269, Subroutines: 19
//
// Cross-references: all OK
// ============================================


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

sub_1000:
        jmp loc_1048
// Referenced by: jsr from $2f81

sub_1003:
        jmp loc_1021

txt_1006:
        .text "-"

// --- Region $1021-$1080 ---
.pc = $1021 "loc_1021"

loc_1021:
        ldx #$00
        dec $1090
        bmi loc_1034
        jsr sub_1226
        jsr sub_1225
        jmp sub_1225

dat_1031:
        .byte $ff,$ff,$ff                           // ...

loc_1034:
        lda #$03
        sta $1090
        jsr sub_1040
        jsr sub_103f
// Referenced by: jsr from $103c

sub_103f:
        inx
// Referenced by: jsr from $1039

sub_1040:
        dec $108a,x
        bmi loc_1091
        jmp sub_1226

loc_1048:
        lda #$1f
        sta $d418
        lda #$f0
        sta $d417
        and #$0f
        sta smc_1262                                // SMC: modifies $1262
        ldx #$0f

loc_1059:
        sta dat_1081,x
        dex
        bpl loc_1059
        ldx #$02

loc_1061:
        lda $14b9,x
        sta $fa
        lda $14bc,x
        sta $fb
        ldy #$00
        lda ($fa),y
        sta $108d,x
        iny
        lda ($fa),y
        sta $10e6,x
        and #$0f
        sta $10e9,x
        dex
        bpl loc_1061
        rts

// --- Region $1091-$10c6 ---
.pc = $1091 "loc_1091"

loc_1091:
        ldy $108d,x
        cpy #$fe
        bne loc_10a1
// Referenced by: jsr from $10c0

sub_1098:
        lda $1084,x
        and #$fe
        sta $1084,x
        rts

loc_10a1:
        lda $1e86,y
        sta $fa
        lda dat_1e51,y
        sta $fb
        ldy dat_1081,x
        lda ($fa),y
        bmi loc_10d2
        cmp #$60
        bcc loc_10f9

loc_10b6:
        and #$1f
        sta $108a,x
        lda #$fe
        sta dat_1031,x
        jsr sub_1098

loc_10c3:
        jmp loc_1187

dat_10c6:
        .byte $00                                   // .

// --- Region $10d2-$10dd ---
.pc = $10d2 "loc_10d2"

loc_10d2:
        cmp #$a0
        bcc loc_10ec
        and #$1f
        sta $108a,x
        bcs loc_10c3
        brk

// --- Region $10ec-$1141 ---
.pc = $10ec "loc_10ec"

loc_10ec:
        asl
        asl
        asl
        sta dat_13d9,x
        iny
        lda ($fa),y
        cmp #$60
        bcs loc_10b6

loc_10f9:
        sta $fc
        iny
        lda $10e6,x
        lsr
        lsr
        lsr
        lsr
        clc
        adc $fc
        sta $10c9,x
        sty $fc
        tay
        lda spr_1437,y
        sta $10cc,x
        sta $13e2,x
        lda dat_11c5,y
        sta $10cf,x
        sta $12b6,x
        ldy $fc
        lda ($fa),y
        sta dat_1141,x
        and #$1f
        sta $108a,x
        lda ($fa),y
        bmi loc_1150
        and #$20
        beq loc_1177
        iny
        lda ($fa),y
        sta $1147,x
        iny
        lda ($fa),y
        sta $114a,x
        jmp loc_1177

dat_1141:
        .byte $4f                                   // O

// --- Region $1150-$11c4 ---
.pc = $1150 "loc_1150"

loc_1150:
        stx smc_1262                                // SMC: modifies $1262
        iny
        lda ($fa),y
        sta smc_1266                                // SMC: modifies $1266
        and #$0f
        asl
        sec
        sbc #$10
        sta $12a0
        iny
        lda ($fa),y
        bne loc_116e
        lda #$f0
        sta $d417
        bne loc_1177

loc_116e:
        sta smc_126b                                // SMC: modifies $126b
        lda dat_12b3,x
        sta $d417

loc_1177:
        lda #$ff
        sta dat_1031,x
        sta $12b9,x
        lda #$00
        sta $10dd,x
        sta $12bd,x

loc_1187:
        iny
        lda ($fa),y
        cmp #$ff
        bne loc_11c0
        dec $10e9,x
        bpl loc_11be
        lda $14b9,x
        sta $fa
        lda $14bc,x
        sta $fb
        ldy $1087,x
        iny
        iny
        lda ($fa),y
        cmp #$ff
        bne loc_11aa
        ldy #$00

loc_11aa:
        tya
        sta $1087,x
        lda ($fa),y
        sta $108d,x
        iny
        lda ($fa),y
        sta $10e6,x
        and #$0f
        sta $10e9,x

loc_11be:
        ldy #$00

loc_11c0:
        tya
        sta dat_1081,x
        rts

// --- Region $1225-$129a ---
.pc = $1225 "sub_1225"
// Referenced by: jsr from $102b; jmp from $102e

sub_1225:
        inx
// Referenced by: jsr from $1028; jmp from $1045

sub_1226:
        ldy dat_13d9,x
        sty $fc
        lda dat_1141,x
        and #$40
        bne loc_1290
        sta $1144,x
        lda $1ebb,y
        sta $fa
        lda $1ebc,y
        ldy dat_10c6,x
        sta $d406,y
        lda $fa
        sta $d405,y
        lda $1084,x
        and #$fe
        sta $d404,y
        ldy $fc
        lda $1ebd,y
        sta $1084,x
        lda $1ebe,y
        sta $13dc,x
        sta $13df,x
.label smc_1262 = * + 1
        cpx #$00                                    // !SMC: modified by $1054, $1150
        bne loc_126f
.label smc_1266 = * + 1
        lda #$f0                                    // !SMC: modified by $1156
        sta $129e
.label smc_126b = * + 1
        lda #$01                                    // !SMC: modified by $116e
        sta smc_1296                                // SMC: modifies $1296

loc_126f:
        lda #$00
        sta $10e0,x
        sta $10e3,x
        lda $1ec0,y
        lsr
        lsr
        lsr
        sta $114d,x
        lda dat_1141,x
        ora #$40
        sta dat_1141,x
        lda $1ec2,y
        sta $fd,x
        jmp loc_1385

loc_1290:
        cpx smc_1262
        bne loc_12a7
.label smc_1296 = * + 1
        lda #$00                                    // !SMC: modified by $126c
        beq loc_12a7

dat_1299:
        .byte $ce,$96                               // ..

// --- Region $12a7-$12b3 ---
.pc = $12a7 "loc_12a7"

loc_12a7:
        lda $fd,x
        and #$0f
        beq loc_12c7
        jsr sub_13e5
        jmp loc_1322

dat_12b3:
        .byte $f1                                   // .

// --- Region $12c7-$13d8 ---
.pc = $12c7 "loc_12c7"

loc_12c7:
        lda dat_1141,x
        and #$20
        bne loc_1322
        lda $fd,x
        and #$10
        beq loc_1322
        dec $114d,x
        bpl loc_1322
        inc $114d,x
        lda $12bd,x
        and #$03
        tay
        lda $12c3,y
        bne loc_12fa
        ldy $fc
        sec
        lda $10cc,x
        sbc $1ec1,y
        sta $10cc,x
        bcs loc_130d
        dec $10cf,x
        bne loc_130d

loc_12fa:
        ldy $fc
        clc
        lda $10cc,x
        adc $1ec1,y
        sta $10cc,x
        bcc loc_130d
        inc $10cf,x
        bcs loc_130d

loc_130d:
        inc $10dd,x
        lda $1ec0,y
        and #$0f
        cmp $10dd,x
        bne loc_1322
        lda #$00
        sta $10dd,x
        inc $12bd,x

loc_1322:
        ldy $fc
        lda $1ebf,y
        sta $fc
        lda $fd,x
        and #$40
        beq loc_1343
        clc
        lda $fc
        adc $13dc,x
        sta $13dc,x
        lda $fc
        adc $13df,x
        sta $13df,x
        jmp loc_1385

loc_1343:
        lda $fd,x
        and #$20
        beq loc_1385
        lda $10e3,x
        beq loc_135e
        clc
        lda $13dc,x
        adc $fc
        sta $13dc,x
        bcc loc_136c
        inc $13df,x
        bcs loc_136c

loc_135e:
        sec
        lda $13dc,x
        sbc $fc
        sta $13dc,x
        bcs loc_136c
        dec $13df,x

loc_136c:
        inc $10e0,x
        lda $fc
        and #$0f
        cmp $10e0,x
        bne loc_1385
        lda #$00
        sta $10e0,x
        lda $10e3,x
        eor #$01
        sta $10e3,x

loc_1385:
        ldy dat_10c6,x
        lda $1084,x
        sta $d404,y
        lda $13df,x
        sta $d403,y
        lda $13dc,x
        sta $d402,y
        lda dat_1141,x
        and #$20
        beq loc_13cc
        lda $1147,x
        and #$01
        beq loc_13b2
        lda $12b9,x
        eor #$ff
        sta $12b9,x
        bne loc_13cc

loc_13b2:
        clc
        lda $13e2,x
        adc $1147,x
        sta $13e2,x
        sta $d400,y
        lda $12b6,x
        adc $114a,x
        sta $12b6,x
        sta $d401,y
        rts

loc_13cc:
        lda $10cc,x
        sta $d400,y
        lda $10cf,x
        sta $d401,y
        rts

// --- Region $13e5-$1436 ---
.pc = $13e5 "sub_13e5"
// Referenced by: jsr from $12ad

sub_13e5:
        tay
        lda $1498,y
        sta $fa
        lda $14a8,y
        sta $fb
        ldy $1144,x
        lda ($fa),y
        and dat_1031,x
        sta $1084,x
        iny
        lda ($fa),y
        bmi loc_1404
        clc
        adc $10c9,x

loc_1404:
        and #$7f
        sta smc_1429                                // SMC: modifies $1429
        iny
        lda ($fa),y
        beq loc_1411
        sta $129e

loc_1411:
        iny
        lda ($fa),y
        cmp #$fe
        bcc loc_1424
        beq loc_141e
        ldy #$00
        beq loc_1424

loc_141e:
        lda $fd,x
        and #$f0
        sta $fd,x

loc_1424:
        tya
        sta $1144,x
.label smc_1429 = * + 1
        ldy #$36                                    // !SMC: modified by $1406
        lda spr_1437,y
        sta $10cc,x
        lda dat_11c5,y
        sta $10cf,x
        rts

// --- Region $1901-$1926 ---
.pc = $1901 "$1901"
        adc ($3b,x)
        ora ($39,x)
        ora ($3b,x)
        ora ($39,x)
        ora ($61,x)
        .byte $3b,$07,$65                           // rla $6507,y // ILLEGAL
        rol $01,x
        and $3d01,y
        .byte $03,$3b                               // slo ($3b,x) // ILLEGAL
        ora ($3b,x)
        ora ($61,x)
        and $3601,y
        ora ($39,x)
        ora ($3d,x)
        .byte $03,$3b                               // slo ($3b,x) // ILLEGAL
        ora ($3b,x)
        .byte $03,$65                               // slo ($65,x) // ILLEGAL
        .byte $42                                   // jam // ILLEGAL

// --- Region $1c01-$1c01 ---
.pc = $1c01 "$1c01"
        brk

// --- Region $2301-$2308 ---
.pc = $2301 "$2301"
        .byte $ff,$ff,$ff                           // isc $ffff,x // ILLEGAL
        .byte $ff,$ff,$ff                           // isc $ffff,x // ILLEGAL

dat_2307:
        .byte $ff,$7f                               // ..

// --- Region $264c-$265a ---
.pc = $264c "Segment $264c"
        .byte $3f,$3f,$7f                           // rla $7f3f,x // ILLEGAL
        .byte $ff,$f1,$f1                           // isc $f1f1,x // ILLEGAL
        sbc ($e3,x)
        .byte $83,$07                               // sax ($07,x) // ILLEGAL
        .byte $1f,$ff,$0f                           // slo $0fff,x // ILLEGAL

dat_2659:
        .byte $87,$c3                               // ..

// --- Region $2e00-$3145 ---
.pc = $2e00 "main_2e00"

main_2e00:
        lda #$00
        sta $d020
        sta $d021
        sta $d011
        sta smc_3192                                // SMC: modifies $3192
        jsr $e544
        lda #$00
        sta smc_3215                                // SMC: modifies $3215
        lda #$35
        sta smc_3216                                // SMC: modifies $3216
        lda #$12
        sta $d018
        lda #$f7
        sta $0cb8
        clc
        adc #$38
        sta $0cb9
        lda #$c1
        sta $0cbf
        ldx #$00

loc_2e32:
        lda #$00
        sta $da00,x
        lda #$0b
        sta $d900,x
        inx
        bne loc_2e32
        ldx #$00

loc_2e41:
        lda $2e38
        sta $da00,x
        lda #$00
        sta $d800,x
        lda $2e38
        sta $d880,x
        inx
        cpx #$80
        bne loc_2e41
        ldx #$00

loc_2e59:
        lda #$00
        sta $da58,x
        sta $da80,x
        sta $da30,x
        sta $d8a0,x
        lda #$77
        sta $06d0,x
        lda #$6f
        sta $0478,x
        lda #$00
        sta $d878,x
        inx
        cpx #$28
        bne loc_2e59
        ldx #$00

loc_2e7d:
        lda txt_2d00,x
        sta $0400,x
        lda $2d78,x
        sta $06f8,x
        lda #$01
        sta $d800,x
        sta $daf8,x
        inx
        cpx #$78
        bne loc_2e7d
        lda #$0b
        sta $d022
        lda #$0c
        sta $d023
        lda #$ff
        sta $d01c
        sta $d01b
        lda #$00
        sta $0cb0
        ldx #$00
        lda #$00

loc_2eb1:
        sta $d000,x
        sta $0ca0,x
        clc
        adc #$30
        inx
        cpx #$10
        bne loc_2eb1
        lda #$2c
        sta smc_31f0                                // SMC: modifies $31f0
        lda #$a2
        sta smc_2ff4                                // SMC: modifies $2ff4
        sei
        lda #$ed
        sta $0314
        lda #$2e
        sta $0315
        lda #$01
        sta $d01a
        lda #$00
        sta $dc0e

loc_2ede:
        cmp $d012
        bne loc_2ede
        sta $d012
        jsr sub_1000
        cli

loc_2eea:
        jmp loc_2eea

irq_2eed:
        lda #$01
        sta $d019
        lda #$1a
        sta $d018
        lda #$ff
        sta $d015
        jsr sub_327a
        lda $0cb0
        sta $d010
        lda #$c8
        sta $d016
        lda $0ca0
        sta $d000
        lda $0ca2
        sta $d002
        lda $0ca4
        sta $d004
        lda $0ca6
        sta $d006
        lda $0ca8
        sta $d008
        lda $0caa
        sta $d00a
        lda $0cac
        sta $d00c
        lda $0cae
        sta $d00e
        lda #$09
        sta $d027
        sta $d028
        sta $d029
        sta $d02a
        sta $d02b
        sta $d02c
        sta $d02d
        sta $d02e
        lda #$08
        sta $d025
        lda #$0a
        sta $d026
        lda #$35
        sta $07f8
        sta $07f9
        lda #$34
        sta $07fa
        sta $07fb
        sta $07fc
        lda #$33
        sta $07fd
        sta $07fe
        sta $07ff
        lda #$00
        sta $d01d
        jsr sub_1003
        lda #$4e

loc_2f86:
        cmp $d012
        bne loc_2f86
        lda #$14
        sta $d018
        lda #$55

loc_2f92:
        cmp $d012
        bne loc_2f92
        lda #$12
        sta $d018
        lda $0ffe
        sec
        sbc #$08
        sta $d016
.label smc_2fa6 = * + 1
        ldx #$09                                    // !SMC: modified by $32d5

loc_2fa7:
        lda $d012

loc_2faa:
        cmp $d012
        beq loc_2faa
        and #$07
        ora #$18
        sta $d011
        dex
        bne loc_2fa7
        lda $d012
        clc
        adc #$48

loc_2fbf:
        cmp $d012
        bne loc_2fbf
        ldy #$30

loc_2fc6:
        dey
        bne loc_2fc6
        lda #$00
        sta $d01b
        lda #$16
        sec
        sbc smc_2fa6
        tax

loc_2fd5:
        lda $d012

loc_2fd8:
        cmp $d012
        beq loc_2fd8
        and #$07
        ora #$18
        sta $d011
        dex
        bne loc_2fd5
        lda #$1b
        sta $d011
        ldy #$20

loc_2fee:
        dey
        bne loc_2fee
        lda $0ffd

smc_2ff4:
.label smc_2ff5 = * + 1
        ldx #$07                                    // !SMC: modified by $2ec6, $3223, $3228, $3239, $3254
        sta $d016
        lda #$18
        sta $d018
        lda #$bc

loc_3000:
        cmp $d012
        bne loc_3000
        jsr sub_3100
        lda #$ff
        sta $d015
        sta $d01d
        lda $0cbf
        sta $d010
        lda $0cb8
        sta $d000
        lda $0cb9
        sta $d002
        lda $0cb8
        clc
        adc #$68
        sta $d004
        clc
        adc #$30
        sta $d006
        clc
        adc #$30
        sta $d008
        clc
        adc #$30
        sta $d00a
        clc
        adc #$30
        sta $d00c
        pha
        clc
        sbc #$01
        bcs loc_3051
        lda $0cbf
        and #$bf
        sta $0cbf

loc_3051:
        pla
        clc
        adc #$30
        sta $d00e
        lda #$00
        sta $d021
        lda #$ff
        sta $d01b
        lda #$37
        sta $07f8
        sta $07f9
        sta $07fa
        sta $07fb
        sta $07fc
        sta $07fd
        sta $07fe
        sta $07ff
        lda #$c0
        sta $d001
        sta $d003
        sta $d005
        sta $d007
        sta $d009
        sta $d00b
        sta $d00d
        sta $d00f
        lda #$08
        sta $d027
        sta $d028
        sta $d029
        sta $d02a
        sta $d02b
        sta $d02c
        sta $d02d
        sta $d02e
        lda #$09
        sta $d025
        lda #$05
        sta $d026
        lda #$d8

loc_30bc:
        cmp $d012
        bne loc_30bc
        lda #$c8
        sta $d016
        lda #$14
        sta $d018
        lda $dc01
        cmp #$ef
        bne loc_30d5
        jmp loc_34a3

loc_30d5:
        lda #$e2

loc_30d7:
        cmp $d012
        bne loc_30d7
        ldy #$0a

loc_30de:
        dey
        bne loc_30de
        lda #$1a
        sta $d018
        lda #$c8
        sta $d016
        jsr sub_31df
        jsr sub_3449
        jsr sub_3139

smc_30f4:
        bit scr_3146                                // !SMC: modified by $3142
        jsr sub_3177
        jsr sub_3177
        jmp $ea81
// Referenced by: jsr from $3005

sub_3100:
        lda $0cb9
        sec
        sbc #$03
        sta $0cb9
        bcs loc_3118
        lda $0cbf
        ora #$02
        sta $0cbf
        lda #$f7
        sta $0cb9

loc_3118:
        lda $0cb8
        sec
        sbc #$03
        sta $0cb8
        lda $0cb8
        cmp #$c7
        bne loc_3138
        lda #$f7
        sta $0cb8
        clc
        adc #$38
        sta $0cb9
        lda #$c1
        sta $0cbf

loc_3138:
        rts
// Referenced by: jsr from $30f1

sub_3139:
        lda $0fff
        cmp #$50
        bne loc_3145
        lda #$20
        sta smc_30f4                                // SMC: modifies $30f4

loc_3145:
        rts

// --- Region $3177-$31ae ---
.pc = $3177 "sub_3177"
// Referenced by: jsr from $30f7, $30fa

sub_3177:
        ldx #$26

loc_3179:
        lda $dad0,x
        sta $dad1,x
        dex
        cpx #$ff
        bpl loc_3179
        ldx #$00

loc_3186:
        lda $d879,x
        sta $d878,x
        inx
        cpx #$28
        bne loc_3186
.label smc_3192 = * + 1
        ldx #$00                                    // !SMC: modified by $2e0b, $31ab
        lda scr_31af,x
        sta $d89f
        lda scr_31af,x
        sta $dad0
        inc smc_3192
        lda smc_3192
        cmp #$30
        bne loc_31ae
        lda #$00
        sta smc_3192                                // SMC: modifies $3192

loc_31ae:
        rts

// --- Region $31df-$34d5 ---
.pc = $31df "sub_31df"
// Referenced by: jsr from $30eb

sub_31df:
        lda $0ffd
        sec
        sbc #$04
        sta $0ffd
        bmi loc_31eb
        rts

loc_31eb:
        lda #$07
        sta $0ffd

smc_31f0:
        bit $3206                                   // !SMC: modified by $2ec1, $321d, $3234, $324f
        ldx #$00

loc_31f5:
        lda $0659,x
        sta $0658,x
        lda $0681,x
        sta $0680,x
        inx
        cpx #$28
        bne loc_31f5
        dec $0ffc
        lda $0ffc
        bmi loc_320f
        rts

loc_320f:
        lda #$01
        sta $0ffc
.label smc_3215 = * + 1
.label smc_3216 = * + 2
        lda $3512                                   // !SMC: modified by $2e13, $2e18, $3245, $324a
        cmp #$23
        bne loc_322e
        ldy #$4c
        sty smc_31f0                                // SMC: modifies $31f0
        ldy $0ffd
        sty smc_2ff5                                // SMC: modifies $2ff5
        ldy #$a9
        sty smc_2ff4                                // SMC: modifies $2ff4
        jmp loc_326c

loc_322e:
        cmp #$25
        bne loc_323f
        ldy #$2c
        sty smc_31f0                                // SMC: modifies $31f0
        ldy #$a2
        sty smc_2ff4                                // SMC: modifies $2ff4
        jmp loc_326c

loc_323f:
        cmp #$00
        bne loc_3257
        ldy #$00
        sty smc_3215                                // SMC: modifies $3215
        ldy #$35
        sty smc_3216                                // SMC: modifies $3216
        ldy #$2c
        sty smc_31f0                                // SMC: modifies $31f0
        ldy #$a2
        sty smc_2ff4                                // SMC: modifies $2ff4

loc_3257:
        sta $067e
        clc
        adc #$40
        sta $067f
        clc
        adc #$40
        sta $06a6
        clc
        adc #$40
        sta $06a7

loc_326c:
        inc smc_3215
        lda smc_3215
        cmp #$00
        bne loc_3279
        inc smc_3216

loc_3279:
        rts
// Referenced by: jsr from $2efc

sub_327a:
        ldx $0fff
        lda $0f00,x
        lsr
        lsr
        clc
        adc #$70
        sta $d00b
        lda $0f10,x
        lsr
        lsr
        clc
        adc #$80
        sta $d00d
        lda $0f20,x
        lsr
        lsr
        clc
        adc #$90
        sta $d00f
        lda $0f08,x
        lsr
        clc
        adc #$68
        sta $d005
        lda $0f28,x
        lsr
        clc
        adc #$78
        sta $d007
        lda $0f48,x
        lsr
        clc
        adc #$88
        sta $d009
        lda $0f10,x
        clc
        adc #$60
        sta $d001
        lda $0f30,x
        clc
        adc #$70
        sta $d003
        lda $0f20,x
        lsr
        clc
        adc #$01
        sta smc_2fa6                                // SMC: modifies $2fa6
        lda $0cb0
        and #$01
        beq loc_32f3
        lda $0ca0
        cmp #$60
        bmi loc_32f3
        lda $0cb0
        and #$fe
        sta $0cb0
        lda #$10
        sta $0ca0

loc_32f3:
        lda $0ca0
        clc
        adc #$03
        sta $0ca0
        bcc loc_3306
        lda $0cb0
        ora #$01
        sta $0cb0

loc_3306:
        lda $0cb0
        and #$02
        beq loc_3321
        lda $0ca2
        cmp #$60
        bmi loc_3321
        lda $0cb0
        and #$fd
        sta $0cb0
        lda #$10
        sta $0ca2

loc_3321:
        lda $0ca2
        clc
        adc #$03
        sta $0ca2
        bcc loc_3334
        lda $0cb0
        ora #$02
        sta $0cb0

loc_3334:
        lda $0cb0
        and #$04
        beq loc_334f
        lda $0ca4
        cmp #$60
        bmi loc_334f
        lda $0cb0
        and #$fb
        sta $0cb0
        lda #$10
        sta $0ca4

loc_334f:
        lda $0ca4
        clc
        adc #$02
        sta $0ca4
        bcc loc_3362
        lda $0cb0
        ora #$04
        sta $0cb0

loc_3362:
        lda $0cb0
        and #$08
        beq loc_337d
        lda $0ca6
        cmp #$60
        bmi loc_337d
        lda $0cb0
        and #$f7
        sta $0cb0
        lda #$10
        sta $0ca6

loc_337d:
        lda $0ca6
        clc
        adc #$02
        sta $0ca6
        bcc loc_3390
        lda $0cb0
        ora #$08
        sta $0cb0

loc_3390:
        lda $0cb0
        and #$10
        beq loc_33ab
        lda $0ca8
        cmp #$60
        bmi loc_33ab
        lda $0cb0
        and #$ef
        sta $0cb0
        lda #$10
        sta $0ca8

loc_33ab:
        lda $0ca8
        clc
        adc #$02
        sta $0ca8
        bcc loc_33be
        lda $0cb0
        ora #$10
        sta $0cb0

loc_33be:
        lda $0cb0
        and #$20
        beq loc_33d9
        lda $0caa
        cmp #$60
        bmi loc_33d9
        lda $0cb0
        and #$df
        sta $0cb0
        lda #$10
        sta $0caa

loc_33d9:
        lda $0caa
        clc
        adc #$01
        sta $0caa
        bcc loc_33ec
        lda $0cb0
        ora #$20
        sta $0cb0

loc_33ec:
        lda $0cb0
        and #$40
        beq loc_3407
        lda $0cac
        cmp #$60
        bmi loc_3407
        lda $0cb0
        and #$bf
        sta $0cb0
        lda #$10
        sta $0cac

loc_3407:
        lda $0cac
        clc
        adc #$01
        sta $0cac
        bcc loc_341a
        lda $0cb0
        ora #$40
        sta $0cb0

loc_341a:
        lda $0cb0
        and #$80
        beq loc_3435
        lda $0cae
        cmp #$60
        bmi loc_3435
        lda $0cb0
        and #$7f
        sta $0cb0
        lda #$10
        sta $0cae

loc_3435:
        lda $0cae
        clc
        adc #$01
        sta $0cae
        bcc loc_3448
        lda $0cb0
        ora #$80
        sta $0cb0

loc_3448:
        rts
// Referenced by: jsr from $30ee

sub_3449:
        ldy $0fff
        lda $0e80,y
        sta $0ffe
        ldx $0e00,y
        ldy #$00

loc_3457:
        lda $2a00,x
        sta $04c8,y
        lda $2a50,x
        sta $04f0,y
        lda $2aa0,x
        sta $0518,y
        lda $2af0,x
        sta $0540,y
        lda spr_2b40,x
        sta $0568,y
        lda $2b90,x
        sta $0590,y
        lda $2be0,x
        sta $05b8,y
        lda $2c30,x
        sta $05e0,y
        lda $2c80,x
        sta $0608,y
        iny
        inx
        cpy #$28
        bne loc_3457
        inc $0fff
        lda $0fff
        cmp #$80
        bne loc_34a2
        lda #$00
        sta $0fff

loc_34a2:
        rts

loc_34a3:
        sei
        lda #$31
        sta $0314
        lda #$ea
        sta $0315
        jsr $fd15
        jsr $ff81
        lda #$00
        sta $d020
        sta $d021
        sta $d418
        lda #$1b
        sta $d011
        cli
        ldx #$00

loc_34c7:
        lda scr_34d5,x
        sta $0100,x
        inx
        cpx #$28
        bne loc_34c7
        jmp $0100

scr_34d5:
        // === Screen RAM (1 bytes, $34d5-$34d5) ===
        .byte $78                                   // scrcode: .

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

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

spr_0800:
        // === Screen RAM (1024 bytes, $0800-$0bff) ===
        .encoding "screencode_mixed"
        .fill 10, $00                               // scrcode: @@@@@@@@@@
        .byte $ff,$c5,$c6,$c9,$d6,$ca               // scrcode: ......
        .text "@@"
        .byte $f7,$97,$67,$a7,$a7,$b7               // scrcode: ......
        .text "@@"
        .byte $ff                                   // scrcode: .
        .text "vy&"
        .byte $5a                                   // scrcode: .
        .text "*@@"
        .byte $df,$5c,$9c,$9c,$9d,$dc               // scrcode: ......
        .text "@@"
        .byte $ff,$59,$66,$9a,$6a,$ab               // scrcode: ......
        .text "@@"
        .byte $7f,$71,$71,$72,$75,$72               // scrcode: ......
        .text "@@"
        .byte $fd,$65,$99,$69,$a9,$ad               // scrcode: ......
        .encoding "petscii_upper"

spr_0840:
        .encoding "screencode_mixed"
        .text "@@cccccc@@"
        .encoding "petscii_upper"

txt_084a:
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $da                                   // 'Z' | $80 (end-of-string marker)
        .encoding "screencode_mixed"
        .byte $db,$de,$eb,$d5                       // scrcode: ....
        .text "@@@"
        .byte $e7,$b7,$f7,$f7,$57                   // scrcode: .....
        .text "@@@"
        .byte $6b,$6e,$7b,$af,$55                   // scrcode: .....
        .text "@@@"
        .byte $9d,$dd,$dd,$de,$5d                   // scrcode: .....
        .text "@@@"
        .byte $ae,$bb,$ef,$bf,$55                   // scrcode: .....
        .text "@@@"
        .byte $76                                   // scrcode: .
        .byte $76,$77,$7a,$75                       // scrcode: ....
        .encoding "petscii_upper"

txt_087d:
        .text "?11"
        .byte $b9                                   // '9' | $80 (end-of-string marker)
        .encoding "screencode_mixed"
        .byte $ed,$bd,$fd,$55,$fd,$65,$99,$da,$db,$de,$eb,$d5,$ff,$c5,$c6,$e7 // scrcode: ................
        .byte $b7,$f7,$f7,$57,$f4,$94,$64,$76,$76,$77,$7a,$75 // scrcode: ............
        .text "@@@"
        .byte $b9,$ed,$bd,$fd,$55                   // scrcode: .....
        .text "@@@c"
        .text "cccc@@@"
        .encoding "petscii_upper"

txt_08b0:
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .text "?11"
        .byte $00                                   // string terminator
        .encoding "screencode_mixed"
        .text "@@@@"
        .byte $fd,$65,$99                           // scrcode: ...
        .text "cccccccc"
        .byte $6b,$6e,$7b,$af,$55,$ff               // scrcode: ......
        .text "vy"
        .byte $9d,$dd,$dd,$de,$5d,$df,$5c,$9c,$ae,$bb,$ef,$bf,$55,$ff,$59,$66 // scrcode: ................
        .encoding "petscii_upper"

txt_08e0:
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .text "252667:5"
        .encoding "screencode_mixed"
        .byte $69,$a9,$ad,$b9,$ed,$bd,$fd,$55,$c9,$d6,$ca,$da,$db,$de,$eb,$d5 // scrcode: ................
        .byte $a4,$a4,$b4,$e4,$b4,$f4,$f4,$54       // scrcode: ........
        .text "&"
        .byte $5a                                   // scrcode: .
        .text "*"
        .byte $6b,$6e,$7b,$af,$55,$9c,$9d,$dc,$9d,$dd,$dd,$de,$5d // scrcode: .............
        .byte $9a,$6a,$ab,$ae,$bb,$ef,$bf           // scrcode: .......
        .encoding "petscii_upper"

txt_091f:
        .text "U?1125266"
        .encoding "screencode_mixed"
        .byte $fd,$65,$99,$69,$a9,$ad,$b9,$ed,$ff,$c5,$c6,$c9,$d6,$ca,$da,$db // scrcode: ................
        .byte $f4,$94,$64,$a4,$a4,$b4,$e4,$b4,$ff   // scrcode: .........
        .text "vy&"
        .byte $5a                                   // scrcode: .
        .text "*"
        .byte $6b,$6e,$df,$5c,$9c,$9c,$9d,$dc,$9d,$dd // scrcode: ..........
        .byte $ff,$59,$66,$9a,$6a,$ab,$ae,$bb       // scrcode: ........
        .encoding "petscii_upper"

txt_0958:
        .text "7:5?1125"
        .byte $bd                                   // '=' | $80 (end-of-string marker)
        .encoding "screencode_mixed"
        .byte $fd,$55,$fd,$65,$99,$69,$a9,$de,$eb,$d5,$ff,$c5,$c6,$c9,$d6,$f4 // scrcode: ................
        .byte $f4,$54,$f4,$94,$64,$a4,$a4,$7b,$af,$55,$ff // scrcode: ...........
        .text "vy&"
        .byte $5a,$dd,$de,$5d,$df,$5c,$9c,$9c,$9d,$ef // scrcode: ..........
        .byte $bf,$55,$ff,$59,$66,$9a,$6a,$40,$40,$40,$7f,$71,$71,$72,$75 // scrcode: ...............
        .text "@@@"
        .byte $fd,$65,$99,$69,$a9                   // scrcode: .....
        .text "@@@"
        .byte $ff,$c5,$c6,$c9,$d6                   // scrcode: .....
        .text "@@@"
        .byte $f7,$97,$67,$a7,$a7                   // scrcode: .....
        .text "@"
        .text "@@"
        .byte $ff                                   // scrcode: .
        .text "vy&"
        .byte $5a                                   // scrcode: .
        .text "@@@"
        .byte $d0,$50,$90,$90,$90                   // scrcode: .....
        .encoding "petscii_upper"

spr_09c0:
        .encoding "screencode_mixed"
        .text "7:5@@@@@"
        .byte $bd,$fd,$55                           // scrcode: ...
        .text "@@@@@@@@olllm@@@"
        .byte $ff,$59,$66,$9a,$6a                   // scrcode: .....
        .encoding "petscii_upper"

txt_09e0:
        .text "2667:5?1"
        .byte $ad                                   // '-' | $80 (end-of-string marker)
        .encoding "screencode_mixed"
        .byte $b9,$ed,$bd,$fd,$55,$fd,$65,$ca,$da,$db,$de,$eb,$d5,$ff,$c5,$b4 // scrcode: ................
        .byte $e4,$b4,$f4,$f4,$54,$f4,$94           // scrcode: .......
        .text "*"
        .byte $6b,$6e,$7b,$af,$55,$ff               // scrcode: ......
        .text "v"
        .byte $dc,$9d,$dd,$dd,$de,$5d,$df,$5c,$ab   // scrcode: .........
        .byte $ae,$bb,$ef,$bf,$55,$ff,$59,$72,$76,$76,$77,$7a,$75 // scrcode: .............
        .encoding "petscii_upper"

txt_0a1e:
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $ad                                   // '-' | $80 (end-of-string marker)
        .encoding "screencode_mixed"
        .byte $b9,$ed,$bd,$fd,$55                   // scrcode: .....
        .text "@@"
        .byte $ca,$da,$db,$de,$eb,$d5               // scrcode: ......
        .text "@@"
        .byte $b7,$e7,$b7,$f7,$f7,$57               // scrcode: ......
        .text "cc"
        .byte $d0,$90,$d0,$d0,$d0,$50,$df,$5c       // scrcode: ........
        .encoding "petscii_upper"

spr_0a40:
        .encoding "screencode_mixed"
        .text "@@@@@@"
        .byte $ff,$59                               // scrcode: ..
        .text "@@@@@@"
        .byte $40,$40                               // scrcode: ..
        .text "@@@@@@cc@@@@@@"
        .byte $ff                                   // scrcode: .
        .text "vlmmmnm"
        .byte $df                                   // scrcode: .
        .encoding "petscii_upper"

txt_0a67:
        .byte $5c                                   // backslash character
        .text "1252667:"
        .encoding "screencode_mixed"
        .byte $99,$69,$a9,$ad,$b9,$ed,$bd,$fd,$c6,$c9,$d6,$ca,$da,$db,$de,$eb // scrcode: ................
        .byte $64,$a4,$a4,$b4,$e4,$b4,$f4,$f4       // scrcode: ........
        .text "y&"
        .byte $5a                                   // scrcode: .
        .text "*"
        .byte $6b,$6e,$7b,$af,$9c,$9c,$9d,$dc,$9d,$dd,$dd,$de // scrcode: ............
        .byte $66,$9a,$6a,$ab,$ae,$bb,$ef,$bf       // scrcode: ........
        .encoding "petscii_upper"

txt_0aa0:
        .text "5?112526U"
        .encoding "screencode_mixed"
        .byte $fd,$65,$99,$69,$a9,$ad,$b9,$d5,$ff,$c5,$c6,$c9,$d6,$ca,$da,$54 // scrcode: ................
        .byte $f4,$94,$64,$a4,$a4,$b4,$e4,$55,$ff   // scrcode: .........
        .text "vy&"
        .byte $5a                                   // scrcode: .
        .text "*"
        .byte $6b,$5d,$df,$5c,$9c,$9c,$9d,$dc,$9d,$55 // scrcode: ..........
        .byte $ff,$59,$66,$9a,$6a,$ab,$ae           // scrcode: .......
        .text "c@@@@@@@"
        .byte $55                                   // scrcode: .
        .text "@@@@@@@"
        .byte $5d                                   // scrcode: .
        .text "@@@@@@@"
        .encoding "petscii_upper"

txt_0af0:
        .byte $40                                   // @ character
        .text "?112526"
        .byte $00                                   // string terminator
        .encoding "screencode_mixed"
        .byte $fd,$65,$99,$69,$a9,$ad,$b9           // scrcode: .......
        .text "@"
        .byte $ff,$c5,$c6,$c9,$d6,$ca,$da           // scrcode: .......
        .text "c"
        .byte $f7,$97,$67,$a7,$a7,$b7,$e7           // scrcode: .......
        .encoding "petscii_upper"

txt_0b10:
        .text "67:5"
        .byte $00                                   // string terminator
        .encoding "screencode_mixed"
        .text "@@@"
        .byte $ed,$bd,$fd,$55                       // scrcode: ....
        .text "@@@@"
        .byte $db,$de,$eb,$d5                       // scrcode: ....
        .text "@@@@"
        .byte $b4,$f4,$f4,$54                       // scrcode: ....
        .text "@@@@cccc@@@@"
        .byte $6e,$7b,$af,$55                       // scrcode: ....
        .text "@"
        .text "@@@"
        .byte $dd,$dd,$de,$5d                       // scrcode: ....
        .text "@@@@"
        .byte $bb,$ef,$bf,$55                       // scrcode: ....
        .text "@@@@"
        .encoding "petscii_upper"

txt_0b50:
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $00                                   // string terminator
        .encoding "screencode_mixed"
        .text "@@@"
        .byte $b7,$f7,$f7,$57                       // scrcode: ....
        .text "@@@@@@"
        .byte $d0,$50,$90,$90,$90,$d0               // scrcode: ......
        .text "@@@@@"
        .byte $ff,$c5,$c6                           // scrcode: ...
        .text "ccccc"
        .byte $f7,$97,$67,$90,$d0,$d0,$d0,$50       // scrcode: ........
        .byte $df,$5c,$9c                           // scrcode: ...
        .text "@@@@@"
        .byte $ff,$59,$66                           // scrcode: ...
        .text "@@@@@"
        .encoding "petscii_upper"

txt_0b8d:
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $a7                                   // ''' | $80 (end-of-string marker)
        .encoding "screencode_mixed"
        .byte $a7,$b7,$e7,$b7,$f7,$f7,$57           // scrcode: .......
        .text "olllmlmm"
        .byte $7f,$71,$71,$72,$75,$72,$76,$76,$f7,$97,$67,$a7,$a7,$b7,$e7,$b7 // scrcode: ................
        .byte $d0,$50,$90,$90,$90,$d0,$90,$d0       // scrcode: ........
        .text "7"
        .text ":5"
        .byte $7f,$71,$71,$72,$75,$de,$eb,$d5       // scrcode: ........
        .text "@@@@@"
        .byte $f4,$f4,$54                           // scrcode: ...
        .text "@@@@@mnm@@@@@"
        .byte $ef,$bf,$55                           // scrcode: ...
        .text "@@@@@"
        .byte $77                                   // scrcode: .
        .byte $7a,$75                               // scrcode: ..
        .encoding "petscii_upper"

txt_0be3:
        .text "?1125"
        .byte $00                                   // string terminator
        .encoding "screencode_mixed"
        .text "@@"
        .byte $f4,$94,$64,$a4,$a4,$f7,$f7,$57,$f7,$97,$67,$a7,$a7,$d0,$d0,$50 // scrcode: ................
        .byte $d0,$50,$90,$90,$90                   // scrcode: .....
        .encoding "petscii_upper"

spr_0c00:
        .text "2667:5"
        .byte $00                                   // string terminator
        .encoding "screencode_mixed"
        .text "@"
        .byte $b4,$e4,$b4,$f4,$f4,$54,$f7,$97       // scrcode: ........
        .text "@@@@@@"
        .byte $d0,$50,$b7,$e7,$b7,$f7,$f7,$57,$f7,$97,$d0,$90,$d0,$d0,$d0,$50 // scrcode: ................
        .byte $d0,$50,$67,$a7,$a7,$b7,$e7,$b7,$f7   // scrcode: .........
        .byte $f7,$90,$90,$90,$d0,$90,$d0,$d0,$d0,$40,$7f,$71,$71,$72,$75,$72 // scrcode: ................
        .byte $76                                   // scrcode: .
        .text "@"
        .byte $f7,$97,$67,$a7,$a7,$b7,$e7           // scrcode: .......
        .text "@"
        .byte $ff                                   // scrcode: .
        .text "vy&"
        .byte $5a                                   // scrcode: .
        .text "*"
        .byte $6b                                   // scrcode: .
        .text "@"
        .byte $df,$5c,$9c,$9c,$9d,$dc               // scrcode: ......
        .byte $9d                                   // scrcode: .
        .text "@"
        .byte $ff,$59,$66,$9a,$6a,$ab,$ae           // scrcode: .......
        .text "@"
        .byte $7f,$71,$71,$72,$75,$72,$76,$57,$f7,$97,$67,$a7,$a7,$b7,$e7,$50 // scrcode: ................
        .byte $df,$5c,$9c,$9c,$9d,$dc,$9d           // scrcode: .......
        .text "@"
        .encoding "petscii_upper"

txt_0c79:
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .text "5"
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .encoding "screencode_mixed"
        .byte $76,$77,$7a,$75                       // scrcode: ....
        .text "@@@@@@@@@@@@@@@@@@@@"
        .byte $db                                   // scrcode: .
        .text "0;"
        .byte $90,$52,$f0,$b2,$50                   // scrcode: .....
        .text "r"
        .byte $b0                                   // scrcode: .
        .text ")p"
        .byte $89,$70,$e9,$d0                       // scrcode: ....
        .text "6@@n@@@@"
        .byte $df                                   // scrcode: .
        .text "w@@@@@"
        .byte $c1                                   // scrcode: .
        .encoding "petscii_upper"

spr_0cc0:
        .encoding "screencode_mixed"
        .text "@"
        .encoding "petscii_upper"

// --- Region $0cd9-$0ce5 ---
.pc = $0cd9 "dat_0cd9"

dat_0cd9:
        .encoding "screencode_mixed"
        .byte $98                                   // scrcode: .
        .text "@@"
        .byte $74                                   // scrcode: .
        .text "@@"
        .byte $74                                   // scrcode: .
        .text "@@"
        .byte $74                                   // scrcode: .
        .text "@@"
        .byte $98                                   // scrcode: .
        .encoding "petscii_upper"

// --- Region $0cff-$0d6f ---
.pc = $0cff "dat_0cff"

dat_0cff:
        .byte $6f                                   // scrcode: .

spr_0d00:
        .encoding "screencode_mixed"
        .fill 19, $00                               // scrcode: @@@@@@@@@@@@@@@@@@@
        .text " @@"
        .byte $a8                                   // scrcode: .
        .text "@@"
        .byte $98                                   // scrcode: .
        .text "@b"
        .byte $76                                   // scrcode: .
        .text "@b"
        .byte $76                                   // scrcode: .
        .text "@b"
        .byte $76                                   // scrcode: .
        .text "@@"
        .byte $98                                   // scrcode: .
        .text "@@"
        .byte $a8                                   // scrcode: .
        .text "@@ @@@@@@@@@@@@@@@"
        .text "@@@@"
        .byte $ff                                   // scrcode: .
        .encoding "petscii_upper"

spr_0d40:
        .encoding "screencode_mixed"
        .fill 16, $00                               // scrcode: @@@@@@@@@@@@@@@@
        .byte $a8                                   // scrcode: .
        .text "@b"
        .byte $aa                                   // scrcode: .
        .text "@b"
        .byte $56                                   // scrcode: .
        .text "@j"
        .byte $56,$80                               // scrcode: ..
        .text "i"
        .byte $75,$80                               // scrcode: ..
        .text "i"
        .byte $fd,$80                               // scrcode: ..
        .text "i"
        .byte $75,$80                               // scrcode: ..
        .text "j"
        .byte $56,$80                               // scrcode: ..
        .text "b"
        .byte $56                                   // scrcode: .
        .text "@b"
        .byte $aa                                   // scrcode: .
        .text "@@"
        .byte $a8                                   // scrcode: .
        .encoding "petscii_upper"

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

// --- Region $0dc0-$0fff ---
.pc = $0dc0 "spr_0dc0"

spr_0dc0:
        .encoding "screencode_mixed"
        .byte $59,$bb,$ba,$6a,$ae,$ee,$9b,$af,$aa,$aa,$fe,$e5,$bb,$ba,$a5,$af // scrcode: ................
        .byte $ee,$55,$be,$aa,$5a,$ee,$65,$66,$ba,$99,$9b,$ea,$66,$ae,$a9,$59 // scrcode: ................
        .byte $ab,$9a,$66,$ee,$a5,$ab,$be,$56       // scrcode: ........
        .byte $6e,$ea,$96,$af,$a9,$6a,$fe,$e6,$9b,$ba,$a9,$6b,$ee,$66,$bf,$a9 // scrcode: ................
        .byte $99,$be,$e6,$55,$ee,$a9,$95,$df       // scrcode: ........
        .text "@@@@@@@aaabbcdde"
        .text "efghiijklmnopqrstuvwxyz"
        .byte $1b,$1c,$1d,$1e,$1f                   // scrcode: .....
        .encoding "petscii_upper"

txt_0e2c:
        .text "  !"
        .byte $22                                   // double quote character
        .text "##$%%&&'''((((((((((((('''&&%%$##"
        .byte $22                                   // double quote character
        .text "! "
        .encoding "screencode_mixed"
        .byte $1f,$1e,$1e,$1d,$1c,$1b               // scrcode: ......
        .text "zyxwvutsrqponmlkjihggfeddccbbaa@@@"
        .text "@@@@"
        .byte $1f,$1f,$1f,$1e,$1d,$1b               // scrcode: ......
        .text "y"
        .byte $1e,$1c                               // scrcode: ..
        .text "x"
        .byte $1d                                   // scrcode: .
        .text "x"
        .byte $1c,$1f                               // scrcode: ..
        .text "z"
        .byte $1d                                   // scrcode: .
        .text "xz"
        .byte $1b,$1d,$1e                           // scrcode: ...
        .text "xxyyyzzzyyz"
        .byte $1b,$1c,$1c,$1b                       // scrcode: ....
        .byte $1b,$1c,$1c,$1c,$1c,$1d,$1d,$1f,$1f   // scrcode: .........
        .text "yz"
        .byte $1c,$1f                               // scrcode: ..
        .text "x"
        .byte $1b,$1e                               // scrcode: ..
        .text "z"
        .byte $1d                                   // scrcode: .
        .text "y"
        .byte $1f,$1b                               // scrcode: ..
        .text "x"
        .byte $1e,$1c                               // scrcode: ..
        .text "zyyyyyyz"
        .byte $1b,$1c,$1e                           // scrcode: ...
        .text "x"
        .byte $1c,$1f,$1b,$1e                       // scrcode: ....
        .text "z"
        .byte $1f,$1c                               // scrcode: ..
        .text "z"
        .byte $1f,$1d,$1c                           // scrcode: ...
        .text "zxx"
        .byte $1f,$1e,$1e,$1d,$1d,$1d,$1d,$1c,$1d,$1d,$1e,$1e,$1d,$1e,$1e,$1e // scrcode: ................
        .byte $1d,$1d,$1d,$1c,$1c,$1b               // scrcode: ......
        .text "zy"
        .byte $1f,$1d,$1b                           // scrcode: ...
        .text "x"
        .byte $1d                                   // scrcode: .
        .text "z"
        .byte $1f,$1b,$1f                           // scrcode: ...
        .text "z"
        .byte $1d                                   // scrcode: .
        .text "xz"
        .byte $1d,$1e,$1f,$1f,$1f                   // scrcode: .....
        .text "@@@@@@@aaabbcddeefghiijklmno"
        .text "pqrstuvwxyz"
        .byte $1b,$1c,$1d,$1e,$1f                   // scrcode: .....
        .encoding "petscii_upper"

txt_0f2c:
        .text "  !"
        .byte $22                                   // double quote character
        .text "##$%%&&'''((((((((((((('''&&%%$##"
        .byte $22                                   // double quote character
        .text "! "
        .encoding "screencode_mixed"
        .byte $1f,$1e,$1e,$1d,$1c,$1b               // scrcode: ......
        .text "zyxwvutsrqponmlkjihggfeddccbbaa@@@"
        .fill 11, $00                               // scrcode: @@@@@@@@@@@
        .text "aaabbcddeefghiijklmnopqrstuvwxyz"
        .byte $1b,$1c,$1d,$1e,$1f                   // scrcode: .....
        .encoding "petscii_upper"

txt_0fac:
        .text "  !"
        .byte $22                                   // double quote character
        .text "##$%%&&'''((((((((((((('''&&%%$##"
        .byte $22                                   // double quote character
        .text "! "
        .encoding "screencode_mixed"
        .byte $1f,$1e,$1e,$1d,$1c,$1b               // scrcode: ......
        .text "zyxwvutsrqponmlkjihggfeddccbbaa@@@"
        .text "ag"
        .byte $1e,$7d                               // scrcode: ..
        .encoding "petscii_upper"

// --- Region $1007-$1020 ---
.pc = $1007 "Segment $1007"
        .text "MUSIC BY IRON CA"
        .text "T OF TRC!-"

// --- Region $1081-$1090 ---
.pc = $1081 "dat_1081"

dat_1081:
        .byte $00,$06,$00,$00,$41,$00,$02,$00,$00,$0d,$0d,$0d,$02,$01,$00,$03 // ....A...........

// --- Region $10c7-$10d1 ---
.pc = $10c7 "Segment $10c7"
        .byte $07,$0e,$30,$36,$30,$68,$9c,$68,$11,$18,$11 // ..060h.h...

// --- Region $10de-$10eb ---
.pc = $10de "dat_10de"

dat_10de:
        .fill 10, $00
        .byte $02,$00,$00,$00                       // ....

// --- Region $1142-$114f ---
.pc = $1142 "Segment $1142"
        .byte $4f,$4f,$00,$03,$00,$26,$40,$40,$0b,$ff,$ff,$00,$00,$00 // OO...&@@......

// --- Region $11c5-$1224 ---
.pc = $11c5 "dat_11c5"

dat_11c5:
        .fill 11, $01
        .byte $02,$02,$02,$02,$02,$02,$02,$03,$03,$03,$03,$03,$04,$04,$04,$04 // ................
        .byte $05,$05,$05,$06,$06,$06,$07,$07,$08,$08,$09,$09,$0a,$0a,$0b,$0c // ................
        .byte $0d,$0d,$0e,$0f,$10,$11,$12,$13,$14,$15,$17,$18,$1a,$1b,$1d,$1f // ................

txt_1200:
        .text " "
        .byte $22                                   // double quote character
        .text "$')+.147:>AEINRW"
        .byte $5c                                   // backslash character
        .byte $62,$68,$6e,$75,$7c,$83,$8b,$93,$9c,$a5,$af,$b9,$c4,$d0,$dd,$ea // bhnu|...........
        .byte $f8,$fd                               // ..

// --- Region $129b-$12a6 ---
.pc = $129b "Segment $129b"
        .byte $12,$18,$a9,$e0,$69,$f0,$8d,$9e,$12,$8d,$16,$d4 // ....i.......

// --- Region $12b4-$12c6 ---
.pc = $12b4 "Segment $12b4"
        .byte $f3,$f7,$11,$18,$11,$ff,$ff,$ff,$00,$00,$00,$00 // ............

spr_12c0:
        // === Sprite data (7 bytes, $12c0-$12c6) ===
        .byte $00,$00,$00                           // ........................
        .byte $00,$01,$01                           // ...............#.......#
        .byte $00

// --- Region $13d9-$13e4 ---
.pc = $13d9 "dat_13d9"

dat_13d9:
        .byte $e8,$28,$e8,$08,$e6,$08,$08,$e6,$08,$68,$9c,$68 // .(.......h.h

// --- Region $1437-$1900 ---
.pc = $1437 "spr_1437"

spr_1437:
        // === Screen RAM (969 bytes, $1437-$17ff) ===
        .encoding "screencode_mixed"
        .text "v'8"
        .byte $4b,$5f,$73,$8a,$a1,$ba,$d4,$f0       // scrcode: ........
        .text "n-"
        .byte $4e,$71,$96,$bd,$e7                   // scrcode: .....
        .text "s"
        .byte $42,$74,$a9,$e0,$1b,$5a,$9b,$e2       // scrcode: ........
        .text ","
        .byte $7b,$ce                               // scrcode: ..
        .text "'"
        .byte $85,$e8,$51,$c1                       // scrcode: ....
        .text "7"
        .byte $b4                                   // scrcode: .
        .text "7"
        .byte $c4,$57                               // scrcode: ..
        .byte $f5,$9c,$4e                           // scrcode: ...
        .text "i"
        .byte $d0,$a3,$82,$6e,$68,$6e,$88,$af,$eb   // scrcode: .........
        .text "9"
        .byte $9c                                   // scrcode: .
        .text "s"
        .byte $a1,$46                               // scrcode: ..
        .text "d"
        .byte $dc,$d0,$dc                           // scrcode: ...
        .text "p"
        .byte $5e,$d6,$72                           // scrcode: ...
        .text "8&"
        .byte $42,$8c                               // scrcode: ..
        .text "h"
        .byte $b8,$a0,$b8                           // scrcode: ...
        .text " "
        .byte $bc,$ac,$e4,$70,$4c                   // scrcode: .....
        .byte $84                                   // scrcode: .
        .text "xp"
        .byte $70,$40,$70,$40,$78,$58,$c8,$e0,$98   // scrcode: .........
        .text "h0 ."
        .byte $91,$6b,$8c,$99,$c6,$d9,$ec,$54       // scrcode: ........
        .text "c"
        .byte $a6                                   // scrcode: .
        .text "v"
        .byte $b9                                   // scrcode: .
        .text ")"
        .byte $6a,$47,$ff,$7d,$e0,$1c,$1c,$1c,$1c,$1c,$1d // scrcode: ...........
        .byte $1d,$1c,$1d,$1c,$1d,$1d,$1d,$1c,$1d,$f4 // scrcode: ..........
        .text ")"
        .byte $ea,$91,$1c,$1b,$1b,$9d               // scrcode: ......
        .text "0q"
        .byte $8f,$1c,$81                           // scrcode: ...
        .text " a!a#a!c"
        .byte $63,$ff,$84                           // scrcode: ...
        .text "4o"
        .byte $85                                   // scrcode: .
        .text "6o8o"
        .text "6g"
        .byte $67,$ff,$85                           // scrcode: ...
        .text ";w"
        .byte $86                                   // scrcode: .
        .text ";g"
        .byte $8a                                   // scrcode: .
        .text "9"
        .byte $1f,$ff,$8f                           // scrcode: ...
        .text "s"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$85,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "s"
        .byte $81                                   // scrcode: .
        .text " asg"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .encoding "petscii_upper"

loc_14fc:
        .encoding "screencode_mixed"
        .text "u"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .encoding "petscii_upper"

loc_1506:
        .encoding "screencode_mixed"
        .text "u"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $ff                                   // scrcode: .
        .encoding "petscii_upper"

loc_1510:
        .encoding "screencode_mixed"
        .byte $8f                                   // scrcode: .
        .text "r"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$85,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .encoding "petscii_upper"

loc_151b:
        .encoding "screencode_mixed"
        .text "r"
        .byte $81                                   // scrcode: .
        .text " ayg"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .encoding "petscii_upper"

loc_1527:
        .encoding "screencode_mixed"
        .text "z"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$85,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .encoding "petscii_upper"

loc_1531:
        .encoding "screencode_mixed"
        .text "z"
        .byte $81                                   // scrcode: .
        .text " ayg"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $ff                                   // scrcode: .
        .encoding "petscii_upper"

loc_153d:
        .encoding "screencode_mixed"
        .byte $8f                                   // scrcode: .
        .text "w"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$85,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .encoding "petscii_upper"

loc_1548:
        .encoding "screencode_mixed"
        .text "w"
        .byte $81                                   // scrcode: .
        .text " a#c"
        .byte $1e                                   // scrcode: .
        .text "awa"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .encoding "petscii_upper"

loc_1558:
        .encoding "screencode_mixed"
        .byte $1c,$85                               // scrcode: ..
        .text " a"
        .byte $1c                                   // scrcode: .
        .text "e"
        .byte $1c                                   // scrcode: .
        .text "k"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $ff                                   // scrcode: .
        .encoding "petscii_upper"

loc_1566:
        .encoding "screencode_mixed"
        .byte $8b                                   // scrcode: .
        .text "9o"
        .byte $89                                   // scrcode: .
        .text "8o"
        .byte $85                                   // scrcode: .
        .text "6o"
        .byte $8b                                   // scrcode: .
        .text "4o2"
        .byte $1f,$8a                               // scrcode: ..
        .text "2c"
        .byte $61                                   // scrcode: .
        .text "2c"
        .byte $61,$8a                               // scrcode: ..
        .text "4k"
        .byte $67,$ff,$8f                           // scrcode: ...
        .text "u"
        .byte $8d                                   // scrcode: .
        .text " auauo!k"
        .byte $1c                                   // scrcode: .
        .text "a"
        .byte $1e                                   // scrcode: .
        .text "a"
        .byte $1c                                   // scrcode: .
        .text "c"
        .byte $6b,$ff,$8f                           // scrcode: ...
        .text "w"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$85,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "w"
        .byte $81                                   // scrcode: .
        .text " ayg"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "z"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$85,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "z"
        .byte $81                                   // scrcode: .
        .text " ayg"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $ff,$8f                               // scrcode: ..
        .text "w"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$85,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "w"
        .byte $81                                   // scrcode: .
        .text " awg"
        .byte $83,$45,$85,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "w"
        .byte $81                                   // scrcode: .
        .text " a"
        .byte $1c                                   // scrcode: .
        .text "g"
        .byte $83                                   // scrcode: .
        .byte $45,$83,$f0                           // scrcode: ...
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "("
        .byte $81                                   // scrcode: .
        .text " a#a"
        .byte $61,$1c                               // scrcode: ..
        .text "e"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $ff,$8f                               // scrcode: ..
        .text "u"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$85,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "u"
        .byte $81                                   // scrcode: .
        .text " aug"
        .byte $83,$45,$87                           // scrcode: ...
        .byte $f0                                   // scrcode: .
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "u"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$83,$f0                       // scrcode: ....
        .text "a"
        .byte $8f,$1c,$81                           // scrcode: ...
        .text " a"
        .byte $1e                                   // scrcode: .
        .text "a"
        .byte $1c                                   // scrcode: .
        .text "c"
        .byte $63,$83,$45,$83,$f0                   // scrcode: .....
        .text "a"
        .byte $81                                   // scrcode: .
        .text "0a0a"
        .byte $ff,$8f                               // scrcode: ..
        .text "u"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45                               // scrcode: ..
        .byte $85,$f0                               // scrcode: ..
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "u"
        .byte $81                                   // scrcode: .
        .text " aug"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "u"
        .byte $81                                   // scrcode: .
        .text " awa"
        .byte $61                                   // scrcode: .
        .text "wa"
        .byte $83,$45,$85,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "w"
        .byte $81                                   // scrcode: .
        .text " awg"
        .byte $83,$45,$81                           // scrcode: ...
        .byte $f0                                   // scrcode: .
        .text "a"
        .byte $8f,$1e,$81                           // scrcode: ...
        .text " awc"
        .byte $ff,$8f,$1c,$87                       // scrcode: ....
        .text " a"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $8f,$1c,$87                           // scrcode: ...
        .text " a"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "u"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "u"
        .byte $83                                   // scrcode: .
        .text " a!a"
        .byte $1c                                   // scrcode: .
        .text "a"
        .byte $83,$45,$83,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "t"
        .byte $83                                   // scrcode: .
        .text " a"
        .byte $ff,$8f                               // scrcode: ..
        .text "r"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "y"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "z"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "y"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $ff,$8f                               // scrcode: ..
        .text "u"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$83,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "u"
        .byte $81                                   // scrcode: .
        .text " a"
        .byte $61                                   // scrcode: .
        .text "wg"
        .byte $83                                   // scrcode: .
        .byte $45,$87,$f0                           // scrcode: ...
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "y"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$83,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "y"
        .byte $81                                   // scrcode: .
        .text " a"
        .byte $61,$1c                               // scrcode: ..
        .text "g"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $ff,$86                               // scrcode: ..
        .text ";o=o"
        .byte $88                                   // scrcode: .
        .text "9o"
        .byte $89                                   // scrcode: .
        .text "8o"
        .byte $86                                   // scrcode: .
        .text ";"
        .byte $1f,$8a                               // scrcode: ..
        .text "4s"
        .byte $63,$67,$ff,$8f                       // scrcode: ....
        .text "w"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $8f,$1c,$87                           // scrcode: ...
        .text " a"
        .byte $83,$45,$83,$f0                       // scrcode: ....
        .text "a"
        .byte $8f,$1c,$81                           // scrcode: ...
        .text " a"
        .byte $61,$ff,$8f                           // scrcode: ...
        .text "u"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $8f                                   // scrcode: .
        .text "u"
        .byte $83                                   // scrcode: .
        .text " a"
        .byte $81                                   // scrcode: .
        .text "0"
        .byte $83,$f0                               // scrcode: ..
        .text "a0a"
        .byte $80                                   // scrcode: .
        .text "0a0c"
        .byte $ff,$8f                               // scrcode: ..
        .text "u"
        .byte $87                                   // scrcode: .
        .text " a"
        .byte $83,$45,$87,$f0                       // scrcode: ....
        .text "a"
        .byte $ff,$8e                               // scrcode: ..
        .text ">e=e;"
        .text "a;"
        .byte $60,$80,$fe                           // scrcode: ...
        .text "9"
        .byte $40,$ff,$8e                           // scrcode: ...
        .text "4c6a9c;c;c=g"
        .byte $65,$ff,$8b                           // scrcode: ...
        .text "9o"
        .byte $86                                   // scrcode: .
        .text "=o"
        .byte $8a                                   // scrcode: .
        .text ">o"
        .byte $86                                   // scrcode: .
        .text "=o;o"
        .byte $84                                   // scrcode: .
        .text "9o"
        .byte $8a                                   // scrcode: .
        .text "9w"
        .byte $ff,$b7,$6f,$ff,$9d                   // scrcode: .....
        .text "0g"
        .byte $83,$45                               // scrcode: ..
        .text "g"
        .byte $ff,$8e                               // scrcode: ..
        .text "4a6a"
        .byte $61                                   // scrcode: .
        .text "9i4a9a"
        .byte $61                                   // scrcode: .
        .text ";a"
        .byte $67                                   // scrcode: .
        .text "9a;c=c>c"
        .byte $40                                   // scrcode: .
        .text "c"
        .text "=c=!"
        .byte $60,$ff                               // scrcode: ..
        .text ";"
        .byte $47,$61                               // scrcode: ..
        .text "4a6a9c"
        .byte $65                                   // scrcode: .
        .text "4a9a"
        .byte $61                                   // scrcode: .
        .text ";c>c=c;c"
        .byte $42                                   // scrcode: .
        .text "c"
        .byte $42                                   // scrcode: .
        .text "!"
        .byte $40,$ff,$40,$4b,$67,$ff,$8e           // scrcode: .......
        .text "4a6a"
        .byte $61                                   // scrcode: .
        .text "9c"
        .byte $65                                   // scrcode: .
        .text "4a9a"
        .byte $61                                   // scrcode: .
        .text ";a"
        .byte $67                                   // scrcode: .
        .text "9a;c=c>c"
        .byte $40                                   // scrcode: .
        .text "e=a=!"
        .byte $60,$ff                               // scrcode: ..
        .text ";"
        .byte $47,$61                               // scrcode: ..
        .text "4a6a9"
        .text "c"
        .byte $65                                   // scrcode: .
        .text "4a9a"
        .byte $61                                   // scrcode: .
        .text ";c>c=c;c"
        .byte $42                                   // scrcode: .
        .text "c"
        .byte $42                                   // scrcode: .
        .text "!"
        .byte $40,$ff,$40,$4b,$67,$ff,$8e           // scrcode: .......
        .text "4a6c9i4a9c;a"
        .byte $67                                   // scrcode: .
        .text "9"
        .text "a;c=c>c"
        .byte $40                                   // scrcode: .
        .text "c=c=!"
        .byte $60,$ff                               // scrcode: ..
        .text ";"
        .byte $45,$61                               // scrcode: ..
        .text "4a6c9c"
        .byte $63                                   // scrcode: .
        .text "4a4a9a"
        .byte $61                                   // scrcode: .
        .text ";c>c=c;c"
        .byte $42                                   // scrcode: .
        .text "c"
        .byte $42                                   // scrcode: .
        .text "!"
        .byte $40,$ff,$40,$4b,$67,$ff,$8e           // scrcode: .......
        .text "4a6a"
        .byte $61                                   // scrcode: .
        .text "9c"
        .byte $65                                   // scrcode: .
        .text "4a9a"
        .byte $61                                   // scrcode: .
        .text ";a"
        .byte $67                                   // scrcode: .
        .text "9a;c=c>c"
        .byte $40                                   // scrcode: .
        .text "c=c="
        .text "!"
        .byte $60,$ff                               // scrcode: ..
        .text ";"
        .byte $45,$61                               // scrcode: ..
        .text "4a6c9c"
        .byte $63                                   // scrcode: .
        .text "4a4a9a"
        .byte $61                                   // scrcode: .
        .text ";c>c=c;c"
        .byte $42                                   // scrcode: .
        .text "c"
        .byte $42                                   // scrcode: .
        .text "!"
        .byte $40,$ff,$40,$4b,$67,$ff,$8e,$67       // scrcode: ........
        .text "=a"
        .byte $61                                   // scrcode: .
        .text "=a=a=a>a"
        .byte $61                                   // scrcode: .
        .text ">o"
        .byte $65                                   // scrcode: .
        .text ";c"
        .byte $40                                   // scrcode: .
        .text "e"
        .byte $40                                   // scrcode: .
        .text "e"
        .byte $40                                   // scrcode: .
        .text "c"
        .byte $40                                   // scrcode: .
        .text "!"
        .byte $80,$ff                               // scrcode: ..
        .text ">"
        .byte $43                                   // scrcode: .
        .text ">e"
        .byte $40                                   // scrcode: .
        .text "a>a"
        .byte $61                                   // scrcode: .
        .text "=e=a"
        .text ">a"
        .byte $61                                   // scrcode: .
        .text ";!"
        .byte $70                                   // scrcode: .
        .text "@="
        .byte $40,$66,$ff,$8e,$40                   // scrcode: .....
        .text "a"
        .byte $40                                   // scrcode: .
        .text "a"
        .byte $43                                   // scrcode: .
        .text "c"
        .byte $43                                   // scrcode: .
        .text "a"
        .byte $43                                   // scrcode: .
        .text "c"
        .byte $40                                   // scrcode: .
        .text "a"
        .byte $61,$40                               // scrcode: ..
        .text "a"
        .byte $40,$60,$40,$ff                       // scrcode: ....
        .text ">"
        .byte $40                                   // scrcode: .
        .text ">a"
        .byte $61                                   // scrcode: .
        .text ">c>"
        .byte $60                                   // scrcode: .
        .byte $40,$ff                               // scrcode: ..
        .text "="
        .byte $40                                   // scrcode: .
        .text "=a=a>a"
        .byte $40                                   // scrcode: .
        .text "a"
        .byte $61,$40                               // scrcode: ..
        .text "k"
        .byte $69,$ff,$8e,$40                       // scrcode: ....
        .text "c"
        .byte $42                                   // scrcode: .
        .text "c=a=c"
        .byte $42                                   // scrcode: .
        .text "c"
        .byte $61,$40                               // scrcode: ..
        .text "a"
        .byte $61                                   // scrcode: .
        .text "=a;a"
        .byte $63                                   // scrcode: .
        .text "6a9"
        .text "a=a"
        .encoding "petscii_upper"

// --- Region $1927-$1c00 ---
.pc = $1927 "dat_1927"

dat_1927:
        .byte $05,$45,$05,$47,$07,$63,$ff,$8e,$34,$01,$36,$01,$61,$39,$03,$65 // .E.G.c..4.6.a9.e
        .byte $34,$01,$39,$03,$3b,$01,$67,$39,$01,$3b,$01,$61,$3d,$03,$3e,$03 // 4.9.;.g9.;.a=.>.
        .byte $40,$05,$3d,$01,$3d,$21,$60,$ff,$3b,$45,$61,$34,$01,$36,$01,$61 // @.=.=!`.;Ea4.6.a
        .byte $39,$03,$65,$34,$01,$39,$01,$61,$3b,$03,$3e,$03,$3d,$03,$3b,$03 // 9.e4.9.a;.>.=.;.
        .byte $42,$03,$42,$21,$40,$ff,$40,$4b,$65,$ff,$8e,$34,$01,$34,$01,$36 // B.B!@.@Ke..4.4.6
        .byte $03,$39,$03,$65,$34,$01,$39,$01,$61,$3b,$01,$65,$39,$01,$39,$01 // .9.e4.9.a;.e9.9.
        .byte $3b,$03,$3d,$03,$3e,$03,$40,$05,$3d,$01,$3d,$21,$60,$ff,$3b,$47 // ;.=.>.@.=.=!`.;G
        .byte $61,$34,$01,$36,$01,$39,$09,$34,$01,$39,$01,$61,$3b,$03,$3e,$03 // a4.6.9.4.9.a;.>.
        .byte $3d,$03,$3b,$03,$42,$03,$42,$21,$40,$ff,$40,$4b,$67,$ff,$9d,$30 // =.;.B.B!@.@Kg..0
        .byte $03,$8e,$39,$01,$39,$01,$65,$40,$21   // ..9.9.e@!

spr_19c0:
        // === Sprite data (64 bytes, $19c0-$19ff) ===
        .byte $80,$00,$42                           // #................#....#.
        .byte $43,$45,$01                           // .#....##.#...#.#.......#
        .byte $44,$01,$61                           // .#...#.........#.##....#
        .byte $40,$05,$63                           // .#...........#.#.##...##
        .byte $40,$01,$40                           // .#.............#.#......
        .byte $01,$42,$03                           // .......#.#....#.......##
        .byte $40,$01,$42                           // .#.............#.#....#.
        .byte $01,$61,$39                           // .......#.##....#..###..#
        .byte $01,$3b,$01                           // .......#..###.##.......#
        .byte $3d,$01,$61                           // ..####.#.......#.##....#
        .byte $40,$05,$63                           // .#...........#.#.##...##
        .byte $3d,$01,$3d                           // ..####.#.......#..####.#
        .byte $01,$3d,$01                           // .......#..####.#.......#
        .byte $3e,$01,$61                           // ..#####........#.##....#
        .byte $3b,$09,$69                           // ..###.##....#..#.##.#..#
        .byte $34,$01,$36                           // ..##.#.........#..##.##.
        .byte $01,$34,$01                           // .......#..##.#.........#
        .byte $36,$01,$34                           // ..##.##........#..##.#..
        .byte $01,$61,$34                           // .......#.##....#..##.#..
        .byte $09,$67,$ff                           // ....#..#.##..###########
        .byte $88,$34,$1f                           // #...#.....##.#.....#####
        .byte $34                                   // sprite 0 padding
        .byte $01,$85,$36,$01,$61,$36,$19,$38,$1f,$88,$34,$1f,$ff,$a7,$8a,$39 // ..6.a6.8..4....9
        .byte $17,$bf,$ff,$8f,$1c,$87,$20,$01,$83,$45,$87,$f0,$01,$8f,$15,$87 // ...... ..E......
        .byte $20,$01,$83,$45,$87,$f0,$01,$ff,$8f,$1c,$87,$20,$01,$83,$45,$87 //  ..E....... ..E.
        .byte $f0,$01,$8f,$15,$9f,$20,$01,$7f,$ff,$8e,$34,$03,$36,$01,$39,$03 // ..... ....4.6.9.
        .byte $3b,$03,$3b,$03,$3d,$0d,$7f,$ff,$84,$34,$0f,$85,$36,$0f,$38,$0f // ;.;.=....4..6.8.
        .byte $36,$0f,$ff,$9d,$30,$07,$ff,$8e,$34,$03,$36,$01,$36,$21,$80,$00 // 6...0...4.6.6!..
        .byte $39,$4f,$ff,$9d,$30,$03,$8e,$39,$01,$39,$01,$65,$40,$21,$80,$00 // 9O..0..9.9.e@!..
        .byte $42,$43,$45,$01,$44,$01,$61,$40,$05,$67,$42,$03,$40,$01,$42,$01 // BCE.D.a@.gB.@.B.
        .byte $61,$39,$01,$3b,$01,$3d,$01,$61,$40,$05,$63,$3d,$01,$3b,$01,$3d // a9.;.=.a@.c=.;.=
        .byte $01,$3b,$01,$61,$3b,$09,$69,$34,$01,$36,$01,$34,$01,$36,$01,$34 // .;.a;.i4.6.4.6.4
        .byte $01,$61,$34,$09,$67,$ff,$9d,$30,$03,$8e,$39,$01,$39,$01,$65,$40 // .a4.g..0..9.9.e@
        .byte $21,$80,$00,$42,$43,$45,$01,$44,$01,$61,$40,$05,$63,$40,$01,$40 // !..BCE.D.a@.c@.@
        .byte $01,$42,$03,$40,$01,$42,$01,$61,$39,$01,$3b,$01,$3d,$01,$61,$40 // .B.@.B.a9.;.=.a@
        .byte $05,$63,$3d,$01,$3d,$01,$3d,$01,$3b,$01,$61,$3b,$09,$6b,$36,$01 // .c=.=.=.;.a;.k6.
        .byte $36,$01,$36,$01,$34,$01,$61,$34,$09,$67,$ff,$9d,$30,$03,$8e,$3b // 6.6.4.a4.g..0..;
        .byte $01,$3b,$60,$40,$ff,$39,$46,$71,$ff,$9d,$30,$03,$8e,$40,$01,$40 // .;`@.9Fq..0..@.@
        .byte $01,$43,$03,$43,$01,$43,$03,$40,$01,$61,$40,$01,$40,$60,$40,$ff // .C.C.C.@.a@.@`@.
        .byte $3e,$40,$3e,$01,$61,$3e,$03,$3d,$01,$3d,$01,$3d,$01,$3e,$01,$61 // >@>.a>.=.=.=.>.a
        .byte $40,$01,$40,$0b,$69,$ff,$67,$ff,$8e,$3e,$05,$3d,$05,$3b,$01,$3b // @.@.i.g..>.=.;.;
        .byte $60,$80,$fe,$39,$40,$39,$07,$67,$ff,$8e,$3d,$03,$40,$03,$65,$42 // `..9@9.g..=.@.eB
        .byte $05,$45,$01,$44,$03,$40,$03,$65,$40,$01,$40,$01,$42,$03,$40,$01 // .E.D.@.e@.@.B.@.
        .byte $42,$01,$61,$39,$01,$3b,$01,$3d,$01,$61,$40,$05,$63,$3d,$01,$3d // B.a9.;.=.a@.c=.=
        .byte $01,$3d,$01,$3b,$01,$61,$3b,$01,$63,$3d,$03,$3e,$05,$3d,$05,$3b // .=.;.a;.c=.>.=.;
        .byte $01,$3b,$60,$80,$fe,$39,$40,$39,$0d,$61,$ff,$8e,$39,$03,$3b,$01 // .;`..9@9.a..9.;.
        .byte $3b,$21,$80,$00,$3d,$4f,$ff,$a7,$8a,$2d,$1f,$7f,$ff,$9d,$30,$0f // ;!..=O...-....0.
        .byte $ff,$00,$02,$04,$03,$03,$00,$06,$00,$09,$00,$0a,$00,$2a,$00,$0e // .............*..
        .byte $00,$14,$00,$03,$00,$17,$00,$18,$00,$19,$00,$1a,$00,$2a,$00,$0e // .............*..
        .byte $00,$14,$00,$03,$00,$1b,$00           // .......

txt_1bb7:
        .encoding "screencode_mixed"
        .text " "
        .text "@"
        .text "!"
        .text "@"
        .text "&"
        .text "@"
        .text "'"
        .text "@"
        .text "("
        .text "@"
        .text "*"
        .text "@"
        .text "n"
        .text "@"
        .text "t"
        .text "@"
        .text "c"
        .text "@"
        .text ") n t c"
        .text "@"
        .text ")"
        .encoding "petscii_upper"
        .byte $40,$0e,$40,$14,$40,$24,$00,$14,$40,$24,$00,$14 // @.@.@$..@$..

txt_1bde:
        .byte $40                                   // @ character
        .text "+B/"
        .byte $40                                   // @ character
        .text "0F1"
        .byte $40                                   // @ character
        .byte $00                                   // string terminator
        .byte $05,$ff,$01,$00,$08,$00,$01,$03,$0d,$00,$13,$00,$15,$00,$23,$00 // ..............#.
        .byte $01,$03,$0d,$00,$13,$00,$15,$00,$24   // ........$

// --- Region $1c02-$1d71 ---
.pc = $1c02 "txt_1c02"

txt_1c02:
        .encoding "screencode_mixed"
        .byte $22                                   // double quote
        .text "a%"
        .text "@"
        .text "acm"
        .text "@"
        .text "s"
        .text "@"
        .text "u"
        .text "@"
        .text "c"
        .text "@"
        .text "s u c"
        .text "@"
        .text "s"
        .encoding "petscii_upper"
        .byte $40,$15
        .byte $40,$03,$00,$15
        .byte $40,$03,$00,$15
        .byte $40                                   // @ character
        .text ",D2"
        .byte $40                                   // @ character
        .byte $00
        .byte $05,$ff,$00,$01,$02,$00,$05,$00,$07,$03,$0b,$00,$0c,$00,$0f,$00 // ................
        .byte $10,$00,$11,$00,$12,$00,$16,$00,$07,$03,$0b,$00,$0c,$00,$0f,$00 // ................
        .byte $10,$00,$11,$00,$12,$00,$1c,$00,$1d,$01,$1e,$00,$1f,$00,$07,$03 // ................
        .byte $0b,$00,$0c,$00,$0f,$00,$10,$00,$11,$00,$12,$00,$1c,$00 // ..............

txt_1c65:
        .encoding "screencode_mixed"
        .text "o p q r "
        .encoding "petscii_upper"
        .byte $1c,$20,$0f,$40,$10,$40,$11,$40,$12,$40,$1c,$40,$11,$40,$12,$40 // . .@.@.@.@.@.@.@
        .byte $1c,$40,$11,$40,$12                   // .@.@.

txt_1c82:
        .byte $40                                   // @ character
        .text "."
        .byte $40                                   // @ character
        .text "-I3"
        .byte $40                                   // @ character
        .byte $00                                   // string terminator
        .byte $05,$ff,$81,$ff,$00,$41,$a8,$00,$11,$a1,$00,$10,$a3,$00,$fe,$81 // .....A..........
        .byte $ff,$ff,$40,$a4,$ff,$40,$b4,$ff,$80,$ff,$ff,$fe,$41,$00,$00,$41 // ..@..@......A..A
        .byte $00,$00,$41,$04,$00,$41,$04,$00,$41,$09,$00,$41,$09,$00,$ff,$81 // ..A..A..A..A....
        .byte $fe,$00,$11,$c5,$00,$81,$fe,$00,$81,$fe,$00,$fe,$41,$00,$00,$41 // ............A..A
        .byte $00,$00,$41,$05,$00,$41,$05,$00,$41,$09,$00,$41,$09,$00,$ff,$41 // ..A..A..A..A...A
        .byte $00,$00,$41,$00,$00,$41,$03,$00,$41,$03,$00,$41,$08,$00,$41,$08 // ..A..A..A..A..A.
        .byte $00,$ff,$41,$00,$00,$41,$00,$00,$41,$03,$00,$41,$03,$00,$41,$07 // ..A..A..A..A..A.
        .byte $00,$41,$07,$00,$ff,$41,$00,$00,$fe,$41,$00,$00,$41,$00,$00,$41 // .A...A...A..A..A
        .byte $05,$00,$41,$05,$00,$41,$09,$00,$41,$09,$00,$ff,$41,$00,$00,$41 // ..A..A..A...A..A
        .byte $00,$00,$41,$05,$00,$41,$05,$00,$41,$08,$00,$41,$08,$00,$ff,$41 // ..A..A..A..A...A
        .byte $00,$00,$41,$00,$00,$41,$04,$00,$41,$04,$00,$41,$07,$00,$41,$07 // ..A..A..A..A..A.
        .byte $00,$ff,$00,$00,$00,$00,$00,$00,$00,$81,$ff,$a0,$40,$81,$ff,$a0 // ............@...
        .byte $40,$ac,$a0,$40,$a4,$a0,$80,$df,$a0,$fe,$81,$ff,$00,$41,$00,$00 // @..@.........A..
        .byte $fe,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$21,$0c,$00,$21 // ............!..!
        .byte $21,$0c,$00,$21,$00,$00,$fe           // !..!...

dat_1d71:
        // === Fill data (1 bytes, $1d71-$1d71) ===
        .byte $00                                   // .

// --- Region $1dbd-$1e31 ---
.pc = $1dbd "dat_1dbd"

dat_1dbd:
        .byte $08,$08,$11,$08,$00,$00,$00,$61,$08,$08,$09,$08,$00,$00,$00,$02 // .......a........
        .byte $0d,$c9,$09,$83,$30,$32,$04,$78,$08,$03,$09,$09,$00,$00,$00,$0a // ....02.x........
        .byte $05,$48,$09,$06,$20,$00,$00,$63,$05,$48,$09,$06,$20,$00,$00,$64 // .H.. ..c.H.. ..d
        .byte $05,$48,$09,$06,$20,$00,$00,$65,$fd,$8b,$09,$f8,$10,$02,$06,$5e // .H.. ..e.......^
        .byte $05,$48,$09,$06,$20,$00,$00,$67,$05,$48,$09,$06,$20,$00,$00,$69 // .H.. ..g.H.. ..i
        .byte $05,$48,$09,$06,$20,$00,$00,$6b,$05,$48,$09,$06,$20,$00,$00,$68 // .H.. ..k.H.. ..h
        .byte $09,$51,$09,$07,$20,$00,$00,$65,$0d,$08,$09,$08,$00,$00,$00,$0d // .Q.. ..e........
        .byte $07,$69,$09,$08,$ff                   // .i...

// --- Region $1e51-$1fb2 ---
.pc = $1e51 "dat_1e51"

dat_1e51:
        .byte $1b,$1a,$14,$1a,$17,$15,$17,$16,$14,$17,$1a,$15,$15,$16,$18,$16 // ................
        .byte $16,$16,$16,$19,$1b,$17,$15,$1a,$17,$18,$1a,$1a,$17,$14,$15,$15 // ................
        .byte $18,$18,$14,$17,$1b,$15,$19,$19,$19,$1b,$1a,$1b,$1a,$1a,$17,$17 // ................
        .byte $17,$1a,$1b,$1a,$00,$8d,$48,$bf,$53,$75,$80,$7c,$bb,$cf,$bd,$a6 // ......H.Su.|....
        .byte $93,$c0,$ea,$84,$27,$60,$92,$fe,$fc,$39,$5d,$f2,$eb,$ff,$40,$63 // ....'`...9]...@c
        .byte $f9,$19,$e5,$10,$3d,$b9,$e7,$db,$72,$26,$66,$2e,$71,$b5,$7b,$57 // ....=...r&f.q.{W
        .byte $28,$0d,$13
        .text "5"
        .byte $40                                   // @ character
        .text "N9"
        .byte $87
        .byte $28,$00,$08,$08,$11,$08,$00,$00
        .byte $00,$61,$08,$08,$09,$08,$00,$00,$00,$02,$0d,$c9,$09,$83,$30,$32 // .a............02
        .byte $04,$78,$08,$03,$09,$09,$00,$00,$00,$0a,$05,$48,$09,$06,$20,$00 // .x.........H.. .
        .byte $00,$63,$05,$48,$09,$06,$20,$00,$00,$64,$05,$48,$09,$06,$20,$00 // .c.H.. ..d.H.. .
        .byte $00,$65,$fd,$8b,$09,$f8,$10,$02,$06,$5e,$05,$48,$09,$06,$20,$00 // .e.......^.H.. .
        .byte $00,$67,$05,$48,$09,$06,$20,$00,$00,$69,$05,$48,$09,$06,$20,$00 // .g.H.. ..i.H.. .
        .byte $00,$6b,$05,$48,$09,$06,$20,$00,$00,$68,$09,$51,$09,$07,$20,$00 // .k.H.. ..h.Q.. .
        .byte $00,$65,$0d,$08,$09,$08,$00,$00,$00,$0d,$07,$69,$09,$08,$ff,$22 // .e.........i..."
        .byte $50,$56,$0c,$b7,$09,$03,$20,$42,$10,$56,$0a,$99,$09,$88,$8f,$23 // PV.... B.V.....#
        .byte $30,$36,$04,$39,$09,$08,$ff,$22,$50,$56,$06,$59,$09,$88,$8f,$22 // 06.9..."PV.Y..."
        .byte $60,$1c,$09,$09,$09,$08,$80,$22,$60,$76,$09,$03,$17,$09,$8f,$22 // `......"`v....."
        .byte $60                                   // `

txt_1f62:
        .text "0'HEAL THE WORLD/MICHAEL JACKSON'CONVERTED BY IRON CAT/TRC!"
        .byte $09,$a9,$ff,$02,$33,$97,$01,$11,$00,$08,$2d,$02,$7f,$00,$06,$08 // ....3.....-.....
        .byte $08,$29,$ff,$ff,$ff                   // .)...

dat_1fb2:
        // === Fill data (1 bytes, $1fb2-$1fb2) ===
        .byte $00                                   // .

// --- Region $1fe0-$2300 ---
.pc = $1fe0 "dat_1fe0"

dat_1fe0:
        .byte $78,$a9,$00,$8d,$00,$08,$8d,$01,$08,$8d,$02,$08,$4c,$00,$2e,$00 // x...........L...
        .fill 16, $00

spr_2000:
        // === Sprite data (64 bytes, $2000-$203f) ===
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$ff                           // ########################
        .byte $fd,$f8,$f1                           // ######.######...####...#
        .byte $f1,$e3,$e3                           // ####...####...#####...##
        .byte $c7,$00,$0a                           // ##...###............#.#.
        .byte $1f,$1f,$1f                           // ...#####...#####...#####
        .byte $1f,$00,$05                           // ...#####.............#.#
        .byte $f0,$c0,$83                           // ####....##......#.....##
        .byte $8f,$0f,$1f                           // #...####....####...#####
        .byte $1f,$1f,$00                           // ...#####...#####........
        .byte $00,$14,$1f                           // ...........#.#.....#####
        .byte $1f,$1f,$1f                           // ...#####...#####...#####
        .byte $1f,$f0,$c0                           // ...#########....##......
        .byte $83,$8f,$08                           // #.....###...####....#...
        .byte $19,$1f,$1f                           // ...##..#...#####...#####
        .byte $f0,$c0,$83                           // ####....##......#.....##
        .byte $8f,$08,$39                           // #...####....#.....###..#
        .byte $1f,$3f,$f0                           // ...#####..##########....
        .byte $c0,$83,$8f                           // ##......#.....###...####
        .byte $0a,$1f,$1f                           // ....#.#....#####...#####
        .byte $1f                                   // sprite 0 padding
        .byte $df,$ff,$df,$df,$8f,$df,$8a,$80,$fe,$ff,$fe,$fe,$fc,$fe,$fc,$fc // ................
        .byte $ff,$fa,$ff,$ff,$ff,$ff,$ff,$7f,$1f,$1f,$1f,$1e,$16,$80,$00,$94 // ................
        .byte $7f,$ff,$7f,$7f,$3f,$7f,$3f,$3f,$3f,$1f,$0f,$0f,$07,$23,$03,$31 // ....?.???....#.1
        .byte $07,$01,$10,$14,$1e,$9f,$1f,$9f,$f0,$c0,$82,$8f,$1f,$1f,$3f,$1f // ..............?.
        .byte $00,$00,$17,$1f,$1f,$3f,$1f,$3f,$f0,$c0,$85,$8f,$1f,$1f,$3f,$1e // .....?.?......?.
        .byte $00,$00,$1f,$1f,$1f,$3f,$1f,$3f,$e0,$81,$0f,$1f,$0f,$80,$e0,$ff // .....?.?........
        .byte $40,$f4,$fc,$fc,$fc,$fc,$fc,$fc,$7f,$ff,$7f,$7f,$3f,$7f,$3f,$3f // @...........?.??
        .byte $1f,$9f,$1f,$8f,$cf,$8f,$c7,$c7,$7f,$fe,$7c,$7c,$38,$78,$31,$31 // ..........||8x11
        .byte $3f,$9f,$1f,$8f,$83,$c0,$e0,$c3,$3f,$9f,$1f,$8f,$8f,$c2,$e0,$f8 // ?.......?.......
        .byte $f4,$40,$ff,$ff,$fc,$f8,$f0,$e1,$00,$40,$1f,$bf,$1f,$1f,$1f,$0f // .@.......@......
        .byte $f0,$cc,$80,$9c,$1a,$34,$3a,$1e,$a0,$f4,$ff,$ff,$ff,$ff,$ff,$ff // .....4:.........
        .byte $fe,$fc,$f8,$f1,$e2,$df,$fe,$fc,$f0,$c0,$84,$92,$1c,$1c,$0c,$25 // ...............%

spr_2100:
        // === Sprite data (64 bytes, $2100-$213f) ===
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$fe                           // #######################.
        .byte $fc,$fc,$fc                           // ######..######..######..
        .byte $fc,$fe,$fc                           // ######..#######.######..
        .byte $fe,$e7,$d3                           // #######.###..#####.#..##
        .byte $cb,$e7,$ff                           // ##..#.#####..###########
        .byte $ff,$ff,$ff                           // ########################
        .byte $df,$ff,$0a                           // ##.#############....#.#.
        .byte $85,$8f,$df                           // #....#.##...######.#####
        .byte $8f,$87,$e0                           // #...#####....######.....
        .byte $81,$03,$1b                           // #......#......##...##.##
        .byte $03,$80,$e0                           // ......###.......###.....
        .byte $f3,$ff,$cf                           // ####..############..####
        .byte $a7,$97,$cc                           // #.#..####..#.#####..##..
        .byte $f8,$f8,$e1                           // #####...#####...###....#
        .byte $f0,$c0,$85                           // ####....##......#....#.#
        .byte $8f,$87,$c2                           // #...#####....#####....#.
        .byte $f8,$e2,$fe                           // #####...###...#.#######.
        .byte $fd,$fc,$fc                           // ######.#######..######..
        .byte $f9,$fb,$f7                           // #####..######.######.###
        .byte $ff                                   // sprite 0 padding
        .byte $f4,$c0,$a7,$8f,$9f,$0f,$1f,$0f,$e8,$fa,$ff,$ff,$ff,$ff,$ff,$ff // ................
        .byte $80,$ff,$00,$7f,$40,$5d,$51,$51,$fd,$ff,$fd,$fd,$fc,$fd,$fc,$00 // ....@]QQ........
        .fill 15, $ff
        .byte $00,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$fc,$f8,$f8 // ................
        .byte $e1,$f0,$c0,$82,$8f,$1f,$1f,$3e,$1c,$f8,$e0,$fc,$fc,$fc,$fc,$fc // .......>........
        .byte $fc,$f0,$c0,$82,$8f,$ff,$ff,$fe,$fc,$e8,$c0,$c6,$ff,$ff,$ff,$ff // ................
        .byte $fe,$1f,$1f,$1f,$1f,$cf,$80,$e8,$ff,$80,$81,$8f,$8f,$8f,$80,$80 // ................
        .byte $ff,$e0,$81,$87,$0f,$0f,$18,$10,$03,$e8,$fe,$ff,$ff,$ff,$ff,$fe // ................
        .byte $fe,$f0,$c0,$82,$47,$07,$8f,$83,$c0,$f0,$c0,$82,$8f,$8f,$c7,$e0 // ....G...........
        .byte $fd,$ff,$ff,$fe,$fd,$fc,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$80,$00 // ................
        .byte $07,$f8,$fb,$fb,$f8,$f8,$fc,$f8,$f8,$ff,$ff,$ff,$00,$00,$17,$ff // ................
        .byte $ff,$fa,$f2,$f0,$f0,$ff,$f8,$f0,$f0,$f0,$c0,$82,$47,$07,$9f,$7f // ............G...
        .byte $fc,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$7f,$3f,$3f,$1f,$1f,$8f,$8f // ..........??....
        .byte $c7,$7f,$1f,$1f,$8f,$8f,$8f,$03,$43,$0b,$bf,$ff,$ff,$ff,$ff,$ff // ........C.......
        .byte $ff,$ff,$3f,$1f,$0f,$c7,$c3,$e3,$f1,$0b,$bf,$ff,$ff,$2f,$7f,$ff // ..?........../..
        .byte $ff,$0b,$5f,$ff,$ff,$2f,$7f,$ff,$ff,$05,$5f,$ff,$ff,$01,$f1,$a1 // .._../...._.....
        .byte $f1,$e3,$c1,$c1,$c1,$c1,$83,$01,$a3,$ff,$ff,$ff,$ff,$7f,$ff,$7f // ................
        .byte $7f,$a1,$01,$f1,$f1,$f1,$f1,$f1,$f1,$f9,$f1,$e3,$87,$0f,$1f,$7f // ................
        .byte $1f,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$f9,$f1,$e1,$e1,$c1,$89,$81 // ................
        .byte $19,$f7,$ff,$f7,$77,$33,$17,$13,$83,$1f,$07,$83,$e3,$f1,$f1,$f9 // ....w3..........
        .byte $f1,$1f,$07,$83,$e3,$f1,$f1,$f1,$f1,$1f,$07,$43,$e3,$f1,$f1,$f9 // ...........C....
        .byte $f1,$1f,$07,$83,$e3,$f1,$f1,$f1,$e3,$17,$7f,$ff,$ff,$ff,$1f,$07 // ................
        .byte $83,$05,$5f,$7f,$7f,$7f,$7f,$7f,$7f,$fd,$ff,$fd,$fd,$f9,$fd,$f9 // .._.............
        .byte $f9,$f1,$f3,$f1,$e3,$e7,$e3,$c7,$c7,$fd,$ff,$7d,$7d,$39,$3d,$19 // ...........}}9=.
        .byte $19,$f9,$f3,$f1,$e3,$83,$07,$0f,$87,$f9,$f3,$f1,$e3,$e3,$87,$0f // ................
        .byte $3f,$01,$03,$cf,$1f,$3f,$7f,$ff,$ff,$05,$5f,$ff,$ff,$ff,$ff,$ff // ?....?...._.....
        .byte $ff,$1f,$67,$03,$73,$b9,$59,$b9,$f1,$00,$02,$f8,$fd,$f8,$f8,$f8 // ..g.s.Y.........
        .byte $f0,$ff,$7f,$3f,$1f,$8f,$f7,$ff,$7f,$1f,$07,$43,$93,$71,$71,$61 // ...?.......C.qqa
        .byte $49,$ff                               // I.

// --- Region $2309-$264b ---
.pc = $2309 "Segment $2309"
        .text "????"
        .byte $7f
        .byte $3f,$7f,$e7,$d3,$cb,$e7,$ff,$ff,$ff,$ff,$e3
        .byte $c1,$01,$01,$c1,$c3,$c1,$e3,$17,$7f,$bf,$3f,$3f,$1f,$07,$03,$f1 // ..........??....
        .byte $e7,$cf,$1f,$3f,$7f,$ff,$ff,$0f,$03,$43,$87,$1f,$3f,$7d,$ff,$7f // ...?.....C..?}..
        .byte $3f,$bf,$7f,$ff,$ff,$ff,$ff           // ?......

spr_2340:
        // === Sprite data (64 bytes, $2340-$237f) ===
        .byte $17,$5f,$ff                           // ...#.###.#.#############
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$2f                           // ################..#.####
        .byte $03,$e9,$f1                           // ......#####.#..#####...#
        .byte $f9,$f8,$f8                           // #####..######...#####...
        .byte $f0,$0f,$ff                           // ####........############
        .byte $07,$f7,$17                           // .....#######.###...#.###

txt_2355:
        .byte $57,$57,$d7                           // .#.#.###.#.#.#####.#.###
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$05,$ff                           // ########.....#.#########
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$05                           // ################.....#.#
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$f1                           // ####################...#
        .byte $e7,$cf,$1f                           // ###..#####..####...#####
        .byte $3f,$7f,$ff                           // ..######.###############
        .byte $ff                                   // sprite 0 padding

spr_2380:
        // === Sprite data (64 bytes, $2380-$23bf) ===
        .byte $1f,$07,$83                           // ...#####.....####.....##
        .byte $c3,$81

txt_2385:
        .byte $21
        .byte $59,$b1,$7f                           // .#.##..##.##...#.#######
        .byte $7f,$7f,$7f                           // .#######.#######.#######
        .byte $7f,$ff,$7f                           // .###############.#######
        .byte $ff,$1f,$07                           // ########...#####.....###
        .byte $83,$c3,$87                           // #.....####....###....###
        .byte $2f,$5f,$bf                           // ..#.####.#.######.######
        .byte $1f,$07,$83                           // ...#####.....####.....##
        .byte $c3,$f1,$f1                           // ##....######...#####...#
        .byte $c3,$07,$f1                           // ##....##.....#######...#
        .byte $f1,$f1,$f1                           // ####...#####...#####...#
        .byte $f1,$01,$01                           // ####...#.......#.......#
        .byte $f9,$17,$7f                           // #####..#...#.###.#######
        .byte $ff,$ff,$ff                           // ########################
        .byte $1f,$07,$83                           // ...#####.....####.....##
        .byte $17,$7f,$ff                           // ...#.###.###############
        .byte $ff,$ff,$1f                           // ################...#####
        .byte $07,$83,$01                           // .....####.....##.......#
        .byte $81,$f1,$f1                           // #......#####...#####...#
        .byte $e3,$e3,$01                           // ###...#####...##.......#
        .byte $01                                   // sprite 0 padding
        .byte $1f,$27,$83                           // ...#####..#..####.....##
        .byte $c1,$c5,$e3                           // ##.....###...#.####...##
        .byte $83,$07,$1f                           // #.....##.....###...#####
        .byte $07,$83,$e3                           // .....####.....#####...##
        .byte $f1,$e1,$11                           // ####...####....#...#...#
        .byte $01,$ff,$ff                           // .......#################
        .byte $7f,$3f,$3f                           // .#######..######..######
        .byte $7f,$ff,$ff                           // .#######################
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$03                           // ################......##
        .byte $01,$c1,$7f                           // .......###.....#.#######
        .byte $7f,$7f,$7f                           // .#######.#######.#######
        .byte $7f,$7f,$7f                           // .#######.#######.#######
        .byte $7f,$ff,$ff                           // .#######################
        .byte $ff,$05,$bf                           // ########.....#.##.######
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$7f,$7f                           // ########.#######.#######
        .byte $ff,$ff,$ff                           // ########################
        .byte $7f,$7f,$1f                           // .#######.#######...#####
        .byte $27,$83,$e1                           // ..#..####.....#####....#
        .byte $e5,$e3,$87                           // ###..#.####...###....###
        .byte $0f                                   // sprite 1 padding

spr_2400:
        // === Sprite data (64 bytes, $2400-$243f) ===
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$e7                           // ###################..###
        .byte $c7,$8f,$80                           // ##...####...#####.......
        .byte $02,$9f,$1f                           // ......#.#..#####...#####
        .byte $ff,$1f,$1f                           // ########...#####...#####
        .byte $1f,$1f,$1f                           // ...#####...#####...#####
        .byte $0a,$00,$ff                           // ....#.#.........########
        .byte $1f,$1f,$0f                           // ...#####...#####....####
        .byte $8f,$83,$c0                           // #...#####.....####......
        .byte $f0,$ff,$1f                           // ####....########...#####
        .byte $1f,$1f,$1f                           // ...#####...#####...#####
        .byte $1d,$00,$00                           // ...###.#................
        .byte $ff,$1f,$1f                           // ########...#####...#####
        .byte $0f,$8f,$83                           // ....#####...#####.....##
        .byte $c0,$f0,$ff                           // ##......####....########
        .byte $3f,$7f,$3f                           // ..######.#######..######
        .byte $7f,$7f,$ff                           // .#######.###############
        .byte $7f,$ff,$1f                           // .###############...#####
        .byte $0f,$1f,$8f                           // ....####...######...####
        .byte $85,$c0,$f0                           // #....#.###......####....
        .byte $ff                                   // sprite 0 padding
        .byte $07,$8f,$07,$07,$07,$07,$8f,$ff,$f8,$fc,$f8,$f8,$f8,$f8,$fc,$ff // ................
        .byte $ff,$3f,$3f,$9f,$85,$e0,$f4,$ff,$9d,$df,$9f,$df,$df,$ff,$df,$ff // .??.............
        .byte $1f,$3f,$0f,$8f,$83,$c0,$f0,$ff,$31,$78,$38,$7c,$7c,$fe,$7f,$ff // .?......1x8||...
        .byte $9f,$df,$9f,$df,$df,$ff,$df,$ff,$3f,$1f,$1f,$8f,$82,$c0,$f0,$ff // ........?.......
        .byte $3f,$7f,$3a,$7f,$7f,$ff,$7f,$ff,$3f,$1f,$1f,$8f,$85,$c0,$f0,$ff // ?.:.....?.......
        .byte $3f,$7a,$3f,$63,$70,$fc,$7f,$ff,$7f,$1f,$1f,$0f,$c7,$80,$e8,$ff // ?z?cp...........
        .byte $fc,$fc,$f8,$fc,$f8,$f8,$fc,$ff,$1f,$3f,$0f,$8f,$83,$c0,$f0,$ff // .........?......
        .byte $e3,$e3,$f1,$f9,$f8,$fc,$fe,$ff,$03,$23,$07,$0f,$0f,$1f,$3f,$ff // .........#....?.
        .byte $87,$8f,$0f,$9f,$1f,$9f,$bf,$ff,$fc,$f8,$fc,$f8,$f8,$f8,$fc,$ff // ................
        .byte $c3,$c3,$87,$87,$07,$00,$00,$ff,$1f,$1f,$1f,$bf,$1f,$40,$00,$ff // .............@..
        .byte $00,$0f,$3f,$97,$83,$c1,$f0,$ff,$ff,$ff,$ff,$ff,$ff,$fa,$a0,$ff // ..?.............
        .byte $fe,$f8,$fc,$f8,$f8,$f8,$fc,$ff,$60   // ........`

txt_24f9:
        .text "U?"
        .byte $bb                                   // ';' | $80 (end-of-string marker)
        .byte $9b,$c1,$f0,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$fe,$ff,$ff,$fe // ................
        .byte $fd,$fc,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$07,$8f,$07,$01 // ................
        .byte $00,$07,$8f,$ff,$fb,$13,$1b,$03,$c7,$80,$e8,$ff,$c3,$83,$cf,$87 // ................
        .byte $df,$0f,$9f,$ff,$c1,$86,$0f,$0f,$85,$c0,$f0,$ff,$ff,$ff,$ff,$ff // ................
        .byte $ff,$ff,$ff,$ff,$1f,$1f,$9f,$8f,$97,$c0,$f4,$ff,$ff,$ff,$ff,$ff // ................
        .byte $ff,$fa,$e8,$ff,$51,$51,$5d,$40,$7f,$00,$80,$ff,$00,$17,$fc,$fc // ....QQ]@........
        .byte $fc,$fc,$fc,$ff,$fe,$fd,$fc,$fc,$f9,$fb,$f7,$ff,$00,$17,$ff,$ff // ................
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$fe,$fd,$fc,$fe,$ff,$c3,$83,$cf,$87 // ................
        .byte $df,$0f,$9f,$ff,$39,$12,$05,$87,$82,$c0,$f0,$ff,$fc,$fd,$fc,$fd // ....9...........
        .byte $fd,$ff,$fd,$ff,$f9,$f2,$e5,$c3,$84,$c0,$80,$ff,$ff,$ff,$ff,$ff // ................
        .byte $c6,$c0,$c8,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$1f,$1f,$0f // ................
        .byte $c7,$80,$e8,$ff,$0f,$1f,$1f,$0f,$c7,$80,$e8,$ff,$ff,$ff,$ff,$ff // ................
        .byte $fe,$fe,$fc,$ff,$c3,$8f,$0f,$07,$a2,$c0,$f0,$ff,$ff,$ff,$ff,$ff // ................
        .byte $8f,$c2,$f0,$ff,$fe,$fd,$fc,$fe,$ff,$ff,$ff,$ff,$38,$c0,$87,$0a // ............8...
        .byte $08,$07,$80,$ff,$ac                   // .....

txt_25e1:
        .text "((  "
        .byte $00                                   // string terminator
        .byte $88,$ff,$ff,$00,$00,$0b,$ff,$ff,$ff,$ff,$f8,$90,$00,$40,$02,$03 // .............@..
        .byte $8f,$ff,$f8,$fc,$ff,$fc,$fa,$f9,$fc,$ff,$ff,$ff,$ff,$ff,$ff,$ff // ................
        .byte $ff,$ff,$cf,$c7,$e3,$03,$81,$f3,$f1,$ff,$e1,$f1,$f1,$f1,$e3,$83 // ................
        .byte $0f,$ff,$ff,$ff,$ff,$ff,$ff,$2f,$05,$ff,$e1,$f1,$e1,$a3,$43,$07 // ......./......C.
        .byte $1f,$ff,$ff,$ff,$ff,$ff,$ff,$5f,$05,$ff,$ff,$ff,$ff,$ff,$ff,$ff // ......._........
        .byte $ff,$ff,$f1,$e1,$f1,$e3,$41,$03,$1b,$ff,$e3,$f7,$e3,$f7,$f7,$ff // ......A.........
        .byte $f7,$ff,$3f,$7f,$3f,$3f               // ..?.??

// --- Region $265b-$2cc9 ---
.pc = $265b "Segment $265b"
        .byte $e3,$e1,$f1,$f1,$ff,$ff,$ff,$ff,$ff,$ff,$5f,$05,$ff,$19,$3d,$39 // .........._...=9
        .byte $7d,$7d,$ff,$fd,$ff,$c1,$c3,$e1,$e1,$f1,$f1,$f1,$ff,$f9,$f1,$f1 // }}..............
        .byte $e3,$83,$07,$1f,$ff,$c3,$87,$0f,$5f,$ff,$ff,$ff,$ff,$f9,$31,$91 // ........_.....1.
        .byte $8b,$c7,$a3,$11,$ff,$83,$07,$5f,$ff,$bf,$17,$83,$ff,$e3,$f1,$f1 // ......._........
        .byte $e1,$c7,$03,$2f,$ff,$7f,$7f,$3f,$7f,$3f,$3f,$7f,$ff,$f1,$f9,$e1 // .../...?.??.....
        .byte $e3,$83,$07,$1f,$ff,$8f,$8f,$1f,$3f,$3f,$7f,$ff,$ff,$81,$89,$c1 // ........??......
        .byte $e1,$e1,$f1,$f9,$ff,$e3,$e3,$e1,$f3,$f1,$f3,$fb,$ff,$7f,$3f,$7f // ..............?.
        .byte $3f,$3f,$3f,$7f,$ff,$ff,$ff,$ff,$ff,$ff,$05,$5f,$ff,$ff,$ff,$ff // ???........_....
        .byte $ff,$ff,$2f,$05,$ff,$01,$e1,$f9,$f3,$83,$07,$1f,$ff,$f8,$f8,$f8 // ../.............
        .byte $fd,$f8,$02,$00,$ff,$ff,$3f,$7f,$3f,$3f,$3f,$7f,$ff,$0d,$55,$f9 // ......?.???...U.
        .byte $bb,$b3,$07,$1f,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$7f,$ff,$ff // ................
        .byte $7f,$3f,$3f,$7f,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$e3,$f7,$e3 // .??.............
        .byte $47,$a1,$ff,$f7,$ff,$23,$71,$b1,$21,$07,$03,$2f,$ff,$cf,$a7,$97 // G....#q.!../....
        .byte $cf,$ff,$ff,$ff,$ff,$7d,$39,$11,$8b,$c7,$a7,$19,$ff,$ff,$ff,$ff // .....}9.........
        .byte $ff,$ff,$ff,$ff,$ff                   // .....

spr_2740:
        // === Sprite data (64 bytes, $2740-$277f) ===
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$5f                           // ################.#.#####
        .byte $17,$ff,$f8                           // ...#.################...
        .byte $f0,$f9,$f1                           // ####....#####..#####...#
        .byte $e5,$03,$2f                           // ###..#.#......##..#.####
        .byte $ff,$57,$57                           // ########.#.#.###.#.#.###
        .byte $57,$17,$f7                           // .#.#.###...#.#######.###
        .byte $07,$0f,$ff                           // .....###....############
        .byte $bf,$ff,$ff                           // #.######################
        .byte $ff,$7f,$7f                           // ########.#######.#######
        .byte $7f,$ff,$7f                           // .###############.#######
        .byte $3f,$bf,$7f                           // ..#######.######.#######
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$bf,$ff                           // #########.##############
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$ff                           // ########################
        .byte $7f,$3f,$3f                           // .#######..######..######
        .byte $7f,$ff,$ff                           // .#######################
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff,$ff,$ff                           // ########################
        .byte $ff                                   // sprite 0 padding
        .byte $79,$f1,$f1,$e3,$83,$07,$1f,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff // y...............
        .byte $7f,$ff,$ff,$ff,$01,$01,$09,$ff,$c3,$f1,$f1,$e3,$83,$07,$1f,$ff // ................
        .byte $f9,$fd,$f9,$fd,$fd,$ff,$fd,$ff,$e3,$f1,$f1,$e1,$c7,$03,$2f,$ff // ............../.
        .byte $e3,$f1,$f1,$e1,$c7,$03,$2f,$ff,$8f,$8f,$1f,$1f,$3f,$3f,$3f,$ff // ....../.....???.
        .byte $87,$e3,$e1,$c1,$87,$27,$1f,$ff,$f1,$f1,$e1,$e3,$e3,$87,$1f,$ff // .....'..........
        .byte $7f,$3f,$3f,$7f,$ff,$ff,$ff,$ff,$7b,$0f,$87,$43,$43,$83,$07,$ff // .??.....{..CC...
        .byte $43,$11,$49,$01,$09,$01,$4b,$ff,$ff,$05,$bf,$ff,$ff,$ff,$ff,$ff // C.I...K.........
        .byte $7f,$4f,$27,$03,$03,$03,$8f,$ff,$3f,$ff,$ff,$ff,$7f,$7f,$ff,$ff // .O'.....?.......

chr_2800:
        // === Charset data (1226 bytes, $2800-$2cc9) ===
        .byte $7e,$db,$99,$ff,$e7,$c3,$bd,$7e       // char 0 @+0
        .byte $00,$00,$7c,$c6,$fe,$c6,$c6,$00       // char 1 @+1
        .byte $00,$00,$fc,$c6,$fc,$c6,$fc,$00       // char 2 @+2
        .byte $00,$00,$7c,$c6,$c0,$c6,$7c,$00       // char 3 @+3
        .byte $00,$00,$fc,$c6,$c6,$c6,$fc,$00       // char 4 @+4
        .byte $00,$00,$fe,$c0,$f8,$c0,$fe,$00       // char 5 @+5
        .byte $00,$00,$fe,$c0,$f8,$c0,$c0,$00       // char 6 @+6
        .byte $00,$00,$7e,$c0,$dc,$c6,$7c,$00       // char 7 @+7
        .byte $00,$00,$c6,$c6,$fe,$c6,$c6,$00       // char 8 @+8
        .byte $00,$00,$fc,$30,$30,$30,$fc,$00       // char 9 @+9
        .byte $00,$00,$fe,$06,$06,$c6,$7c,$00       // char 10 @+10
        .byte $00,$00,$c6,$cc,$f8,$cc,$c6,$00       // char 11 @+11
        .byte $00,$00,$c0,$c0,$c0,$c0,$fe,$00       // char 12 @+12
        .byte $00,$00,$c6,$ee,$fe,$d6,$c6,$00       // char 13 @+13
        .byte $00,$00,$c6,$e6,$fe,$ce,$c6,$00       // char 14 @+14
        .byte $00,$00,$7c,$c6,$c6,$c6,$7c,$00       // char 15 @+15
        .byte $00,$00,$fc,$c6,$fc,$c0,$c0,$00       // char 16 @+16
        .byte $00,$00,$7c,$c6,$c6,$cc,$76,$00       // char 17 @+17
        .byte $00,$00,$fc,$c6,$f8,$cc,$c6,$00       // char 18 @+18
        .byte $00,$00,$7e,$c0,$7c,$06,$fc,$00       // char 19 @+19
        .byte $00,$00,$fc                           // char 20 (partial)

txt_28a3:
        .byte $30,$30,$30,$30,$00                   // char 20 (partial)
        .byte $00,$00,$c6,$c6,$c6,$c6,$7c,$00       // char 21 @+21
        .byte $00,$00,$c6,$c6,$c6,$6c,$38,$00       // char 22 @+22
        .byte $00,$00,$c6,$d6,$fe,$ee,$c6,$00       // char 23 @+23
        .byte $00,$00,$c6,$6c,$38,$6c,$c6,$00       // char 24 @+24
        .byte $00,$00,$c6,$c6,$fe,$06,$fc,$00       // char 25 @+25
        .byte $00,$00,$fc,$18,$30,$60,$fe,$00       // char 26 @+26
        .byte $00,$00,$00,$ff,$ff,$00,$00,$00       // char 27 @+27
        .byte $18,$18,$18,$18,$18,$18,$18,$18       // char 28 @+28
        .byte $18,$18,$18,$f8,$f8,$00,$00,$00       // char 29 @+29
        .byte $7e,$99,$db,$ff,$bd,$c3,$e7,$7e       // char 30 @+30
        .byte $00,$04,$06,$ff,$ff,$06,$04,$00       // char 31 @+31
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 32 ' '
        .byte $00,$1c,$1c,$1c,$18,$00,$18,$00       // char 33 '!'
        .byte $00,$66,$66,$00,$00,$00,$00,$00       // char 34 '"'
        .byte $00,$00,$66,$ff,$66,$ff,$66,$00       // char 35 '#'
        .byte $18,$18,$18,$1f,$1f,$00,$00,$00       // char 36 '$'
        .byte $00,$62,$66,$0c,$18,$33,$63,$00       // char 37 '%'
        .byte $3c,$66,$3c,$38,$67,$66,$3f,$00       // char 38 '&'
        .byte $00,$18,$18,$30,$00,$00,$00,$00       // char 39 '''
        .byte $00,$00,$06,$0c,$0c,$0c,$06,$00       // char 40 '('
        .byte $00,$00,$60,$30,$30,$30,$60,$00       // char 41 ')'
        .byte $08,$18,$ff,$7e,$3c,$76,$c3,$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,$18,$18,$00       // char 46 '.'
        .byte $00,$02,$06,$0c,$18,$30,$60,$00       // char 47 '/'
        .byte $00,$00,$3c,$66,$6e,$76,$3c,$00       // char 48 '0'
        .byte $00,$00,$18,$38,$18,$18,$7e,$00       // char 49 '1'
        .byte $00,$00,$7c,$06,$3c,$60,$7e,$00       // char 50 '2'
        .byte $00,$00,$7c,$06,$3c,$06,$7c,$00       // char 51 '3'
        .byte $00,$00,$66,$66,$7e,$06,$06,$00       // char 52 '4'
        .byte $00,$00,$7e,$60,$7c,$06,$7c,$00       // char 53 '5'
        .byte $00,$00,$3e,$60,$7c,$66,$3c,$00       // char 54 '6'
        .byte $00,$00,$7c,$06,$06,$06,$06,$00       // char 55 '7'
        .byte $00,$00,$3c,$66,$3c,$66,$3c,$00       // char 56 '8'
        .byte $00,$00,$3c,$66,$3e,$06,$7c,$00       // char 57 '9'
        .byte $00,$00,$00,$18,$00,$18,$00,$00       // char 58 ':'
        .byte $00,$00,$00,$18,$00,$18,$18,$30       // char 59 ';'
        .byte $00,$00,$00,$1f,$1f,$18,$18,$18       // char 60 '<'
        .byte $00,$00,$00,$7e,$00,$7e,$00,$00       // char 61 '='
        .byte $00,$00,$00,$f8,$f8,$18,$18,$18       // char 62 '>'
        .byte $00,$3c,$66,$0c,$18,$00,$18,$00       // char 63 '?'
        .byte $00,$00,$00,$00,$01,$02,$03,$04       // char 64 '@'
        .byte $05,$06,$07,$01,$02,$03,$04,$05       // char 65 'A'
        .byte $06,$07,$00,$08,$03,$04,$05,$06       // char 66 'B'
        .byte $07,$01,$02,$03,$04,$05,$09,$00       // char 67 'C'
        .byte $00,$08,$03,$04,$05,$09,$00,$00       // char 68 'D'
        .byte $00,$00,$00,$00,$00,$00,$00,$08       // char 69 'E'
        .byte $03,$6c,$00,$00,$00,$00,$00,$00       // char 70 'F'
        .byte $00,$00,$00,$00,$01,$02,$03,$04       // char 71 'G'
        .byte $05,$06,$07,$01,$02,$03,$04,$05       // char 72 'H'
        .byte $09,$00,$00,$00,$00,$00,$00,$00       // char 73 'I'
        .byte $00,$00,$00,$00,$0a,$0b,$0c,$0d       // char 74 'J'
        .byte $0e,$0f,$10,$11,$12,$0c,$0d,$0e       // char 75 'K'
        .byte $13,$14,$00,$15,$0c,$0d,$0e,$13       // char 76 'L'
        .byte $14,$0a,$0b,$0c,$0d,$0e,$16,$17       // char 77 'M'
        .byte $00,$18,$19,$1a,$1b,$1c,$00,$00       // char 78 'N'
        .byte $00,$00,$00,$00,$00,$00,$6d,$6e       // char 79 'O'
        .byte $19,$6f,$70,$71,$00,$00,$00,$00       // char 80 'P'
        .byte $00,$00,$00,$00,$0a,$0b,$0c,$0d       // char 81 'Q'
        .byte $0e,$13,$14,$0a,$0b,$0c,$0d,$0e       // char 82 'R'
        .byte $16,$17,$00,$00,$00,$00,$00,$00       // char 83 'S'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 84 'T'
        .byte $00,$1d,$1e,$1f,$20,$00,$00,$00       // char 85 'U'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 86 'V'
        .byte $00,$00,$00,$00,$00,$00,$1d,$1e       // char 87 'W'
        .byte $00,$18,$21,$22,$23,$1c,$00,$00       // char 88 'X'
        .byte $00,$00,$00,$00,$00,$00,$1f,$72       // char 89 'Y'
        .byte $21,$22,$23,$1c,$00,$00,$00,$00       // char 90 'Z'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 91 '['
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 92 '\'
        .byte $1d,$1e,$00,$00,$00,$00,$00,$00       // char 93 ']'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 94 '^'
        .byte $00                                   // char 95 (partial)

txt_2af9:
        .byte $24,$25,$26,$27,$00,$00,$00           // char 95 (partial)
        .byte $00,$00,$00,$18,$28,$29,$2a,$1c       // char 96 '`'
        .byte $00,$00,$00,$00,$00,$00,$24,$25       // char 97 'a'
        .byte $00,$18,$28,$29,$2a,$1c,$00,$00       // char 98 'b'
        .byte $00,$00,$00,$00,$24,$25,$26,$27       // char 99 'c'
        .byte $00,$73,$2a,$74,$25,$00,$00,$00       // char 100 'd'
        .byte $00,$00,$00,$00,$26,$75,$28,$76       // char 101 'e'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 102 'f'
        .byte $24,$25,$00,$00,$00,$00,$00,$00       // char 103 'g'

spr_2b40:
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 104 'h'
        .byte $00                                   // char 105 (partial)

txt_2b49:
        .byte $2b,$2c,$2d,$2e,$00,$00,$00           // char 105 (partial)
        .byte $00,$00,$00,$18                       // char 106 (partial)

txt_2b54:
        .byte $2f,$30,$31,$32                       // char 106 (partial)
        .byte $33,$34,$35,$36,$37,$00,$38,$39       // char 107 'k'
        .byte $00,$18,$2f,$30,$31,$1c,$00,$00       // char 108 'l'
        .byte $00,$00,$3a,$3b,$77,$2c,$78,$79       // char 109 'm'
        .byte $00,$7a,$7b,$7c,$2c,$34,$7d,$00       // char 110 'n'
        .byte $00,$00,$00,$00,$2d,$7e,$2f,$7f       // char 111 'o'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 112 'p'
        .byte $2b,$2c,$00,$00,$00,$00,$00,$00       // char 113 'q'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 114 'r'
        .byte $00                                   // char 115 (partial)

txt_2b99:
        .byte $3c,$3d,$3e,$3f,$00,$00,$00           // char 115 (partial)
        .byte $00,$00,$00,$18                       // char 116 (partial)

txt_2ba4:
        .byte $40,$41,$42,$43                       // char 116 (partial)
        .byte $44,$45,$46,$40,$47,$48,$49,$00       // char 117 'u'
        .byte $00,$18,$40,$41,$42,$1c,$00,$00       // char 118 'v'

txt_2bb8:
        .byte $4a,$4b,$4c,$42,$43,$44,$00,$00       // char 119 'w'
        .byte $00,$00,$00,$80,$44,$3e,$81,$4b       // char 120 'x'
        .byte $82,$00,$00,$00,$3e,$83,$40,$84       // char 121 'y'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 122 'z'
        .byte $3c,$3d,$00,$00,$00,$00,$00,$00       // char 123 '{'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 124 '|'
        .byte $00                                   // char 125 (partial)

txt_2be9:
        .byte $4d,$4e,$4f,$50,$00,$00,$00           // char 125 (partial)
        .byte $00,$00,$00,$18,$51,$52,$53,$1c       // char 126 '~'
        .byte $00,$00,$18,$51,$52,$53,$1c,$00       // char 127

spr_2c00:
        .byte $00,$18,$51,$52,$53,$1c,$00,$00       // char 128
        .byte $18,$51,$52,$53,$1c,$00,$00,$00       // char 129
        .byte $00,$00,$00,$00,$00,$4f,$85,$51       // char 130
        .byte $86,$00,$00,$00,$4f,$85,$51,$86       // char 131
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 132
        .byte $4d,$4e,$00,$00,$00,$00,$00,$00       // char 133
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 134
        .byte $00                                   // char 135 (partial)

txt_2c39:
        .byte $54,$55,$56,$57,$00,$00,$00           // char 135 (partial)

spr_2c40:
        .byte $00,$00,$00,$18,$58,$59,$5a,$1c       // char 136
        .byte $00,$00,$5b,$5c,$5d,$5c,$5e,$5f       // char 137
        .byte $00,$18,$58,$59,$5a,$1c,$00,$60       // char 138
        .byte $61,$58,$59,$5a,$87,$5f,$60,$88       // char 139
        .byte $89,$8a,$8b,$8c,$5f,$56,$8d,$58       // char 140
        .byte $8e,$8b,$8f,$00,$56,$8d,$58,$8e       // char 141
        .byte $8b,$8c,$5f,$60,$88,$89,$8a,$8b       // char 142
        .byte $90,$5c,$00,$00,$00,$00,$00,$00       // char 143
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 144
        .byte $00,$62,$63,$64,$65,$00,$00,$00       // char 145
        .byte $00,$00,$00,$66,$67,$68,$69,$6a       // char 146
        .byte $00,$00,$00,$00,$00,$00,$62,$63       // char 147
        .byte $00,$66,$67,$68,$69,$6a,$00,$64       // char 148
        .byte $6b,$67,$68,$69,$91,$63,$64,$6b       // char 149
        .byte $67,$68,$69,$91,$63,$64,$6b,$67       // char 150
        .byte $68,$69,$6a,$00,$64,$6b,$67,$68       // char 151
        .byte $69,$91,$63,$64,$6b,$67,$68,$69       // char 152
        .byte $6a                                   // char 153 (partial)

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

// --- Region $2d00-$2dff ---
.pc = $2d00 "txt_2d00"

txt_2d00:
        .byte $20,$20,$20,$20,$20,$20,$20,$20       // char 160
        .byte $20,$20,$20,$20,$20,$20,$04,$20       // char 161
        .byte $05,$20,$01,$20,$0c,$20,$05,$20       // char 162
        .byte $12                                   // char 163 (partial)

dat_2d19:
        .text "                                                            "
        .byte $11,$20,$15                           // char 170 (partial)
        .byte $20,$01,$20,$0c,$20,$09,$20,$14       // char 171
        .byte $20,$19,$20,$20,$13,$20,$0f,$20       // char 172
        .byte $06,$20,$14,$20,$17,$20,$01,$20       // char 173
        .byte $12,$20,$05                           // char 174 (partial)

dat_2d73:
        .text "                                                           "
        .byte $14,$20                               // char 181 (partial)
        .byte $20,$12,$20,$20,$09,$20,$20,$01       // char 182
        .byte $20,$20,$04                           // char 183 (partial)

dat_2dbb:
        .text "                                                     "
        .byte $00                                   // string terminator
        .byte $00,$00,$00,$00,$00,$00,$00           // char 190 (partial)
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 191

// --- Region $3146-$3176 ---
.pc = $3146 "scr_3146"

scr_3146:
        // === Screen RAM (49 bytes, $3146-$3176) ===
        .encoding "screencode_mixed"
        .byte $ae,$b2                               // scrcode: ..
        .text "l"
        .byte $bd,$66                               // scrcode: ..
        .text "1"
        .byte $8d,$22,$d0,$ee,$b2                   // scrcode: ."...
        .text "l"
        .byte $ad,$b2                               // scrcode: ..
        .text "l"
        .byte $c9                                   // scrcode: .
        .text "q"
        .byte $d0                                   // scrcode: .
        .text "k"
        .byte $a9                                   // scrcode: .
        .text "@"
        .byte $8d,$b2                               // scrcode: ..
        .text "l"
        .byte $a9                                   // scrcode: .
        .text ","
        .byte $8d,$f4                               // scrcode: ..
        .text "0"
        .byte $60,$60                               // scrcode: ..
        .text "kklloomma"
        .text "ammoollkk"
        .encoding "petscii_upper"

// --- Region $31af-$31de ---
.pc = $31af "scr_31af"

scr_31af:
        // === Screen RAM (48 bytes, $31af-$31de) ===
        .encoding "screencode_mixed"
        .text "ffdfddndnnonoomommamaamammomoononndnddfd"
        .fill 8, $06                                // scrcode: FFFFFFFF
        .encoding "petscii_upper"

// --- Region $34d6-$3adb ---
.pc = $34d6 "Segment $34d6"
        .encoding "screencode_mixed"
        .byte $a9                                   // scrcode: .
        .text "4"
        .byte $85                                   // scrcode: .
        .text "a"
        .byte $a2                                   // scrcode: .
        .text "@"
        .byte $bd                                   // scrcode: .
        .text "@;"
        .byte $9d                                   // scrcode: .
        .text "ah"
        .byte $e8,$d0,$f7,$ee                       // scrcode: ....
        .text "ia"
        .byte $ee                                   // scrcode: .
        .text "la"
        .byte $ad                                   // scrcode: .
        .text "ia"
        .byte $c9,$ff,$f0                           // scrcode: ...
        .text "c"
        .byte $4c                                   // scrcode: .
        .text "ea"
        .byte $a9                                   // scrcode: .
        .text "7"
        .byte $85                                   // scrcode: .
        .text "a"
        .byte $58,$4c,$e2,$fc                       // scrcode: ....
        .text ")"
        .byte $bf,$8d                               // scrcode: ..
        .encoding "petscii_upper"

dat_3500:
        .text "                                                                                                                                -"
        .encoding "screencode_mixed"
        .text "yikes"
        .encoding "petscii_upper"

txt_3586:
        .text "!  .."
        .encoding "screencode_mixed"
        .text "what is lamest"
        .encoding "petscii_upper"

txt_3599:
        .text "?  1. "
        .encoding "screencode_mixed"
        .text "cracking this "
        .byte $22                                   // scrcode: "
        .text "skramble"
        .byte $22                                   // scrcode: "
        .text " game"
        .encoding "petscii_upper"

txt_35bc:
        .text ".  2. "
        .encoding "screencode_mixed"
        .text "install cheat-mode"
        .encoding "petscii_upper"

txt_35d4:
        .text ".  3. "
        .encoding "screencode_mixed"
        .text "ultima thule"
        .encoding "petscii_upper"

txt_35e6:
        .text ".  ???                              .."
        .encoding "screencode_mixed"
        .text "bismarck & ziggy stardust are back in"
        .encoding "petscii_upper"

txt_3631:
        .text " 22/10/93 "
        .encoding "screencode_mixed"
        .text "with another thoker namely "
        .byte $22                                   // scrcode: "
        .text "super-penetr"
        .text "ator"
        .byte $22                                   // scrcode: "
        .text ", eh"
        .encoding "petscii_upper"

txt_366c:
        .text "?   .."
        .encoding "screencode_mixed"
        .text "some kind of 'virus' protection? is remo"
        .text "ved.  thanx to bacchus for the originals"
        .text " "
        .byte $22                                   // scrcode: "
        .text "madrax"
        .byte $22                                   // scrcode: "
        .text " and this one"
        .encoding "petscii_upper"

txt_36d8:
        .text ".                              ..."
        .encoding "screencode_mixed"
        .text "candy to some flowers in triad: king tut"
        .text " 'kan du jojka"
        .encoding "petscii_upper"

txt_3730:
        .text "?' - "
        .encoding "screencode_mixed"
        .text "gerry stagediver 'what happend to the el"
        .text "ephant idea"
        .encoding "petscii_upper"

txt_3768:
        .text "?' - "
        .encoding "screencode_mixed"
        .text "jejj.eff.kejj. 'norway isn't good for yo"
        .text "u"
        .encoding "petscii_upper"

txt_3796:
        .text "!' - "
        .encoding "screencode_mixed"
        .text "ziie 'try therapy"
        .encoding "petscii_upper"

txt_37ac:
        .text "?' - "
        .encoding "screencode_mixed"
        .text "ravage 'perssons pack"
        .encoding "petscii_upper"

txt_37c6:
        .text "!' - 3"
        .encoding "screencode_mixed"
        .text "dent 'hey, don't eat that apple"
        .encoding "petscii_upper"

txt_37eb:
        .text "!' - "
        .encoding "screencode_mixed"
        .text "vingmutter 'only"
        .encoding "petscii_upper"

scr_3800:
        // === Screen RAM (732 bytes, $3800-$3adb) ===
        .encoding "screencode_mixed"
        .text " send orries over"
        .encoding "petscii_upper"

txt_3811:
        .text " 20 "
        .encoding "screencode_mixed"
        .text "blx"
        .encoding "petscii_upper"

txt_3818:
        .text "' - "
        .encoding "screencode_mixed"
        .text "sailor s-king 'enjoying"
        .encoding "petscii_upper"

txt_3833:
        .text " 20 "
        .encoding "screencode_mixed"
        .text "blx games"
        .encoding "petscii_upper"

txt_3840:
        .text "? .."
        .encoding "screencode_mixed"
        .text "fast packing"
        .encoding "petscii_upper"

txt_3850:
        .text "!' - "
        .encoding "screencode_mixed"
        .text "roffe 'tulip season"
        .encoding "petscii_upper"

txt_3868:
        .text "?' - "
        .encoding "screencode_mixed"
        .text "bussen 'good luck in nhl"
        .encoding "petscii_upper"

txt_3885:
        .text "!' - "
        .encoding "screencode_mixed"
        .text "arkon 'livin' in a big city like moi"
        .encoding "petscii_upper"

txt_38ae:
        .text "?' - $"
        .encoding "screencode_mixed"
        .text "illen 'i need stuff"
        .encoding "petscii_upper"

txt_38c7:
        .text "!' - "
        .encoding "screencode_mixed"
        .text "dane 'we still miss tore okvist, right"
        .encoding "petscii_upper"

txt_38f2:
        .text "!' - "
        .encoding "screencode_mixed"
        .text "rave 'any extacy"
        .encoding "petscii_upper"

txt_3907:
        .text "?' - "
        .encoding "screencode_mixed"
        .text "twoshower 'still coolest name"
        .encoding "petscii_upper"

txt_3929:
        .text "!' - "
        .encoding "screencode_mixed"
        .text "loket-jerry 'tooniman!' also sum "
        .byte $22                                   // scrcode: "
        .text "hubba-"
        .text "bubba"
        .byte $22                                   // scrcode: "
        .text " to: vante/brosk 'i miss flygis"
        .encoding "petscii_upper"

txt_397b:
        .text "!' - "
        .encoding "screencode_mixed"
        .text "skopet 'charta"
        .encoding "petscii_upper"

txt_398e:
        .text " 77, "
        .encoding "screencode_mixed"
        .text "granberg diva"
        .encoding "petscii_upper"

txt_39a0:
        .text "!' - "
        .encoding "screencode_mixed"
        .text "case 'indie rules"
        .encoding "petscii_upper"

txt_39b6:
        .text "!' - "
        .encoding "screencode_mixed"
        .text "ziz/1way 'hi hedda"
        .encoding "petscii_upper"

txt_39cd:
        .text "!' - "
        .encoding "screencode_mixed"
        .text "teddybears - bacchus 'ziie likes your gi"
        .text "rlie, he! he"
        .encoding "petscii_upper"

txt_3a06:
        .text "!'....         "
        .encoding "screencode_mixed"
        .text "be sure to call: the studio"
        .encoding "petscii_upper"

txt_3a30:
        .text " +46/159/31991("
        .encoding "screencode_mixed"
        .text "whq"
        .encoding "petscii_upper"

txt_3a42:
        .text ")."

dat_3a44:
        // === Fill data (40 bytes, $3a44-$3a6b) ===
        .fill 40, $20
        .encoding "screencode_mixed"
        .byte $22                                   // scrcode: "
        .text "heal the world"
        .byte $22                                   // scrcode: "
        .text " wanted by tranziie"
        .encoding "petscii_upper"

txt_3a8f:
        .text ".                            "
        .encoding "screencode_mixed"
        .text "i hate dustsuckers"
        .encoding "petscii_upper"

txt_3abe:
        .text "!    /"
        .encoding "screencode_mixed"
        .text "ovb"
        .encoding "petscii_upper"

txt_3ac7:
        .text ".                   "
        .byte $00                                   // string terminator
