RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Multiple mice support in RetroArch cores (lightguns, spinners, trackballs)

    Scheduled Pinned Locked Moved Ideas and Development
    micelightgunspinnersteering wheelmame
    179 Posts 14 Posters 70.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • mediamogulM
      mediamogul Global Moderator @markwkidd
      last edited by mediamogul

      @markwkidd

      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.

      @edmaul69

      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.

      RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

      dankcushionsD edmaul69E markwkiddM 3 Replies Last reply Reply Quote 0
      • dankcushionsD
        dankcushions Global Moderator @mediamogul
        last edited by dankcushions

        @mediamogul said in Multiple mice support in RetroArch cores (lightguns, spinners, steering wheels):

        @markwkidd

        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:

        1. does the OS (raspbian) see this device?
        2. does it see it as a relative mouse device (and how do you test that?)
        3. does the udev device manager see this device (as a relative mouse)?
        4. does retroarch's udev driver see this device, and present it to the core as a pointer?
        5. does the core understand pointers? (in the case of mame2003 - yes)

        sorry for the lecture :)

        mediamogulM 1 Reply Last reply Reply Quote 0
        • mediamogulM
          mediamogul Global Moderator @dankcushions
          last edited by mediamogul

          @dankcushions

          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.

          RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

          dankcushionsD 1 Reply Last reply Reply Quote 0
          • dankcushionsD
            dankcushions Global Moderator @mediamogul
            last edited by

            @mediamogul said in Multiple mice support in RetroArch cores (lightguns, spinners, steering wheels):

            @dankcushions

            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?

            mediamogulM 2 Replies Last reply Reply Quote 0
            • mediamogulM
              mediamogul Global Moderator @dankcushions
              last edited by

              @dankcushions

              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.

              RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

              1 Reply Last reply Reply Quote 0
              • mediamogulM
                mediamogul Global Moderator @dankcushions
                last edited by mediamogul

                @dankcushions

                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.

                RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                1 Reply Last reply Reply Quote 0
                • edmaul69E
                  edmaul69 @mediamogul
                  last edited by edmaul69

                  @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?

                  mediamogulM 2 Replies Last reply Reply Quote 0
                  • mediamogulM
                    mediamogul Global Moderator @edmaul69
                    last edited by

                    @edmaul69

                    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.

                    RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                    1 Reply Last reply Reply Quote 1
                    • mediamogulM
                      mediamogul Global Moderator @edmaul69
                      last edited by mediamogul

                      @edmaul69

                      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.

                      RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                      edmaul69E 1 Reply Last reply Reply Quote 0
                      • edmaul69E
                        edmaul69 @mediamogul
                        last edited by

                        @mediamogul yeah, i have to install advmame roms still. Would still love to have the nes light gun games fully functional one day....

                        1 Reply Last reply Reply Quote 0
                        • markwkiddM
                          markwkidd @mediamogul
                          last edited by

                          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.xmlindeed should be installed in the BIOS directory by default, per this commit to RetroPie-Setup: https://github.com/RetroPie/RetroPie-Setup/commit/a5bb24c11fe87bfc41d8b53797b724aa161a8689

                          mediamogulM 1 Reply Last reply Reply Quote 1
                          • mediamogulM
                            mediamogul Global Moderator @markwkidd
                            last edited by

                            @markwkidd

                            Ah, good to know.

                            RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                            1 Reply Last reply Reply Quote 0
                            • markwkiddM
                              markwkidd
                              last edited by markwkidd

                              As I said before I'm hoping to gather the information necessary for RetroArch emulators to support both 'absolute' and 'relative' devices.

                              Somehow I'm still confused about how to create the best Issue report with regard to this concern.

                              Could someone please spell out to me:

                              1. What devices are categorized as 'relative' and what devices are categorized as 'absolute'?
                              2. Which cores require 'relative' devices and which require 'absolute' devices?
                              mediamogulM 1 Reply Last reply Reply Quote 1
                              • mediamogulM
                                mediamogul Global Moderator @markwkidd
                                last edited by mediamogul

                                @markwkidd

                                What devices are categorized as 'relative' and what devices are categorized as 'absolute'?

                                Just about any traditional mouse, airmouse or trackball will use relative coordinates. Touchscreens, trackpads and USB light guns all use absolute coordinates.

                                Which cores require 'relative' devices and which require 'absolute' devices?

                                The list of relative and absolute devices above could be used to determine that fully, but absolute coordinates would certainly need to be supported in any core that already has relative support for light gun games in order to add support for the available USB gun devices on the market. Those cores include, but may not be limited to lr-nestopia, lr-snes9x2010, lr-genesis-plus-gx, as well as all the MAME cores.

                                RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                1 Reply Last reply Reply Quote 2
                                • S
                                  space invader
                                  last edited by

                                  So with this update would be possible to play, for example, marble madness with two mices?

                                  mediamogulM 1 Reply Last reply Reply Quote 0
                                  • mediamogulM
                                    mediamogul Global Moderator @space invader
                                    last edited by

                                    @space-invader

                                    You bet your bippy.

                                    RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                    S 1 Reply Last reply Reply Quote 0
                                    • S
                                      space invader @mediamogul
                                      last edited by

                                      @mediamogul
                                      Sorry, but my English level is not high enough to understand that...

                                      mediamogulM 1 Reply Last reply Reply Quote 1
                                      • mediamogulM
                                        mediamogul Global Moderator @space invader
                                        last edited by mediamogul

                                        @space-invader

                                        Ha! Sorry. It's a late sixties, early seventies pop culture colloquialism meant to express the affirmative in an exited manner. Functionally, it's really no different from the more widely used, "You bet your a**".

                                        ...In other words, yes, you can now use two mice with 'Marble Madness'.

                                        RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                        S 1 Reply Last reply Reply Quote 1
                                        • S
                                          space invader @mediamogul
                                          last edited by

                                          @mediamogul said in Multiple mice support in RetroArch cores (lightguns, spinners, steering wheels):

                                          @space-invader

                                          ...In other words, yes, you can now use two mice with 'Marble Madness'.

                                          This is what I can understand and what I wanted to read!

                                          mediamogulM 1 Reply Last reply Reply Quote 0
                                          • mediamogulM
                                            mediamogul Global Moderator @space invader
                                            last edited by mediamogul

                                            @space-invader

                                            This is what I can understand and what I wanted to read!

                                            Coincidentally, a phrase never applied to the 'Twilight' novels.

                                            This addition to RetroArch is very exciting and greatly improves the playability of many titles. Let us know how it works out for you.

                                            RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                            S 1 Reply Last reply Reply Quote 2
                                            • First post
                                              Last post

                                            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.