[Coco] Internet via Coco
skwirl42 at gmail.com
Tue Jul 13 11:34:11 EDT 2010
On Tue, Jul 13, 2010 at 9:09 AM, Aaron Wolfe <aawolfe at gmail.com> wrote:
>> Indeed. There are several good examples floating around for the Apple 2.
>> One of them, Contiki, is available with full source code. Perhaps the IP
>> stack can be lifted and translated to 6809 assembler?
> It's a possibility. There was an effort to port contiki to the CoCo
> but it seems to have been abandoned.
Yep, it is. Mainly due to my lack of hardware expertise. 6809
assembler would be a bad idea, IMHO. It's in C, there are C compilers
out there, it's just a matter of someone getting some ethernet or
other hardware going with a driver for the uIP stack.
> Personally, I never saw contiki on coco as all that interesting, since
> it is a completely different OS. I'm more interested in bringing
> TCP/IP to our native OS9. From what I've seen, a native OS9 IP stack
> may not be the best way to do this.
uIP is the TCP/IP stack that Contiki runs with. Porting it to OS9,
with some sort of IPC communication for client applications, would not
The stack, ethernet card driver and a very simple http server fit in
8K of code and data. This is on an ATmega8 chip, which I've tested
myself. The ethernet hardware I was using has a very large address
space that I had been hoping to reduce for use on the CoCo. However,
there are SPI-based ethernet chips now, like the one used in this
The chip is also pretty cheap, at under $5 Canadian, on Digikey.
Others have written SPI code for the CoCo, so adapting that to
interface with the ethernet hardware would be the easiest route. Main
problem is the level conversion, since the chip runs off a 3V supply.
I won't be doing it, so I leave it as an exercise to the reader.
> Allowing the CoCo to control an external IP stack, whether that is
> located in a rompak or on another PC, seems to be
> more practical. That's the direction I'm going in new projects for now.
Practical in terms of implementation, but as I see it uninteresting.
When a modern computer or mcu has to handle the IP stack already, why
bother putting it through the CoCo?
More information about the Coco