#490

Motiv 8 [M8] 10

Motiv 8 [M8]

8.921 lines of code

RasterbarsRSTRMusicSIDSpritesSPRTBitmapBMAP

History

Released
1996
Code
Crossfire
Music
Kristian Rostoken, MHD (Maciej Licbarski), Taki (Balazs Takacs)
Graphics
SMD
Group
Motiv 8 — Denmark, founded 8 January 1994

A three-SID jukebox intro from 1996, coded by Crossfire with graphics from SMD. The music selection spans three countries: Kristian Rostoken from Norway contributed "Babaland," MHD (Maciej Licbarski) from Poland provided "The End," and Taki (Balazs Takacs) from Hungary supplied "Save Me." All three SIDs are preserved in the HVSC. Motiv 8 was a Danish group founded on 8 January 1994, placing it firmly in the later era of C64 scene activity. Despite Denmark's small size, the country produced a disproportionate number of influential cracking groups — and Motiv 8 carried that tradition into the mid-1990s when many competitors had already disbanded. The international composition of the music credits reflects the borderless nature of the late-era scene, where geographic origin mattered less than shared commitment to the platform. Crossfire served as the group's primary coder for this production.

Sources: CSDb · CSDb Group

m8-10.asm 8.921 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:54
// 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:  $5500 (21760)
// IRQ handler:  $553c (irq_553c)
// IRQ handler:  $ea31 (loc_ea31)
// IRQ handler:  $5268 (irq_5268)
// IRQ handler:  $515a (irq_515a)
// IRQ handler:  $51d5 (irq_51d5)
// IRQ handler:  $5230 (irq_5230)
//
// Code: 2112 bytes, Data: 61376 bytes
// Labels: 828, Subroutines: 16
//
// Cross-references: all OK
// ============================================


// --- Region $1000-$1006 ---
.pc = $1000 "sub_1000"
// Referenced by: jsr from $501f

sub_1000:
        jmp loc_1048

smc_1003:
        jmp loc_107f                                // !SMC: modified by $1080

txt_1006:
        .text " "

// --- Region $1048-$1484 ---
.pc = $1048 "loc_1048"

loc_1048:
        lda #$01
        sta $038d
        lda #$0f
        sta smc_1425                                // SMC: modifies $1425
        ldx #$02

loc_1054:
        lda #$ff
        sta $0343,x
        lda #$00
        sta $0340,x
        sta $0334,x
        sta $0337,x
        sta $033a,x
        dex
        bpl loc_1054
        sta dat_1485
        sta $038c
        ldx #$14

loc_1072:
        sta spr_d400,x
        dex
        bpl loc_1072
        lda $16c8
        sta smc_1085                                // SMC: modifies $1085
        rts

loc_107f:
        dec $038d
        bpl loc_1089
.label smc_1085 = * + 1
        lda #$06                                    // !SMC: modified by $107b
        sta $038d

loc_1089:
        ldx #$02

loc_108b:
        jsr sub_1094
        dex
        bpl loc_108b
        jmp loc_140a
// Referenced by: jsr from $108b

sub_1094:
        lda $038d
        bne loc_10a1
        lda $0340,x
        beq loc_10a4
        dec $0340,x

loc_10a1:
        jmp loc_123f

loc_10a4:
        lda $033d,x
        sta $0340,x
        lda $16c2,x
        sta $fb
        lda $16c5,x
        sta $fc
        ldy $0334,x

loc_10b7:
        lda ($fb),y
        bpl loc_10e8
        cmp #$ff
        bne loc_10da
        lda #$0f
        sta smc_1425                                // SMC: modifies $1425
        ldy #$00
        sty $0337
        sty $0338
        sty $0339
        sty $0334
        sty $0335
        sty $0336
        beq loc_10b7

loc_10da:
        lda ($fb),y
        clc
        adc #$20
        sta $0337,x
        iny
        inc $0334,x
        lda ($fb),y

loc_10e8:
        tay
        lda $16ea,y
        sta $fb
        lda $16f7,y
        sta $fc
        ldy $033a,x
        inc $033a,x
        lda ($fb),y
        iny
        cmp #$80
        bcc loc_1122
        cmp #$c0
        bcs loc_1122
        adc #$80
        sta $033d,x
        sta $0340,x
        cmp #$3f
        bne loc_111c