[Coco] CCASM to gain .cas output feature!

Roger Taylor operator at coco3.com
Sun Jan 21 00:15:29 EST 2007


Just some news,

I'm probably a few hours away from completing the new CCASM 4.0 
feature of outputting emulator-compatible .cas files.  The -tape flag 
can be used to make a .cas file from your .bin file, leaving two 
versions of your program sitting in your work directory.  Ofcourse, 
tape files have to be congiguous and not have multi records or 
overlaying origins, so your source code has to be tape-friendly.

In turn, the Rainbow IDE will soon take the resulting .cas file and 
immediately convert it into a .wav file or .mp3, which will then get 
played through your sound card if you like.  How cool is 
that?  Imagine assembling the 'helloworld' sample project (hello.asm) 
and typing CLOADM on your real CoCo to have the program imported 
ready to run or test.  No M.E.S.S. emulator needed.

At this time CCASM is successfully (well, sort of), generating a .cas 
file for the Hello World project in the Rainbow IDE.  I exported the 
resulting .mp3 file into my MP3 player and connected it to my CoCo 1, 
and here's what's happening...

My test file with a name of CCCCCCCC (which I manually set in my 
test) LOADS fine but the CoCo locks up because I haven't terminated 
the CLOAD file correctly.  That's my next move, to see what I am 
doing wrong, but I'm sure I can have this working soon!

This is the same MP3 player that won't playback stock .cas files 
because the 1st leader of 128 bytes of $55 gets chopped off at the 
beginning by the player.  The player kicks in the MP3 files a 
fraction of a second too late, or fades it in which is bad for the 
CoCo.  So, I fixed the problem by generating longer leaders in my 
cassette files.  Btw, the CoCo will sync to a leader of any length 
longer than 128 bytes just fine.

So to sum this up, the Rainbow IDE will soon generate CoCo cassette 
files in 100% digital error-free audio format.  I say error-free 
because there is no noise, but you have to use a HQ MP3 setting for 
best results.  I will do some tests to see how low I can go with 
quality and still get loadable files.

I'm having fun on this project!

P.S. Vavasour's casin.exe program is a great tool but it records what 
it "hears" from your source cassette tapes, bad or good.  This is 
probably why some of his .cas files won't load?  Perhaps we need some 
kind of tape file editor.  As long as the leaders and headers are 
repaired and legalized in his .cas file they should load ok even if 
the data might be corrupt here or there.
MORE NEWS: I just loaded a slew of .cas files I already had from some 
emulator and most of them are bad.  I can spot this by seeing that 
the leaders are either corrupt or very short.  I'm sure some of these 
files can be repaired by inserting more $55's in the leaders.  The 
Rainbow IDE can do this already!  Just use the Binary Load function 
which brings up a nice hex editor for your file.  You can paste $55's 
into the leaders if you like and repair other known bad 
bytes.  Voila.  Easier said than done, but it's a start.




More information about the Coco mailing list