SID vicious

internal://95b0abc6f85c9a4f2a3b75349d6d656a.png The Soundchip of the C=64 SID was invented in the early 80s and was an amazing little synthesizer. With only three oscillators and an 8-bit output there were quite some limits but some of the most inspiring sound experiments came from that age and names like Rob Hubbard, Chris Huelsbeck (who gave the world his SIDMon) or David Whittaker (yes he's the son of...) and many more I admire but don't mention here will never be forgotten.

Even today there are certain musicians who use the SID as a centerpoint of their music, like Welle Erdball for example, but there are many more.

When I was looking for a test field(?) for beast and for experimenting with that, the SID was my best choice. Beast will be able to simulate as many SIDs for you as your hardware is able to simulate. These SID-like synths (they are no real emulation like sidplay or so, but have only a simular synthesizer design) can be used over MIDI and produce a unique sound reminiscent of that time. Certainly it's not a real SID simulation. There will be many differences but if you find one it should be possible for you to make small changes to the model to reduce that by listening to the sound and twiddling with some parameters.

The original SID layout

internal://aa1328ec7fc63098ca2e05c4071e8dca.jpeg The SID had a very simple layout. You have three oscillators with triangle, saw or square waveforms, you can ring modulate two of them and with programming it's possible to change the frequency of the oscillators in realtime. This feature is no design feature of the SID so I did not implement it. If you try to simulate such effects you have to add additional LFOs to the construction. But thats seldom done on C64 and so it's no typical sound for the SID.

After the oscillators 1, 2, 3 you can choose one of the three waveforms and also the pulse length. Another feature of the SID is not implemented in the standard design and that's combining the waveforms. You can switch on more than one and the result would be the logical AND of the output. This result is seldom used on the original C64, so I skipped that, too. But could be certainly done with additional oscillators if you need it.

After that you have the ADSR amplitude modulation, and then the signal is going through the much more interesting filters. You have a low-pass, high-pass and band-pass filter. To emulate the band-pass I took a low and high-pass in series. The flanks of these filters are 12dB/octave or 6dB/octave on the SID. With the filters in Beast I am near that. But with the original SID with every chip behaving different on the filters an absolutely precise emulation is silly anyway. I have four of these chips here and each behaves differently.

Okay, in every Beast-mixer you can mix the signals with any level you like, whereas on the original SID only ON or OFF were possible. In the standard design I skipped the feature of sound-input through external sound sources that simply ran through the SID filters. You can add this if you need.

That's the basis we start off now.

The Beast-SID

I reduced the number of oscillators to two - one main oscillator and one ring modulator oscillator. Because Beast will do polyphonic sound automatically you only need one voice. With powerful hardware its no problem to hear the sound that 16 or 32 SIDs would have produced - and I certainly put a MIDI input in there. So you can play the SID with the beast-included sequencer or with any other sequencer that works on Linux or with the external devices you have.

Quite powerful isn't it?

internal://c2bb49567c63fdd3de89fed045e304a0.jpeg

The synth misses the 8-bit quantizer just before the output. With the next release of Beast you should be able to insert one if you need the original sound. Just as you may like to put a 4-bit quantizer for the volume-control. The SID only had 16 main-soundlevel...

The Beast Noisegenerator is a pure white one, the SID had a pink noise generator so I put a series of low- and highpass after that to get one. You have to twiddle a little bit with the parameters of the filters to gain the original pink noise sound. The db-flanks of the filters are a bit steep, the original one had something about 3db/octave. But anyway - you can get what you need from this one because with resonance you have much more control over filtering than you used to have. Filters create sound!

So we take a look to the three filters at the end of sound mixing and waveform oscillating. The four modules are lowpass, highpass and the low- and highpass series that I usually take for bandpass. The Biquads are very simple filters that will do what you need for this sort of synthesizer I hope.

MIDI features

First you certainly recognize the two MIDI-control units to the left. I have a default wiring in there that you may need to change for your own applications.

  1. pitch bending The pitch bending control is going into the main oscillator and also -through a adder with the modulate control- into the ringmod oscillator. So you have pitch bending through MIDI or sequencer whenever you like.
  2. modulation depth I used the modulation depth not for amplitude modulation (tremolo) or frequency modulation (vibration) but for manipulate the frequency difference of the ring oscillator with the main one. With this you can easy create powerful ringmod sounds or if you zero this you have the original sound of the main oscillator only.
  3. volume The main volume controls the last amplifier VolAMP thats giving the sound to the panner ant directly to the sound output. Quite straight forward.
  4. panorama This one controls where the sound should be heard on a stereo. Default is in the middle, you may put it anywhere between left or right.

The second MIDI control gives you additional modifications to the sound

  1. expression This one controls the pulse length of the main oscillator if you switched that to pulse waveform. Its a method to give the sound more harmonics while you play that.
  2. effect 1 With this parameter you may fade between original signal and ring modulated signal. On the original SID you have only 0 and 100, here you can fade from one signal smooth to the other. When there will be a XFade-Module available with Beast the something complicated construction here will be replaced by the simple module. The crossfader is build out of five single modules what makes the whole design a bit more complicated on the first glance than it really is.

Two parameters are left out for your own ideas here like manipulating the filter cutoff frequency or whatever.

Every parameter thats now controlled by MIDI controllers may also be controlled by LFO, means by slow swinging frequency oscillators or any other kind you like. Thats the way you can do with the SIDMon from Huelsbeck. Here I give control to these parameters by MIDI to make the SID playable in realtime.

Designer: Hanno Behrens