#956

Sharks, The 23

Sharks, The

1.868 lines of code

MusicSIDScrollerSCRL

History

Group
The Sharks — Germany, founded 1987

The twenty-third numbered crack intro from The Sharks — the highest-numbered edition in the intros.c64.org archive and likely the final entry in their intro series. The Sharks were a German group active from 1987 to 1995, classified on CSDb (group ID 241) as a cracker group, demo group, import group, graphics group, hacker group, and fixing group. A 2021 comment on intros.c64.org from Rock/Sharks confirms continued engagement from a group member decades after the original release. The group’s prolific output — approximately 568 releases on CSDb — was sustained by members such as Deadbeat, Magic Circle, Dark Force, and Ultimax. Their motto, "Old Soldiers never die, young ones do," captured the group’s enduring presence across eight years of scene activity. The Sharks also organized the Sharks Copy Party in Switzerland in 1988. Other Sharks intros in this collection appear at positions #174, #309, and #388.

Sources: CSDb · intros.c64.org

sharks-23.asm 1.868 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:36:45
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $43ff  (15360 bytes)
// Crunched with Cruncher AB — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $082d (2093)
// IRQ handler:  $0929 (irq_0929)
// IRQ handler:  $ea31 (irq_ea31)
//
// Code: 1832 bytes, Data: 13528 bytes
// Labels: 191, Subroutines: 11
//
// Cross-references: all OK
// ============================================


// --- Region $082d-$08dd ---
.pc = $082d "main_082d"

main_082d:
        jsr sub_0ac0
        lda #$0e
        sta $0286
        jsr $e544
        ldx #$00

loc_083a:
        lda $1e00,x
        sta $0400,x
        sta $06a8,x
        inx
        bne loc_083a

loc_0846:
        lda $1f00,x
        sta $0500,x
        sta $07a8,x
        inx
        cpx #$40
        nop
        bne loc_0846
        lda #$18
        sta $d016
        sta $d018
        lda #$0f
        sta $d022
        lda #$0e
        sta $d023
        lda #$00
        sta $d020
        sta $d021
        lda #$00
        tax
        sta $02

loc_0874:
        sta $d940,x
        sta $d9a8,x
        inx
        bne loc_0874
        jsr sub_0a4d
        jsr sub_0aad
        lda #$00
        jsr sub_3100
        jsr sub_0900

loc_088b:
        lda $dc01
        cmp #$ef
        bne loc_088b
        jsr $ff5b
        lda #$31
        ldx #$ea
        sta $0314
        stx $0315
        cli
        jsr $e518
        jsr $fda3
        ldx #$00
        txa

loc_08a9:
        sta $d400,x
        inx
        cpx #$1f
        bne loc_08a9
        lda #$c2
        sta $ae
        sta $2d
        lda #$a4
        sta $af
        sta $2e
        ldx #$00

loc_08bf:
        lda $17a0,x
        sta $0100,x
        inx
        bne loc_08bf
        lda #$00
        sta $d011
        dec $d030
        lda #$34
        sta $01
        lda #$ea
        sta $0328
        sei
        jmp $0100

dat_08dd:
        // === Fill data (1 bytes, $08dd-$08dd) ===
        .byte $00                                   // .

// --- Region $0900-$09b8 ---
.pc = $0900 "sub_0900"
// Referenced by: jsr from $0888

sub_0900:
        sei
        lda #$7f
        sta $dc0d
        lda $dc0d
        lda #$00
        sta $dc0e
        lda #$f1
        sta $d01a
        lda #$32
        sta $d012
        lda #$1b
        sta $d011
        lda #$29
        sta $0314
        lda #$09
        sta $0315
        cli
        rts

irq_0929:
        lda #$01
        sta $d019
        lda #$f8
        sta $d016
        lda #$18
        sta $d018