#302

Science 451 [S451] 09

Science 451 [S451]

633 lines of code

RasterbarsRSTRMusicSIDScrollerSCRL

History

Released
12 February 1988
Code
Galleon
Music
Galleon (Kristofer Cassel) — "Science 451 Intro"
Group
Science 451 — Sweden, founded 18 December 1987

A solo production by Galleon — the handle of Kristofer Cassel — who coded the intro and composed its original SID music. The tune, titled simply "Science 451 Intro," is preserved in the HVSC under the Galleon directory. Science 451 was a Swedish group founded on 18 December 1987, making this February 1988 release one of their earliest productions — appearing barely two months after the group's formation. The single-author approach stands in contrast to the multi-person teams common among larger groups, but Galleon's dual role as coder and musician was not unusual for smaller Scandinavian operations. Science 451 maintained a presence in the Swedish cracking scene alongside better-known countrymen like Triad and Fairlight. The group's scrolltext greetings from other intros document connections to Fire Eagle, The Dominators, and other mid-tier European crews.

Sources: CSDb

s451-09.asm 633 lines
// ============================================
// output - Part 1 of 2
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:36:42
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0801  End: $153f  (3391 bytes)
// Crunched with Exomizer v2/v3 — depacked by emulation
// Packer entry: $080b (via BASIC SYS 2059)
// Entry point:  $103e (4158)
// IRQ handler:  $11fc (irq_11fc)
//
// Code: 625 bytes, Data: 2766 bytes
// Labels: 77, Subroutines: 8
//
// Verification: 3 line(s) auto-corrected to .byte for exact byte matching
//
// Cross-references: all OK
// ============================================


// --- Region $103e-$1189 ---
.pc = $103e "main_103e"

main_103e:
        jsr $ff5b
        sei
        lda #$00

loc_1044:
        sta $d400,y
        dey
        bne loc_1044
        sty $d011
        sty $0286
        sty $d021
        sty $d020
        sty $50
        sty $52
        iny
        sty $dc0d
        sty $51
        sty $d01a
        sty $01
        ldx #$d0
        sta $46
        stx $47
        ldx #$08
        sta $48
        stx $49
        ldx #$0a
        sta $4a
        stx $4b
        tay

loc_1078:
        ldx #$07

loc_107a:
        lda #$ff
        sec
        sbc ($46),y
        cpx #$04
        bcc $108f
        sta ($48),y
        jsr sub_1183
        sta ($48),y
        jsr sub_1183
        bne loc_109b
        sec
        rol
        sta ($4a),y
        jsr sub_11f5
        sta ($4a),y
        jsr sub_11f5

loc_109b:
        jsr sub_1174
        dex
        bne loc_107a
        sta ($4a),y
        jsr sub_11f5
        sta ($4a),y
        jsr sub_11f5
        jsr sub_1174
        lda $49
        cmp #$0a
        bne loc_1078
        ldx #$07
        stx $01

loc_10b8:
        lda $1036,x
        sta $0800,x
        tya
        sta $08f0,x
        dex
        bpl loc_10b8
        stx $d406
        stx $d40d
        stx $d418
        jsr $e544
        lda #$c1
        sta $0318
        ldy #$19

loc_10d8:
        lda $1318,y
        sta $06af,y
        clc
        adc #$40
        sta $06d7,y
        dey
        bpl loc_10d8
        iny
        jsr sub_11b3
        lda #$fc
        ldx #$11
        ldy #$a1
        sta $0314
        stx $0315
        sty $d012
        jsr sub_117b
        jsr sub_116d
        lda #$21
        sta $d404
        sta $d40b
        lda #$1b
        sta $d011
        cli

loc_110e:
.label smc_110f = * + 1
        jmp loc_110e                                // !SMC: modified by $12ab

loc_1111:
        sei
        jsr $fd15
        jsr $fda3
        jsr $ff5b
        lda #$01
        sta $0286
        sta $d021
        jsr $e544
        lda #$00
        sta $d020
        sta $d021
        lda #$43
        sta $11e3