Sphinx 05

Sphinx

745 lines of code

History

Released
27 June 1989
Code
Unknown
Music
None
Graphics
Unknown
Group
Sphinx — Netherlands, founded 8 May 1988

One of the most cleanly executed silent intros in the Top 250 — no SID, just a green-on-black Sphinx logotype animated via rapid $D018 charset switching and color RAM cycling. The group's motto A Reflection of Perfection appears below the logo: a deliberate statement of identity from a crew that spent just under two years establishing itself as the Netherlands' premier cracking outfit before dissolving in March 1990. Sphinx had formed in May 1988 when the bulk of Science 451's membership walked out together. The same intro shell was reused across multiple cracks with cracker-specific text baked directly into each binary — a common Sphinx practice. Chrizz of Sphinx also coded the #33 NEC intro.

Sources: CSDb · CSDb group · Demozoo

sphinx-05.asm 745 lines
// ============================================
// sphinx-05 - Part 1 of 3
// ============================================
// KickAssembler syntax
// Generated by Restore 64 vdisasm-one 1.0 build 1, 2026-03-29 17:54:24
// 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:  $0840 (2112)
//
// Code: 548 bytes, Data: 62940 bytes
// Labels: 84, Subroutines: 1
//
// Cross-references: all OK
// ============================================


// --- Region $0840-$0847 ---
.pc = $0840 "main_0840"

main_0840:
        lda #$12
        sta $d018                                   // screen=$0400, charset=$0800
        jmp loc_0858

// --- Region $0858-$08fe ---
.pc = $0858 "loc_0858"

loc_0858:
        ldx #$00

loc_085a:
        lda $0820,x
        sta dat_0800,x
        inx
        cpx #$0f
        bne loc_085a
        lda #$00
        sta $d020
        sta $d021
        ldx #$00

loc_086f:
        lda #$03
        sta $0400,x
        sta $0500,x
        sta $0600,x
        sta $06e8,x
        inx
        bne loc_086f
        ldx #$00

loc_0882:
        lda $0f00,x
        sta $04fc,x
        lda txt_0f20,x
        sta $0524,x
        lda txt_0f40,x
        sta $054c,x
        lda $0f60,x
        sta $0574,x
        lda $0f80,x
        sta $059c,x
        lda $0fa0,x
        sta $05c4,x
        lda $0fc0,x
        sta $05ec,x
        inx
        cpx #$20
        bne loc_0882
        ldx #$00
        txa

loc_08b4:
        sta $d8e0,x
        sta $d9e0,x
        inx
        bne loc_08b4
        sei
        nop
        lda #$00
        sta smc_08e4                                // SMC: modifies $08e4

loc_08c4:
        ldx #$00

loc_08c6:
        lda $d9ca,x
        sta $d9c9,x
        lda $d9f2,x
        sta $d9f1,x
        inx
        cpx #$0f
        bne loc_08c6
        ldx #$00
        txa
        tay

loc_08db:
        inx
        bne loc_08db
        iny
        cpy #$30
        bne loc_08db
.label smc_08e4 = * + 1
        ldx #$14                                    // !SMC: modified by $08c1
        inc smc_08e4
        lda smc_08e4
        cmp #$14
        beq loc_08fb
        lda $0990,x
        sta $d9d6
        sta $d9fe
        jmp loc_08c4

loc_08fb:
        jmp loc_09a8

dat_08fe:
        .byte $60                                   // `

// --- Region $09a8-$09ff ---
.pc = $09a8 "loc_09a8"

loc_09a8:
        ldx #$26

loc_09aa:
        lda $d8f0,x
        sta $d8f1,x
        lda $d918,x
        sta $d919,x
        lda $d940,x
        sta $d941,x
        lda $d968,x
        sta $d969,x
        lda $d990,x
        sta $d991,x
        dex
        bne loc_09aa
        ldx #$0f

loc_09cd:
        lda $d9b8,x
        sta $d9b9,x
        lda $d9e0,x
        sta $d9e1,x
        dex