Ethernet board
(C) 2010-2011 André Fachat
This board is an Ethernet board for the CS/A computer. It uses the Olimex Ethernet adapter which has a CS8900A chip on it - that chip is often used with 8 bit computers - plus physical layer adapter and Ethernet plug. For the board see Olimex.com, in the left hand menu click "Other", then "CS8900A-H".
The board thus mainly does signal voltage level translation (the Olimex adapter only comes in 3.3V) and address selection.
The board can be implemented in two options for the voltage level translation. One uses two 74LVX4245 (SMD), the other option uses a 74LVX244 (SMD), a CMOS 4050, and a 74ALS245. For more details see the schematics and board. Currently only the '4245 option is tested.
As a driver I ported the uIP v1.0 TCP/IP stack to the cc65 compiler, and integrated the CS8900A driver from contiki v1 (which also uses uIP).
Table of content
UIP PET driver
This is the uIP v1.0 TCP/IP stack ported to the PET, which runs on my CS/A computer using the PET ROMs.
The pet
subdirectory is new and contains the Makefile to build the uip
binary,
which is a CBM PET program that can be loaded with LOAD and started with RUN. In the main.c the
ethernet driver is configured with the IP address. Also there are some diagnostic asm statements,
to increase a PET video memory location when executed, kind of a debug heartbeat.
The CS8900A is configured to be used at $E8C0. The board can be jumpered to $E8D0 as well.
In the uIP driver code provided here I have only implemented the "hello world" program as included in the uIP stack. That however should give you an indication how to implement your own programs.
uip-1.0+pet.tar.gz(Ported uIP stack for the PET) | |
uip-pet.diff.gz(Diff of the Ported uIP stack to uIP v1.0) |
Version: 1.0B
Status: prototype
Notes
(2012-01-02) If you have power supply problems, you can place a 47u tantal capacitor underneath the Olimex module. | |
Silly me, I forgot the pullup on /SBHE. That fixes the initialization problem. Driver stays the same. | |
This board has been successfully tested with both implementation options for the level translators. |
Version: 1.0A
Status: prototype
Notes
There still seems to be some kind of initialization problem. The uIP driver from above only works when system has been reset once after power up (no matter if the driver has been loaded before the reset or not). | |
This board has been successfully tested with both implementation options for the level translators. |
Return to Homepage
Last modified: 2012-01-04