100%
keyportari Keyboard-2600 view
Description

Imported from GitHub: Al-Nafuur/KeyPortari · commit 42ccd77 · license MIT

Description

PS/2 keyboard interface for the Atari 2600 and 7800

README

🕹️⌨️ The KeyPortari a 2600/7800 Keyboard Interface

This project enables the connection of a PS/2 keyboard (or a USB keyboard that supports the PS/2 protocol) to the Atari 2600 or 7800 console. The ATmega328P processes keystrokes and controls the joystick inputs of the Atari 2600 accordingly.

✨ Features

  • PS/2 Keyboard Support: Supports various keyboard layouts (DE, US, FR).
  • Direct ASCII Conversion: Translates keystrokes into Atari 2600-compatible signals.
  • Configurable Keymaps: Customizable key assignments for Atari 2600 control.
  • Efficient GPIO Usage: Utilizes an 8-bit port for direct control.
  • Configurable DIP Switches: 4-bit resistor-ladder circuit for easy configuration.

🔌 Hardware Requirements

  • ATmega328P 5V 16Mhz (Arduino-compatible)
  • PS/2 Keyboard (or USB Keyboard that supports the PS/2 protocol)
  • Resistors for Resistor-Ladder (10kΩ, 20kΩ, 40kΩ, 80kΩ, 100kΩ Pull-up)
  • 2x Quad analog switch (74HC4066)
  • Joystick port connection for the Atari 2600

🛠️ Sponsored by JLCPCB

PCB manufacturing for this project was kindly sponsored by JLCPCB – a leading PCB prototype service. For the first prototype run, JLCPCB generously provided 15 SMD assembled test boards, helping to accelerate early hardware development.

If you’re a developer or hardware tinkerer and would like to experiment with the interface or contribute your own ideas, feel free to reach out to me via AtariAge – I’d be happy to provide a board to support your work.

🧪 Breadboard Setup (one joystick forwarded)

Breadboard Setup with one joystick forwarded

⚙️ Installation & Setup

  1. Upload code to ATmega328P (via Arduino IDE or AVRDUDE).
  2. Connect PS/2 keyboard to the corresponding pins.
  3. Set DIP switches for the desired configuration.
  4. Connect to the Atari 2600 joystick port.

🎮 Usage

  • Each keystroke on the PS/2 keyboard is translated into joystick controls for the Atari 2600.
  • Modifier keys like Shift, Ctrl, and Alt influence the key output (e.g., uppercase/lowercase characters).
  • DIP switches can be used to activate different keyboard layout (US,DE,FR) configurations.

🐞 Known Issues & Solutions

🙏 Credits

📄 License


If you have any questions or suggestions, feel free to open an issue on GitHub! 🎮

Comments
Sign in to comment

No comments yet. Be the first to ask about this board.