Problem with left and right keyboard movement in lr-mame2003 in RetroPie 4.3 (EmulationStation and fba works ok)
-
Pi Model or other hardware: Raspberry Pi 3
Power Supply used: 2.5A
RetroPie Version Used: 4.3
Built From: Pre made SD Image on RetroPie website
USB Devices connected: Logitech USB keyboard, Ultimarc I-PAC USB
Controller used: Ultimarc I-PAC USB
File: (File with issue - with FULL path)
Emulator: lr-mame2003hello,
I have a problem with a retropie 4.3 clean installation. When I boot first time, I config the arcade joystick connected through an Ultimarc I-PAC usb keyboard encoder (Emulation Station recognice it as a keyboard).
Config is ok, and then I can use it in emulation station, where all directions works ok. I hace a Logitech keyboard and it works ok too (sames keys previously configured).
If I use fba, all directions works ok, but if I use lr-mame2003 , left and right cursors don't respond.
I can enter in Retroarch config through a game and it works in it menu (I can change options turning left or right).
I can enter mame options through TAB key and can operate in the menu and I can try to config keyboard too with left and right cursors, but when I come back to game, they don't respond.
Tested with different roms and always same problem.
Any ideas?
Thank you.
-
@jlr Ok, I have an ipac as do many others but mine is 2016, has never been flashed with changes or has been modified in anyway. It's all stock. So all I can say is this works with mine for a two player setup....
Here is the order that worked for me:
- Clean install, Plug a keyboard in and boot the lot up.
- Configure a Keyboard.
- Backup your retroarch.cfg
- Edit retroarch.cfg with all your player 1 and 2 choices, hotkeys etc as detailed by @caver01 here
- Save it and shutdown
- Remove Keyboard
- Plug in Ipac2
- Boot up and all your keyboard controls will now be mapped to your sticks automatically by the Ipac
This method of keyboard first is to do with the fact that my device likes to think of itself as a single gamepad - not what I expected. This meant that when I configured it for one player with my arcade controls, it was fine. I then added the lines for two player but nothing happened. So, after tinkering, the best method that I found was to configure a keyboard for mame first. Then, since the default for the ipac is for mame, unplug the keyboard and plug in the ipac. Happy Days. I think there are newer firmwares that can be flashed that revert to the non-gamepad mode of operation. For consoles, I use snes style and PSX controllers. They can be configured as and when they are plugged in with no issues.
-
@jlr Ok, I have an ipac as do many others but mine is 2016, has never been flashed with changes or has been modified in anyway. It's all stock. So all I can say is this works with mine for a two player setup....
Here is the order that worked for me:
- Clean install, Plug a keyboard in and boot the lot up.
- Configure a Keyboard.
- Backup your retroarch.cfg
- Edit retroarch.cfg with all your player 1 and 2 choices, hotkeys etc as detailed by @caver01 here
- Save it and shutdown
- Remove Keyboard
- Plug in Ipac2
- Boot up and all your keyboard controls will now be mapped to your sticks automatically by the Ipac
This method of keyboard first is to do with the fact that my device likes to think of itself as a single gamepad - not what I expected. This meant that when I configured it for one player with my arcade controls, it was fine. I then added the lines for two player but nothing happened. So, after tinkering, the best method that I found was to configure a keyboard for mame first. Then, since the default for the ipac is for mame, unplug the keyboard and plug in the ipac. Happy Days. I think there are newer firmwares that can be flashed that revert to the non-gamepad mode of operation. Starting with version 34 there are separate firmware versions which have the game controller device present/not present. Versions without game controller (ie with keyboard and mouse support) have the first version digit as "4" eg 1.44.
Now I need to understand how it is possible that I made two identical posts at once?!
-
@rbaker Somewhat related, and maybe can add some help for @jlr too. . . did you happen to see the keyboard setup wiki I have been working on? Your experience inspired some of the details from many months ago, but I wonder if the "separate keyboard first" is an alternate path worth documenting in the wiki too. What do you think?
-
@caver01 It could well be useful. I have now noticed that there is a distinct separation of firmware. This is interesting. The problem is this - how do you know which one you get in 2017? Do the latest boards ship with "old style" keyboard decoding like I thought I was getting meaning that you have to actually hunt out the gamepad firmware to get those features OR does it still ship in this gamepad mode by default. I fear that once you have an ipac from a certain time period, what worked for you or I may not still work now for new buyers. Your wiki is developing at an impressive detail level - where would you see this snippet going in. It seems for me at least, that the device detects keyboard inputs as long as you don't configure the device with auto detect in ES. I suppose the other issue is that my bartop is growing older and I run 3.8 on it. Once it was set up, I have never had to return to it. However, I run a standalone Pi to tinker with the latest verison via ssh and I must confess, like many others, I find myself obsessing over the configuration and look of the software setup, the game emulation etc. etc. instead of actually using the cab. It would need someone to test my method with a new board and the latest retropie I guess. Maybe the idea could go under a troubleshooting heading with "have you tried configuring a keyboard first before you connect the ipac".
-
@rbaker Yeah, that is kinda what I was thinking. A section with ideas, perhaps with a prelude that details the reasons for possibly different experiences. I know there have been many firmware versions over the years, but for me they fall into three categories: 1. Original, old-school IPAC that was only ever a keyboard controller. 2. Newer firmware for boards that can be both--and gamepad was the shipping default. 3. Newer firmware updates (are they shipping like this now?) where the IPAC is flashed so that it is back to being a keyboard by default.
Mine is #1, yours sounds like #2, and who knows what you get today. The boards have also evolved with the A, B buttons which are default mapped to MAME admin keys. These are getting confused by people who think they represent gamepad A and B.
Anyway, It would be nice to have a definitive guide for keyboard users in general, and IPAC in particular, but I get the sense that this is just not possible. The best option might have to be to add as much documentation we can gather and make it as clear as we can.
-
@caver01 said in Problem with left and right keyboard movement in lr-mame2003 in RetroPie 4.3 (EmulationStation and fba works ok):
These are getting confused by people who think they represent gamepad A and B.
Wow. Yes, I can see this. Are you referring to 2A and 2B on the device? Also, I have never had the message ipac configured on usb etc. like I see on some tutorial videos. It's always unknown device. I have concluded that comes as a result of configuring the keyboard (known) and swapping in the ipac where they keyboard once was so it can only be unknown. Maybe this is another snippet.
-
@rbaker said in Problem with left and right keyboard movement in lr-mame2003 in RetroPie 4.3 (EmulationStation and fba works ok):
Yes, I can see this. Are you referring to 2A and 2B on the device?
exactly. We had a thread a couple weeks ago with a user wondering why MAME kept bringing up the TAB menu when he pressed JUMP.
-
Problem solved.
But I'm not sure if jlr-mame2003 has a bug in Retropie 4.3 version. The situation is:
- I had crossed my joystick wires, so left wa really right and right was really left. But I can teorically define the keys as I want, so I defined my keyboard that way. If I pushed my left cursor, the correct movement was in the opposite direction.
But,
if I cross keys in the input emulation station definition (also tested with the keyboard) and I say I want to move left when I push right cursor and I want to move right when I push left cursor, it works in Emulation Station andd lr-fbalpha, but left and right keys don`t respond in lr-mame2003. If I define in emulation station the keys logically (left is left; right is right), lr-mame2003 works, but in my case the movement is not as desired.
I've solved my situation changing the wires, but (I know, it's not too logic cross keys in that way) lr-mame2013 apparently doesn't work correcty when you define left and right arrows in the wrong direction.
Thank you !
-
@jlr Glad you found the issue, but you are right, it is strange that it did not work just remapped.
One thing I will mention is that lr-mame2003 actually sees two simultaneous inputs. The first input is the one that was probably remapped in ES and RetroArch configurations so it was fine for FBA and others. However, this version of mame ALSO SEES a RAW keyboard input alongside the retroarch virtual gamepad remap. It is strange, I know, but I wonder if MAME was seeing your raw left/right with the remapped one and together, they were cancelling each other out.
In any case, better to have it wired properly anyway.
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.