[Coco] .CAS file format

Bill Pierce ooogalapasooo at aol.com
Sun Dec 16 19:44:14 EST 2012


I thought the "cas" format was just a special wav format, not a "byte by byte" storage format?

Bill P

Music from the Tandy/Radio Shack Color Computer 2 & 3
https://sites.google.com/site/dabarnstudio/
Bill Pierce
ooogalapasooo at aol.com




-----Original Message-----
From: Luis Antoniosi <retrocanada76 at gmail.com>
To: CoCoList for Color Computer Enthusiasts <coco at maltedmedia.com>
Sent: Sun, Dec 16, 2012 7:26 pm
Subject: Re: [Coco] .CAS file format


is byte-by-byte. Open it in an hex editor and you will see.

On Sun, Dec 16, 2012 at 6:28 PM, Gustavo Ranaur Schoenaker
<ranaur at ranaur.net> wrote:
> Harry,
>
> The tape format I have (from the TRS-80 Color Computer Technical Reference
> Manual). I just need to know the CAS file format. One byte for each "byte
> on the tape? Should I put the leads?
>
> But thanks anyway!
>
> On Sun, Dec 16, 2012 at 8:22 PM, Harry Hurst <hhos at st-tel.net> wrote:
>
>> > I looking for the specification of the .CAS file format. I wrote in
>> Octave
>> > a cassete parser.
>> > It`s in pre-zero-zero-alpha, it`s slow and difficult to use, but it`s
>> > reading tapes (with checksum) that xroar was giving me IO ERRORs.
>>
>> Since you are talking about XROAR I guess you are talking about a Dragon's
>> cassette output? Or does XROAR also do CoCo1/2? The reason I ask is that I
>> did find a description of the CoCo cassette tape format. I have yet to
>> find one for the Dragon. There is, BTW a program, called "cocotape", to go
>> from tape to a wave file on your hard drive. The PC executable is on
>> CoCo3.com if that would help.
>>
>> http://www.coco3.com/community/downloads/coconet-support-files/
>>
>>
>>
>>
>> >
>> > Now I need to generate the .CAS file.
>> >
>> > Does anyone have some docs for the format?
>> >
>>
>>
>> Here is the page from "The Facts for the TRS-80 Color Computer" that I
>> found.
>>
>>
>> ********************************************************************
>>      G.  Cassette Interface - Cassette data is stored onto the tape
>> using a format called Frequency Shift Keying (FSK ).  This means that
>> two sine waves of differing frequency are used to store zeroes and ones
>> on the tape.  A sîne wave of 24OO Hertz is used to store a one, and a
>> sine wave of 1200 Hertz is used to store a zero.  These sine waves are
>> generated by the computer with a lookup table and sent to the D/A
>> converter (see Appendix A)
>>
>>      The table is scanned sequentially and the values are stored in the
>> D/A converter.  The output of the D/A converter is then sent to the aux-
>> îliary input of the tape recorder and stored on the magnetic cassette
>> tape.  When the datȧ is to be read back into the computer, it is read
>> back in through a circuit which detects when the input voltage has
>> crossed zero and counts the time before it crosses zero again.  A high
>> frequency sine wave will cross zero more often than a low frequency sine
>> wave.  This fact is used to determine whether a zero or a one was stored
>> on the tape.  It is a very sîmple method but works well.
>>
>>      The cassette motor is controlled by the computer through CA2 of
>> PIA1.  The motor will be on if CA2 is high and off if CA2 is low.
>>
>>
>>
>>      CASSETTE TAPE FORMAT:  The normal Color Computer tape contains
>> the following information:
>> 1)  A leader of 128 bytes of $55
>> 2)  Namefile block.
>> 3}  Ab out 1/2 second of blank tape.
>> 4)  128 bytes of $55
>> 5)  Data blocks.
>> 6)  End of File block.
>>
>>
>>      The format for Data, Namefile or End of File blocks is:
>> 1) One $55 byte.
>> 2) One $3C sync byte.
>> 3) Block Type byte: Namefile= OO, Data= 01, End of Fil e= $FF.
>> 4) Block length byte, O to 255
>> 5) Data, O to 255 bytes.
>> 6) Checksum byte, the sum of all the data plus block type and block
>>    length.
>> 7) one $55 byte.
>>
>>     The Namefile block is a normal block with a length of 15 bytes as
>> described below:
>> 1) Eight bytes for the program name.
>> 2) File Type byte; BASIC= OO, Data= 01 , Machine language= O2
>> 3) ASCII flag byte; Binary= 00, ASCII= $FF
>> 4) Gap flag byte; Continuous= 01, Gaps= $FF this byte is not used by the
>> current versions of BASIC
>> 5) Two.bytes for the start address of a machine language program.
>> 6) Two bytes for the transfer address of a machine language program.
>>
>>     The End of File block is a normal block with a length of zero.
>> ********************************************************************
>>
>>
>> The Dragon structure may be the same. I will be watching for information
>> on the subject, but I probably won't actively search for it any more for
>> the present. Let me know if you need that, though, and I will start
>> searching again.
>>
>> HH
>>
>>
>> --
>> Coco mailing list
>> Coco at maltedmedia.com
>> http://five.pairlist.net/mailman/listinfo/coco
>>
>
> --
> Coco mailing list
> Coco at maltedmedia.com
> http://five.pairlist.net/mailman/listinfo/coco



-- 
Panasonic FSA1-WSX
Commodore 64
Commodore 64C
Commodore 128
Apple //c
TRS-Color Computer 2
TRS-Color Computer 3
TI-99/4A
..and more coming!

--
Coco mailing list
Coco at maltedmedia.com
http://five.pairlist.net/mailman/listinfo/coco

 



More information about the Coco mailing list