bburley
Experienced Member
I have been playing with every setting imaginable trying to decode TI-99/4A cassette tapes with CS1er with dismal results until I finally learned a few things and started to get excellent results.
I thought I would share some of those tips here.
For the initial recording, playback from a Mono cassette into a Stereo PC Soundcard - do not feed audio into both left and right channels - choose only one otherwise it seems to introduce extra distortion.
For the initial recording level, I have Audacity set to Mono 44100Hz 32-bit float and do not allow the peaks to exceed -6 dB.
After the recording is complete I apply an EQ filter to boost the level and reduce frequencies that are too low or too high.
The author of CS1er had a slightly different EQ that he was applying but it didn't seem to work a good as my modified version.
I started thinking about all of the comments about setting the tape recorder tone control to maximum treble and wondered if the upper cutoff frequency was set too low.
The two frequencies used are 689 Hz and 1379 Hz but a lower upper cutoff frequency may have been distorting some of the fast rise-times of the waveforms.
For whatever reason, I had much better results with my EQ version. The authors version is found in this thread.
After EQ is applied, the waveform looks like this.
Then I export the audio to WAV (Microsoft) as Unsigned 8-bit PCM.
For most files the default tuning settings work well. I have been using the "Natural" Recognition Method, but it seems that "Sine" and "Triangle 2" Recognition Methods also work well for TI encoded tapes.
One variation that I ran into was from a recording obviously made with a different tape recorder. It had higher levels causing me to reduce the upper gain of the EQ bandpass from 12 dB to 6 dB and then found that the waveform showed significant DC offset.
I had to use a DC offset correction from +11 to +17 to get a perfect read on a single pass.
Overall, these settings have been working so well that I was even able to decode in a single pass several files that the original TI-99/4A computer could not read without errors.
If you ever do have to use the Debug Record function, this nicely explains how to recognize a "0" or a "1" in the waveform.
That info and more is from https://www.unige.ch/medecine/nouspikel/ti99/cassette.htm
I have 36 tapes to go through, so perhaps I will see some additional variations yet.
I thought I would share some of those tips here.
For the initial recording, playback from a Mono cassette into a Stereo PC Soundcard - do not feed audio into both left and right channels - choose only one otherwise it seems to introduce extra distortion.
For the initial recording level, I have Audacity set to Mono 44100Hz 32-bit float and do not allow the peaks to exceed -6 dB.
After the recording is complete I apply an EQ filter to boost the level and reduce frequencies that are too low or too high.
The author of CS1er had a slightly different EQ that he was applying but it didn't seem to work a good as my modified version.
I started thinking about all of the comments about setting the tape recorder tone control to maximum treble and wondered if the upper cutoff frequency was set too low.
The two frequencies used are 689 Hz and 1379 Hz but a lower upper cutoff frequency may have been distorting some of the fast rise-times of the waveforms.
For whatever reason, I had much better results with my EQ version. The authors version is found in this thread.
After EQ is applied, the waveform looks like this.
Then I export the audio to WAV (Microsoft) as Unsigned 8-bit PCM.
For most files the default tuning settings work well. I have been using the "Natural" Recognition Method, but it seems that "Sine" and "Triangle 2" Recognition Methods also work well for TI encoded tapes.
One variation that I ran into was from a recording obviously made with a different tape recorder. It had higher levels causing me to reduce the upper gain of the EQ bandpass from 12 dB to 6 dB and then found that the waveform showed significant DC offset.
I had to use a DC offset correction from +11 to +17 to get a perfect read on a single pass.
Overall, these settings have been working so well that I was even able to decode in a single pass several files that the original TI-99/4A computer could not read without errors.
If you ever do have to use the Debug Record function, this nicely explains how to recognize a "0" or a "1" in the waveform.
That info and more is from https://www.unige.ch/medecine/nouspikel/ti99/cassette.htm
I have 36 tapes to go through, so perhaps I will see some additional variations yet.
Last edited: