History
- Released
- 21 October 1989
- Code
- Olle
- Music
- JO (Jesper Olsen) and Johannes Bjerregaard — "Batfunk"
- Graphics
- Hires
- Group
- Genesis Project — Germany, founded 1986
CSDb catalogues this as the "Olle Intro 2" — named after its coder Olle. The music credit is shared between JO (Jesper Olsen) and Johannes Bjerregaard for "Batfunk," a collaborative SID preserved in the HVSC. Hires contributed the graphics. Released on 21 October 1989, during Genesis Project's peak years of cracking activity. The group was founded in Germany in 1986 and styled themselves "Europe's No. 1." This is the thirty-fifth numbered G*P intro, joining a large cluster in the rankings including #106 GP-01. Johannes Bjerregaard was one of the most celebrated Danish SID composers, and his collaboration with JO on "Batfunk" represents a pairing of two significant musicians. Doc Snyder's page documents Genesis Project's extensive catalogue spanning coders from the 1980s through modern-era contributors like Zyron and Mermaid. The group has maintained continuous activity for nearly four decades.
Sources: CSDb · docsnyderspage
// ============================================ // 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: $45d7 (15832 bytes) // Crunched with Cruncher AB — depacked by emulation // Packer entry: $080d (via BASIC SYS 2061) // Entry point: $3500 (13568) // IRQ handler: $2d69 (irq_2d69) // IRQ handler: $2e4e (irq_2e4e) // IRQ handler: $2eaf (irq_2eaf) // IRQ handler: $2eed (irq_2eed) // // Code: 3581 bytes, Data: 12251 bytes // Labels: 307, Subroutines: 17 // // Cross-references: all OK // ============================================ // --- Region $12cd-$12cd --- .pc = $12cd "Segment $12cd" brk // --- Region $12f0-$12f0 --- .pc = $12f0 "Segment $12f0" brk // --- Region $2d00-$2dc9 --- .pc = $2d00 "loc_2d00" loc_2d00: sei jsr sub_39aa jsr sub_31fe lda #$1b sta $d011 lda #$69 sta $0314 lda #$2d sta $0315 lda #$08 sta $0286 jsr $e544 ldy #$01 sty $d01a sty $dc0d dey sty $12 sty $2f loc_2d2b: lda dat_1800,y sta $040e,y lda $18e0,y sta $04ee,y lda #$ff sta $05ee,y sta $06ee,y lda #$08 sta $da00,y sta $db00,y sty $d012 iny bne loc_2d2b lda #$0f sta $d021 lda #$0e sta $d022 lda #$06 sta $d023 jsr sub_32f9 lda $dc0d cli loc_2d63: jsr sub_3033 jmp loc_2d63 irq_2d69: jsr sub_2da8 inc $d019 lda #$4e sta $0314 lda #$2e sta $0315 lda #$99 sta $d012 ldx #$15 lda #$3f loc_2d82: cmp $d012 bne loc_2d82 stx $d011 lda #$1a sec sbc $03f0 sta $03f0 lda $d021 sta bmp_32df lda $d022 sta $32e0 lda $d023 sta $32e1 jmp $ea7e // Referenced by: jsr from $2d69 sub_2da8: lda $03 sta $d016 ldx #$ff ldy #$00 sty $dc01 stx $dc03 sty $dc03 lda $d013 lsr lsr lsr sta smc_2dc7 // SMC: modifies $2dc7 bcc loc_2dc5 loc_2dc5: clc .label smc_2dc7 = * + 1 bcc loc_2de1 // !SMC: modified by $2dc0 bmp_2dc8: // === Bitmap data (2 bytes, $2dc8-$2dc9) === .byte $ea,$ea // .. // --- Region $2de1-$2e16 --- .pc = $2de1 "loc_2de1" loc_2de1: nop nop nop nop nop nop nop nop nop nop nop