- Introduction
- Hardware changes
- Housing Design
- Testing program
- Assembly Programming
- Mad-Pascal Programming
- Games
- Purchase joystick or gamepad
- Adaptations
- Other supported joysticks
- RetroArch
- Contributors
This small modification is to adapt two or three buttons to a joystick for ATARI 2600/XL/XE.
Some advantages of this project :
- More than 80 games are available and growing in the future
- Only the joystick needs to be modified by adding a resistor for each button added
- You can buy a ready-to-play joystick
- Compatible with some SEGA gamepad to use two buttons
- For developers it can be emulated from Altirra by configuring a custom joystick
- Modifications of some commercial joysticks are also available
- A test program is provided for proper testing of all buttons
The technical details to proceed to perform the modification are documented here
Thanks to the collaboration of “Mr.Holub” user of the Atariage forum, he shared his design on Thingiverse.
This is a small program to test the buttons, it was developed in assembler using MADS and right here is the source code and its executable.
Thank you Eyvind Bernhardsen for your improvements to the test program.
Our colleague Eyvind Bernhardsen presents a universal way to detect this joystick modification:
PADDL0 = $270
pot_max = $e4
test_button_c
lda PADDL0
cmp prev_button_c
beq not_pressed
sta prev_button_c
eor #pot_max
bne not_pressed
; code to handle button press goes here!
...
not_pressed
; button wasn't pressed, go do something else
prev_button_c
.byte pot_max
(My code calls it "Button C" because that's what it's called on a Megadrive/Genesis controller). You can detect a Joy2B+ or compatible button by checking if prev_button_c ever gets set to anything other than #$e4, and you can read the third button from PADDL1 in the same way.
Note: the code works with a normal joystick because the button is "held down" on startup, and won't be detected until it's "released".
Also the creator of Mad-Pascal made a function to easily use Joy 2B+ (only for a second button).
function fire2: byte;
A list of currently available games and how to test them on Altirra emulator for ATARI XL-XE
Compatible games for ATARI 2600 with two buttons.
Currently there is a seller retrogameboyz.com of a ready to use modified gamepad, just visit his online store.
Alternative adaptations are shown below :
Thanks to colleague Mr Robot from Atariage for sharing this small modification to this joystick
Just follow the steps shown in the picture. Here is a 1.5c version of the pcb of the same joystick.
collaboration of colleague Bobo Cujo
This adaptation is to make compatible this wireless gamepad with Joy 2B+, made by the colleague Eyvind Bernhardsen from Atariage.
All the information on how to make the project are in his own repository.
here are the directions
One of the easiest gamepad to adapt is the 3-button gamepad from sega megadrive.
You will only have to remove the chip and make the corresponding connection.
If you need more information visit the Atarige forum.
List of other joysticks that use the Joy 2B+ protocol as a second alternative for use :
With the help of Juan Francisco Roco we now have support in this great emulator, follow the next steps to activate it :
first step upgrade the core :
- Online Updater -> Core Downloader -> Atari - 5200 (Atari800)
Second step activate the joystick :
- Core Options -> Input -> Controller Hack -> Joy 2B+
- Eyvind Bernhardsen
- Bobo Cujo
- Playsoft
- Pepe
- Juan Francisco Roco