RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    Guide: Advanced Controller Mappings

    Scheduled Pinned Locked Moved Help and Support
    joystickcontrollermappingxboxdrvscummvm
    626 Posts 35 Posters 482.6k 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.
    • RiverstormR
      Riverstorm
      last edited by

      @mediamogul - Let me do some more "studying" here. Ok I wasn't sure if that was a comprehensive list or most of the 4 way games in mame2003 only or all emulators supported in RetroPie or just what you've come across? I sorted them alphabetically below if you have any use for it.

      My goal is pretty simply and that's to improve 4-way games for a better play experience on the vanilla XBOX 360 controller. Sometimes I have 1 plugged in, maybe 2 and occasionally all 4. Rarely 3 for maybe say Xenophobe.

      How simple may I go?

      1. Load the driver
      2. Configure my controller through ES
      3. Create the runcommand-start checking ROMNAME but add only --four-way-restrictor

      Would this work in the Arcade folder with no emulator specified in the 'if' statement?

      I don't need to do any type of cleanup on game exit?

      It might be a bad habit but I spend all my time in planning before doing anything and usually (hopefully) very little in actual implementation.

      I see the value in having complete and granular autonomy on each mapping for precision configuration. Plus I love the ScummVM example but just getting something simple in place to start would be great and maybe someday it will be a standard. I almost feel 4-way restriction on the correct games is a must long term, especially if the implementation is easy and straight forward.

      I know the day I started this and I posted a question at you because I had this guide up for weeks in a TAB waiting to get around to it. I saw Robert created a new issue with Plus and I thought perfect timing! I wasn't sure if it was coincidence or he was watching the forums and the post prompted some idea or motivation.

      Anyway I think @grant2258 has nailed something good in Mame2003-Plus. With a few lines of code he added 2 new options in the RA settings (Quick Menu/Options/last option in the list) for 4-way games 'XOR' and 'Last Pressed' that seem to be working pretty well. I think they plan to make it standard for a good 4-way game experience out of the box but want to do more testing with it first. If you or anyone have it loaded you probably have a good feel for certain games you play often or any feedback for improvement can be posted here.

      40love.zip
      alibaba.zip
      alphaho.zip
      amidar.zip
      anteater.zip
      armorcar.zip
      armwrest.zip
      astinvad.zip
      astrob.zip
      astrof.zip
      atetris.zip
      bagman.zip
      ballbomb.zip
      barrier.zip
      blasto.zip
      blkhole.zip
      blockade.zip
      btime.zip
      carjmbre.zip
      carnival.zip
      cavelon.zip
      chameleo.zip
      checkman.zip
      chinhero.zip
      circusc.zip
      ckong.zip
      commando.zip
      comotion.zip
      copsnrob.zip
      cosmicg.zip
      cosmos.zip
      crash.zip
      crush.zip
      dazzler.zip
      devilfsh.zip
      diamond.zip
      digdug.zip
      digdug2.zip
      digger.zip
      disco.zip
      dkong.zip
      dkong3.zip
      dkongjr.zip
      docastle.zip
      dominos.zip
      dommy.zip
      dorodon.zip
      dorunrun.zip
      dowild.zip
      dremshpr.zip
      drgnbstr.zip
      drmicro.zip
      elecyoy2.zip
      elecyoyo.zip
      elvactr.zip
      eyes.zip
      firetrap.zip
      frogger.zip
      galaga.zip
      galaxian.zip
      galpanic.zip
      galxwars.zip
      gundealr.zip
      guzzler.zip
      hardhat.zip
      headon.zip
      headon2.zip
      heiankyo.zip
      hexa.zip
      higemaru.zip
      hustle.zip
      intrepid.zip
      invadpt2.zip
      invinco.zip
      invrvnge.zip
      ironhors.zip
      jjack.zip
      joust2.zip
      jrpacman.zip
      jumpcoas.zip
      jungler.zip
      karianx.zip
      kchamp.zip
      kchampvs.zip
      kicker.zip
      kikcubic.zip
      kingball.zip
      kungfum.zip
      ladybug.zip
      lasso.zip
      levers.zip
      lnc.zip
      locomotn.zip
      logger.zip
      logicpr2.zip
      logicpro.zip
      lrescue.zip
      lupin3.zip
      lvgirl94.zip
      mappy.zip
      marvins.zip
      mikie.zip
      mineswpr.zip
      mmonkey.zip
      monsterb.zip
      moonal2.zip
      moonqsr.zip
      mrdo.zip
      mrflea.zip
      mrgoemon.zip
      mrjong.zip
      mrtnt.zip
      msjiken.zip
      mspacman.zip
      mspacmnf.zip
      mtrap.zip
      mystston.zip
      natodef.zip
      naughtyb.zip
      ncv2.zip
      netwars.zip
      nrallyx.zip
      olibochu.zip
      ozmawars.zip
      pacman.zip
      pacnchmp.zip
      pacnpal.zip
      pacplus.zip
      pairs.zip
      panic.zip
      pengo.zip
      pepper2.zip
      perestro.zip
      pettanp.zip
      pickin.zip
      pignewt.zip
      pisces.zip
      pleiads.zip
      pooyan.zip
      popeye.zip
      popflame.zip
      puckman.zip
      pulsar.zip
      punchout.zip
      qix.zip
      radarscp.zip
      raiders5.zip
      rallyx.zip
      rampage.zip
      rbtapper.zip
      redufo.zip
      reikaids.zip
      retofinv.zip
      robby.zip
      rocnrope.zip
      route16.zip
      rthunder.zip
      samurai.zip
      sbagman.zip
      schaser.zip
      scregg.zip
      shollow.zip
      sia2650.zip
      sidetrac.zip
      sindbadm.zip
      solarfox.zip
      sonofphx.zip
      spaceinv.zip
      spacezap.zip
      spclaser.zip
      spectar.zip
      spnchout.zip
      springer.zip
      ssi.zip
      stratvox.zip
      streakng.zip
      superpac.zip
      superqix.zip
      swat.zip
      tactcian.zip
      tankbatt.zip
      tapper.zip
      targ.zip
      taxidrvr.zip
      telmahjn.zip
      theend.zip
      theglob.zip
      thief.zip
      timber.zip
      timelimt.zip
      todruaga.zip
      tomahawk.zip
      toypop.zip
      tranqgun.zip
      triplep.zip
      tsamurai.zip
      tutankhm.zip
      vanvan.zip
      volfied.zip
      vsgongf.zip
      warpwarp.zip
      wiping.zip
      wndrmomo.zip
      wwjgtin.zip
      yamyam.zip
      zerozone.zip
      zigzag.zip
      zookeep.zip
      zzyzzyxx.zip
      
      mediamogulM 1 Reply Last reply Reply Quote 0
      • RiverstormR
        Riverstorm
        last edited by

        @mediamogul - Thanks for all the help and advice working on this, I really appreciate it. I'll let you know how things go.

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

          @riverstorm said in Guide: Advanced Controller Mappings:

          Sorry, I somehow missed your last reply

          Load the driver
          Configure my controller through ES
          Create the runcommand-start checking ROMNAME but add only --four-way-restrictor

          All that is correct. You'll still need to make a basic map from your controller to the virtual xboxdrv controller, but the only fancy thing you'd add is the 4-way restriction.

          Would this work in the Arcade folder with no emulator specified in the 'if' statement?

          If you specify that the xboxdrv command be launched with the arcade system criteria it would. For example:

          if [ "$ROMNAME" = "pacman.zip" ] && [ "$1" = "arcade" ]; then
          

          An example of using the emulator as the criteria would look like:

          if [ "$ROMNAME" = "pacman.zip" ] && [ "$2" = "advmame" ]; then
          

          I don't need to do any type of cleanup on game exit?

          Yes, it's actually covered in the guide at some point that you'd need to add something to the tune of:

          sudo killall >>/dev/shm/runcommand.log xboxdrv
          

          Plus I love the ScummVM example but just getting something simple in place to start would be great and maybe someday it will be a standard.

          Originally, I used ScummVM as the main example because of the stuttery joystick support it had not too long ago. However, it's native support is very smooth now. Still, it's nice to add other things like matching the same button combinations to quit that you use in RetroArch for example. I run 32 different systems and many different ports and it really is great to have the same button combinations for all of them to quit, pause, take a screenshot and bring up the options menu.

          Anyway I think @grant2258 has nailed something good in Mame2003-Plus.

          I've been following that. It's a great addition. I've been meaning to test it, but I just can't seem to fit enough hours in the day lately.

          Thanks for all the help and advice working on this, I really appreciate it.

          It's never a probelm. If you decide to put any of this to practice, I think you'll find that it can come together fairly well once you start going through the steps. Something like this in theory leads to an endless amount of what ifs.

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

          1 Reply Last reply Reply Quote 0
          • RiverstormR
            Riverstorm
            last edited by Riverstorm

            @mediamogul - You're great, your documentation and advice are the only thing that's making it possible for me to add this amazing feature and I appreciate the help tremendously. I just figured you were busy and it's a good spot for me to pause for a moment too.

            I know what you mean about not enough hours in the day. I took a vacation day yesterday to go home and work. How's that for the American dream. ;) I hope to continue working on things this weekend. I also need to replace two electrical outlets and two light switches as the wife is hard on that stuff. I don't what she does but it looks like she has WWE Smackdown's with this stuff or something when I am gone.

            Here in the fall stores like Lowes, Home Depot and Menards are packed as everyone is scrambling with fall projects before winter. Once winter hits it's way to cold for paint, caulk, water, anything will freeze, crack, peel, etc. as it's well below freezing most days and things can't set and seal. Last night we hit 34F...burrr...I had to pull the plants into the garage due to frost advisories. I will still work outside in a light jacket in November doing little things but all big projects are off the table until next spring that late in the season. I am just a cold weather person vs. heat.

            If you do get a chance to test the changes Grant made to the code for 4-way games I would love to hear your thoughts on how it feels vs. managing it through the xboxdrv driver. It's pretty straight forward as the ROM sets are mostly the same and you can dump them in either arcade or mame-libretro (whichever one you don't use or both) for a quick test. No configuration just a quick setting change under Quick Menu/Options near the bottom. I've tested some of the classics and it feels pretty good to me.

            Even if it's perfect there's still going to be a big need for the xboxdrv way because it's only one core vs. a whole lot. You run 32, I think I am around 10 cores, mainly MAME, Nintendo and Atari. How many cores total does RetroPie support. I see the list in the docs but never counted all of them.

            You're right, I just need to get in there and some of these questions will be answered as I work through it. I will let you know how things go once I get few straight hours of leisure time to sit down and dig in as 5 minutes here and there is probably not going to cut it the first time through.

            I think it's a work habit. I pre-configure switches, routers, firewalls, etc. and then I create very short maintenance windows to flip over to the new equipment. It also doesn't hurt to pull a Scotty. "I need 30 minutes, captain!" and pull it off in 15 but my boss is incredibly technical for being a director so that doesn't always work. We are replacing about 1/3 of our switches this year and that includes some critical functions like Metro Communications (911). I'll let you know which day to not have an emergency! ;)

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

              @riverstorm said in Guide: Advanced Controller Mappings:

              I took a vacation day yesterday to go home and work. How's that for the American dream.

              Oh man! I know that movie. I had a plumber come in to install a second water heater not too long ago and the guy made a real mess of things. When the fit hit the shan I had to take a day off to fix the situation myself. The whole point of calling someone in the first place was to keep it off my plate. As Charlie Brown said so eloquently time and time again; ugh!

              If you do get a chance to test the changes Grant made to the code for 4-way games I would love to hear your thoughts on how it feels vs. managing it through the xboxdrv driver.

              Certainly. At the moment, it's only available in lr-mame2003-plus right? As long as there aren't any dropouts between the restricted directions I'm sure it'll do the job well.

              It also doesn't hurt to pull a Scotty. "I need 30 minutes, captain!" and pull it off in 15

              How else does one maintain a reputation as a miracle worker? ;)

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

              1 Reply Last reply Reply Quote 0
              • RiverstormR
                Riverstorm
                last edited by Riverstorm

                @mediamogul said in Guide: Advanced Controller Mappings:

                At the moment, it's only available in lr-mame2003-plus right?

                Yeah it's only in Plus currently. I don't think it's to many lines of code and maybe it'd be possible to port it to the other cores. After testing it's been whittled down to one option, "Last Pressed".

                The basic theory is the character will travel in the same direction until a new direction is established ignoring diagonals. So if you're traveling right you will continue right until say you press up.

                Basically like a 4-way acrade joystick is how he coded it. You travel in one direction until a new direction is set.

                When I look at my restrictor plate on a real arcade joystick it's a diamond shape so it will naturally "lock" direction into one of the 4 diamond tips. A controller has a bit of play since the "restrictor plate" is a circle so I think there's still room for error compared to a true arcade stick.

                It feels real good but I would be curious how it compares to the xboxdrv driver restriction. Regardless I think his code could be a benefit to all the Libretro MAME cores, it requires no configuration and works out of box for a better experience. That's just a win-win.

                I hear you on "contractors". I don't mean to sound cynical but I trust very few. My Dad when he was alive was through and through a DIY guy so I came by it honest but there's still a few things I am not comfortable with.

                I'll change electrical outlets, switches, 3-way, 4-way, install new outlets and run them back to the fuse box, etc. but I am just not comfortable working inside the actual fuse box. Everything else I'll give it shot and I am pretty comfortable but like you there's some things I'll just pay for to be done with it sometimes.

                The last big mess I had from a contractor was a radon system that started falling apart a few years after installation. He didn't use primer with the glue on PVC. I called him and we had a nice discussion on the merits of a $3 can of primer. It took a weekend but I had to build a new run from my basement, through the basement wall, up the garage wall (for legal reasons it can't be in the house), through the garage attic and out through the roof.

                Just for fun a few weeks back I ran some LED strip lighting under the length of kitchen cabinets. It turned out really nice and looks great especially in the evenings set on low. I think it'll be fun for social gatherings.

                Anyway I am pretty grateful and happy as I believe maintenance costs in a home are still cheaper than letting it completely fall apart and then replace it and it's not the "The Money Pit". I throw out those movie/TV references because none of them are lost on you. ;)

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

                  @riverstorm said in Guide: Advanced Controller Mappings:

                  It feels real good but I would be curious how it compares to the xboxdrv driver restriction.

                  I'm hoping to try it out this evening alongside 'Donkey Kong' for this weeks MAME ROW. Without good 4-way restriction, Mario just loses interest half way up the ladders, when you can get him to climb at all.

                  it's not the "The Money Pit". I throw out those movie/TV references because none of them are lost on you. ;)

                  Ha! Well done sir. That has to hold the record for the most obscure 80s comedy reference on this site. I used to rent that quite a bit back in the day. I always felt like it was half-way educating me to future home life. Along with 'The Volunteers', I personally believe it's Tom Hanks' most underrated comedic movie. I'd even go so far as to say it's Shelly Long's best, although 'Don't Tell Her it's Me' is so bad it almost doubles around to being good again.

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

                  1 Reply Last reply Reply Quote 0
                  • RiverstormR
                    Riverstorm
                    last edited by

                    @mediamogul - lol...and there short ladders too! If you ever write a book I imagine it would be a real hoot to read. Mario making it to the top of the ladder with The Money Pit playing in the background. Sounds like a pretty good evening for me. The club scene has pretty much all but played out for me long ago. Now I am just waiting for my nieces and nephews to be "initiated" into the 21 club and my work is done. Oh the horror stories of those early drinking days at a club. ;) My oldest was there a long time ago and my youngest has a ways to go.

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

                      @riverstorm

                      0_1538802993786_Untitled-1.jpg

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

                      1 Reply Last reply Reply Quote 0
                      • P
                        PMac10000 @spud11
                        last edited by

                        @spud11 Lots of great info here. I am close to achieving my simple goal, which is to restrict my 2x"Dragonrise USB" cabinet sticks to 4-way operation when playing an old-school 4-way arcade game, using the xboxdrv method described. I am attempting a version of spud11's runcommand-onstart.sh script, but the games do not accept any input from the controllers upon launching the emulators... I must be missing something basic.

                        To troubleshoot, I can run the simplified script below to attempt to drive Player1's controls with xboxdrv (instead of the recognized DragonRise controller). The script runs successfully and tells me that my XBox/XBox360 controller should now be available at:
                        /dev/input/js3
                        /dev/input/event7

                        Then, in emulationstation I can now "configure input" using the newly detected third Gamepad (called "Player_1_-_4-Way_Joystick_xboxdrv" as expected) and map the Player 1 D-pad and buttons to it, as I did before with the DragonRise inputs.

                        However, upon launching (let's say) Donkey Kong from emulationstation, I see the "DragonRise" controller notification and upon controlling Mario, I still have the usual ladder problems.

                        I feel like I'm close, but I must be missing something simple. Sorry if I revived a thread that's too old! Thanks in advance.

                        #!/bin/sh
                        sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
                         --evdev /dev/input/by-path/platform-3f980000.usb-usb-0:1.1.2:1.0-event-joystick \
                         --silent \
                         --detach-kernel-driver \
                         --deadzone=4000 \
                         --deadzone-trigger 15% \
                         --force-feedback \
                         --mimic-xpad \
                         --trigger-as-button \
                         --ui-buttonmap lb=void,rb=void,tl=void,tr=void,guide=void,lt=void,rt=void \
                         --device-name "Player_1_-_4-Way_Joystick_xboxdrv" \
                         --evdev-absmap ABS_X=x1,ABS_Y=y1 \
                         --four-way-restrictor \
                         --evdev-keymap BTN_THUMB=y,BTN_PINKIE=a,BTN_TOP2=b,BTN_TOP=rb,BTN_TRIGGER=x,BTN_THUMB2=lb,BTN_BASE2=back,BTN_BASE=start,BTN_BASE3=lt \
                        &
                        
                        mediamogulM 1 Reply Last reply Reply Quote 0
                        • mediamogulM
                          mediamogul Global Moderator @PMac10000
                          last edited by

                          @PMac10000 said in Guide: Advanced Controller Mappings:

                          However, upon launching (let's say) Donkey Kong from emulationstation, I see the "DragonRise" controller notification and upon controlling Mario, I still have the usual ladder problems.

                          When using xboxdrv, second virtual controller is created that is mapped to your actual controller. However, the listing for the original controller still exists. It could be that you just need to set 'Player_1_-_4-Way_Joystick_xboxdrv' as the default player one controller.

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

                          P 1 Reply Last reply Reply Quote 0
                          • P
                            PMac10000 @mediamogul
                            last edited by

                            @mediamogul said in Guide: Advanced Controller Mappings:

                            When using xboxdrv, second virtual controller is created that is mapped to your actual controller. However, the listing for the original controller still exists. It could be that you just need to set 'Player_1_-_4-Way_Joystick_xboxdrv' as the default player one controller.

                            Sorry if this is a dumb question, but where do I set that default? Emulationstation? Xboxdrv parameter? Mame parameter? Retroarch? To a noob like me, It often seems like there are too many bases to cover... thanks.

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

                              @PMac10000 said in Guide: Advanced Controller Mappings:

                              It often seems like there are too many bases to cover.

                              Not a problem. It can be overwhelming for sure. To test, you can first launch 'Donkey Kong' and invoke the RetroArch menu with 'Hotkey+X'. This should put you in the quick menu. Pressing 'B' will take you one menu back. From there, move to the next menu listing to the right named 'Settings' and navigate down to 'Input'. Inside there, you should see a listing for the player one controls and the current input device can be set accordingly. You can then return to 'Donkey Kong' with 'Hotkey+X' and test to see if the ladders are now more manageable.

                              If it worked, you can set the controller as the default from the 'Configuration Editor', located in the RetroPie menu of Emulation Station. That should do the job, but if not, there's also @meleu's 'RetroPie-joystick-selection' tool. Information on its installation and use can be found here.

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

                              1 Reply Last reply Reply Quote 0
                              • S
                                spud11 @PMac10000
                                last edited by spud11

                                @PMac10000 @mediamogul Also, I found it best to map MAME to keys (ie use Tab in game and change input), then map RetroArch to the same keys and do the same in xboxdrv.

                                I've got 4 Dragonrise joysticks working well in this fashion, both in 4 way and 8 way configurations, both cocktail and "normal" modes.

                                RetroPie v4.4.1 • RPi3 Model B • 5.1V 2.5A PSU • 32GB SanDisk Extreme microSD • 2TB Toshiba Canvio Basics Portable USB 3.0 hard drive • 4 x DragonRise USB Arcade joysticks • 2 x TurboTwist spinners • 1 x USB trackball • 1 x PS4 wireless • 1 x 8BitDo Zero

                                mediamogulM P 2 Replies Last reply Reply Quote 1
                                • mediamogulM
                                  mediamogul Global Moderator @spud11
                                  last edited by

                                  @spud11 said in Guide: Advanced Controller Mappings:

                                  Also, I found it best to map MAME to keys (ie use Tab in game and change input), then map RetroArch to the same keys and do the same in xboxdrv.

                                  Very good advice. I do the same and haven't had any issues.

                                  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
                                    spud11 @mediamogul
                                    last edited by

                                    @mediamogul Yes, it was your advice to me 2 years ago! Best advice ever as you don't have to worry about joystick axes, changing joystick indexes and the like.

                                    RetroPie v4.4.1 • RPi3 Model B • 5.1V 2.5A PSU • 32GB SanDisk Extreme microSD • 2TB Toshiba Canvio Basics Portable USB 3.0 hard drive • 4 x DragonRise USB Arcade joysticks • 2 x TurboTwist spinners • 1 x USB trackball • 1 x PS4 wireless • 1 x 8BitDo Zero

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

                                      @spud11 said in Guide: Advanced Controller Mappings:

                                      Yes, it was your advice to me 2 years ago! Best advice ever...

                                      I'm glad it worked out. I also advised someone else to invest heavily in GameStop two years ago and now he has to use wadded up newspaper as shoes. Still, you win some and lose some.

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

                                      1 Reply Last reply Reply Quote 3
                                      • P
                                        PMac10000 @spud11
                                        last edited by

                                        @spud11 said in Guide: Advanced Controller Mappings:

                                        @PMac10000 @mediamogul Also, I found it best to map MAME to keys (ie use Tab in game and change input), then map RetroArch to the same keys and do the same in xboxdrv.

                                        I've got 4 Dragonrise joysticks working well in this fashion, both in 4 way and 8 way configurations, both cocktail and "normal" modes.

                                        So to sum up, I think you're advising that I need to map individual game inputs anyway. There's no "magic wand" that's just going to launch 4-way games with an xboxdrv 4-way joystick, without additional intervention and configuration on my part.

                                        That's OK if so. I think I will just launch xboxdrv 4-way in rc.local (not customizing the runcommand-onstart at all), and map 4-way games within the MAME menu to the "Retropad 3" inputs, which is the xboxdrv virtual 4-way pad. Does this sound like a good approach?

                                        One potential glitch... I am noticing that in my setup, the Mame TAB menu does not always appear in all games. For example, it works in Donkey Kong and Defender, but not in Pac-Man or Ms Pac-Man. Any ideas? Thanks.

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

                                          @PMac10000 said in Guide: Advanced Controller Mappings:

                                          Does this sound like a good approach?

                                          Sounds like it could work.

                                          One potential glitch... I am noticing that in my setup, the Mame TAB menu does not always appear in all games. For example, it works in Donkey Kong and Defender, but not in Pac-Man or Ms Pac-Man. Any ideas?

                                          Are you sure that you're using the same emulator between all the games?

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

                                          1 Reply Last reply Reply Quote 0
                                          • S
                                            spud11 @PMac10000
                                            last edited by

                                            @PMac10000 In MAME's tab menu, you can set the keys via Input (General), effectively operating for every game.

                                            With xboxdrv, in my runcommand-onstart, I've got a full list of every 4 way game (about 200). I'll copy the relevant code a bit later for you. The relevant 4 way xboxdrv code is invoked automatically when I start one of these games

                                            This means you don't need to make individualised controls for every 4 way game.

                                            RetroPie v4.4.1 • RPi3 Model B • 5.1V 2.5A PSU • 32GB SanDisk Extreme microSD • 2TB Toshiba Canvio Basics Portable USB 3.0 hard drive • 4 x DragonRise USB Arcade joysticks • 2 x TurboTwist spinners • 1 x USB trackball • 1 x PS4 wireless • 1 x 8BitDo Zero

                                            P 1 Reply Last reply Reply Quote 0
                                            • 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.