SIDin #6 — Jan Diabelez Arnt Harries (Rambones) interview (Stefano Tognon, 2004)
An interview with jan-harries — Danish demo-scener (The Supply Team), Soundmonitor composer "Rambones", the ripper behind the Ripped-Off series and a founding member of the hvsc team — made in February 2004 for Stefano Tognon's sidin. Its centre is a first-hand account of how HVSC grew out of PlaySID packs and the NemeSIDs collection, and a practical lesson on how to find and rip a music player from a running C64 program.
Key claims#
- Person: full name Jan Diabelez Arnt Harries, born 1969-01-12 in Nyborg, Denmark; an IT technician and programmer, 35 at the time of the interview; signs as "rambones/nmioaon". His C64 tunes are in HVSC under
/VARIOUS/M-R/Rambones/. - The Supply Team (TST): he and TSN learned BASIC in 1985; Kaze, an assembler programmer who spent a year on "Kaze Demo #2", founded the group with them; Wizz (assembler) and Hagar (Koala Painter graphics) joined; "the first TST demos that were widely spread" date from the second half of 1986. He wrote his own music "using the Soundmonitor from Chris Hülsbeck" (soundmonitor, chris-huelsbeck). In 1987 Kaze and Wizz left for Wizax 2004, later Zetrex 2005; a quarrel over the continued use of Kaze's assembler routines produced the "Federation Against Supply Team (F.A.S.T.)", which "made TST even more famous"; after eight months the groups reconciled and co-produced the demos "Mip Mip Police!" and "No System". "TST was never a cracking group, we were one of the first real demogroups in Denmark"; their heroes were Sodan, 1001 Crew, The Judges and Dutch-USA Team. 1988–89 all members moved to Amiga 500/2000 demos for about a year; he used an A500, then an A1200 until 1996, then a PC.
- Ripping, 1986–89: he started in 1986 by ripping from TMC's "Game Music #1–9" (easy, and it taught him "what to look for"), then from games; in late 1988 the method was reset,
F2into the SpeedDOS opcode monitor, and finding the music by the ASCII pattern of the note data ("the player was usually in front of the data"); a "Handic" cartridge monitor "very often fucked up the memory". From 1987 he spread his rips as "Ripped-Off #1–2xx" — about 200 releases from early 1987 to late 1988 ("others … all stopped before they reached 20 rips"); eight disks of rips by 1989. The only comparable ripper was Omega Supreme (Olav Mørkrid) of The Shadows, Norway, met at the Danish Gold party in 1988 (where TST released "New Limits"), who had ripped Cauldron II — which Harries has never managed. Total by 2004: "around 5000 tunes". - How HVSC was born (his account): 1990 — the Amiga demo "The 100 Most Remembered C64 Tunes" by Per Håkan Sundell and Ron Birk with a built-in SID 6581 emulator; 1991 — their PlaySID with about 300 tunes. His friends Wizz and Brian Nevad "stole" his C64 and disks, transferred 189 tunes to PlaySID 2.0b and released "Addition", the first pack from outside the PlaySID team; with their self-made cable he released eight "Ripp Off #1–8" packs from 1991 to 1995. Nemesis1 from Iceland merged all packs into "NemeSIDs" — at first Harries was angry that his work was "presented as his own", then ripped more "to 'complete' the collection". In 1996, on a PC, he exchanged everything with Michael Schwendt (author of SIDPLAY for the PC); The Shark of INC (David Greiman) was about to release "the equivalent of NemeSIDs for the PC/SIDPLAY"; Harries added his 1364 rips and became co-author of the High Voltage SID Collection together with BOD/Talent and Michael Schwendt. Shark e-mailed composers, which brought never-released tunes and solved "the mysteries of who really composed the various tunes" — "Something that NemeSIDs wasn't really good at". Later growth came from composer feedback, new team members ("Rippers, coders, credits and STIL experts"), the HVSC update tool and a platform-neutral archive. His 1993 estimate was about 10,000 tunes to rip; "Today we have more then 25000!" — thanks to Gamebase64 and the emulators CCS64, vice, Frodo and A64. "This magazine you're reading right now, is a direct result of all these events."
- Advice for rippers: get a good machine-code monitor (he uses Action Replay 6). Music "is a portion of the running program, that writes data to the registers of the SID chip. The addresses go from $D400–D7FF, usually only the D400 area is used." Start with a one-tune demo: reset,
I*0800in Action Replay to view memory as PETSCII, learn to tell code from charsets, sprites and screen data; find the interrupts — writes to$0314/$0315or$FFFE/$FFFF, an interrupt "usually ends with LDA #$01, STA $D019, JMP $EA31 or RTI"; among the subroutines it calls, "STA $D400,X or Y, and STA $D418/D412" mark the music player; find exactly how the player is called and what runs before the interrupt is set up (the init, which "often needs to reset the starting point of the music to a zero"); save the parts, clear memory, reload and play them from a small interrupt harness. His harness:SEI,LDA #$35 / STA $01(KERNAL off, so the player may live under$E000–$FFFF), the IRQ vector at$FFFE/$FFFF,STX $DC0E(stop the CIA timer — "we want to use a PAL raster-interrupt"),$D01A = 1,$D011 = $1B,$D012 = $33,LDA #$00 / JSR music_init("maybe the musicinit needs a number, maybe not, maybe in X or Y reg instead"),CLI, an endless loop; the interrupt sets$D020to one colour,JSR music_play, restores the colour "so you can see how much rastertime the music uses!", thenSEC / ROL $D019 / RTI(sid-player-routine). Assembling the parts into one file "is a whole different science". "If at first you don't succeed, try and try again!"; and load a tune from HVSC into the emulator to see what a player looks like. - Editors (2004): "The only editors using notation are aged (1982–1986), and don't offer sophisticated sound creation"; "JCH and SDI (SID Duzz It, from SHAPE) are the best ones I've seen, and I now only use SDI"; Cybertracker from NoName is "very good … for beginners" because it shows ADSR and filters graphically (chordian, tracker).
- Standard questions: real machine for games, demos and listening, emulators for ripping and development ("by a single keystroke enter a monitor … while the program is running"); 6581, "not because it's the best (coz actually it isn't, technically), but because it's the chip that my C64 came with"; favourite composers: rob-hubbard, martin-galway, Ben Daglish, david-whittaker, fred-gray, Mark Cooksey, jeroen-tel, charles-deenen, Drax, JCH, laxity, Banana/TEK.
- After the C64: MOD, XM and MP3 music since 1988, released on janharries.com — "I proved to be a much better composer on the PC/Amiga than on the C64! This was due to the fact that the TRACKER was invented by Karsten Obarski in 1987." Contact for HVSC contributions: hvsc@c64.org; TST's C64 (1985–1989) and Amiga demos were offered as D64/ADF archives.
Practical takeaways#
- A ripper's checklist, still valid in an emulator's monitor: locate the IRQ vector writes, follow the calls to
STA $D400,x-style code, separate init from play, reproduce the exact call convention, then test in a minimal raster-IRQ harness with a border-colour rastertime meter. - The border-colour trick (
$D020before and after the play call) is the same rastertime meter Deenen's test harness and the SID-Wizard export use (sid-player-routine).
Notable quotes#
"It is a portion of the running program, that writes data to the registers of the SID chip."
"This magazine you're reading right now, is a direct result of all these events."
Relevance to the wiki#
First-hand history of hvsc (PlaySID packs → NemeSIDs → HVSC, the 1364-rip seed, 10,000 vs 25,000 tunes), a concrete ripping method for sid-player-routine, a 2004 snapshot of the C64 editor scene (JCH, SID Duzz It, Cybertracker) for tracker-scene-history, and the person page jan-harries.
To verify#
- (unverified) The file names of his self-declared worst and best tunes are garbled in the text extraction; the fragments read
Brev_til_…,Zound_dig.sidandMuzak_3.sidunder/VARIOUS/M-R/Rambones/— which is which cannot be read from the PDF text. - (unverified) The interview's editor names — "JCH", "SDI (SID Duzz It, from SHAPE)", "Cybertracker from NoName", Odin/others — have no pages yet; JCH's editor is the one on chordian.
Pages touched#
jan-harries · hvsc · sid-player-routine · tracker-scene-history · soundmonitor · chordian · sidin