#72

Paramount 12

Paramount

1.764 lines of code

RasterbarsRSTRMusicSIDScrollerSCRL

History

Released
October 1989
Music
Red (Jeroen Kimmel) — "Red Mokiz"
Graphics
Scratcher
Group
Paramount — Germany, founded January 1989

Red (Jeroen Kimmel) strikes again — the Dutch musician's "Red Mokiz" provided the soundtrack for this German group's intro, one of many productions where Kimmel's work elevated otherwise modest releases. Scratcher contributed the graphics. Paramount was a German group founded in January 1989, active during the late golden age of C64 cracking. No coder is credited on CSDb, which is unusual for a group of this era. Doc Snyder's page documents Paramount's numbered intro sequence. Released in October 1989, this arrived when the German scene was still highly productive even as the broader C64 market was declining. Kimmel (Red) was arguably the most internationally active Dutch SID composer — his work appears in British, German, American, and Dutch group releases across the entire 1987-1991 period. The HVSC preserves this composition.

Sources: CSDb · docsnyderspage

paramount-12.asm 1.764 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-01 10:59:28
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $07ee  End: $1be1  (5108 bytes)
// Crunched with Beta Dynamic v3 — depacked by emulation
// Packer entry: $080b (via BASIC SYS 2059)
// Entry point:  $17a0 (6048)
// IRQ handler:  $17ec (irq_17ec)
//
// Code: 1317 bytes, Data: 3791 bytes
// Labels: 161, Subroutines: 14
//
// Cross-references: all OK
// ============================================


// --- Region $0ec0-$0ef3 ---
.pc = $0ec0 "sub_0ec0"
// Referenced by: jsr from $182c

sub_0ec0:
.label smc_0ec1 = * + 1
        lda $0f93                                   // !SMC: modified by $0ee9
        sta $d022
.label smc_0ec7 = * + 1
        lda $0fb3                                   // !SMC: modified by $0eec
        sta $d023
.label smc_0ecd = * + 1
        lda $0fd3                                   // !SMC: modified by $0eef
        sta $d024
        inc smc_0ec1
        inc smc_0ec7
        inc smc_0ecd
        lda smc_0ec1
        cmp #$b0
        beq loc_0ee3
        rts

loc_0ee3:
        ldx #$90
        ldy #$b0
        lda #$d0
        stx smc_0ec1                                // SMC: modifies $0ec1
        sty smc_0ec7                                // SMC: modifies $0ec7
        sta smc_0ecd                                // SMC: modifies $0ecd
        rts

chr_0ef3:
        // === Charset data (1 bytes, $0ef3-$0ef3) ===
        .byte $00                                   // char 0 (partial)

// --- Region $0f00-$0f04 ---
.pc = $0f00 "sub_0f00"
// Referenced by: jsr from $1862

sub_0f00:
.label smc_0f01 = * + 1
        jmp loc_0f1b                                // !SMC: modified by $0f4d

chr_0f03:
        // === Charset data (2 bytes, $0f03-$0f04) ===
        .byte $a9,$00                               // char 0 (partial)

// --- Region $0f1b-$0f8c ---
.pc = $0f1b "loc_0f1b"

loc_0f1b:
        lda #$00
        beq loc_0f20

loc_0f1f:
        rts

loc_0f20:
        jsr sub_0f81
        bcs loc_0f1f
        lda #$c7
        sta $30
        ldx #$00

loc_0f2b:
        lda $05e1,x
        sta $05e0,x
        inx
        cpx #$27
        bne loc_0f2b
        ldy #$00

loc_0f38:
        lda ($31),y
        cmp #$00
        bne loc_0f47
        sty $31
        lda #$1a
        sta $32
        jmp loc_0f38

loc_0f47:
        cmp #$f0
        bne loc_0f53
        lda #$03
        sta smc_0f01                                // SMC: modifies $0f01
        jmp loc_0f7a

loc_0f53:
        cmp #$f1
        bne loc_0f5f
        lda #$ff
        sta smc_0f85                                // SMC: modifies $0f85
        jmp loc_0f7a

loc_0f5f:
        cmp #$f2
        bne loc_0f6b
        lda #$fe
        sta smc_0f85                                // SMC: modifies $0f85
        jmp loc_0f7a

loc_0f6b:
        cmp #$f3
        bne loc_0f77
        lda #$fc
        sta smc_0f85                                // SMC: modifies $0f85
        jmp loc_0f7a

loc_0f77:
        sta $0607

loc_0f7a:
        inc $31
        bne loc_0f80
        inc $32

loc_0f80:
        rts
// Referenced by: jsr from $0f20

sub_0f81:
        lda $30
        clc
.label smc_0f85 = * + 1
        adc #$fe                                    // !SMC: modified by $0f59, $0f65, $0f71
        cmp #$c0
        bcc loc_0f8c
        sta $30