#414

Genesis Project [G*P] 41

Genesis Project [G*P]

5.182 lines of code

RasterbarsRSTRMusicSIDScrollerSCRL

History

Released
1988
Code
Snacky
Music
Holger Knipping — "Tell It to My Heart"
Group
Genesis Project — founded 1986

CSDb catalogues this as "A New Intro" — Genesis Project's way of announcing a fresh intro design to the scene. Snacky coded the intro, a member who would remain active with the group for decades, still commenting on intros.c64.org as late as 2021. Holger Knipping composed "Tell It to My Heart," a SID cover of the Taylor Dayne pop hit, preserved in the HVSC under the FAME group directory. Genesis Project was founded in 1986 and built one of the C64 scene's most enduring legacies, with members like Mermaid, Zyron, and Scrap carrying the group forward into the 2020s. This 1988 release dates from their active cracking period, well before their later transition into demo and preservation work. Doc Snyder's page documents G*P's extensive catalogue — among the largest of any group. The intro sits alongside #188 GP-15 and other Genesis Project entries in the rankings.

Sources: CSDb · Doc Snyder

gp-41.asm 5.182 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:45
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $408c  (14477 bytes)
// Crunched with Cruncher AB — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $1d00 (7424)
// IRQ handler:  $1d9a (irq_1d9a)
// IRQ handler:  $1dca (irq_1dca)
// IRQ handler:  $221b (irq_221b)
// IRQ handler:  $3cb6 (irq_3cb6)
// IRQ handler:  $3cfc (irq_3cfc)
// IRQ handler:  $1d3d (irq_1d3d)
// IRQ handler:  $3d4d (irq_3d4d)
// IRQ handler:  $3db1 (irq_3db1)
// IRQ handler:  $ea31 (irq_ea31)
// IRQ handler:  $1d4d (irq_1d4d)
//
// Code: 6389 bytes, Data: 8088 bytes
// Labels: 411, Subroutines: 33
//
// Cross-references: all OK
// ============================================


// --- Region $1020-$1579 ---
.pc = $1020 "sub_1020"
// Referenced by: jsr from $1e07, $3cc6, $3d0f, $3d60, $3dbe; jmp from $3ca3

sub_1020:
        jsr sub_2c88
        jmp sub_2de0

dat_1026:
        .byte $00,$00,$00,$00,$00,$00,$00,$13,$1d   // .........
// Referenced by: jsr from $1e31

sub_102f:
        tax
        lda $1773,x
        sta smc_1238                                // SMC: modifies $1238
        txa
        asl
        sta $50
        asl
        clc
        adc $50
        tax
        ldy #$05

loc_1041:
        lda $176d,x
        sta $16cd,x
        inx
        dey
        bpl loc_1041
        ldy #$02
        lda #$ff

loc_104f:
        sta $16ac,y
        sta $16df,y
        dey
        bpl loc_104f
        sta $16e2
        sta $16e3
        rts

loc_105f:
        lda #$fe
        sta $16b5,x

loc_1064:
        jmp loc_12cf

loc_1067:
        ldx #$02
        dec $16e2

loc_106c:
        bit $16e2
        bmi loc_1077
        jmp loc_12cf

loc_1074:
        jmp loc_115c

loc_1077:
        dec $16ac,x
        beq loc_105f
        bpl loc_1064
        bit $16e3
        bmi loc_1074

loc_1083:
        ldy $16af,x
        lda $1646,y
        sta $50
        lda $1664,y
        sta $51
        ldy $16b2,x

loc_1093:
        lda ($50),y
        cmp #$ff
        bne loc_109c
        jmp loc_115c

loc_109c:
        bmi loc_10a1
        jmp loc_11a7

loc_10a1:
        cmp #$a0
        bcs loc_10ae
        and #$1f
        sta $16dc,x
        iny
        jmp loc_1093

loc_10ae:
        cmp #$c0
        bcs loc_10be
        and #$1f
        asl
        asl
        asl
        sta $1688,x
        iny
        jmp loc_1093

loc_10be:
        cmp #$e0
        bcs loc_10cf
        and #$1f
        sta $16ac,x
        lda #$00
        sta $16be,x
        jmp loc_1227

loc_10cf:
        cmp #$fc
        bcs loc_10ee
        and #$1f
        sta $16e4
        iny