Friday, 6 January 2012

Interview with Tim Follin

The following interview was conducted over e-mail between Tim Follin and Marcus Vinicius Garrett Chiado of Jogos 80, a Brazillian magazine. Some of the questions were provided by myself.

1) Some of the classic game music composers like David Whittaker, Ben Daglish, and Chris Hülsbeck were very good, but you were the one, Mr. Follin, who, in our humble opinion, did the best work of composing brilliant/climatic tunes. After all, you were truly capable of literally "blowing up" those very very limited sound chips! I mean, how did you do that? How come you were capable of "seeing" melodies, sound patterns and sequences that other people simply could not?

Well firstly thank you for that very flattering compliment! I think having talked to other video game composers over the years that my approach was different in that despite having an interest in music and in playing in bands and recording at home etc, I actually got into video game music through a separate interest in computer programming and writing little sound programs, so when I began writing music I never used any real instruments and I didn’t even use a music sequencer or anything close to one, I just used a machine code compiler. I didn’t even type in notes – I’d simply enter pairs of numbers, so for instance if I typed ‘42, 100’, ‘42’ would be the note and ‘100’ would be the duration in cycles per second (in the UK, 25 would be one second). So I never knew what key or tempo I was writing in, but that actually meant that I could think more chromatically, which suited my fondness for random key changes! Also I think partly because of that, I didn’t bring any preconceived musical ideas to it, I wrote whatever sounded good on the chip rather than trying to convert an idea that worked on the piano or guitar for instance. Having said that, I did take inspiration from listening to instruments like the tin whistle and ocarina, because they made essentially a sine wave-like sound which was easy to reproduce on the C64, and they were also monophonic instruments, so could be reproduced on a single C64 channel. I also liked the playing styles used by folk musicians, all the twiddles and little arpeggios, which were again relatively easy to reproduce. So I think I had a very pragmatic approach to video game music.

2) What are your music influences, Mr. Follin? You like Progressive Rock, right? Please, name your favourite bands and musicians. Do you like Electronic Music as well?

You’re right I’m afraid! My musical influences at the time were mostly prog-rock, with some straight forward rock; many of my ideas were stolen from records by early Genesis and Yes, and a lot was taken from Jethro Tull, which is probably where the folk-rock element came from. I was also a fan of Led Zeppelin and Black Sabbath, which I think may have been more of an influence when I started writing for the SNES. As regards electronic music, listening to some Vangelis recently made me realise just how much influence he had had on me too. He was making the sort of electronic music I grew up with. Probably fragments from all the records you ever listen to end up in what you write.

3) Please, tell us about your composing process at the time, Mr. Follin. How did you do to "capture" the climatic “vibe” of a game? How did you manage to compose for diverse machines such as the ZX Spectrum, the C64, the Amiga, and the Atari ST – sometimes composing for the very same title as, for instance, “Ghouls ´N´ Ghosts”? By the way, which of those systems were the "easier" ones to compose to and to work with?

My approach to getting the right ‘feel’ for the game was quite simple really, I just sat in on the production meetings and got a feel for what the game was trying to achieve, and if it triggered a train of thought or idea then I’d go with it, unless it didn’t work in which case I’d give up and start again! As regards writing for different formats, I don’t think it was actually ever that successful, and I don’t feel I ever made the most of the Amiga, I always found it difficult to write for and felt very limited by having to use very small samples and having too few channels to really be any use. I enjoyed writing for the SNES a lot, but I think still the C64 was the best. It always seemed to have just the right sort of limitations and the warmest sound.

4) If I´m not wrong, you could play up to five or six channels of music with a "simple" ZX Spectrum 48 computer with no dedicated sound chip whatsoever. How did you achieve that, Mr. Follin? You did design music software/drivers too, right?

That was how I started out writing video game music! I got a Spectrum as a Christmas present when I was about 14 and I soon became interested in programming, and because my older brother Mike had also started programming he was able to give me a machine code compiler, which I became immediately addicted to. I remember being fascinated by hearing some crude sampled speech on the Spectrum and thinking that if you can control the internal speaker it must be possible to create more than a simple ‘beep’ with it. I then discovered that all you could do with the internal speaker was switch it from one state to the other, there wasn’t even an amplitude setting, which is why in Basic all you could do was make it ‘beep’ at different frequencies – the machine code was simply switching it from one state to the other at a given frequency. So the first thing I discovered was that you could make a ‘phasing’ sound by continually altering the time between switching it on and switching it off while keeping the overall frequency the same. I wrote a tune with this that ended up on my brother’s version of Star Firebirds (he was then working for a small local video game company). I then experimented with making clicks at different frequencies and soon realised that you could have several clicks happening at the same time at different frequencies, which led to a four and then five channel sound program. I used it for quite a few different Spectrum games until the Spectrum 128k came out, which featured a crude 3-channel dedicated sound chip. By that point I was sick of hearing the ‘buzz’ sound the program made and was happy to embrace the new sound chip, despite its very basic, cheap door-chime quality! I wrote a basic sound driver for that, but from there onwards I was working for Software Creations and had the luxury of ‘real’ programmers to write my music drivers for me, which helped me a lot. However, although they had some useful effects such as ‘portamento’ to slide between notes, ‘vibrato’ and ‘wobble,’ which would automatically alternate between two or three notes at a given rate, I still always entered pairs of numbers into a compiler rather than notes into a sequencer, right until I finally stopped writing for sound chips!

5) Spectrum again. Your tracks seem to have some "signature" sounds which were very distinctive and peculiar. Could you, please, comment on that? The 48 Kb Speccy has been unofficially released in Brazil back in the mid-eighties. It got very popular over here.

This would certainly come from my particular sound driver, which I’m sure no sane person would have wanted to use!

6) Concerning the Commodore 64, which is my favourite classic computer, did you use the very same C64 machine to make your music? I mean, the C64 computer had been equipped with several different versions of the SID chip and each one sounded somewhat differently from the other. How did you manage that?

I did use an actual C64 coupled to a ‘development’ machine, which was a PC-like computer called an ‘Einstein,’ with the compiler software on it. The system meant that I could enter data on the Einstein and press a ‘compile’ button and more or less instantly hear the result on a real C64. As you say, all C64s sounded different, but I worked out early on that the main reason for this was the onboard filters rather than the SID itself. If I remember correctly, the filters were very simple resisters or capacitors bolted onto the board and because of a lack of quality control at Commodore they worked differently for each C64 – at least that’s the story I was told. That’s why I rarely used them in fact. I only ever used them in either a ‘sweeping’ movement, for instance making them move between fully ‘open’ to fully ‘closed,’ or I’d use them in one extreme state or the other, so for instance I’d often use them to create a muffled bass sound by setting them to their lowest level, which would mean they’d stay more or less the same for each C64. The rest of the chip was more or less consistent between C64s though.

7) This is linked with the question above: an English friend of mine, a C64 "freak", insists that you used a C64 with the 6581 sound chip for doing your music. Is that true? Did you know that on some of your tracks, the bass line cannot be heard on an 8580 SID chip?

No I didn’t know that! Oh well, it’s a bit late to worry about it now! I could only work with what I was given, although I knew there were other versions of the computer that were different. I did ask my bosses at Software Creations to try the music on other machines, but since it always worked on the machines we had, it was assumed it’d work on all machines. But that will almost certainly be the reason for why you can’t hear the bass lines – setting the low pass filter to its minimum setting may make it so low-pass that it’s inaudible on some C64s!

8) Do you still have the source to your music player routines, Mr. Follin?

I still have a few very old disks in a box with I think some C64 music on them, but they’re strange, non-standard format Einstein disks and I no longer have an Einstein, so there’s no way of me reading the disks anymore unfortunately!

9) The NES. Your music for the game “Solstice” is absolutely brilliant. Could you, please, comment about it specifically? Did you like composing for the NES system? Its sound capabilities were nice, right?

I did like composing for the NES, even though in many ways it felt like a step backwards from the C64. I think initially it annoyed me and felt very limiting, but once I’d mastered some basic ‘tricks,’ like how to have bass lines and drums on the same channel, it opened it up to more possibilities and in a way became quite a useful ‘instrument,’ though it did lend itself to certain sorts of music. That’s the thing with sound chips, the music I wrote, even the style, was always whatever worked on that particular chip, which is why it altered quite a lot between consoles. Solstice was basically the culmination of all the tricks I’d learned plus I also felt that I’d done a lot of different styles on the NES for some quite boring games, and I’d enjoyed writing Ghouls and Ghosts so much because it gave me an excuse to write some folk-rock, so when Solstice came along it gave me the excuse and opportunity. Incidentally, the intro to the tune was inspired by a YES concert I’d recently been to – Rick Wakemen started the concert playing something quiet and childish on the organ, then there was a big explosion as the whole band came in with ‘Starship Trooper’ – in fact if you listen to the first two chords of Solstice, they’re essentially the same! Also I should mention that most versions on Youtube are the 60hz versions which are too fast – it was written at 50hz (PAL) and should be heard at that speed!

10) How about composing for the "newer" gaming systems such as the Super NES, the Game Boy, and the Mega Drive? Your music for the unreleased Mega Drive version of “Time Trax” is absolutely fantastic, by the way. Did you like working with FM synthesis?

I always regretting not writing more on the Mega Drive – the music driver was written by a colleague and friend I’ve known for years and we created what was probably the best and most flexible music driver I’d ever used, but unfortunately I only got to use it once, and even then on an unreleased game! The Game Boy was essentially the NES chip, so there were no major challenges writing for that, but I did enjoy the SNES, both for its nicely filtered samples and its 8 channels, which made life so much easier! There wasn’t much sample memory, but that made it a challenge to see what you could squeeze into it. If there’s one thing I miss more than anything else from working during the early console era it’s the challenge of working out how much I can get out of a sound chip!

11) What is the favourite music track you´ve composed? Also, what´s your favourite classic game of all-time? How about a favourite classic computer? In my case, I love the music you did for LED Storm!

I’m not really sure what my favourite track from that era is to be honest! Probably Solstice or the title from Ghouls and Ghosts. My favourite game is more difficult because I’ve never been a big game player really, I think Jet Set Willy was the last Spectrum game I really played! However since having kids I now have to play Super Mario Galaxy and Lego Star Wars when they get stuck, so I’m getting quite good at those! The best computer for me is still the Spectrum, because it’s what I learned on and I still love its simplicity and cuteness!

12) Why have you stopped composing music for games?

The simple reason is that I stopped getting work, or at least enough work to make a living. But that wasn’t the only reason. The last offer I got sums it up. It was for a Disney game, and would have involved hiring a full orchestra and it could have been a great job – I created an orchestral demo using sample libraries and quite enjoyed writing it – but then it went to the inevitable committee and they gave me feedback on how it wasn’t quite ‘joyful’ enough or didn’t have enough ‘grandeur’ or was ‘too grand’ or whatever, and I could see a year of committee meetings and headaches ahead, so I pulled out before it went any further. I love working within limitations and making the most of them, but trying to appease several people with several different opinions and musical tastes all at once is an impossible task. Committees have the same effect on the creative spark as too much stoking has on a fire – more often than not it gets put out.

13) Could you please, tell us, about your record label?

You’ll have to fill me in about that!

14) Would you like to say something to your Brazilian fans? We love your work, Mr. Follin!

It’s utterly amazing to find out 20 years on that my video game music is still appreciated anywhere in the world, so to find it being appreciated in Brazil is especially amazing and quite staggering to be honest! And it’s nice to know that when I get to Brazil I’ll have someone’s door to knock on for a beer!

Wednesday, 4 January 2012

Reengineering alee650's SID Symphony II clone

For Christmas I got a SID Symphony II cartridge, at least what I thought was a SID Symphony II cartridge, being sold by an ebay seller by the name of alee650.

In fact these are clones, not of the final design but of an earlier pre-production design and unfortunately there are errors in the design as produced by alee650.

The genuine SID Symphony II cartridge can be seen in the following True Chip Till Death article.

First off, let me state that the basic SID function of the clone cartridge does work. What doesn't work is the access LED and there are problems with cooling the SID chip in the clone mounted in a transparent cartridge case.

The designer of the SID Symphony II, Vanessa Ezekowitz, was kind enough to furnish me with circuit diagrams of her SID expansions. There are internal and external expansions available, from her website Digital Audio Concepts. (back online after a recent SOPA protest)

The following diagram shows the difference between the access LED circuits of the alee650 clone and the genuine Digital Audio Concepts cartridge.

There is an additional problem with the alee650 clone, which is that the PNP transistor (2N3906) is inserted the wrong way round. The silkscreen on the PCB shows the transistor with the flat side on the top, i.e. turned away from the edge connector. In fact the transistor needs to be turned the other way, with the flat towards the edge connector. I confirmed this by studying the circuit diagram, the PCB layout and the transistor datasheet, which is available here.

Once this is turned round, the access LED starts to light although extremely faintly. A 1uF capacitor should be added between the collector of the transistor and ground. This stores enough charge to keep the LED lit for approximately 1ms (based on an RC time constant of 1K * 1uF) after each access. 6502 write cycles to the DExx area last half of one clock cycle (500ns) and there will be several of these accesses each frame (16ms or 20ms) for a stereo tune but not enough to make the LED visible without the capacitor.

At this point my cartridge basically worked as specified, but I was having some problems with dodgy 1541 disks so for the avoidance of doubt I decided to implement the rest of Vanessa's changes too. She reported instability with the original 2.2K base resistor and it went away with a 4.7K. It is possible the 2.2K could draw too much current from the 74HCT688 address decoder chip, and thus the chip select line to the SID might not be recognised as logic 0 during an access. The timing of this signal is fairly critical; it goes low on the processor's half of the clock cycle during an access to the selected address range. Swapping this for a 4.7K resistor reduces the base current to below 1mA which should be well within HCT specs.

The LED is not very bright with a 1K collector resistor, so to make it brighter Vanessa replaced it with a 47 ohm resistor. Myself, I thought 47 ohms was rather low for a current limiting resistor on an LED so I decided to take my inspiration from the C64 itself. When the cartridge is plugged into a standard breadbin C64 there is one LED on the cartridge and another for the C64's power light. I decided these should be of similar brightness when the cartridge is being accessed. The C64 uses a red LED and a 390 ohm current limiting resistor connected in series between 5V and GND. alee650's SID Symphony II clone uses a yellow LED so to compensate for a higher forward voltage drop I chose 330 ohm. Replacing the 1K collector resistor with 330 ohm made the LED significantly brighter, and you could now also see the LED pulsing slightly depending on the access pattern of the stereo SID being played.

The final problem with the alee650 clone is that of heat. The SID chip generates a large amount of heat and needs at least passive convection cooling not to run too hot. Some C64s have metal shields above the PCB with tabs contacting various chips including the SID. Others leave it unheatsinked but there is at least some space above the chips allowing convection cooling. alee650's clone mounts the cartridge in a transparent plastic cartridge case; very sturdy and convenient but unfortunately lousy for cooling. The chip is in direct contact with the top of the cartridge case when the two halves are screwed together; there is absolutely no space for convection cooling at all. On my clone there is now a melted spot of plastic on the top half of the case directly above the SID chip die (in the centre of the chip) and I only ran it in the cartridge case for an hour or two before noticing this.

So to preserve the life of my valuable working SID chips and avoid more melted plastic I decided to run the SID Symphony II clone as a bare PCB rather than in the cartridge case. This required unsoldering the signal wire of the RCA phono connector, taking the connector out of the case and soldering the wire back on again. The final pictures show the finished PCB with a 6581 2384 and all mods fitted.

Oh yes, and as everyone knows, the Commodore 64 turns 30 this year. Here's an article from a UK perspective.