#183

Fairlight [FLT] 08

Fairlight [FLT]

858 lines of code

History

Released
January 1994
Code
Bacchus
Graphics
Vodka
Group
Fairlight — Sweden, founded 14 April 1987

Bacchus coded — one of Fairlight's most important members in the demo era, here contributing to the group's cracking heritage. Vodka provided graphics. No music is listed on CSDb, making this another silent Fairlight intro like #103 FLT-12. Released in January 1994, this represents Fairlight's continued C64 presence seven years after their legendary #2 debut. Bacchus would become central to Fairlight's demo productions — his coding work on later demos pushed the C64 to its technical limits. The absence of the traditional Druid II tune breaks from the group's earlier branding approach seen in #94 FLT-10. Doc Snyder's page documents the full Fairlight chronology. The Bacchus/Vodka partnership suggests a new generation of members maintaining the Fairlight name.

Sources: CSDb · docsnyderspage

flt-08.asm 858 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-01 10:59:21
// 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:  $5100 (20736)
//
// Code: 269 bytes, Data: 63218 bytes
// Labels: 113, Subroutines: 4
//
// Verification: 5 line(s) auto-corrected to .byte for exact byte matching
//
// Cross-references: all OK
// ============================================


// --- Region $4143-$4143 ---
.pc = $4143 "Segment $4143"
        brk

// --- Region $4150-$4154 ---
.pc = $4150 "sub_4150"
// Referenced by: jsr from $ff9a

sub_4150:
        brk

dat_4151:
        .byte $00,$00,$00                           // ...
// Referenced by: jsr from $ffa2

sub_4154:
        brk

// --- Region $4d41-$4d41 ---
.pc = $4d41 "sub_4d41"
// Referenced by: jsr from $ff86

sub_4d41:
        brk

// --- Region $5100-$5167 ---
.pc = $5100 "main_5100"

main_5100:
        sei
        lda #$00
        sta $d020
        sta $d021
        jsr $e536
        lda #$08
        jsr $ffd2
        lda #$8e
        jsr $ffd2
        clc
        ldx #$18
        stx $d011
        ldy #$00
        sty $c6
        jsr $fff0
        lda $0326
        sta smc_5156                                // SMC: modifies $5156
        lda #$68
        sta $0326
        lda $0327
        sta smc_515b                                // SMC: modifies $515b
        lda #$51
        sta $0327

loc_5139:
        ldx #$f0
        ldy #$51
        stx $fe
        sty $ff

loc_5141:
        ldy #$00
        lda ($fe),y
        beq loc_5139
        jsr $ffd2
        inc $fe
        bne loc_5150
        inc $ff

loc_5150:
        jsr $ffe4
        beq loc_5141
.label smc_5156 = * + 1
        lda #$00                                    // !SMC: modified by $5126
        sta $0326
.label smc_515b = * + 1
        lda #$00                                    // !SMC: modified by $5131
        sta $0327
        lda #$1b
        sta $d011
        jmp loc_54c0

dat_5167:
        .byte $00                                   // .

// --- Region $5228-$5228 ---
.pc = $5228 "sub_5228"
// Referenced by: jsr from $ffe4

sub_5228:
        .byte $12                                   // jam // ILLEGAL

// --- Region $544f-$5458 ---
.pc = $544f "Segment $544f"
        eor ($44,x)
        eor $41,x
        ora $202a
        .byte $54,$41                               // nop $41,x // ILLEGAL
        .byte $42                                   // jam // ILLEGAL

// --- Region $54c0-$54cb ---
.pc = $54c0 "loc_54c0"

loc_54c0:
        jsr $ff81
        jsr $ff8a
        jsr $ff84
        jmp loc_fce2

// --- Region $8dd0-$8dd0 ---
.pc = $8dd0 "Segment $8dd0"
        brk

// --- Region $e354-$e354 ---
.pc = $e354 "Segment $e354"
        brk

// --- Region $e536-$e536 ---
.pc = $e536 "Segment $e536"
        brk

// --- Region $fcd2-$fd00 ---
.pc = $fcd2 "loc_fcd2"

loc_fcd2:
        ldx #$f0
        ldy #$51
        stx $fe
        sty $ff