johnnyrockets wrote:And now as I read the "tape header" program my mind is completely blown to realize that a tape file exists in a "wav" format?!
Never, ever, in your life, tried to digitize a cassette tape I take it?
In digital form, .wav is
the obvious format for a cassette tape recording. Drawback is that it's a rather inefficient way to store data as used by home computers like the ZX81. So for
that purpose, there's usually some machine-specific formats that contain just the binary data as it winds up in the computer's main memory. With perhaps some type info or other meta-data included in the file.
For the ZX Spectrum, that's .tzx, .tap and a few disk image formats. For the ZX81, that's mostly .p files and perhaps .81, both of which basically contain the bytes as received from the BIOS routine when loading a real cassette tape.
Note that the .wav from the archive in my previous post isn't a digitized recording! Such .wav don't compress well since it's still a representation of the entire analog signal (even if a ZX81 would just pull a few 1's and 0's from that). Instead it's
generated from the .p file in same archive. The .wav generated that way has only a very few sample values (with a 1:1 relation to the .p file used), and compresses so well that I often include it with .p files in the same archive for convenience. But that's only for .wav generated from .p file, and stored in compressed format like .zip. I'm not the kind of person to waste harddisk space on .wav's just because that space is cheap.
For emulation purposes, you basically cut 'pieces of interest' from tapes, such that a tape counter becomes pointless.
Solid-state storage like ZXpand circumvent the analog route alltogether, and store the bytes directly on the flash card's silicon.
![Cool 8-)](./images/smilies/icon_cool.gif)