TI DSP
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
Links
- The main TI web site www.ti.com
- Where to go for help comp.dsp
Hardware
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.