#786

Ruling Company, The [TRC] 09

Ruling Company, The [TRC]

449 lines of code

History

Released
November 1991
Code
Trax
Group
The Ruling Company [TRC] — Netherlands, founded September 1988

The ninth intro from The Ruling Company, released in November 1991 with code by Trax — a member who also contributed extensively to the group's joint releases with Success (SCS+TRC). Founded in the Netherlands in September 1988, TRC maintained a website at scs-trc.net reflecting their long-standing alliance with the German group Success. No music or graphics credits are listed on CSDb for this particular intro, and no SID data was identified. Trax was a key figure across TRC's output, contributing code, graphics, and charset work to multiple intros documented on Doc Snyder's page under the SCS+TRC banner. A joint SCS+TRC intro appears at #785 SCS_TRC-14, which features different contributors. The intros.c64.org listing attracted comments from Rough and ZTH/Abnormal. By November 1991, TRC had been active for three years and was building toward the partnership with Success that would define both groups' later output.

Sources: CSDb · intros.c64.org

trc-09.asm 449 lines
// ============================================
// output - Part 1 of 2
// ============================================
// KickAssembler syntax
// Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:36:52
// https://restore64.dev by datucker / Rabenauge
//
// Load address: $0800  End: $0c3f  (1088 bytes)
// Crunched with Cruncher AB — depacked by emulation
// Packer entry: $080d (via BASIC SYS 2061)
// Entry point:  $0980 (2432)
//
// Code: 316 bytes, Data: 772 bytes
// Labels: 70, Subroutines: 5
//
// Cross-references: all OK
// ============================================


// --- Region $0980-$0a49 ---
.pc = $0980 "main_0980"

main_0980:
        lda #$0f
        inx
        jsr $e536
        jsr sub_0abb
        stx $fd
        dex
        stx $ff
        stx $d020
        stx $d021

loc_0994:
        lda $0868,x
        sta $0450,x
        sta $06a8,x
        lda $0880,x
        sta $0490,x
        inx
        bne loc_0994
        ldx #$40

loc_09a8:
        lda $093f,x
        sta $07a7,x
        dex
        bne loc_09a8
        ldx #$27

loc_09b3:
        lda #$06
        sta $0680,x
        sta $0590,x
        sta $0400,x
        sta $0428,x
        dex
        bpl loc_09b3
        ldx #$00

loc_09c6:
        lda chr_0ad6,x
        jsr sub_0a90
        sta $05e6,x
        inx
        cpx #$1c
        bne loc_09c6
        lda #$30
        sta $d012

loc_09d9:
        sei
        jsr sub_0a9e
        jsr sub_0a2b
        lda #$8a

loc_09e2:
        cmp $d012
        bne loc_09e2
        lda #$17
        sta $d018
        lda #$a2

loc_09ee:
        cmp $d012
        bne loc_09ee
        lda $32
        sta $d016
        lda #$b2

loc_09fa:
        cmp $d012
        bne loc_09fa
        ldx #$0a

loc_0a01:
        dex
        bne loc_0a01
        lda #$13
        sta $d018
        lda #$c8
        sta $d016
        jsr sub_0a5d
        lda $dc01
        cmp #$ef
        bne loc_09d9
        lda #$15
        sta $d018
        sei
        jsr $e51b
        jsr $fda3
        jsr $fd15
        cli
        jmp $fce2
// Referenced by: jsr from $09dd

sub_0a2b:
        dec $fd
        beq loc_0a30
        rts

loc_0a30:
        lda #$03
        sta $fd
        lda $ff
        and #$0f
        sta $ff
        tax
        ldy #$28
        lda chr_0a49,x

loc_0a40:
        sta $d9e0,y
        dey
        bne loc_0a40
        inc $ff
        rts

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

// --- Region $0a5d-$0ad5 ---
.pc = $0a5d "sub_0a5d"
// Referenced by: jsr from $0a0e

sub_0a5d:
.label smc_0a5e = * + 1
        lda #$00                                    // !SMC: modified by $0a67
        beq loc_0a65