#513

Crackman 03

Crackman

1.049 lines of code

History

Group
Crackman Crew — Germany, founded 1984

A crack intro from the Crackman Crew, a German group founded in 1984 — making them one of the earliest documented C64 cracking operations. CSDb confirms the group's existence and German origin but provides no individual credits for code, music, or graphics on this particular intro. The release date is also unrecorded. Founded in the same year the C64 cracking scene was establishing itself in Germany, Crackman Crew predates many of the better-known German groups that emerged in 1986 and 1987. The group is not documented on Doc Snyder's page, Demozoo, or the Atlantis Prophecy archive. Comments on intros.c64.org include a 2008 note from stainlesssteel and a 2015 observation about the intro's compatibility across multiple Commodore platforms. The sparse archival record despite the early founding date suggests Crackman Crew may have been a small local operation whose releases circulated primarily within the German domestic scene before the international distribution networks matured.

Sources: CSDb · intros.c64.org

crm-03.asm 1.049 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:14
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0334  End: $ffff  (64716 bytes)
// Crunched with Section 8 Pack — depacked by emulation
// Packer entry: $0fed (via BASIC SYS 4077)
// Entry point:  $f00c (61452)
//
// Code: 678 bytes, Data: 64038 bytes
// Labels: 129, Subroutines: 0
//
// Verification: 2 line(s) auto-corrected to .byte for exact byte matching
//
// Cross-references: all OK
// ============================================


// --- Region $1000-$1007 ---
.pc = $1000 "loc_1000"

loc_1000:
        sei
        lda #$37
        sta $01
        jmp loc_fce2

// --- Region $f004-$f0b5 ---
.pc = $f004 "loc_f004"

loc_f004:
        lda #$01
        stx dat_dc0e
        stx $dc0f

main_f00c:
        sta $01
        lda $d408,x
        sta dat_e008,x
        lda #$05
        sta $01
        lda dat_f700,x
        sta dat_d800,x
        inx
        bne loc_f004
        inc $f010
        inc $f013
        inc $f01a
        inc $f01d
        dey
        bne loc_f004
        lda #$e0
        sta $fe
        stx $fd
        lda #$e4
        sta $51
        stx $50

loc_f03c:
        ldy #$00
        lda ($fd),y
        sta $52
        ldx #$01

loc_f044:
        ldy #$04

loc_f046:
        asl $52
        php
        rol
        plp
        rol
        dey
        bne loc_f046
        sta ($50),y
        dec $51
        dec $51
        dex
        beq loc_f044
        inc $50
        beq loc_f05f
        lda #$04
.label loc_f05f = * + 1
        bit $05a9
        clc
        adc $51
        sta $51
        inc $fd
        bne loc_f06c
        inc $fe

loc_f06c:
        lda $fe
        cmp #$e2
        bne loc_f03c
        jsr $f0ee
        ldx #$2e

loc_f077:
        lda dat_f400,x
        sta $d3c0,x
        dex
        bpl loc_f077
        lda #$7f
        sta $dc0d
        lda #$94
        sta $dd00
        lda #$cc
        sta $0288
        sty $03
        sty $05
        stx $06
        stx $08
        sty $09
        cli
        jsr loc_f116

loc_f09d:
        bit $d3d1
        bpl loc_f09d
        jsr $f248
        jsr $f1ec
        jsr $f17d
        lda $dc01
        cmp #$ef
        bne loc_f09d
        jmp loc_1000

dat_f0b5:
        .byte $48                                   // H

// --- Region $f0ee-$f2d9 ---
.pc = $f0ee "Segment $f0ee"
        lda #$04
        sta $07
        ldy #$00
        lda #$fb
        sta $fc
        sty $fb
        lda #$cc
        sta $51
        sty $50

loc_f100:
        lda ($fb),y
        pha