Depredators, The [DDT] 01

Depredators, The [DDT]

4.365 lines of code

RasterbarsRSTRMusicSIDScrollerSCRLSpritesSPRT

History

Released
1991
Code
Slator
Music
Ronny Pasch (Audial Arts) — Boredom
Graphics
Scythe
Group
Depredators — Denmark, founded 1988

Depredators (DDT) were a Danish cracking group founded in 1988 by CSN and Buzzsaw, drawing members from across northern Europe and maintaining BBS affiliations in the US and Sweden before dissolving in April 1992. This first intro was coded by the German member Slator, with all graphics by fellow German Scythe, and is set to the bouncy SID tune Boredom composed by Dutch musician Ronny Pasch of Audial Arts. The intro packages the classic early-nineties formula of rasterbar-lit backdrop, animated sprites, and a smooth horizontal scroller, purpose-built for attachment to the group's crack of the 1991 trucking game Super Trucker +4.

Sources: CSDb · CSDb group · docsnyderspage

ddt-01.asm 4.365 lines
// ============================================
// ddt-01 - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 vdisasm-one 1.0 build 1, 2026-03-29 17:54:11
// 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:  $0a00 (2560)
// IRQ handler:  $ea31 (irq_ea31)
// IRQ handler:  $0a99 (irq_0a99)
// IRQ handler:  $0aed (irq_0aed)
//
// Code: 4286 bytes, Data: 59202 bytes
// Labels: 467, Subroutines: 18
//
// Cross-references: all OK
// ============================================


// --- Region $0a00-$0bd4 ---
.pc = $0a00 "main_0a00"

main_0a00:
        lda #$0b
        sta $0286
        jsr $e544
        lda #$89
        sta $07f8
        lda #$8a
        sta $07f9
        lda #$8b
        sta $07fa
        lda #$8c
        sta $07fb
        lda #$8d
        sta $07fc
        lda #$8e
        sta $07fd
        lda #$8f
        sta $07fe
        lda #$90
        sta $07ff
        ldx #$00

loc_0a32:
        lda scr_1c00,x
        sta $0540,x
        inx
        cpx #$78
        bne loc_0a32
        ldx #$00

loc_0a3f:
        lda #$01
        sta $da18,x
        inx
        cpx #$f0
        bne loc_0a3f
        ldx #$00

loc_0a4b:
        lda #$00
        sta $04a0,x
        sta $04c8,x
        sta $d8a0,x
        sta $d8c8,x
        inx
        cpx #$28
        bne loc_0a4b
        sei
        lda #$99
        ldx #$0a
        sta $0314                                   // set IRQ handler low byte
        stx $0315
        lda #$1b
        sta $d011                                   // text mode, screen on, 25 rows, Y-scroll=3
        lda #$01
        sta $d01a                                   // raster IRQ on
        lda #$7f                                    // disable all CIA1 interrupts
        sta $dc0d                                   // disable all CIA IRQs
        lda #$1b
        sta $d011                                   // text mode, screen on, 25 rows, Y-scroll=3
        lda #$01
        sta smc_107e                                // SMC: modifies $107e
        jsr sub_0d76
        lda #$00
        sta $fb
        sta $fc
        cli

loc_0a8c:
        lda $dc01
        cmp #$ef
        beq loc_0a96
        jmp loc_0a8c

loc_0a96:
        jmp loc_0f2a

// ============================================
// IRQ handler
// ============================================

irq_0a99:
        lda #$01
        sta $d019                                   // raster // acknowledge raster IRQ
        lda #$00
        sta $d012
        lda #$ed
        ldx #$0a
        sta $0314                                   // set IRQ handler low byte
        stx $0315
        lda #$00
        sta $d020
        sta $d021
        jsr sub_0b79
        lda #$19
        sta $d018                                   // screen=$0400, charset=$2000

loc_0abd:
        lda #$53
        sta $d012
        cmp $d012
        bne loc_0abd
        lda #$c8
        sta $d016                                   // hires, 40 cols, X-scroll=0
        lda #$12
        sta $d018                                   // screen=$0400, charset=$0800
        jsr sub_107d
        jsr sub_0c47
        jsr sub_0cad
        jsr sub_0d13

loc_0add:
        lda #$94
        cmp $d012
        bne loc_0add
        jmp loc_ea81

chr_0ae7:
        // === Charset data (6 bytes, $0ae7-$0aec) ===
        .byte $06,$00,$01,$00,$00,$00               // char 0 (partial)

// ============================================
// IRQ handler
// ============================================
irq_0aed: {