// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:50
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $106f  (2160 bytes)
// Crunched with Cruncher AB — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// IRQ handler:  $0969 (irq_0969)
//
// Code: 726 bytes, Data: 1434 bytes
// Labels: 57, Subroutines: 2
//
// Cross-references: all OK
// ============================================


// --- Region $080d-$099b ---
.pc = $080d "main_080d"

main_080d:
        jsr $fd15
        jsr $ff5b
        jsr $fda3
        sei
        lda #$31
        sta $01
        ldx #$00

loc_081d:
        lda $2000,x
        sta $e000,x
        lda $2100,x
        sta $e100,x
        lda $2200,x
        sta $e200,x
        lda $2300,x
        sta $e300,x
        lda $2400,x
        sta $e400,x
        lda $2500,x
        sta $e500,x
        lda $2600,x
        sta $e600,x
        lda $2700,x
        sta $e700,x
        inx
        bne loc_081d
        txa

loc_0851:
        sta $2100,x
        sta $2600,x
        sta $2700,x
        inx
        bne loc_0851
        lda #$ff

loc_085f:
        sta $2200,x
        sta $2300,x
        sta $2400,x
        sta $2500,x
        inx
        bne loc_085f
        ldy #$00

loc_0870:
        lda $d400,x
        sta $2200,y
        lda $d480,x
        sta $2300,y
        lda $d500,x
        sta $2400,y
        lda $d580,x
        sta $2500,y
        inx
        iny
        iny
        bne loc_0870

loc_088d:
        lda $0e20,y
        sta $2000,y
        iny
        bne loc_088d
        ldx #$00

loc_0898:
        lda dat_0ab7,x
        sta $51
        lda $0ab8,x
        sta $50
        lda $0ab9,x
        sta $53
        lda $0aba,x
        sta $52
        txa
        pha
        ldx #$00
        ldy #$00

loc_08b2:
        lda ($50,x)
        sta ($52,x)
        inc $52
        inc $52
        inc $52
        inc $50
        iny
        cpy #$08
        bne loc_08b2
        pla
        clc
        adc #$04
        tax
        cpx #$40
        bne loc_0898
        ldx #$00
        txa

loc_08cf:
        sta $50,x
        inx
        cpx #$08
        bne loc_08cf
        lda #$37
        sta $01
        cli
        lda #$94
        sta $51
        nop
        lda #$0e
        sta $d023
        ldx #$00

loc_08e7:
        lda #$3e
        sta $da00,x
        sta $db00,x
        lda #$00
        sta $d800,x
        inx
        bne loc_08e7

loc_08f7:
        lda #$02
        sta $0658,x
        lda #$03
        sta $07c0,x
        inx
        cpx #$28
        bne loc_08f7
        ldx #$00
        lda #$80

loc_090a:
        sta $0400,x
        inx
        cpx #$50
        bne loc_090a
        lda #$33
        sta $d022
        lda #$2e
        sta $d023
        lda #$ff
        sta $d015
        ldx #$00
        ldy #$00

loc_0925:
        lda $0bdd,x
        sta $d000,y
        lda #$0b
        sta $d001,y
        lda #$01
        sta $d027,x
        lda $0be3,x
        sta $07f8,x
        iny
        iny
        inx
        cpx #$06
        bne loc_0925
        lda #$38
        sta $d010
        lda #$0f
        sta $52
        lda #$18
        sta $d018
        sei
        lda #$69
        sta $0314
        lda #$09
        sta $0315
        lda #$01
        sta $d01a
        lda #$7f
        sta $dc0d
        cli
        jmp loc_0f1b

irq_0969:
        lda #$01
        sta $d019
        lda #$1b
        sta $d011
        lda #$32
        sta $d012
        lda #$06
        sta $d016
        ldx #$33

loc_097f:
        lda $0b34,x

loc_0982:
        cpx $d012
        bne loc_0982
        sta $d021
        inx
        cpx #$42
        bne loc_097f
        lda #$42
        sta $d012
        lda #$9c
        sta $0314
        jmp $ea81

// --- Region $09d9-$0a63 ---
.pc = $09d9 "loc_09d9"

loc_09d9:
        ldx #$f3

loc_09db:
        lda $0a04,x

loc_09de:
        cpx $d012
        bne loc_09de
        sta $d020
        inx
        cpx #$fb
        bne loc_09db
        lda #$08
        sta $d016
        lda #$00
        sta $d011
        jsr sub_0a05
        lda #$30
        sta $d012
        lda #$69
        sta $0314
        jmp $ea31
// Referenced by: jsr from $09f5

sub_0a05:
        ldx $50
        lda $0de0,x
        pha
        and #$07
        clc
        adc #$30
        sta $09d2
        pla
        lsr
        lsr
        lsr
        sta $10
        lda #$24
        sec
        sbc $10
        tax
        ldy #$00

loc_0a21:
        lda $0be9,x
        sta $0680,y
        lda $0c21,x
        sta $06a8,y
        lda $0c59,x
        sta $06d0,y
        lda $0c91,x
        sta $06f8,y
        lda $0ce9,x
        sta $0720,y
        lda $0d20,x
        sta $0748,y
        lda $0d58,x
        sta $0770,y
        lda $0d90,x
        sta $0798,y
        inx
        iny
        cpy #$28
        bne loc_0a21
        inc $50
        lda $50
        cmp #$40
        bne loc_0a63
        lda #$00
        sta $50

loc_0a63:
        rts

// --- Region $0a6c-$0ab6 ---
.pc = $0a6c "loc_0a6c"

loc_0a6c:
        asl
        lda $0979
        beq loc_0a76
        dec $0979
        rts

loc_0a76:
        lda #$07
        sta $0979
        ldx #$00

loc_0a7d:
        lda $0401,x
        sta $0400,x
        lda $0429,x
        sta $0428,x
        inx
        cpx #$28
        bne loc_0a7d
        ldx #$00
        lda ($51,x)
        bne loc_0aa3
        jsr sub_0cdc
        nop
        sta $52
        lda #$80
        sta $0427
        sta $044f
        rts

loc_0aa3:
        asl
        clc
        adc #$40
        sta $0427
        clc
        adc #$01
        sta $044f
        inc $51
        bne loc_0ab6
        inc $52

loc_0ab6:
        rts

// --- Region $0f1b-$0f8c ---
.pc = $0f1b "loc_0f1b"

loc_0f1b:
        lda #$e1
        sta $0328
        lda #$80
        sta $0291
        lda #$00
        sta $c6

loc_0f29:
        jsr $ffe4
        cmp #$20
        bne loc_0f29
        sei
        jsr $fd15
        jsr $ff5b
        jsr $fda3
        lda #$04
        sta $d020
        sta $d021
        ldx #$00

loc_0f44:
        lda $0f00,x
        sta $0400,x
        lda #$01
        sta $d800,x
        inx
        bne loc_0f44
        lda #$35
        sta $01

loc_0f56:
        lda $e000,x
        sta $2000,x
        lda $e100,x
        sta $2100,x
        lda $e200,x
        sta $2200,x
        lda $e300,x
        sta $2300,x
        lda $e400,x
        sta $2400,x
        lda $e500,x
        sta $2500,x
        lda $e600,x
        sta $2600,x
        lda $e700,x
        sta $2700,x
        inx
        bne loc_0f56
        jmp $0400

scr_0f8c:
        // === Screen RAM (1 bytes, $0f8c-$0f8c) ===
        .byte $a9                                   // scrcode: .

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

// --- Region $099c-$09d8 ---
.pc = $099c "dat_099c"

dat_099c:
        .byte $4c,$9f,$09,$a2,$00,$bd,$00,$0b,$bc,$76,$0b,$88,$d0,$fd,$8d,$20 // L........v..... 
        .byte $d0,$8d,$21,$d0,$e8,$e0,$67,$d0,$ec,$a9,$01,$8d,$19,$d0,$a9,$18 // ..!...g.........
        .byte $8d,$16,$d0,$a2,$ae,$bd,$49,$0a,$ec,$12,$d0,$d0,$fb,$8d,$20,$d0 // ......I....... .
        .byte $e8,$e0,$b4,$d0,$f0,$a9,$36,$8d,$16,$d0,$20,$e3,$0c // ......6... ..

// --- Region $0a64-$0a6b ---
.pc = $0a64 "dat_0a64"

dat_0a64:
        .byte $20,$6d,$0a,$20,$6d,$0a,$4c,$6d       //  m. m.Lm

// --- Region $0ab7-$0c20 ---
.pc = $0ab7 "dat_0ab7"

dat_0ab7:
        .byte $d0,$48,$26,$00,$d0,$70,$26,$01,$d0,$a0,$26,$02,$d0,$90 // .H&..p&...&...

txt_0ac5:
        .text "&"
        .byte $40                                   // @ character
        .byte $d0                                   // 'P' | $80 (end-of-string marker)
        .byte $78                                   // x

txt_0ac9:
        .text "&A"
        .byte $d0                                   // 'P' | $80 (end-of-string marker)
        .byte $10,$26,$80,$d0,$c8,$26,$81,$d0,$08,$26,$c0,$d0,$d0,$26,$c1,$d0 // .&...&...&...&..

txt_0adc:
        .text "(&"
        .byte $c2                                   // 'B' | $80 (end-of-string marker)
        .byte $d1,$78,$27,$00,$d0,$08,$27,$01,$d0,$38,$27,$02,$d0 // .x'...'..8'..

txt_0aec:
        .text "H'"
        .byte $40                                   // @ character
        .byte $d0                                   // 'P' | $80 (end-of-string marker)
        .byte $60                                   // `

txt_0af1:
        .text "'A"
        .byte $d0                                   // 'P' | $80 (end-of-string marker)

txt_0af4:
        .text "('B6.3.6"
        .byte $00                                   // string terminator
        .byte $00,$00,$00,$06,$00,$06,$06,$0e,$06,$00,$0e,$06,$0e,$0e,$03,$0e // ................
        .byte $00,$03,$0e,$03,$03,$01,$03,$00,$01,$03,$01,$01,$01,$01,$07,$01 // ................
        .byte $00,$07,$01,$07,$07,$0a,$07,$00,$0a,$07,$0a,$0a,$02,$0a,$00,$02 // ................
        .byte $0a,$02,$02,$00,$02,$00,$00,$02,$00,$02,$02,$0a,$02,$00,$0a,$02 // ................
        .byte $0a,$0a,$07,$0a,$00,$07,$0a,$07,$07,$01,$07,$00,$01,$07,$01,$01 // ................
        .byte $01,$01,$03,$01,$00,$03,$01,$03,$03,$0e,$03,$00,$0e,$03,$0e,$0e // ................
        .byte $06,$0e,$00,$06,$0e,$06,$06,$00,$06,$00,$06,$06,$0e,$03,$03,$01 // ................
        .byte $01,$01,$03,$03,$0e,$06,$06,$00,$00,$0a,$08,$08,$08,$08,$08,$08 // ................
        .byte $08,$01,$08,$08,$08,$08,$08,$08,$08,$01,$08,$08,$08,$08,$08,$08 // ................
        .byte $08,$01,$08,$08,$08,$08,$08,$08,$08,$01,$08,$08,$08,$08,$08,$08 // ................
        .byte $08,$01,$08,$08,$08,$08,$08,$08,$08,$01,$08,$08,$08,$08,$08,$08 // ................
        .byte $08,$01,$08,$08,$08,$08,$08,$08,$08,$01,$08,$08,$08,$08,$08,$08 // ................
        .byte $08,$01,$08,$08,$08,$08,$08,$08,$08,$01,$08,$08,$08,$08,$08,$08 // ................
        .byte $08,$01,$08,$08,$08,$08,$08,$08,$08,$01,$08,$08,$08,$08,$08,$08 // ................
        .byte $c8,$e0,$f8,$10,$28,$40,$98,$99,$9a,$9b,$9c,$9d,$00,$00,$00,$00 // ....(@..........
        .fill 19, $00

scr_0c00:
        // === Screen RAM (33 bytes, $0c00-$0c20) ===
        .encoding "screencode_mixed"
        .text "@fbbgfbbg jbgfbbbbbbgfbbbbbbgfbbg"
        .encoding "petscii_upper"

// --- Region $0c39-$0c58 ---
.pc = $0c39 "dat_0c39"

dat_0c39:
        .encoding "screencode_mixed"
        .text "d reduze evedv jksteduvjkr ed ue"
        .encoding "petscii_upper"

// --- Region $0c71-$0c90 ---
.pc = $0c71 "dat_0c71"

dat_0c71:
        .encoding "screencode_mixed"
        .text "dwxedr e e ed  ed uedsted yedrwe"
        .encoding "petscii_upper"

// --- Region $0ca9-$0d57 ---
.pc = $0ca9 "dat_0ca9"

dat_0ca9:
        .encoding "screencode_mixed"
        .text "d vedvulcixed ylmxyed zlmz ed xe@@@@@@@@"
        .fill 11, $00                               // scrcode: @@@@@@@@@@@
        .encoding "petscii_upper"
// Referenced by: jsr from $0a94

sub_0cdc:
        .encoding "screencode_mixed"
        .byte $a9,$94,$85,$51,$a9                   // scrcode: .....
        .text "o"
        .byte $60                                   // scrcode: .
        .text " "
        .byte $64                                   // scrcode: .
        .text "j"
        .byte $a2,$f2,$ec                           // scrcode: ...
        .text "r"
        .byte $d0,$d0,$f9,$60                       // scrcode: ....
        .text "@@@@@@@@@@@@@@@@@@@dz "
        .text "ed sttynidr jkv edv yr nidu e@@@@@@@@@@@"
        .fill 12, $00                               // scrcode: @@@@@@@@@@@@
        .text "dsted  jbkhodxzed zedz jbkhody e"
        .encoding "petscii_upper"

// --- Region $0d70-$0d8f ---
.pc = $0d70 "dat_0d70"

dat_0d70:
        .encoding "screencode_mixed"
        .text "d veduye dredstedv ed re duedzre"
        .encoding "petscii_upper"

// --- Region $0da8-$0dc7 ---
.pc = $0da8 "dat_0da8"

dat_0da8:
        .encoding "screencode_mixed"
        .text "hccihcci hcihccihccihcci hcihcci"
        .encoding "petscii_upper"

// --- Region $0de2-$0f1a ---
.pc = $0de2 "dat_0de2"

dat_0de2:
        .encoding "screencode_mixed"
        .text "bejpw"
        .byte $1f                                   // scrcode: .
        .text "'1<"
        .byte $47,$53,$5f,$6b,$77,$84,$90,$9c,$a8,$b3,$be,$c8,$d2,$da,$e2,$e9 // scrcode: ................
        .byte $ef,$f4,$f8,$fa,$fc,$fc,$fc,$fa,$f7,$f3,$ee,$e8,$e1,$d9,$d0 // scrcode: ...............
        .byte $c7,$bd,$b2,$a6,$9b,$8e,$82,$76,$69,$5d,$51,$45 // scrcode: ............
        .text ":0&"
        .byte $1d                                   // scrcode: .
        .text "voieb@@@@@@@@@"
        .byte $b9,$b9,$e6,$e6,$9b,$9b,$6e,$6e       // scrcode: ........
        .text "@@"
        .text "@"
        .byte $ff,$aa,$55,$aa,$ff,$ff,$aa,$55,$aa,$ff // scrcode: ..........
        .text "@@@"
        .byte $1b,$1b,$1b,$1b,$1b,$1b,$1b,$1b,$e4,$e4,$e4,$e4,$e4,$e4,$e4,$e4 // scrcode: ................
        .text "@@@?zyz"
        .byte $1b                                   // scrcode: .
        .text "@@"
        .text "@"
        .byte $fc,$a4,$64,$a4,$e4,$1b               // scrcode: ......
        .text "zyz?@@@"
        .byte $e4,$a4,$64,$a4,$fc                   // scrcode: .....
        .text "@@@@@@"
        .byte $ff,$ea,$e5,$ea,$ef                   // scrcode: .....
        .text "@@@"
        .byte $ff,$ab,$5b,$ab,$fb,$ef,$ea           // scrcode: .......
        .byte $e5,$ea,$ff                           // scrcode: ...
        .text "@@@"
        .byte $fb,$ab,$5b,$ab,$ff                   // scrcode: .....
        .text "@@@?zyz"
        .byte $1b,$1b,$1b,$1b,$fc,$a4,$64,$a4,$e4,$e4,$e4,$e4,$1b,$1b,$1b,$1b // scrcode: ................
        .text "zyz?"
        .byte $e4,$e4                               // scrcode: ..
        .byte $e4,$e4,$a4,$64,$a4,$fc               // scrcode: ......
        .text "@@ "
        .byte $98                                   // scrcode: .
        .text " @@@@@@h&"
        .byte $95                                   // scrcode: .
        .text "&h@@@@@"
        .byte $80                                   // scrcode: .
        .text "@@@p@@@@@@@@"
        .text "@@@@d@@h@@@@@@@@@h@@p@@@p@@@h@@@@@@ @"
        .byte $ad                                   // scrcode: .
        .text "r"
        .byte $d0                                   // scrcode: .
        .byte $cd                                   // scrcode: .
        .text "r"
        .byte $d0,$d0,$f8,$60,$a2                   // scrcode: .....
        .text "@"
        .byte $bd,$70                               // scrcode: ..
        .text "p"
        .byte $9d                                   // scrcode: .
        .text "ah"
        .byte $e8,$d0,$f7,$ee                       // scrcode: ....
        .text "dd"
        .byte $ee                                   // scrcode: .
        .text "gd"
        .byte $ad                                   // scrcode: .
        .text "dd"
        .byte $c9,$d0,$d0,$e8,$4c,$8c               // scrcode: ......
        .text "d"
        .encoding "petscii_upper"

// --- Region $0f8d-$106e ---
.pc = $0f8d "Program $0f8d"
        .encoding "screencode_mixed"
        .text "7"
        .byte $85                                   // scrcode: .
        .text "a"
        .byte $58,$4c,$e2,$fc                       // scrcode: ....
        .text "ok, here is tri-dos of ikari here"
        .text " with another cheap shit budget game. en"
        .text "dzone (c"
        .encoding "petscii_upper"

txt_0fe5:
        .text ") 1988 "
        .encoding "screencode_mixed"
        .text "alternative software"
        .encoding "petscii_upper"

txt_1000:
        .encoding "screencode_mixed"
        .text ". cracked by tri-dos. quick top five to"
        .encoding "petscii_upper"

txt_1027:
        .text " -: 1."
        .byte $02,$12,$0f,$13                       // ....

txt_1031:
        .text ". 2."
        .byte $04,$03,$13,$20,$33,$2e,$08,$0f,$14,$0c,$09,$0e,$05,$20,$34,$2e // ... 3........ 4.
        .byte $04,$0f,$0d,$09,$0e,$01,$14,$0f,$12,$13,$20,$35,$2e,$13,$03,$07 // .......... 5....

txt_1055:
        .text "    "
        .byte $0c,$01,$14,$05                       // ....

txt_105d:
        .text "!                 "
