#597

Abyss 03

Abyss

2.203 lines of code

ScrollerSCRLSpritesSPRT

History

Group
Abyss — United States

This crack intro from Abyss is one of the group's many ranked entries. The CSDb search for "Abyss" returns 45 results, with the group's releases catalogued extensively — including multiple named intros, logo screens, and Abyss Connection logos under group ID #1530. The CSDb release matched to this entry (#81077) is actually a crack by Miro Soft Club from Croatia, indicating a catalogue mismatch rather than an Abyss production. Doc Snyder's page documents Abyss as a US group using the abbreviation ABS, with Raster Blaster credited for code and artwork on their first intro. Abyss is one of the best-represented groups in the rankings, with entries including #19 Abyss-05, #52 Abyss-02, #108 Abyss-07, #130 Abyss-08, and #236 Abyss-01. Founded around 1987, the group operated during the peak years of American C64 cracking.

Sources: CSDb Group (Abyss) · Doc Snyder · intros.c64.org

abyss-03.asm 2.203 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:05
// 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:  $0f00 (3840)
// IRQ handler:  $1430 (irq_1430)
// IRQ handler:  $144e (irq_144e)
// IRQ handler:  $ea31 (loc_ea31)
//
// Code: 1854 bytes, Data: 61634 bytes
// Labels: 208, Subroutines: 16
//
// Cross-references: all OK
// ============================================


// --- Region $0d16-$0d18 ---
.pc = $0d16 "Program $0d16"
        .byte $80,$80                               // nop #$80 // ILLEGAL
        brk

// --- Region $0f00-$0fc8 ---
.pc = $0f00 "main_0f00"

main_0f00:
        lda #$93
        jsr $ffd2
        lda #$08
        jsr $ffd2
        lda #$0e
        sta $d022
        lda #$06
        sta $d023
        lda #$12
        sta $d018
        lda #$1f
        sta $d015
        sta $d01c
        sta $d01d
        lda #$40
        sta $d000
        lda #$70
// Referenced by: jsr from $ffe9

sub_0f2b:
        sta $d002
        lda #$a0
        sta $d004
        lda #$d0
        sta $d006
        lda #$00
        sta $d008
        lda #$10
        sta $d010
        lda #$36
        sta $07f8
        lda #$37
        sta $07f9
        lda #$38
        sta $07fa
        lda #$39
        sta $07fb
        sta $07fc
        ldx #$00

loc_0f5b:
        lda #$d8
        sta $d001,x
        inx
        inx
        cpx #$10
        bmi loc_0f5b
        lda #$00
        sta $d021
        sta $d020
        ldx #$00
        lda #$00

loc_0f72:
        sta $d025,x
        inx
        cpx #$0a
        bne loc_0f72
        ldx #$00

loc_0f7c:
        lda dat_0b00,x
        sta $06f8,x
        inx
        cpx #$f0
        bne loc_0f7c
        ldx #$00
        lda #$09

loc_0f8b:
        sta $d800,x
        sta $d900,x
        sta $da00,x
        sta $db00,x
        inx
        bne loc_0f8b
        jsr sub_1400

loc_0f9d:
        jsr sub_1c00
        ldx #$00
        ldy #$20

loc_0fa4:
        inx
        bne loc_0fa4
        dey
        bne loc_0fa4
        jsr $ffe4
        beq loc_0f9d
        sei
        lda #$f0
        sta $d01a
        lda #$00
        sta $dc0d
        lda #$ea
        sta $0315
        lda #$31
        sta $0314
        cli
        jmp loc_13a0

dat_0fc8:
        // === Fill data (1 bytes, $0fc8-$0fc8) ===
        .byte $00                                   // .

// --- Region $100d-$10b8 ---
.pc = $100d "sub_100d"
// Referenced by: jsr from $1912

sub_100d:
        ldx $10ff
        cpx #$4f
        bmi loc_1019
        lda #$00
        sta $10ff

loc_1019:
        lda $1500,x