#59

Censor Design [CD] 03

Censor Design [CD]

3.470 lines of code

RasterbarsRSTRMusicSIDScrollerSCRL

History

Released
6 September 1989
Code
Psycho
Music
Markus Schneider (Diflex) — "Strike Force Introtune"
Charset
Taito
Group
Censor Design — Sweden, founded 28 June 1989

Censor Design would later become one of the most celebrated C64 demo groups in history — but they started as crackers, and this intro from September 1989 represents their early output. Psycho coded the intro while Markus Schneider (Diflex) contributed "Strike Force Introtune," preserved in the HVSC. Taito provided the charset — CSDb notes he was the younger brother of fellow scene member Sensei. Censor Design was founded in Sweden on 28 June 1989, making this intro barely two months old when the group was still finding its identity. Released on 6 September 1989, this arrived during the transition period when many groups were pivoting from pure cracking to demo production. Doc Snyder's page documents Censor Design's credits. The intro attracted 6 comments on intros.c64.org. Schneider/Diflex's compositions appear across multiple groups of the era — he was a prolific German musician whose work is extensively preserved in the HVSC.

Sources: CSDb · docsnyderspage

cd-03.asm 3.470 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:  $1771 (6001)
// IRQ handler:  $17e1 (irq_17e1)
// IRQ handler:  $ea31 (irq_ea31)
//
// Code: 3490 bytes, Data: 59998 bytes
// Labels: 343, Subroutines: 18
//
// Cross-references: all OK
// ============================================


// --- Region $0899-$089d ---
.pc = $0899 "$0899"
        .byte $80,$55                               // nop #$55 // ILLEGAL
        .byte $80,$55                               // nop #$55 // ILLEGAL

dat_089d:
        .byte $80                                   // .

// --- Region $0f08-$0f5d ---
.pc = $0f08 "loc_0f08"

loc_0f08:
        sei
        lda #$37
        sta $01
        lda #$00
        sta $d011
        sta $d020
        sta $d021
        sta $d01a
        sta $d418
        lda #$31
        sta $0314
        lda #$ea
        sta $0315
        jsr $ff5e
        lda #$15
        sta $d018
        lda #$c8
        sta $d016
        ldx #$00
        txa

loc_0f38:
        sta $d800,x
        sta $d900,x
        sta $da00,x
        sta $db00,x
        inx
        bne loc_0f38
        sei
        lda #$34
        sta $01
        ldx #$00

loc_0f4e:
        lda scr_0f5d,x
        sta $0340,x
        inx
        cpx #$80
        bne loc_0f4e
        sei
        jmp $0340

scr_0f5d:
        // === Screen RAM (1 bytes, $0f5d-$0f5d) ===
        .byte $a2                                   // scrcode: .

// --- Region $1000-$1006 ---
.pc = $1000 "sub_1000"
// Referenced by: jsr from $18aa, $f9a1

sub_1000:
        jmp loc_10a3
// Referenced by: jsr from $17da, $f8d1

sub_1003:
        jmp loc_10b1

dat_1006:
        .byte $4c                                   // L

// --- Region $10a3-$14ee ---
.pc = $10a3 "loc_10a3"

loc_10a3:
        lda $1009
        cmp #$01
        beq loc_1101
        cmp #$02
        bne loc_10d7
        jmp loc_10f6

loc_10b1:
        pha
        tax
        lda $0ffb,x

loc_10b6:
        sta $1043
        pla
        ldx #$00
        sta $106e
        asl
        clc
        adc $106e
        tay

loc_10c5:
        lda $15b6,y
        sta $15b3,x
        lda $15bc,y
        sta $15b9,x
        iny
        inx
        cpx #$03
        bne loc_10c5

loc_10d7:
        ldx #$02
        lda #$00

loc_10db:
        sta $102d,x
        sta $1027,x
        sta $101b,x
        sta $1072,x
        sta $101e,x
        sta $1021,x
        dex
        bpl loc_10db
        lda #$01
        sta $1009
        rts

loc_10f6:
        ldx #$18
        lda #$00