#733

Array 02

Array

3.123 lines of code

RasterbarsRSTRMusicSIDScrollerSCRLSpritesSPRT

History

Released
1989
Code
Rygar
Music
Markus Schneider (Diflex) and Jens Blidon -- "Game On (intro)"
Group
Array -- Germany, founded 1989

CSDb confirms this as "Array Intro 02" (release #80698), released in 1989 and coded by Rygar with music jointly credited to Markus Schneider and Jens Blidon. The SID tune -- "Game On (intro)" -- is preserved in the HVSC under the Schneider directory. Doc Snyder's page credits the music to Diflex, Schneider's scene handle, and lists VIP as the graphic artist. Array was a German cracking group founded in 1989, as confirmed by CSDb group data (group ID 723). The scrolltext references a crack of "Terrafighter" and sends greetings to FRL, 2000 AD, Sphinx, Dominators, F4CG, Cosmos, Genesis Project, Tristar, and others -- placing Array within the German cracking network of the late 1980s. CSDb catalogues multiple Array releases including five numbered intros, logo shows, and the demo "Starray," suggesting a group with modest but genuine scene participation. The group's output tapered off relatively quickly, with "How Array Died" appearing as a later release title.

Sources: CSDb · intros.c64.org · Doc Snyder's Page

array-02.asm 3.123 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:08
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $3bff  (13312 bytes)
// Crunched with Exomizer v2/v3 — depacked by emulation
// Packer entry: $080b (via BASIC SYS 2059)
// Entry point:  $1000 (4096)
// IRQ handler:  $111e (irq_111e)
// IRQ handler:  $11bd (irq_11bd)
// IRQ handler:  $ea31 (irq_ea31)
// IRQ handler:  $0fa0 (irq_0fa0)
// IRQ handler:  $0803 (irq_0803)
//
// Code: 3084 bytes, Data: 10228 bytes
// Labels: 386, Subroutines: 21
//
// Cross-references: all OK
// ============================================


// --- Region $0803-$082d ---
.pc = $0803 "irq_0803"

irq_0803:
        inc $d019
        ldx #$00

loc_0808:
.label smc_0809 = * + 1
        lda $0898,x                                 // !SMC: modified by $13c3
        ldy $0838,x

loc_080e:
        dey
        bne loc_080e
        sta $d021
        sta $d021
        inx
        cpx #$20
        bne loc_0808
        lda #$69
        sta $d012
        lda #$1e
        sta $0314
        lda #$11
        sta $0315
        jmp $ea81

// --- Region $0ab0-$0abb ---
.pc = $0ab0 "Program $0ab0"
        .byte $67,$68                               // rra $68 // ILLEGAL
        adc #$6a
        .byte $6b,$6c                               // arr #$6c // ILLEGAL
        adc $6f6e
        bvs loc_0b2c
        .byte $72                                   // jam // ILLEGAL

// --- Region $0b2c-$0b2e ---
.pc = $0b2c "loc_0b2c"

loc_0b2c:
        .byte $80,$81                               // nop #$81 // ILLEGAL

dat_0b2e:
        .byte $82                                   // .

// --- Region $0c80-$0cf9 ---
.pc = $0c80 "sub_0c80"
// Referenced by: jsr from $105a, $1255

sub_0c80:
        dec $0d7f
        ldx $0d7f
        lda $0d80,x
        sta $70
        lda $0e80,x
        sta $71
        lda $70
        and #$07
        eor #$17
        sta $72
        nop
        lsr $71
        ror $70
        lsr $71
        ror $70
        lsr $71
        ror $70
        lda $70
        tax
        ldy #$00

loc_0caa:
        lda dat_0900,x
        sta $0608,y
        lda dat_0980,x
        sta $0630,y
        lda dat_0a00,x
        sta $0658,y
        lda dat_0a80,x
        sta $0680,y
        lda dat_0b00,x
        sta $06a8,y
        lda dat_0b80,x
        sta $06d0,y
        lda txt_0c00,x
        sta $06f8,y
        lda dat_0d00,x
        sta $0720,y
        inx
        iny
        cpy #$27
        bne loc_0caa
        rts

loc_0ce1:
        lda ($04),y
        bne loc_0ce8
        jmp loc_1ff7

loc_0ce8:
        cmp #$09
        bne loc_0cf0
        ldx #$02
        bne loc_0cf2

loc_0cf0:
        ldx #$04

loc_0cf2:
        stx smc_1fbb                                // SMC: modifies $1fbb
        jmp loc_1fc4

dat_0cf8:
        .byte $00,$00                               // ..

// --- Region $0f80-$0fd1 ---
.pc = $0f80 "loc_0f80"

loc_0f80:
        lda #$ec
        sta $d012
        lda #$bd
        sta $0314
        lda #$11
        sta $0315