Setup RetroArch to redirect MAME games that use Dial and Trackball to Arcade-X Tankstick Trackball
-
I am new to the RetroPie and thought the information below may help some people setting up the trackball on the Arcade-X Tankstick. I did not find anything on these setting on any message boards, so thought I would share my findings. If this is redundant information or is already known, I apologize.
I will start out by saying that I love RetroPie. I have a Raspberry Pi 3 and bought an Arcade-X Tankstick w/ Trackball.
I generally use MAME2003 and most games work great. However, there are some games I wanted to play with the Trackball, but could not. Two examples are Tempest and Kickman. Other games would work with the Trackball (Centipede being one of them). However, Tempest and Kickman would not (Kickman would not work in MAME2003, but in MAME2000...I understand that Kickman had issues anyway, but I digress). I could not figure out why some other games would work with the Arcade-X Trackball, but other would not.
I realize now that it was not working properly because Tempest and Kick use dial controllers and by default, MAME maps the dial controller to the keyboard.
When I use MAME on Windows, there is a configuration screen where you can tell MAME to remap the dial device to the mouse. Looking at the MAME.INI file, I see the following:
paddle_device keyboard
adstick_device keyboard
pedal_device keyboard
dial_device mouse
trackball_device mouse
lightgun_device keyboard
positional_device keyboard
mouse_device mouseI was redirecting games that use a trackball as well just to make sure. This worked in Windows, but on RetroPie, there is no MAME.INI file.
So after some digging, I located the config file that I did need to edit that emulates the MAME.INI file which is called retroarch-core-options.cfg and did the following:
- Exit EmulationStation and get to the prompt.
- Type the command cd /opt/retropie/configs/all and press Enter. This will get you to the folder where the config file is.
- Next backup the file by typing cp retroarch-core-options.cfg retroarch-core-options.cfg.BACKUP. Does not matter what you name the backup file, just as long as you have it backed up.
- Now type sudo nano retroarch-core-options.cfg to edit the file.
- In my case I want to redirect any games that use a dial or trackball to the mouse. Therefore, check to see if the three lines below are in your file and they match what is below. If any of the files are missing, then go to the end of the file and add them. If the values do not match what is below, change the value to match.
mame2003-mouse_device = "mouse"
mame2003-dial_device = "mouse"
mame2003-trackball_device = "mouse"Note: If you do not want to redirect games with trackball devices, you can leave out the line related to trackball_device.
- Press CTRL-O to write the file.
- Press CTRL-X to exit the file.
- Now type sudo reboot and press Enter to reboot.
Once I did this, I started Tempest with MAME2003 and lord and behold IT WORKED!!! I can now use my mouse as the dial controller to play Tempest.
The other game, Kickman, I could not get to work in MAME2003. I could get a ROM to work in MAME2000, but sound was off.
I installed the latest version of RetroPie, as they have two new MAME builds in the experimental section, MAME2014 and MAME2016.
Kickman works and no sound issues. However, ran into the same situation where the trackball would not work.
So to get the Arcade-X trackball to work with MAME2014 and MAME2016 that has games that use the dial and trackball, did the following:
- Exit EmulationStation and get to the prompt.
- Type the command cd /opt/retropie/configs/all and press Enter. This will get you to the folder where the config file is.
- Next backup the file by typing cp retroarch-core-options.cfg retroarch-core-options.cfg.BACKUP. Does not matter what you name the backup file, just as long as you have it backed up.
- Now type sudo nano retroarch-core-options.cfg to edit the file.
- In my case I want to redirect any games that use a dial or trackball to the mouse. Therefore, check to see if the six lines below are in your file and they match what is below. If any of the files are missing, then go to the end of the file and add them. If the values do not match what is below, change the value to match.
mame2014_mouse_enable = "enabled"
mame2014_dial_device = "mouse"
mame2014_trackball_device = "mouse"
mame2016_mouse_enable = "enabled"
mame2016_dial_device = "mouse"
mame2016_trackball_device = "mouse"In the lines above, only type in the lines that correspond with the experimental version of MAME you have installed. If you installed MAME2014, only check/add the lines that start with mame2014. For MAME2016, only check/add the lines that start with MAME2016. If you have both installed, check/add all six of the lines.
Also note: If you do not want to redirect games with trackball devices, you can leave out the lines related to trackball_device.
- Press CTRL-O to write the file.
- Press CTRL-X to exit the file.
- Now type sudo reboot and press Enter to reboot.
Once the system came backup, I tried Kickman and, again, IT WORKED!!! Was able to use the Arcade-X trackball.
As I stated earlier, I have been having this issue with the Arcade-X Tankstick w/ Trackball for a while and did not see this information on any of the message boards I have been on, so I hope this helps someone out and if this is known information, I do apologize for the redundancy.
-
Thanks a lot for your excellent post, will try it shortly.
Hopefully it may also help me figure out how to get my Tank stick work correctly under mame for 2 player simultaneous games like Bubble Bobble and Sonson and Tonton for example. I can add credits, player one won't start, add another credit and player two will start by itself, but uses the player one joystick to control player 2, very strange.
G
-
Don't forget @caver's great doc page in the Wiki - https://github.com/RetroPie/RetroPie-Setup/wiki/Spinners,-Trackballs,-Lightguns,-and-other-Mouse-Devices
-
Thanks for the mention, but @ markwkidd contributed the more recent updates to retroarch/mame2003. Lots of analog love to share now. Also, don't forget about Advancemame. If you are playing Tempest, Major Havoc, Omega Race, lunar lander, or any other vector games with trackball/spinners, you will get much better vector lines in HD using Advancemame, and mouse support has always been great (though you do need to configure it).
-
Thanks for the info guys, I'll have a read.
Most people who have setup the tankstick play single player games, they don't seem to play games where two people can play on the same screen at the same time :( As I said single player mode works fine.
G
-
@guruchoc said in Setup RetroArch to redirect MAME games that use Dial and Trackball to Arcade-X Tankstick Trackball:
Hopefully it may also help me figure out how to get my Tank stick work correctly under mame for 2 player simultaneous games like Bubble Bobble and Sonson and Tonton for example. I can add credits, player one won't start, add another credit and player two will start by itself, but uses the player one joystick to control player 2, very strange.
That is strange. Are you using the x-arcade driver that supposedly sets up double gamepad devices? I guess it effectively splits the tankstick into two controllers via software. If you are not using it, that might be what you need to do.
-
-
@guruchoc Sorry, i am not in a position to watch the video right now, but I was referring to the x-arcade driver that is described here:
https://github.com/RetroPie/RetroPie-Setup/wiki/X-Arcade -
@caver01 ah, not seen that one, I'll give it a whirl soon, thanks.
G
-
@caver01 Tried that, both sticks recognised now, but still the joysticks are swapped around control wise for any game where you can play two players at once, I'll do some more reding.
G
-
@guruchoc I installed Xarcade2Jstick via the retropie menu, that seemed to do the trick, I can play Bubble Bobble to my hearts content, thanks for the help.
G
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.