MIDI dead-ends

brad sanders radioactive at geocities.com
Wed Feb 19 08:28:35 CET 1997


>thought i could tap into this CPU power by accessing it direct. But i have
>learned that the use of custom sound chips with a slow main CPU will make
>a synth APPEAR to have a powerful CPU. I see now, that i would have to
>overhaul the off-the-shelf synth to get the speed results i seek- and not
>make some simple bypass modification. 
>
>Of course, this does not help my situation. I could hardwire an analog
>synth to 12 or 16-bit DACS, and make a complex switching/patching system. 
>That would give satisfying results, but not without definite trade-offs. I
>would like to find some digital musical instruments that are NOT based on
>MIDI, that overcome the 7-bit resolution and slow speed that MIDI offers,
>that can be used for serious real-time control, and can be slaved to a PC
>for complex parameter manipulation. 

How about a "digital" synth with an analog interface?

I've been away for awhile, and found this thread just the thing!
Conicidentally, I'm in the process of hacking out code for a nifty
little project. What I'm hoping to do is create a digital front
end-on-a-chip, and then use this to drive a ladder VCF and a VCA.

The "front end" uses phase accumulators to generate oscillator
frequency, and so I'll have 1Hz control of freq, indexing into an 8
bit wavetable with fractional waveform synthesis (important); three
oscillators on a chip with sine, saw, tri and pulse selectable shapes,
each oscillator "mixed" by its own "virtual" ADSR/VCA, all summed and
fed into a single channel of a 16 bit audio DAC - which then supplies
the mixed VCO waveshapes to the "fun" processing circuitry (ie real
transistorized VCF and VCA) The other channel of the 16 bit DAC
provides freq CV. My plan is to provide enough control to be able to
overdrive the VCF while keeping an excellent S/N ratio at "normal"
settings. And, since each VCO has it's own envelope, I'm hoping this
will make up for the lack of a user reprogrammable sample table.
Nothing new, really - just my own version of the way things should
work.

Since I have 40 pins and only need about a dozen, I'm thinking about
just using a parallel port for control. The chip would just have a
bunch of "registers" which you access like any other peripheral chip:
ie you use the chip as a synthesis building block, and connect it to
whatever CPU you want - and control it however you like. The chip is
basically just a "custom ASIC" and the fact there's a CPU in there
should be completely transparent to the user. Using this interface, I
figure I'd have the bandwidth to update four "registers" each sample
period (approx 25uS).

The thing is, since there are four A/D inputs, one could also assign
these four voltages to control virtually any parameter - to any degree
- under computer control. Instead of running an LFO through MIDI, just
assign one input as LFO, patch in a (real, not "virtual") VCO to that
analog input, and tell the chip where to send the signal (osc PWM, VCF
freq, Q, VCA, osc amplitude, etc).

The problem I'm having is making a comittment. The chip is fairly
complex (3 VCOs, six ADSR generators, various mixer channels) but I'm
limited algorithmically to only a finite number of "presets." My
ultimate goal is to have, basically, a minimoog-on-a-chip (which will
allow me to make a rack of complete "minimoogmodules" for about fity
bucks a pop) but I'd like some feedback on this before I design myself
into a corner.  The chips are inexpensive enough (less than twenty USD
each), but they're a one-shot deal...

I COULD also provide a "standalone" mode wherein the chip could be
hung off the MIDI bus, given a handfull of parts and a primitive front
panel, and played just like any other voice - but then, what controls
should be on this front panel? It would require about thirty pots to
control everything!


> http://radioactive.home.ml.org <-------------------------------



More information about the Synth-diy mailing list