#327

Action 05

Action

4.910 lines of code

RasterbarsRSTRMusicSIDScrollerSCRL

History

Released
August 1989
Group
Action — Germany, founded February 1989
Code
Cyco
Music
Jeroen Soede — Dull
Charset
Flex

This crack intro from the German group Action is catalogued on CSDb as release #36779, dated August 1989 — just months after the group's founding in February of that year. Cyco handled both code and artwork, with music by Dutch composer Jeroen Soede using his SID tune "Dull," preserved in the HVSC, and the charset by Flex. The scrolltext includes Action's ranking list — placing 711, DCS, Cosmos, and Dynamix at the top — and notes the intro exceeds 50 blocks when crunched. The text also responds to accusations from rival group Amok, defending Action's cracking abilities and boasting about their "best versions" of New Zealand Story and Rick Dangerous. Doc Snyder's page confirms Cyco as both coder and artist for this specific intro. This is one of three ranked Action intros, alongside the higher-placed #56 Action Intro #3 and #626 Action Intro #1.

Sources: CSDb · intros.c64.org · docsnyderspage

action-05.asm 4.910 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:06
// 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:  $1d00 (7424)
// IRQ handler:  $2800 (irq_2800)
// IRQ handler:  $289a (irq_289a)
//
// Code: 4764 bytes, Data: 58724 bytes
// Labels: 530, Subroutines: 19
//
// Cross-references: all OK
// ============================================


// --- Region $0906-$091c ---
.pc = $0906 "Program $0906"
.label loc_0908 = * + 2
        .byte $7f,$7f,$f6                           // rra $f67f,x // ILLEGAL
        lsr $a6,x
        inc $a6,x
        inc $f6,x
        inc $d7,x
        cmp $c6,x
        .byte $c7,$d6                               // dcp $d6 // ILLEGAL
        .byte $c7,$d7                               // dcp $d7 // ILLEGAL
        .byte $d7,$db                               // dcp $db,x // ILLEGAL
        .byte $5b,$9b,$db                           // sre $db9b,y // ILLEGAL

dat_091c:
        .byte $9b                                   // .

// --- Region $0a84-$0a8f ---
.pc = $0a84 "loc_0a84"

loc_0a84:
        ora $05,x
        ora $01
        .byte $ff,$ff,$ff                           // isc $ffff,x // ILLEGAL
        .byte $ff,$ff,$7f                           // isc $7fff,x // ILLEGAL

dat_0a8e:
        .byte $bf,$bf                               // ..

// --- Region $0ac1-$0ac7 ---
.pc = $0ac1 "loc_0ac1"

loc_0ac1:
        beq loc_0a84
        cmp $14
        bpl loc_0b17
        rti

// --- Region $0b17-$0b17 ---
.pc = $0b17 "loc_0b17"

loc_0b17:
        brk

// --- Region $0c09-$0c21 ---
.pc = $0c09 "loc_0c09"

loc_0c09:
        bvc loc_0c1b
        bpl loc_0c5d
        bpl loc_0c5f
        bvc loc_0c12
.label loc_0c12 = * + 1
        ora $06
        asl $06
        asl $06
        asl $f9
        sbc $fe,x

loc_0c1b:
        inc $fcfd,x
        sbc.abs $00fc,x
        rti

// --- Region $0c5d-$0c68 ---
.pc = $0c5d "loc_0c5d"

loc_0c5d:
        .byte $6b,$5b                               // arr #$5b // ILLEGAL

loc_0c5f:
        asl $ff,x
        .byte $ff,$ff,$ff                           // isc $ffff,x // ILLEGAL
        .byte $ff,$ff,$ff                           // isc $ffff,x // ILLEGAL

dat_0c67:
        .byte $7f,$ff                               // ..

// --- Region $0e01-$0e29 ---
.pc = $0e01 "sub_0e01"
// Referenced by: jsr from $e547

sub_0e01:
        eor $55,x
        ror $99
        eor $aa,x
        .byte $ff,$46,$56                           // isc $5646,x // ILLEGAL
        lsr $66,x
        stx $56,y
        tax
        .byte $ff,$94,$e5                           // isc $e594,x // ILLEGAL
        sbc #$fa
        inc $ffff,x
        .byte $ff,$44,$55                           // isc $5544,x // ILLEGAL
        eor $56,x
        sta $a9,x
        .byte $fa                                   // nop // ILLEGAL
        .byte $ff,$44,$55                           // isc $5544,x // ILLEGAL
        eor $56,x
        .byte $5a                                   // nop // ILLEGAL
        .byte $af,$bf,$ff                           // lax $ffbf // ILLEGAL

dat_0e28:
        .byte $6b,$6f                               // ko

// --- Region $0f06-$0f0b ---
.pc = $0f06 "sub_0f06"
// Referenced by: jsr from $1409

sub_0f06:
        .byte $5a                                   // nop // ILLEGAL
        .byte $af,$6f,$6f                           // lax $6f6f // ILLEGAL

dat_0f0a:
        .byte $6f,$6f                               // oo

// --- Region $1203-$1219 ---
.pc = $1203 "Segment $1203"
        cpy #$c0
        cmp ($be,x)
        .byte $bf,$c0,$c0                           // lax $c0c0,y // ILLEGAL
        cmp ($00,x)
        .byte $c2,$c3                               // nop #$c3 // ILLEGAL
        cpy #$c4
        cmp $00
        dec $b7
        txs
        .byte $c7,$c0                               // dcp $c0 // ILLEGAL
        cmp ($00,x)