Batocera.linux is an open-source and completely free retro-gaming distribution that can be copied to a USB stick or an SD card with the aim of turning any computer/nano computer into a gaming console during a game or permanently. Batocera.linux does not require any modification on your computer. Note that you must own the games you play in order to comply with the law.
Using Any X-Arcade With Batocera
The X-Arcade Tankstick is supported on Batocera when you enable controllers.xarcade.enabled=1
in the /userdata/system/batocera.conf
file. It is done through the arcade2jstick
module, which means that each of the two sticks is seen as an independent joystick by EmulationStation and the emulators. The trackball is recognized as a USB mouse in emulators that support mouse.
There's a config file
The X-Arcade controller config file is broken http://www.xgameroom.com/service/ServiceFiles/X-Arcade.zip
That's for MODE 1 X-Arcades that are designed to be seen as Keyboard.
If you have a TRIMODE X-Arcade (Made after 2019), your X-Arcade has Mode 3 as XINPUT, So you can slide to Mode 3 if you want and bactocera will see X-Arcade as Two Separate Gamepads
If anyone lands here looking for a working solution try:
Change the slider on the back of the X-Arcade Tankstik to position 3
Go back to the Batocera screen and it should identify the 2 separate controls of the Tankstik
Map the Tankstik as you see fit to Bantocera
It took me 3 hours fiddling with this yesterday to arrive at this solution. This was a brand new Tankstik and batocera-x86_64-35-20220917 on a Windows machine.
This may work with other emulation/gaming systems as well.
Remapping per game: https://wiki.batocera.org/remapping_controls_per_emulator
Per game Retroarch overrides: https://wiki.batocera.org/advanced_retroarch_settings
That should be all you need.
If you specifically need a "no workarounds" situation, then don't use Batocera, as Batocera was designed as a "plug and play" system for one controller = one player, not one controller = one system. You'll find many other issues when forcing controllers on certain emulators that only exist in Batocera because of this philosophy.