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

    Spy Hunter

    Scheduled Pinned Locked Moved Help and Support
    mame2003spy hunter
    33 Posts 6 Posters 8.0k 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

      One day sooner or later this one will get fixed.

      That'll be a real shot in the arm for Mame2003. 'Spy Hunter', 'Tapper' and the Tron games alone will be worth the effort.

      @caver01

      Great. Now that song is stuck in my head all day, but at least in my head it sounds fantastic, not a bad sample of a bad tape.

      Ha! I love that song. I got to see Journey live sometime last year. It's a personal nitpick of mine that MAME uses a very clean sample that likely comes from a CD. I like these things to be as authentic as possible and it just sounds too perfect. Also the real machine would play the tape to the end and rewind when finished.

      If the player died somewhere in the middle of the song, the next player to beat the game would hear the song pick up where it left off. Under Mame emulation, the song always starts at the beginning. The task of keeping fans from getting backstage is a real challenge too, so I doubt too many people made it through the whole track during game play.

      Also, it's the first game to use digitized likenesses that would later become popular in games like 'Pit Fighter' and 'Mortal Kombat'. The tech was originally tested in arcades as a means to photograph a person's face to put next to their initials and high score. They scrapped the idea when they saw that teenagers were flashing the camera.

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

      caver01C 1 Reply Last reply Reply Quote 0
      • caver01C
        caver01 @mediamogul
        last edited by

        @mediamogul That's some nice trivia to accompany what is usually a novelty title in my gamelist. Now I will have a few more things to say about this one. Thanks!

        As for the sample quality, can we simply bust it open and throw some processing at it to make it sound more authentic?

        My 4-player cocktail style cabinet built as a custom "roadcase"

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

          @caver01 said in Spy Hunter:

          That's some nice trivia to accompany what is usually a novelty title in my gamelist.

          I'll be perfectly honest; I personally don't think it's that great a game, but it's considered to be an arcade classic none the less.

          As for the sample quality, can we simply bust it open and throw some processing at it to make it sound more authentic?

          Yes sir we can. As a wild coincidence, I'm processing audio for a soundtrack to get a similar effect this very minute. I might as well go ahead and alter the file while I'm here.

          Edit: I hope it doesn't run a hash check on the sample file though. I guess it wouldn't work if that were the case.

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

          caver01C 1 Reply Last reply Reply Quote 0
          • caver01C
            caver01 @mediamogul
            last edited by

            @mediamogul said in Spy Hunter:

            I hope it doesn't run a hash check on the sample file though. I guess it wouldn't work if that were the case.

            I am going to venture a guess that it doesn't. IIR there are some entertaining examples of replacement sample files out there. For example, I think there is a Star Trek set that has alternate bleeps, theme song and computer voiceover. I got that to work in Advmame.

            My 4-player cocktail style cabinet built as a custom "roadcase"

            1 Reply Last reply Reply Quote 0
            • AlturisA
              Alturis @mediamogul
              last edited by

              @mediamogul so I have been reading up on your xboxdrv tutorial. Quite a lot to go over but I think I am wrapping my head around it. I have a runcommand-onstart.sh and runcommand-onend.sh in the specified folder and have chmod +x'd them so they have the x attribute.

              What I am not 100% on is if there is some other step I am to do in order for retropie to run those shell commands on the start and end of every game.

              I setup a config for pacman.zip,mspacman.zip, and frogger.zip with a basic360 controller setup and the $fourway option but I am not sure that did anything.

              I also tried a similar mapping for spyhunt.zip as yours but the normal 360 absmap and keymap entries. Again it seems like the input is working exactly as it had before. Basically it seems like the .sh files are not being executed at all.

              My runcommand-onstart.sh for illustration

              #!/bin/sh
              ## Uncomment one or all of the following if you need to find some information about the emulator or roms
              ## Name of the emulator
              #echo $1 >> /dev/shm/runcommand.log
              
              ## Name of the software used for running the emulation
              #echo $2 >> /dev/shm/runcommand.log
              
              ## Name of the rom
              #echo $3 >> /dev/shm/runcommand.log
              
              ##Executed command line
              #echo $4 >> /dev/shm/runcommand.log
              
              
              ### The FUN begins
              #Get ROM name striping full path
              rom="${3##*/}"
              
              ### Set variables for your joypad and emulator
              ### Basic Configuraions - Standard controller mappings 
              basic360="sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv >/dev/null \
              	--evdev /dev/input/event0 \
              	--silent \
              	--detach-kernel-driver \
              	--force-feedback \
              	--mimic-xpad \
              	--dpad-as-button \
              	--trigger-as-button \
              	--evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_RX=x2,ABS_RY=y2,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y \
              	--evdev-keymap BTN_SOUTH=a,BTN_EAST=b,BTN_NORTH=x,BTN_WEST=y,BTN_THUMBL=tl,BTN_THUMBR=tr,BTN_TL=lb,BTN_TR=rb,BTN_TL2=lt,BTN_TR2=rt,BTN_SELECT=back,BTN_START=start,BTN_MODE=guide \
              	--calibration x1=-32767:0:32767,y1=-32767:0:32767,x2=-32767:0:32767,y2=-32767:0:32767"
              
              basicPS3="sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv >/dev/null \
              	--evdev /dev/input/event2 \
              	--silent \
              	--detach-kernel-driver \
              	--force-feedback \
              	--mimic-xpad \
              	--dpad-as-button \
              	--trigger-as-button \
              	--evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_Z=x2,ABS_RX=y2 \
              	--evdev-keymap KEY_#302=a,KEY_#301=b,BTN_DEAD=x,KEY_#300=y,BTN_THUMB=tl,BTN_THUMB2=tr,BTN_BASE5=lb,BTN_BASE6=rb,BTN_BASE3=lt,BTN_BASE4=rt,BTN_TRIGGER=back,BTN_TOP=start,BTN_SOUTH=guide,BTN_TOP2=du,BTN_PINKIE=dr,BTN_BASE=dd,BTN_BASE2=dl \
              	--calibration x1=-32767:0:32767,y1=-32767:0:32767,x2=-32767:0:32767,y2=-32767:0:32767"
              
              spyhuntEXAMPLE="sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
              	--evdev /dev/input/by-path/platform-3f980000.usb-usb-0:1.2:1.0-event-joystick \
              	--detach-kernel-driver \
              	--force-feedback \
              	--dpad-as-button \
              	--trigger-as-button \
              	--deadzone-trigger 15% \
              	--deadzone 4000 \
              	--device-name Logitech_Rumblepad_2 \
              	--silent \
              	--four-way-restrictor \
              	--axismap -Y1=Y1,-Y2=Y2 \
              	--evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_Z=x2,ABS_RZ=y2,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y \
              	--evdev-keymap BTN_THUMB2=a,BTN_THUMB=b,BTN_TOP=x,BTN_TRIGGER=y,BTN_BASE3=back,BTN_BASE4=start,BTN_TOP2=lb,BTN_PINKIE=rb,BTN_BASE5=tl,BTN_BASE6=tr,BTN_BASE=lt,BTN_BASE2=rt \
              	--ui-axismap x1=KEY_LEFT:KEY_RIGHT,y1=REL_Y:15,X2=KEY_1:KEY_2,Y2=KEY_3:KEY_4 \
              	--ui-buttonmap a=KEY_A,b=KEY_B,x=KEY_X,y=KEY_Y,lb=KEY_L,rb=KEY_R,lt=KEY_D,rt=KEY_F,tl=KEY_C,tr=KEY_V,du=KEY_UP,dd=KEY_DOWN,dl=KEY_LEFT,dr=KEY_RIGHT,start=KEY_T,back=KEY_E \
              	--ui-buttonmap guide=void"
              
              spyhunt360="sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
              	--evdev /dev/input/event0 \
              	--detach-kernel-driver \
              	--force-feedback \
              	--dpad-as-button \
              	--trigger-as-button \
              	--deadzone-trigger 15% \
              	--deadzone 4000 \
              	--silent \
              	--four-way-restrictor \
              	--axismap -Y1=Y1,-Y2=Y2 \
              	--evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_RX=x2,ABS_RY=y2,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y \
              	--evdev-keymap BTN_SOUTH=a,BTN_EAST=b,BTN_NORTH=x,BTN_WEST=y,BTN_THUMBL=tl,BTN_THUMBR=tr,BTN_TL=lb,BTN_TR=rb,BTN_TL2=lt,BTN_TR2=rt,BTN_SELECT=back,BTN_START=start,BTN_MODE=guide \
              	--ui-axismap x1=KEY_LEFT:KEY_RIGHT,y1=REL_Y:15,X2=KEY_1:KEY_2,Y2=KEY_3:KEY_4 \
              	--ui-buttonmap a=KEY_A,b=KEY_B,x=KEY_X,y=KEY_Y,lb=KEY_L,rb=KEY_R,lt=KEY_D,rt=KEY_F,tl=KEY_C,tr=KEY_V,du=KEY_UP,dd=KEY_DOWN,dl=KEY_LEFT,dr=KEY_RIGHT,start=KEY_T,back=KEY_E \
              	--ui-buttonmap guide=void"
              
              ### Extended Configurations
              ### Specific emulator configuration or any other parameters you will need only for some emulators
              scummVM="--axismap -Y1=Y1,-Y2=Y2 \
              	--ui-axismap x1=REL_X:10,y1=REL_Y:10 \
              	--ui-buttonmap a=BTN_LEFT,b=BTN_RIGHT,start=KEY_F5,back=KEY_ESC \
              	--ui-buttonmap guide=void,x=void,y=void,lb=void,rb=void,tl=void,tr=void,lt=void,rt=void,back=void \
              	--ui-axismap x2=void"
              
              amiga="--axismap -Y1=Y1,-Y2=Y2 \
              	--ui-axismap x2=REL_X:1,y2=REL_Y:1 \
              	--ui-axismap x1=KEY_LEFT:KEY_RIGHT,y1=KEY_DOWN:KEY_UP \
              	--ui-buttonmap du=KEY_UP,dd=KEY_DOWN,dl=KEY_LEFT,dr=KEY_RIGHT \
              	--ui-buttonmap lt=BTN_LEFT,rt=BTN_RIGHT,start=KEY_ESC,back=KEY_LEFTCTRL,y=KEY_SPACE,a=KEY_LEFTCTRL,b=KEY_LEFTALT,x=KEY_LEFTSHIFT \
              	--ui-buttonmap guide=void,tl=void,lt=void,rt=void,back=void \
              	--ui-axismap x2=void"
              
              fourway="--four-way-restrictor"
              
              invert="--ui-buttonmap du=KEY_DOWN,dd=KEY_UP"
              
              ### Kill Command
              xboxkill="sudo killall >/dev/null xboxdrv"
              
              ### Execute the driver with the configuration you need
              # $1 is the name of the emulation, not the name of the software used
              # it is intellivision not jzintv
              case $1 in
              
              	mame-libretro)
              	;;
              
              	arcade)
              		case $rom in
              			"spyhunt.zip") # Spy Hunter
              				$xboxkill
              				joycommand="$spyhunt360 &"
              				eval $joycommand
              			;;
              			"pacman.zip"|"mspacman.zip"|"frogger.zip") # Pac-Man Like (4 way)
              				$xboxkill
              				joycommand="$basic360 $fourway &"
              				eval $joycommand
              			;;
              			*) # Configuration for every other ROMs on this emulator
              				$xboxkill
              				joycommand="$basic360 &"
              				eval $joycommand
              			;;
              		esac
              	;;
              
              	daphne)
              	;;
              
              	scummvm)
              		$xboxkill
              		joycommand="$basicPS3 $scummVM &"
              		eval $joycommand
              	;;
              
              	amiga)
              		$xboxkill
              		joycommand="$basicPS3 $amiga &"
              		eval $joycommand
              	;;
              
              	intellivision)
              	;;
              esac
              

              RP 4.7.1 • Pi4 4Gig • CanaKit Aluminum • 64GB microSD • 1920x1080 BarTop [2 Sanwa sticks]

              mediamogulM 1 Reply Last reply Reply Quote 0
              • AlturisA
                Alturis
                last edited by

                Actually it appears I may be running into issues with text file carraige returns. Even though I have FileZilla set to transfer anything with .sh and .log extensions as ASCII it appears to not be properly correcting the carraige return styles between linux and windows.

                Seeing a bunch of stuff like this in the log

                /opt/retropie/configs/all/runcommand-onstart.sh: line 5: $'\r': command not found
                /opt/retropie/configs/all/runcommand-onstart.sh: line 107: syntax error near unexpected token `$'in\r''
                

                RP 4.7.1 • Pi4 4Gig • CanaKit Aluminum • 64GB microSD • 1920x1080 BarTop [2 Sanwa sticks]

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

                  @alturis said in Spy Hunter:

                  Basically it seems like the .sh files are not being executed at all.

                  One pretty effective way to troubleshoot is to take the xboxdrv launch command and run it by itself from the command line. The software will bark some pretty specific errors that'll let you know what's going on.

                  Actually it appears I may be running into issues with text file carraige returns. Even though I have FileZilla set to transfer anything with .sh and .log extensions as ASCII it appears to not be properly correcting the carraige return styles between linux and windows.

                  This is a pretty common issue when moving text files around from Windows to Linux. Try using Notepad++ or another text application that supports utf-8 text encoding. That should solve those carriage returns.

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

                  AlturisA 2 Replies Last reply Reply Quote 0
                  • AlturisA
                    Alturis @mediamogul
                    last edited by

                    @mediamogul Well I was able to get around the CR/LF issue by using WinSCP instead of FileZilla for now.

                    Thus far I have gotten as far as it appearing to have executed the shell script without any errors other than the killall xboxdrv logging a complaint about there being no processes running.

                    The end result is that I get no input response at all, however, when trying the basic test case of pacman.zip. So going to have to do some more experimentation to figure out how I have the setup working wrong and/or re-read your tutorial.

                    To clarify, I am using an Xbox 360 Controller via wireless bluetooth. So I am not looking to change absmap or keymap just game button mappings. Following your tutorial, though, I am trying to essentially map the Xbox 360 buttons as their default ones and then adjust the mappings differently per game.

                    RP 4.7.1 • Pi4 4Gig • CanaKit Aluminum • 64GB microSD • 1920x1080 BarTop [2 Sanwa sticks]

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

                      @Alturis

                      other than the killall xboxdrv logging a complaint about there being no processes running.

                      Well, that says it was never running, but it's unusual that xboxdrv wasn't throwing any errors. When you tried launching it directly from the command line, did you have > /dev/null 2>&1 in the command? If so, make sure you remove it for troubleshooting purposes.

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

                        @alturis I've got code a little bit similar to your's, but I'm not sure you can have 3 options eg spyhunter, then pacman then *. I'd simplify it first with 2 options, test it and, once that's working, then try 3 eg try:

                        	arcade)
                        		case $rom in
                        			"spyhunt.zip") # Spy Hunter
                        				$xboxkill
                        				joycommand="$spyhunt360 &"
                        				eval $joycommand
                        			;;
                        			*) # Configuration for every other ROMs on this emulator
                        				$xboxkill
                        				joycommand="$basic360 &"
                        				eval $joycommand
                        			;;
                        		esac
                        

                        The code above is very similar to what I have and it works well.

                        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

                        AlturisA 2 Replies Last reply Reply Quote 0
                        • AlturisA
                          Alturis @spud11
                          last edited by Alturis

                          @spud11 Hmm... Thanks for the suggestion. I am no unix shell expert in any sense of the word but I am thinking that is not likely the issue. It does appear to actually execute the xboxdrv driver as I end up with no input. So I think my problem is in the actual options for the command. I am working on adding some more logging to wipe more of the dirt off the window and see whats going on so to speak.

                          Yeah. Confirmed by adding info to the log

                          echo "joycommand:" >> /dev/shm/runcommand.log
                          echo $joycommand >> /dev/shm/runcommand.log
                          

                          Outputs this when running mspacman.zip:

                          joycommand:
                          sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv --evdev /dev/input/by-path/platform-3f980000.usb-usb-0:1.4:1.0-event-joystick --silent --detach-kernel-driver --force-feedback --mimic-xpad --dpad-as-button --trigger-as-button --evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_RX=x2,ABS_RY=y2,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y --evdev-keymap BTN_SOUTH=a,BTN_EAST=b,BTN_NORTH=x,BTN_WEST=y,BTN_THUMBL=tl,BTN_THUMBR=tr,BTN_TL=lb,BTN_TR=rb,BTN_TL2=lt,BTN_TR2=rt,BTN_SELECT=back,BTN_START=start,BTN_MODE=guide --calibration x1=-32767:0:32767,y1=-32767:0:32767,x2=-32767:0:32767,y2=-32767:0:32767 --four-way-restrictor &
                          

                          RP 4.7.1 • Pi4 4Gig • CanaKit Aluminum • 64GB microSD • 1920x1080 BarTop [2 Sanwa sticks]

                          1 Reply Last reply Reply Quote 0
                          • AlturisA
                            Alturis
                            last edited by

                            Ok. So I think it is actually working. But because it is registering it as a new controller rather than stomping my existing controller it ends up that RetroArch is still listening to my original controller setup which has now been redirected as a new one (event3) and ends up getting no input at all.

                            xboxdrv 0.8.8 - http://pingus.seul.org/~grumbel/xboxdrv/ 
                            Copyright © 2008-2011 Ingo Ruhnke <grumbel@gmail.com> 
                            Licensed under GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> 
                            This program comes with ABSOLUTELY NO WARRANTY. 
                            This is free software, and you are welcome to redistribute it under certain 
                            conditions; see the file COPYING for details. 
                            
                            
                            Your Xbox/Xbox360 controller should now be available as:
                              /dev/input/js1
                              /dev/input/event3
                            
                            Press Ctrl-C to quit
                            RT=start,BTN_MODE=guide --calibration x1=-32767:0:32767,y1=-32767:0:32767,x2=-32767:0:32767,y2=-32767:0:32767 --four-way-restrictor &
                            

                            RP 4.7.1 • Pi4 4Gig • CanaKit Aluminum • 64GB microSD • 1920x1080 BarTop [2 Sanwa sticks]

                            1 Reply Last reply Reply Quote 0
                            • AlturisA
                              Alturis @mediamogul
                              last edited by

                              @mediamogul I tried to solve that by following the tutorial on swapping player joypad assignments. I created a retroarch.cfg_default and retroarch.cfg_xboxdrv and added lines to the shell script to rm retroarch.cfg and cp one or the other in its place selectively based on the same logic.

                              But I think I am still missing some piece to this puzzle.
                              My 360 controller is normally event0 but after running the xboxdrv it still shows its registering it as event3

                              Your Xbox/Xbox360 controller should now be available as:
                                /dev/input/js1
                                /dev/input/event3
                              

                              I am thinking the missing piece is getting retroarch to listen to event3 at all.

                              retroarch.cfg_default

                              # Settings made here will only override settings in the global retroarch.cfg if placed above the #include line
                              
                              input_remapping_directory = "/opt/retropie/configs/arcade/"
                              
                              #include "/opt/retropie/configs/all/retroarch.cfg"
                              

                              retroarch.cfg_xboxdrv

                              # Settings made here will only override settings in the global retroarch.cfg if placed above the #include line
                              
                              input_remapping_directory = "/opt/retropie/configs/arcade/"
                              
                              input_player1_joypad_index = "1"
                              input_player2_joypad_index = "0"
                              #input_player2_analog_dpad_mode = 1
                              
                              #include "/opt/retropie/configs/all/retroarch.cfg"
                              

                              RP 4.7.1 • Pi4 4Gig • CanaKit Aluminum • 64GB microSD • 1920x1080 BarTop [2 Sanwa sticks]

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

                                @alturis

                                I tried to solve that by following the tutorial on swapping player joypad assignments.

                                Which tutorial are you referencing? If you haven't tried it already, this sounds like a good use case for @meleu's joystick selection script.

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

                                AlturisA 1 Reply Last reply Reply Quote 0
                                • AlturisA
                                  Alturis @mediamogul
                                  last edited by Alturis

                                  @meleu / @mediamogul I am all ears!

                                  I was referring to all the info on how to setup xboxdrv here:
                                  https://github.com/RetroPie/RetroPie-Setup/wiki/Universal-Controller-Calibration-&-Mapping-Using-xboxdrv

                                  Actually I looked up what you are referring to and I think that would be a bit over the top for what I am looking to do.
                                  https://github.com/meleu/RetroPie-joystick-selection

                                  One of the things that is important to me with this setup is that when you select a game it would "just work" without popping up any dialogs or showing the retropie "dos" looking dialogs etc.

                                  So ultimately any solution I have on it I would want it to just detect that a certain game is running and setup the controls in a way that makes the best sense for that title and not require the player to see any of this going on.

                                  RP 4.7.1 • Pi4 4Gig • CanaKit Aluminum • 64GB microSD • 1920x1080 BarTop [2 Sanwa sticks]

                                  1 Reply Last reply Reply Quote 0
                                  • AlturisA
                                    Alturis @spud11
                                    last edited by

                                    @spud11 said in Spy Hunter:

                                    The code above is very similar to what I have and it works well.

                                    Would you mind posting the exact syntax of your xboxdrv parameters?

                                    RP 4.7.1 • Pi4 4Gig • CanaKit Aluminum • 64GB microSD • 1920x1080 BarTop [2 Sanwa sticks]

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

                                      @alturis I have 4 DragonRise usb joysticks. I've just copied Player 1's input below for Advance Mame (but I have similar setups for FBA and Mame 2003). Each button I have corresponds to a key on the keyboard. In Mame, I pressed TAB and allocated keys to up/down/left/right etc. Those keys correspond to the keys allocated in xboxdrv:

                                      ### To exit AdvMame automatically, I've created a macro in /opt/retropie/configs/all and mapped back+rt to back+rt=macro:/opt/configs/all/advmame_exit.macro  .  I've made this file executable.
                                      ### The contents of this file are:
                                      ### send KEY_ESC 1
                                      ### wait 50
                                      ### send KEY_DOWN 1
                                      ### wait 50
                                      ### send KEY_ENTER 1
                                      Player1_AdvMame_Sim="sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv > /dev/null 2>&1 \
                                      --silent \
                                      --detach-kernel-driver \
                                      --deadzone=4000 \
                                      --deadzone-trigger 15% \
                                      --force-feedback \
                                      --mimic-xpad \
                                      --trigger-as-button \
                                      --ui-buttonmap tl=void,tr=void,guide=void \
                                      --evdev /dev/input/by-path/platform-3f980000.usb-usb-0:1.3.3:1.0-event-joystick \
                                      --device-name "Player_1" \
                                      --evdev-absmap ABS_X=y1,ABS_Y=x1 \
                                      --evdev-keymap BTN_THUMB2=a,BTN_PINKIE=b,BTN_TRIGGER=x,BTN_THUMB=y,BTN_TOP2=lb,BTN_TOP=rb,BTN_BASE3=back,BTN_BASE6=start,BTN_BASE2=lt,BTN_BASE5=rt \
                                      --ui-axismap X1=KEY_LEFT:KEY_RIGHT,Y1=KEY_UP:KEY_DOWN \
                                      --ui-buttonmap a=KEY_LEFTCTRL,b=KEY_LEFTALT,x=KEY_SPACE,y=KEY_LEFTSHIFT,lb=KEY_C,rb=KEY_V,back=KEY_UNKNOWN,start=KEY_UNKNOWN,lt=KEY_5+KEY_1,rt=KEY_6+KEY_2 \
                                      --ui-buttonmap start+back=KEY_LEFTSHIFT+KEY_F7+KEY_A,back+start=KEY_F7+KEY_A \
                                      --ui-buttonmap back+rt=macro:/opt/retropie/configs/all/advmame_exit.macro"
                                      

                                      I also have a file called 99-xboxdrv.rules which has the following content:

                                      SUBSYSTEM=="input", ATTRS{name}=="Player_1", GROUP="users", MODE="0666", ENV{ID_INPUT_KEYBOARD}="1"
                                      SUBSYSTEM=="input", ATTRS{name}=="Player_2", GROUP="users", MODE="0666", ENV{ID_INPUT_KEYBOARD}="1"
                                      SUBSYSTEM=="input", ATTRS{name}=="Player_3", GROUP="users", MODE="0666", ENV{ID_INPUT_KEYBOARD}="1"
                                      SUBSYSTEM=="input", ATTRS{name}=="Player_4", GROUP="users", MODE="0666", ENV{ID_INPUT_KEYBOARD}="1"
                                      

                                      My runcommand-onstart file is about 100Kb in size because it covers most emulators, so it's too big to insert here in its entirety.

                                      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

                                      AlturisA 1 Reply Last reply Reply Quote 0
                                      • AlturisA
                                        Alturis @spud11
                                        last edited by

                                        @spud11 All good info thank you. Ultimately I am going to be putting this pi into a bartop (https://gameroomsolutions.com/shop/bartop-arcade-kit-deluxe) so I think I am going to come back around and revisit this once I have that setup so that I can analyze the input of those joysticks and buttons.

                                        But I should probably continue getting this 360 controller to work with it so that I buildup the knowledge I will need about where I am going wrong right now.

                                        RP 4.7.1 • Pi4 4Gig • CanaKit Aluminum • 64GB microSD • 1920x1080 BarTop [2 Sanwa sticks]

                                        herb_fargusH 1 Reply Last reply Reply Quote 0
                                        • herb_fargusH
                                          herb_fargus administrators @Alturis
                                          last edited by

                                          @alturis

                                          “GUTS” Mega Pack
                                          Save your time making sure you got everything! Includes everything except the monitor you will need.
                                          Raspberry Pi3 computer; RPI certified power supply; 200gb microsd – Pre-flashed with attract mode/retropie; pre-configured for our control kits; le

                                          These people are greedy wankers it's a pity people support them financially.

                                          If you read the documentation it will answer 99% of your questions: https://retropie.org.uk/docs/

                                          Also if you want a solution to your problems read this first: https://retropie.org.uk/forum/topic/3/read-this-first

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

                                            @herb_fargus Have a look at the "Plug & Play Pack" - $1,219.98!

                                            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

                                            AlturisA 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.