Note: When downloading files, click the circled icon at the top of the new page to retrieve the file.

Development Tools

Some tools I wrote in the early 1990's

    • TMS320C30 Assembler and Linker for PC command shell as30dos.zip
    • TMS320C30 Assembler and Linker source for most platforms as30r27.zip



Code Development Board

Click on image for larger view

Code: See the software projects

Schematic: Not translated

Device: TMS320C30

This project is a board that I wire wrapped together to allow me to play with digital signal processing of audio in real-time. I put this together in 1991 using parts left over from a giant graphics accelerator that we made at HP. The board has 128K words of static RAM and a Crystal CODEC. Notice the stereo RCA phono jacks on the right. The big gray connectors on the left connect up to my ATARI 1040ST computer through a custom interface that I built in the late 1980's. The board also contains a MIDI interface that connected directly to the 1040ST computer.

MIDI Tone Module

Click on image for larger view

Code: midi.zip (just the source fmaudio.asm )

Schematic: Not translated

Device: TMS320C30

This project is a stand alone music synthesizer using frequency modulation. The software supports up to 5 simultaneous voices. There are 128 voice timbres that can be modified using MIDI commands. The only connections are MIDI in/out ports, power and audio in/out. The code and default voice timbres are stored in one EPROM. The voice timbres can be edited using graphical software that I wrote for the Atari 1040ST. The tone module sounds pretty good and can make some very strange sounds or play Mozart like a charm.

Software Projects

Library of functions

Code: lib.zip (some of the source dspdrive.asm )

This library is used by most of the following projects. It contains code to parse midi packets and handle the DSP loop of reading the A/D and writing the results

Echo Generator

Code: delay.zip (some of the source delay.asm )

This code combines the stereo input with a delayed version of the input and sends it to the output. The amount of delay and the blending function are controlled through MIDI system exclusion commands. Very easy to create a flanger effect.

IIR Filter (Record Scratch Remover)

Code: filter.zip (some of the source filter.asm )

This code creates a 5th order low pass filter to remove noise off of 78 RPM records. The results were pretty good but best on some old jazz piano records.

FM Audio Synthesizer

Code: midi.zip (some of the source fmaudio.asm )

This code implements a synthesizer that is controlled with MIDI commands. I built a stand-alone version of the hardware to run this code.

Spinning Speaker Effect

Code: spinit.zip (some of the source spinit.asm )

This code creates an effect that makes the audio sound like it is coming from a speaker mounted on a spinning platform.