#56

Action 03

Action

3.519 lines of code

ScrollerSCRLBitmapBMAP

History

Released
January 1991
Group
Action — Germany, founded February 1989
Code
Crisp
Music
EVS (Edwin van Santen) — Dutch Breeze Advertisement; Drax (Thomas Mogensen) — Classic

This crack intro from the German group Action is catalogued on CSDb as release #94907, dated January 1991. Code is credited to Crisp, with two SID tunes — "Dutch Breeze Advertisement" by EVS (Edwin van Santen) and "Classic" by Drax (Thomas Mogensen) — both preserved in the HVSC. CSDb also lists uncredited graphics and charset contributions. Doc Snyder's page confirms Crisp as both coder and artist for this intro, with EVS on music. The scrolltext names Action's roster at this point as Spitfire, Hok, Gadget, Crisp, A-Man, and Xox, while aggressively claiming the title of Germany's fastest crackers. Ranked 56th overall, this is the highest-placed of Action's ranked intros — above #327 Action Intro #5 and #626 Action Intro #1.

Sources: CSDb · intros.c64.org · docsnyderspage

action-03.asm 3.519 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-01 10:59:15
// 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:  $1e80 (7808)
// IRQ handler:  $1700 (irq_1700)
// IRQ handler:  $1801 (nmi_1801)
// IRQ handler:  $1a20 (nmi_1a20)
//
// Code: 2315 bytes, Data: 61173 bytes
// Labels: 415, Subroutines: 11
//
// Cross-references: all OK
// ============================================


// --- Region $0a00-$0a51 ---
.pc = $0a00 "sub_0a00"
// Referenced by: jsr from $170d, $eb40

sub_0a00:
        inc $0a
        inc $0a
        ldx $0a
        lda dat_0d80,x
        pha
        and #$07
        eor #$17
        sta $2ffe
        pla
        lsr
        lsr
        lsr
        nop
        nop
        tay
        ldx #$00
        nop

loc_0a1b:
        lda $0af0,y
        sta $0400,x
        lda $0b40,y
        sta $0428,x
        lda $0b90,y
        sta $0450,x
        lda $0be0,y
        sta $0478,x
        lda $0c30,y
        sta $04a0,x
        lda $0c80,y
        sta $04c8,x
        lda $0cd0,y
        sta $04f0,x
        lda $0d20,y
        sta $0518,x
        iny
        inx
        cpx #$28
        bne loc_0a1b
        rts

// --- Region $0e80-$0ea1 ---
.pc = $0e80 "loc_0e80"

loc_0e80:
        sei
        bit $eaea
        bit $eaea
        bit $ea
        lda #$34
        sta $01
        ldx #$00

loc_0e8f:
        lda $0ec1,x
        sta $0400,x
        lda dat_0ea1,x
        sta $0500,x
        inx
        bne loc_0e8f
        jmp $0500

dat_0ea1:
        .byte $a2                                   // .

// --- Region $0f07-$0f57 ---
.pc = $0f07 "loc_0f07"

loc_0f07:
        sta $0f0c
        rts

loc_0f0b:
        cmp #$7f
        beq loc_0f07
        sta $0f0c
        cmp #$7b
        bne loc_0f33

loc_0f16:
        inc $2c04
        lda $2c04
        cmp #$03
        bne loc_0f25
        lda #$04
        sta $2c04

loc_0f25:
        cmp #$05
        bne loc_0f2e

dat_0f29:
        .byte $a9,$08,$8d,$04,$2c                   // ....,

loc_0f2e:
        cmp #$09
        beq loc_0f37
        rts

loc_0f33:
        cmp #$77
        bne loc_0f53

loc_0f37:
        dec $2c04
        lda $2c04
        cmp #$07
        bne loc_0f46
        lda #$04
        sta $2c04

loc_0f46:
        cmp #$03
        bne loc_0f4f

dat_0f4a:
        .byte $a9,$02,$8d,$04,$2c                   // ....,

loc_0f4f:
        cmp #$ff
        beq loc_0f16

loc_0f53: