// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-01 10:59:22
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $21ff  (6656 bytes)
// Crunched with Cruncher AB — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $1540 (5440)
// IRQ handler:  $17d1 (irq_17d1)
// IRQ handler:  $1810 (irq_1810)
//
// Code: 1196 bytes, Data: 5460 bytes
// Labels: 153, Subroutines: 8
//
// Cross-references: all OK
// ============================================


// --- Region $1540-$175f ---
.pc = $1540 "main_1540"

main_1540:
        sei
        jmp loc_1594

loc_1544:
        sei
        jsr $fda3
        jsr $fd15
        jsr $ff5b
        lda #$f0
        sta $d01a
        sei
        lda #$00
        sta $d020
        sta $d021
        ldx #$00

loc_155e:
        lda loc_157e,x
        sta $0400,x
        inx
        cpx #$16
        bne loc_155e
        lda #$00
        sta $ae
        sta $2d
        lda #$c0
        sta $af
        sta $2e
        lda #$38
        sta $01
        ldx #$00
        jmp $0400

loc_157e:
        lda $2200,x
        sta $0801,x
        inx
        bne loc_157e
        inc $0405
        inc $0402

loc_158d:
        bne loc_157e
        dec $01
        jmp $fce2

loc_1594:
        lda #$7f
        sta $dc0d
        lda #$f1
        sta $d01a
        lda #$03
        sta $8c
        lda #$08
        sta $b0
        lda #$00
        sta $b1
        lda #$1b
        sta $d011
        lda #$00
        sta $d012
        sta $40
        sta $3f
        sta $47
        lda #$d1
        sta $0314
        lda #$17
        sta $0315
        jsr sub_19b6
        jsr sub_1884
        ldx #$00

loc_15cc:
        lda $1769,x
        sta $d400,x
        inx
        cpx #$19
        bne loc_15cc
        ldx #$00

loc_15d9:
        lda #$0f
        sta $dad0,x
        sta $db00,x
        lda #$24
        sta $06d0,x
        sta $06e8,x
        lda #$0b
        sta $d800,x
        sta $d900,x
        lda #$00
        sta $0400,x
        sta $0500,x
        inx
        bne loc_15d9
        ldx #$00

loc_15fe:
        lda #$00
        sta $d9e0,x
        lda #$20
        sta $05e0,x
        inx
        cpx #$f0
        bne loc_15fe
        ldx #$28
        stx $07f8
        inx
        stx $07f9
        inx
        stx $07fa
        inx
        stx $07fb
        inx
        stx $07fc
        inx
        stx $07fd
        lda #$3f
        sta $d015
        lda #$00
        sta $d017
        sta $d01d
        lda #$00
        sta $d027
        sta $d028
        sta $d029
        sta $d02a
        lda #$0c
        sta $d02b
        sta $d02c
        lda #$0f
        sta $d025
        lda #$0b
        sta $d026
        lda #$1f
        sta $d010
        lda #$30
        sta $d01c
        lda #$00
        sta $d000
        lda #$18
        sta $d002
        lda #$30
        sta $d004
        lda #$48
        sta $d006
        lda #$f3
        sta $d001
        sta $d003
        sta $d005
        sta $d007
        lda #$58
        sta $d008
        lda #$94
        sta $d009
        lda #$00
        sta $d00a
        lda #$a6
        sta $d00b
        cli
        ldx #$00

loc_1696:
        dec $d008
        lda #$0a
        jsr sub_1782
        inx
        cpx #$19
        bne loc_1696
        lda #$0f
        sta $48
        lda #$06
        sta $49
        ldx #$00

loc_16ad:
        stx $44
        lda #$41
        sta $d404
        ldy #$17

loc_16b6:
        tya
        clc
        adc #$14
        sta $d401
        lda dat_179e,x
        sta ($48),y
        iny
        lda #$20
        sta ($48),y
        dey
        lda #$01
        jsr sub_1782
        dey
        cpy $44
        bne loc_16b6
        lda #$40
        sta $d404
        inx
        cpx #$17
        bne loc_16ad
        ldx #$00

loc_16de:
        inc $d00a
        lda #$0a
        jsr sub_1782
        inx
        cpx #$19
        bne loc_16de
        lda #$5e
        sta $48
        lda #$06
        sta $49
        ldx #$1b

loc_16f5:
        stx $43
        lda #$41
        sta $d404
        ldy #$01

loc_16fe:
        sty $42
        lda #$2d
        sbc $42
        sta $d401
        lda $17b5,x
        sta ($48),y
        dey
        lda #$20
        sta ($48),y
        iny
        lda #$01
        jsr sub_1782
        iny
        cpy $43
        bne loc_16fe
        lda #$40
        sta $d404
        dex
        cpx #$01
        bne loc_16f5
        ldx #$00

loc_1728:
        dec $d00a
        inc $d008
        lda #$08
        jsr sub_1782
        inx
        cpx #$19
        bne loc_1728

loc_1738:
        lda #$ff
        jsr sub_1782
        jsr sub_1782
        jsr sub_1782
        ldy #$00

loc_1745:
        ldx #$00

loc_1747:
        lda dat_175f,y
        sta $da60,x
        inx
        cpx #$17
        bne loc_1747
        lda #$1e
        jsr sub_1782
        iny
        cpy #$0a
        bne loc_1745
        jmp loc_1738

dat_175f:
        .byte $00                                   // .

// --- Region $1782-$179e ---
.pc = $1782 "sub_1782"
// Referenced by: jsr from $169b, $16ca, $16e3, $1714, $1730, $173a, $173d, $1740

sub_1782:
        sty $47
        stx $46
        tax
        ldy #$00

loc_1789:
        dey
        bne loc_1789
        lda $dc01
        cmp #$ef
        beq loc_179b
        dex
        bne loc_1789
        ldy $47
        ldx $46
        rts

loc_179b:
        jmp loc_1544

dat_179e:
        .byte $10                                   // .

// --- Region $17d1-$188f ---
.pc = $17d1 "irq_17d1"

irq_17d1:
        lda #$01
        sta $d019
        ldx #$92
        stx $d012
        lda #$00
        sta $d021
        sta $d020
        lda #$13
        sta $d018
        lda #$06
        sta $d022
        lda #$0e
        sta $d023
.label smc_17f3 = * + 1
        lda #$d0                                    // !SMC: modified by $18c0
        sta $d016
        jsr sub_19c6
        jsr sub_1970
        jsr sub_1970
        jsr sub_1970
        lda #$10
        sta $0314
        lda #$18
        sta $0315
        jmp $ea81

irq_1810:
        lda #$01
        sta $d019
        ldx #$00
        stx $d012
        lda #$19
        sta $d018
        lda #$09
        sta $d022
        lda #$08
        sta $d023
        lda #$c8
        sta $d016
        ldx #$00
        stx $d012
        ldy #$00

loc_1835:
        iny
        cpy #$32
        bne loc_1835

loc_183a:
        lda dat_1890,x
        sta $d021
        ldy #$09

loc_1842:
        dey
        bne loc_1842
        inx
        cpx #$18
        bne loc_183a
        lda #$d8
        sta $d016
        lda #$00
        sta $d021
        lda #$d1
        sta $0314
        lda #$17
        sta $0315
        jsr sub_18ae
        ldx #$00

loc_1863:
        lda $2120,x
        sta $0900,x
        inx
        cpx #$08
        bne loc_1863
        ldy dat_1890
        ldx #$00

loc_1873:
        lda $1891,x
        sta dat_1890,x
        inx
        cpx #$1e
        bne loc_1873
        sty $18ad
        jmp $ea7e
// Referenced by: jsr from $15c7

sub_1884:
        ldx #$00

loc_1886:
        txa
        sta $d400,x
        inx
        cpx #$0f
        bne loc_1886
        rts

// --- Region $18ae-$1a68 ---
.pc = $18ae "sub_18ae"
// Referenced by: jsr from $185e; jmp from $196d

sub_18ae:
        ldy #$04

loc_18b0:
        dec $b0
        dey
        bne loc_18b0
        lda #$d0
        clc
        adc $b0
        tax
        lda $b0
        bmi loc_18c4
        txa
        sta smc_17f3                                // SMC: modifies $17f3
        rts

loc_18c4:
        lda #$08
        sta $b0
        ldx #$00

loc_18ca:
        lda $0401,x
        sta $0400,x
        lda $0429,x
        sta $0428,x
        lda $0451,x
        sta $0450,x
        lda $0479,x
        sta $0478,x
        lda $04a1,x
        sta $04a0,x
        lda $04c9,x
        sta $04c8,x
        lda $04f1,x
        sta $04f0,x
        lda $0519,x
        sta $0518,x
        lda $0541,x
        sta $0540,x
        lda $0569,x
        sta $0568,x
        lda $0591,x
        sta $0590,x
        lda $05b9,x
        sta $05b8,x
        inx
        cpx #$27
        bne loc_18ca
        ldx $b1
        lda dat_1000,x
        sta $0427
        lda dat_1070,x
        sta $044f
        lda txt_10e0,x
        sta $0477
        lda txt_1150,x
        sta $049f
        lda txt_11c0,x
        sta $04c7
        lda dat_1230,x
        sta $04ef
        lda dat_12a0,x
        sta $0517
        lda txt_1310,x
        sta $053f
        lda txt_1380,x
        sta $0567
        lda txt_13f0,x
        sta $058f
        lda dat_1460,x
        sta $05b7
        lda dat_14d0,x
        sta $05df
        inc $b1
        lda $b1
        cmp #$70
        bne loc_196d
        lda #$00
        sta $b1

loc_196d:
        jmp sub_18ae
// Referenced by: jsr from $17fa, $17fd, $1800; jmp from $1988

sub_1970:
        inc $40
        ldx $40
        cpx #$00
        beq loc_1993
        cpx #$01
        beq loc_1993
        cpx #$02
        beq loc_1993
        cpx #$03
        beq loc_1993
        ldx #$ff
        stx $40
        jmp sub_1970

txt_198b:
        .text "    "
        .byte $d8                                   // 'X' | $80 (end-of-string marker)
        .byte $e0,$e8,$f0                           // ...

loc_1993:
        lda $198f,x
        sta smc_19a6                                // SMC: modifies $19a6
        lda txt_198b,x
        sta smc_19a7                                // SMC: modifies $19a7
        jsr sub_19a3
        rts
// Referenced by: jsr from $199f

sub_19a3:
        ldx #$00

loc_19a5:
.label smc_19a6 = * + 1
.label smc_19a7 = * + 2
        lda $20f0,x                                 // !SMC: modified by $1996, $199c
        sta $2120,x
        inx
        cpx #$08
        bne loc_19a5
        rts
// Referenced by: jsr from $1a1a

sub_19b1:
        lda ($8e),y
        ldx $3e
        rts
// Referenced by: jsr from $15c4, $19c3

sub_19b6:
        lda #$1a
        sta $3b
        lda #$70
        sta $3a
        lda #$00
        sta $3e
        rts

loc_19c3:
        jsr sub_19b6
// Referenced by: jsr from $17f7

sub_19c6:
        lda #$00
        sta $8e
        lda #$20
        sta $8f
        ldy #$00
        lda ($3a),y
        beq loc_19c3
        tax

loc_19d5:
        cpx #$00
        beq loc_19e7
        lda $8e
        clc
        adc #$08
        sta $8e
        bcc loc_19e4
        inc $8f

loc_19e4:
        dex
        bne loc_19d5

loc_19e7:
        ldx #$00

loc_19e9:
        lda $06d1,x
        sta $06d0,x
        lda $06f9,x
        sta $06f8,x
        lda $0721,x
        sta $0720,x
        lda $0749,x
        sta $0748,x
        lda $0771,x
        sta $0770,x
        lda $0799,x
        sta $0798,x
        lda $07c1,x
        sta $07c0,x
        inx
        cpx #$27
        bne loc_19e9
        ldy #$07

loc_1a1a:
        jsr sub_19b1
        and dat_1a68,x
        cmp dat_1a68,x
        bne loc_1a2a
        lda #$24
        jmp loc_1a2c

loc_1a2a:
        lda #$00

loc_1a2c:
        sta $0340,y
        dey
        bpl loc_1a1a
        lda $0342
        sta $071f
        lda $0343
        sta $0747
        lda $0344
        sta $076f
        lda $0345
        sta $0797
        lda $0346
        sta $07bf
        lda #$24
        sta $07e7
        inc $3e
        lda $3e
        cmp #$08
        bne loc_1a67
        lda #$00
        sta $3e
        inc $3a
        bne loc_1a67
        inc $3b

loc_1a67:
        rts

dat_1a68:
        .byte $80                                   // .

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

// --- Region $0800-$0998 ---
.pc = $0800 "chr_0800"

chr_0800:
        // === Charset data (409 bytes, $0800-$0998) ===
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 0 @+0
        .byte $ff,$ff,$ff,$ff,$ee,$bb,$aa,$aa       // char 1 @+1

txt_0810:
        .byte $56,$5a,$56,$5a,$56,$5a,$56,$5a       // char 2 @+2
        .byte $ff,$ff,$7f,$7f,$5e,$5b               // char 3 (partial)

txt_081e:
        .byte $56,$5a                               // char 3 (partial)
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa       // char 4 @+4
        .byte $aa,$aa,$ff,$aa,$95,$b5,$bd,$bf       // char 5 @+5
        .byte $a9,$a9,$ff,$aa                       // char 6 (partial)

txt_0834:
        .byte $55,$55,$55,$55                       // char 6 (partial)
        .byte $aa,$aa,$ff,$aa                       // char 7 (partial)

txt_083c:
        .byte $56,$56,$56,$56                       // char 7 (partial)
        .byte $56,$56,$56,$56,$56,$56,$56,$56       // char 8 @+8
        .byte $56,$d6,$f6,$fe,$aa,$55,$aa,$aa       // char 9 @+9
        .byte $ff,$ff,$ff,$ff,$aa,$55,$aa,$aa       // char 10 @+10
        .byte $bf,$bf,$bf,$bf,$aa,$55,$aa,$aa       // char 11 @+11
        .byte $bf,$bf,$bf,$bf,$bf,$bf,$bf,$bf       // char 12 @+12
        .byte $ff,$7f,$5f,$57,$56,$56,$56,$56       // char 13 @+13
        .byte $ff,$ff,$ff,$ff,$aa,$aa,$aa,$aa       // char 14 @+14
        .byte $ff,$ff,$ff,$ff,$bf,$bf,$bf,$bf       // char 15 @+15
        .byte $bf,$bf,$bf,$bf,$bf,$bf,$bf,$bf       // char 16 @+16
        .byte $bf,$bf,$bf,$bf,$7f,$5f               // char 17 (partial)

txt_088e:
        .byte $57,$55                               // char 17 (partial)
        .byte $aa,$aa,$aa,$aa                       // char 18 (partial)

txt_0894:
        .byte $55,$55,$55,$55                       // char 18 (partial)
        .byte $56,$56,$56,$56,$55,$55,$55,$55       // char 19 @+19
        .byte $56,$56,$56,$56,$56,$56,$56,$56       // char 20 @+20
        .byte $ff,$ff,$ff,$ff,$55,$55,$55,$55       // char 21 @+21
        .byte $ff,$ff,$ff,$ff,$56,$56,$56,$56       // char 22 @+22
        .byte $ff,$ff,$ff,$ff                       // char 23 (partial)

txt_08bc:
        .byte $55,$55,$55,$55                       // char 23 (partial)
        .byte $56,$d6,$f6,$fe                       // char 24 (partial)

txt_08c4:
        .byte $55,$55,$55,$55                       // char 24 (partial)
        .byte $40,$40,$55,$55,$45,$44,$54,$00       // char 25 @+25
        .byte $bf,$9b,$9b,$9b,$95,$aa,$aa,$aa       // char 26 @+26
        .byte $aa,$aa,$aa,$bf,$9b,$9b,$9b,$95       // char 27 @+27
        .byte $aa,$aa,$66,$99                       // char 28 (partial)

txt_08e4:
        .byte $55,$55,$55,$55                       // char 28 (partial)
        .byte $56,$5a,$56,$59,$55,$55,$55,$55       // char 29 @+29
        .byte $af,$bf,$af,$bf,$af,$bf,$af,$bf       // char 30 @+30
        .byte $ff,$ff,$ff,$ff,$ef,$bf,$af,$bf       // char 31 @+31
        .byte $00,$94,$94,$94,$94,$94,$94,$aa       // char 32 ' '
        .byte $af,$bf,$6f,$bf,$5f,$5f,$57,$55       // char 33 '!'
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$ea,$ea       // char 34 '"'
        .byte $aa,$aa,$ab,$a9,$a9,$a9,$a9,$a9       // char 35 '#'
        .byte $aa,$aa,$ea,$ea,$ea,$ea,$ea,$ea       // char 36 '$'
        .byte $a9,$a9,$a9,$a9,$a9,$a9,$a9,$a9       // char 37 '%'
        .byte $aa,$aa,$ff,$aa,$55,$55,$55,$55       // char 38 '&'
        .byte $ea,$ea,$ff,$aa,$55,$55,$55,$55       // char 39 '''
        .byte $e9,$e9,$ff,$aa,$55,$55,$55,$55       // char 40 '('
        .byte $ea,$ea,$ea,$ea,$ea,$ea,$aa,$aa       // char 41 ')'
        .byte $a9,$a9,$a9,$a9,$a9,$a9,$aa,$aa       // char 42 '*'
        .byte $ea,$ea,$ff,$aa,$56,$56,$56,$56       // char 43 '+'
        .byte $e9,$e9,$e9,$e9,$e9,$e9,$e9,$e9       // char 44 ','
        .byte $a9,$a9,$e9,$e9,$e9,$e9,$e9,$e9       // char 45 '-'
        .byte $ff,$ff,$ff,$ff,$aa,$55,$a9,$a9       // char 46 '.'
        .byte $ff,$ff,$ff,$ff,$aa,$d5,$e9,$e9       // char 47 '/'
        .byte $ff,$ff,$ff,$ff,$aa,$d5,$ea,$ea       // char 48 '0'
        .byte $e9,$e9,$e9,$e9,$e9,$e9,$aa,$aa       // char 49 '1'
        .byte $ea,$ea,$ff,$aa                       // char 50 (partial)

txt_0994:
        .byte $55,$55,$55,$55                       // char 50 (partial)

dat_0998:
        // === Fill data (1 bytes, $0998-$0998) ===
        .byte $00                                   // .

// --- Region $0a00-$0a15 ---
.pc = $0a00 "dat_0a00"

dat_0a00:
        .byte $79,$9b,$f7,$79,$9b,$f7,$31,$d8       // char 64 '@'
        .byte $c6,$31,$f8,$c7,$31,$b8,$c7,$79       // char 65 'A'
        .byte $98,$c6,$79,$98,$c6                   // char 66 (partial)

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

// --- Region $0a40-$0a55 ---
.pc = $0a40 "dat_0a40"

dat_0a40:
        .byte $c7,$83,$c6,$ef,$c3,$f6,$6c,$c3       // char 72 'H'
        .byte $36,$cc,$c3,$e3,$8c,$c3,$30,$cf       // char 73 'I'
        .byte $c3,$f7,$67,$83,$c7                   // char 74 (partial)

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

// --- Region $0a7f-$0a95 ---
.pc = $0a7f "dat_0a7f"

dat_0a7f:
        .byte $3f                                   // char 79 (partial)
        .byte $61,$fb,$19,$61,$fb,$bb,$60,$63       // char 80 'P'
        .byte $fb,$e0,$63,$5b,$60,$63,$1b,$e0       // char 81 'Q'
        .byte $63,$1b,$c0,$63,$19                   // char 82 (partial)

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

// --- Region $0ac0-$0ad3 ---
.pc = $0ac0 "dat_0ac0"

dat_0ac0:
        .byte $e0,$00,$00,$f0,$00,$00,$30,$00       // char 88 'X'
        .byte $00,$00,$00,$00,$30,$00,$00,$f0       // char 89 'Y'
        .byte $00,$00,$e0                           // char 90 (partial)

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

// --- Region $0b02-$0b7d ---
.pc = $0b02 "dat_0b02"

dat_0b02:
        .byte $01,$00,$00,$05,$00,$00               // char 96 (partial)
        .byte $15,$00,$00,$55,$00,$01,$59,$00       // char 97 'a'
        .byte $55,$66,$05,$55,$98,$15,$66,$60       // char 98 'b'
        .byte $59,$9a,$a0,$66,$a9,$68,$6a,$a2       // char 99 'c'
        .byte $ba,$ee,$ab,$e8,$fb,$ba,$a0,$3f       // char 100 'd'
        .byte $ee,$e0,$0f,$ff,$b8,$00,$ff,$ee       // char 101 'e'
        .byte $00,$0f,$fb,$00,$00,$ff,$00,$00       // char 102 'f'
        .byte $3f,$00,$00,$0f,$00,$00,$03,$00       // char 103 'g'
        .byte $40,$00,$00,$50,$00,$00,$54,$00       // char 104 'h'
        .byte $00,$55,$00,$00,$65,$50,$00,$99       // char 105 'i'
        .byte $55,$00,$26,$55,$50,$09,$99,$54       // char 106 'j'
        .byte $0a,$a6,$65,$29,$6a,$99,$ae,$9a       // char 107 'k'
        .byte $aa,$2b,$ea,$bb,$0a,$ae,$ef,$0b       // char 108 'l'
        .byte $bb,$fc,$2e,$ff,$f0,$bb,$ff,$00       // char 109 'm'
        .byte $ef,$f0,$00,$ff,$00,$00,$fc,$00       // char 110 'n'
        .byte $00,$f0,$00,$00,$c0                   // char 111 (partial)

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

// --- Region $1000-$1055 ---
.pc = $1000 "dat_1000"

dat_1000:
        .byte $03                                   // .

dat_1001:
        // === Fill data (84 bytes, $1001-$1054) ===
        .fill 84, $01
        .byte $1f                                   // .

// --- Region $1070-$10c5 ---
.pc = $1070 "dat_1070"

dat_1070:
        .byte $02,$1b,$23,$05,$26,$26,$07,$24,$23,$05,$26,$26,$07,$24,$23,$05 // ..#.&&.$#.&&.$#.

txt_1080:
        .text "&&&&&&&&"
        .byte $07,$24,$23,$05                       // .$#.

txt_108c:
        .text "&&&&&&&&"
        .byte $07,$24,$23,$05,$26,$26,$07,$24,$04,$04,$04,$04,$04,$04,$23,$05 // .$#.&&.$......#.

txt_10a4:
        .text "&&&&&&"
        .byte $07,$24,$23,$05                       // .$#.

txt_10ae:
        .text "&&&&&&&&"
        .byte $07,$24,$23,$05                       // .$#.

txt_10ba:
        .text "&&&&&&&&"
        .byte $07,$24,$1b,$1e                       // .$..

// --- Region $10e0-$1135 ---
.pc = $10e0 "txt_10e0"

txt_10e0:
        .encoding "screencode_mixed"
        .text "bd%l  h"
        .byte $22                                   // double quote
        .text "%l  h"
        .byte $22                                   // double quote
        .text "%l"
        .encoding "petscii_upper"

txt_10f0:
        .text "        "
        .byte $08,$22,$25,$0c                       // ."%.

txt_10fc:
        .text "        "
        .byte $08,$22,$25,$0c,$20,$20,$08,$22,$04,$04,$04,$04,$04,$04,$25,$0c // ."%.  ."......%.

txt_1114:
        .text "      "
        .byte $08,$22,$25,$0c                       // ."%.

txt_111e:
        .text "        "
        .byte $08,$22,$25,$0c                       // ."%.

txt_112a:
        .text "        "
        .byte $08,$22,$04,$1e                       // ."..

// --- Region $1150-$11a5 ---
.pc = $1150 "txt_1150"

txt_1150:
        .encoding "screencode_mixed"
        .text "bd%l  h"
        .byte $22                                   // double quote
        .text "%l  h"
        .byte $22                                   // double quote
        .text "%l"
        .encoding "petscii_upper"

txt_1160:
        .text "        "
        .byte $08,$22,$25,$0c                       // ."%.

txt_116c:
        .text "        "
        .byte $08,$22,$25,$0c,$20,$20,$08,$22,$04,$04,$04,$04,$04,$04,$25,$0c // ."%.  ."......%.

txt_1184:
        .text "      "
        .byte $08,$22,$25,$0c                       // ."%.

txt_118e:
        .text "        "
        .byte $08,$22,$25,$0c                       // ."%.

txt_119a:
        .text "        "
        .byte $08,$22,$04,$1e                       // ."..

// --- Region $11c0-$1215 ---
.pc = $11c0 "txt_11c0"

txt_11c0:
        .encoding "screencode_mixed"
        .text "bd%l  s'fq  h"
        .byte $22                                   // double quote
        .text "%l  m0.o  h"
        .byte $22                                   // double quote
        .text "*kj.o  m0ji)%l  h"
        .byte $22                                   // double quote
        .text "dddddd*k.o  m0i)%l  m0.o  h"
        .byte $22                                   // double quote
        .text "%l  wuuuv0i)d"
        .encoding "petscii_upper"
        .byte $1e                                   // .

// --- Region $1230-$1285 ---
.pc = $1230 "dat_1230"

dat_1230:
        .byte $02,$04,$25,$0c                       // ..%.

txt_1234:
        .text "        "

txt_123c:
        .encoding "screencode_mixed"
        .text "h"
        .byte $22                                   // double quote
        .text "%l  s+-l  h"
        .byte $22                                   // double quote
        .text "ddd%l  s+$dd%l  s+$ddddddd%l  s+$d%l  s+-l  h"
        .byte $22                                   // double quote
        .text "%l"
        .encoding "petscii_upper"

txt_127a:
        .text "      "
        .byte $08,$22,$04,$04,$04,$1e               // ."....

// --- Region $12a0-$12f5 ---
.pc = $12a0 "dat_12a0"

dat_12a0:
        .byte $02,$04,$25,$0c                       // ..%.

txt_12a4:
        .text "        "

txt_12ac:
        .encoding "screencode_mixed"
        .text "h"
        .byte $22                                   // double quote
        .text "%l   h,l  h"
        .byte $22                                   // double quote
        .text "ddd%l   h"
        .byte $22                                   // double quote
        .text "dd%l   h"
        .byte $22                                   // double quote
        .text "ddddddd%l   h"
        .byte $22                                   // double quote
        .text "d%l   h,l  h"
        .byte $22                                   // double quote
        .text "%l"
        .encoding "petscii_upper"

txt_12ea:
        .text "      "
        .byte $08,$22,$04,$04,$04,$1e               // ."....

// --- Region $1310-$1365 ---
.pc = $1310 "txt_1310"

txt_1310:
        .encoding "screencode_mixed"
        .text "bd%l   m/o  h"
        .byte $22                                   // double quote
        .text "%l   s(q  h"
        .byte $22                                   // double quote
        .text "ddd%l   h"
        .byte $22                                   // double quote
        .text "dd%l   s2&&&g$#efq   s+$%l   h,l  h"
        .byte $22                                   // double quote
        .text "%l   wwwx2g$d"
        .encoding "petscii_upper"
        .byte $1e                                   // .

// --- Region $1380-$13d5 ---
.pc = $1380 "txt_1380"

txt_1380:
        .encoding "screencode_mixed"
        .text "bd%l   h,l  h"
        .byte $22                                   // double quote
        .text "%l"
        .encoding "petscii_upper"

txt_1390:
        .text "        "
        .byte $08,$22,$04,$04,$04,$25,$0c,$20,$20,$20,$08,$22,$04,$04,$25,$0c // ."...%.   ."..%.

txt_13a8:
        .text "        "
        .byte $08,$22,$25,$0c                       // ."%.

txt_13b4:
        .text "      "

txt_13ba:
        .encoding "screencode_mixed"
        .text "h"
        .byte $22                                   // double quote
        .text "%l   h,l  h"
        .byte $22                                   // double quote
        .text "%l"
        .encoding "petscii_upper"

txt_13ca:
        .text "        "
        .byte $08,$22,$04,$1e                       // ."..

// --- Region $13f0-$1445 ---
.pc = $13f0 "txt_13f0"

txt_13f0:
        .encoding "screencode_mixed"
        .text "bd%l   h,l  h"
        .byte $22                                   // double quote
        .text "%l"
        .encoding "petscii_upper"

txt_1400:
        .text "        "
        .byte $08,$22,$04,$04,$04,$25,$0c,$20,$20,$20,$08,$22,$04,$04,$25,$0c // ."...%.   ."..%.

txt_1418:
        .text "        "
        .byte $08,$22,$25,$0c                       // ."%.

txt_1424:
        .text "      "

txt_142a:
        .encoding "screencode_mixed"
        .text "h"
        .byte $22                                   // double quote
        .text "%l   h,l  h"
        .byte $22                                   // double quote
        .text "%l"
        .encoding "petscii_upper"

txt_143a:
        .text "        "
        .byte $08,$22,$04,$1e                       // ."..

// --- Region $1460-$14b5 ---
.pc = $1460 "dat_1460"

dat_1460:
        .byte $02,$1a,$2a,$0b,$0a,$0a,$0a,$09,$31,$0b,$0a,$0a,$09,$29,$2a,$0b // ..*.....1....)*.
        .fill 8, $0a
        .byte $09,$29,$04,$04,$04,$2a,$0b,$0a,$0a,$0a,$09,$29,$04,$04,$2a,$0b // .)...*.....)..*.
        .fill 8, $0a
        .byte $09,$29,$2a,$0b,$0a,$0a,$0a,$0a,$0a,$0a,$09,$29,$2a,$0b,$0a,$0a // .)*........)*...
        .byte $0a,$09,$31,$0b,$0a,$0a,$09,$29,$2a,$0b,$0a,$0a,$0a,$0a,$0a,$0a // ..1....)*.......
        .byte $0a,$0a,$09,$29,$1a,$1e               // ...)..

// --- Region $14d0-$1525 ---
.pc = $14d0 "dat_14d0"

dat_14d0:
        .byte $1d                                   // .

dat_14d1:
        // === Fill data (84 bytes, $14d1-$1524) ===
        .fill 84, $1c
        .byte $21                                   // !

// --- Region $1760-$1781 ---
.pc = $1760 "Segment $1760"
        .byte $09,$09,$08,$07,$01,$07,$08,$09,$00,$02,$00,$ff,$03,$00,$00,$80 // ................
        .byte $28,$04,$00,$07,$41,$0f,$ff,$1a,$02,$00,$07,$41,$0f,$ff,$01,$10 // (...A......A....
        .byte $56,$3f                               // V?

// --- Region $179f-$17d0 ---
.pc = $179f "Segment $179f"
        .byte $12,$05,$13,$05,$0e,$14,$13,$20,$0f,$0e // ....... ..

txt_17a9:
        .text " 01-08-1987:    "

txt_17b9:
        .encoding "screencode_mixed"
        .text "dr.jackle and mr.wide   "
        .encoding "petscii_upper"

// --- Region $1890-$18ad ---
.pc = $1890 "dat_1890"

dat_1890:
        .byte $06,$06,$0e,$0e,$03,$03,$01,$01,$03,$03,$0e,$0e,$06,$06,$00,$00 // ................
        .byte $00,$09,$09,$08,$08,$07,$07,$08,$08,$09,$09,$00,$00,$00 // ..............

// --- Region $1a69-$1cc0 ---
.pc = $1a69 "Segment $1a69"
        .byte $40,$20,$10,$08,$04,$02,$01           // @ .....

txt_1a70:
        .text "                      "

txt_1a86:
        .encoding "screencode_mixed"
        .text "cracked by popeye   thanx to ronnie for the game"
        .encoding "petscii_upper"

txt_1ab6:
        .text ".....     "

txt_1ac0:
        .encoding "screencode_mixed"
        .text "att. popeye is alsow on amiga now"
        .encoding "petscii_upper"

txt_1ae1:
        .text ".         "

txt_1aeb:
        .encoding "screencode_mixed"
        .text "greetings to : rad - triad - fac - the movers - plutonium crackers - trianon - count. dracula - rdi - ronnie - fairlight - reflex - fcs - d.s.compware - knp (danish gold"
        .encoding "petscii_upper"

txt_1b94:
        .text ") - "

txt_1b98:
        .encoding "screencode_mixed"
        .text "paco crew - bca - jayce - fanatic duo - haddock (the vikings"
        .encoding "petscii_upper"

txt_1bd4:
        .text ") - "

txt_1bd8:
        .encoding "screencode_mixed"
        .text "the phantom - hell rider - red sector - bcs - annika - goodfather - gamebusters - jazzcat"
        .encoding "petscii_upper"

txt_1c31:
        .text " - 1001 "

txt_1c39:
        .encoding "screencode_mixed"
        .text "crew - proline - dr.h - tdm - omricon - usa team - electro - heman - yeti - ice - fct - starline - tsf - sheild - tau - dgs - fd"
        .encoding "petscii_upper"

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

// --- Region $2000-$21ff ---
.pc = $2000 "spr_2000"

spr_2000:
        // === Charset data (512 bytes, $2000-$21ff) ===
        .byte $ff,$6b,$6b,$6b,$6b,$6b,$6b,$55       // char 0 @+0
        .byte $ff,$ff,$83,$39,$21,$39,$39,$ff       // char 1 @+1
        .byte $ff,$ff,$03,$39,$23,$39,$23,$ff       // char 2 @+2
        .byte $ff,$ff,$81,$3f,$3f,$3f,$81,$ff       // char 3 @+3
        .byte $ff,$ff,$03,$39,$39,$39,$23,$ff       // char 4 @+4
        .byte $ff,$ff,$81,$3f,$27,$3f,$81,$ff       // char 5 @+5
        .byte $ff,$ff,$01,$3f,$27,$3f,$3f,$ff       // char 6 @+6
        .byte $ff,$ff,$83,$3f,$31,$39,$83,$ff       // char 7 @+7
        .byte $ff,$ff,$39,$39,$21,$39,$39,$ff       // char 8 @+8
        .byte $ff,$ff,$c3,$e7,$e7,$e7,$c3,$ff       // char 9 @+9
        .byte $ff,$ff,$e1,$f3,$f3,$33,$87,$ff       // char 10 @+10
        .byte $ff,$ff,$39,$33,$27,$33,$39,$ff       // char 11 @+11
        .byte $ff,$ff,$3f,$3f,$3f,$3f,$01,$ff       // char 12 @+12
        .byte $ff,$ff,$39,$11,$29,$39,$39,$ff       // char 13 @+13
        .byte $ff,$ff,$39,$19,$29,$31,$39,$ff       // char 14 @+14
        .byte $ff,$ff,$83                           // char 15 (partial)

txt_207b:
        .byte $39,$39,$39,$a3,$ff                   // char 15 (partial)
        .byte $ff,$ff,$03,$39,$23,$3f,$3f,$ff       // char 16 @+16
        .byte $ff,$ff,$83                           // char 17 (partial)

txt_208b:
        .byte $39,$29,$31,$a1,$ff                   // char 17 (partial)
        .byte $ff,$ff,$03,$39,$23,$37,$39,$ff       // char 18 @+18
        .byte $ff,$ff,$81,$3f,$83,$f9,$03,$ff       // char 19 @+19
        .byte $ff,$ff,$01,$e7,$e7,$e7,$e7,$ff       // char 20 @+20
        .byte $ff,$ff,$39,$39,$39,$39,$81,$ff       // char 21 @+21
        .byte $ff,$ff,$39,$39,$39,$93,$c7,$ff       // char 22 @+22
        .byte $ff,$ff,$39,$39,$29,$11,$39,$ff       // char 23 @+23
        .byte $ff,$ff,$39,$39,$83,$39,$39,$ff       // char 24 @+24
        .byte $ff,$ff,$39,$39,$89,$f9,$03,$ff       // char 25 @+25
        .byte $ff,$ff,$01,$f3,$ef,$9f,$01,$ff       // char 26 @+26
        .byte $00,$94,$94,$94,$94,$94,$94,$aa       // char 27 @+27
        .byte $00                                   // char 28 (partial)

txt_20e1:
        .byte $52,$52,$52,$52,$52,$52,$aa           // char 28 (partial)
        .byte $00                                   // char 29 (partial)

txt_20e9:
        .byte $49,$49,$49,$49,$49,$49,$aa           // char 29 (partial)
        .byte $00                                   // char 30 (partial)

txt_20f1:
        .byte $25,$25,$25,$25,$25,$25,$aa           // char 30 (partial)
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 31 @+31
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 32 ' '
        .byte $ff,$ff,$e7,$e7,$e7,$ff,$e7,$ff       // char 33 '!'
        .byte $ff,$ff,$93,$93,$ff,$ff,$ff,$ff       // char 34 '"'
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 35 '#'
        .byte $00                                   // char 36 (partial)

txt_2121:
        .byte $25,$25,$25,$25,$25,$25,$aa           // char 36 (partial)
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 37 '%'
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 38 '&'
        .byte $ff,$ff,$e7,$f7,$ff,$ff,$ff,$ff       // char 39 '''
        .byte $ff,$ff,$e3,$cf,$9f,$cf,$e3,$ff       // char 40 '('
        .byte $ff,$ff,$c7,$f3,$f9,$f3,$c7,$ff       // char 41 ')'
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 42 '*'
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 43 '+'
        .byte $ff,$ff,$ff,$ff,$ff,$e7,$f7,$ff       // char 44 ','
        .byte $ff,$ff,$ff,$ff,$83,$ff,$ff,$ff       // char 45 '-'
        .byte $ff,$ff,$ff,$ff,$ff,$e7,$ff,$ff       // char 46 '.'
        .byte $ff,$ff,$9f,$cf,$e7,$f3,$f9,$ff       // char 47 '/'
        .byte $ff,$ff,$83,$31,$29,$19,$83,$ff       // char 48 '0'
        .byte $ff,$ff,$e7,$c7,$e7,$e7,$81,$ff       // char 49 '1'
        .byte $ff,$ff,$03,$f9,$83,$3f,$01,$ff       // char 50 '2'
        .byte $ff,$ff,$03,$f9,$c9,$f9,$03,$ff       // char 51 '3'
        .byte $ff,$ff,$39,$39,$81,$f9,$f9,$ff       // char 52 '4'
        .byte $ff,$ff,$01,$3f,$03,$f9,$03,$ff       // char 53 '5'
        .byte $ff,$ff,$81,$3f,$03,$39,$83,$ff       // char 54 '6'
        .byte $ff,$ff,$01,$79,$c3,$e7,$cf,$ff       // char 55 '7'
        .byte $ff,$ff,$83,$39,$83,$39,$83,$ff       // char 56 '8'
        .byte $ff,$ff,$83,$39,$83,$f9,$03,$ff       // char 57 '9'
        .byte $ff,$ff,$ff,$e7,$ff,$e7,$ff,$ff       // char 58 ':'
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 59 ';'
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 60 '<'
        .byte $ff,$ff,$ff,$83,$ff,$83,$ff,$ff       // char 61 '='
        .byte $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff       // char 62 '>'
        .byte $ff,$ff,$83,$39,$f3,$ff,$ef,$ff       // char 63 '?'
