#809

S.W.A.T. 03

S.W.A.T.

1.665 lines of code

RasterbarsRSTRSpritesSPRT

History

Released
1985
Code
Sim
Graphics
Wam
Concept
Amb
Group
S.W.A.T. — United Kingdom, founded 1984

This 1985 intro from S.W.A.T. is an early British C64 production, coded by Sim with graphics by Wam and concept work credited to Amb. S.W.A.T. was a United Kingdom-based group founded in 1984, operating under the abbreviation SWAT. The 1985 release date places this intro in the first wave of the C64 cracking scene, when the platform was at its commercial peak. British groups of this era competed alongside Scandinavian and German crews for primacy in the European software distribution underground. Another S.W.A.T. intro — #192 S_w_a_t-02 — also appears in the rankings. The absence of a music credit and the presence of a "concept" role reflect the informal organizational structures of mid-1980s cracking groups, where members often filled multiple roles and credits were loosely assigned.

Sources: CSDb

s_w_a_t-03.asm 1.665 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:36:42
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0801  End: $ffff  (63487 bytes)
// Crunched with Exomizer v2/v3 (with relocation) — depacked by emulation
// Packer entry: $0810 (via BASIC SYS 2064)
// Entry point:  $0818 (2072)
// IRQ handler:  $0954 (irq_0954)
//
// Code: 1688 bytes, Data: 61799 bytes
// Labels: 157, Subroutines: 17
//
// Verification: 5 line(s) auto-corrected to .byte for exact byte matching
//
// Cross-references: all OK
// ============================================


// --- Region $0818-$0830 ---
.pc = $0818 "main_0818"

main_0818:
        ldx #$3a

loc_081a:
        lda $0830,x
        sta $02bf,x
        dex
        bne loc_081a
        lda #$00
        sta $d020
        jsr sub_3046
        jsr sub_086b
        jmp $02c4

// --- Region $086b-$090f ---
.pc = $086b "sub_086b"
// Referenced by: jsr from $082b

sub_086b:
        sei
        lda #$54
        sta $0314
        lda #$09
        sta $0315
        cli
        lda #$2b
        sta $07f8
        lda #$2a
        sta $07f9
        lda #$29
        sta $07fa
        lda #$28
        sta $07fb
        lda #$2c
        sta $07fc
        lda #$00
        sta $d020
        jsr sub_0949
        lda #$00
        sta $d021
        sta $d009
        lda #$0f
        sta $d01d
        lda #$52
        sta $d000
        lda #$82
        sta $d002
        lda #$b2
        sta $d004
        lda #$e2
        sta $d006
        lda #$a5
        sta $d008
        lda #$ff
        sta $d001
        sta $d003
        sta $d005
        sta $d007
        lda #$0f
        sta $d015

loc_08d1:
        dec $d001
        dec $d003
        dec $d005
        dec $d007
        jsr sub_093e
        lda $d007
        cmp #$54
        bne loc_08d1

loc_08e7:
        inc $d000
        inc $d000
        inc $d000
        inc $d002
        dec $d004
        dec $d006
        dec $d006
        dec $d006
        jsr sub_093e
        jsr sub_3000
        lda $d000
        cmp #$e2
        bne loc_08e7
        jmp loc_096c

dat_090f:
        // === Fill data (1 bytes, $090f-$090f) ===
        .byte $00                                   // .

// --- Region $093e-$09a7 ---
.pc = $093e "sub_093e"

// Referenced by: jsr from $08dd, $08ff
sub_093e: {
        ldx #$ff
loop1:
        ldy #$05
loop2:
        dey
        bne loop2
        dex
        bne loop1
        rts
}
// Referenced by: jsr from $0895

sub_0949:
        lda #$01

// Referenced by: jsr from $097a
sub_094b: {
        ldx #$05
loop:
        sta $d026,x
        dex
        bne loop
        rts
}

irq_0954:
        inc $d027
        inc $d028
        inc $d029