[Coco] Re: Rainbow on Tape/Disk
npwoods at cybercom.net
Tue Jun 14 12:34:14 EDT 2005
tim lindner writes:
> .cas files are destructive. They remove critical timing information
> neded when reading the data on real hardware. I suggest advoiding the
> Nathan Woods, can you back me up on this?
CAS files are not inherently destructive per se, it is just that they cannot
be interpreted as a pure stream of 1200/2400 Hz pulses if you want to be
compatible with whats out there.
Once upon a time, MESS interpreted CAS files as a literal stream of pulses
of the appropriate frequency, and complaints flooded in about how it
couldn't read half of the CAS files floating around on the internet. The
reason was that Jeff's emulator reads and writes CAS data on a bit by bit
basis without regards to the timing. In other words, if it takes X writes
to complete the sine wave, the output will be a '0' and if it takes Y writes
to complete the sine wave, the output will be a '1'. In the meantime, if
there is a delay after a block is written, this gap will not be visible in
the CAS file. Jeff's emulator doesn't mind because since no reads occur
during that gap, the gap becomes invisible.
To get CAS files to load properly in MESS, we had to do a very elaborate
scheme whereby the cassette "file system" is identified and so that
simulated gaps could be inserted. It was quite irritating.
The alternative to using CAS files is using WAV files, but at an absurdly
low resolution (i.e. - 2-4 bits per sample). The CoCo doesn't mind because
it only cares about the pulse being positive or negative. Such files
compress extremely well and are not that much larger than CAS files.
More information about the Coco