Project to provide keyboard replacements for various classic computers, as well as classic ASCII keyboard
Go to file
Dave b688f1c56f Get virtual devices in new maps scheme to pass tests
Remove initialization from data structure.

Replace the previous virtual_init() with a virtual_init() that initializes the
data structures to a default state

Create virtual_sync() function to push the state of virtual devices to the
physical outputs.  Moved from the previous virtual_init() function.

The virtual device table is now built by direct calls to virtual_add() from the
setup function.

Toward issue [#23]
2021-03-05 01:00:39 -06:00
firmware/asdf Get virtual devices in new maps scheme to pass tests 2021-03-05 01:00:39 -06:00
hardware Update README.md 2021-02-13 07:42:24 -06:00
.gitignore Ignore dcm files 2020-06-23 17:20:31 -05:00
README.md Update top level README 2020-07-08 22:17:22 -05:00

Unified Retrocomputer Keyboard Project

This project aims to provide a unified collection of keyboards and encoders for vintage computers, with modular design to reuse as many elements as possible across the designs.

Home computers of the 1970's typically either polled a switch matrix, or interfaced to a parallel ASCII keyboard via a parallel port.

The keyboard allows use of Cherry MX keys, or Futaba MD-4PCS (aka George Risk KBM-01-01) keys.

The keyboard is designed using KiCad in order to be the most useful for anybody wishing to modify the keyboard for more specific uses, or to add to the project.

Capabilities so far:

  • Replacement keyboard for OSI computers
  • Replacement keyboard for Apple II/II+ computers
  • Replacement keyboard for the Sol-20 computer
  • Generic ADM-3A/Teletype style keyboard
  • Apple I keyboard (multiple styles)

Coming soon:

  • Replace encoder board on Apple II/II+ keyboards
  • Convert an OSI 542 keyboard into a generic ASCII keyboard

This keyboard project so far consists of:

  • A classic retro-style ASCII keyboard, modeled after the ADM-3A keyboard, which can be also be populated to fit perfectly in an Apple II/II+ case (with corresponding Apple II keymaps), or an OSI case (with OSI adapter).
  • A Sol-20 compatible keyboard.
  • Keyscan/decoder interface modules that can output parallel ASCII, and can be adapted for other protocols.
  • An OSI interface module, to connect the classic keyboard to an OSI computer.