#224

Danish Crackers [DC] 01

Danish Crackers [DC]

579 lines of code

SpritesSPRT

History

Released
1984–1985
Group
Danish Crackers — Denmark, founded 1984

This intro from Danish Crackers — one of the earliest cracking groups not just in Denmark but in the entire European C64 scene — dates to the group's 1984–1985 active period. CSDb credits PMK for coding the group's intros, and the release page for their 1985 version (release 61846) shows the "Outlaw" SID was used as the musical accompaniment. Danish Crackers operated under the slogan "They make 'em, we break 'em" and are credited with pioneering several firsts: establishing Denmark's first cracking group and developing what is described as the world's first smooth-scrolling text effect. Co-founded by PMK and Jellyfish in 1984, the group dissolved by 1985 after releasing 112 titles. Intros.c64.org comments from multiple users recall this as their very first encounter with a crack intro, underscoring Danish Crackers' historical significance. The group's brief existence preceded the explosion of Danish scene activity that would later produce groups like Channel 42 and #25 The Dominators.

Sources: CSDb · CSDb Group · intros.c64.org

dc-01.asm 579 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-01 10:59:17
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0801  End: $0d8f  (1423 bytes)
// Entry point:  $0828 (via BASIC SYS 2088)
// IRQ handler:  $08fb (irq_08fb)
// IRQ handler:  $ea31 (loc_ea31)
//
// Code: 504 bytes, Data: 919 bytes
// Labels: 84, Subroutines: 3
//
// Cross-references: all OK
// ============================================


// --- Region $0809-$080f ---
.pc = $0809 "loc_0809"

loc_0809:
        sec
        sec
        .byte $14,$14                               // nop $14,x // ILLEGAL
        .byte $14,$14                               // nop $14,x // ILLEGAL

dat_080f:
        .byte $14                                   // .

// --- Region $0828-$0a1a ---
.pc = $0828 "main_0828"

main_0828:
        jmp loc_0842

dat_082b:
        .byte $85                                   // .

loc_082c:
        bpl loc_083b
        pha
        lda #$90
        pha
        ldx #$0e

loc_0834:
        lda txt_0813,x
        lsr
        ror
        clc
.label loc_083b = * + 1
        adc $10
        sta $10
        dex
        bne loc_0834
        rts

loc_0842:
        ldx #$c0

loc_0844:
        lda $0ccf,x
        sec
        sbc #$07
        sta $033f,x
        dex
        bne loc_0844
        lda #$28
        sta $d010
        ldx #$00
        stx $d017
        stx $d01d
        stx $d015
        stx $d01c
        stx $d020
        stx $d021

loc_0869:
        lda dat_0a1b,x
        sta $d027,x
        lda $0a21,x
        sta $07f8,x
        inx
        cpx #$07
        bne loc_0869
        ldx #$00

loc_087c:
        lda $0a27,x
        sta $d000,x
        inx
        cpx #$0c
        bne loc_087c
        lda #$03
        sta $d015
        lda #$33
        ldy #$0a
        jsr sub_0a07
        lda #$3f
        sta $d015
        jsr sub_08c7

loc_089b:
        ldy #$00

loc_089d:
        lda $da30,y
        and #$0f
        cmp #$02
        beq loc_08bf
        cmp #$01
        beq loc_08b7

loc_08aa:
        ldx #$90

loc_08ac:
        inx
        bne loc_08ac
        iny
        cpy #$78
        bne loc_089d
        jmp loc_089b

loc_08b7:
        lda #$02
        sta $da30,y
        jmp loc_08aa

loc_08bf:
        lda #$01
        sta $da30,y
        jmp loc_08aa
// Referenced by: jsr from $0898

sub_08c7:
        sei
        lda #$7f
        sta $dc0d
        ldx #$01
        stx $d01a
        inx
        stx $f9
        lda $0ccc
        sta $d012
        lda #$18
        sta $d011
        lda #$fb