[Coco] Electronics Newbie question
Andrew
keeper63 at cox.net
Fri Dec 16 22:10:53 EST 2011
Robert,
Depending on how long you've been "out of it", as far as everything
goes, you may have a steepish learning curve (especially with proper
interfacing with the CoCo's bus - from what I have seen, it is fairly
straightforward, once you understand how address decoding and such is
set up).
The biggest problem you'll face is the fact that there isn't (afaik) any
"solderable" PCBs that will just "plug into" the cartridge slot; you'll
have to first either build one, or find a design for one (I think a few
exist out there?), and modify it to suit your needs (then have it made,
or make it yourself, etc).
That can ultimately be a ton of work - just to get to a point of doing
anything fairly basic...
But there may be another option: Use the serial port(s)
Either with a multi-pak interface and an RS232 cartridge, or via the
bit-banger, you could probably set up a communications interface to a
standalone Arduino board. What you would want to do:
1) Purchase an Arduino Uno (don't get fancy with a Mega, just go basic here)
2) Get the Arduino IDE set up on your computer/OS - make sure you can
run the Blink sketch
3) Start learning how to program and work with the Arduino to read and
write to the ports (blink LEDs, read switch states, etc) - the
arduino.cc forums and the playground will help immensely; there is a TON
of information out there on this
4) As you get comfortable with the Arduino, learn about how to build a
"standalone" Arduino; that is, an Arduino built on a breadboard or PCB
using minimal parts that can still be programmed by the PC, via a USB to
TTL serial cable (you need simple parts like a pre-bootloaded ATMega328,
a few capacitors, a 7805 regulator, a 16 MHz resonator, and a few other
minor components)
5) At the same time, study the schematics of the original serial-port
Arduino; learn how to interface using a MAX232 or equivalent
(alternatively, there are methods using simple transistors as a
buffer/voltage level changer that work well, too - a version of the
Parallax Basic Stamp II used such a system - and I think there are a few
standalone Arduinos that have been designed to use them, too)
Note: I don't recall, exactly, but I think - IIRC - the bit-banger port
on the CoCo is already TTL serial (maybe somebody else here can
enlighten us?); if so, then the next step will be relatively easy...
6) At a certain point, you'll have the knowledge and feel comfortable to
build and test that standalone Arduino, and connect it to a serial port
on the CoCo. You'll have to learn how to program the Arduino to send and
receive serial strings, to use as commands from the controlling computer
(whether a PC or the CoCo)
7) All that's needed then is to write that software so you can send a
string like "[P10=HIGH]" (set Pin 10 HIGH) or "[READ P12]" (read the
value on Pin 12), etc - all via the serial port. The code on the CoCo
should be fairly simple to implement...
You can then do your interfacing via the Arduino, and have the CoCo
command the Arduino to do simple things (or the Arduino can do more
complex things, and execute those tasks based on commands from the CoCo,
if you want).
I'm looking back on all of that and now I am wondering if that is indeed
simpler than going thru the cartridge port (grin); I personally think it
would be, ultimately - the cartridge port is a finicky beast, from what
I am lead to believe, and it is very easy to blow the 6809 in the CoCo
(no buffering on the lines - it's a direct bus to the CPU). But, if you
want to go that route, read everything you can and heed all advice on
interfacing, so your CoCo will live a long(er) life!
Good luck, hope this helps!
-- Andrew L. Ayers, Glendale, Arizona
More information about the Coco
mailing list