#261

Warlock 01

Warlock

1.066 lines of code

RasterbarsRSTRSpritesSPRT

History

Released
October 1986
Group
Warlock — Denmark

A crack intro by the scener known as Warlock, a Danish coder and cracker active from 1986 onward. CSDb identifies Warlock as a member of Nova Import Division and formerly Reflex Cracking Squad, who used earlier handles including James Bond, Spiderman, and Rocky. His intro from October 1986 was reused across numerous game cracks including 180, Captured, Fist II, Sanxion, Shogun, and others — a common practice where a single intro binary was attached to multiple releases. The intro features a SID track titled "Outlaw" from the HVSC. Warlock was featured in a Danish IC magazine article in May/June 1986 and was known for using the "1935 sys" system line. CSDb documents over 60 releases spanning 1986 to 1987. The scener should not be confused with the Swedish group Warlock (WRL) or the German Warlock Crew — this was a solo operator within the Danish scene during the earliest years of organized C64 software cracking.

Sources: CSDb · CSDb Scener

warlock-01.asm 1.066 lines
// ============================================
// output - Part 1 of 2
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-01 10:59:40
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0801  End: $ffff  (63487 bytes)
// Crunched with Exomizer v2/v3 (with relocation) — depacked by emulation
// Packer entry: $0810 (via BASIC SYS 2064)
// Entry point:  $cc7a (52346)
// IRQ handler:  $cde5 (irq_cde5)
//
// Code: 707 bytes, Data: 62780 bytes
// Labels: 85, Subroutines: 6
//
// Verification: 5 line(s) auto-corrected to .byte for exact byte matching
//
// Cross-references: all OK
// ============================================


// --- Region $8ed0-$8ed0 ---
.pc = $8ed0 "Segment $8ed0"
        brk

// --- Region $a9d0-$a9d0 ---
.pc = $a9d0 "Segment $a9d0"
        brk

// --- Region $cc7a-$cc7e ---
.pc = $cc7a "main_cc7a"

main_cc7a:
        jmp loc_cd17

dat_cc7d:
        .byte $ef,$27                               // .'

// --- Region $cd17-$cfe4 ---
.pc = $cd17 "loc_cd17"

loc_cd17:
        lda #$20
        ldx #$00

loc_cd1b:
        sta scr_ec00,x
        sta $ed00,x
        sta $ee00,x
        sta $ef00,x
        inx
        bne loc_cd1b
        sei
        lda #$00
        tax

loc_cd2e:
        sta $fa00,x
        sta $fa40,x
        sta $fa80,x
        sta $fac0,x
        sta $fb00,x
        sta $fb40,x
        sta $fb80,x
        sta $fbc0,x
        inx
        cpx #$40
        bne loc_cd2e
        lda #$01
        sta $d01a
        lda #$7f
        sta $dc0d
        and $d011
        sta $d011
        lda #$00
        sta $fb
        lda #$e5
        sta $0314
        lda #$cd
        sta $0315
        lda #$00
        sta $d021
        sta $d020
        lda #$00
        sta $dd00
        lda #$be
        sta $d018
        jsr sub_cf09
        dec $01
        dec $01
        ldx #$00

loc_cd84:
        txa
        cmp #$08
        bcs $cd96
        lda txt_ccf5,x
        and #$3f
        sta $eda0,x
        lda #$0f
        sta $d9a0,x
        txa
        cmp #$10
        bcs $cda8
        lda bmp_e000,x
        and #$3f
        sta $ee14,x
        lda #$0c
        sta $da14,x
        txa
        lda $ccfd,x
        and #$3f
        sta $eeff,x
        lda #$0b
        sta $daff,x
        inx
        cpx #$1a
        bne loc_cd84
        inc $01
        inc $01
        cli

loc_cdc0:
        lda $dc01
        cmp #$ef
        bne loc_cdc0
        sei
        jsr $ff81
        jsr $ff84
        jsr $ff8a
        ldx #$00
        stx $d020
        stx $d021
        stx $c6
        cli
        jmp loc_fce2

dat_cddf:
        .byte $20,$8e,$a6,$4c,$ae,$a7               //  ..L..

irq_cde5:
        lda $fb
        asl
        tay
        lda $cc9e,y
        sta $a7
        lda $cc9f,y
        sta $a8
        jmp ($00a7)