Skip to content

Retro Adapter Mod v1.4

Compare
Choose a tag to compare
@rsn8887 rsn8887 released this 24 Mar 01:45
· 39 commits to master since this release

Retro Adapter Mod is a firmware mod for Paul Qureshi's Mojo Retro Adapter based on original Atmega168 code by Paul Qureshi and Bruno Freitas.

With the adapter one can connect old controllers to PC. This firmware mod adds support for using your old controllers on the Xbox classic and Android host systems, as well as support for the NegCon controller.

Photo of RetroAdapter

The bin archive just includes the .hex files needed to update the firmware.
The src archive includes all sources, binaries, and the original code this mod is based on.

See included readme.txt for more info.

This mod by rsn8887

Changes since v1.3:

  • (Android/Windows) Last update was completely broken, it broke analog directions and 2 player mode, all fixed again now.
  • (Android/Windows) Changed the USB polling interval back to 4ms. It makes no difference under Windows, because Windows locks the polling interval for low speed USB devices at 8ms (125 Hz max). However, Linux does not. So a 4ms polling rate should increase the refresh speed under Linux and maybe even Android, while still keeping low cpu usage.
  • (Android/Windows) Came up with exact speed test using freqmeter.exe. On Windows the refresh rate is now 124 Hz (62 Hz for NegCon and 2P mode). Under linux it could be even faster.
Windows Host (Andr.) XBox Host Description SNES PSX NegCon NES NeoGeo Genesis Gamecube N64 PCE Saturn
Button 1 (A) A Bottom button B Cross I B A A A B II A
Button 2 (B) B Right button A Circle A A B B X A I B
Button 4 (X) X Left button Y Square II - C C B Y. Down III C
Button 5 (Y) Y Upper button X Triangle B - D X Y Y. Up IV X
Button 7 (L) L Left shoulder L L1 L - - Y L L V Y
Button 8 (R) R Right shoulder R R1 R - - Z R R VI Z
Button 9 (L2) White Misc 1 - L2 - - - - - Y. Left - L
Button 10 (R2) Black Misc 2 - R2 - - - - - Y. Right - R
Button 11 (Select) Select Select Select Select - Select Select - - - Select -
Button 12 (Start) Start Start Start Start - Start Start Start Start Start Play Start
Button 14 (L. Thumb) L. Thumb Misc 3 - L3 - - - - Z Z - -
Button 15 (R. Thumb) R. Thumb Misc 4 - R3 - - - - - - - -

Analog axes in normal mode:

Host Controller
x,y Left Joystick
z,Rz Right Joystick

For NegCon in normal mode (Windows/Android), the analog buttons are mapped as follows:

Host (Win/And) NegCon
Steering x
Button I "Throttle" axis
Button II "Accelerator" axis (Android analog right shoulder)
Button L "Brake axis" (Android analog left shoulder)
  • Arcade mode:
    This version is suited for use in an arcade cabinet. It works on PCs just like the original RetroAdapter, but I replaced Neogeo stick support on the DB15 with an arcade mode that has just 8 firebuttons on the DB15, to give you a total of 10 buttons and 4 directions when you hook up your Arcade controls to pins on both DB9 and DB15.

The pinout for the arcade mode (no button 3 and no button 6 to maintain Android compatibility):
DB15
pin 3 - button 7 (Android L1)
pin 4 - button 5 (Android Y)
pin 5 - button 10 (Android R2)
pin 6 - button 11 (Android Select)
pin 7 - button 12 (Android Start)
pin 11 - button 8 (Android R1)
pin 12 - button 4 (Android X)
pin 13 - button 9 (Android L2)
pin 1 - GROUND
DB9 (unchanged)
pin 1 - up
pin 2 - down
pin 3 - left
pin 4 - right
pin 6 - button 1 (Android A)
pin 9 - button 2 (Android B)
pin 8 - GROUND