#845

Fantasy Cracking Service [FCS] 14

Fantasy Cracking Service [FCS]

1.409 lines of code

RasterbarsRSTRSpritesSPRT

History

Released
1 December 1987
Group
Fantasy Cracking Service -- Germany, founded 1986

CSDb confirms this as a later FCS intro coded by T'Kay, reusing Flash's "Das Boot" SID composition that also appeared in the earlier Lukullus-coded FCS intro. T'Kay was a coder and cracker within FCS, part of a group that had approximately 30 members spanning coding, cracking, and swapping roles. Released on 1 December 1987, the intro was used in cracks of Andy Capp, Deflektor +, Pebbles, Power Struggle, and Tobruk 1942. Fantasy Cracking Service was a German group founded in 1986 that produced 542 documented releases before dissolving in 1988. The reuse of Flash's popular "Das Boot" tune across multiple FCS intros created sonic continuity -- listeners would immediately associate the music with the group's identity. FCS's Copy Party on 5 December 1987 was held just days after this intro's release. Doc Snyder's page documents the group's output, and several FCS members later founded the group Axios.

Sources: CSDb · docsnyderspage

fcs-14.asm 1.409 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:40
// 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:  $108f (4239)
// IRQ handler:  $0d34 (irq_0d34)
// IRQ handler:  $ea31 (loc_ea31)
// IRQ handler:  $1031 (irq_1031)
// IRQ handler:  $3081 (irq_3081)
//
// Code: 1325 bytes, Data: 62163 bytes
// Labels: 174, Subroutines: 5
//
// Cross-references: all OK
// ============================================


// --- Region $085a-$0860 ---
.pc = $085a "loc_085a"

loc_085a:
        sei
        bvs loc_08d5
        ror.abs $0063
        rti

// --- Region $0890-$0897 ---
.pc = $0890 "loc_0890"

loc_0890:
        bvs loc_08fe
        ror $7c
        sei
        jmp ($0063)

// --- Region $08d5-$08d5 ---
.pc = $08d5 "loc_08d5"

loc_08d5:
        rts

// --- Region $08fe-$0900 ---
.pc = $08fe "loc_08fe"

loc_08fe:
        bpl loc_0900

loc_0900:
        brk

// --- Region $0d00-$0df9 ---
.pc = $0d00 "sub_0d00"
// Referenced by: jsr from $1290, $ffb6

sub_0d00:
        lda #$d7
        sta $034d
        lda #$00
        sta $f9
        lda #$0a
        sta $fa
        sei
        lda #$34
        sta $0314
        lda #$0d
        sta $0315
        lda $d011
        and #$7f
        sta $d011
        lda #$10
        sta $d012
        lda #$81
        sta $d01a
        lda #$00
        sta $dc0e
        sta $034a
        cli
        rts

irq_0d34:
        lda $d019
        and #$01
        bne loc_0d3e
        jmp loc_ea31

loc_0d3e:
        sta $d019
        lda $034a
        cmp #$00
        bne loc_0d8f
        lda #$0f
        sta $d015
        lda #$c8
        sta $d016
        jsr sub_0ee0
        lda $034d
        cmp #$bf
        bne loc_0d8f
        lda #$c7
        sta $034d
        ldy #$00
        lda ($f9),y
        beq loc_0d7a
        sta $07bf
        inc $f9
        bne loc_0d70
        inc $fa

loc_0d70:
        jmp loc_0d82

dat_0d73:
        .byte $00,$00,$00,$00,$00,$0e,$00           // .......

loc_0d7a:
        lda #$00
        sta $f9
        lda #$0a
        sta $fa

loc_0d82:
        ldx #$00

loc_0d84:
        lda $0799,x
        sta $0798,x
        inx
        cpx #$27
        bne loc_0d84

loc_0d8f:
        ldx $034a
        lda $0e6c,x
        sta $d000
        lda txt_0e32,x
        sta $d001
        lda $d010
        and #$fe
        ora $0ea8,x
        sta $d010
        lda txt_0dfa,x
        sta $d012
        inc $034a
        ldx $034a