// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:07
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0801  End: $0fff  (2047 bytes)
// Entry point:  $0814 (via BASIC SYS 2068)
// IRQ handler:  $08fd (irq_08fd)
//
// Code: 522 bytes, Data: 1525 bytes
// Labels: 83, Subroutines: 4
//
// Cross-references: all OK
// ============================================


// --- Region $0814-$098f ---
.pc = $0814 "main_0814"

main_0814:
        sei
        lda #$37
        sta $01
        jsr $fd15
        jsr $fda3
        jsr $ff5b
        jsr sub_08e8
        lda #$7f
        sta $dc0d
        lda #$fd
        sta $0314
        lda #$01
        sta $d01a
        lda #$08
        sta $0315
        lda #$e1
        jsr sub_09ee
        lda #$80
        sta $0291
        ldx #$00

loc_0845:
        lda dat_0b25,x
        sta $0400,x
        sta $06a8,x
        lda #$bc
        sta $d800,x
        sta $daa8,x
        lda #$00
        sta $d968,x
        inx
        bne loc_0845

loc_085e:
        lda $0c25,x
        sta $07a8,x
        sta $0500,x
        lda #$bc
        sta $d900,x
        sta $dba8,x
        inx
        cpx #$3c
        bne loc_085e
        lda #$f1
        sta $d022
        lda #$f3
        sta $d023
        lda #$8f
        sta smc_0976                                // SMC: modifies $0976
        lda #$0c
        sta smc_0977                                // SMC: modifies $0977
        lda #$35
        sta $01
        ldx #$00

loc_088e:
        lda $3800,x
        sta $f000,x
        lda $3900,x
        sta $f100,x
        lda $3a00,x
        sta $f200,x
        lda $3b00,x
        sta $f300,x
        inx
        bne loc_088e
        lda #$33
        sta $01
        ldy #$00

loc_08af:
        lda $d400,x
        sta $3800,y
        sta $3801,y
        lda $d480,x
        sta $3900,y
        sta $3901,y
        lda $d500,x
        sta $3a00,y
        sta $3a01,y
        lda $d580,x
        sta $3b00,y
        sta $3b01,y
        iny
        iny
        inx
        cpx #$80
        bne loc_08af
        lda #$37
        sta $01
        cli

loc_08df:
        lda $c5
        cmp #$3c
        bne loc_08df
        jmp loc_09a0

// Referenced by: jsr from $0822, $09aa
sub_08e8: {
        lda #$00
        sta $d020
        sta $d021
        sta $c6
        ldx #$00
loop:
        sta $d400,x
        inx
        cpx #$1f
        bne loop
        rts
}

irq_08fd:
        ldx #$80

loc_08ff:
        cpx $d012
        bne loc_08ff
        lda #$1e
        sta $d018
.label smc_090a = * + 1
        lda #$c3                                    // !SMC: modified by $0954
        sta $d016
        ldx #$93

loc_0910:
        cpx $d012
        bne loc_0910
        lda irq_08fd,x
        sta $d021
        inx
        cpx #$a3
        bne loc_0910
        ldy #$07

loc_0922:
        dey
        bpl loc_0922
        lda #$00
        sta $d021
        lda #$f8
        sta $d016
        lda #$12
        sta $d018
        jsr sub_0947
        jsr sub_0947
        lda #$00
        sta $d012
        lda #$01
        sta $d019
        jmp $ea31
// Referenced by: jsr from $0934, $0937

sub_0947:
        dec smc_090a
        lda smc_090a
        cmp #$c0
        bmi loc_0952
        rts

loc_0952:
        lda #$c7
        sta smc_090a                                // SMC: modifies $090a
        ldx #$00

loc_0959:
        lda $05e1,x
        sta $05e0,x
        lda $0609,x
        sta $0608,x
        inx
        cpx #$28
        bne loc_0959
        inc smc_0976
        lda smc_0976
        bne loc_0975
        inc smc_0977

loc_0975:
.label smc_0976 = * + 1
.label smc_0977 = * + 2
        lda $0ca1                                   // !SMC: modified by $0880, $0885, $097c, $0981
        bne loc_0986
        lda #$8f
        sta smc_0976                                // SMC: modifies $0976
        lda #$0c
        sta smc_0977                                // SMC: modifies $0977
        lda #$20

loc_0986:
        asl
        tax
        stx $0607
        inx
        stx $062f
        rts

// --- Region $09a0-$09e3 ---
.pc = $09a0 "loc_09a0"

loc_09a0:
        sei
        jsr sub_0c63
        jsr $fda3
        jsr $ff5b
        jsr sub_08e8
        ldx #$00

loc_09af:
        lda dat_09bd,x
        sta $033c,x
        inx
        cpx #$45
        bne loc_09af
        jmp $033c

dat_09bd:
        .byte $78,$a9,$34,$85,$01                   // x.4..

loc_09c2:
        ldx #$00

loc_09c4:
        lda $1000,x
        sta dat_0801,x
        inx
        bne loc_09c4
        inc $0345
        inc $0348
        lda $0348

loc_09d6:
        cmp #$d0
        bne loc_09c2
        lda #$37
        sta $01
        cli
        jmp $fce2

txt_09e2:
        .text "*B"

// --- Region $09ee-$0a00 ---
.pc = $09ee "sub_09ee"
// Referenced by: jsr from $083b

sub_09ee:
        sta $0328
        ldx #$00
        txa

loc_09f4:
        sta $d93c,x
        sta $da00,x
        inx
        bne loc_09f4
        jmp loc_0b10

dat_0a00:
        .byte $05                                   // .

// --- Region $0b10-$0b24 ---
.pc = $0b10 "loc_0b10"

loc_0b10:
        sta $dbe4,x
        inx
        cpx #$04
        bne loc_0b10
        ldx #$00
        lda #$40

loc_0b1c:
        sta $05e0,x
        inx
        cpx #$50
        bne loc_0b1c
        rts

// --- Region $0c63-$0c8d ---
.pc = $0c63 "sub_0c63"
// Referenced by: jsr from $09a1

sub_0c63:
        sei
        lda #$35
        sta $01
        ldx #$00

loc_0c6a:
        lda $f000,x
        sta $3800,x
        lda $f100,x
        sta $3900,x
        lda $f200,x
        sta $3a00,x
        lda $f300,x
        sta $3b00,x
        inx
        bne loc_0c6a
        lda #$37
        sta $01
        jsr $fd15
        rts

txt_0c8d:
        .text "T"

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

// --- Region $0801-$0813 ---
.pc = $0801 "dat_0801"

dat_0801:
        // === BASIC loader stub ===
        .byte $11,$08                               // next line pointer ($0811)
        .byte $ca,$07                               // line number 1994
        .byte $9e                                   // SYS token
        .text "2068 AGILE"                          // SYS 2068 → main_0814
        .byte $00                                   // end of line
        .byte $00,$00                               // end of BASIC program
        .byte $00                                   // .

// --- Region $0990-$099f ---
.pc = $0990 "dat_0990"

dat_0990:
        .byte $06,$06,$04,$0e,$03,$0d,$01,$01,$01,$0d,$03,$0e,$04,$06,$06,$08 // ................

// --- Region $09e4-$09ed ---
.pc = $09e4 "Program $09e4"
        .text "Y TRINITY*"

// --- Region $0a01-$0b0f ---
.pc = $0a01 "Program $0a01"
        .byte $15,$15
        .text "UVZZZ"
        .byte $70,$fc,$fc,$ff,$bf,$af,$af,$af
        .byte $5a
        .text "ZZVU"
        .byte $15,$15,$07,$af,$af,$af,$bf,$ff,$fc,$fc,$f0

txt_0a20:
        .text "UUUUZZZZUUUU"
        .byte $af                                   // '/' | $80 (end-of-string marker)
        .byte $af,$af,$af
        .text "ZZZZ"
        .byte $5f,$5f,$5f,$5f,$af,$af,$af,$af,$ff
        .byte $ff,$ff,$ff                           // ...

txt_0a40:
        .text "UUUU"
        .byte $aa                                   // '*' | $80 (end-of-string marker)
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$ff,$ff,$ff,$ff // ...........

txt_0a50:
        .text "ZZZZZZZZ"
        .byte $af                                   // '/' | $80 (end-of-string marker)
        .fill 8, $af
        .byte $ad,$ad,$a5,$aa,$aa,$aa,$aa           // .......

txt_0a68:
        .text "ZZZZ"
        .byte $aa                                   // '*' | $80 (end-of-string marker)
        .byte $aa,$aa,$aa,$aa,$aa,$aa,$aa,$af,$af,$af,$af,$aa,$aa,$aa,$aa,$fa // ................
        .byte $da,$da,$5a,$aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa // ..Z.............
        .byte $ab,$af,$af,$aa,$aa,$aa,$aa,$aa,$6a   // ........j

txt_0a96:
        .text "ZZ"
        .byte $af                                   // '/' | $80 (end-of-string marker)
        .byte $af,$ab,$aa,$aa,$aa,$aa,$aa,$5a,$5a,$6a,$aa,$aa,$aa,$aa,$aa,$05 // .......ZZj......
        .byte $05,$15,$15
        .text "VVZZ"
        .byte $f0,$f0,$fc,$fc,$bf,$bf,$af,$af
        .byte $5a
        .byte $5a,$56,$56,$15,$15,$05,$05,$af,$af,$bf,$bf,$fc,$fc,$f0,$f0,$00 // ZVV.............
        .byte $00,$00,$00,$00,$00,$01,$01,$00,$00,$00,$00,$00,$00,$c0,$c0,$01 // ................
        .byte $01,$00,$00,$00,$00,$00,$00,$c0,$c0,$00,$00,$00,$00,$00,$00,$6a // ...............j
        .byte $6a,$aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa,$aa,$ab,$ab,$aa // j...............
        .byte $aa,$aa,$aa,$aa,$aa,$6a,$6a,$00,$00,$00,$00,$00,$00,$00,$00,$ab // .....jj.........
        .byte $ab,$aa,$aa,$aa,$aa,$aa,$aa           // .......

// --- Region $0b25-$0c62 ---
.pc = $0b25 "dat_0b25"

dat_0b25:
        // === Sine/lookup table (256 bytes, range $40-$60) ===
        .byte $60,$60,$60,$60,$60,$60,$60
        .text "YUHA"
        .byte $60,$60,$60,$60,$60
        .byte $60,$60,$60                           // ```

txt_0b38:
        .byte $40                                   // @ character
        .text "HA"
        .byte $40                                   // @ character
        .text "HA"
        .byte $60,$60,$60,$60                       // ````

txt_0b42:
        .byte $40                                   // @ character
        .text "HHHHHA"
        .fill 10, $60
        .byte $59,$55,$5d                           // YU]

txt_0b56:
        .text "PK"
        .byte $40                                   // @ character
        .text "HHHHHHAJPKJPK"
        .byte $60,$60,$60,$60                       // ````

txt_0b6a:
        .text "JPPPPPK"
        .fill 9, $60
        .byte $59,$55,$5d                           // YU]

txt_0b7d:
        .text "PPKJPNIIOPKBICJPK"
        .byte $60,$60,$60,$60                       // ````

txt_0b92:
        .text "BIIIIIC"
        .fill 8, $60
        .byte $59,$55,$5d,$5e                       // YU]^

txt_0ba5:
        .text "OPKJPK"
        .byte $60,$60                               // ``

txt_0bad:
        .text "JPK"
        .byte $40                                   // @ character
        .text "HAJPK"
        .byte $60,$60,$60,$60                       // ````

txt_0bba:
        .byte $40                                   // @ character
        .text "HHHHA"
        .fill 8, $60
        .byte $59,$55,$5d,$5e                       // YU]^

txt_0bcc:
        .text "XJPKJPLHHMPKJPKJPK"
        .byte $60,$60,$60,$60                       // ````

txt_0be2:
        .text "JPNIIC"
        .fill 8, $60
        .byte $55,$5d,$5e                           // U]^

txt_0bf3:
        .text "X"
        .byte $5c                                   // backslash character
        .text "BICBIIIIOPKJPKJPLHHHAJPLHHHA"
        .byte $60,$60,$60,$60,$60,$60,$60           // ```````

txt_0c18:
        .text "JPLHHHHHHHHHHTPKJPKJPPPPPKJPPPPPK"
        .byte $60,$60,$60,$60,$60,$60,$60           // ```````

txt_0c40:
        .text "BIIIIIIIIIIIIIICBICBIIIIICBIIIIIC"
        .byte $c1                                   // 'A' | $80 (end-of-string marker)
        .byte $e0                                   // .

// --- Region $0c8e-$0ffe ---
.pc = $0c8e "Program $0c8e"
        .text "RI   "
        .byte $19,$0f
        .byte $21,$20,$19,$0f

txt_0c99:
        .text "!!! "

txt_0c9d:
        .encoding "screencode_mixed"
        .text "you skatemoshers, listen up"
        .encoding "petscii_upper"

txt_0cb8:
        .text " !!!!!!    "

txt_0cc3:
        .encoding "screencode_mixed"
        .text "alloyrun from starlight software by ash & dave was cracked by the legend, trained & fixed to"
        .encoding "petscii_upper"

txt_0d1f:
        .text " 101% "
        .byte $16,$05,$12,$13,$09,$0f,$0e           // .......

txt_0d2c:
        .text "     "

txt_0d31:
        .encoding "screencode_mixed"
        .text "by injun/agile and finally crunched by fangoria/agile on the"
        .encoding "petscii_upper"

txt_0d6d:
        .text " 21'"

txt_0d71:
        .encoding "screencode_mixed"
        .text "st of june"
        .encoding "petscii_upper"

txt_0d7b:
        .text " ....... "

txt_0d84:
        .encoding "screencode_mixed"
        .text "soon comin' from agile some brand new demos and cracks + a new intro"
        .encoding "petscii_upper"

txt_0dc8:
        .text " .... "

txt_0dce:
        .encoding "screencode_mixed"
        .text "the least lawfull the"
        .encoding "petscii_upper"

txt_0de3:
        .text " 18'"

txt_0de7:
        .encoding "screencode_mixed"
        .text "th of june (read mess.after the ratings"
        .encoding "petscii_upper"

txt_0e0e:
        .text ") .... "

txt_0e15:
        .encoding "screencode_mixed"
        .text "inxs  fusion  tsk  twg  sphinx  ikari  hotline  transcom  triangle  bros  flt  stars  jewels  mcl/sharks  dom  tdf  rwe/tlc  maw  zenith  online  ahead  dexion  network  psygon  xades s.  riffs  tsr  thf  ss  tst"
        .encoding "petscii_upper"

txt_0ee9:
        .text " .... "
        .byte $0d                                   // string terminator

txt_0ef0:
        .encoding "screencode_mixed"
        .text "ess. all ya' out there i hope ya' will show up on the dg/upfront/jewels/dom. party this summer, agile will be there"
        .encoding "petscii_upper"

txt_0f63:
        .text " ....   "
        .byte $01,$03,$14,$15,$01,$0c,$20,$08,$0f,$14,$0c,$09,$0e,$05,$13 // ...... ........

txt_0f7a:
        .text " . +4626270251 & +4626270677 & +4608963565 & +46017156402 .....    "
        .byte $10,$15,$13,$08,$20,$09,$14           // .... ..

txt_0fc4:
        .text " ....  ("

txt_0fcc:
        .encoding "screencode_mixed"
        .text "intro by tri(bah hah)nity)  hip hop'n on the floor "
        .encoding "petscii_upper"
