#934

Halley Soft Cracking Group [HSCG] 01

Halley Soft Cracking Group [HSCG]

1.909 lines of code

RasterbarsRSTRMusicSIDScrollerSCRL

History

Released
1989
Code
ADF
Music
Markus Schneider — "The Magic Events"
Group
Halley Soft Cracking Group — Italy, founded 1987

CSDb catalogues this as the "HSCG 2002 Intro," a 1989 production from the Italian cracking group Halley Soft Cracking Group. ADF coded the intro while Markus Schneider contributed "The Magic Events" as the soundtrack — a collaborative composition co-credited to Johann H. Stoeten and preserved in the HVSC. Halley Soft Cracking Group was founded in Italy in 1987, taking their name from Halley's Comet, which had made its celebrated perihelion passage in 1986. The group represented the Italian wing of the C64 cracking scene, which — while less dominant than the German, Scandinavian, or British scenes — produced a steady stream of groups throughout the late 1980s. No Doc Snyder's page or Demozoo entry has been located for this group, and the CSDb listing provides the primary documentation. The "2002" in the CSDb title likely refers to an internal numbering system rather than a release year, given the 1989 date.

Sources: CSDb

hscg-01.asm 1.909 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:47
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $32a6  (10919 bytes)
// Crunched with Cruncher AB — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $0820 (2080)
// IRQ handler:  $1b23 (irq_1b23)
// IRQ handler:  $1c10 (irq_1c10)
// IRQ handler:  $ea31 (irq_ea31)
//
// Code: 2156 bytes, Data: 8763 bytes
// Labels: 202, Subroutines: 9
//
// Cross-references: all OK
// ============================================


// --- Region $0820-$0837 ---
.pc = $0820 "main_0820"

main_0820:
        lda #$93
        jsr $ffd2
        lda #$31
        sta $0318
        sta $0316
        lda #$ea
        sta $0317
        sta $0319
        jmp loc_1a00

// --- Region $1000-$1003 ---
.pc = $1000 "sub_1000"
// Referenced by: jsr from $1aa5

sub_1000:
        jmp loc_10c6

dat_1003:
        .byte $00                                   // .

// --- Region $10ab-$1505 ---
.pc = $10ab "loc_10ab"

loc_10ab:
        lda #$00
        sta $d404
        sta $d40b
        sta $d412
        lda #$00
        sta $1040
        jmp loc_14ec
// Referenced by: jsr from $1c47

sub_10be:
        lda $1040
        cmp #$01
        beq loc_1106
        rts

loc_10c6:
        ldx #$00
        sta $1076
        asl
        clc
        adc $1076
        tay

loc_10d1:
        lda $1614,y
        sta txt_1611,x
        lda $1620,y
        sta $161d,x
        iny
        inx
        cpx #$03
        bne loc_10d1
        ldx #$02
        lda #$00

loc_10e7:
        sta $1026,x
        sta $1020,x
        sta $1014,x
        sta $1017,x
        sta $101a,x
        dex
        bpl loc_10e7
        lda #$01
        sta $1040
        rts

dat_10ff:
        .byte $a2,$18,$9d,$00,$d4,$ca,$60           // ......`

loc_1106:
        lda #$1f
        sta $d418
        ldx #$02
        dec $1038
        bpl loc_1118
        lda $103c
        sta $1038

loc_1118:
        lda $1010,x
        sta $1013
        lda $1038
        cmp $103c
        bne loc_1138
        lda txt_1611,x
        sta $14
        lda $161d,x
        sta $15
        dec $101a,x
        bmi loc_113b
        jmp loc_128c

loc_1138:
        jmp loc_1299

loc_113b:
        ldy $1014,x
        lda ($14),y
        cmp #$ff
        beq loc_114b
        cmp #$fe
        bne loc_1159
        jmp loc_10ab

loc_114b:
        lda #$00
        sta $101a,x
        sta $1017,x
        sta $1014,x
        jmp loc_113b

loc_1159:
        sta $10a7
        and #$80
        cmp #$80
        bne loc_1175
        lda $10a7
        and #$7f
        sta $10a8,x