[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