[Coco] Internet via Coco

Aaron Wolfe aawolfe at gmail.com
Tue Jul 13 11:55:43 EDT 2010


On Tue, Jul 13, 2010 at 11:34 AM, James Dessart <skwirl42 at gmail.com> wrote:
> 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
> be hard.
>
> 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
> Instructable: http://www.instructables.com/id/A-credit-card-sized-Ethernet-Arduino-compatable-co/
>
> 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?
>

I suppose it just depends on whether your interest is in the IP stack
itself, or in using TCP/IP to do things.
I can see how writing or porting an existing IP stack to the coco
would be an interesting project, but to an
end user who wants to "do internet stuff" or to an application
programmer who wants to "write internet stuff",
whether the stack is implemented in the 6809 or in a $5 chip in their
network hardware makes little difference.
I'm sort of lazy, and not particularly interested in the stack itself,
so using an existing implementation is what
I prefer.

I do plan on attempting at least to make any interface I use very
hardware agnostic.  This should also mean that it
would be possible to use any user space tools or applications written
for an external IP stack just as easily
with an internal one, if such a thing is created.  Ideally, we can be
compatible with both approaches and a wide
variety of solutions.

> --
> James Dessart
> <http://ideaoubliette.blogspot.com/>
>
> --
> Coco mailing list
> Coco at maltedmedia.com
> http://five.pairlist.net/mailman/listinfo/coco
>



More information about the Coco mailing list