[Coco] BASIC compilers
Andrew
keeper63 at cox.net
Sun Jan 4 20:16:48 EST 2015
I own a real copy of CBASIC III from CerComp - I can't say that I ever
exercised it to any great extent, though. Most of what I did with it was
play around - and I haven't really touched it since I was in high school
(almost 25 years ago now - eegah!).
The manual was well written - I'd say the documentation was well done
for the time (and honestly, given what I have seen of documentation for
some of today's web APIs, it was top notch comparatively).
The compiler had it's own editing environment that "took over" when you
launched it - I can't remember what the default was, I always had mine
set to black text on white 80 column screen.
According to the docs, though, you could select any color combo for
foreground/background colors, and 32/40/64/80 columns - at 192 or 225
lines (the 225 mode gave an extra pixel spacing to prevent descender
collision). Note - there was a command to allow you to include this
special hi-res text capability into your program that had extra commands
that were accessed similar to command strings for a VT100 terminal (for
instance). It added 2K to your final program, though.
The editor was similar to the standard SDECB editor, but with a few
extra commands (including a search function) - and the actual editor
when in edit mode was arrow-key and other key-combo driven for certain
functionality.
Compiled code speed varied in what you obtained, from what I recall.
Some things seemed to speed up immensely - while others were not as
good; for instance - graphics didn't speed up as much as I wanted at the
time (for instance, a call to HLINE) - according to the docs, the
compiled code actually calls the standard BASIC graphics routines
instead of implementing its own. There is a claimed 4x speed
improvement; I don't know what the truth is.
For the most part, all commands in CBASIC III were the same as standard
SDECB commands; CerComp made a great effort to preserve this, actually,
so that you could simply take virtually any CoCo 3 BASIC program, and
compile it - without needing to change anything. I'm sure there were
instances and such where a program would need changes to get it to
compile, but for "standard" code that wasn't doing anything special
(poking ML routines, etc - I'm not saying these would fail, necessarily,
though - as POKE and EXEC were supported as well) - changes probably
didn't have to be made.
That said, there were more than a few new commands available that would
allow you to easily create much more complex CoCo 3 BASIC programs -
especially if you needed to manage memory, access all of the 512K, and
stuff like that. There was a command (GEN) that allowed you to insert
inline machine code or data. There was an "ON RESET" command (I don't
think this was a standard SDECB option?). There were various ON
"interrupt" command (for instance, ON TMRIRQ GOTO line# for the 12 bit
timer interrupt). There was something called LPCOPY to copy 8k pages
around memory.
Strangely, there doesn't appear to be any way to perform off-screen
graphics manipulation (ie - double buffering) for the CoCo 3 hi-res
modes (why an HCOPY command wasn't added, I don't know).
> I read ads for them, but never saw them. Anyone have any experience with BASIC compilers on the CoCo?
>
> — Allen
--
Andrew L. Ayers
Glendale, Arizona
http://www.phoenixgarage.org/
More information about the Coco
mailing list