#995

Lightforce, The [TLF] 07

Lightforce, The [TLF]

3.581 lines of code

ScrollerSCRLSpritesSPRT

History

Released
8 February 1988
Group
The Lightforce — Germany, founded September 1986

Coded by Master of Chaos — The Lightforce's co-founder and multi-role organizer — this intro was released on 8 February 1988. No music or graphics credits are listed on CSDb, suggesting a more minimalist design compared to the group's earlier intros which featured compositions by Red and Ben Daglish. The intro was reused across six cracks including Gryzor, Impossible Mission, and Rolling Thunder. Master of Chaos served as coder, cracker, hardware guru, organizer, and swapper for TLF, embodying the multi-disciplinary approach required in smaller German groups. The Lightforce was founded in September 1986 and produced 132 releases before ceasing activity around 1989. Other founding members Boomer and Zar handled swapping and cracking duties respectively. Two earlier TLF intros appear in this collection at #178 TLF-01 and #92 TLF-02.

Sources: CSDb · intros.c64.org

tlf-07.asm 3.581 lines
// ============================================
// output - Part 1 of 2
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:36:50
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0801  End: $fffe  (63486 bytes)
// Crunched with Exomizer — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $cfd0 (53200)
// IRQ handler:  $e027 (nmi_e027)
// IRQ handler:  $e02d (irq_e02d)
//
// Code: 2997 bytes, Data: 60489 bytes
// Labels: 233, Subroutines: 0
//
// Verification: 4 line(s) auto-corrected to .byte for exact byte matching
//
// Cross-references: all OK
// ============================================


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

// --- Region $cfd0-$cfd7 ---
.pc = $cfd0 "main_cfd0"

main_cfd0:
        lda #$35
        sta $01
        jmp loc_e000

dat_cfd7:
        .byte $ea                                   // .

// --- Region $cfe0-$cff9 ---
.pc = $cfe0 "loc_cfe0"

loc_cfe0:
        lda #$37
        sta $01
        jsr $e544
        jsr $fda3
        jsr $fd15
        jsr $e5a0
        lda #$0b
        sta $d011
        jmp loc_fce2

dat_cff8:
        // === Fill data (2 bytes, $cff8-$cff9) ===
        .byte $00,$00                               // ..

// --- Region $e000-$e056 ---
.pc = $e000 "loc_e000"

loc_e000:
        sei
        ldx #$ff
        txs
        lda #$35
        sta $01
        jsr $e6b4
        jsr $e6e4
        jsr $e5cf
        jsr $e5ef
        jsr $e62f
        jsr $e63a
        jsr $e651
        jsr $e749
        jsr $e6ec
        cli

loc_e024:
        jmp loc_e024

nmi_e027:
        pha
        lda $dd0d
        pla
        rti

irq_e02d:
        pha
        txa
        pha
        tya
        pha
        lda $01
        pha
        lda #$35
        sta $01
        nop
        nop
        nop
        nop
        nop
        nop
        lda $d019
        sta $d019
        ldy $02
        lda $e058,y
        sta dat_e056
        lda $e05a,y
        sta $e057
        jmp (dat_e056)

dat_e056:
        .byte $7b                                   // {

// --- Region $e07b-$e150 ---
.pc = $e07b "loc_e07b"

loc_e07b:
        nop
        nop
        nop
        ldy #$66
        sty $d018
        jsr $e230
        jsr $e22d
        jsr $e22d
        ldy #$76
        sty $d018
        jsr $e230
        jsr $e22d
        jsr $e22d
        jsr $e22d
        jsr $e22d
        ldx #$00
        ldy #$66
        jsr $e171
        ldx #$01
        ldy #$66
        jsr $e171
        ldx #$02
        ldy #$66
        jsr $e171
        ldx #$03
        ldy #$66
        jsr $e171
        ldx #$04
        ldy #$56
        jsr $e171
        ldx #$05
        ldy #$56
        jsr $e171