Thursday, 3 October 2013

Answering the question "Can't this be done entirely in software?"

The YouTube vid has only been up a day and already I've been blown away by the response.  Thank you to everyone who has been in touch. 

I've seen the same question in a couple places now which is:  "Couldn't this be done entirely in my DAW/soft synth/VST/ etc".    The basic answer is "No".  The more complex answer is best explained by going through how the Atmegatron works.

The Atmegatron is 99% software.  But the 1% hardware is very important.  This is because the Atmega328P processor doesn't actually have an analogue audio output.  It has a Pulse Width Modulation output.   This is one way in which the Atmegatron has a unique sound.  To achieve this sound in software, the 65kHz Pulse Width Modulated output would need to be emulated.  This output is then filtered and gain/bias adjusted using analogue circuitry.  Again this would need emulating in software.
The way the Arduino code works would also need to be emulated in software.  There are 2 loops (a loop and an interrupt to be technically accurate!):  one updates the output waveform, one does everything else.  The way these 2 loops interact is another attribute of the Atmegatron's unique sound.  This would also need emulating in software.
So the long answer is in fact "Yes"!   But you would need to accurately emulate the entire Atmega328P processor and the analogue circuitry to do it.  Atmel (who make the Atmega) hold the secrets of how the Atmega could be emulated and until they release them, software emulation isn't really a possibility.

Oh yeah, and don't forget REAL SYNTHS ARE GREAT!!

No comments:

Post a Comment