Cassette tape software - a follow up
- Summary of responses to my cassette tape questions.
Thanks to Herb Johnson, Ken, Mike W., Ray, Jonathan, Bill and Sridhar
for replies. I have tried to organize by rough "topics" and include some follow-up questions and comments.
P.S. it was pointed out I need to introduce myself - will do in separate post!
making a digital-audio "backup" is probably a good first choice. If you
have any access to any vintage hardware, you can create test tapes from
the "backups" to verify your results before risking your original tapes.
VIC 20 tapes can be backed up to CBM disk on a 1541.
I documented the procedure as I did it on a PET, but it will work just as well on the VIC 20.
But frankly, I don't know of many efforts to *verify* that some WAV file,
actually *works" on vintage hardware. Again - check specific Web sites per brand.
- Doug W. - If I supply an audio file (WAV, FLAC, you pick) does anyone
have the hardware and time to download it, record to cassette, and attempt
a load on original hardware? The file would likely be a 2 minute WAV
under 1MB in size.
make sure there are not already good archives of the tapes you have,
not all may need to be archived as urgently as others.
You can look at each "brand" of computer and look for Web sites where
individuals have established archives on behalf of that brand, or model.
What you'll find, amounts to the same sort of responses you've had in this thread.
- Doug W. - I have found a few such archives, some with well-cataloged
content, and some that effectively hide a list of their collection. I would
be very interested in learning about the existence of any archives that
people know about.
Most computers like the
Timex, and machines of that era, use some form of Frequency Shift
Keying to encode the digital data as audio, which was recorded on
common audio cassettes. I think Commodore may have used some sort of
a more direct digital method, which is why they had their own
there never was a single original standard to encode digital files
into audio signals. Each manufacturer developed their own methods,
and their own "file systems". Such standards as were suggested for
encoding 1's and 0's, didn't necessarily cover how to represent
filenames or directories (if any). Translation: you cannot "play"
tapes from one computer brand, on another brand's computer. There
was a kind of "universal" standard - Kansas City - but it was popular
for a limited time.
Many "archives" are made by people with no access to running hardware.
So they simply save the audio digitally, in some WAV or similar format.
Those formats already sample at rates (44 kHz) and resolutions ("16 bits")
far beyond what's likely necessary to recover the binary data. After all,
these were recorded on inexpensive 1970's cassette recorders, with limited
fidelity and full (by today's standards) of wow and flutter. Data rates
in the era were on the order of a kilobit/second or less.
- Doug W. - I have found that these encodings are reasonably well documented
and relatively easy to find. I need to dig into them all a bit deeper to
find out if/what checksumming/error correction/etc. validation of
correct A/D conversion exists, and if it can be useful without access
to original hardware. (e.g. can I record a WAV file from a cassette, and
check its correctness with just the WAV) I wonder how/if the people
with existing archives verified that their A/D conversion yielded
Use the very best cassette machine you can, and the best quality tape
you can. In most cases, it's best to -NOT- use any type of Dolby or
other noise reduction. Just record the raw audio. Optimize the audio
levels.. as high as possible without distortion.
Bear in mind that if you use a high-grade stereo cassette machine, use
only -one- audio output. If you combine channels or record as stereo,
you could get into problems with audio phase between the two
channels. All computer audio data is monaural. You do not need stereo.
If you record the digitally saved files back on to a cassette tape,
use just the Right channel. The right channel is physically closer to
the center of the tape, and less likely to suffer edge damage. Even
better is to use a quality monaural recorder.. but those are sometimes
hard to find. A good "shoe-box" type cassette machine made by Sony,
Marantz, or Panasonic should be ideal, provided that there are still
up to spec.
It would be good to exercise some of those old machines, just playing
old music tapes (tapes of high quality, of course), just to even out
the mechanical aspects of a machine that may have not run in recent
years, before you start any preservation work. And clean the machines
tape heads and pinch roller with the proper chemicals and techniques
before your begin.
Decades-old cassettes may be damaged. Reading them may damage them.
There's an art to doing that, look for details on the Web.
- Doug W. - I'm using an Onkyo TA-RW244 deck. I've chosen to use only
cassettes which have duplicates in the collection, for the time being.
I'm recording in mono at 44.1 KHz using Audacity on Ubuntu 14.04,
storing the raw input as an audacity project in an unmodifiable directory,
then applying any needed tools and filters to export a .WAV file.
I am not making duplicate cassettes at this time. I am familiar with
the physical issues with the deck, heads, and tape degradation and
can identify what is beyond my limits before I attempt it.
However, most of the audio files
used on those old cassette-based programs are simply not so large
(long in duration) that there is a lot to be gained by data reduction
- Doug W. - This is waht I have found; very few are more than 4 minutes.
Archiving directly from an old tape to another tape or a digital file is
not an optimum process. The optimum process would be to get the data
off the tape into a computer and use software to create a non-compressed
digital representation of the tape. Once you have the data in a computer
you can optimize the digital audio file's bit rate and data format to
create a near perfect audio image of the data tape.
I have done this with some early Apple 1 and Apple II programs and needed
only 8kHertz sampling rate since I could optimize for the target computers
recording format and avoid the need for oversampling.
Some archives have access to some hardware, and they produce "binary" files
that are the digital equivalent to whatever was on the tapes. Or, they do
what's probably "best" - read the tapes with vintage hardware, and save the
files as binary programs files. That is, the actual binary code which would
appear in memory and "executed".
- Doug W. - My milestone is to have those binary executables. The
backup audio storage, whether digital or analog, are important
artifacts to preserve along the path to the executables.
there's no "consensus" about how to preserve programs saved digitally on
audio cassettes. Nor any consensus "standards" for either saving as audio,
or saving as binary/digital files.
For specific computer brands, you may want to consider what some archiving
group has done, and do that, and add to their archive. It's my observation,
that each archive for each computer brand, "converts" their tapes in a
different way. My experience is, the people who operate these archives,
aren't interested in standards, or archiving beyond their "brand".
- Doug W. - I can live with balkanization; I would like some documentation
and cataloging. :-)
Various vintage computer emulators, have their own "standards" to load
programs. Of course, they are emulators, and expect a file of binary
information, not "real" audio (as far as I know....I could be wrong).
- Doug W. - I am just beginning to investigate the various emulators.
Any pointers would be a help.
Recovering the binary files, preserves the "content", but it does not
preserve the "media" as an audio file. Preserving some audio files,
allows someone in the future to actually operate vintage hardware
(cassette recorder, cassette interface, vintage computer) in the
original manner. But preserving the "data" allows people with emulators
(a common circumstance) to "run" the programs.
- Doug W. - Apart from personally having a Timex, and having some time
on a friend's Apple //e, I have very little experience with late '70s -
early '80's non-IBM hardware. But I understand the affection, and the
need to preserve the experiences, and the practical use of being able
to access the vintage data. I'm in a position to improve these, and I
can use all the advice and insight I can get.
- Doug, I read your summary post and got some various impressions based on your replies. I'm not very fond of long technical posts, they don't work well when I do them as they seem like "rants" for those not interested. They are hard to read when other do them, as they try to cover too much and it's hard to keep track and respond selectively. I think a Web site is a better venue for a project than an email list, and if you decide to take more "input" from others you might consider such a venue. My response below will try to be brief.
My general impression from your response, is that you are confusing the contents of a WAV file, with the contents of the original vintage computer "binary" which was used, with software and hardware on the vintage computer, to generate the audio recording which you plan to digitize.
Examining the 16-bit values of some Audacity WAV file, will tell you *nothing* about the original binary of the vintage computer. That's because (generally) each bit of the vintage computer file, was encoded into a number of pulses or cycles at some frequency. The 16-bit WAV values, attempt to represent each pulse-shape - if some of those 16-bit values are "off", the loss will be invisible to the vintage computer. But If the 16-bits were "filtered" to eliminate the "wrong" frequency, they may produce "nice" waveforms but may not represent the binary data at the "right" frequency.
Either way - you won't know if your WAV file will "work".
My point is, to "verify" your digitized files, you are obliged to use the same vintage hardware and software, to regenerate the original binary data. And then - you need a copy of that same data, to compare at the binary level to confirm your results. If you don't have actual vintage hardware and software, whatever you create to replicate those methods will STILL have to pass the same test. No other tests will do the job. (Notwithstanding, use of checksums to at least verify packets of binary data, in some schemes.)
And since every "brand" used their own methods, you'll have to repeat that set of tasks per brand. That's a lot of work times N.
Or, not. Some archives I've seen, use vintage hardware to read the tapes, and they dump the binaries into a modern computer. Other archives, simply digitize the hell out of audio tapes and leave it at that. One brand per site. It's a blessing that anything is saved, however done.
If you find any solution that covers more than one kind of brand or method, I'd like to know. I keep track of floppy disk magnetic recording, I might do the same for audio cassettes. I see no organized effort - each does what they see fit, and gets annoyed when someone suggests that's not enough or satisfactory or ""standard". Good luck with whatever you learn, or produce.