#828

Axicon 01

Axicon

2.653 lines of code

RasterbarsRSTRMusicSID

History

Code
Firefox
Music
Brizz (Stefan Sebastian) — "Braintoolz #2"
Graphics
Brainsmasher
Group
Axicon — Germany, founded 1998

A crack intro from Axicon, a German group founded in 1998 — well into the C64's second life as a hobbyist platform. Firefox coded the intro, Brainsmasher provided the graphics, and Brizz (Stefan Sebastian) contributed the music with "Braintoolz #2," preserved in the HVSC. The release date is unrecorded on CSDb, though the group's 1998 founding suggests a late-era production. Axicon used the short tag "AXC" and appears to have been a relatively small group with limited documentation across scene archives. No scrolltext or additional historical context has been recovered from Demozoo, Doc Snyder's page, or Freeze64. The intro represents the continued vitality of the German C64 scene even as the platform entered its nostalgic revival phase in the late 1990s.

Sources: CSDb

axicon-01.asm 2.653 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:09
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0700  End: $3fff  (14592 bytes)
// Crunched with Exomizer v2/v3 — depacked by emulation
// Packer entry: $080b (via BASIC SYS 2059)
// Entry point:  $0b80 (2944)
// IRQ handler:  $282b (irq_282b)
//
// Code: 2171 bytes, Data: 12421 bytes
// Labels: 304, Subroutines: 16
//
// Cross-references: all OK
// ============================================


// --- Region $0b00-$0b4e ---
.pc = $0b00 "sub_0b00"

// Referenced by: jsr from $0b8d
sub_0b00: {
        lda #$00
        sta $d020
        sta $d021
        jsr $e544
        ldx #$00
loop1:
        lda #$0d
        sta $d800,x
        sta $d840,x
        inx
        cpx #$ff
        bne loop1
        jsr sub_1000
        jsr sub_2800
        ldx #$00
loop2:
        lda txt_0a00,x
        sta $0540,x
        inx
        cpx #$ff
        bne loop2
        rts
}
// Referenced by: jsr from $28cc

sub_0b2e:
        ldx #$00
        lda chr_0b4f

loc_0b33:
        sta $d990,x
        inx
        cpx #$28
        bne loc_0b33
        ldx #$00
        ldy chr_0b4f

loc_0b40:
        lda $0b50,x
        sta chr_0b4f,x
        inx
        cpx #$1f
        bne loc_0b40
        sty $0b6e
        rts

// --- Region $0b80-$0bab ---
.pc = $0b80 "main_0b80"

main_0b80:
        lda #$0f
        sta $d021
        sta $d020
        lda #$ea
        sta $0328
        jsr sub_0b00

loc_0b90:
        jsr $ffe4
        cmp #$20
        beq loc_0b9a
        jmp loc_0b90

loc_0b9a:
        sei
        jsr $fd15
        jsr $fda3
        jsr $ff5b
        lda #$08
        sta $de00
        jmp $fce2

// --- Region $0d00-$0d4e ---
.pc = $0d00 "sub_0d00"
// Referenced by: jsr from $28cf, $28d2

sub_0d00:
        inc $58
        lda $58
        and #$03
        beq loc_0d09
        rts

loc_0d09:
        inc $59
        lda $59
        and #$3f
        tax
        lda $0c60,x
        ldx #$4f

loc_0d15:
        sta $d9e0,x
        dex
        bpl loc_0d15
        lda $59
        and #$3f
        beq loc_0d22
        rts

loc_0d22:
        ldx #$28

loc_0d24:
.label smc_0d25 = * + 1
.label smc_0d26 = * + 2
        lda txt_3000,x                              // !SMC: modified by $0d33, $0d45, $0d4a
        sta $05e0,x
        dex
        bpl loc_0d24
        lda smc_0d25
        clc
        adc #$28
        sta smc_0d25                                // SMC: modifies $0d25
        bcc loc_0d3b
        inc smc_0d26

loc_0d3b:
        lda smc_0d26
        cmp #$32
        beq loc_0d43
        rts

loc_0d43:
        lda #$30