[Coladam] ADAM Assembly Programming
rm2892 at gmail.com
Sat Feb 18 00:39:22 CET 2012
The short answer to your question is "yes you can".
But then you ask "How does one go about it...... ?"
The information is available. It's simply a case of finding it all and
bringing your knowledge of assembly language programming or C
programming or Pascal , or whatever, to the table. You then need to
know the operating system setup to allow your allow your programs to
make best use of the operating system functions that Coleco makes
There are more programming tools available on the CP/M side of the
house than there are under ADAM's native operating system (EOS). There
is, for example, Hi-TECH C which is now in the public domain, and
The same site also has the Aztec-C package verson 1.06.
Bringing these packages into the ADAM CP/M environment is a bit tricky
but it can be done. I have the Aztec C package on a TDOS disk if
The same applies to Pascal, Forth, or whatever other high level
language you'd care to name. If there's a CP/M 80 version available,
it can be imported into the ADAM environment. It's then a case of
knowing what to do with it.
There are documents out there to help:
The Hacker's Guide to ADAM (volumes 1 and 2) by Peter and Ben Hinkle.
This is for SmartBASIC users, but it gives a good picture of how the
basic interpreter relates to the operating system, and provides some
invaluable information about the EOS jump table and how to call the OS
The EOS Programmer's Manual by Guy Cousineau: I'm not sure anybody
has scanned this book. I have a printed copy (which I intend to keep).
However you might find others on this list who have a spare copy.
The SmartBASIC Disassembly Listing by Dr. Richard F. Drushel. I know
he's got it up on the net here. Just can't find it at the moment.
Perhaps he'll see this and set us both straight.
Finally there's a Colecovision development kit available from Daniel
It's a package of tools and examples called 'NewColeco's Devkit (for
Windows)'. Daniel's website is still under construction at the moment,
but the DevKit is there.
In summary, you need to be completely familiar with how ADAM does
business. It's essentially a case of loading your program into the
transient program area (usually from 0100 HEX) upward for about 50k.
That much is available to the user. The rest is occupied by page 0 and
by the area of upper memory where the EOS lives. If you know the
functions provided by EOS, you can save yourself a lot of work.
All of this comes from the "take my advice, I'm not using it"
department. I'm roughly familiar with what needs to be done. I've yet
to do it. Have managed to learn enough C to be dangerous. The rest
of all this in on my to do list and has been there since 1986 - when I
first asked the question that you're asking now.
on Canada's Wet Coast
On 17-Feb-12, at 11:17 AM, Kevin Powers wrote:
> How does one go about doing assembly programming (or Pascal or C or
> otherwise higher-end-than-BASIC/LOGO) programming on the ADAM? Is it
> possible to access the more high-end graphics/sound functions of the
> ADAM (such as those used by cartridges or Super Game Packs) via BASIC
> or an assembler?
> Coladam mailing list
> Coladam at adamcon.org
More information about the Coladam