Atari Joystick USB Adaptor


Posted on Feb 5, 2014

This project implements a composite USB device supporting two USB 2. 0 full-speed gameport HID interfaces. The physical joystick ports are wired in accordance to the `Atari standard` allowing connection of most Commodore 64 and Amiga joysticks as well as older Atari 2600 compatible joysticks. The USB adaptor is built around a PIC18F2550 microcontro


Atari Joystick USB Adaptor
Click here to download the full size of the above Circuit.

ller and a port of the Microchip USB stack (to the Hi-Tech C18 PRO compiler). The circuit is designed for minimum component count to allow it to easily be built either on a PCB design (included below) or a small piece of stripboard. The 2 physical joystick ports are multiplexed onto the PIC`s PORTB, this is to allow use of the PORTB weak pull-up feature on both joysticks (removing the need for 10 pull-up resistors). An optional barrier diode is also included to protect the host computer from power feedback when using an in-circuit programmer. Multiplexing to a single port has the added advantage of leaving PORTA free for future addition of mouse/paddle interfaces (at some point I would like to add an Amiga mouse port to the design). The whole interface consists of 3 ports (2xJoystick, 1xUSB) and 10 components including the PIC. To make it even more compact/cheap you could also remove the status LED (which I included to help debugging) and the MCLR pull-up resistor (required so the ICSP programmer can hold the device in reset - useful when developing). Most of the complexity is in the software, feel free to download it and adapt it to your purposes. Please note that I don`t have my own USB VID or PID (since it costs $1500!) so you may need to alter the VID and PID in the code if it conflicts with another device (very unlikely since I used the Microchip VID). The software includes full switch debouncing for both on and off...




Leave Comment

characters left:

Related Circuits

  • New Circuits

    .

     


    Popular Circuits

    PIR Controlled LED Driver Circuit
    Electronic Siren with Multitone
    ua 741 square wave generator
    IR Remote Control Receiver
    Some interesting Projects
    A Unipolar Stepper Motor Drive Using The Z8 Encore! ?® Mcu
    Magnetic Field Meter Magnetometer Circuit
    ISL6740A Flexible Double-Ended Voltage-Mode PWM Controller with Voltage Feed Forward
    Wideband Active Small Magnetic Loop Antenna
    SPDIF audio DAC with CS8416 and TDA1543
    FM TUNE UP
    The local oscillator for 10.7 to 2.5MHz conversion
    Precision frequency counter tachometer
    Glue stck torch
    Flyback converter circuit Clamp
    NC visible laser modulation driver circuit



    Top