#841

Fairlight [FLT] 05

Fairlight [FLT]

950 lines of code

History

Code
Pantaloon
Graphics
Pantaloon
Music
Wiklund (Alexander Wiklund)
Released
27 December 2014
Group
Fairlight [FLT] -- Sweden, founded 14 April 1987

Fairlight Crack Intro #05 -- titled "Crackmo" -- is a C64 crack intro released on 27 December 2014 by the Swedish group Fairlight, demonstrating the group's continued activity well into the modern era. The intro was coded and graphically designed by Pantaloon, with music by Wiklund (Alexander Wiklund) using an original SID composition also titled "Crackmo." Both CSDb and Doc Snyder confirm these credits. The release earned a notable 8.33 rating on CSDb, placing it among the better-received crack intros in the database. The scrolltext is deliberately minimalist, simply stating that Fairlight cracked "Pitstop" by Epyx with greetings to the elite. Fairlight was founded on 14 April 1987 and has maintained an extraordinary presence across multiple decades of the C64 scene. The release is preserved on CSDb as release #135655, verified through the Doc Snyder link.

Sources: CSDb · CSDb Group · intros.c64.org · Doc Snyder

flt-05.asm 950 lines
// ============================================
// output - Part 1 of 2
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:41
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0314  End: $ffff  (64748 bytes)
// Crunched with NSU Packer 1.1 — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $c312 (49938)
//
// Code: 16 bytes, Data: 64732 bytes
// Labels: 80, Subroutines: 0
//
// Verification: 4 line(s) auto-corrected to .byte for exact byte matching
//
// Cross-references: all OK
// ============================================


// --- Region $c30c-$c31b ---
.pc = $c30c "loc_c30c"

loc_c30c:
        sta $d800,x
        sta $d900,x

main_c312:
        sta $da00,x
        sta $db00,x
        inx
        bne loc_c30c
        rts

// ============================================
// Data blocks
// ============================================

// --- Region $0801-$11e5 ---
.pc = $0801 "dat_0801"

dat_0801:
        // === BASIC loader stub ===
        .byte $0b,$08                                                     // [corrected] was: .byte $0c,$08                               // next line pointer ($080c)
        .byte $c7,$07                                                     // [corrected] was: .byte $00,$00                               // line number 0
        .byte $9e                                   // SYS token
        .byte $32,$30,$36,$31,$00
        .byte $00                                   // end of line
        .byte $00,$78                                                     // [corrected] was: .byte $00,$00                               // end of BASIC program
        .byte $a2,$ff,$9a,$a2,$49,$bd,$1e,$08,$95,$00,$ca,$d0,$f8,$a0,$83,$4c // ....I..........L
        .byte $37,$00,$e8,$b1,$0f,$c8,$d0,$02,$e6,$10,$c9,$0a,$d0,$0f,$be,$00 // 7...............
        .byte $f6,$c8,$d0,$02,$e6,$10,$b1,$0f,$c8,$d0,$02,$e6,$10,$8d,$00,$c0 // ................
        .byte $e6,$1e,$d0,$04,$e6,$1f,$f0,$07,$ca,$d0,$f2,$a5,$10,$d0,$d3,$a9 // ................
        .byte $37,$85,$01,$58,$4c,$00,$c0,$bd,$e5,$10,$9d,$00,$ff,$e8,$d0,$f7 // 7..XL...........
        .byte $c6,$3c,$a9,$06,$c7,$39,$d0,$ef,$f0,$b8,$78,$a9,$29,$8d,$14,$03 // .<...9....x.)...
        .byte $a9,$c0,$8d,$15,$03,$a9,$7f,$8d,$0d,$dc,$a9,$94,$8d,$00,$dd,$a2 // ................
        .byte $00,$bd,$d0,$cf,$9d,$00,$d0,$e8,$e0,$30,$d0,$f5,$20,$00,$c3 // .........0.. ..

txt_088d:
        .text "XL&"
        .byte $c0                                   // '@' | $80 (end-of-string marker)
        .byte $a9,$01,$8d,$19,$d0,$e6,$02,$a6,$02,$a0,$04,$bd,$00,$ce,$99,$00 // ................
        .byte $d0,$8a,$18,$69,$20,$aa,$88,$88,$ea,$ea,$10,$ef,$a2,$07,$1e,$e0 // ...i ...........
        .byte $c9,$90,$08,$bd,$e0,$c9,$09,$01,$9d,$e0,$c9,$ca,$10,$f0,$a2,$07 // ................
        .byte $5e,$f0,$c9,$90,$08,$bd,$f0,$c9,$09,$80,$9d,$f0,$c9,$ca,$10,$f0 // ^...............
        .byte $a9,$97,$cd,$12,$d0,$d0,$fb,$a0,$00,$8c,$21,$d0,$18,$65,$02,$29 // ..........!..e.)
        .byte $0f,$aa,$bd,$c0,$cf,$ac,$12,$d0,$cc,$12,$d0,$f0,$fb,$8d,$16,$d0 // ................
        .byte $98,$c9,$a4,$d0,$e7,$a9,$c8,$8d,$16,$d0,$a9,$c4,$cd,$12,$d0,$d0 // ................
        .byte $fb,$a5,$09,$8d,$16,$d0,$a5,$02,$29,$1f,$aa,$ad,$11,$d0,$29,$fc // ........).....).
        .byte $1d,$00,$cd,$8d,$11,$d0,$a0,$01,$a2,$a1,$ca,$d0,$fd,$88,$d0,$f8 // ................
        .byte $a9,$1b,$8d,$11,$d0,$a2,$70,$ca,$d0,$fd,$c6,$09,$a5,$09,$c9,$ff // ......p.........
        .byte $d0,$2c,$a9,$07,$85,$09,$a2,$00,$bd,$f9,$c6,$9d,$f8,$c6,$e8,$e0 // .,..............
        .byte $27,$d0,$f5,$a2,$00,$a1,$39,$8d,$1f,$c7,$e6,$39,$a5,$39,$c9,$00 // '.....9....9.9..
        .byte $d0,$0c,$e6,$3a,$a5,$3a,$c9,$cc,$d0,$04,$a9,$ca,$85,$3a,$a2,$30 // ...:.:.......:.0
        .byte $ca,$d0,$fd,$a9,$c8,$8d,$16,$d0,$ad,$1f,$c7,$29,$07,$aa,$bd,$80 // ...........)....
        .byte $cd,$8d,$1f,$db,$a5,$09,$c9,$07,$d0,$0d,$a2,$00,$bd,$f9,$da,$9d // ................
        .byte $f8,$da,$e8,$e0,$27,$d0,$f5,$ad,$90,$cd,$48,$a2,$00,$bd,$91,$cd // ....'.....H.....
        .byte $9d,$90,$cd,$e8,$e0,$27,$d0,$f5,$68,$8d,$b7,$cd,$a2,$00,$bd,$90 // .....'..h.......
        .byte $cd,$9d,$08,$da,$e8,$e0,$27,$d0,$f8,$a2,$27,$a0,$00,$b9,$90,$cd // ......'...'.....
        .byte $9d,$b8,$d9,$99,$58,$da,$ea,$ca,$c8,$c0,$28,$d0,$f0,$a6,$02,$8a // ....X.....(.....
        .byte $18,$69,$40,$aa,$a0,$04,$bd,$00,$ce,$4a,$4a,$18,$69,$27,$99,$01 // .i@......JJ.i'..
        .byte $d0,$8a,$18,$69,$20,$aa,$88,$88,$ea,$ea,$10,$ea,$a5,$02,$29,$1f // ...i .........).
        .byte $aa,$bd,$b8,$cd,$a0,$08,$99,$0e,$d8,$88,$d0,$fa,$bd,$d8,$cd,$a0 // ................
        .byte $08,$99,$4f,$d9,$88,$10,$fa,$4c,$00,$c2,$0a,$08,$00,$78,$a9,$30 // ..O....L.....x.0
        .byte $85,$01,$a9,$00,$85,$fa,$85,$fc,$a9,$e0,$85,$fb,$a9,$c0,$85,$fd // ................
        .byte $a0,$00,$b1,$fa,$91,$fc,$c8,$d0,$f9,$e6,$fb,$e6,$fd,$a5,$fd,$c9 // ................
        .byte $cf,$d0,$ed,$a9,$37,$85,$01,$58,$4c,$e2,$fc,$0a,$07,$00,$a2,$00 // ....7..XL.......
        .byte $bd,$9b,$c1,$9d,$3c,$03,$e8,$e0,$50,$d0,$f5,$4c,$3c,$03,$0a,$20 // ....<...P..L<.. 
        .byte $00,$20,$e4,$ff,$d0,$03,$4c,$31,$ea,$78,$a9,$31,$8d,$14,$03,$a9 // . ....L1.x.1....
        .byte $ea,$8d,$15,$03,$20,$81,$ff,$a9,$97,$8d,$00,$dd // .... .......

txt_0a5d:
        .text "XL"
        .byte $d0                                   // 'P' | $80 (end-of-string marker)
        .byte $c1,$0a,$e1,$00,$78,$a9,$ca,$85,$3a,$a9,$00,$85,$39,$aa,$a9,$01 // ....x...:...9...
        .byte $9d,$00,$d8,$9d,$00,$d9,$9d,$00,$da,$9d,$00,$db,$e8,$d0,$f1,$60 // ...............`
        .byte $0a,$e4,$00,$0a,$05,$20,$25,$0a,$0a,$20,$13,$14,$12,$09,$04,$05 // ..... %.. ......
        .byte $12                                   // .

txt_0a91:
        .text "   %"
        .byte $0a,$11,$20,$25,$0a,$2b,$20,$25,$0a,$0b,$20,$25,$0a,$0b,$20,$25 // .. %.+ %.. %.. %
        .byte $0a,$18,$20,$25,$0a,$17,$20,$25,$0a,$0b,$20,$25,$0a,$07,$20,$25 // .. %.. %.. %.. %
        .byte $0a,$04,$20,$25,$0a,$16,$20,$25,$0a,$07,$20,$26,$0a,$09,$20,$25 // .. %.. %.. &.. %
        .byte $0a,$08,$20,$26,$0a,$0e,$20,$25,$0a,$0d,$20,$25,$0a,$0c,$20,$25 // .. &.. %.. %.. %
        .byte $0a,$0b,$20,$26,$0a,$24,$20,$25,$0a,$07,$20,$06,$01,$09,$12,$0c // .. &.$ %.. .....
        .byte $09,$07,$08,$14,$20,$20,$26,$0a,$20,$20,$26,$0a,$1f,$20,$25,$0a // ....  &.  &.. %.
        .byte $1c,$20,$0a,$28,$3c,$0a,$39,$20,$11,$15,$05,$04,$05,$18,$0a,$39 // . .(<.9 .......9
        .byte $20,$0a                               //  .

txt_0b07:
        .text "(>  %"
        .byte $0a,$06,$20,$26,$0a,$10,$20,$26,$0a,$0b,$20,$25,$0a,$10,$20,$25 // .. &.. &.. %.. %
        .byte $0a,$09,$20,$25,$0a,$08,$20,$25,$0a,$5a,$20,$26,$0a,$13,$20,$26 // .. %.. %.Z &.. &
        .byte $0a,$10,$20,$26,$0a,$0a,$20,$25,$0a,$07,$20,$25,$0a,$08,$20,$25 // .. &.. %.. %.. %
        .byte $0a,$09,$20,$26,$0a,$12,$20,$25,$0a,$09,$20,$26,$0a,$0d,$20,$25 // .. &.. %.. &.. %
        .byte $0a,$04                               // ..

txt_0b4e:
        .text " %  "
        .byte $03,$12,$01,$03,$0b,$05,$04           // .......

txt_0b59:
        .text ": 87:10:06"
        .byte $0a,$06,$20,$26,$0a,$06,$20,$25,$0a,$13,$20,$26,$0a,$12,$20,$0a // .. &.. %.. &.. .
        .byte $10,$00,$3c,$3d,$3e,$0a,$05,$7c,$0a,$09,$00,$38,$7c,$6c,$c6,$de // ..<=>..|...8|l..
        .byte $de,$de,$00,$f8,$cc,$f8,$cc,$fe,$fe,$fc,$00,$7c,$e6,$c0,$e6,$fe // ...........|....
        .byte $fe,$7c,$00,$f8,$ec,$e6,$ee,$fe,$fe,$fc,$00,$f0,$c0,$f8,$c0,$fe // .|..............
        .byte $fe,$fe,$00,$fe,$f0,$fc,$0a,$04,$f0,$00,$7c,$e0,$ec,$e6,$fe,$fe // ..........|.....
        .byte $7c,$00,$e6,$e6,$e6,$fe,$e6,$e6,$e6,$00,$fe,$38,$38,$38,$fe,$fe // |..........888..
        .byte $fe,$00,$06,$06,$e6,$e6,$fe,$fe,$7c,$00,$e4,$ec,$f8,$f8,$fc,$ee // ........|.......
        .byte $ee,$00,$0a,$04,$c0,$fe,$fe,$fe,$00,$c6,$ee,$fe,$fe,$fe,$e6,$e6 // ................
        .byte $00,$e6,$e6,$f6,$fe,$fe,$ee,$e6,$00,$7c,$e6,$e6,$e6,$fe,$fe,$7c // .........|.....|
        .byte $00,$fc,$e6,$e6,$fe,$fc,$f0,$f0,$00,$7c,$e6,$e6,$ee,$fc,$fe,$7e // .........|.....~
        .byte $00,$fc,$e6,$e6,$fe,$fc,$ee,$ee,$00,$7c,$e0,$7c,$0e,$fe,$fe,$fc // .........|.|....
        .byte $00,$fe,$fe,$fe,$0a,$04,$38,$00,$0a,$04,$e6,$fe,$fe,$fe,$00,$0a // ......8.........
        .byte $04,$e6,$7c,$7c,$38,$00,$e6,$e6,$e6,$fe,$fe,$ee,$c6,$00,$e6,$e6 // ..||8...........
        .byte $3c,$3c,$fe,$e6,$e6,$00,$e6,$e6,$fe,$7c,$38,$38,$38,$00,$7e,$1c // <<.......|888.~.
        .byte $38,$70,$fe,$fe,$fe,$0a,$30,$00,$1c,$1c,$1c,$0c,$00,$1c,$0c,$00 // 8p....0.........
        .byte $66,$66,$66,$0a,$05,$00,$66,$ff,$66,$66,$66,$ff,$66,$66,$18,$3e // fff...f.fff.ff.>
        .byte $60,$3c,$06,$7e,$7c,$18,$00,$00,$00,$10,$0a,$0b,$00,$10,$00,$38 // `<.~|..........8
        .byte $38,$38,$18
        .byte $30,$00,$00,$0e,$1c
        .text "8008"
        .byte $1c,$0e,$70
        .byte $38
        .byte $1c,$0c,$0c,$1c,$38,$70,$18,$5a,$3c,$e7,$e7,$3c,$5a,$18,$40,$40 // ....8p.Z<..<Z.@@
        .byte $60,$60
        .text "TTVV"