Card to add Atari + PC joysticks?

If you have feature requests, this is the place to post them. Please note your idea may already be something we have already discussed and decided against, or something we are working on privately, and we cannot be held responsible for any similarities in such instance. Whilst we cannot respond to every suggestion, your idea will be read and responded to where possible. Thank you for your input!
Post Reply
Mkopack73
Posts: 27
Joined: Thu May 07, 2020 8:02 pm

Card to add Atari + PC joysticks?

Post by Mkopack73 »

Just wondering if anybody has thought about making a card that would provide Atari-style joystick ports (not specifically for joystick - I agree that the SNES controller gives better DIGITAL inputs than the Atari joysticks, but more for Paddle (analog) inputs for breakout style games and maybe some racing games?

And while we're at it, maybe provide an old-school PC analog Joystick 15 pin GAME port (since that is effectively just the 2 analog axis and then 2 digital button signals)??

I would think both of these would be relatively straightforward to add into a card, along with A/D convertor or even just do it using an Arduino to do the conversion and push the values out onto some memory address?
TomXP411
Posts: 1854
Joined: Tue May 19, 2020 8:49 pm

Re: Card to add Atari + PC joysticks?

Post by TomXP411 »

Actually, you don't even need a card. You can just convert the analog signals to digital with an ADC or microcontroller, then push them to the SNES ports with a bit shifter.

Actually, that's something that could be done fairly easily with something like an Arduino Uno, I think.
User avatar
JimmyDansbo
Posts: 493
Joined: Sun Apr 26, 2020 8:10 pm
Location: Denmark
Contact:

Re: Card to add Atari + PC joysticks?

Post by JimmyDansbo »

I actually made an Atari to SNES adapter using a couple of CD4021BE.
atari2snes.jpg
atari2snes.jpg (139.18 KiB) Viewed 5456 times
Visit my Github repo
or my personal site with CX16/C64/6502 related information.
Feel free to contact me regarding any of my projects or even about meeting up somewhere near Denmark
RobinBlood
Posts: 5
Joined: Sat Mar 08, 2025 10:33 pm

Re: Card to add Atari + PC joysticks?

Post by RobinBlood »

The "old-school PC analog Joystick 15-pin GAME port" has 4 axes and 4 buttons.
So we'd need at least 5 Bytes to Input it into the X16. The SNES port only clocks in 2 Bytes per Port.

That's why I'm trying/suggesting to keep the 3rd and 4th SNES-Controller on the gen2.

more bytes = more possibilities

Even the C64 had 3 bytes per port (two axes and the digital Input)
If we manage to keep the four SNES-Inputs, I'll build you an Adapter.
Already created an interface to a HOTAS Warthog-Base with an ESP32.
First core reading all the Buttons and the 2nd core clocking them out to the serial interface.

please support my suggestion
BruceRMcF
Posts: 259
Joined: Sat Jan 07, 2023 10:33 pm

Re: Card to add Atari + PC joysticks?

Post by BruceRMcF »

RobinBlood wrote: Wed Mar 26, 2025 6:40 pm The "old-school PC analog Joystick 15-pin GAME port" has 4 axes and 4 buttons.
So we'd need at least 5 Bytes to Input it into the X16. The SNES port only clocks in 2 Bytes per Port.

That's why I'm trying/suggesting to keep the 3rd and 4th SNES-Controller on the gen2.

more bytes = more possibilities

Even the C64 had 3 bytes per port (two axes and the digital Input) ...
The SNES controller only has two serial shift registers, so the SNES port is only programmed to clock in 2bytes per port ...

... but the SNES port is perfectly capable of clocking in 5 if you have five chainable parallel to serial shift registers for the 5 bytes of data and write a routine to keep clocking bytes in for five bytes after the state of the parallel inputs are latched by pulling SEL down and releasing it.

That's why the SNES is a pull down and release select, rather than "pull down and hold" as in an SPI serial interface ... it was designed to have nothing in the controller but a couple of chained serial shift registers.

If you don't want to mess with the interrupt routines reading controllers 1 and 2, the "extra" VIA#1 pins brought out to an internal header on the board are perfectly capable of working the same way, and can cycle in as many bits as you need, independent of the interrupt routine.

If there is a campaign to keep an input option in the GS board, I would prefer a campaign to keep the four extra VIC#1 pins as +5v I/O -- since those would be general purpose for either bringing bytes in from an SNES style shift register chain or for making an SPI bus.
Post Reply