History
- Released
- 24 December 1996
- Code
- Quorthon, Tao
- Music
- Twoflower (Mikael Backlund) — "Rudolph"
- Group
- Triad — Sweden, founded 28 July 1986
A Christmas-themed intro from Triad, released on 24 December 1996 — a decade after the Swedish group's founding. Two coders collaborated on this production: Quorthon and Tao, the latter of whom appears across multiple Triad intros documented on Doc Snyder's page including the "Disco Intro" and "Front Intro." Twoflower composed an original SID tune titled "Rudolph," preserved in the HVSC under his real name Mikael Backlund. Seasonal intros were a tradition in the C64 scene — groups used holiday releases to demonstrate continued activity and goodwill toward allies. By late 1996, the C64 cracking scene had contracted sharply from its late-1980s peak, making this Christmas intro a nostalgic gesture from a group that refused to fade. Triad — abbreviated "3AD" — had been active for over ten years at this point, a longevity matched by few peers. Their debut intro appears as #12 Triad-01.
Sources: CSDb · docsnyderspage
// ============================================ // output - Disassembled Source // ============================================ // KickAssembler syntax // Generated by Restore 64 v0.2.1 alpha build 298, 2026-04-11 21:36:53 // https://restore64.dev by datucker / Rabenauge // // Load address: $0800 End: $491f (16672 bytes) // Crunched with Exomizer v2/v3 — depacked by emulation // Packer entry: $080b (via BASIC SYS 2059) // Entry point: $4800 (18432) // // Code: 1900 bytes, Data: 14772 bytes // Labels: 357, Subroutines: 5 // // Cross-references: all OK // ============================================ // --- Region $0f00-$0f2f --- .pc = $0f00 "sub_0f00" // Referenced by: jsr from $48d5 sub_0f00: adc #$08 sta $40 ldx #$00 loc_0f06: lda $0771,x sta $0770,x adc #$40 sta $0798,x inx cpx #$28 bne loc_0f06 loc_0f16: lda ($2b),y bne loc_0f24 lda #$00 sta $2b lda #$0c sta $2c bne loc_0f16 loc_0f24: sta $0797 adc #$40 sta $07bf jmp $e41b chr_0f2f: // === Charset data (1 bytes, $0f2f-$0f2f) === .byte $00 // char 0 (partial) // --- Region $1000-$1006 --- .pc = $1000 "sub_1000" // Referenced by: jsr from $484a sub_1000: jmp loc_1040 // Referenced by: jsr from $484d sub_1003: jmp loc_10c1 dat_1006: .byte $01 // . // --- Region $1040-$1277 --- .pc = $1040 "loc_1040" loc_1040: asl asl asl tay ldx #$00 loc_1046: lda $17cb,y sta $172e,x sta $1734,x lda $17cc,y sta $1731,x sta $1737,x iny iny inx cpx #$03 bne loc_1046 lda $17cb,y sta $1747 lda $1020 beq loc_1095 ldx #$02 loc_106c: lda $17cc,y sta $100b and $173a,x sta dat_1006,x dex bpl loc_106c bit $100b bpl loc_1095 ldx #$00 loc_1082: lda $17cd,y sta $1734,x lda $17ce,y sta $1737,x iny iny inx cpx #$03 bne loc_1082 loc_1095: ldy #$00 tya loc_1098: sta $d400,y iny cpy #$17 bne loc_1098 tay loc_10a1: sta $1014,y iny cpy #$0c bne loc_10a1 ldy #$14 loc_10ab: sta $1748,y dey bpl loc_10ab lda #$01 sta $1794 lda #$03 sta $1746 lda #$0f sta $1009 rts