In the past I used all sorts of console controllers on a PC via parallel port adapters. Those are unusable nowadays.
Used to play MAME with a saturn multitap and a bunch of controllers and it was great.
Some years ago I wanted to reuse my old saturn adapter to output via usb. I could not find any adapter do to this. Then I decided to do my own adapter.
I also wanted to use a guncon on pc. This functionality existed back in the day via parallel port too! But I could not find any adapter to make it work via usb. I decided to make my own adapter too.
With an Arduino Leonardo and the dual Saturn port connected, I see that it still have a lot of free pins to connect stuff. Then I added the PlayStation port and even a SNES port.
Then the RetroZord is born.
So what is it the RetroZord?
It's a DIY Arduino based adapter for:
- Saturn / MegaDrive controllers and multitap* for up to 6 players
- PlayStation controllers
- SNES / NES controllers and multitap* for up to 4 players
Each adapter have at least a unique USB Serial ID.
This is useful on MiSTer as it can distinguish each Arduino based adapter by it's ID and each adapter will have it's own input mapping.
The PlayStation adapter have multiple IDs as it implements various output modes.
Source and more info on github:
https://github.com/sonik-br/RetroZordAdapter
Saturn / MegaDrive adapter
Adapter can be made with a single or dual Saturn ports.
Dual ports can be used at the same time. Both supports multitap.
Both ports also supports MegaDrive devices with a simple to build DB9 to Saturn adapter. This adapter follows the SEGA documentation and is also compatible with some saturn games.
If Saturn connection is not required, then use a DB9 port connector instead of the saturn one.
It's also possible to mix the ports. eg: 1 x Saturn port and 1 x MegaDrive port.
Supported devices:
Saturn Normal pad, Fighting pad, Twin Stick, Saturn Analog pad, Racing wheel, Saturn multitap
MegaDrive 3 and 6 button pad, MegaDrive multitap
MegaDrive controllers are also supported on Saturn multitap.
PlayStation adapter
This one is a bit complex to make as it requires voltage conversion. But is well worthy to use on MiSTer with a Guncon!
Supported devices:
Normal pad, DualShock, DualShock 2, Guncon, NeGcon, Volume (Paddle), JogCon (works as the JogConUSB by sorgelig)
Guncon is supported on MiSTer since version 20220326 (Mar 26, 2022). It's detected as a lightgun and works on any core with lightgun support.
SNES / NES adapter
Supported devices:
SNES pad, NES pad, SNES multitap, SNES NTT pad (untested)
NES controller can be used if adapter is made with a NES port. Or if made with a SNES port then a simple NES to SNES adapter can be used.
General notes
NeGcon and the Namco Volume controller works as paddle on MiSTer. Currently there's no support for paddle in the PSX core. I'm testing a mode compatible with the core but it's not ready and also the core is beta and the support for the NeGcon might change.
The Guncon requires a standard definition CRT display and also a composite sync signal from the MiSTer. Adapter only works with 1st party Namco Guncon. All 3rd party guns I tested not worked.
To use the JogCon I recommend to supply 9v to power it's motors.
If you already have some Arduino based adapter and want the RetroZord features, it might be possible to use it's code. The voltage level and used pins must match. Pins are easily configurable on the arduino sketch files.
*Saturn/MegaDrive multitap
Saturn multitap supported.
MegaDrive multitap supported but only the SEGA ones.
EA multitap not supported.
*NES/SNES multitap
The provided Arduino sketch is hardcoded to work with only one controller. I will be updating it to output up to 4 controllers.
NES multitap not supported.
SNES multitap supported but only in single adapter mode.
If using all the adapters (2 x Saturn and 1 x PlayStation) there's no extra pins available to use and the multitap requires additional pins.
Image credits: Wikipedia, The Vanamo Online Game Museum, segaretro.org, fullyretro.com.