2A03 Synthesizer
News
October 14, 2005
New version available for download (1.0.1.6). New features include:
PC keyboard support (simulates a MIDI keyboard controller)
ADSR envelope sliders changed from linear to logarithmic
October 9, 2005
First official release of synthesizer.
Web pages goes online.
Welcome
Welcome to the home of the 2A03 Synthesizer.
For those of you familiar with the 8-bit music scene, the 2A03 was the integrated circuit at the heart of the old Nintendo Entertainment System. The 2A03 was a custom IC containing, among other things, a 6502 processor and audio generator circuits. These circuits are what gave the NES it's unique sound.
Well, my interest in 8-bit music scene got me thinking "I wonder what it would sound like if I could connect my MIDI keyboard controller to my NES?". The 2A03 Synthesizer is the answer to that question.
The 2A03 Synthesizer consists of the following:
an "expanded" 2A03 emulator
MIDI keyboard support
a GUI for patch creation
The 2A03 emulator was "expanded" to make the synth more flexible and interesting. Certain limitations of the original 2A03 were removed, and additional features common on professional synthesizers were added.
About the Synth
My goal for this project was to capture the 2A03 sound, and then add features to make the chip more friendly to musicians. Call my program an enhanced "re-implementation" of the 2A03. It is an 2A03 freed from the limitations of the original hardware. The core 2A03 "sound" however is preserved and faithfully reproduced.
At it's core, the 2A03 contains 4 sound generation circuits:
triangle generator
2 square wave generators (each having a slightly different sweep algorithm)
noise generator
To ensure that the sound was authentic I first read various online documents describing detailed operation of the chip. I found Brad Taylor's online technical reference document to be an invaluable source of information for this project. Using this information I then determined what was and wasn't needed from an audio perspective.
I've basically determined that there are three things that give the A203 it's distinct sound:
harmonic content of waveforms (primarily a by-product of the 4-bit digitization of volume)
the random number generator used in the noise channel
sweep algorithm and timing
These are the portions of the 2A03 that are replicated exactly in the 2A03 Synthesizer.
waveform shape / harmonic content
waveform volume quantization
frequency sweep algorithm and timing
decay generation and timing
noise random number generator
Now, to "expand" the synthesizer I've added the following features. I've detailed how these features differ from a real 2A03.
I've considered possibly adding the following features in the future:
support for audio panning
addition of LFOs and what not to modulate the waveform generators
addition of filters, chorus effect, etc...
Feel free to email me at lordfrito at manfreda.org if you have any questions or comments about the synth.
Screenshots
Related Links
2A03 Chip Technical Reference Document :: Everything you wanted to know but were afraid to ask
2A03.org :: NES music archive
The Sounds of the A203 :: Tons of NSF tunes, tools, and other NES audio info