#686

Hysteric 03

Hysteric

5.639 lines of code

RasterbarsRSTRMusicSIDScrollerSCRLSpritesSPRT

History

Linking
Psychobilly
Music
Michael Hendriks
Music
Stefan Hartwig
Released
1990
Group
Hysteric [HYS] -- Germany

Hysteric Crack Intro #03 -- catalogued on CSDb as "X-Out Intro" -- is a 1990 production from the German cracking group Hysteric, based in Hannover under the tagline "Hannover's #01." CSDb classifies it as "C64 Misc." rather than a standard crack intro. Psychobilly of Hysteric handled the linking, while the soundtrack draws from two sources: Michael Hendriks' "X-Out" game music and Stefan Hartwig's "X-Ample Intro Architect (tune 06)," both preserved in the HVSC. Doc Snyder's page confirms Stefan Hartwig's music credit for this intro. The scrolltext, signed by Psychobilly, praises the accompanying game as "the best game i've seen since the turrican preview" and sends greetings to Fear, Cocoon, Radius, Lazer, and others. A comment on intros.c64.org from "Skid Row / ex-Hysteric" confirms that members later moved to other groups. The release is preserved on CSDb as release #215572, verified through the Doc Snyder link.

Sources: CSDb · intros.c64.org · Doc Snyder

hysteric-03.asm 5.639 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:48
// 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:  $3000 (12288)
// IRQ handler:  $30d6 (irq_30d6)
//
// Code: 4767 bytes, Data: 58721 bytes
// Labels: 619, Subroutines: 26
//
// Cross-references: all OK
// ============================================


// --- Region $0e80-$0ee1 ---
.pc = $0e80 "sub_0e80"
// Referenced by: jsr from $3266, $faef

sub_0e80:
.label smc_0e81 = * + 1
        ldx #$1d                                    // !SMC: modified by $0eb6, $0edd
        lda $0e40,x
        sta $07f8
        lda #$07
        sta $d015
        sta $d015
        lda #$06
        sta $d025
        lda #$0e
        sta $d026
        lda #$0f
        sta $d027
        lda #$01
        sta $d01c
        jmp loc_0eae

scr_0ea7:
        // === Screen RAM (7 bytes, $0ea7-$0ead) ===
        .encoding "screencode_mixed"
        .text "@@@@@@@"
        .encoding "petscii_upper"

loc_0eae:
        ldx smc_0e81
        inx
        cpx #$40
        beq loc_0eba
        stx smc_0e81                                // SMC: modifies $0e81
        rts

loc_0eba:
.label smc_0ebb = * + 1
        ldx #$02                                    // !SMC: modified by $0ed8
        lda dat_0f00,x
        sta $d000
        lda txt_0f20,x
        sta $d001
        lda dat_0f40,x
        sta $d010
        ldx smc_0ebb
        inx
        cpx #$08
        bne loc_0ed8
        ldx #$00

loc_0ed8:
        stx smc_0ebb                                // SMC: modifies $0ebb
        ldx #$00
        stx smc_0e81                                // SMC: modifies $0e81
        rts

scr_0ee1:
        // === Screen RAM (1 bytes, $0ee1-$0ee1) ===
        .encoding "screencode_mixed"
        .text "@"
        .encoding "petscii_upper"

// --- Region $1048-$1095 ---
.pc = $1048 "sub_1048"
// Referenced by: jsr from $3053, $f8ed

sub_1048:
        ldx #$00
        lda #$00

loc_104c:
        sta $d400,x
        sta $033c,x
        inx
        cpx #$c4
        bne loc_104c
        lda $10a0,y
        sta $03c1
        lda txt_10a8,y
        sta $03c2
        lda $10b0,y
        sta $03c3
        lda $10b8,y
        sta $03c4
        lda #$fe
        sta $0393
        sta $0394
        sta $0395
        lda #$fe
        sta $037b
        sta $037c
        sta $037d
        lda #$ff
        sta $0399
        lda #$18
        sta $037e
        sta $037f
        sta $0380
        rts

// --- Region $10e0-$1356 ---
.pc = $10e0 "sub_10e0"
// Referenced by: jsr from $3284, $fb0d

sub_10e0:
        lda $039c
        beq loc_10e6
        rts

loc_10e6:
        lda $0345
        sta $d416
        lda $0347
        bne loc_1100
        lda $0346
        eor #$01
        sta $0346
        tax
        lda $0341,x
        sta $0347

loc_1100:
        ldx $0346
        lda $0345
        clc
        adc $0343,x
        jsr sub_15f0
        lda #$00
        sta $033c