#949

Burp 01

Burp

2.383 lines of code

MusicSIDScrollerSCRLBitmapBMAP

History

Group
Burp -- Canada

The sole catalogued intro from Burp, a Canadian cracking group abbreviated BRP according to CSDb. The CSDb entry identifies this as the "Raster intro" -- a name referencing raster effects, a common visual technique in C64 intros where the VIC-II chip's scanline timing is exploited to produce color bars and split-screen effects. No individual credits for code, music, or graphics are listed in the CSDb release data. The CSDb group profile confirms Burp was based in Canada, placing them outside the dominant European scene geography. CSDb also catalogues several other Burp productions including "Double Scrollers Intro," "Burping Alf," and "BEEP'n'BURP," as well as a 2019 release -- suggesting either long-term activity or a later revival. Comments on intros.c64.org from Rough (2010) and StainlessSteel of Paramount (2007) confirm scene awareness of the group. The deliberately crude and humorous name stands in contrast to the more grandiose titles favored by many cracking crews.

Sources: CSDb · intros.c64.org

burp-01.asm 2.383 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:11
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $cbff  (50176 bytes)
// Crunched with Exomizer v2/v3 — depacked by emulation
// Packer entry: $080b (via BASIC SYS 2059)
// Entry point:  $179f (6047)
// IRQ handler:  $17ec (irq_17ec)
//
// Code: 1279 bytes, Data: 48897 bytes
// Labels: 216, Subroutines: 26
//
// Cross-references: all OK
// ============================================


// --- Region $0ec0-$0ef3 ---
.pc = $0ec0 "sub_0ec0"
// Referenced by: jsr from $182c

sub_0ec0:
.label smc_0ec1 = * + 1
        lda $0fa2                                   // !SMC: modified by $0ee9
        sta $d022
.label smc_0ec7 = * + 1
        lda $0fc2                                   // !SMC: modified by $0eec
        sta $d023
.label smc_0ecd = * + 1
        lda $0fe2                                   // !SMC: modified by $0eef
        sta $d024
        inc smc_0ec1
        inc smc_0ec7
        inc smc_0ecd
        lda smc_0ec1
        cmp #$b0
        beq loc_0ee3
        rts

loc_0ee3:
        ldx #$90
        ldy #$b0
        lda #$d0
        stx smc_0ec1                                // SMC: modifies $0ec1
        sty smc_0ec7                                // SMC: modifies $0ec7
        sta smc_0ecd                                // SMC: modifies $0ecd
        rts

chr_0ef3:
        // === Charset data (1 bytes, $0ef3-$0ef3) ===
        .byte $00                                   // char 0 (partial)

// --- Region $0f00-$0f04 ---
.pc = $0f00 "sub_0f00"
// Referenced by: jsr from $1862

sub_0f00:
.label smc_0f01 = * + 1
        jmp loc_0f1b                                // !SMC: modified by $0f4d

chr_0f03:
        // === Charset data (2 bytes, $0f03-$0f04) ===
        .byte $a9,$00                               // char 0 (partial)

// --- Region $0f1b-$0f8c ---
.pc = $0f1b "loc_0f1b"

loc_0f1b:
        lda #$00
        beq loc_0f20

loc_0f1f:
        rts

loc_0f20:
        jsr sub_0f81
        bcs loc_0f1f
        lda #$c7
        sta $30
        ldx #$00

loc_0f2b:
        lda $05e1,x
        sta $05e0,x
        inx
        cpx #$27
        bne loc_0f2b
        ldy #$00

loc_0f38:
        lda ($31),y
        cmp #$00
        bne loc_0f47
        sty $31
        lda #$1a
        sta $32
        jmp loc_0f38

loc_0f47:
        cmp #$f0
        bne loc_0f53
        lda #$03
        sta smc_0f01                                // SMC: modifies $0f01
        jmp loc_0f7a

loc_0f53:
        cmp #$f1
        bne loc_0f5f
        lda #$ff
        sta smc_0f85                                // SMC: modifies $0f85
        jmp loc_0f7a

loc_0f5f:
        cmp #$f2
        bne loc_0f6b
        lda #$fe
        sta smc_0f85                                // SMC: modifies $0f85
        jmp loc_0f7a

loc_0f6b:
        cmp #$f3
        bne loc_0f77
        lda #$fc
        sta smc_0f85                                // SMC: modifies $0f85
        jmp loc_0f7a

loc_0f77:
        sta $0607

loc_0f7a:
        inc $31
        bne loc_0f80
        inc $32

loc_0f80:
        rts
// Referenced by: jsr from $0f20

sub_0f81:
        lda $30
        clc
.label smc_0f85 = * + 1
        adc #$fc                                    // !SMC: modified by $0f59, $0f65, $0f71
        cmp #$c0
        bcc loc_0f8c
        sta $30