This project is designed to allow a PS2/USB keyboard to be used with a Commodore 64 in place of the original Commodore keyboard.
PS2KeyAdvanced Arduino library for use with PS2 keyboard. Install through the IDE library manager
SEEED XIAO uses slightly modified USBHOST Arduino library (C64_USB_Host_Library_SAMD). This directory will need to be copied into the Arduino library directory.
SEEED XIAO will need its board driver installed into the Arduino IDE. See manufacturers instructions.
DUE also uses a modified USBHOST library but it is included with the source and does not need to be installed in the library directory.
Arduino Uno, Nano, DUE, or SEEED XIAO. SEEED XIAO or DUE required for USB keyboard
MT8808, MT8812 or MT8816 Analog Switch Array
20 pin female header or male header with cable (PATA cable will work)
Arduino shield PCB.
PS2 keyboard
USB keyboard - SEEED XIAO is highly recommended as the DUE is overkill for this project
KEYBIN.PDF
DEFAULTKEY.TXT
USB_KEY_CODES.TXT
Schematic PDF files
PS2 keyboards use the PS2KeyAdvanced library. -Use Manage Library to search for and install PS2KeyAdvanced.
USB Keyboards use the included modified USBHOST.
Using the Arduino IDE upload the sketch: C64_keyboard.ino into your Arduino.
SYSTEM OPTIONS ARE LOCATED IN THE C64KEYBOARD.H HEADER FILE. THE MT8808 DEFINITION IS VERY IMPORTANT. SET TO TRUE IF USING A MT8808 OR FALSE IF USING MT8812-16.
The Arduino UNO, Nano, and SEEED can be powered from the C64 keyboard header Pin 4
The Arduino DUE CANNOT BE POWERED FROM PIN 4!! Use the + side of C10 (+10V) connected to the DUE barrel power connector instead.
Create spreadsheet/program to automatically create key maps
Publish pre-compiled binary files
Updated and cleaned up all schematics and documents. All wiring charts are now on the schematics.
DUE has been brought out of archive status and will be part of future updates.
Add SEEED XIAO board for USB keyboards
Document DUE is for archive only
Code rewrite using PS2KeyAdvanced library
Several bugs have been fixed
Speed and reliability have been greatly improved
Up to 2 key maps can be stored and hot swapped with assigned keys (Default F9-F10)