#474

Fairlight [FLT] 11

Fairlight [FLT]

4.169 lines of code

RasterbarsRSTRScrollerSCRLBitmapBMAP

History

Released
October 1990
Code
Rowdy (Anders Larsson), Bacchus (Pontus Berg)
Music
Ratt, Benn — based on Ben Daglish & Antony Crowther's "We M.U.S.I.C. 2"
Charset
Kevin Bulmer
Group
Fairlight — Sweden, founded 14 April 1987

A joint coding effort by two of Fairlight's most important members — Rowdy (Anders Larsson) and Bacchus (Pontus Berg), who together shaped the group's technical direction through the late 1980s and early 1990s. The music credit lists both Ratt and Benn, drawing on Ben Daglish and Antony Crowther's "We M.U.S.I.C. 2" — preserved in the HVSC. Kevin Bulmer contributed the charset. Released in October 1990, this intro arrived during Fairlight's mature C64 period, three years after the group's founding on 14 April 1987. Fairlight is the most heavily represented group in the rankings, with entries including the legendary #2 FLT-01. Bacchus would go on to become one of the most respected coders in the broader demo scene, while Rowdy handled much of the group's organisational work. Hugi's "The Delight of Eternal Might" provides a comprehensive history of the group's evolution from Swedish crackers to international demo legends.

Sources: CSDb · docsnyderspage

flt-11.asm 4.169 lines
// ============================================
// output - Part 1 of 2
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:42
// 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:  $0ec7 (3783)
//
// Code: 1675 bytes, Data: 61813 bytes
// Labels: 238, Subroutines: 18
//
// Cross-references: all OK
// ============================================


// --- Region $0ec7-$10b7 ---
.pc = $0ec7 "main_0ec7"

main_0ec7:
        ldx #$00

loc_0ec9:
        lda $0c01,x
        sta $f998,x
        lda $0d01,x
        sta $fa98,x
        lda $0e01,x
        sta $fb98,x
        inx
        bne loc_0ec9
        jsr sub_0fea
        ldx #$01
        stx $0286
        stx $d021
        stx $3a
        stx $3b
        jsr $e544
        dec $d021
        dex
        stx $d020

loc_0ef7:
        lda txt_15d3,x
        sta $fc00,x
        sta $fe08,x
        lda #$09
        sta chr_d800,x
        sta $da08,x
        inx
        cpx #$c8
        bne loc_0ef7
        ldx #$00

loc_0f0f:
        lda $0eb7,x
        sta $fcb8,x
        sta $fec0,x
        inx
        cpx #$10
        bne loc_0f0f
        lda #$d8
        sta $d016
        ldx #$00
        txa

loc_0f25:
        sta txt_15d3,x
        inx
        cpx #$b8
        bne loc_0f25
        lda #$d3
        ldx #$16
        jsr sub_111f
        ldx #$00

loc_0f36:
        lda txt_1d4b,x
        sta $04c8,x
        clc
        adc #$40
        sta $04f0,x
        lda $1d73,x
        sta $05b8,x
        clc
        adc #$40
        sta $05e0,x
        inx
        cpx #$28
        bne loc_0f36
        sei

loc_0f54:
        lda $d011
        bmi loc_0f54
        lda #$2b

loc_0f5b:
        cmp $d012
        bne loc_0f5b
.label smc_0f61 = * + 1
        ldx #$1d                                    // !SMC: modified by $0fc9
        jsr sub_1040
        jsr sub_1007
.label smc_0f69 = * + 1
        ldx #$02                                    // !SMC: modified by $0fd2
        jsr sub_1040
        ldx #$03
        jsr sub_103c
        lda #$97
        ldx #$12
        ldy #$c8
        sta $dd00
        stx $d018
        sty $d016
        lda #$8e

loc_0f83:
        cmp $d012
        bne loc_0f83
        lda $3a
        sta $d016
        lda #$a0

loc_0f8f:
        cmp $d012
        bne loc_0f8f
        lda #$c8
        sta $d016
        jsr sub_107b
        ldx #$b3

loc_0f9e:
        cpx $d012
        bne loc_0f9e
.label smc_0fa4 = * + 1
        ldx #$02                                    // !SMC: modified by $0fd5
        jsr sub_1040
        jsr sub_1007
.label smc_0fac = * + 1
        ldx #$16                                    // !SMC: modified by $0fcc
        jsr sub_1040
        jsr sub_1055
        jsr sub_1069
        jsr sub_1185
        inc $3b
        lda $3b