// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:18
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $07ee  End: $301e  (10289 bytes)
// Crunched with Beta Dynamic v3 — depacked by emulation
// Packer entry: $080b (via BASIC SYS 2059)
// Entry point:  $0c00 (3072)
// IRQ handler:  $0a00 (irq_0a00)
// IRQ handler:  $1100 (irq_1100)
//
// Code: 2348 bytes, Data: 7941 bytes
// Labels: 241, Subroutines: 10
//
// Cross-references: all OK
// ============================================


// --- Region $09c0-$09c5 ---
.pc = $09c0 "loc_09c0"

loc_09c0:
        jsr sub_1806
        jmp $ea81

// --- Region $0a00-$0a94 ---
.pc = $0a00 "irq_0a00"

irq_0a00:
        sei
        lda #$13
        sta $d018
        inc $d019
.label smc_0a0a = * + 1
        lda #$d0                                    // !SMC: modified by $0b0d
        sta $d016
        ldx $02
        lda txt_1400,x
        sta smc_0a25                                // SMC: modifies $0a25
        inx
        cpx #$c9
        bne loc_0a1d
        ldx #$00

loc_0a1d:
        stx $02
        lda #$2f
        sta $d012
.label smc_0a25 = * + 1
        ldx #$22                                    // !SMC: modified by $0a13

loc_0a26:
        lda $d012

loc_0a29:
        cmp $d012
        beq loc_0a29
        and #$07
        ora #$10
        sta $d011
        dex
        bne loc_0a26
        lda $d012
        clc
        adc #$38

loc_0a3e:
        cmp $d012
        bne loc_0a3e
        lda #$40
        sec
        sbc smc_0a25
        tax

loc_0a4a:
        lda $d012

loc_0a4d:
        cmp $d012
        beq loc_0a4d
        and #$07
        ora #$10
        sta $d011
        dex
        bne loc_0a4a
        lda $d012

loc_0a5f:
        cmp $d012
        beq loc_0a5f
        lda #$c8
        sta $d016
        lda #$1a
        jsr sub_1000
        inc $d019
        lda #$00
        sta $0314
        lda #$11
        sta $0315
        lda #$e5
        sta $d012
        cli
        jsr sub_0b00
        dec $03
        bne loc_0a92
        lda #$05
        sta $03
        jsr sub_0aa0
        jsr sub_0b80

loc_0a92:
        jmp $ea81

// --- Region $0aa0-$0ae8 ---
.pc = $0aa0 "sub_0aa0"
// Referenced by: jsr from $0a8c

sub_0aa0:
        ldx #$07

loc_0aa2:
        lda $08c8,x
        sta $08d0,x
        lda $08c0,x
        sta $08c8,x
        lda $08b8,x
        sta $08c0,x
        lda $08b0,x
        sta $08b8,x
        lda $08a8,x
        sta $08b0,x
        lda $08a0,x
        sta $08a8,x
        lda $0898,x
        sta $08a0,x
        lda $0890,x
        sta $0898,x
        lda $0888,x
        sta $0890,x
        lda $0880,x
        sta $0888,x
        lda $08d0,x
        sta $0880,x
        dex
        bpl loc_0aa2
        rts

chr_0ae8:
        // === Charset data (1 bytes, $0ae8-$0ae8) ===
        .byte $00                                   // char 0 (partial)

// --- Region $0b00-$0b58 ---
.pc = $0b00 "sub_0b00"
// Referenced by: jsr from $0a81

sub_0b00:
        ldx $0aff
        lda dat_1300,x
        eor #$ff
        and #$07
        clc
        adc #$d0
        sta smc_0a0a                                // SMC: modifies $0a0a
        lda dat_1300,x
        lsr
        lsr
        lsr
        tay
        ldx #$00

loc_0b19:
        lda txt_0d00,y
        sta $0400,x
        lda $0d70,y
        sta $0428,x
        lda $0de0,y
        sta $0450,x
        lda $0e50,y
        sta $0478,x
        lda $0ec0,y
        sta $04a0,x
        lda $0f30,y
        sta $04c8,x
        lda $0fa0,y
        sta $04f0,x
        iny
        inx
        cpx #$28
        bne loc_0b19
        inc $0aff
        lda $0aff
        cmp #$c9
        bne loc_0b58
        lda #$00
        sta $0aff

loc_0b58:
        rts

// --- Region $0b80-$0b93 ---
.pc = $0b80 "sub_0b80"
// Referenced by: jsr from $0a8f

sub_0b80:
        lda $1067
        pha
        ldx #$0e

loc_0b86:
        lda $1058,x
        sta $1059,x
        dex
        bpl loc_0b86
        pla
        sta $1058
        rts

// --- Region $0bc0-$0cfe ---
.pc = $0bc0 "loc_0bc0"

loc_0bc0:
        lda #$00
        sta chr_0800
        sta $0801
        jsr sub_0bf9

loc_0bcb:
        lda $dc01
        cmp #$ef
        bne loc_0bcb
        lda #$04
        sta $0288
        nop
        nop
        jsr $e5a0
        jsr $e453
        jsr $fd15
        lda #$93
        jsr $ffd2
        jsr $fda3
        cli
        ldx #$40

loc_0bed:
        lda $0908,x
        sta $033c,x
        dex
        bpl loc_0bed
        jmp $033c
// Referenced by: jsr from $0bc8

sub_0bf9:
        jsr sub_1273
        jmp loc_1800

chr_0bff:
        // === Charset data (1 bytes, $0bff-$0bff) ===
        .byte $00                                   // char 0 (partial)

main_0c00:
        sei
        jsr $ff5b
        jsr $fda3
        jsr $fd15
        cli
        ldx #$00

loc_0c0d:
        lda #$00
        sta $d800,x
        sta $d900,x
        sta $da00,x
        sta $dae8,x
        inx
        bne loc_0c0d
        sei
        lda #$00
        sta $0314
        lda #$0a
        sta $0315
        lda #$01
        sta $d019
        sta $d01a
        sta $dc0d
        lda #$05
        sta $03
        lda #$0a
        sta $d022
        lda #$02
        sta $d023
        lda #$d8
        sta $d016
        lda #$18
        sta $d018
        cli
        lda #$00
        sta $02
        lda #$20
        sta $0aff
        ldx #$00

loc_0c58:
        lda #$0f
        sta $d800,x
        sta $d850,x
        sta $d8a0,x
        sta $d8c8,x
        lda #$06
        sta $d968,x
        sta $d9b8,x
        inx
        cpx #$50
        bne loc_0c58
        lda #$00
        sta $04
        sta $05

loc_0c79:
        ldx $04
        lda $0ba0,x
        cmp #$20
        beq loc_0ce0
        ldy #$00

loc_0c84:
        cmp $126e,y
        beq loc_0c91
        iny
        cpy #$05
        bne loc_0c84
        jmp loc_0c95

loc_0c91:
        tya
        clc
        adc #$1b

loc_0c95:
        ldx $05
        sta $0540,x
        clc
        adc #$20
        sta $05e0,x
        clc
        adc #$20
        sta $0541,x
        clc
        adc #$20
        sta $05e1,x
        clc
        adc #$20
        sta $0568,x
        clc
        adc #$20
        sta $05b8,x
        clc
        adc #$20
        sta $0569,x
        clc
        adc #$20
        sta $05b9,x

loc_0cc4:
        inc $05
        inc $05
        inc $04
        lda $04
        cmp #$14
        bne loc_0c79
        ldx #$00
        txa

loc_0cd3:
        sta $0590,x
        inx
        cpx #$28
        bne loc_0cd3
        jmp loc_0bc0

chr_0cde:
        // === Charset data (2 bytes, $0cde-$0cdf) ===
        .byte $00,$00                               // char 0 (partial)

loc_0ce0:
        ldx $05
        sta $0540,x
        sta $05e0,x
        sta $0541,x
        sta $05e1,x
        sta $0568,x
        sta $05b8,x
        sta $0569,x
        sta $05b9,x
        jmp loc_0cc4

chr_0cfd:
        // === Charset data (2 bytes, $0cfd-$0cfe) ===
        .byte $00,$00                               // char 0 (partial)

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

sub_1000:
        ldy #$b5

loc_1002:
        cpy $d012
        bne loc_1002
        sta $d018
        ldx #$00

loc_100c:
        ldy $1090,x
        lda $1040,x

loc_1012:
        dey
        bne loc_1012
        sta $d016
        lda $1068,x
        sta $d021
        inx
        cpx #$28
        bne loc_100c
        lda $d012

loc_1026:
        cmp $d012
        beq loc_1026
        lda #$00
        sta $d021
        lda #$c8
        sta $d016
        rts

// --- Region $1100-$1140 ---
.pc = $1100 "irq_1100"

irq_1100:
        sei
        inc $d019
.label smc_1105 = * + 1
        lda #$c6                                    // !SMC: modified by $124a, $1264
        sta $d016
        ldx #$00

loc_110b:
        ldy dat_1140,x
        lda $1160,x

loc_1111:
        dey
        bne loc_1111
        sta $d021
        inx
        cpx #$11
        bne loc_110b
        lda #$00
        sta $d020
        inc $d019
        lda #$00
        sta $0314
        lda #$0a
        sta $0315
        lda #$2f
        sta $d012
        cli
        jsr sub_1200
        jsr sub_1200
        jsr sub_1200
        jmp loc_09c0

dat_1140:
        .byte $0b                                   // .

// --- Region $1200-$127f ---
.pc = $1200 "sub_1200"
// Referenced by: jsr from $1134, $1137, $113a

sub_1200:
        ldx smc_1105
        dex
        cpx #$bf
        bne loc_124a
        ldy #$00

loc_120a:
        lda $0631,y
        sta $0630,y
        iny
        cpy #$50
        bne loc_120a
.label smc_1216 = * + 1
        jmp loc_1253                                // !SMC: modified by $1245, $1269

loc_1218:
.label smc_1219 = * + 1
.label smc_121a = * + 2
        lda $1503                                   // !SMC: modified by $1275, $127a
        cmp #$ff
        beq sub_1273
        inc smc_1219
        bne loc_1227
        inc smc_121a

loc_1227:
        ldy #$00

loc_1229:
        cmp $126e,y
        beq loc_1236
        iny
        cpy #$05
        bne loc_1229
        jmp loc_123a

loc_1236:
        tya
        clc
        adc #$1b

loc_123a:
        sta $0657
        clc
        adc #$80
        sta $067f
        lda #$53
        sta smc_1216                                // SMC: modifies $1216
        ldx #$c7

loc_124a:
        stx smc_1105                                // SMC: modifies $1105
        rts

dat_124e:
        .byte $00,$00,$00,$00,$00                   // .....

loc_1253:
        lda $0656
        clc
        adc #$40
        sta $0657
        clc
        adc #$80
        sta $067f
        ldx #$c7
        stx smc_1105                                // SMC: modifies $1105
        lda #$18
        sta smc_1216                                // SMC: modifies $1216
        rts

dat_126d:
        .byte $00
        .text "!-.()"
// Referenced by: jsr from $0bf9; branch from $121d

sub_1273:
        lda #$00
        sta smc_1219                                // SMC: modifies $1219
        lda #$15
        sta smc_121a                                // SMC: modifies $121a
        jmp loc_1218

// --- Region $1800-$1815 ---
.pc = $1800 "loc_1800"

loc_1800:
        jmp loc_2108

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

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

loc_1814:
        rts

dat_1815:
        .byte $01                                   // .

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

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

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

loc_186b:
        jmp loc_1a0a

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

loc_188c:
        lda #$02
        sta $2174
        jmp loc_210b

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

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

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

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

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

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

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

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

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

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

loc_19e7:
        inc $2121,x

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

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

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

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

loc_1a33:
        jmp loc_2030

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

loc_1bfb:
        sty $2167
        lda $2155
        and #$01
        beq loc_1c2f
        ldx $ff
        stx $2175
        lda #$89
        sta $f9
        lda #$1e
        sta $fa
        ldx $ff
        lda $2142,x
        ldy #$0b
        cmp ($f9),y
        bcs loc_1c50
        ldy #$0a

loc_1c1f:
        cmp ($f9),y
        bcs loc_1c5b
        dey
        cpy #$06
        bne loc_1c1f
        cmp ($f9),y
        bcs loc_1c32
        jmp loc_1c7b

loc_1c2f:
        jmp loc_1c6a

loc_1c32:
        lda $ff
        asl
        bne loc_1c3a
        clc
        adc #$01

loc_1c3a:
        sta $2168
        ldx $2172
        txa
        and $2168
        bne loc_1c4e
        txa
        clc
        adc $2168
        sta $d417

loc_1c4e:
        ldy #$06

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

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

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

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

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

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

loc_1ce0:
        jmp loc_1d52

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

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

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

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

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

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

loc_1d63:
        rts

// --- Region $2030-$204e ---
.pc = $2030 "loc_2030"

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

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

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

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

sub_20d9:
        lda #$00
        ldx #$62

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

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

loc_20f5:
        sta $2121,x
        sta $2124,x
        sta $2127,x
        sta $2130,x
        dex
        bpl loc_20f5
        sta $2174
        rts

loc_2108:
        jsr sub_20d9

loc_210b:
        ldx #$00
        txa

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

// --- Region $2948-$2957 ---
.pc = $2948 "Segment $2948"
        sed
        sed
        .byte $ff,$ff,$f8                           // isc $f8ff,x // ILLEGAL
        sed
        sed
        sed
        .byte $ff,$ff,$ff                           // isc $ffff,x // ILLEGAL
        .byte $ff,$ff,$ff                           // isc $ffff,x // ILLEGAL

dat_2956:
        .byte $ff,$ff                               // ..

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

// --- Region $0800-$088b ---
.pc = $0800 "chr_0800"

chr_0800:
        // === Charset data (140 bytes, $0800-$088b) ===
        .byte $00,$00,$00,$00,$00,$15,$1f,$1e       // char 0 @+0
        .byte $00,$00,$00,$00,$00,$55,$ff,$aa       // char 1 @+1
        .byte $00,$00,$00,$00,$00,$54,$f4,$b4       // char 2 @+2
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 3 @+3
        .byte $1e,$1e,$1e,$1e,$1e,$1e,$1e,$1e       // char 4 @+4
        .byte $b4,$b4,$b4,$b4,$b4,$b5,$bf,$aa       // char 5 @+5
        .byte $b4,$b4,$b4,$b4,$b4,$b4,$b4,$b4       // char 6 @+6
        .byte $aa,$bf,$b5,$b4,$b4,$b5,$bf,$aa       // char 7 @+7
        .byte $aa,$ff,$55,$00,$00,$55,$ff,$aa       // char 8 @+8
        .byte $aa,$ff,$55,$00,$00,$54,$f4,$b4       // char 9 @+9
        .byte $aa,$ff,$55,$00,$00,$00,$00,$00       // char 10 @+10
        .byte $b4,$f4,$54,$00,$00,$00,$00,$00       // char 11 @+11
        .byte $1e,$1f,$15,$00,$00,$00,$00,$00       // char 12 @+12
        .byte $aa,$fe,$5e,$1e,$1e,$1e,$1e,$1e       // char 13 @+13
        .byte $aa,$bf,$b5,$b4,$b4,$b4,$b4,$b4       // char 14 @+14
        .byte $b4,$f4,$54,$00,$00,$55,$ff,$aa       // char 15 @+15
        .byte $00,$00,$30,$dc,$30,$00,$00,$00       // char 16 @+16
        .byte $00,$00,$00,$10                       // char 17 (partial)

// --- Region $08ab-$08d5 ---
.pc = $08ab "dat_08ab"

dat_08ab:
        .byte $10,$00,$00,$00,$00                   // char 21 (partial)
        .byte $00,$00,$30,$dc,$30,$00,$00,$00       // char 22 @+22
        .byte $00,$20,$30,$de,$30,$20,$00,$00       // char 23 @+23
        .byte $20,$20,$30,$de,$30,$20,$20,$00       // char 24 @+24
        .byte $00,$20,$30,$de,$30,$20,$00,$00       // char 25 @+25
        .byte $00,$00,$30,$dc,$30                   // char 26 (partial)

dat_08d5:
        // === Fill data (1 bytes, $08d5-$08d5) ===
        .byte $00                                   // .

// --- Region $0900-$0934 ---
.pc = $0900 "spr_0900"

spr_0900:
        .fill 8, $00
        .byte $78,$a9,$34,$85,$01,$a2,$00,$bd,$00,$30,$9d,$01,$08,$e8,$d0,$f7 // x.4......0......
        .byte $ee,$48,$03,$ee,$45,$03,$d0,$ef,$a9,$37,$85,$01,$58,$a9,$5e,$85 // .H..E....7..X.^.
        .byte $ae,$85,$2d,$a9,$c4,$85,$af,$85,$2e,$4c,$10,$08 // ..-......L..

dat_0934:
        // === Fill data (1 bytes, $0934-$0934) ===
        .byte $00                                   // .

// --- Region $09c6-$09c6 ---
.pc = $09c6 "chr_09c6"

chr_09c6:
        // === Charset data (1 bytes, $09c6-$09c6) ===
        .byte $00                                   // char 0 (partial)

// --- Region $0a95-$0a9f ---
.pc = $0a95 "chr_0a95"

chr_0a95:
        // === Charset data (11 bytes, $0a95-$0a9f) ===
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 0 @+0
        .byte $00,$00,$00                           // char 1 (partial)

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

// --- Region $0b59-$0b7f ---
.pc = $0b59 "chr_0b59"

chr_0b59:
        // === Charset data (39 bytes, $0b59-$0b7f) ===
        .byte $fe,$0a,$d0,$08,$a9,$05,$8d,$fe       // char 0 @+0
        .byte $0a,$20,$80,$0b,$60,$00,$00,$00       // char 1 @+1
        .byte $00,$00,$00,$00,$00,$00,$00,$20       // char 2 @+2
        .byte $00,$0b,$20,$00,$0b,$60,$00,$00       // char 3 @+3
        .byte $00,$00,$00,$00,$00,$00,$00           // char 4 (partial)

// --- Region $0b94-$0bbf ---
.pc = $0b94 "chr_0b94"

chr_0b94:
        // === Charset data (44 bytes, $0b94-$0bbf) ===
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 0 @+0
        .byte $00,$00,$00,$00,$20,$13,$0c,$15       // char 1 @+1
        .byte $07,$20,$0d,$05,$07,$01,$20,$14       // char 2 @+2
        .byte $12,$01,$09,$0e,$05,$12,$21,$20       // char 3 @+3
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 4 @+4
        .byte $00,$00,$00,$00                       // char 5 (partial)

// --- Region $0cff-$0fff ---
.pc = $0cff "Program $0cff"
        .byte $00                                   // char 0 (partial)

txt_0d00:
        .byte $20,$20,$20,$20,$20                   // char 0 (partial)
        .byte $20,$20,$20,$20,$20,$20,$20,$20       // char 1 @+1
        .byte $20,$20,$20,$20,$20,$20,$00,$01       // char 2 @+2
        .byte $01,$01,$01,$01,$02,$00,$01,$02       // char 3 @+3

txt_0d1d:
        .byte $20,$20,$20,$20,$00,$01,$02,$00       // char 4 @+4
        .byte $01,$01,$01,$01,$01,$02,$00,$01       // char 5 @+5
        .byte $01,$01,$01,$01,$02                   // char 6 (partial)

dat_0d32:
        .text "                                                                                 "
        .byte $04,$10                               // char 16 (partial)
        .byte $15,$10,$15,$10,$06,$04,$10,$06       // char 17 @+17

txt_0d8d:
        .byte $20,$20,$20,$20,$04,$10,$06,$04       // char 18 @+18
        .byte $12,$13,$14,$13,$12,$06,$04,$14       // char 19 @+19
        .byte $13,$12,$11,$10,$06                   // char 20 (partial)

dat_0da2:
        .text "                                                                                 "
        .byte $04,$15                               // char 30 (partial)
        .byte $07,$08,$09,$0a,$0b,$04,$11,$06       // char 31 @+31

txt_0dfd:
        .byte $20,$20,$20,$20,$04,$15,$06,$0c       // char 32 ' '
        .byte $0a,$0d,$13,$0e,$0a,$0b,$04,$15       // char 33 '!'
        .byte $07,$08,$09,$0a,$0b                   // char 34 (partial)

dat_0e12:
        .text "                                                                                 "
        .byte $04,$10                               // char 44 (partial)
        .byte $15,$10,$06,$20,$20,$04,$12,$06       // char 45 '-'

txt_0e6d:
        .byte $20,$20,$20,$20,$04,$10,$06,$20       // char 46 '.'
        .byte $20,$04,$12,$06,$20,$20,$04,$16       // char 47 '/'
        .byte $17,$18,$06                           // char 48 (partial)

dat_0e80:
        .text "                                                                                   "
        .byte $04,$15                               // char 58 (partial)
        .byte $07,$08,$0f,$01,$02,$04,$13,$05       // char 59 ';'
        .byte $01,$01,$01,$02,$04,$15,$06,$20       // char 60 '<'
        .byte $20,$04,$11,$06,$20,$20,$04,$17       // char 61 '='
        .byte $07,$08,$0f,$01,$02                   // char 62 (partial)

dat_0ef2:
        .text "                                                                                 "
        .byte $04,$10                               // char 72 (partial)
        .byte $15,$10,$15,$10,$06,$04,$14,$13       // char 73 'I'
        .byte $12,$11,$10,$06,$04,$10,$06,$20       // char 74 'J'
        .byte $20,$04,$10,$06,$20,$20,$04,$18       // char 75 'K'
        .byte $10,$11,$12,$13,$06                   // char 76 (partial)

dat_0f62:
        .text "                                                                                 "
        .byte $0c,$0a                               // char 86 (partial)
        .byte $0a,$0a,$0a,$0a,$0b,$0c,$0a,$0a       // char 87 'W'
        .byte $0a,$0a,$0a,$0b,$0c,$0a,$0b,$20       // char 88 'X'
        .byte $20,$0c,$0a,$0b,$20,$20,$0c,$0a       // char 89 'Y'
        .byte $0a,$0a,$0a,$0a,$0b                   // char 90 (partial)

dat_0fd2:
        .text "                                              "

// --- Region $1036-$10b8 ---
.pc = $1036 "dat_1036"

dat_1036:
        // === Sine/lookup table (130 bytes, range $00-$c7) ===
        .fill 10, $00
        .fill 24, $c4
        .byte $c7,$c7,$c6,$c5,$c4,$c2,$c1,$c0,$c0,$c0,$c1,$c2,$c4,$c5,$c6,$c7 // ................
        .byte $09,$02,$08,$0a,$0f,$07,$01,$01,$01,$01,$07,$0f,$0a,$08,$02,$09 // ................
        .byte $06,$06,$0e,$01,$01,$0e,$06,$06,$09,$0b,$08,$0c,$0f,$07,$01,$01 // ................
        .byte $01,$01,$07,$0f,$0c,$08,$0b,$09,$12,$01,$07,$07,$07,$07,$08,$07 // ................
        .byte $07,$01,$07,$07,$07,$07,$08,$08,$07,$01,$07,$07,$07,$07,$08,$07 // ................
        .byte $07,$01,$07,$07,$07,$07,$08,$07,$07,$01,$07,$07,$07,$07,$08,$07 // ................

dat_10b8:
        // === Fill data (1 bytes, $10b8-$10b8) ===
        .byte $00                                   // .

// --- Region $1141-$1170 ---
.pc = $1141 "Segment $1141"
        .byte $04,$08,$08,$0a,$08,$08,$0c,$06,$03,$08,$08,$0a,$08,$08,$0b,$07 // ................
        .fill 15, $00
        .byte $06,$06,$0e,$06,$0e,$0e,$03,$01,$00,$09,$08,$0a,$0a,$07,$07,$01 // ................

dat_1170:
        // === Fill data (1 bytes, $1170-$1170) ===
        .byte $00                                   // .

// --- Region $1280-$1280 ---
.pc = $1280 "dat_1280"

dat_1280:
        // === Fill data (1 bytes, $1280-$1280) ===
        .byte $00                                   // .

// --- Region $1300-$13c9 ---
.pc = $1300 "dat_1300"

dat_1300:
        .byte $01,$02,$05,$0a,$11,$1a
        .text "%0>LZ"
        .byte $69,$78,$87,$95,$a2
        .byte $af,$ba,$c4,$cc,$d3,$d7,$da,$dc,$db,$d9,$d6,$d1,$cb,$c4,$bc,$b4 // ................
        .byte $ab,$a2,$9a,$91,$8a,$83,$7d,$77,$73,$70,$6f,$6e,$6e,$6f,$72,$74 // ......}wsponnort
        .byte $78,$7c,$80,$83,$87,$8b,$8d,$90,$91,$91,$90,$8f,$8c,$88,$82,$7c // x|.............|
        .byte $75,$6e,$65,$5d                       // une]

txt_1344:
        .text "TKC;4.)&$#%(,3;EP"
        .byte $5d,$6a,$78,$87,$96,$a5,$b3,$c1,$cf,$da,$e5,$ee,$f5,$fa,$fd,$fe // ]jx.............
        .byte $fd,$fa,$f5,$ee,$e5,$da,$cf,$c1,$b3,$a5,$96,$87,$78,$6a,$5d // ............xj]

txt_1374:
        .text "PE;3,(%#$&).4;CKT"
        .byte $5d,$65,$6e,$75,$7c,$82,$88,$8c,$8f,$90,$91,$91,$90,$8d,$8b,$87 // ]enu|...........
        .byte $83,$80,$7c,$78,$74,$72,$6f,$6e,$6e,$6f,$70,$73,$77,$7d,$83,$8a // ..|xtronnopsw}..
        .byte $91,$9a,$a2,$ab,$b4,$bc,$c4,$cb,$d1,$d6,$d9,$db,$dc,$da,$d7,$d3 // ................
        .byte $cc,$c4,$ba,$af,$a2,$95,$87,$78,$69
        .text "ZL>0%"
        .byte $1a,$11
        .byte $0a,$05,$02,$01                       // ....

dat_13c9:
        // === Fill data (1 bytes, $13c9-$13c9) ===
        .byte $00                                   // .

// --- Region $1400-$14c9 ---
.pc = $1400 "txt_1400"

txt_1400:
        .text "??><:740+&"
        .byte $22                                   // double quote character
        .byte $1d,$18,$13,$0f,$0b,$08,$05,$03,$02,$02,$03,$04,$06,$09,$0c,$10 // ................
        .byte $14,$19,$1d                           // ...

txt_141e:
        .text "!&*-13577876530.+)&$! "
        .byte $1e,$1d,$1c,$1b,$1b,$1c,$1c,$1d,$1e,$1f // ..........

txt_143e:
        .text " !"
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .text "###"
        .byte $22                                   // double quote character
        .text "! "
        .byte $1f,$1d,$1b,$1a,$18,$16,$14,$13,$12,$11,$11,$11,$12,$13,$15,$18 // ................
        .byte $1b,$1e                               // ..

txt_145a:
        .byte $22                                   // double quote character
        .text "%)-148:<>??><:740+&"
        .byte $22                                   // double quote character
        .byte $1d,$18,$13,$0f,$0b,$08,$05,$03,$02,$02,$03,$04,$06,$09,$0c,$10 // ................
        .byte $14,$19,$1d                           // ...

txt_1482:
        .text "!&*-13577876530.+)&$"
        .byte $22                                   // double quote character
        .text " "
        .byte $1e,$1d,$1c,$1b,$1b,$1c,$1c,$1d,$1e,$1f // ..........

txt_14a2:
        .text " !"
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .text "###"
        .byte $22                                   // double quote character
        .byte $22                                   // double quote character
        .text " "
        .byte $1f,$1d,$1b,$1a,$18,$16,$14,$13,$12,$11,$11,$11,$12,$13,$15,$18 // ................
        .byte $1b,$1e                               // ..

txt_14be:
        .text "!%)-148:<>?"
        .byte $00                                   // string terminator

// --- Region $1500-$16da ---
.pc = $1500 "spr_1500"

spr_1500:
        // === Sprite data (64 bytes, $1500-$153f) ===
        .byte $20,$20,$15                           // ..#.......#........#.#.#
        .byte $10,$20,$06                           // ...#......#..........##.
        .byte $12,$0f,$0d                           // ...#..#.....####....##.#
        .byte $20,$14,$08                           // ..#........#.#......#...
        .byte $05,$20,$03                           // .....#.#..#...........##
        .byte $01,$16,$05                           // .......#...#.##......#.#
        .byte $12,$0e,$13                           // ...#..#.....###....#..##
        .byte $20,$0f,$06                           // ..#.........####.....##.
        .byte $20,$14,$08                           // ..#........#.#......#...
        .byte $05,$20,$08                           // .....#.#..#.........#...
        .byte $05,$0c,$0c                           // .....#.#....##......##..
        .byte $20,$17,$05                           // ..#........#.###.....#.#
        .byte $20,$01,$07                           // ..#............#.....###
        .byte $01,$09,$0e                           // .......#....#..#....###.
        .byte $20,$12,$01                           // ..#........#..#........#
        .byte $09,$13,$05                           // ....#..#...#..##.....#.#
        .byte $20,$0f,$15                           // ..#.........####...#.#.#
        .byte $12,$20,$10                           // ...#..#...#........#....
        .byte $0f,$17,$05                           // ....####...#.###.....#.#
        .byte $12,$20,$12                           // ...#..#...#........#..#.
        .byte $0f,$15,$0e                           // ....####...#.#.#....###.
        .byte $04                                   // sprite 0 padding

txt_1540:
        .encoding "screencode_mixed"
        .text " the hour on the tower even when there is a shower"
        .encoding "petscii_upper"

txt_1572:
        .text " !! "

txt_1576:
        .encoding "screencode_mixed"
        .text "just back to crack slug"
        .encoding "petscii_upper"

txt_158d:
        .text " !! "

txt_1591:
        .encoding "screencode_mixed"
        .text "for all who are not living undeads we added a trainer to make life easier"
        .encoding "petscii_upper"

txt_15da:
        .text " !! "

txt_15de:
        .encoding "screencode_mixed"
        .text "standing on walls kicking each others balls here are the greetinx to ikari and dcs"
        .encoding "petscii_upper"

txt_1630:
        .text " !! "

txt_1634:
        .encoding "screencode_mixed"
        .text "here comes now the long awaited member list"
        .encoding "petscii_upper"

txt_165f:
        .text "!!               "

txt_1670:
        .encoding "screencode_mixed"
        .text "hmmmmm not yet"
        .encoding "petscii_upper"

txt_167e:
        .text "   !! "
        .byte $02,$19,$05                           // ...

txt_1687:
        .text " ......         "
        .byte $ff,$20,$18,$e5,$ad,$12,$d0,$d0,$fb,$ad,$19,$d0,$29,$01,$c9,$01 // . ..........)...
        .byte $d0,$03,$4c,$00,$0c,$a2,$00,$8e,$20,$d0,$8e,$21,$d0,$a9,$20,$9d // ..L..... ..!.. .
        .byte $00,$04,$9d,$00,$05,$9d,$00,$06,$9d,$00,$07,$e8,$d0,$f1,$a2,$00 // ................
        .byte $a9,$0f,$9d,$00,$d8,$bd,$00,$17,$9d,$00,$04,$e8,$e0,$50,$d0,$f0 // .............P..
        .byte $4c,$cb,$0b                           // L..

dat_16da:
        // === Fill data (1 bytes, $16da-$16da) ===
        .byte $00                                   // .

// --- Region $1700-$1750 ---
.pc = $1700 "txt_1700"

txt_1700:
        .encoding "screencode_mixed"
        .text "ntsc! sorry yankee's no elite intro"
        .encoding "petscii_upper"

txt_1723:
        .text " !!            "

txt_1732:
        .encoding "screencode_mixed"
        .text "press space anyway"
        .encoding "petscii_upper"

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

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

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

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

spr_1e00:
        // === Sprite data (64 bytes, $1e00-$1e3f) ===
        .byte $21,$23,$25                           // ..#....#..#...##..#..#.#
        .byte $27,$2a,$2c                           // ..#..###..#.#.#...#.##..
        .byte $2f,$32,$35                           // ..#.####..##..#...##.#.#
        .byte $38,$3b,$3f                           // ..###.....###.##..######
        .byte $43,$47,$4b                           // .#....##.#...###.#..#.##
        .byte $4f,$54,$59                           // .#..####.#.#.#...#.##..#
        .byte $5e,$64,$6a                           // .#.####..##..#...##.#.#.
        .byte $70,$77,$7e                           // .###.....###.###.######.
        .byte $86,$8e,$96                           // #....##.#...###.#..#.##.
        .byte $9f,$a8,$b3                           // #..######.#.#...#.##..##
        .byte $bd,$c8,$d4                           // #.####.###..#...##.#.#..
        .byte $e1,$ee,$fd                           // ###....####.###.######.#

txt_1e24:
        .byte $40,$40,$40                           // .#.......#.......#......
        .byte $40,$40,$40                           // .#.......#.......#......
        .byte $40,$00,$00                           // .#......................
        .byte $00,$00,$00                           // ........................
        .byte $00,$00,$40                           // .................#......
        .byte $40,$40,$40                           // .#.......#.......#......
        .byte $06,$06,$07                           // .....##......##......###
        .byte $07,$08,$08                           // .....###....#.......#...
        .byte $07,$07,$56                           // .....###.....###.#.#.##.
        .byte $76                                   // sprite 0 padding
        .byte $1e,$1e,$46                           // ...####....####..#...##.
        .byte $66,$1e,$1e                           // .##..##....####....####.
        .byte $13,$01,$ff                           // ...#..##.......#########
        .byte $23,$08,$13                           // ..#...##....#......#..##
        .byte $03,$23,$00                           // ......##..#...##........
        .byte $00,$00,$00                           // ........................
        .byte $00,$00,$00                           // ........................
        .byte $00,$81,$41                           // ........#......#.#.....#
        .byte $40,$80,$80                           // .#......#.......#.......
        .byte $80,$80,$80                           // #.......#.......#.......
        .byte $10,$10,$10                           // ...#.......#.......#....
        .byte $10,$10,$10                           // ...#.......#.......#....
        .byte $10,$10,$24                           // ...#.......#......#..#..
        .byte $fd,$fb,$f9                           // ######.######.#######..#
        .byte $f8,$f7,$f6                           // #####...####.#######.##.
        .byte $f6,$f5,$f5                           // ####.##.####.#.#####.#.#
        .byte $f4,$f4,$f5                           // ####.#..####.#..####.#.#
        .byte $f6,$f5,$f4                           // ####.##.####.#.#####.#..
        .byte $81

txt_1e77:
        .text "A"
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $40                                   // @ character
        .byte $00                                   // string terminator
        .byte $0c,$18,$c0,$f0,$f8,$f4,$f2,$40,$01,$02,$06,$0c,$10,$30,$04,$a0 // .......@.....0..
        .byte $08,$60,$04,$80,$0c,$10,$03,$80,$10,$40,$00,$80,$50,$1f,$1f,$20 // .`.......@..P.. 
        .byte $10,$22,$14,$22,$95,$22,$b1,$22,$bf,$22,$f5 // .".".".".".

txt_1eb2:
        .byte $22                                   // double quote character
        .text ",#:#M#"
        .byte $5c                                   // backslash character
        .text "#"
        .byte $6e,$23,$80,$23,$81,$23,$8f,$23,$a1,$23,$a2,$23,$a3,$23,$a4,$23 // n#.#.#.#.#.#.#.#
        .byte $a5,$23,$a6,$23,$a7,$23,$a8,$23,$a9,$23,$aa,$23,$ab,$23,$ac,$23 // .#.#.#.#.#.#.#.#
        .byte $ad,$23,$ae,$23,$af,$23,$b0,$23,$b1,$23,$b2,$23,$b3,$23,$b4,$23 // .#.#.#.#.#.#.#.#
        .byte $b5,$23,$b6,$23,$b7,$23,$b8,$23,$b9,$23,$ba,$23,$bb,$23,$c9,$23 // .#.#.#.#.#.#.#.#
        .byte $d7,$23,$e5,$23,$00,$8c,$01,$03,$03,$00,$03,$03,$00,$01,$01,$43 // .#.#...........C
        .byte $06,$0c,$0c,$43,$06,$0c,$0c,$00,$ff   // ...C.....

dat_1f14:
        // === Fill data (1 bytes, $1f14-$1f14) ===
        .byte $00                                   // .

// --- Region $1f80-$1f84 ---
.pc = $1f80 "dat_1f80"

dat_1f80:
        .byte $04,$05,$05,$ff                       // ....

dat_1f84:
        // === Fill data (1 bytes, $1f84-$1f84) ===
        .byte $00                                   // .

// --- Region $1fc0-$1fc0 ---
.pc = $1fc0 "spr_1fc0"

spr_1fc0:
        .byte $00                                   // .

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

chr_2000:
        .byte $00                                   // .

// --- Region $204f-$206e ---
.pc = $204f "chr_204f"

chr_204f:
        // === Charset data (32 bytes, $204f-$206e) ===
        .byte $00,$49,$00,$8c,$07,$87,$08,$8c       // char 0 @+0
        .byte $07,$87,$08,$85,$09,$88,$0a,$8c       // char 1 @+1
        .byte $07,$87,$08,$8c,$07,$87,$08,$85       // char 2 @+2
        .byte $09,$88,$0a,$47,$00,$0d,$ff           // char 3 (partial)

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

// --- Region $2117-$23a1 ---
.pc = $2117 "chr_2117"

chr_2117:
        // === Charset data (651 bytes, $2117-$23a1) ===
        .byte $a9,$02,$8d,$74,$21,$60,$01,$00       // char 0 @+0
        .byte $07,$0e,$01,$00,$01,$04,$05,$00       // char 1 @+1
        .byte $00,$00,$2a,$02,$02,$2f,$51,$17       // char 2 @+2
        .byte $00,$21,$34,$21,$01,$06,$00,$07       // char 3 @+3
        .byte $15,$07,$07,$15,$07,$0c,$1f,$0c       // char 4 @+4
        .byte $00,$00,$00,$04,$04,$0a,$80,$00       // char 5 @+5
        .byte $00,$09,$08,$00,$07,$08,$00,$a0       // char 6 @+6
        .byte $0c,$00,$00,$08,$26,$61,$41,$00       // char 7 @+7
        .byte $ff,$04,$00,$00,$00,$00,$00,$01       // char 8 @+8
        .byte $00,$00,$03,$03,$03,$00,$00,$00       // char 9 @+9
        .byte $00,$01,$90,$00,$00,$00,$00,$00       // char 10 @+10
        .byte $01,$01,$01,$b0,$01,$00,$00,$00       // char 11 @+11
        .byte $00,$08,$40,$16,$00,$03,$07,$00       // char 12 @+12
        .byte $09,$00,$00,$00,$00,$00,$00,$00       // char 13 @+13
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 14 @+14
        .byte $00,$07,$51,$00,$ff,$00,$26,$61       // char 15 @+15
        .byte $41,$08,$11,$0f,$f8,$00,$30,$00       // char 16 @+16
        .byte $10,$07,$51,$00,$fa,$00,$26,$61       // char 17 @+17
        .byte $41,$08,$11,$00,$88,$00,$01,$00       // char 18 @+18
        .byte $50,$05,$41,$00,$d7,$00,$00,$21       // char 19 @+19
        .byte $84,$08,$17,$00,$e8,$00,$00,$00       // char 20 @+20
        .byte $80,$09,$21,$00,$de,$00,$25,$31       // char 21 @+21
        .byte $40,$0d,$11,$00,$de,$00,$25,$73       // char 22 @+22
        .byte $40,$08,$21,$00,$f7,$00,$11,$00       // char 23 @+23
        .byte $10,$05,$41,$00,$dc,$00,$00,$f1       // char 24 @+24
        .byte $44,$01,$41,$00,$af,$00,$25,$43       // char 25 @+25
        .byte $00,$08,$15,$00,$f9,$00,$00,$00       // char 26 @+26
        .byte $80,$04,$41,$00,$7f,$00,$25,$41       // char 27 @+27
        .byte $40,$08,$41,$00,$fa,$00,$25,$61       // char 28 @+28
        .byte $40,$08,$11,$00,$7c,$00,$25,$f0       // char 29 @+29
        .byte $40,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 30 @+30
        .byte $ff,$c0,$af,$21,$ff,$c1,$82,$0e       // char 31 @+31
        .byte $15,$15,$15,$c3,$85,$15,$c1,$82       // char 32 ' '
        .byte $15,$15,$0e,$15,$15,$15,$c3,$85       // char 33 '!'
        .byte $15,$c1,$82,$15,$15,$0e,$10,$10       // char 34 '"'
        .byte $10,$c3,$85,$10,$c1,$82,$10,$10       // char 35 '#'
        .byte $0e,$10,$10,$10,$c3,$85,$10,$c1       // char 36 '$'
        .byte $82,$10,$10,$0e,$15,$15,$15,$c3       // char 37 '%'
        .byte $85,$15,$c1,$82,$15,$15,$0e,$15       // char 38 '&'
        .byte $15,$15,$c3,$85,$15,$c1,$82,$15       // char 39 '''
        .byte $15,$0e,$10,$10,$10,$c3,$85,$10       // char 40 '('
        .byte $c1,$82,$10,$10,$0e,$10,$10,$10       // char 41 ')'
        .byte $10,$10,$10,$10,$0e,$0e,$0e,$c3       // char 42 '*'
        .byte $85,$0e,$0e,$c1,$82,$0e,$0c,$0c       // char 43 '+'
        .byte $0c,$c3,$85,$0c,$0c,$c1,$82,$0c       // char 44 ','
        .byte $11,$11,$11,$c3,$85,$11,$11,$c1       // char 45 '-'
        .byte $82,$11,$10,$10,$10,$c3,$85,$10       // char 46 '.'
        .byte $c1,$82,$10,$0e,$13,$ff,$c4,$82       // char 47 '/'
        .byte $1f,$c6                               // char 48 (partial)

txt_2299:
        .byte $21,$2d,$21,$c2,$2b,$c6               // char 48 (partial)

txt_229f:
        .byte $2d,$21,$2d,$c4,$82,$1f,$c6           // char 49 (partial)

txt_22a6:
        .byte $21                                   // char 49 (partial)
        .byte $2d,$21,$c2,$82,$2b,$c6,$2d,$21       // char 50 '2'
        .byte $2d,$ff,$c1,$82,$0e,$15,$15,$15       // char 51 '3'
        .byte $c3,$85,$15,$c1,$82,$15,$15,$ff       // char 52 '4'
        .byte $c4,$82,$1f,$c6                       // char 53 (partial)

txt_22c3:
        .byte $34,$34,$34,$c2                       // char 53 (partial)
        .byte $2c,$c6                               // char 54 (partial)

txt_22c9:
        .byte $34,$34,$c4,$1f,$c6                   // char 54 (partial)

txt_22ce:
        .byte $34                                   // char 54 (partial)
        .byte $34,$c4,$1f,$c6,$34,$c2,$2c,$c6       // char 55 '7'

txt_22d7:
        .byte $34,$34,$34,$c4,$1f,$c6               // char 56 (partial)

txt_22dd:
        .byte $34,$34                               // char 56 (partial)
        .byte $34,$c2,$2c,$c6,$34,$c4,$1f,$1f       // char 57 '9'
        .byte $c6                                   // char 58 (partial)

txt_22e8:
        .byte $34,$34,$c4,$1f,$c6,$34,$c2           // char 58 (partial)
        .byte $2c,$c6,$34,$34,$34,$ff,$c4,$82       // char 59 ';'
        .byte $1f,$c6                               // char 60 (partial)

txt_22f9:
        .byte $34,$34,$34,$c2,$2c,$c6               // char 60 (partial)

txt_22ff:
        .byte $34,$34,$c4,$1f,$c6                   // char 61 (partial)

txt_2304:
        .byte $34,$34,$c4                           // char 61 (partial)
        .byte $1f,$c6,$34,$c2,$2c,$c6               // char 62 (partial)

txt_230d:
        .byte $34,$34                               // char 62 (partial)
        .byte $34,$c4,$1f,$c6                       // char 63 (partial)

txt_2313:
        .byte $34,$34,$34,$c2                       // char 63 (partial)
        .byte $2c,$c6,$34,$c4,$1f,$1f,$c6           // char 64 (partial)

txt_231e:
        .byte $34                                   // char 64 (partial)
        .byte $34,$c4,$1f,$c6,$34,$c2,$2c,$c6       // char 65 'A'
        .byte $34,$c2,$2c,$2c,$ff,$c1,$82,$15       // char 66 'B'
        .byte $15,$15,$c3,$85,$15,$c1,$82,$15       // char 67 'C'
        .byte $13,$18,$ff,$c0,$85,$13,$cf,$85       // char 68 'D'
        .byte $2d,$2d,$82,$2d,$85,$34,$82,$34       // char 69 'E'
        .byte $85,$32,$30,$8b,$32,$ff,$cf,$85       // char 70 'F'
        .byte $2d,$2d,$82,$2d,$85,$34,$82,$34       // char 71 'G'
        .byte $85,$32,$30,$32,$ff,$c0,$85,$13       // char 72 'H'
        .byte $cf,$85,$2d,$2d,$82,$2d,$85,$2f       // char 73 'I'
        .byte $82,$2f,$85,$2d,$8b,$2b,$ff,$c0       // char 74 'J'
        .byte $85,$13,$cf,$85,$2d,$2d,$82,$2d       // char 75 'K'
        .byte $85,$31,$82,$31,$85,$2f,$8b,$2c       // char 76 'L'
        .byte $ff,$ff,$c1,$85,$15,$15,$15,$82       // char 77 'M'
        .byte $15,$0e,$91,$15,$82,$10,$0e,$ff       // char 78 'N'
        .byte $c1,$97,$e1                           // char 79 (partial)

txt_2392:
        .byte $20,$21,$c2,$82,$20                   // char 79 (partial)
        .byte $85,$21,$82,$23,$85,$24,$82,$23       // char 80 'P'
        .byte $21,$ff                               // char 81 (partial)

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

// --- Region $2580-$2580 ---
.pc = $2580 "spr_2580"

spr_2580:
        .byte $00                                   // .

// --- Region $2800-$2947 ---
.pc = $2800 "dat_2800"

dat_2800:
        .byte $ff,$00,$00,$00,$00,$00,$00,$ff,$f8,$fc,$fc,$fc,$fe,$fe,$fe,$c1 // ................
        .byte $00,$00,$00,$00,$ff,$ff,$00,$00,$f8,$e0,$c0,$80,$80,$03,$03,$07 // ................
        .byte $00,$00,$00,$00,$ff,$ff,$07,$07,$00,$00,$00,$00,$ff,$ff,$00,$00 // ................
        .byte $00,$00,$00,$00,$ff,$ff,$00,$00,$f8,$e0,$c0,$80,$80,$03,$07,$07 // ................
        .byte $07,$07,$07,$07,$07,$07,$00,$00,$f8,$f8,$f8,$f8,$ff,$ff,$f8,$f8 // ................
        .fill 8, $ff
        .byte $07,$07,$07,$07,$fe,$fe,$00,$00,$07,$07,$07,$07,$07,$07,$07,$07 // ................
        .byte $00,$00,$00,$00,$0f,$0f,$0c,$0c,$00,$00,$00,$00,$07,$07,$07,$07 // ................
        .byte $f8,$e0,$c0,$80,$80,$03,$07,$07,$00,$00,$00,$00,$ff,$ff,$00,$00 // ................
        .byte $f8,$e0,$c0,$80,$80,$03,$07,$07,$00,$00,$00,$00,$ff,$ff,$00,$00 // ................
        .byte $e0,$e0,$e0,$f0,$f0,$f8,$fc,$fe,$00,$00,$00,$00,$ff,$ff,$83,$83 // ................
        .fill 11, $07
        .byte $83,$83,$c1,$c1,$c0,$04,$04,$04,$04,$82,$82,$82,$82,$1f,$07,$03 // ................
        .byte $01,$c0,$f0,$f0,$f8,$07,$07,$07,$07,$07,$03,$80,$80,$00,$00,$00 // ................
        .byte $00,$ff,$ff,$fc,$f8,$f8,$f8,$f8,$f8,$f8,$f8,$f8,$f8,$ff,$ff,$ff // ................
        .byte $ff,$ff,$ff,$f0,$e0,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff // ................
        .byte $fe,$fc,$fc,$f8,$f8,$f3,$f1,$f0,$f8,$fc,$fc,$fe,$fe,$ff,$ff,$ff // ................
        .byte $ff,$ff,$ff,$ff,$ff,$c1,$fe,$fe,$fe,$fc,$fc,$fc,$f8,$00,$00,$ff // ................
        .byte $ff,$00,$00,$00,$00,$07,$03,$03,$80,$80,$c0,$e0,$f8,$07,$07,$ff // ................
        .byte $ff,$00,$00,$00,$00,$00,$00,$ff,$ff,$00,$00,$00,$00,$00,$00,$ff // ................
        .byte $ff,$00,$00,$00,$00,$07,$07,$03,$80,$80,$c0,$e0,$f8,$00,$00,$07 // ................
        .byte $07,$07,$07,$07,$07                   // .....

// --- Region $2958-$3014 ---
.pc = $2958 "Segment $2958"
        .byte $00,$00,$fe,$fe,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07,$07 // ................
        .byte $0c,$0c,$0f,$0f,$00,$00,$00,$00,$07,$07,$07,$07,$00,$00,$00,$00 // ................
        .byte $07,$07,$03,$80,$80,$c0,$e0,$f8,$00,$00,$ff,$ff,$00,$00,$00,$00 // ................
        .byte $07,$07,$03,$80,$80,$c0,$e0,$f8,$00,$00,$ff,$ff,$00,$00,$00,$00 // ................
        .byte $fe,$fc,$f8,$f0,$f0,$e0,$e0,$e0,$83,$83,$ff,$ff,$00,$00,$00,$00 // ................
        .fill 8, $07
        .byte $c0,$c1,$c1,$83,$83,$07,$07,$07,$82,$82,$82,$82,$04,$04,$04,$04 // ................
        .byte $f8,$f0,$f0,$c0,$01,$03,$07,$1f,$80,$80,$03,$07,$07,$07,$07,$07 // ................
        .byte $f8,$fc,$ff,$ff,$00,$00,$00,$00,$f8,$f8,$f8,$f8,$f8,$f8,$f8,$f8 // ................
        .byte $e0,$f0,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff // ................
        .byte $f8,$f8,$fc,$fc,$fe,$ff,$ff,$ff,$fe,$fe,$fc,$fc,$f8,$f0,$f1,$f3 // ................
        .fill 8, $ff
        .byte $3f,$1f,$1f,$1f,$0f,$0f,$0f,$07,$0f,$03,$03,$01,$81,$83,$03,$07 // ?...............
        .byte $01,$01,$01,$01,$ff,$ff,$ff,$ff,$0f,$03,$03,$01,$81,$c1,$c1,$c1 // ................
        .byte $01,$01,$01,$01,$ff,$ff,$1f,$1f,$01,$01,$01,$01,$ff,$ff,$1f,$1f // ................
        .byte $01,$01,$01,$01,$ff,$ff,$01,$01,$c1,$c1,$c1,$c1,$c1,$c1,$01,$01 // ................
        .text "????"
        .byte $ff,$ff
        .byte $3f,$3f,$83,$83,$83,$83,$ff,$ff,$83,$83
        .byte $c1,$83,$83,$07,$0f,$0f,$1f,$1f,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff // ................
        .byte $0f,$03,$03,$01,$c1,$e1,$61,$61,$0f,$03,$03,$01,$81,$c1,$c1,$c1 // ......aa........
        .byte $3f,$0f,$07,$03,$03,$81,$c1,$c1,$0f,$03,$03,$01,$c1,$c1,$01,$03 // ?...............
        .byte $3f,$0f,$07,$03,$03,$81,$c1,$c1,$0f,$03,$03,$01,$c1,$c1,$01,$03 // ?...............
        .byte $7f,$7f,$7f,$3f,$3f,$1f,$0f,$07,$01,$01,$01,$01,$ff,$ff,$ff,$ff // ...??...........
        .fill 11, $c1
        .byte $83,$83,$07,$07,$07
        .text "!!!!"
        .byte $11,$11,$03,$03,$f1,$c1,$81
        .byte $01,$07,$1f,$1f,$3f,$c1,$c1,$c1,$c1,$c1,$81,$03,$03,$01,$03,$03 // ....?...........
        .byte $07,$ff,$ff,$1f,$1f                   // .....

txt_2ad8:
        .text "????????"
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$03,$07,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff // ................
        .byte $cf,$8f,$0f,$1f,$3f,$3f,$7f,$7f,$ff,$ff,$ff,$7f,$3f,$3f,$1f,$1f // ....??......??..
        .fill 8, $ff
        .byte $07,$0f,$0f,$0f,$1f,$1f,$1f,$3f,$07,$03,$83,$81,$01,$03,$03,$0f // .......?........
        .byte $ff,$ff,$ff,$ff,$01,$01,$01,$01,$c1,$c1,$c1,$81,$01,$03,$03,$0f // ................
        .byte $1f,$1f,$ff,$ff,$01,$01,$01,$01,$1f,$1f,$ff,$ff,$01,$01,$01,$01 // ................
        .byte $01,$01,$ff,$ff,$01,$01,$01,$01,$01,$01,$c1,$c1,$c1,$c1,$c1,$c1 // ................
        .byte $3f,$3f,$ff,$ff
        .text "????"
        .byte $83,$83,$ff,$ff,$83,$83,$83,$83
        .byte $1f,$1f,$0f,$0f,$07,$83,$83,$c1,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff // ................
        .byte $61,$61,$e1,$c1,$01,$03,$03,$0f,$c1,$c1,$c1,$81,$01,$03,$03,$0f // aa..............
        .byte $c1,$c1,$81,$03,$03,$07,$0f,$3f,$03,$01,$c1,$c1,$01,$03,$03,$0f // .......?........
        .byte $c1,$c1,$81,$03,$03,$07,$0f,$3f,$03,$01,$c1,$c1,$01,$03,$03,$0f // .......?........
        .byte $07,$0f,$1f,$3f,$3f,$7f,$7f,$7f,$ff,$ff,$ff,$ff,$01,$01,$01,$01 // ...??...........
        .fill 8, $c1
        .byte $07,$07,$07,$83,$83,$c1,$c1,$c1,$03,$03,$11,$11
        .text "!!!!"
        .byte $3f,$1f,$1f,$07,$01,$81,$c1,$f1,$03,$03,$81,$c1,$c1,$c1,$c1,$c1 // ?...............
        .byte $1f,$1f,$ff,$ff,$07,$03,$03,$01       // ........

txt_2bd8:
        .text "????????"
        .byte $07,$03,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff // ................
        .byte $7f,$7f,$3f,$3f,$1f,$0f,$8f,$cf,$1f,$1f,$3f,$3f,$7f,$ff,$ff,$ff // ..??......??....

scr_2c00:
        // === Screen RAM (1024 bytes, $2c00-$2fff) ===
        .encoding "screencode_mixed"
        .fill 8, $ff
        .byte $c1,$c1,$83,$83,$83                   // scrcode: .....
        .text "@@@@@"
        .byte $ff,$ff                               // scrcode: ..
        .text "@@@@gcc"
        .byte $80,$80,$c0,$e0,$f8                   // scrcode: .....
        .text "gggg@@@@@@gg@@@@"
        .text "@@ggggggggc"
        .byte $80,$80,$c0,$e0,$f8                   // scrcode: .....
        .text "@@gggggg"
        .byte $f8,$f8,$f8,$f8,$f8,$f8,$f8,$f8,$ff,$ff,$ff,$ff // scrcode: ............
        .text "@@@@"
        .text "@@ffgggggggg@@@@llllllllggggggggggc"
        .byte $80,$80,$c0,$e0,$f8                   // scrcode: .....
        .text "@@ggggggffb"
        .byte $80,$80,$c0,$e0,$f8                   // scrcode: .....
        .text "@@"
        .byte $fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff // scrcode: ..........
        .text "@@@@"
        .byte $83,$83,$83,$81,$80,$c0,$c0,$f0       // scrcode: ........
        .text "gggc@"
        .byte $80,$80,$e0,$e0,$e0,$f0,$f0,$f0,$f8,$f8,$f8,$c1,$c1,$c1,$c1,$e1 // scrcode: ................
        .byte $e3,$e3,$f7,$f8,$f0,$f0,$c0           // scrcode: .......
        .text "acg"
        .byte $1f,$c0,$f0,$ff,$ff,$e0,$e0,$e0,$e0   // scrcode: .........
        .byte $f8,$f0,$e0,$e0,$c0,$80,$80           // scrcode: .......
        .text "@"
        .byte $f8,$f8,$ff,$ff,$f8,$f8,$f8,$f8,$e0,$c0,$ff,$ff,$ff,$ff,$ff,$ff // scrcode: ................
        .byte $ff,$ff,$ff,$ff,$c3,$c3,$c3,$c3,$f8,$f8,$fc,$fc,$fe,$ff,$ff,$ff // scrcode: ................
        .byte $fe,$fe,$fc,$fc,$f8,$f0,$f1,$f3,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff // scrcode: ................
        .text "@@@"
        .byte $83,$83,$83,$c1,$c1                   // scrcode: .....
        .text "@@@@"
        .byte $ff,$ff                               // scrcode: ..
        .text "@@"
        .byte $f8,$e0,$c0,$80,$80                   // scrcode: .....
        .text "ccg"
        .text "@@@@gggg@@@@gg@@gggggg@@"
        .byte $f8,$e0,$c0,$80,$80                   // scrcode: .....
        .text "cgggggggg@@"
        .fill 8, $f8
        .text "@@@@"
        .byte $ff,$ff,$ff,$ff                       // scrcode: ....
        .text "ggggff@@@@@@ggggllllllllgggggggg"
        .byte $f8,$e0,$c0,$80,$80                   // scrcode: .....
        .text "cgggggggg@@"
        .byte $f8,$e0,$c0,$80,$80                   // scrcode: .....
        .text "bff"
        .byte $ff,$ff,$ff,$ff,$ff,$fe               // scrcode: ......
        .text "@@@@@@"
        .byte $ff,$ff,$ff,$ff                       // scrcode: ....
        .byte $f0,$c0,$c0,$80,$81,$83,$83,$83,$e0,$80,$80 // scrcode: ...........
        .text "@cggg"
        .byte $f8,$f8,$f8,$f0,$f0,$f0,$e0,$e0,$f7,$e3,$e3,$e1,$c1,$c1,$c1,$c1 // scrcode: ................
        .byte $1f                                   // scrcode: .
        .text "gca"
        .byte $c0,$f0,$f0,$f8                       // scrcode: ....
        .byte $e0,$e0,$e0,$e0,$ff,$ff,$f0,$c0       // scrcode: ........
        .text "@"
        .byte $80,$80,$c0,$e0,$e0,$f0,$f8,$f8,$f8,$f8,$f8,$ff,$ff,$f8,$f8,$ff // scrcode: ................
        .byte $ff,$ff,$ff,$ff,$ff,$c0,$e0,$c3,$c3,$c3,$c3,$ff,$ff,$ff,$ff // scrcode: ...............
        .byte $ff,$ff,$ff,$fe,$fc,$fc,$f8,$f8,$f3,$f1,$f0,$f8,$fc,$fc,$fe,$fe // scrcode: ................
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // scrcode: ........
        .text "gg"
        .byte $83,$83,$83                           // scrcode: ...
        .text "aaagc"
        .byte $83,$81                               // scrcode: ..
        .text "acco"
        .byte $ff,$ff,$ff,$ff                       // scrcode: ....
        .text "aaaa"
        .byte $c1,$c1,$c1,$81                       // scrcode: ....
        .text "acco"
        .byte $1f,$1f,$ff,$ff                       // scrcode: ....
        .text "aaaa"
        .byte $1f,$1f,$ff,$ff,$ff,$ff,$ff,$ff       // scrcode: ........
        .text "aa"
        .byte $fd,$f1                               // scrcode: ..
        .text "aaco"
        .text "aa"
        .byte $c1,$c1,$c1,$c1,$c1,$c1               // scrcode: ......
        .encoding "petscii_upper"

txt_2e48:
        .text "????????"
        .encoding "screencode_mixed"
        .byte $83,$83,$83                           // scrcode: ...
        .text "ccgg"
        .byte $1f,$1f,$1f                           // scrcode: ...
        .text "oog"
        .byte $83,$83,$c1,$ff,$ff,$ff,$ff           // scrcode: .......
        .text "aaaa"
        .byte $61,$61,$61,$61,$61,$61,$61,$61,$c1,$c1,$c1,$c1,$c1,$c1,$c1,$c1 // scrcode: ................
        .byte $c1,$c1,$81                           // scrcode: ...
        .text "ccgo?co"
        .byte $ff,$ff,$ff,$ff,$ff,$ff               // scrcode: ......
        .text "aaaccaa1coc"
        .byte $83,$c1,$c1,$c1,$c1                   // scrcode: .....
        .text "c"
        .byte $81,$81,$81                           // scrcode: ...
        .text "acco"
        .byte $ff,$ff,$ff,$ff                       // scrcode: ....
        .text "aaaa"
        .byte $c1,$c1,$c1,$c1                       // scrcode: ....
        .text "aaaaoo"
        .byte $1f,$1f,$1f                           // scrcode: ...
        .text "???ccg"
        .byte $87,$87,$c7,$c7,$ef                   // scrcode: .....
        .text "?"
        .byte $1f,$1f                               // scrcode: ..
        .text "ga"
        .byte $81,$c1,$f1                           // scrcode: ...
        .text "g"
        .byte $1f,$ff,$ff                           // scrcode: ...
        .text "oooo??"
        .byte $7f,$ff                               // scrcode: ..
        .text "aaaa??"
        .byte $ff,$ff                               // scrcode: ..
        .text "????go"
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff // scrcode: ..............
        .byte $7f,$7f                               // scrcode: ..
        .text "??"
        .byte $1f                                   // scrcode: .
        .text "o"
        .byte $8f,$cf,$1f,$1f                       // scrcode: ....
        .text "??"
        .byte $7f,$ff,$ff,$ff                       // scrcode: ....
        .encoding "petscii_upper"

spr_2f00:
        .encoding "screencode_mixed"
        .fill 8, $ff
        .text "aaa"
        .byte $83,$83,$83                           // scrcode: ...
        .text "ggocca"
        .byte $81,$83                               // scrcode: ..
        .text "cgaaaa"
        .byte $ff,$ff,$ff,$ff                       // scrcode: ....
        .text "occa"
        .byte $81,$c1,$c1,$c1                       // scrcode: ....
        .text "aaaa"
        .byte $ff,$ff,$1f,$1f                       // scrcode: ....
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$1f,$1f       // scrcode: ........
        .text "ocaa"
        .byte $f1,$fd                               // scrcode: ..
        .text "aa"
        .byte $c1,$c1,$c1,$c1,$c1,$c1               // scrcode: ......
        .text "aa"
        .encoding "petscii_upper"

txt_2f48:
        .text "????????"
        .encoding "screencode_mixed"
        .byte $1f                                   // scrcode: .
        .text "ggcc"
        .byte $83,$83,$83,$c1,$83,$83               // scrcode: ......
        .text "goo"
        .byte $1f,$1f                               // scrcode: ..
        .text "aaaa"
        .byte $ff,$ff,$ff,$ff,$61,$61,$61,$61,$61,$61,$61,$61,$c1,$c1,$c1,$c1 // scrcode: ................
        .byte $c1,$c1,$c1,$c1                       // scrcode: ....
        .text "?ogcc"
        .byte $81,$c1,$c1,$ff,$ff,$ff,$ff,$ff,$ff   // scrcode: .........
        .text "oc1aaccaaa"
        .byte $c1,$c1,$c1,$c1,$83                   // scrcode: .....
        .text "cococca"
        .byte $81,$81,$81                           // scrcode: ...
        .text "c"
        .text "aaaa"
        .byte $ff,$ff,$ff,$ff                       // scrcode: ....
        .text "aaaa"
        .byte $c1,$c1,$c1,$c1                       // scrcode: ....
        .text "???"
        .byte $1f,$1f,$1f                           // scrcode: ...
        .text "oo"
        .byte $ef,$c7,$c7,$87,$87                   // scrcode: .....
        .text "gcc"
        .byte $f1,$c1,$81                           // scrcode: ...
        .text "ag"
        .byte $1f,$1f                               // scrcode: ..
        .text "?"
        .text "oooo"
        .byte $ff,$ff,$1f                           // scrcode: ...
        .text "gaaaa"
        .byte $ff,$7f                               // scrcode: ..
        .encoding "petscii_upper"

txt_2fd6:
        .text "??????"
        .encoding "screencode_mixed"
        .byte $ff,$ff                               // scrcode: ..
        .text "??"
        .byte $ff,$ff,$ff,$ff,$ff,$ff               // scrcode: ......
        .text "og"
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$cf,$8f // scrcode: ..........
        .text "o"
        .byte $1f                                   // scrcode: .
        .text "??"
        .byte $7f,$7f,$ff,$ff,$ff,$7f               // scrcode: ......
        .text "??"
        .byte $1f,$1f                               // scrcode: ..
        .text "@@@@"
        .fill 11, $00                               // scrcode: @@@@@@@@@@@
        .text " "
        .byte $5b,$ff,$4c,$e2,$fc                   // scrcode: .....
        .encoding "petscii_upper"
