Real-time additive synthesizer that contains 16 oscillators, 16 amplitude envelopes, and 16 lfos. Each of the oscillators and lfos are capable of producing any of the following waveforms: sine, square, triangle, pulse, sawtooth, and noise. The amplitude envelope controls the attack, delay, sustain, and release. AddSynth responds to note-on, note-off, and program-change messages via a MIDI device. If no midi input device is connected, AddSynth will respond to keyboard input. This synthesizer is written in C++, using MFC and DirectSound, so DirectX 9.0 must be installed. A link to the DirectX 9.0 runtime download is located on the AddSynth download page.