#585

Empire 05

Empire

4.287 lines of code

MusicSIDScrollerSCRLSpritesSPRTBitmapBMAP

History

Code
The Last Dragon, Booze
Graphics
Necromancer
Charset
Gotcha
Music
Thomas Detert, Martin Wheeler
Released
22 May 1991
Group
Empire -- CSDb group ID #275, Canada, founded February 1989

Empire Crack Intro #05 is a May 1991 release from the Canadian cracking group Empire, preserved on CSDb as entry #53571. The intro was coded by The Last Dragon and Booze, with graphics by Necromancer and charset by Gotcha. Music is credited to Thomas Detert and Martin Wheeler, whose SID tracks "Clystron" and "Rebel" respectively are both preserved in the High Voltage SID Collection. Doc Snyder catalogues this as Empire's entry linked to intro #05, with the Doc Snyder page showing Martin Wheeler's music credit. The scrolltext for Empire's related intros references cracks imported from European groups -- a hallmark of the transatlantic trading pipeline that characterized North American crews. Empire was one of the few prominent Canadian groups on the C64, maintaining strong overseas contacts throughout their active years. The release is one of six Empire entries in the intros.c64.org rankings.

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

empire-05.asm 4.287 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:19
// 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:  $2800 (10240)
// IRQ handler:  $372f (irq_372f)
// IRQ handler:  $3811 (irq_3811)
// IRQ handler:  $384e (irq_384e)
//
// Code: 3120 bytes, Data: 60368 bytes
// Labels: 445, Subroutines: 21
//
// Cross-references: all OK
// ============================================


// --- Region $0916-$0916 ---
.pc = $0916 "sub_0916"
// Referenced by: jsr from $ff5b

sub_0916:
        brk

// --- Region $0e5b-$0e61 ---
.pc = $0e5b "loc_0e5b"

loc_0e5b:
        sbc $d9

loc_0e5d:
        sbc $d5

loc_0e5f:
        sta $00,x

loc_0e61:
        brk

// --- Region $0eb9-$0ed1 ---
.pc = $0eb9 "loc_0eb9"

loc_0eb9:
        lda $99
        lda $99
        adc $15
        ora $94
        lda $d9
        sbc $d9
        sbc $d5
        sta $94,x
        bcc loc_0e5b
        bcc loc_0e5d
        bvc loc_0e5f
        bvc loc_0e61
        rti

// --- Region $0f0a-$0f10 ---
.pc = $0f0a "loc_0f0a"

loc_0f0a:
        bcc loc_0f5c
        cpx #$50
        bcc loc_0f60
        brk

// --- Region $0f5c-$0f60 ---
.pc = $0f5c "loc_0f5c"

loc_0f5c:
        bcc loc_0fae
        brk

dat_0f5f:
        .byte $00                                   // .

loc_0f60:
        brk

// --- Region $0f72-$0f7e ---
.pc = $0f72 "loc_0f72"

loc_0f72:
        cpx #$90
        bcc loc_0fc6
        bcc loc_0fc8
        bcc loc_0f0a
        sty $a4,x
        sty $50,x
        rti

// --- Region $0fae-$0fd5 ---
.pc = $0fae "loc_0fae"

loc_0fae:
        sta $54,x
        sta $99a5,y
        sbc $d9
        adc $95
        .byte $54,$d9                               // nop $d9,x // ILLEGAL
        sbc $d9
        sbc $d9
        sbc $d5
        sta $94,x
        lda $99
        sbc $d9
.label loc_0fc6 = * + 1
        adc $95
.label loc_0fc8 = * + 1
        .byte $54,$99                               // nop $99,x // ILLEGAL
        sbc $d9
        sbc $d9
        adc $95
        .byte $54,$00                               // nop $00,x // ILLEGAL
        cpx #$90
        bcc loc_1025
        brk

// --- Region $1000-$1013 ---
.pc = $1000 "sub_1000"
// Referenced by: jsr from $36cf, $f93a

sub_1000:
        jmp loc_1006
// Referenced by: jsr from $38ca, $fb16

sub_1003:
        jmp loc_1021

loc_1006:
        lda $02a6
        beq loc_1010
        lda #$03
        sta smc_1035                                // SMC: modifies $1035

loc_1010:
        jmp loc_1048

dat_1013:
        .byte $00                                   // .

// --- Region $1021-$1080 ---
.pc = $1021 "loc_1021"

loc_1021: