#141

Censor Design [CD] 06

Censor Design [CD]

4.469 lines of code

RasterbarsRSTRMusicSIDScrollerSCRLSpritesSPRTBitmapBMAP

History

Released
8 January 1991
Music
Galleon (Kristofer Cassel) — "Cruelcruncher V1.2"
Graphics
Sensei
Group
Censor Design — Sweden, founded 28 June 1989

By January 1991, Censor Design was transitioning from cracking to demo production — a shift that would eventually make them one of the most celebrated C64 demo groups in history. Galleon (Kristofer Cassel) composed "Cruelcruncher V1.2" — the title referencing a file compression tool, suggesting the scene's increasing technical self-awareness. Sensei provided graphics. No coder is listed on CSDb. The Swedish group had been founded less than two years earlier, yet was already producing work that pointed toward their demo future. This intro exists alongside #59 CD-03 in the rankings, both from Censor Design's cracking period. Doc Snyder's page documents the group. The HVSC preserves Cassel's composition. Censor Design's later demo productions (Krestology, Brutal, Wonderland) would become milestones in C64 programming history.

Sources: CSDb · docsnyderspage

cd-06.asm 4.469 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: $0800  End: $ffff  (63488 bytes)
// Crunched with Exomizer v2/v3 (with relocation) — depacked by emulation
// Packer entry: $0810 (via BASIC SYS 2064)
// Entry point:  $13c0 (5056)
// IRQ handler:  $10ec (irq_10ec)
//
// Code: 2820 bytes, Data: 60668 bytes
// Labels: 556, Subroutines: 10
//
// Cross-references: all OK
// ============================================


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

loc_1000:
        sei
        lda #$02
        sta $10
        lda $02a6
        sta dat_1343
        jsr sub_1800
        lda #$d7
        sta $02
        sta $03
        lda #$00
        sta $d020
        sta $d021
        lda #$93
        jsr $ffd2
        ldx #$00

loc_1023:
        lda #$07
        sta $d027,x
        inx
        cpx #$08
        bne loc_1023
        lda #$03
        sta $d025
        lda #$05
        sta $d026
        ldx #$00
        ldy #$00

loc_103b:
        lda $134c,y
        sta $d000,x
        iny
        inx
        inx
        cpx #$10
        bne loc_103b
        lda #$ff
        sta $d015
        sta $d01c
        sta $d01d
        lda #$ff
        sta $d01b
        lda #$e0
        sta $d010
        ldx #$00

loc_105f:
        lda #$f8
        sta $05e0,x
        sta $06e0,x
        lda #$09
        sta $d9e0,x
        sta $dae0,x
        inx
        bne loc_105f
        ldx #$00

loc_1074:
        lda tbl_lo_1400,x
        sta $04a0,x
        clc
        adc #$80
        sta $04c8,x
        inx
        cpx #$28
        bne loc_1074
        ldx #$00

loc_1087:
        lda tbl_hi_1428,x
        sta $0518,x
        clc
        adc #$80
        sta $0540,x
        inx
        cpx #$28
        bne loc_1087
        ldx #$00
        lda #$00

loc_109c:
        sta $d800,x
        sta $d8e0,x
        inx
        bne loc_109c
        ldx #$00
        txa

loc_10a8:
        sta $db70,x
        sta $db98,x
        sta $dbc0,x
        inx
        cpx #$28
        bne loc_10a8
        lda #$0f
        sta $d022
        lda #$08
        sta $d023
        lda #$d8
        sta $d016
        lda #$19
        sta $d018
        lda #$3b
        sta $d011
        lda #$ec
        sta $0314
        lda #$10
        sta $0315
        lda #$01
        sta $d01a
        bit $7f
        sta $dc0d
        lda #$32
        sta $d012
        cli

loc_10e9:
        jmp loc_10e9

irq_10ec:
        inc $d019
        lda #$38

loc_10f1: