[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