#648

Madonna Cracking Group [MCG] 02

Madonna Cracking Group [MCG]

1.692 lines of code

RasterbarsRSTRMusicSIDSpritesSPRT

History

Group
Madonna Cracking Group — Germany, founded 1986

The second numbered intro from Madonna Cracking Group, a German cracking, demo, and importing outfit founded in 1986 and dissolved in January 1989. CSDb documents over 300 releases from MCG, whose core membership included coders Tommy, Tom, and Maniac, alongside crackers Andy and Marc, and graphicians Scratcher, Mr Stack, and Bros. The group organised at least two copy parties — in December 1987 and May 1988. No individual credits for code, music, or graphics have been confirmed for this particular intro. After arrests disrupted the group's operations, MCG continued under the new name Paramount — the same group co-founded by Mr. Fiend, who also appears at #760 Mr. Fiend-01. MCG's other ranked entries — #71 MCG-08, #383 MCG-06, and #860 MCG-07 — span a wide quality range.

Sources: CSDb Group · intros.c64.org

mcg-02.asm 1.692 lines
// ============================================
// output - Disassembled Source
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:35:56
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $28ff  (8448 bytes)
// Crunched with Cruncher AB — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $2200 (8704)
// IRQ handler:  $1525 (irq_1525)
//
// Code: 1390 bytes, Data: 7058 bytes
// Labels: 125, Subroutines: 3
//
// Cross-references: all OK
// ============================================


// --- Region $1340-$1348 ---
.pc = $1340 "sub_1340"
// Referenced by: jsr from $1543

sub_1340:
        sta $d019
        lda #$1b
        sta $d011
        rts

// --- Region $1400-$1437 ---
.pc = $1400 "loc_1400"

loc_1400:
        lda $3fff
        sta dat_1465
        lda #$00
        sta $3fff
        jsr sub_1500
        lda #$ef

loc_1410:
        cmp $dc01
        bne loc_1410
        sei
        jsr $fd15
        jsr $fda3
        jsr $ff5b
        lda #$00
        sta $d418
        jsr $e544
        ldx #$00

loc_1429:
        lda scr_1437,x
        sta $03b7,x
        inx
        cmp #$21
        bne loc_1429
        jmp $03b7

scr_1437:
        // === Screen RAM (1 bytes, $1437-$1437) ===
        .byte $78                                   // scrcode: .

// --- Region $1500-$1557 ---
.pc = $1500 "sub_1500"
// Referenced by: jsr from $140b

sub_1500:
        sei
        ldx #$01
        stx $d01a
        dex
        stx $dc0e
        lda #$7f
        sta $dc0d
        lda #$1b
        sta $d011
        lda #$25
        sta $0314
        lda #$15
        sta $0315
        lda #$01
        sta $dc05
        cli
        rts

irq_1525:
        nop
        ldx #$00

loc_1528:
        ldy dat_1000,x

loc_152b:
        dey
        bne loc_152b
        lda $1040,x
        sta $d020
        sta $d021
        inx
        cpx #$30
        bne loc_1528
        lda #$4a
        sta $d012
        lda #$01
        jsr sub_1340
        lda #$58
        sta $0314
        lda #$d8
        sta $d016
        lda #$12
        sta $d018
        jmp $ea81

// --- Region $1800-$1bda ---
.pc = $1800 "sub_1800"
// Referenced by: jsr from $2287

sub_1800:
        tax
        lda $1d8c,x
        sta $1d89
        sta $1d8a
        sta $1d8b
        sta $1882
        lda $1d8e,x
        sta $185e
        lda $1d90,x
        sta $18b7
        lda $1d92,x
        sta $1863
        txa
        asl
        sta smc_182a                                // SMC: modifies $182a
        asl
        clc
.label smc_182a = * + 1
        adc #$00                                    // !SMC: modified by $1824
        tax
        ldy #$00

loc_182e:
        lda $1d9e,x
        sta $1d98,y
        inx
        iny
        cpy #$06
        bne loc_182e