AtariBits
  • Home
  • Systems
    • 576NUC
    • 1088XEL >
      • XEL-CF Drive
      • XEL-CF3 Rapidus Variant
      • Accessories
      • XEL Archives
    • 1088XLD >
      • RGB2VGA-XLD
      • ARROW2JOY-XLD
  • TransKey
    • TK-II >
      • TK-II Manual
      • Installation
      • Device Compatibility
      • TK-II Archives
    • TK-II-STEREO
    • TK-II Control
  • XEP80-II
  • JOY2PIC
  • MOUSE
  • MIDI
    • MIDI 3D Printed Cases
  • UGV
  • SDrive
  • Blog
ARROW2JOY-XLD Keyboard    Joystick Emulation for the 1088XLD

Sometimes it can be annoying having to look for a joystick in order to play your favorite game, and or switching between the keyboard and the joystick when the game requires keyboard input from the player. So I knew there were some emulators that let you use the arrow keys to mimic a joystick, and I thought wouldn't that be cool to be able to do that on my 1088XLD. Well that thought soon turned into reality, once I figured out where I would get the extra I/O lines from the PIC16F1847 chip running the TK-II firmware on my XLD.

If you look at the diagram to the right, you'll see that the extra I/O came from the pins once connected to Pokey's key scan counter bits K1-K4. This was made possible by recreating a shadow counter within the PIC chip, and just using key scan counter bit-0 as the clock for that counter, and bit-5 as the sync. This was a trick taken from the AKI (Atari Keyboard Interface).

Three of those re-purposed I/O pins then became an address for a 1 of 8 decoder based on the 74LS156, and the 4th acted independently as the trigger button.
Picture
Finding the Logic to Control the Joystick Port

A small PCB was then created to piggyback with the 1088XLD's TK-II keyboard chip, and give us this new functionality.

To access and enable the new joystick connections, the TK-II firmware required modification, with ALT+J acting as a toggle to enable or disable keyboard control of the joystick functions. When enabled, the arrow keys of the PS/2 keyboard control joystick direction, and the Left-Windows key or the Enter key on the Numerical Keypad becomes the trigger button.

Additional outputs AUX 1-3 will respond to key press ALT+1-3 respectively, going low for the duration of the key press. These are active all the time, not requiring that the ALT+J joystick command be issued first. Possible uses of these outputs are left up to the user. Keep in mind that they are momentary open collector outputs, and might require a latch for use in certain applications.

When no action is required, the decoder is held with it's highest bit output being selected. This will activate the yellow LED showing that the decoder is essentially idling (in standby) and waiting for a command.

An interface PCB was also created to make it easier to parallel connect to the existing joystick direction and trigger bits, which are available from the top of header P1 on the Level1 I/O board, only requiring a ribbon cable for interconnection.
Picture
Assembled Main Board Top View
Picture
Picture
Assembled Main Board Bottom View
Picture
Picture
ARROW2JOY-XLD Board Set Shown Installed in 1088XLD
Picture
Picture

Build the ARROW2JOY-XLD TK-II Upgrade
ARROW2JOY-XLD MAIN PCB Fabrication Files
Picture
Order Bare Board from OSH Park
$6.30 buys 3 boards
ARROW2JOY-XLD_gerbers.zip
File Size: 9 kb
File Type: zip
Download File

ARROW2JOY-XLD_schema.pdf
File Size: 29 kb
File Type: pdf
Download File


ARROW2JOY-XLD I/O INTERFACE PCB Fabrication Files
Picture
Order Bare Board from OSH Park
$2.15 buys 3 boards
IO_INTFC-XLD_gerbers.zip
File Size: 6 kb
File Type: zip
Download File


 Bill of Materials (Linked to Digi-Key P/N Unless Shown Otherwise)

  1. (1x) AE9995-ND 18-pin dual leaf IC socket
  2. (2x) 609-3410-ND 5x5 right angle 0.1" pitch header
  3. (2x) 732-2102-ND 5x5 IDC ribbon crimp connector
  4. (1x) Jameco 643794 10-conductor ribbon cable
  5. (1x) Proto Supplies 40-pin machined terminal strip
  6. (1x) 732-5316-ND 3-pin single row 0.1" pitch header
  7. (1x) 732-5010-ND 3 mm yellow diffused LED
  8. (1x) CF14JT390RCT-ND 390 ohm 1/4 watt resistor
  9. (1x) 1N914VSCT-ND 1N914 diode (or substitute 1N4148)
  10. (1x) 296-33962-5-ND 74LS156 Dual 4-bit Decoder SOIC
ITEM 5 is a break-away style header which is to be broken down into 9-pin versions for use in this upgrade board. You should get 10 pieces x 40 pins from the eBay link, enough for 20 Arrow2Joy boards.
PictureIf You Don't Like Purple, there's Always Black with a Clear Solder Mask



Gerbers have been provided to allow ordering boards from where ever you want. For my needs, I've found that JLCPCB produces high quality PCBs, with fast turn-arounds, and great pricing on quantities as few as 5 pieces.

ARROW2JOY-XLD Firmware Download

Picture
Version: 2.7J
Date: June 3rd 2021
Exceptions: 576NUC+
File Includes:​
  • Flashing ATR: run from SIO2PC for the JOY2PIC Programmer
  • Flashing XEX: run from Loader for the JOY2PIC Programmer
  • HEX File for 3rd Party Programmers like the PICkit series
Go to On-Line Manual
Picture
Follow the Discussion on AtariAge
Joystick Hardware Emulation on the TK-II


Powered by Create your own unique website with customizable templates.