When I was thinking about the music I wanted for ‘Super Skull Smash GO!’ I knew it had to be some tasty retro goodness. I wanted something authentic, preferably either synthesised in real time for that organic, raw arcade feel or synthesised on real retro hardware, as honestly preserved in the recording process as possible. The rules I laid down for myself were such that it needed to be ‘real retro’ in some way. I tried a few things along the way each one had it’s own merits and drawbacks.
Previous Approaches to Game Audio
In a couple of my previous games I’ve used real musical instruments from guitars to ukulele to percussive instruments to make music and effects for games. It’s something I very much enjoy doing but this approach I dismissed out of hand as it didn’t suit the style of game.
For meltdown moon the bulk of the music was composed on a DS lite using the KORG DS-10 software, which if you’ve never played with and you’re into retro analogue synths, you really should get hold of a copy. This worked very well for a spacey action puzzle game. The use of huge quantities of reverb and delay make the two instrument track sound like a hundred. I felt again that this was a bit too advanced for my little retro game.
My last two Android games have had music composed in Logic on a Mac using software synths however it’s very hard to produce something as simple as a PWM style monophonic synth and have it sound authentic. Much time was (and still is) spent debating the qualities of digital versions of classic analogue synthesisers and how hard it is to produce really warm sounding software synths. I’ve found it equally hard to get that pleasing, chiming tone of the hardware audio from a classic games console.
I’ve been experimenting a lot lately with KORG’s new cheap (some might say lo-fi) analogue synths; the monotribe and monotron. I’ve recorded from them in several ways ranging from direct line output to recording from their internal speakers in confined spaces. I really like their honest analogue sound. Using these devices would be bending the rules a bit since a digital game with analogue audio might jar a bit somewhere deep in our minds.
Breaking it Down
Depending on how you look at it Super Skull Smash GO! could be a NES game or a 2600 game or an EGA PC game. Lets take a look at these platforms and find out what they were actually capable of, in terms of sound to get a feel for what I should be aiming for.
[ It’s worth remembering here that a system’s audio capability needs to be shared between game music and sound effects. If a retro console could produce three channels of sound, then at least one of them would regularly be reserved for the sound effects channel, this way sound effects could be played without having to drop out an instrument in the background music. This doesn’t really apply these days, modern computers are quite capable of synthesising very complex soundscapes. ]
The Nintendo Entertainment System is famous still for it’s sound system, there are communities all around the internet who listen to NES game music for pleasure (abstract of their original games). They were capable of 5 channels of sound including two PWM and one triangle wave channel, one white noise channel and an DPCM channel.
I’ve never written any software for the NES but this feature set is reminiscent of some of the other nintendo platforms I’ve worked with so I’ve a fairly good idea of what this system is capable of in terms of music production (also I’ve listend to lots of nes music too, which helps).
The NES could quite easily produce two or three instrument music with percussion while also kicking out some simple sound effects for in game actions.
Making sounds like this (or even recording from a real NES) are a possibility, it fits with the feel of the game and they sound great.
The 2600 had a very simple sound system that was on the same chip was the graphics driver, it had two ‘voices’ with a very limited range of pitches. Making sounds like this would be easy and there would be no need to use a real device since their simple sound engine could be easily emulated.
The EGA standard allowed all 16 CGA colours simultaneously and substitution colours from a full pallet of 64! It was introduced in 1984 when separate audio cards were very uncommon and so PC speaker was all that was available. They can create little tunes, bleeps and bloops and I’ve even heard some very acceptable MOD playback from a pc speaker using software PWM synthesis but this really does not sound pleasing or retro, so, nothing to aspire to here.
So What are the Rules?
It seemed to me at this point that I should be trying to emulate something like a NES, I shouldn’t be using more than 5 channels of simultaneous audio and I should really go easy on the effects, since, none of the above platforms were capable of anything like that.
It was at this point that I remembered back to the experiments that I had done with pure data (or pd). Pure data is a graphical programming language that makes audio processing or synthesis a really pleasing and worthwhile endeavor. From basic building blocks of logic and maths comes a very powerful way to build simple synthesisers, sequencers and drum machines. (It’s used for much more besides but my interest in it was just for audio).
The other great thing about pd is that it’s very easy to embed a pure date ‘patch’ into a piece of software and have it synthesise in real time. The patch can be hooked into your app / game using libpd (of which there are many flavours). I did a few experiments and ultimately release a toy app called GAME BEAT DRUM. Audio synthesised within pd can change organically with the state of the game, because it’s being synthesised in real time, which is a great plus. I didn’t use pd in the end since there was another better solution available to me but I thought it was worth mentioning it here since I think it’s a powerful tool which I hope to exploit in the future.
The Obvious Solution
You’re probably asking yourself right now why this post is called ‘Sounds of the 90s’. You’re thinking that all the hardware above was released in the 80s. Well, you’re entirely correct. However there was an obvious solution to this problem that I’d not considered. I wanted a device that had 4 or 5 channels of audio, that could produce PWM style bleeps and bloops, but hold a tune. Something that I could use with authentic retro hardware and still compose for. You have it, thats right. The Nintendo DMG-01. The dot matrix gameboy. Audio hardware very similar to that of the NES, two channel square wave, one wave and one noise (with envelope!).
[ Before anyone jumps in and tells me, don’t fret, don’t worry and it’s not important. I am aware that the gameboy was available in 1989 (although not in the EU) but the bulk of the units shipped between 1990 and 1997 when the GBC was released. Even worse, the device I actually used to sample from was a 1995 model ‘play it loud’ yellow DMG-01. ]
Lots of music is still written for the humble grey gameboy, lots and lots. There are many tools to help you do it using real hardware too. That way to get the real authentic chiming PWM and gritty, shitty wave channel in all their 8 bit glory.
One famous tool is LSDJ, software that lets you write music directly on the device and perform in real time. I had access to a modern LDSJ cartridge and even a proper old gameboy.
Then I made the mistake. Then I broke the rule.
The Broken Rules
I used a piece of gameboy music I had already half composed for the soundtrack in the end. It fit rather well and was already set up for live play in LSDJ, so I used it. All of it. All four audio channels. The Horror. Yes I accidentally spend the entire audio budget on the music. But not to fear, rules are of course indented for breaking, in moderation.
I then spent some time trying to get a pleasing set of audio samples for the sound effects. I needed a good bouncy jump and a nice bright chiming coin collection sound. No matter how I configured the interments in LSDJ I couldn’t quite get the sounds I wanted and, since the feel of the game is what is most important, I broke another rule and fell back on classic analogue sound generation.
The sound effects for SSSG are almost all sampled from the KORG monotribe analogue synth. I did try some other things but the monotribe, at that time, made all the right noises.
In the End
So, with a really authentic classic games console soundtrack and slightly dubiously sourced sound effects ‘Super Skull Smash GO!’ was alive with retro noises. Some of them are genuine, all of them sound right. The feel of SSSG had been a hard fought battle with self imposed rules. I’m not sure I’ll ever be so restrictive again but the exercise has been fruitful. I hope you get a chance to play it very soon when it’s released.
Please do check out the trailer and let me know what you think.