A parallel port synthesizer !

Downloadet from www.buchi.de , now this site is death :(

ParallelSID with connecting cables
The ParallelSID and itґs connections: Power (220 VAC), AudioOut, ParallelPort.

Some time ago i had the wish to do some parallel port raping again. I was always thinking that MIDI is not the best way of connecting sound equipment together, and one day a friend shouted out "how about a parallel port synthesizer?".
So, the idea was born. With the help from some kind list members from the Synth-DIY mailing list i managed to find out how to make the SID working outside of his home, the C64.
I do *really* hate wall warts, so i have designed a simple power supply for the +5 and +12 Volts the SID needs; it is mounted directly under the ParallelSID board.

View from the side
Side viev: The power supply board on the bottom, the logics/audio board on top of it.

Behind the large caps, there are 7812/7805 regulators and the rectifiers - just a simple ho-hum P/S. Note the SubD-25 connector on the top left - as i did not find a connector for PCB mount, i had to scavenge one from a cable and mount it to the board via distance bolts and screws.

View from above
Top view: SID and output decoupling cap on top, 8255 and PC connector on the bottom.

The Clock for the SID comes from a 1 MHz crystal oscillator, the 8255 is used to have enough I/O lines to simulate a complete 65XX state machine with adress lines, data lines, CS and Reset lines (uses 2 of the 3 ports of the 8255 - but i used it because it is less a hassle than 2 separate latches with the need to put data wires to all of them).

For more technical data about the connections, go here.

Software ScreenShot
Register Editor and 16-step sequencer

Naturally, to make it work i had to write some software to set the SIDґs registers from the PC. So i wrote some low level routines to cope with the ParallelPortRegister to SID-Register adress translation and State line driving, so that i could then access the registers directly from Visual Basic using simple functions like SetSidRegister(Regno,Value).
The software was later upgraded by a sequencer to play simple melodies automatically. Every step of the sequencer contains a complete set of SID registers, so there are enormous possibilities.
If you want to check it out and have Visual Basic 6 (it should run with V5, too), you can Download (51 KB ZIP file) it here.


Rambler's Top100