libretro / RetroArch

Cross-platform, sophisticated frontend for the libretro API. Licensed GPLv3.
http://www.libretro.com
GNU General Public License v3.0
10.32k stars 1.84k forks source link

[Windows] [Input] Raw input driver not detecting any mouse movement #11308

Open Ryunam opened 4 years ago

Ryunam commented 4 years ago

Description

As indicated in the title, if the input driver is set to "raw" on Windows 10 x64 no input will be detected from the mouse. This is valid both for the Menu navigation (if Mouse Support is active) and for any content/core that supports mouse use.

Setting the input driver to "dinput" will restore mouse functionality as normal.

Expected behavior

Mouse should work normally with the "raw" input driver just like with "dinput".

Actual behavior

Mouse movements are not being detected.

Steps to reproduce the bug

  1. Set input driver to "raw"
  2. Save configuration and restart RA
  3. Mouse movement is non-functional

Version/Commit

You can find this information under Information/System Information

Environment information

sonninnos commented 4 years ago

I was able to reproduce this at first, but not anymore after adding "FriendlyName"-strings to the registry, so that my connected mice won't both be seen as "HID-compliant mouse". Renaming them in any other alphabetical fashion won't bring the order back like it was though..

Also the raw init used to log these, but not currently:

[INFO] [WINRAW]: Mouse #0 \\?\HID#VID_0755&PID_2626&MI_01&Col01#7&349ce3af&0&0000#{378de44c-56ef-11d1-bc8c-00a0c91405dd}.
[INFO] [WINRAW]: Mouse #1 \\?\HID#VID_0B05&PID_181B&MI_00#7&11f504f1&0&0000#{378de44c-56ef-11d1-bc8c-00a0c91405dd}.

At that point of copypaste 0 was the mouse in my remote control and 1 my main mouse. Now they are reversed, so everything works as expected.

Those names sure aren't very useful like that. I'll see if they could be made more practical.

Menu mouse support indeed only works with mouse index 0, so perhaps it should work with all. And it would be very nice if the device name could also be seen in the index selection instead of a plain number.

thatman84 commented 4 years ago

@sonninnos is it possible to expand this issue to allow for fixing the mouse index to a player #,

When running two mouse light guns sometimes the mouse index changes. I would like to fix physical Gun1 to player 1 mouse index. Mame does a similar thing with the ctrl files to assign the device PID to fixed input number.

If this is not related to this issue I can create a new one. Friendly name in the mouse index is a nice improvement either way.

sonninnos commented 4 years ago

Sure it relates, but I have no idea how to force the order, since Windows dictates it. Maybe the mouse index setting should accept also those full device paths..

But I did found out how to band-aid it: Simply disable and re-enable the mouse that should be the first one via Device Manager.

thatman84 commented 4 years ago

Ah ok I can do that if needed. I know devreorder has been the go to option from other users.

I was not really suggesting forcing the order in the OS rather forcing RetroArch to recognise the ID of a device and assign it to a specified user.

daFourch commented 3 years ago

Same issue with RAW input driver. Mouse isn't recognized. I'm on RA 1.9

Ryunam commented 2 years ago

Just bringing this up again. I have experimented with this some more to see if this problem had been addressed in the meantime.

Initially I thought the issue was still occurring, but then I checked in "Settings -> Input -> Port 1 Controls" and I found that setting the "Mouse Index" option to default seems to have fixed it entirely on my system. Mouse is now properly detected even with the 'raw' input driver.

Before closing the thread I'll wait a few more days to see if others do in fact report the same thing, or else if they are still experiencing this issue even with latest RA.