#552

Genesis Project [G*P] 05

Genesis Project [G*P]

4.334 lines of code

RasterbarsRSTRMusicSIDScrollerSCRLSpritesSPRT

History

Code
Mermaid (Vanja Utne)
Graphics
Mermaid (Vanja Utne)
Music
Mermaid (Vanja Utne)
Released
11 November 2016
Group
Genesis Project [G*P] -- Germany, founded 1986

Genesis Project Crack Intro #05 -- titled "Future 1982" on CSDb -- is a C64 crack intro released on 11 November 2016 by the German cracking group Genesis Project. The intro was coded, illustrated, and musically composed entirely by Mermaid (Vanja Utne), using an original SID composition also titled "Future 1982." The release earned a remarkable 9.45 rating on CSDb, making it one of the highest-rated crack intros in the database. Mermaid's triple-role contribution -- code, graphics, and music -- demonstrates the modern scene's tendency toward solo multi-disciplinary productions. Genesis Project was founded in 1986 and has maintained an extraordinary presence across four decades of the C64 scene. Doc Snyder's page documents over twenty numbered G*P crack intros, with Mermaid appearing as a recurring contributor in later productions. The release is preserved on CSDb as release #151563, verified through the Doc Snyder link.

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

gp-05.asm 4.334 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:44
// 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:  $2000 (8192)
// IRQ handler:  $2030 (irq_2030)
// IRQ handler:  $ea31 (irq_ea31)
//
// Code: 4059 bytes, Data: 59429 bytes
// Labels: 457, Subroutines: 12
//
// Cross-references: all OK
// ============================================


// --- Region $0a07-$0a0d ---
.pc = $0a07 "Program $0a07"
        .byte $44,$86                               // nop $86 // ILLEGAL
        stx $46
        lsr $85
        rti

// --- Region $1000-$1003 ---
.pc = $1000 "loc_1000"

loc_1000:
        jmp loc_106b

dat_1003:
        .byte $4c                                   // L

// --- Region $106b-$13a8 ---
.pc = $106b "loc_106b"

loc_106b:
        ldx #$00
        txa

loc_106e:
        lda #$00
        sta $1023,x
        sta $1059,x
        lda #$01
        sta $1020,x
        lda #$06
        sta $1026,x
        lda #$10
        sta $1029,x
        inx
        cpx #$03
        bcc loc_106e
        lda $100c
        sta $100d
        lda #$0f
        sta $d418
        rts

dat_1096:
        .byte $ee,$07,$10,$a2,$02                   // .....

loc_109b:
        lda $1009,x
        sta $fb
        tay
        lda $1020,x
        beq loc_10c1
        lda #$01
        sta $1014,x
        dec $1053,x
        bpl loc_10be
        inc $1053,x
        lda #$00
        sta $1014,x
        lda $1062,x
        sta $d404,y

loc_10be:
        jmp loc_1178

loc_10c1:
        txa
        tay
        lda $1026,y
        sta $fc
        lda $1029,y
        sta $fd
        lda #$00
        sta $1008
        ldy $1023,x
        lda #$00
        sta $101a,x
        lda ($fc),y
        cmp #$ff
        bne loc_10e3
        jmp loc_1368

loc_10e3:
        cmp #$80
        bcc loc_10ea
        jmp loc_12ef

loc_10ea:
        clc
        adc #$01
        sta $1020,x

loc_10f0:
        iny
        lda ($fc),y
        pha
        iny
        tya
        sta $1023,x
        pla
        bne loc_1107
        lda $1047,x
        and #$fe
        sta $1062,x
        jmp loc_1175

loc_1107:
        clc
        adc $1056,x
        sta $1017,x
        asl
        tay
        lda dat_13a8,y
        sta $102c,x
        lda $13a9,y
        sta tbl_lo_102f,x
        lda $1008
        cmp #$01
        beq loc_1175
        lda $104a,x
        sta $1053,x
        lda $1047,x
        sta $1062,x
        lda $1044,x
        ldy $fb
        pha
        and #$fe
        sta $d404,y
        pla
        sta $d404,y