Retroarch not recognizing simultaneous button presses

I did confirm MD.emu definitely has no problem registering multiple simultaneous button presses (was doing back-attacks in Golden Axe no problem). I’ve made a few changes to the RA Android input code that fix what are likely technically bugs but they don’t seem to cause any undue issues (specifically, RA’s way of ‘dealing’ with predispatched input events - i.e., those that are to be handled by the system instead of the app, seems to be incorrect based on Google’s NDK specifications). That said, this is still looking like a timing issue - multiple simultaneous button presses seem to almost always register a couple frames apart (occasionally separated by one, and very rarely, on the actual same frame). Golden Axe, at least, seems to have a very tight window for this and only is triggering back-attacks when the B & C buttons are in fact detected being pressed on the same frame, hence back-attacks almost never working on it. :wink:

Some good info: Recently I went back to my Archos Gamepad 2 and tried Retroarch 1.3.2 and tested the combo in Golden Axe using the fba core and the genesis core and it worked! Even when using the touchscreen overlays the back attacks worked perfectly. The Archos Gamepad 2 still uses Android 4.2.2 so that may be a clue. Gonna test some fighting games.

Tested Garou and MvsC on the fba core but unlike Golden Axe the simultaneous button presses do not work all the time, they work like 60% of the time which is weird cause it is the same core, tested the fighting games on the stand alone mame4droid and the simultaneous button presses work all the time. Any suggestions on what other games for other cores should I test?

Tested the same fighting games on the MAME git core and the same thing happens so it is not a fba core only issue, touchscreen overlays work perfectly on both cores btw the simultaneous button presses work all the time.

From my testing and what others have said this appears to be solely a physical button issue, and seemingly may be somewhat device-specific as well. Within RA itself, it definitely looks to solely be an input timing issue in RA’s Android input driver, with the RA cores being completely separate from this.

Any games that may happen to have looser timing requirements for simultaneous presses (i.e., two separate presses within, say, 3 frames - i.e., 50 ms of one another being treated as simultaneous) may work relatively OK with this issue present anyway but of course many games didn’t do that since that necessarily creates slight input lag. Given that fighting and brawler games (where extremely responsive controls are needed) are among the most common for such button combinations, it’s not surprising that most of them are very demanding in needing you to press all buttons at exactly the same time. :slight_smile:

Link to the github issue for anyone interested:

Has anyone tried changing the joypad driver to hid? Or messing with the input settings too see if it makes any difference?

I haven’t tried the different driver (if it works at all, it’s possible but unlikely it may solve this, but is still definitely worth investigating) but I did try the different input poll type settings (early / normal / late), which made no difference.

Any fix yet? It’s pretty incosistent for me as simultaneous button presses seems to work about 1 in 20 attempts for me (testing on Tekken 3).

Hi man any news on this? Did you tested it?

A workaround for this bug would be using an onscreen overlay in retroarch and use an android app like tincore keymapper or game controller to touch to map the the physical buttons of a controller to touch inputs (tablets like the nvidia shield or the archos gamepad have a builtin app to do that), then set the opacity of the overlay to 0, the simultaneous button presses work perfectly using a gamepad overlay. Just tested this method and it works, at least is better than nothing until someone finds a solution to this android bug.

Does anyone know what past version of retroarch does not have this bug?

Indeed I did try it but game input didn’t work at all once I tried the hid driver; fortunately keyboard input was still working fine so I was still able to navigate RA’s menu to switch the input driver back to android without having to hand-edit my retroarch.cfg or anything along those lines. :slight_smile:

Indeed I did try it but game input didn’t work at all once I tried the hid driver; fortunately keyboard input was still working fine so I was still able to navigate RA’s menu to switch the input driver back to android without having to hand-edit my retroarch.cfg or anything along those lines. :slight_smile:

[QUOTE=talos91;37377]A workaround for this bug would be using an onscreen overlay in retroarch and use an android app like tincore keymapper or game controller to touch to map the the physical buttons of a controller to touch inputs (tablets like the nvidia shield or the archos gamepad have a builtin app to do that), then set the opacity of the overlay to 0, the simultaneous button presses work perfectly using a gamepad overlay. Just tested this method and it works, at least is better than nothing until someone finds a solution to this android bug.[/QUOTE]That’s a ridiculous workaround but whatever works I guess. :slight_smile: Do you know if / how it’s possible to configure Tincore on an nVidia Shield TV (i.e., no touchscreen interface at all, just a virtual mouse) to do this? I already sideloaded it but in my quick playing around with it, it seemed like attempting to set it up without actual touch controls was going to be tricky at best. :stuck_out_tongue:

Yeah Tincore is a pain to use but luckily there is a wiki that explains how to use every function in detail. Does the retroarch gamepad overlay responds to your virtual mouse presses? If yes then it should be possible to use tincore to map your controller buttons to mouse input but you need root I think. Also Tincore has an option to simulate different external controllers but idk if this bug happens with all external controllers.

I had the same experience with the hid driver. Simultaneous inputs don’t work for me on most cores, but seem to work for me on the mGBA, Nestopia, FCEUmm, and Gambatte cores (tested with games like Double Dragon GB, RCR NES/GBA, and KoF EX2 GBA). Simultaneous inputs don’t work for me on the overlays. I’m on a Galaxy Core Prime with an 8bitdo Zero and a Moga Hero Power.

I’m not sure. I tried 1.2.0, but it still had the bug. I also tried one of the early builds with pre-installed cores like 1.0.0.2, but couldn’t get the controllers working at all with it.

[QUOTE=Brianvgplayer;37537]I had the same experience with the hid driver. Simultaneous inputs don’t work for me on most cores, but seem to work for me on the mGBA, Nestopia, FCEUmm, and Gambatte cores (tested with games like Double Dragon GB, RCR NES/GBA, and KoF EX2 GBA). Simultaneous inputs don’t work for me on the overlays. I’m on a Galaxy Core Prime with an 8bitdo Zero and a Moga Hero Power. [/QUOTE] It is weird that the simultaneous button presses do not work in gamepad overlays for you, do you have any other android device to test the gamepad overlays simultaneous input?

No, that’s the only one. Simultaneous button presses on overlays with two buttons work in MAME and the .emu emulators. The Android phone I have has multi-touch, but it’s limited to two presses at once.

That is interesting, does anyone else have the same problem with the gamepad overlays?

fixed, thanks to diablodiab

Report any weirdness asap