Multiple mice support in RetroArch cores (lightguns, spinners, trackballs)
-
as long as Retropie-setup is current, it will get you the version you need.
Unfortunately, the installation for RetroArch had to be rolled back to 1.6.0. due to an issue with the 'Enter' key not being recognised.
-
@mediamogul Well dang. Has this been fixed in RetroArch itself now, so that it is safe to compile from github source like you did earlier in the thread?
-
Has this been fixed in RetroArch itself now, so that it is safe to compile from github source like you did earlier in the thread?
It's been fixed and altering the RetroArch script module as before should work fine. I've been meaning to get back at this myself and deliver as much udev log information as possible, but my real world stuff has been unrelenting here lately. I hope to be able to look at it by the weekend.
-
edit: whoops, I drew a premature conclusion. stay tuned
-
A minor update. If you have a MAME 2003 core built from the latest source, you shouldn't have to manually configure the buttons on mice 2-8 any more.
-
Knock on wood, but it seems like the latest github RetroArch + the latest github mame2003 core = multiple mice functionality! Thanks @mediamogul !
-
Thank you, sir. I was glad to help test. Once we get support for absolute coordinates, RetroArch and by extension RetroPie will be a one stop shop for all light gun setups. This was a big first step in that direction and it's great to see it working.
-
@mediamogul I was in contact with casdevel from the beginning of their work on multiple mice. Right now I think there is some forward momentum -- if we can get a well-described and logged Issue together regarding absolute vs. relative coordinates I feel like now is the time when help is available.
I'm on Windows mostly this summer, but that is one of the platforms that casdevel has been supporting.
Do you know of a test case -- core + ROM + hardware -- that illustrates the problem with absolute vs. relative coordinates?
-
@mediamogul so is there any way of playing the nintendo light gun games with a mouse?
-
if we can get a well-described and logged Issue together regarding absolute vs. relative coordinates I feel like now is the time when help is available.
I would love to see this happen. Let me know how I can help.
Do you know of a test case -- core + ROM + hardware -- that illustrates the problem with absolute vs. relative coordinates?
I've tested with what I believe to be every core that has light gun support and currently none recognize absolute coordinates. If one core were to become the focus, I would suggest either lr-mame2003 to continue the work already done there, or perhaps lr-nestopia, as the NES was arguably the most popular home console light gun system.
so is there any way of playing the nintendo light gun games with a mouse?
If played with a standard desktop mouse, or just about any airmouse, lr-nestopia already has functional light gun support.
NstDatabase.xml
has to be installed at/home/pi/RetroPie/BIOS
, which I thought it was by default, but I can't find any mention of it anywhere. Unfortunately, until RetroArch can register absolute coordinates, USB arcade guns and devices like the DolphinBar are left out in the cold. -
@mediamogul said in Multiple mice support in RetroArch cores (lightguns, spinners, steering wheels):
if we can get a well-described and logged Issue together regarding absolute vs. relative coordinates I feel like now is the time when help is available.
I would love to see this happen. Let me know how I can help.
Do you know of a test case -- core + ROM + hardware -- that illustrates the problem with absolute vs. relative coordinates?
I've tested with what I believe to be every core that has light gun support and currently none recognize absolute coordinates. If one core were to become the focus, I would suggest either lr-mame2003 to continue the work already done there
mame2003 supports absolute coords, sort of. the trackpad on my macbook air is received by the cocoa (apple) input driver in retroarch as an absolute device (in retroarch/libretro's terms, a 'pointer'). in mame2003 i coded it to translate that to relative coordinates (if you select 'pointer' as you mouse device, which is a core option), as that's what mame's internal 'mouse' device needs. mame has some other devices ('lightgun', etc) that might be able to take absolute coordinates directly, if they were hooked up, i don't know, but there's no real need if my translation works.
now, retropie (and let's say raspbian, for this example), is different, because it uses the udev input driver by default. i set up a development build of mame2003 that logged all mouse and pointer coordinates coming in, and i had someone with an aimtrak lightgun give me a log. the problem seeme to be that the lightgun wasn't received by the udev input driver as a mouse OR a pointer, so it doesn't matter what the core does (and i'm fairly sure mame2003 would have worked if the udev driver had given it anything).
so, the issue becomes, in order:
- does the OS (raspbian) see this device?
- does it see it as a relative mouse device (and how do you test that?)
- does the udev device manager see this device (as a relative mouse)?
- does retroarch's udev driver see this device, and present it to the core as a pointer?
- does the core understand pointers? (in the case of mame2003 - yes)
sorry for the lecture :)
-
sorry for the lecture
Not at all. It's great to get all this information. When I was testing my DolphinBar and Ultimarc arcade guns a week or two ago, I brought up
evtest
for the mouse event associated with the devices and each were recognized and the coordinates appeared to be reading normally. During that same testing session, I specified in lr-mame2003 that the mouse be a pointer device in the core options at your suggestion. Unfortunately, it still didn't produce any results. All that being the case, could it be that #4 on your potential issue list might be the road block?Edit: At the very least, RetroArch does see the device, as the mouse buttons are recognized.
-
@mediamogul said in Multiple mice support in RetroArch cores (lightguns, spinners, steering wheels):
sorry for the lecture
Not at all. It's great to get all this information. When I was testing my DolphinBar and Ultimarc arcade guns a week or two ago, I brought up
evtest
for the mouse event associated with the devices and each were recognized and the coordinates appeared to be read normally. During that same testing session, I specified in lr-mame2003 that the mouse be a pointer device in the core options at your suggestion. Unfortunately, it still didn't produce any results. All that being the case, could it be that #4 on your potential issue list might be the road block?Edit: At the very least, RetroArch does see the device, as the mouse buttons are recognized.
hmm, interesting! i would have thought that the new multiple-mice changes would have affected it. eg, i guess the pointer device would need to assigned to player 1 through retroarch.
i think it's worth re-testing with the latest nightlies, pointer device set to player 1, mame2003 core option set to 'pointer', and if that doesn't work i could issue my debug build again?
-
i think it's worth re-testing with the latest nightlies, pointer device set to player 1, mame2003 core option set to 'pointer', and if that doesn't work i could issue my debug build again?
Sounds like a plan. I'll test everything again this evening. Thanks.
-
I went ahead and tested the arcade guns with the latest nightlies, pointer device set to player 1 and mame2003 core option set to 'pointer', but there was still no joy in mudville.
-
@mediamogul so my problem was i was setting the p2 device to light gun and not mouse. However, the vs games are in the nstdatabase xml file but they wont even do anything. Did you get them working?
-
However, the vs games are in the nstdatabase xml file but the wont even do anything. Did you get them working?
I have the games installed, but I don't believe I've tried them. I'll give them a go later and let you know.
-
They don't work for me either. I suppose the set we have doesn't match up with the hash checks from
NstDatabase.xml
. Seeing as how there's only three VS light gun games, editing the data wouldn't take long. However, a better option is probably to just use AdvanceMame for now so you could also make use of your DolphinBar. -
@mediamogul yeah, i have to install advmame roms still. Would still love to have the nes light gun games fully functional one day....
-
so is there any way of playing the nintendo light gun games with a mouse?
If played with a standard desktop mouse, or just about any airmouse, lr-nestopia already has functional light gun support.
NstDatabase.xml
has to be installed at/home/pi/RetroPie/BIOS
, which I thought it was by default, but I can't find any mention of it anywhere.NstDatabase.xml
indeed should be installed in theBIOS
directory by default, per this commit to RetroPie-Setup: https://github.com/RetroPie/RetroPie-Setup/commit/a5bb24c11fe87bfc41d8b53797b724aa161a8689
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.