#944

Organized Professional Pirating Service, The [TOPPS] 01

Organized Professional Pirating Service, The [TOPPS]

1.450 lines of code

RasterbarsRSTRMusicSIDSpritesSPRT

History

Released
11 October 1985
Group
The Organized Professional Pirating Service — United States

Daddy ZER0 coded this 1985 crack intro for T.O.P.P.S. — The Organized Professional Pirating Service — an American cracking group catalogued on CSDb under group ID 3229. The group's three-person roster consisted of Daddy ZER0 as coder, plus crackers Silicon Pirate and The Dark Knight. Their headquarters was The Datashack I BBS. T.O.P.P.S. produced 32 releases in 1985–1986, primarily game cracks including Karate Champ, World Karate Championship, and Super Cycle. A CSDb comment notes the intro contains sound effects from the "famous Activision Intro" — repurposing commercial branding for the cracking scene. The elaborately tongue-in-cheek name was characteristic of mid-1980s American groups who often adopted grandiose titles. T.O.P.P.S. operated during the brief window when American groups were competitive with the emerging European cracking scene before Scandinavian and German groups achieved dominance.

Sources: CSDb · intros.c64.org

topps-01.asm 1.450 lines
// ============================================
// output - Part 1 of 2
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:36:50
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0400  End: $ffff  (64512 bytes)
// Crunched with Cruncher AB — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $1021 (4129)
// IRQ handler:  $0d40 (irq_0d40)
// IRQ handler:  $ea31 (irq_ea31)
//
// Code: 1486 bytes, Data: 63026 bytes
// Labels: 153, Subroutines: 7
//
// Cross-references: all OK
// ============================================


// --- Region $0d40-$0fba ---
.pc = $0d40 "irq_0d40"
irq_0d40: {
        lda $d019
        ror
        bcc skip
        inc $20
        jsr sub_0d5c
        jsr sub_0fc3
skip:
        lda #$01
        sta $d019
        lda $dc0d
        pla
        tay
        pla
        tax
        pla
        rti
}
// Referenced by: jsr from $0d48, $fce7

sub_0d5c:
        lda $10
        beq loc_0d64
        dec $10
        bne loc_0da1

loc_0d64:
        lda $18
        bne loc_0d6b
        jmp loc_0e0b

loc_0d6b:
        dec $18
        bne loc_0d72
        jmp loc_0e54

loc_0d72:
        cmp #$10
        bcs loc_0dc0
        lda #$ff
        sta $1e
        lda $11
        sec
        sbc #$03
        sta $11
        lda #$1e
        sta $12
        lda #$86
        sta $13
        lda #$fa
        sta $14
        lda #$a8
        sta $15
        lda #$61
        sta $16
        lda #$08
        sta $17
        lda #$ba
        sta $d414
        jmp loc_0dd8

loc_0da1:
        lda $11
        cmp #$ff
        beq loc_0da9
        inc $11

loc_0da9:
        ldx #$04

loc_0dab:
        lda $12,x
        sec
        sbc $0fbd,x
        sta $12,x
        lda $13,x
        sbc $0fbe,x
        sta $13,x
        dex
        dex
        bpl loc_0dab
        bmi loc_0dd8

loc_0dc0:
        lda #$61
        sta $12
        lda #$08
        sta $13
        lda #$8f
        sta $14
        lda #$0a
        sta $15
        lda #$18
        sta $16
        lda #$02
        sta $17

loc_0dd8:
        lda $12
        sta $d400
        lda $13
        sta $d401
        lda $14
        sta $d407
        lda $15
        sta $d408
        lda $16
        sta $d40e
        lda $17
        sta $d40f
        lda #$41
        sta $d404
        sta $d40b
        sta $d412
        lda $11
        lsr
        lsr
        lsr
        and #$0f
        sta $d418

loc_0e0b:
        bit $1b
        bmi loc_0e24
        lda $19
        clc
        adc #$0f