// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:36:27
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $15bf  (3520 bytes)
// Crunched with Cruncher AB — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $0eb8 (3768)
// IRQ handler:  $0f00 (irq_0f00)
//
// Code: 388 bytes, Data: 3132 bytes
// Labels: 75, Subroutines: 5
//
// Cross-references: all OK
// ============================================


// --- Region $0eb8-$0ef0 ---
.pc = $0eb8 "main_0eb8"

main_0eb8:
        lda #$00
        sta $d020
        sta $d021
        lda #$08
        sta $0286
        lda #$e8
        sta $0328
        jsr $e544
        jsr sub_0f3a
        jsr sub_0fe9
        sei
        lda #$01
        sta $dc0d
        sta $d01a
        lda #$00
        sta $0314
        lda #$0f
        sta $0315
        lda #$1b
        sta $d011
        cli

loc_0eec:
        jmp loc_0eec

chr_0eef:
        // === Charset data (2 bytes, $0eef-$0ef0) ===
        .byte $ad,$ff                               // char 0 (partial)

// --- Region $0f00-$0f29 ---
.pc = $0f00 "irq_0f00"

irq_0f00:
        inc $d019
.label smc_0f04 = * + 1
.label smc_0f05 = * + 2
        jsr sub_100f                                // !SMC: modified by $0f0c, $0f12
        ldx chr_0f29
        lda tbl_lo_0f2a,x
        sta smc_0f04                                // SMC: modifies $0f04
        lda tbl_hi_0f2f,x
        sta smc_0f05                                // SMC: modifies $0f05
        lda $0f35,x
        sta $d012
        inx
        lda tbl_hi_0f2f,x
        bne loc_0f23
        ldx #$00

loc_0f23:
        stx chr_0f29
        jmp $ea7e

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

// --- Region $0f3a-$0f80 ---
.pc = $0f3a "sub_0f3a"

// Referenced by: jsr from $0ecd
sub_0f3a: {
        ldx #$00
loop:
        lda txt_0d88,x
        sta $0400,x
        sta $0608,x
        lda tbl_0db0,x
        sta $0428,x
        sta $0630,x
        inx
        bne loop
        lda #$d8
        sta $d016
        lda #$13
        sta $d018
        rts
}
        lda #$d8
        sta $d016
        lda #$01
        sta $d020
        sta $d021
        ldx #$0b

loc_0f6b:
        dex
        bne loc_0f6b
        lda #$00
        sta $d020
        sta $d021
        lda #$06
        sta $d022
        lda #$0e
        sta $d023
        rts

// --- Region $0fc4-$1040 ---
.pc = $0fc4 "sub_0fc4"
sub_0fc4: {
        lda #$20
        sbc $04
        tay
        ldx #$09
loop1:
        dex
        bne loop1
loop2:
        lda $d012
        tax
        and #$07
        ora #$18
loop3:
        cpx $d012
        beq loop3
        sta $d011
        dey
        bpl loop2
        lda $03
        clc
        adc #$02
        sta $03
        rts
}

// Referenced by: jsr from $0ed0
sub_0fe9: {
        lda #$db
        sta $07
        lda #$11
        sta $08
        lda #$00
        sta $06
        sta $0b
        lda #$50
        sta $09
        lda #$03
        sta $0a
        ldx #$4f
loop:
        lda #$20
        sta $0568,x
        lda #$0a
        sta $d968,x
        dex
        bpl loop
        rts
}
// Referenced by: jsr from $0f03

sub_100f:
        lda $06
        sec
        sbc $0a
        sta $06
        bcs loc_1054
        adc #$08
        sta $06
        ldx #$00

loc_101e:
        lda $0569,x
        sta $0568,x
        inx
        cpx #$27
        bne loc_101e

loc_1029:
        ldy #$00
        lda ($07),y
        and #$3f
        bne loc_103b
        lda #$db
        sta $07
        lda #$11
        sta $08
        bne loc_1029

loc_103b:
        cmp #$1c
        bne loc_104e

scr_103f:
        // === Screen RAM (2 bytes, $103f-$1040) ===
        .encoding "screencode_mixed"
        .text " "
        .byte $7e                                   // scrcode: .
        .encoding "petscii_upper"

// --- Region $104e-$1084 ---
.pc = $104e "loc_104e"

loc_104e:
        sta $058f
        jsr sub_107e

loc_1054:
        lda $0a
        bne loc_106b
        dec $09
        bne loc_106b
        lda #$03
        sta $0a
        jsr sub_107e
        lda #$50
        sta $09
        lda #$00
        sta $0b

loc_106b:
        lda #$d8
        sta $d016
        lda #$06
        sta $d022
        lda #$0e
        sta $d023
        jsr sub_1188
        rts
// Referenced by: jsr from $1051, $1060

sub_107e:
        inc $07
        bne loc_1084
        inc $08

loc_1084:
        rts

// --- Region $1188-$11b3 ---
.pc = $1188 "sub_1188"
// Referenced by: jsr from $107a

sub_1188:
        lda #$ef
        cmp $dc01
        beq loc_1190
        rts

loc_1190:
        sei
        jsr $fda3
        jsr $fd15
        jsr $ff5b
        dex
        stx $d020
        stx $d021
        pla
        pla

loc_11a3:
        lda scr_11b3,x
        sta $0340,x
        inx
        cpx #$29
        bne loc_11a3
        inc $01
        jmp $0340

scr_11b3:
        // === Screen RAM (1 bytes, $11b3-$11b3) ===
        .byte $a9                                   // scrcode: .

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

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

spr_0800:
        // === Charset data (1720 bytes, $0800-$0eb7) ===
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 0 @+0
        .byte $57,$5b,$7b,$ab,$ab,$b7,$b7,$77       // char 1 @+1
        .byte $5c,$5b,$7b,$ac,$ab,$b7,$97,$5c       // char 2 @+2
        .byte $57,$5b,$70,$b0,$b0,$b0,$97,$57       // char 3 @+3
        .byte $5c,$5b,$7b,$bb,$bb,$b7,$97,$5c       // char 4 @+4
        .byte $57,$5b,$70,$ac,$ac,$b0,$97,$57       // char 5 @+5
        .byte $57,$5b,$70,$ac,$ac,$b0,$b0,$70       // char 6 @+6
        .byte $57,$5b,$70,$bb,$bb,$b7,$97,$57       // char 7 @+7
        .byte $77,$7b,$7b,$ab,$ab,$b7,$b7,$77       // char 8 @+8
        .byte $57,$5b,$2c,$2c,$2c,$2c,$97,$57       // char 9 @+9
        .byte $17,$1b,$0b,$0b,$0b,$b7,$97,$57       // char 10 @+10
        .byte $77,$7b,$6c,$ac,$ac,$b7,$b7,$77       // char 11 @+11
        .byte $70,$70,$70,$b0,$b0,$b0,$97,$57       // char 12 @+12
        .byte $77,$5b,$6b,$bb,$bb,$b7,$b7,$77       // char 13 @+13
        .byte $57,$5b,$7b,$bb,$bb,$b7,$b7,$77       // char 14 @+14
        .byte $57,$5b,$7b,$bb,$bb,$b7,$97,$57       // char 15 @+15
        .byte $57,$5b,$7b,$ab,$ab,$b0,$b0,$70       // char 16 @+16
        .byte $57,$5b,$7b,$bb,$bb,$b7,$9c,$57       // char 17 @+17
        .byte $5c,$5b,$7b,$ac,$ab,$b7,$b7,$77       // char 18 @+18
        .byte $17,$5b,$70,$ac,$2b,$07,$97,$5c       // char 19 @+19
        .byte $57,$5b,$2c,$2c,$2c,$2c,$1c,$1c       // char 20 @+20
        .byte $77,$7b,$7b,$bb,$bb,$b7,$97,$57       // char 21 @+21
        .byte $77,$7b,$7b,$bb,$bb,$a7,$1c,$1c       // char 22 @+22
        .byte $77,$7b,$7b,$bb,$bb,$a7,$97,$77       // char 23 @+23
        .byte $77,$7b,$7b                           // char 24 (partial)

txt_08c3:
        .byte $2c,$2c,$b7,$b7,$77                   // char 24 (partial)
        .byte $77,$7b,$7b,$ab,$2c,$2c,$1c,$1c       // char 25 @+25
        .byte $57,$5b,$0b                           // char 26 (partial)

txt_08d3:
        .byte $2c,$2c,$b0,$97,$57                   // char 26 (partial)
        .byte $5c,$5c,$70,$b0,$b0,$b0,$9c,$5c       // char 27 @+27
        .byte $0b,$0c,$0f,$01,$0f,$0c,$0b,$00       // char 28 @+28
        .byte $17,$1b,$0b,$0b,$0b,$07,$17,$17       // char 29 @+29
        .byte $00,$1c,$5b,$2c,$2c,$2c,$1c,$00       // char 30 @+30
        .byte $a9,$d1,$85,$03,$a2,$1c,$60,$00       // char 31 @+31
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 32 ' '
        .byte $07,$0b,$2b,$2c,$2c,$00,$b0,$70       // char 33 '!'
        .byte $77,$7b,$7b,$00,$00,$00,$00,$00       // char 34 '"'
        .byte $a0,$15,$86,$ac,$84,$ad,$60,$00       // char 35 '#'
        .byte $1c,$1b,$6c,$ac,$2b,$2b,$9c,$1c       // char 36 '$'
        .byte $a9,$12,$8d,$18,$d0,$a9,$06,$8d       // char 37 '%'
        .byte $21,$d0,$a9,$0e,$8d,$22,$d0,$60       // char 38 '&'
        .byte $07,$0b,$2c,$00,$00,$00,$00,$00       // char 39 '''
        .byte $1c,$5c,$70,$b0,$b0,$b0,$9c,$1c       // char 40 '('
        .byte $1c,$1b,$0b,$0b,$0b,$07,$17,$1c       // char 41 ')'
        .byte $a9,$8f,$8d,$14,$03,$58,$60,$00       // char 42 '*'
        .byte $00,$1c,$2c,$ab,$ab,$2c,$1c,$00       // char 43 '+'
        .byte $00,$00,$00,$00,$00,$2c,$1c,$70       // char 44 ','
        .byte $00,$00,$00,$ab,$ab,$00,$00,$00       // char 45 '-'
        .byte $00,$00,$00,$00,$00,$00,$1c,$1c       // char 46 '.'
        .byte $07,$07,$0b                           // char 47 (partial)

txt_097b:
        .byte $2c,$2c,$b0,$70,$70                   // char 47 (partial)
        .byte $57,$5b,$7b,$bb,$bb,$b7,$97,$57       // char 48 '0'
        .byte $1c,$5c,$6c,$2c,$2c,$2c,$97,$57       // char 49 '1'
        .byte $5c,$5b,$0b,$2b,$ac,$b0,$97,$57       // char 50 '2'
        .byte $5c,$5b,$0b,$2c,$2b,$07,$97,$5c       // char 51 '3'
        .byte $70,$7b,$7b,$ab,$ab,$07,$07,$07       // char 52 '4'
        .byte $57,$5b,$70,$ac,$a7,$07,$97,$5c       // char 53 '5'
        .byte $57,$5b,$70,$ab,$ab,$b7,$97,$57       // char 54 '6'
        .byte $57,$5b,$0b,$0b,$2c,$2c,$1c,$1c       // char 55 '7'
        .byte $57,$5b,$7b,$ab,$ab,$b7,$97,$57       // char 56 '8'
        .byte $57,$5b,$7b,$ab,$ab,$07,$97,$57       // char 57 '9'
        .byte $00,$1c,$2c,$00,$00,$2c,$1c,$00       // char 58 ':'
        .byte $00,$1c,$2c,$00,$00,$2c,$1c,$70       // char 59 ';'
        .byte $07,$1b,$2c,$ac,$ac,$2c,$17,$07       // char 60 '<'
        .byte $00,$5b,$6b,$00,$00,$a7,$97,$00       // char 61 '='
        .byte $70,$5c,$2c,$2b,$2b,$2c,$9c,$70       // char 62 '>'
        .byte $57,$5b,$7b,$2b,$2c,$00,$1c,$1c       // char 63 '?'
        .byte $00,$00,$06,$19,$24,$60,$90,$80       // char 64 '@'
        .byte $00,$6a,$90,$00,$00,$00,$00,$00       // char 65 'A'
        .byte $6a,$90,$00,$00,$00,$00,$00,$00       // char 66 'B'
        .byte $aa,$01,$00,$00,$00,$00,$00,$00       // char 67 'C'
        .byte $40,$aa,$00,$00,$00,$00,$00,$00       // char 68 'D'
        .byte $a9,$06,$00,$00,$01,$02,$01,$00       // char 69 'E'
        .byte $00,$90,$60,$18,$09,$46,$82,$92       // char 70 'F'
        .byte $00,$00,$00,$00,$00,$00,$00,$00       // char 71 'G'
        .byte $00,$00,$00,$00,$01,$02,$02,$06       // char 72 'H'
        .byte $00,$00,$06,$69,$90,$46,$19,$24       // char 73 'I'
        .byte $00,$01,$aa,$00,$6a,$90,$00,$00       // char 74 'J'
        .byte $00,$aa,$40,$00,$90,$00,$00,$00       // char 75 'K'
        .byte $00,$a4,$1a,$00,$00,$00,$00,$00       // char 76 'L'
        .byte $00,$00,$90,$6a,$01,$00,$00,$00       // char 77 'M'
        .byte $00,$00,$00,$40,$90,$60,$24,$18       // char 78 'N'
        .byte $6a,$81,$00,$00,$00,$00,$00,$00       // char 79 'O'
        .byte $40,$a4,$18,$09,$06,$02,$02,$02       // char 80 'P'
        .byte $00,$00,$06,$69,$90,$40,$10,$20       // char 81 'Q'
        .byte $00,$00,$90,$60,$24,$18,$08,$08       // char 82 'R'
        .byte $80,$80,$80,$90,$60,$20,$20,$21       // char 83 'S'
        .byte $00,$00,$00,$00,$00,$00,$00,$01       // char 84 'T'
        .byte $00,$00,$00,$00,$00,$00,$00,$40       // char 85 'U'
        .byte $00,$06,$09,$08,$08,$08,$08,$08       // char 86 'V'
        .byte $01,$aa,$00,$00,$00,$00,$00,$00       // char 87 'W'
        .byte $a9,$46,$01,$00,$00,$00,$00,$01       // char 88 'X'
        .byte $00,$40,$80,$80,$80,$80,$80,$80       // char 89 'Y'
        .byte $62,$22,$21,$24,$18,$08,$08,$08       // char 90 'Z'
        .byte $00,$00,$00,$1a,$64,$90,$80,$80       // char 91 '['
        .byte $00,$00,$00,$a4,$19,$06,$02,$02       // char 92 '\'
        .byte $09,$08,$08,$08,$08,$08,$08,$18       // char 93 ']'
        .byte $20,$60,$90,$80,$80,$80,$80,$80       // char 94 '^'
        .byte $00,$00,$00,$01,$02,$06,$09,$08       // char 95 '_'
        .byte $00,$00,$1a,$a5,$40,$00,$00,$00       // char 96 '`'
        .byte $00,$00,$40,$a4,$18,$09,$06,$02       // char 97 'a'
        .byte $08,$08,$09,$06,$02,$02,$02,$02       // char 98 'b'
        .byte $00,$aa,$01,$00,$00,$00,$00,$00       // char 99 'c'
        .byte $00,$40,$aa,$00,$00,$00,$00,$00       // char 100 'd'
        .byte $06,$69,$90,$00,$00,$00,$00,$00       // char 101 'e'
        .byte $08,$08,$08,$08,$08,$09,$06,$02       // char 102 'f'
        .byte $22,$22,$25,$18,$09,$06,$01,$00       // char 103 'g'
        .byte $06,$19,$a4,$61,$06,$4a,$a6,$02       // char 104 'h'
        .byte $90                                   // char 105 (partial)

txt_0b49:
        .byte $20,$20,$20,$20,$20,$20,$10           // char 105 (partial)
        .byte $08,$09,$06,$00,$00,$00,$00,$00       // char 106 'j'
        .byte $00,$00,$a9,$06,$00,$00,$00,$00       // char 107 'k'
        .byte $02,$06,$19,$a4,$00,$00,$00,$00       // char 108 'l'
        .byte $40,$00,$00,$00,$00,$00,$00,$00       // char 109 'm'
        .byte $18                                   // char 110 (partial)

txt_0b71:
        .byte $24,$21,$22,$22,$22,$22,$62           // char 110 (partial)
        .byte $80,$80,$80,$40,$00,$00,$00,$06       // char 111 'o'
        .byte $02,$02,$02,$02,$02,$01,$00,$a5       // char 112 'p'
        .byte $40,$00,$00,$00,$40,$80,$80,$80       // char 113 'q'
        .byte $01,$00,$00,$01,$02,$02,$02,$01       // char 114 'r'
        .byte $80,$80,$80,$80,$40,$00,$40,$a9       // char 115 's'

txt_0ba0:
        .byte $24,$21,$22,$22,$22,$22,$22,$22       // char 116 't'
        .byte $80,$80,$40,$00,$00,$00,$00,$00       // char 117 'u'
        .byte $08,$09,$06,$02,$01,$00,$00,$00       // char 118 'v'
        .byte $00,$00,$00,$5a,$a5,$00,$00,$00       // char 119 'w'
        .byte $02,$06,$09,$58,$a4,$00,$00,$00       // char 120 'x'
        .byte $02,$02,$02,$02,$02,$02,$02,$02       // char 121 'y'
        .byte $00,$00,$a4,$1a,$00,$00,$00,$00       // char 122 'z'
        .byte $00,$00,$64,$9a,$01,$00,$00,$00       // char 123 '{'
        .byte $00,$00,$00,$40,$80,$90,$60,$20       // char 124 '|'
        .byte $02,$02,$02,$02,$02,$02,$02,$06       // char 125 '}'
        .byte $00,$10,$00,$00,$00,$00,$00,$00       // char 126 '~'
        .byte $00,$00,$00,$00,$01,$02,$06,$09       // char 127
        .byte $00,$01,$00,$6a,$90,$40,$00,$00       // char 128
        .byte $00,$26,$00,$90,$6a,$00,$00,$00       // char 129
        .byte $00,$91,$6a,$00,$91,$6a,$00,$00       // char 130
        .byte $92,$86,$49,$18,$a4,$40,$00,$00       // char 131
        .byte $19                                   // char 132 (partial)

txt_0c21:
        .byte $24,$20,$20,$20,$24,$18,$08           // char 132 (partial)
        .byte $1a,$00,$00,$00,$00,$00,$00,$00       // char 133
        .byte $06,$00,$00,$00,$00,$00,$00,$00       // char 134
        .byte $90,$64,$18,$08,$08,$18,$24,$60       // char 135

txt_0c40:
        .byte $21,$20,$21,$20,$20,$24,$18,$08       // char 136
        .byte $00,$00,$00,$00,$00,$01,$02,$06       // char 137
        .byte $00,$00,$00,$00,$00,$a4,$5a,$00       // char 138
        .byte $00,$00,$00,$6a,$01,$64,$98,$09       // char 139
        .byte $02,$02,$06,$09,$08,$08,$08,$08       // char 140
        .byte $00,$00,$00,$6a,$91,$40,$00,$00       // char 141
        .byte $00,$00,$00,$46,$a9,$00,$00,$00       // char 142
        .byte $20,$20,$60,$90,$00,$00,$00,$00       // char 143
        .byte $09,$08,$08,$08,$08,$08,$08,$08       // char 144
        .byte $08,$08,$08,$09,$06,$02,$02,$02       // char 145
        .byte $09,$06,$00,$00,$00,$00,$00,$00       // char 146
        .byte $6a,$91,$00,$01,$02,$02,$02,$02       // char 147
        .byte $40,$80,$80,$80,$40,$00,$00,$00       // char 148
        .byte $06,$09,$08,$09,$06,$02,$02,$02       // char 149
        .byte $91,$6a,$00,$00,$00,$00,$00,$00       // char 150
        .byte $90,$40,$00,$00,$00,$00,$00,$00       // char 151
        .byte $08,$08,$08,$08,$08,$08,$08,$08       // char 152
        .byte $09,$08,$08,$09,$06,$02,$02,$02       // char 153
        .byte $06,$02,$02,$02,$06,$09,$08,$08       // char 154
        .byte $20,$20,$10,$00,$00,$00,$00,$00       // char 155
        .byte $08,$08,$18,$64,$90,$80,$80,$80       // char 156
        .byte $02,$02,$01,$00,$00,$02,$02,$01       // char 157
        .byte $00,$40,$80,$60,$24,$18,$48,$88       // char 158
        .byte $06,$09,$08,$09,$06,$01,$00,$00       // char 159
        .byte $00,$00,$00,$00,$40,$aa,$00,$00       // char 160
        .byte $06,$09,$08,$18,$64,$90,$00,$00       // char 161
        .byte $02,$02,$02,$02,$01,$00,$00,$00       // char 162
        .byte $00,$00,$00,$41,$aa,$00,$00,$00       // char 163
        .byte $06,$69,$90,$80,$40,$00,$00,$00       // char 164
        .byte $a9,$06,$00,$00,$00,$00,$00,$00       // char 165
        .byte $00,$90,$60,$18,$09,$86,$92,$62       // char 166
        .byte $80,$80,$80,$80,$90,$60,$1a,$01       // char 167
        .byte $00,$00,$00,$00,$06,$00,$40,$aa       // char 168
        .byte $00,$01,$06,$69,$90,$01,$1a,$a4       // char 169
        .byte $88,$48,$18,$24,$60,$90,$40,$00       // char 170
        .byte $00,$00,$00,$00,$00,$00,$40,$aa       // char 171
        .byte $00,$00,$00,$00,$00,$00,$6a,$90       // char 172
        .byte $00,$00,$00,$00,$00,$00,$aa,$00       // char 173
        .byte $00,$00,$00,$00,$01,$00,$a4,$1a       // char 174
        .byte $00,$00,$01,$1a,$a4,$00,$06,$a9       // char 175
        .byte $22,$52,$86,$49,$18,$64,$90,$00       // char 176

txt_0d88:
        .byte $20,$20,$40,$41,$42,$43,$44,$42       // char 177
        .byte $45,$46,$47,$47,$47,$47,$47,$47       // char 178
        .byte $48,$49,$4a,$4b,$4c,$4d,$4e,$47       // char 179
        .byte $40,$41,$42,$43,$44,$4f,$50,$48       // char 180
        .byte $51,$52,$47,$47,$47,$47,$47,$20       // char 181

tbl_0db0:
        // === VIC register table (264 bytes, $0db0-$0eb7) ===
        .text "  STUVWXYZYT"
        .byte $5b
        .byte $5c,$55,$47
        .byte $5d,$5e,$5f,$60,$61
        .byte $47,$62
        .text "GSTUV"
        .byte $63,$64,$65,$5d
        .byte $5e,$66                               // ^f

txt_0dd2:
        .text "GGGGG   "
        .byte $67,$68,$69,$6a,$6b,$6c,$6d,$6e,$6f,$70,$71,$72,$73,$47,$74,$75 // ghijklmnopqrsGtu
        .byte $76,$77,$78,$47,$79,$47,$67,$68,$69,$6a,$7a,$7b,$7c,$74,$75,$79 // vwxGyGghijz{|tuy

txt_0dfa:
        .text "GGGGG   G"
        .byte $7d,$7e,$7f,$80,$81,$82,$83,$84,$85,$6d,$47,$86,$87,$88,$47,$89 // }~.......mG...G.
        .byte $8a,$8b,$7c,$8c,$47,$47,$7d,$7e,$7f,$8d,$8e,$8f,$88,$47,$7d // ..|.GG}~.....G}

txt_0e22:
        .text "GGGGG   G"
        .byte $90
        .byte $47,$91
        .text "GGGG"
        .byte $92,$93,$94,$95,$96,$97,$98
        .byte $47,$99
        .byte $47,$9a,$9b,$91,$47,$47,$90,$47,$91,$47,$47,$47,$98,$47,$99 // G...GG.G.GGG.G.

txt_0e4a:
        .text "GGGGG   G"
        .byte $9c
        .byte $47,$9d,$9e
        .text "GGGG"
        .byte $9f,$a0,$a1
        .byte $47,$47,$9c
        .byte $47,$9d
        .byte $9e,$9c,$47,$9d,$9e,$47,$9c,$47,$9d,$9e,$47,$47,$9c,$47,$a2,$a3 // ..G..G.G..GG.G..
        .byte $a4,$a5,$a6                           // ...

txt_0e76:
        .text "G   G"
        .byte $a7                                   // ''' | $80 (end-of-string marker)
        .byte $a8,$a9,$aa                           // ...

txt_0e7f:
        .text "GGGGGGGGG"
        .byte $a7                                   // ''' | $80 (end-of-string marker)
        .byte $a8,$a9,$aa,$a7,$a8,$a9,$aa,$47,$a7,$a8,$a9,$aa // .......G....

txt_0e95:
        .text "GG"
        .byte $a7                                   // ''' | $80 (end-of-string marker)
        .byte $ab,$ac,$ad,$ae,$af,$b0               // ......

txt_0e9e:
        .text "G                         "

// --- Region $0ef1-$0eff ---
.pc = $0ef1 "Program $0ef1"
        .byte $0e,$f0,$fb,$a9,$00,$8d               // char 0 (partial)
        .byte $ff,$0e,$20,$ff,$ff,$4c,$ef,$0e       // char 1 @+1
        .byte $00                                   // char 2 (partial)

// --- Region $0f2a-$0f39 ---
.pc = $0f2a "tbl_lo_0f2a"

tbl_lo_0f2a:
        .byte $5c,$81,$c4,$5c,$0f                   // char 0 (partial)

tbl_hi_0f2f:
        .byte $0f,$0f                               // char 0 (partial)
        .byte $0f,$0f,$10,$00,$70,$78,$90,$b9       // char 1 @+1
        .byte $fa                                   // char 2 (partial)

// --- Region $0f81-$0fc3 ---
.pc = $0f81 "chr_0f81"

chr_0f81:
        // === Charset data (67 bytes, $0f81-$0fc3) ===
        .byte $a5,$06,$09,$d0,$8d,$16,$d0,$a9       // char 0 @+0
        .byte $0a,$8d,$22,$d0,$a9,$0f,$8d,$23       // char 1 @+1
        .byte $d0,$a9,$00,$8d,$ff,$3f,$a6,$03       // char 2 @+2
        .byte $bd,$87,$10,$4a,$4a,$4a,$85,$04       // char 3 @+3
        .byte $a8,$a2,$01,$ca,$d0,$fd,$ad,$12       // char 4 @+4
        .byte $d0,$aa,$29,$07,$09,$18,$ec,$12       // char 5 @+5
        .byte $d0,$f0,$fb,$8d,$11,$d0,$88,$10       // char 6 @+6
        .byte $ed,$ad,$12,$d0,$18,$69,$10,$8d       // char 7 @+7
        .byte $37,$0f,$60                           // char 8 (partial)

// --- Region $1041-$104d ---
.pc = $1041 "Segment $1041"
        .encoding "screencode_mixed"
        .text "p"
        .byte $b1                                   // scrcode: .
        .text "g8"
        .byte $e9                                   // scrcode: .
        .text "0"
        .byte $85                                   // scrcode: .
        .text "j "
        .byte $7e                                   // scrcode: .
        .text "p"
        .byte $d0,$db                               // scrcode: ..
        .encoding "petscii_upper"

// --- Region $1085-$1187 ---
.pc = $1085 "scr_1085"

scr_1085:
        // === Screen RAM (259 bytes, $1085-$1187) ===
        .encoding "screencode_mixed"
        .text "@"
        .byte $40,$7f,$7b,$76,$71,$6d,$68,$63,$5f   // scrcode: .........
        .encoding "petscii_upper"

txt_108f:
        .text "ZVQMIE"
        .byte $40                                   // @ character
        .text "<851-*&# "
        .encoding "screencode_mixed"
        .byte $1d                                   // scrcode: .
        .text "zwtromkihfecbaa@@@@@@@abcdegijloqsvy"
        .byte $1c,$1f                               // scrcode: ..
        .encoding "petscii_upper"

txt_10c6:
        .byte $22                                   // double quote character
        .text "%(,037;?CGLPTY"
        .byte $5d,$62,$67,$6b,$70,$75,$79,$7e,$83,$87,$8c,$91,$95,$9a,$9f,$a3 // scrcode: ................
        .byte $a8,$ac,$b0,$b5,$b9,$bd,$c1,$c5,$c9,$cd,$d1,$d4,$d8,$db,$de,$e1 // scrcode: ................
        .byte $e4,$e7,$ea,$ec,$ef,$f1,$f3,$f5       // scrcode: ........
        .byte $f7,$f9,$fa,$fb,$fc,$fd,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$fe,$fd // scrcode: ................
        .byte $fc,$fb,$fa,$f9,$f7,$f5,$f3,$f1,$ef,$ec,$ea,$e7,$e4,$e1,$de,$db // scrcode: ................
        .byte $d8,$d4,$d1,$cd,$c9,$c5,$c1,$bd       // scrcode: ........
        .byte $b9,$b5,$b0,$ac,$a8,$a3,$9f,$9a,$95,$91,$8c,$87,$83,$7e,$79,$75 // scrcode: ................
        .byte $70,$6b,$67,$62,$5d                   // scrcode: .....

txt_113a:
        .text "YTPLGC?;730,(%"
        .byte $22                                   // double quote character
        .encoding "screencode_mixed"
        .byte $1f,$1c                               // scrcode: ..
        .text "yvsqoljigedcba@@@@@@@aabcefhikmortwz"
        .byte $1d                                   // scrcode: .
        .encoding "petscii_upper"

txt_1170:
        .text " #&*-158<"
        .byte $40                                   // @ character
        .text "EIMQVZ"
        .byte $5f,$63,$68,$6d,$71,$76,$7b,$bd       // scrcode: ........

// --- Region $11b4-$15ba ---
.pc = $11b4 "Segment $11b4"
        .encoding "screencode_mixed"
        .byte $c0,$85,$fa,$a9                       // scrcode: ....
        .text "u"
        .byte $85,$fb,$a9                           // scrcode: ...
        .text "a"
        .byte $85,$fc,$a9                           // scrcode: ...
        .text "h"
        .byte $85,$fd,$a0                           // scrcode: ...
        .text "@"
        .byte $b1,$fa,$91,$fc,$c8,$d0,$f9,$e6,$fd,$e6,$fb,$d0,$f3,$c6 // scrcode: ..............
        .text "a"
        .byte $58,$4c,$e2,$fc                       // scrcode: ....
        .text "@@@ "
        .byte $1c                                   // scrcode: .
        .text "3 ooops...another fine release from the"
        .text " leaders! "
        .byte $1c                                   // scrcode: .
        .text "2  yes! this time we in param"
        .text "ount and alpha flight are proud to give "
        .text "you spaghetti western simulator,which wa"
        .text "s ofcos released and"
        .encoding "petscii_upper"

txt_1290:
        .text " +3 "
        .encoding "screencode_mixed"
        .text "trained by maniac and sting of the coope"
        .text "ration! "
        .byte $1c                                   // scrcode: .
        .text "1 "
        .byte $1c                                   // scrcode: .
        .text "2 "
        .byte $1c                                   // scrcode: .
        .text "3 hey hey! have you heard"
        .text " about the new lamer group called 'creat"
        .text "ion' which was formed by some lamerasses"
        .text " which was kicked out of paramount"
        .encoding "petscii_upper"

txt_1356:
        .text "!!! "
        .encoding "screencode_mixed"
        .byte $1c                                   // scrcode: .
        .text "2 they really prove to be lame,because "
        .text "they really want trouble with us,and the"
        .text "y might get what they want"
        .encoding "petscii_upper"

txt_13c4:
        .text "... "
        .encoding "screencode_mixed"
        .text "creation sux! "
        .byte $1c                                   // scrcode: .
        .text "1 "
        .byte $1c                                   // scrcode: .
        .text "2 enough about this"
        .encoding "petscii_upper"

txt_13ed:
        .text ".   "
        .encoding "screencode_mixed"
        .text "check dis adres"
        .encoding "petscii_upper"

scr_1400:
        // === Screen RAM (443 bytes, $1400-$15ba) ===
        .encoding "screencode_mixed"
        .text "s for latest wares"
        .encoding "petscii_upper"

txt_1412:
        .text "... "
        .encoding "screencode_mixed"
        .byte $1c                                   // scrcode: .
        .text "1 plk"
        .encoding "petscii_upper"

txt_141c:
        .text " 064623 "
        .encoding "screencode_mixed"
        .text "c"
        .encoding "petscii_upper"

txt_1425:
        .text " - 4650 "
        .encoding "screencode_mixed"
        .text "gelsenkirchen buer - west germany!  "
        .byte $1c                                   // scrcode: .
        .encoding "petscii_upper"

txt_1452:
        .text "2    "
        .encoding "screencode_mixed"
        .text "just some fast kisses to the best like"
        .encoding "petscii_upper"

txt_147d:
        .text "... "
        .encoding "screencode_mixed"
        .byte $1c                                   // scrcode: .
        .text "3 ils 'n atc - exodus - fantasy - nec -"
        .text " ikari 'n talent - dominators - extasy -"
        .text " ruthless - class - bonzai - censor - fa"
        .text "irlight - crazy 'n lotus"
        .encoding "petscii_upper"

txt_1511:
        .text "... "
        .encoding "screencode_mixed"
        .text "and no fucking more this time"
        .encoding "petscii_upper"

txt_1532:
        .text "!    "
        .encoding "screencode_mixed"
        .text "creation sux,and omg can put his finger "
        .text "in his ass,too"
        .encoding "petscii_upper"

txt_156d:
        .text "!     "
        .encoding "screencode_mixed"
        .text "no carrier"
        .encoding "petscii_upper"

txt_157d:
        .text "..."

dat_1580:
        // === Fill data (59 bytes, $1580-$15ba) ===
        .fill 59, $20
