#483

Laser 05

Laser

5.741 lines of code

RasterbarsRSTRMusicSIDScrollerSCRLSpritesSPRTBitmapBMAP

History

Released
1994
Code
Greenfrog
Music
Michael Hendriks — "Dynamic Range"
Charset
Tob
Group
Laser — United Kingdom, founded 1986

A 1994 crack intro from Laser, coded by Greenfrog with a charset by Tob and music from Michael Hendriks. The tune "Dynamic Range" is catalogued in the HVSC under Hendriks' FAME directory. Hendriks was a prolific Dutch composer whose work appeared across numerous scene productions. This is Laser's second ranked intro alongside #252 Laser-02, which was coded by a different member — Ironfist. The shift from Ironfist to Greenfrog as coder suggests Laser maintained multiple active programmers in their later period. Tob contributed charsets to both this and the earlier Laser intro, providing visual continuity across the group's output. Laser was a British group founded in 1986 and abbreviated LCS. By 1994, the C64 cracking scene had contracted significantly, making any new production a late-era artifact from a group that had already been active for eight years.

Sources: CSDb · Doc Snyder's Page

laser-05.asm 5.741 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:52
// 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:  $3acd (15053)
// IRQ handler:  $19bc (irq_19bc)
// IRQ handler:  $ea31 (loc_ea31)
//
// Code: 5719 bytes, Data: 57769 bytes
// Labels: 628, Subroutines: 31
//
// Verification: 3 line(s) auto-corrected to .byte for exact byte matching
//
// Cross-references: all OK
// ============================================


// --- Region $0830-$086f ---
.pc = $0830 "sub_0830"
// Referenced by: jsr from $1b69, $1b71, $1b74, $1b7c, $1c01, $1c09, $1c11; branch from $0836

sub_0830:
        lda $d49b
        eor $dc04
        beq sub_0830
        rts
// Referenced by: jsr from $18d9

sub_0839:
        lda #$40
        sta smc_3890                                // SMC: modifies $3890
        lda #$24
        sta $3891
        rts
// Referenced by: jsr from $196a

sub_0844:
        lda #$01
        sta $a7

loc_0848:
        lda $a7
        bne loc_0848
        rts
// Referenced by: jsr from $18d3, $3a44, $ff59

sub_084d:
        lda #$00
        sta smc_3a3e                                // SMC: modifies $3a3e
        lda #$2c
        sta smc_3a3f                                // SMC: modifies $3a3f
        rts

loc_0858:
        jsr sub_1987
        jsr sub_3959
        inx
        jmp loc_1841
// Referenced by: jsr from $1831

sub_0862:
        ldy #$0a

loc_0864:
        ldx #$00

loc_0866:
        jsr $eeb3
        dex
        bne loc_0866
        dey
        bne loc_0864
        rts

// --- Region $089d-$0af6 ---
.pc = $089d "sub_089d"
// Referenced by: jsr from $160a, $e385

sub_089d:
        tay
        ldx #$59
        lda #$00
        sta smc_0aee

loc_08a5:
        sta $0f7a,x
        dex
// Referenced by: jsr from $e37a

sub_08a9:
        bpl loc_08a5
        ldx #$18

loc_08ad:
        sta $d400,x
        dex
        bpl loc_08ad
        lda #$08
        sta $d404
        sta $d40b
        sta $d412
        tya
        asl
        sta $50
        asl
        clc
        adc $50
        tax
        lda $1016,y
        sta $0adf
        ldy #$00

loc_08cf:
        lda $1010,x
        sta $0fb0,y
        inx
        iny
        cpy #$06
        bcc loc_08cf
        lda #$80
        sta smc_094f
        rts

loc_08e1:
        cmp #$ff
        bne loc_08f4
        iny
        lda ($50),y
        sta $0fb0,x
        iny
        lda ($50),y
        sta $0fb3,x
        jmp loc_0915

loc_08f4:
        cmp #$a0
        bcs loc_0901
        and #$1f
        sta $0fbf,x

loc_08fd:
        iny
        jmp loc_0930