#438

Extasy 01

Extasy

4.607 lines of code

RasterbarsRSTRMusicSIDScrollerSCRL

History

Code
Slade
Group
Extasy (XTC) — Finland, founded June 1990

A crack intro from Extasy — a Finnish group founded in June 1990 and known by the abbreviation XTC. CSDb credits Slade for the code on the matched release, with no music or graphics roles documented. The group is catalogued under CSDb group ID 985, with a release history spanning multiple crack intros, logo screens, and a mega demo. Extasy also collaborated with Ikari on a fusion intro featuring Laxity's 118th intro tune, demonstrating connections to the broader Scandinavian scene. The group's Finnish origin places them in a smaller but active corner of the Nordic C64 community, alongside better-known Swedish and Danish groups. CSDb also documents an "Extasy Writer V1.0" utility, suggesting the group developed scene tools alongside their cracking activities. This intro ranks 438th overall, below the higher-ranked #125 Extasy-02. Founded in mid-1990, Extasy arrived during the C64's late period when the platform's commercial relevance was declining but scene activity remained intense.

Sources: CSDb · CSDb group · intros.c64.org

extasy-01.asm 4.607 lines
// ============================================
// output - Part 1 of 2
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:23
// 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:  $2600 (9728)
//
// Code: 4008 bytes, Data: 59480 bytes
// Labels: 457, Subroutines: 17
//
// Cross-references: all OK
// ============================================


// --- Region $2600-$2742 ---
.pc = $2600 "main_2600"

main_2600:
        sei
        ldx #$ff
        txs
        nop
        lda #$00
        sta scr_0800
        jsr sub_3000
        ldy #$00
        jsr sub_2816
        jsr sub_287c
        lda #$00
        sta $d020
        sta $0286
        sta $0342
        sta $0343
        jsr $e544
        jsr sub_27b5
        jsr sub_2798
        ldx #$00
        lda #$08

loc_2630:
        sta $d800,x
        sta $d900,x
        sta $d907,x
        inx
        bne loc_2630
        txa

loc_263d:
        sta $0400,x
        inx
        bne loc_263d

loc_2643:
.label smc_2644 = * + 1
        lda #$17                                    // !SMC: modified by $28bb
        ldx #$3a
        jsr sub_2770
        sta $d016
        lda #$19
        sta $d018
        lda #$09
        sta $d023
        lda #$05
        sta $d022
        lda #$0d
        sta $d021
        ldx #$56
        jsr sub_2770
        lda #$0a
        bit $d022
        lda #$0f
        bit $d021
        ldx #$74
        jsr sub_2770
        lda #$09
        bit $d023
        lda #$0a
        bit $d022
        lda #$0f
        bit $d021
        jsr sub_27e4
        lda #$13
        ldy #$08
        ldx #$a2
        jsr sub_2770
        lda #$13
        sta $d018
        sty $d016
        lda $26ac
        and #$0f
        eor #$07
        tax
        lda scr_294d,x
        sta $d021
        ldx #$b2
        jsr sub_2770
        lda #$c0
        and #$0f
        tax
        lda scr_294d,x
        sta $d021
        jsr sub_284a
.label smc_26ba = * + 1
        lda #$01                                    // !SMC: modified by $27f3, $27fb
        ldy #$00
        ldx #$ca
        jsr sub_2770
        sty $d021
        sta $d016
        lda #$30
        and #$1f
        pha
        tax
        lda $295d,x
        sta $d021
.label smc_26d5 = * + 1
        lda #$07                                    // !SMC: modified by $2859, $2861
        ldx #$e0
        jsr sub_2770
        sty $d021
        sta $d016
        pla
        eor #$0f
        tax
        lda $295d,x
        sta $d021
        ldx #$f3
        jsr sub_2770
        lda #$00
        sta $d021
        jsr sub_2776
        jsr sub_28b0
        jsr sub_2914
        jsr sub_3003
        lda $dc01
        cmp #$ef
        beq loc_270b
        jmp loc_2643

loc_270b:
        jsr $ff5b
        ldx #$1c
        lda #$00

loc_2712: