#96

Exodus 08

Exodus

2.694 lines of code

RasterbarsRSTRMusicSIDBitmapBMAP

History

Released
23 August 1989
Code
Stormbringer
Group
Exodus — United States, founded June 1988

Stormbringer coded this intro for Exodus — CSDb lists the SID as "Exodus Intro" by an unknown composer (credited as "?"). The lack of clear music attribution is unusual for this era but not unheard of — some tunes circulated through the scene without proper credit. Exodus was an American group founded in June 1988, and Stormbringer served as their primary coder across multiple numbered intros including #40 Exodus 03. Released on 23 August 1989, this came during the American scene's final year of meaningful output. Doc Snyder's page documents the group's catalogue. The mysterious uncredited SID suggests either a composition by a group member who didn't use a formal handle, or a tune acquired through trading that lost its attribution along the way.

Sources: CSDb · docsnyderspage

exodus-08.asm 2.694 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-01 10:59:19
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0700  End: $2d6f  (9840 bytes)
// Crunched with Exomizer v2/v3 — depacked by emulation
// Packer entry: $080b (via BASIC SYS 2059)
// Entry point:  $1000 (4096)
// IRQ handler:  $10c1 (irq_10c1)
// IRQ handler:  $ea86 (nmi_ea86)
//
// Code: 2137 bytes, Data: 7703 bytes
// Labels: 330, Subroutines: 11
//
// Cross-references: all OK
// ============================================


// --- Region $0b5a-$0b7a ---
.pc = $0b5a "loc_0b5a"

loc_0b5a:
        .byte $83,$83                               // sax ($83,x) // ILLEGAL
        .byte $af,$6d,$55                           // lax $556d // ILLEGAL
        eor $ff,x
        lsr $56,x
        lsr $56,x
        .byte $5a                                   // nop // ILLEGAL
        cli
        cli
        .byte $c3,$83                               // dcp ($83,x) // ILLEGAL
        .byte $83,$83                               // sax ($83,x) // ILLEGAL

dat_0b6c:
        .byte $83,$83,$83,$b3,$00,$03,$0f           // .......

loc_0b73:
        and $d5f5,x
        sbc #$0d
        beq loc_0b5a
        rts

// --- Region $1000-$112f ---
.pc = $1000 "main_1000"

main_1000:
        jmp loc_1262

// Referenced by: jsr from $10e7
sub_1003: {
        ldy #$00
        ldx #$01
        bne skip1
loop:
        ldx #$08
skip1:
        lda $0fac,y
        sta $d022
        lda $0f64,y
        sta $d020
        sta $d021
        iny
        dex
        beq loop
        cpy #$48
        beq skip2
        lda $ea
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        jmp $100b
skip2:
        ldx #$06
        jsr sub_112b
        lda dat_112f
        sta $d020
        sta $d021
        lda #$0e
        sta $d022
        rts
}

// Referenced by: jsr from $126d
sub_1049: {
        jsr $e544
        sei
        lda #$2b
        sta $d012
        lda #$c1
        ldx #$10
        sta $0314
        stx $0315
        lda $dc0e
        and #$fe
        sta $dc0e
        lda $d011
        and #$7f
        sta $d011
        lda #$81
        sta $d019
        sta $d01a
        lda #$86
        ldx #$ea
        sta $0318
        stx $0319
        lda #$00
        sta $1130
        sta $1131
        sta $1132
        sta $1260
        lda #$03
        sta $1133
        lda #$0b
        sta $d023
        lda #$0c
        ldx #$13
        sta $be
        stx $bf
        ldy #$00
loop:
        lda $2630,y
        sta $0590,y
        lda $26d0,y
        sta $0630,y
        lda #$09
        sta $d990,y
        sta $da30,y
        sta $d878,y
        iny
        cpy #$a0
        bne loop
        jsr sub_1800
        cli
        rts
}