Mapping X-Arcade TankStick to Multiple Emulators (AHK Script)


Since the TankStick is recognized as Keyboard input device here is a script that allows you to use it with a wide variety of emulators.

You may also find similar topic in HyperSpin official thread here. *Require premium member privilege to view*


I first got my X-Arcade TankStick, also my first two-player arcade stick last week and had been trying to configure it to work with HyperSpin and other commonly used emulators. For the uninitiated, the TankStick features a 2 players 8 buttons layout with 2 additional buttons at the sides (only 1 is usable in each side as the other ones are for the mouse Left and Right click). So in total each player will have 10 usable buttons.

The mighty tank-built X-Arcade TankStick for 2 Plaeyers.


The goal of this script is to simply reuse the same key mappings which you configure for one-time that will works across HyperSpin frontend and other emulators.

So essentially what you need to do is do a one-time program a set of keys in a mode of your choice, such as Mode 2 (You can't modify Mode 1 which came pre-programmed in factory). The main key bindings is based on the default input setttings for RetroArch.

A thing to note that this script is not only limited to be used with the Tankstick layout and you can simply use it in your own usual 6 buttons layout too. The key placement is tailored for the X-Arcade 6 buttons layout and an additional 2 more at the third row. Many had complaint about the third row buttons, but I found it to be a blessing which I can conveniently map to other hotkeys such as RetroArch rewind and slow motion.

FIRST BETA VERSION SCRIPT IS NOW RELEASED! CHECK IT OUT NOW!
Also the PDF User Guide is also available. Print it out for handy reference :-)

----------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------

Overview

This is a ahk script that remap the X-Arcade Tankstick keys to a wide variety of emulators.
The main goal is to use the same key mapping without having to switch between the Modes
in the X-Arcade PCB at the back.

* The default key mapping is based on Retroarch default key map. The keys function are divided into two sets:
1. Hotkeys
Keys that are not related to the game, but rather emulator (e.g. save state, load state, previous save state, test mode, service mode...)

To enter to this mode, keep the Hotkey Enabler pressed while pressing any other buttons.

2. In-Game
Keys that are mapped to the game controller.

It does not requires the Hotkey Enabler to be pressed.

Most of the emulators have key set for Player 1, future release will include bindings for Player 2 as well.


Release Information

2015-07-24
- First BETA release.

Quick Start

Make sure you switch your TankStick in Mode other than the default Mode 1 and program each buttons with the following keys.


Slide the button behind the TankStick to mode other than 0, then enter Programming mode and map the key as shown.

And that's it. Oh and you'll of course have to configure some emulators keys too that binds to the programmed keys.

Currently supported Emulators:
HyperSpin (Front-End)
Daphne
DEmul
Dolphin
ePSXe
MAME
MESS
RetroArch
Sega Model 2 Emulator
SuperModel

Completed 2-Player Keyset Bindings
ePSXe
MAME
RetroArch

 Layout

General Hotkeys


----------------------------------------------------------------------------------------------
HyperSpin Front End
----------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------
MAME
----------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------
RetroArch
----------------------------------------------------------------------------------------------


  ----------------------------------------------------------------------------------------------
DEmul
----------------------------------------------------------------------------------------------



----------------------------------------------------------------------------------------------
Dolphin
----------------------------------------------------------------------------------------------




----------------------------------------------------------------------------------------------
Sega Model 2 Emulator
----------------------------------------------------------------------------------------------



----------------------------------------------------------------------------------------------
Supermodel
----------------------------------------------------------------------------------------------



----------------------------------------------------------------------------------------------
ePSXe
----------------------------------------------------------------------------------------------


Front Ends Key Bindings Configuration

----------------------------------------------------------------------------------------------
HyperHQ (HyperSpin GUI Config)
----------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------
RocketLauncher
----------------------------------------------------------------------------------------------
This is completely optional. Only do this if you want to switch bezels or activate HyperPause.




Emulator Key Bindings Configuration
Make sure you open up each of the following emulator and go to the Input settings and configure each keys to match the screenshots below:

* Not all emulators required configuration.

* When configuring the keys, make sure the NUMLOCK is ON to register Player 2 Numpad inputs correctly.

*The script will enable NUMLOCK ON by pressing the '\' key on your keyboard. Useful for mini keyboard (non full-sized keyboard) without those NumKeys

----------------------------------------------------------------------------------------------
ePSXe
----------------------------------------------------------------------------------------------




----------------------------------------------------------------------------------------------
Daphne
----------------------------------------------------------------------------------------------
No configuration needed.
X-Arcade keys are mapped to Daphne default keymaps.


----------------------------------------------------------------------------------------------
DEmul
----------------------------------------------------------------------------------------------






----------------------------------------------------------------------------------------------
Dolphin
----------------------------------------------------------------------------------------------



----------------------------------------------------------------------------------------------
MAME
----------------------------------------------------------------------------------------------
No configuration needed.
X-Arcade keys are mapped to MAME default keymaps.

----------------------------------------------------------------------------------------------
RetroArch
----------------------------------------------------------------------------------------------
There are two ways to modify the key bindings in RetroArch:

Method 1 - Modify the .cfg files manually.

1. Open retroarch.cfg (or <corename>.cfg inside the /config folder if you're using Per-Core Configuration settings) and replace/overwrite the existing key values with the following:

input_player1_b = "z"
input_player1_y = "a"
input_player1_select = "rshift"
input_player1_start = "enter"
input_player1_up = "up"
input_player1_down = "down"
input_player1_left = "left"
input_player1_right = "right"
input_player1_a = "x"
input_player1_x = "s"
input_player1_l = "q"
input_player1_r = "w"
input_player1_l2 = "e"
input_player1_r2 = "r"
input_player1_l3 = "g"
input_player1_r3 = "b"

input_player2_b = "kp_period"
input_player2_y = "keypad0"
input_player2_select = "multiply"
input_player2_start = "subtract"
input_player2_up = "keypad8"
input_player2_down = "keypad2"
input_player2_left = "keypad4"
input_player2_right = "keypad6"
input_player2_a = "keypad1"
input_player2_x = "keypad7"
input_player2_l = "keypad9"
input_player2_r = "keypad3"
input_player2_l2 = "slash"
input_player2_r2 = "add"
input_player2_l3 = "comma"
input_player2_r3 = "period"

input_volume_up = "equals"
input_volume_down = "minus"

input_enable_hotkey = "v"


Method 2 - Use RGUI and go to Input Bind Configurations and set up these keys accordingly. Make sure NumLock is ON







TODO
  • Per game support for Arcade emulators like Sega Model 2, Sega Model 3 that uses different inputs per game

Summary
So far I find the layout to work comfortably after some game sessions when your muscle memory starts to kicks in. Feel free to leave any comments for more layout suggestions :-)

3 comments

Hi, I have been desperately trying to get this to work. But, none of the hotkeys do except for the bezels.

Mame is not preconfigured by default... and the hotkeys do not exit anything. I left a couple comments in the hyperspin forums.

I am running the executable ahk on Windows 10. If that means anything.

Any help would be great.

Reply

So,I guess you are done with this. :c No response... and its the most complete attempt I can find. But, the hotkey script doesn't load or work half the time. So, I don't know.

Sad face.

Reply

HOW I GOT BLANK ATM CARD THAT CHANGE MY ENTIRE LIFE.
I have being hearing about this blank ATM card for a while and i never really paid any interest to it because of my doubts. Until one day i discovered a hacking guy called Mr. Williams, he is really good at what he is doing. Back to the point, I inquired about The Blank ATM Card. If it works or even Exist. They told me Yes and that its a card programmed for random money withdraws without being noticed and can also be used for free online purchases of any kind. This was shocking and i still had my doubts. Then i gave it a try and asked for the card and agreed to their terms and conditions. Hoping and praying it was not a scam, One week later i received my card and tried with the closest ATM machine close to me, It worked like magic. I was able to withdraw up to $10000. This was unbelievable and the happiest day of my life. So far i have being able to withdraw up to $88000 without any Fear of being caught. I don't know why i am posting this here, i just felt this might help those of us in need of financial stability. blank ATM has really changed my life. If you want to contact them, Here is the email address williamshackers@hotmail.com And I believe they will also Change your Life...

Reply

Post a Comment

If you found this article or post helpful to you, feel free to enter your comments below ;)