#769

Coco Software 01

Coco Software

600 lines of code

RasterbarsRSTRBitmapBMAP

History

Released
December 1985
Group
Coco Software — Germany

One of the earliest intros in the ranked collection, this Coco Software production dates to December 1985 — predating the golden age of elaborate crack intros by roughly a year. CSDb catalogues it as "Coco Software Intro" (release 59031) and records its use in a crack of The Goonies. The intro is attributed to Coco, a German scener who operated as a solo act or small outfit rather than a formal group. Intros.c64.org comments suggest Coco was associated with Hotline, a more prominent Dutch/German group. No music or graphics credits are recorded, consistent with the era's minimalist intro conventions — 1985 crack intros typically consisted of simple text displays identifying the cracker, sometimes with basic visual effects. The absence of a ripped SID tune places this firmly in the pre-jukebox era, before Rob Hubbard rips and original compositions became standard crack intro features. Despite its simplicity, the intro's ranking at position 769 reflects community appreciation for historically significant early productions.

Sources: CSDb · intros.c64.org

coco-01.asm 600 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: $0700  End: $43ff  (15616 bytes)
// Crunched with Exomizer v2/v3 — depacked by emulation
// Packer entry: $080b (via BASIC SYS 2059)
// Entry point:  $0819 (2073)
//
// Code: 158 bytes, Data: 15458 bytes
// Labels: 69, Subroutines: 1
//
// Cross-references: all OK
// ============================================


// --- Region $0819-$0841 ---
.pc = $0819 "main_0819"

main_0819:
        jsr sub_08a0
        lda #$00
        sta $d020
        lda #$10
        ldx #$00

loc_0825:
        sta $0400,x
        inx
        bne loc_0825

loc_082b:
        sta $0500,x
        inx
        bne loc_082b

loc_0831:
        sta $0600,x
        inx
        bne loc_0831

loc_0837:
        sta $0700,x
        inx
        cpx #$e8
        bne loc_0837
        jmp $fce2

// --- Region $08a0-$0914 ---
.pc = $08a0 "sub_08a0"
// Referenced by: jsr from $0819

sub_08a0:
        lda #$3b
        ldy #$1d
        sta $d011
        sty $d018
        ldx #$00

loc_08ac:
        lda dat_4000,x
        sta $0400,x
        lda $4100,x
        sta $0500,x
        lda $4200,x
        sta $0600,x
        lda $4300,x
        sta $0700,x
        inx
        bne loc_08ac
        lda #$00
        sta $fb
        sta $fc
        sta $c6
        tay
        tax

loc_08d1:
        lda $c6
        bne $090a
        lda $d011
        bmi loc_08f6
        lda $d012
        cmp #$95
        bpl loc_08f6
        tya
        clc
        adc $d012
        lsr
        lsr
        lsr
        sta $d020
        dec $fb
        bne loc_08d1
        dey
        dey
        bne loc_08d1
        beq loc_08d1

loc_08f6:
        txa
        clc
        adc $d012
        lsr
        lsr
        lsr
        sta $d020
        dec $fc
        bne loc_08d1
        inx
        bne loc_08d1
        beq loc_08d1
        ldy #$00
        ldx #$00
        sty $d011
        stx $d018
        rts

// ============================================
// Data blocks
// ============================================

// --- Region $0800-$0818 ---
.pc = $0800 "dat_0800"

dat_0800:
        .byte $d6,$10,$08,$c1,$07,$9e               // ......

txt_0806:
        .text "2073 COCO"
        .byte $00                                   // string terminator
        .byte $00,$00,$58,$00,$00,$00,$00,$00,$00   // ..X......

// --- Region $0842-$0842 ---
.pc = $0842 "dat_0842"

dat_0842:
        // === Fill data (1 bytes, $0842-$0842) ===
        .byte $00                                   // .

// --- Region $0915-$0915 ---
.pc = $0915 "dat_0915"

dat_0915:
        // === Fill data (1 bytes, $0915-$0915) ===
        .byte $00                                   // .