André's 8-bit Pages  Projects  Code  Resources  Tools  Forum
(by Google)

USB (+Ethernet) board

This board is an USB board for the CS/A computer. It implements both sides of the interface, i.e. it can be used as host as well as a device. It uses the SL811HS IC for both sides of the interface - one for each side, the chip can only do one side at a time.

Note this board also contains an ethernet interface based on the 5V CS8900A chip, similar to the olimex adapter board. For ethernet drivers please see there.

  •  
    2011-04-22 Published this page

USB Host Driver

This is the USB Host driver. It currently supports keyboards, mouse devices, and hubs.

To build the driver, you need the xa65 cross assembler in your path, then type "make". It builds three files:

  • CSAUSBDRV - background driver for the PET-compatible CS/A65. Runs in the background, watches for hubs, keyboards and mice, and handles those. Translates keyboard and mouse events to Commodore PET kernel key codes, so you can use an USB keyboard.
  • PETUSBDRV - same for the PET with PET/CSA adapter. The only difference is the initialization of the PET/CSA adapter and different I/O addresses
  • PETUSB3 - this program does not run in the background, but displays a lot more debug information while handling the attached devices

Please note that the PET version with PET/CSA adapter is not fully working yet, my current assumption is some supply voltage problems (with the one test I did).

Warning: tested with a single Linux USB host only, no windows tests done.

The driver is under the LGPL 3.0 license, with the additional note that the actual hardware driver code is an integral part, and falls under GPL - so hardware drivers must be published, but the full driver can be used in non-GPL projects.

 
USB-0.6.tar.gz(6502 USB Host Driver)
 
USB-README.txt(README)
 
host_success.png(First getting correct chars from a USB keyboard)

USB Device Driver

This is the USB Device driver. It currently supports keyboards only.

To build the driver, you need the xa65 cross assembler in your path, then type "make". It builds three files:

  • CSAUSBKBD - Driver for the PET-compatible CS/A65. Takes the PET keyboard events and sends the key codes to a USB host as keyboard events - so you can use the PET-compatible as USB keyboard.
  • PETUSBKBD - same for the PET with PET/CSA adapter. The only difference is the initialization of the PET/CSA adapter and different I/O addresses

Please note that the PET version with PET/CSA adapter is not fully working yet, my current assumption is some supply voltage problems (with the one test I did).

The driver is under the LGPL 3.0 license, with the additional note that the actual hardware driver code is an integral part, and falls under GPL - so hardware drivers must be published, but the full driver can be used in non-GPL projects.

 
USBdev-0.8.tar.gz(6502 USB Host Driver)
 
USBdev-README.txt(README)

Version: 1.0C

Status: prototype

Notes

 
This board has been successfully tested with Ethernet as well as USB host and device operations.

Return to Homepage

Last modified: 2011-04-22
follow

Follow my 8-bit tweets on Mastodon (In new window) or Bluesky

discuss

Discuss my site on this 6502.org forum thread

(Forum registration required to post)

hot!

Dive into the retro feeling and build yourself a Micro-PET or a Multi-board Commodore 4032 replica

Need more speed? Speed up your 6502 computer with this 10 MHz 6502 CPU accelerator board

Interested in electronics design? Look at the design lesson I got from Bil Herd, the hardware designer of the C128

Want 64bit? - pimp the 6502 with the 65k processor design!