#524

Sphinx 02

Sphinx

4.512 lines of code

RasterbarsRSTRMusicSIDScrollerSCRL

History

Released
March 1989
Group
Sphinx [SPX] — Netherlands, CSDb group ID #315
Music
Chris (Chris Ammermuller) — "Intro Designer 3 (tune 7)"
Music
Rock (Sami Seppa) — "The Deadline"

This crack intro from Sphinx — a Dutch group founded on 8 May 1988 under the tagline "Reflection of Perfection" — dates to March 1989 and is catalogued on CSDb as release #103895 under the title "Sphinx Intro 4." The music credits go to Rock (Sami Seppa) and Chris (Chris Ammermuller), with multiple SID tunes including "Intro Designer 3" tunes 7 and 8, "711 Intro," and "The Deadline" — indicating the intro offers selectable music. Doc Snyder's page confirms the music by Chris for Crack Intro #02 and maps it to CSDb release #103895. The scrolltext describes a crack of "Winter Holidays" from Systems and sends greetings to Elite, Ikari, DCS, Beasties, X-Ray, Cosmos, Hotline, Dominators, Phoenix, 711, Paramount, Zenobits, Fire Eagle, 2000 A.D., Horizon, Z-Circle, and Light. An interview with Sphinx is documented in the Atlantis/Recollection archive, providing historical context for the group's place in the Dutch scene.

Sources: CSDb Release · Doc Snyder · intros.c64.org · Atlantis Interview

sphinx-02.asm 4.512 lines
// ============================================
// output - Part 1 of 2
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:36:46
// 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:  $0a86 (2694)
// IRQ handler:  $0bf0 (irq_0bf0)
// IRQ handler:  $ea31 (loc_ea31)
//
// Code: 3776 bytes, Data: 59712 bytes
// Labels: 509, Subroutines: 19
//
// Cross-references: all OK
// ============================================


// --- Region $089d-$08a1 ---
.pc = $089d "Program $089d"
        sbc $ff03,y
        brk

dat_08a1:
        .byte $e7                                   // .

// --- Region $0a00-$0af0 ---
.pc = $0a00 "loc_0a00"

loc_0a00:
        jsr sub_0a07
        sei
        jmp loc_2c00
// Referenced by: jsr from $0a00

sub_0a07:
        ldx #$00
        stx $d020
        stx $d021
        inx
        nop
        nop
        nop
        dex

loc_0a14:
        lda $2800,x
        sta $0428,x
        lda $28c8,x
        sta $04f0,x
        lda #$0e
        sta $d800,x
        sta $d8f0,x
        inx
        cpx #$f0
        bne loc_0a14
        ldx #$00

loc_0a2f:
        lda #$00
        sta $0400,x
        sta $05e0,x
        lda #$08
        sta $d800,x
        sta $d9e0,x
        inx
        cpx #$28
        bne loc_0a2f
        ldx #$00
        txa

loc_0a47:
        sta $da08,x
        sta $daf8,x
        inx
        cpx #$f0
        bne loc_0a47
        ldx #$00
        lda #$20

loc_0a56:
        sta $0608,x
        sta $06f0,x
        inx
        bne loc_0a56
        lda #$10
        sta $07c0
        lda #$01
        sta $07c1
        lda #$0c
        sta $07c2
        lda #$21
        sta $07c3
        lda #$00
        sta smc_2d84                                // SMC: modifies $2d84
        sta smc_2dce                                // SMC: modifies $2dce
        lda #$30
        sta smc_2d85                                // SMC: modifies $2d85
        lda #$32
        sta smc_2dcf                                // SMC: modifies $2dcf
        rts

main_0a86:
        jsr $e544
        ldx #$00
        stx $d020
        stx smc_0abe                                // SMC: modifies $0abe
        lda #$12
        sta $d018

loc_0a96:
        lda txt_0ba0,x
        sta $05b8,x
        inx
        cpx #$28
        bne loc_0a96
        ldx #$00
        txa

loc_0aa4:
        sta $d800,x
        sta dat_d900,x
        sta $da00,x
        sta $db00,x
        inx
        bne loc_0aa4
        lda #$4d
        sta $dc05

loc_0ab8:
.label smc_0ab9 = * + 1
        lda #$60                                    // !SMC: modified by $0acb, $0ad1
        sta $d021
.label smc_0abe = * + 1
        ldx #$38                                    // !SMC: modified by $0a8e
        inc smc_0abe
        lda smc_0abe
        cmp #$38
        beq loc_0ae3
        lda #$00
        sta smc_0ab9                                // SMC: modifies $0ab9
        lda $0b00,x
        sta smc_0ab9                                // SMC: modifies $0ab9
        ldx #$00
        txa
        tay