• Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login
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 460.9k 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.
  • E
    ExarKunIv @mediamogul
    last edited by 2 Feb 2017, 20:00

    @mediamogul

    that did it.

    the controls work great.
    Thank you so much

    a quick thing. the mouse pointer slowly moves up.
    where in my config would control that.

    #!/bin/sh
    if [ "$1" = "scummvm" ]
    then
    sudo killall > /dev/null 2>&1 xboxdrv
    sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv > /dev/null 2>&1 \
    --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_RZ=y2,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y \
    --evdev-keymap KEY_#304=a,KEY_#305=b,KEY_#307=x,KEY_#308=y,KEY_#312=lt,KEY_#313=rt,KEY_#310=lb,KEY_#311=rb,KEY_#317=tl,KEY_#318=tr,KEY_#314=back,KEY_#315=start \
    --calibration x1=-32767:0:32767,y1=-32767:0:32767,x2=-32767:0:32767,y2=-32767:0:32767 \
    --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 \
    &
    fi

    RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
    RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
    Maintainer of RetroPie-Extra .

    M 1 Reply Last reply 2 Feb 2017, 20:08 Reply Quote 0
    • M
      mediamogul Global Moderator @ExarKunIv
      last edited by 2 Feb 2017, 20:08

      @ExarKunIv

      You can change the cursor speed by altering:

      --ui-axismap x1=REL_X:10,y1=REL_Y:10 \
      

      Changing the number 10 anything higher will increase the speed. It can also be brought down as low as 01 to decrease the speed as well.

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

      E 1 Reply Last reply 2 Feb 2017, 20:14 Reply Quote 1
      • E
        ExarKunIv @mediamogul
        last edited by 2 Feb 2017, 20:14

        @mediamogul

        again I thank you

        RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
        RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
        Maintainer of RetroPie-Extra .

        M 1 Reply Last reply 2 Feb 2017, 20:22 Reply Quote 1
        • M
          mediamogul Global Moderator @ExarKunIv
          last edited by 2 Feb 2017, 20:22

          @ExarKunIv

          Not a problem. Thanks to you as well. Without this issue, the guide would have remained essentially broken.

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

          1 Reply Last reply Reply Quote 1
          • E
            ExarKunIv
            last edited by 3 Feb 2017, 18:17

            now that i have something to go off that is working, im trying to get more configs to work for other systems.

            so my question is how to you let the system know that you want the axismap to be fore a joystick.

            im trying to get my apple 2 to work. i go the keyboard going :)
            just need it to see my axismap as a joystick not a mouse, or will do it do that automatically?

            i want to try my best before i post my config and have someone point out what im doing wrong. need to learn it somehow :P

            RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
            RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
            Maintainer of RetroPie-Extra .

            M 1 Reply Last reply 3 Feb 2017, 18:49 Reply Quote 0
            • M
              mediamogul Global Moderator @ExarKunIv
              last edited by mediamogul 2 Mar 2017, 18:55 3 Feb 2017, 18:49

              @ExarKunIv

              For the Apple 2, I just mapped a series of keyboard keys to the joystick and did the same for the action button. I also mapped the various application commands so that they line up with the defaults in RetroArch just because it's easier for me to remember. Once done, I launched the software and invoked the options menu (now 'select+x' due to my mapping) and from there it allowed me to map the controller in a similar way to Emulation Station. Obviously there are many ways to approach this to suit anyone's preference, but if it helps, I'll include my mapping below for reference.

              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 (xboxdrv)" \
              	--silent \
              	--axismap -Y1=Y1,-Y2=Y2 \
              	--buttonmap tl^toggle=tl \
              	--buttonmap tr^toggle=tr \
              	--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_KP4:KEY_KP6,Y1=KEY_KP8:KEY_KP2,X2=KEY_UNKNOWN:KEY_UNKNOWN,Y2=KEY_UNKNOWN:KEY_UNKNOWN \
              	--ui-buttonmap b=KEY_KPDOT,a=KEY_KP0,x=KEY_UNKNOWN,y=KEY_UNKNOWN,lb=KEY_F3,rb=KEY_F4,du=KEY_KP8,dd=KEY_KP2,dl=KEY_KP4,dr=KEY_KP6,start=KEY_PAUSE,back=KEY_UNKNOWN,lt=KEY_UNKNOWN,rt=KEY_UNKNOWN,tl=KEY_UNKNOWN,tr=KEY_UNKNOWN \
              	--ui-buttonmap back+start=KEY_F10,back+b=KEY_F2,back+y=KEY_F8,back+lb=KEY_LEFTALT+KEY_F12,back+rb=KEY_LEFTALT+KEY_F11,back+a=KEY_PAUSE \
              	--ui-buttonmap lt+a=KEY_A,lt+b=KEY_B,lt+x=KEY_X,lt+y=KEY_Y,lt+lb=KEY_L,lt+rb=KEY_R,lt+du=KEY_UP,lt+dd=KEY_DOWN,lt+dl=KEY_LEFT,lt+dr=KEY_RIGHT,lt+start=KEY_T,lt+back=KEY_E \
              	--ui-buttonmap rt+du=KEY_UP,rt+dd=KEY_DOWN,rt+dl=KEY_LEFT,rt+dr=KEY_RIGHT,rt+b=KEY_ESC,rt+a=KEY_ENTER \
              	--ui-axismap tl+x1=REL_X:20,tl+y1=REL_Y:20 \
              	--ui-buttonmap tr+b=BTN_LEFT,tr+a=BTN_RIGHT \
              	--ui-buttonmap guide=void \
              	&
              

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

              E 1 Reply Last reply 3 Feb 2017, 18:54 Reply Quote 1
              • E
                ExarKunIv @mediamogul
                last edited by 3 Feb 2017, 18:54

                @mediamogul

                wow

                thank you, that was more then i ask, cool :)

                Ill give that a go and see what i can get :)

                thanks again

                RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                Maintainer of RetroPie-Extra .

                1 Reply Last reply Reply Quote 0
                • E
                  ExarKunIv
                  last edited by ExarKunIv 2 Mar 2017, 22:10 3 Feb 2017, 22:04

                  here is what i got

                  if [ "$1" = "apple2" ]
                  then
                  sudo killall > /dev/null 2>&1 xboxdrv
                  sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv > /dev/null 2>&1 \
                      --evdev /dev/input/event2 \
                      --silent \
                  	--detach-kernel-driver \
                  	--force-feedback \
                  	--mimic-xpad \
                  	--dpad-as-button \
                          --deadzone 15% \
                  	--trigger-as-button \
                  	--evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_Z=x2,ABS_RZ=y2,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y \
                  	--evdev-keymap KEY_#304=a,KEY_#305=b,KEY_#307=x,KEY_#308=y,KEY_#312=lt,KEY_#313=rt,KEY_#310=lb,KEY_#311=rb,KEY_#317=tl,KEY_#318=tr,KEY_#314=back,KEY_#315=start \
                  	--calibration x1=-32767:0:32767,y1=-32767:0:32767,x2=-32767:0:32767,y2=-32767:0:32767 \
                  	--axismap -Y1=Y1,-Y2=Y2 \
                          --ui-buttonmap a=KEY_J,b=KEY_A,start=KEY_F10,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 \
                  &
                  fi
                  

                  i can get my few keys to work, and thats it. all i need it the joystick to work now

                  here is the funny thing. if i remove the above script from my runcommand, and use a usb keyboard to press A.

                  the left stick works perfect. so the basic emulators see it as a joystick.
                  so is there a way to only have the keys map but leave the analog stick running off the basic emulators.
                  im thinking not, but worth a ask

                  the game im trying it all on is bouldersdash

                  RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                  RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                  Maintainer of RetroPie-Extra .

                  M 2 Replies Last reply 3 Feb 2017, 23:56 Reply Quote 0
                  • M
                    mediamogul Global Moderator @ExarKunIv
                    last edited by mediamogul 2 Apr 2017, 00:01 3 Feb 2017, 23:56

                    @ExarKunIv said in Guide: Advanced Controller Mappings:

                    all i need it the joystick to work now

                    I seem to remember there being some extra hoodoo voodoo to be done in the Linapple config file to fully enable joystick support. I'm about to head out for the night, but I'll have a look later to see what's required. In the mean time, here's my linapple.conf for comparison:

                    # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                    # !! Note 1: this configuration file is for installed linapple
                    # !! If you have edited Makefile (in src directory of linaple package) 
                    # !! to change INSTDIR - path where lianpple are to be installed 
                    # !! you should consider change some paths for disk images and FTP local directory 
                    # !! in order to let linapple find proper way to access needed stuff
                    
                    # Note 2: Default install directory (for *nix) is /usr/local/linapple/ 
                    # (defined in Make file in src directory as INSTDIR variable)
                    
                    #
                    # linapple.conf - config file used by LinApple, Apple][ (Apple2, Apple 2) emulator for Linux and other systems with SDL support
                    #
                    # Please, note: This file is for linapple version 2.0 and above
                    #
                    
                    # Remember - all lines beginning with '#' are considered comments.
                    #	All values are CASE SENSITIVE, you should not use, for example, 'joystick 0' instead of 'Joystick 0'.
                    
                    ####################################################################
                    # First of all let us determine our machine type
                    # that is:
                    #	0 - old Apple][, right out of the hands of Steve Wozniak and Steve Jobs in far 1977? year.
                    #	1 - Apple][+	- same as Apple][ with somewhat enbettered functionality
                    #	2 - Apple//e	- Enhanced Apple][ with 80-column mode and other useful additions
                    #	3 - Apple//e enhanced	- currently same as Apple//e? Please, ask Tom Charlesworth about it.
                    # Default is 3
                    
                    	Computer Emulation =	2
                    
                    ####################################################################
                    #
                    # Sound Emulation.
                    # Possible values currently are 0 - none, and 1 - use SDL Audio for sounds
                    # Default is 1
                    
                    	Sound Emulation =	1
                    
                    #######################################################################
                    #
                    # Soundcard Type means what do you want to use in Slot7 as a sound card
                    #
                    #	0	- uninit	//??
                    #	1	- nothing - disable sound card in Slot 4
                    #	2	- use Mockingboard in Slot 4 (Mockingboard is like SoundBlaster for PC, if you hear about it)
                    #	3	- use Phasor in Slot 4. Phasor is also a sort of ancient sound cards. Ahhh, what sounds they have!!!
                    #
                    # Default value is 2 (use Mockingboard).
                    # But, please, remember, that currently Mockingboard/Phasor support was not done fully in linapple.
                    # I need some help for this to port it from AppleWin.  ^_^
                    
                    	Soundcard Type =	2
                    
                    #######################################################################
                    #
                    #	Joysticks, those sticks of joy! There may be 2 joysticks at the same time
                    # Possible values are:
                    #	0	- joystick disabled
                    #	1	- use PC joystick #1 or #2, for corresponding joystick
                    
                    #	2	- Keyboard standard
                    #	3	- Keyboard centered
                    # When joysticks used as a keyboard, they are stuck to Numpad keys (1-9 - axis movement, 0 - button1, . - button2)
                    #  when centered used, axis of joystick will be centered after releasing any cursor (Numpad 1..9) key.
                    # otherwise it assumed to be pressed always
                    
                    #	4	- Use mouse as a joystick. Rather interesting thing, try it. Useful in Fantavision(tm)by Broderbund Software
                    
                    # Default values are 2 for Joystick 0, and 0 for Joystick 1
                    
                    	Joystick 0	=	3
                    	Joystick 1	=	0
                    
                    # For Joysticks you can define which Joystick index number, axis number, and buttons.
                    # 
                    # Default for Joystick 1 is index 0, axis 0 and 1, buttons 0 and 1.
                    # Default for Joystick 2 is index 1, axis 0 and 1, button 0.
                    
                    
                    	Joy0Index	=	0
                    	Joy1Index	=	1
                    	Joy0Button1	=	0
                    	Joy0Button2	=	1
                    	Joy1Button1	=	0
                    	Joy0Axis0	=	0
                    	Joy0Axis1	=	1
                    	Joy1Axis0	=	0
                    	Joy1Axis1	=	1
                    	
                    # Enable Quitting the program with by pressing two joystick buttons at the same time
                    # Default is enabled, default buttons are 8 and 9. (Xbox 360 back and start)
                    
                    	JoyExitEnable	=	1
                    	JoyExitButton0	=	8
                    	JoyExitButton1	=	9
                    
                    ##########################################################################
                    #
                    # Serial Port joins your Apple][ machine to any device through serial ports.
                    # Possible values are 0 - disabled, and 1 to 100 which means device /dev/ttyS0 .. /dev/ttyS99 relatively
                    #
                    # Default is 0, disabled. Needs testing.
                    
                    	Serial Port	=	0
                    
                    ##########################################################################
                    
                    # Emulation Speed is speed of emulator.
                    # Values are from 0 (lowest speed) till 40 (fastest)
                    # Default value is 10 (normal speed - 1 MHz)
                    
                    	Emulation Speed =	13
                    
                    ##########################################################################
                    #
                    # Enhance Disk Speed - if the disk spinning should be as in real computer
                    # Possible values - 0 - yes, the disk spinning speed is like in real Apple][
                    #		and 1 - use enhanced disk speed.
                    # Default is 1.
                    
                    	Enhance Disk Speed =	1
                    
                    ##########################################################################
                    #
                    # Video Emulation - a type of video emulation.
                    # Please, remember that you always can change it using F9 key in emulator.
                    
                    # Possible values are:
                    #	0	- use monochrome screen with given color as white (see below Monochrome Color section)
                    
                    # Color modes, which names speak for themselves.
                    #	1	- Color Standard
                    #	2	- Color Text Optimized
                    #	3	- Color TV emulation
                    #	4	- Color Half-Shift
                    
                    # Monochrome modes with predefined monochrome colors
                    #	5	- Monochrome Amber
                    #	6	- Monochrome Green
                    #	7	- Monochrome White
                    #
                    #	Default value is 3 - Color TV emulation!
                    
                    	Video Emulation =	1
                    
                    ##########################################################################
                    #
                    # Monochrome Color - define monochrome color that suit you best here.
                    # Color defined as #RRGGBB, where RR - 2 digits for Red color intensity, GG - same for Green color, and BB for Blue.
                    # All digits are in HEX-format, 0-9 and A - F.
                    # Default value is #C0C0C0.
                    
                    	Monochrome Color =	#FFC010
                    
                    ##########################################################################
                    #
                    # Mouse in slot 4. Yes, old Apples][ have it! First they saw it in Xerox Development Center.
                    # Possible values are 0 - off, and 1 - on.
                    # Remember, that you can not use Mouse and Mockingboard/Phasor at the same time, for they use same slot (#4).
                    # So, before enabling mouse support in your machine, switch off Mockingboard (see section above).
                    
                    # Default is 0.
                    
                    	Mouse in slot 4 =	0
                    
                    ##########################################################################
                    #
                    #	Parallel printer allows you to print any DOS3.3 or Applesoft Basic(tm) output to specified file
                    #	(after PR#1 at DOS3.3 prompt)
                    #
                    # Default is Printer.txt in working directory (which is set inside linapple bin)
                    
                    	Parallel Printer Filename =
                    
                    ##########################################################################
                    #
                    #	HDD - Hard Disk Device for Apple][
                    #
                    # Harddisk Enable. Same as for mouse. 0 means no Harddisk support, and 1 - yes, give that Harddisk!
                    # Remember, that hard disk images for Apple][ are in .HDV format as a rule (with .hdv extensions)
                    # Hard disk uses Slot 7 in Apple][. So, to access it use something like '] PR#7' at Applesoft Basic(tm) prompt.
                    # Default is 0.
                    
                    	Harddisk Enable =	0
                    
                    # HDV Starting Directory is the starting directory for choose HDV disk images
                    # Default: your home directory (if not set)
                    
                    	HDV Starting Directory =	
                    
                    # And you may also predefine hard disk images here, for 1 and 2 correspondingly.
                    # Please, use Shift+F3 and Shift+F4 in emulator for change them in real time.
                    # Remember, that values given here will be rewritten if you change them in emulator.
                    # Default - do not use any HDV images
                    
                    	Harddisk Image 1 =	
                    	Harddisk Image 2 =	
                    
                    ##########################################################################
                    #
                    # Slot 6 Directory - starting directory for chosing Apple's disk images in slot 6
                    #	(usual slot for FDD 140Kb Apple's disks)
                    #
                    # Default: your home directory (if not set)
                    
                    	Slot 6 Directory =	/home/pi/RetroPie/roms/apple2/Prince of Persia
                    
                    # You may also provide images to be inserted in 1 and 2 drive (D1 or D2) of Slot 6 at startup
                    # Default: do not use, starting with image named Master.dsk in current directory
                    
                    # To get access to the disk in second drive(D2), use something like '] CATALOG,D2' at Applesoft DOS(tm) prompt.
                    
                    	Disk Image 1 =	/home/pi/RetroPie/roms/apple2/Prince of Persia/prince of persia side b (san inc crack).dsk
                    	Disk Image 2 =	
                    
                    # The next parameter defines if you wish to auto-load these disk images in drives at startup!
                    # Default value is 0 (Off), suggested: 1 (On)
                    
                    	Slot 6 Autoload =	0
                    
                    ##########################################################################
                    #
                    # Save State Filename - file name for saving/loading state with keys F11 and F12 in emulator.
                    # Default is none. Note: you can choose it at runtime by pressing F11 (for saving)  or F12 (for loading)
                    
                    	Save State Filename =	
                    
                    # SaveSate Directory is a directory where current states will be saved by using F11,F12 (or ALT+F11, ALT+F12 keys, or Ctrl+0..9, Ctrl+Shift+0..9)
                    #Default is none, which means your home directory
                    
                    	Save State Directory =	
                    
                    # Define if you wish to save state on exit and restore it at startup by the next parameter:
                    # Possible values are 0 - off, and 1 - on. When On, save state will be saved in Save State Filename at exit,
                    # and will be restored at startup
                    
                    # Default value is 0.
                    
                    	Save State On Exit = 0
                    
                    ##########################################################################
                    #
                    # Next parameters enables some functions at startup
                    #
                    # Fullscreen - if emulator should startup in Fullscreen mode (0 - no, 1 - yes!)
                    # Boot at startup - if emulator should boot after starting up from Disk1 in SLot 6 (0 - yes, 1 - no)
                    # Booting at startup disables show logo.
                    #
                    # Show Leds 1/0 - show leds while accessing disks (140Kb and HDD) or not, default - 1
                    
                    	Fullscreen =	1
                    	Boot at Startup =	1
                    	Show Leds	= 0
                    
                    ##########################################################################
                    #
                    # FTP Server - full path to default FTP server with Apple2 disk images
                    # FTP UserPass - user:password for accessing this server
                    # FTP Local Dir - path on local disk to store downloaded ftp files, 
                    
                    # !!! Warning: FTP Local Dir should be existing directory with write access either FTP won't work
                    # Note : FTP Server MUST end with '/' sign either it won't work! FTP Local Dir should not end with '/'
                    # Note : Also there must be cache directory (e.g. directory named `cache` inside FTP Local Dir
                    # where all downloaded directories are cached for 3 days
                    
                            FTP Server =    ftp://ftp.apple.asimov.net/pub/apple_II/images/games/
                            FTP ServerHDD = ftp://ftp.apple.asimov.net/pub/apple_II/images/
                            FTP UserPass  = anonymous:my-mail@mail.com
                    
                    #       YOU MUST SET THIS TO USE FTP! and it must have a cache subdir or FTP will fail
                    #	So if your FTP Local Dir = /home/user/temp you need a directory /home/user/temp/cache
                    
                            FTP Local Dir = /home/user/temp
                    
                    
                    ##########################################################################
                    #
                    # Screen properties
                    # Note: not all screen sizes can work in full screen mode, so be careful
                    # Also if you are using not default mode, the speed of emulator can fall,
                    # which can be spotted on old machines
                    
                    # Use this as screen factor in zooming screen.
                    # Values less than 1.0 will make screen smaller and vice versa!
                    # Suggested values are 0.3 till 3.0?
                    
                    #	Screen factor	= 1.5
                    
                    # Note: if you want to use Screen Width and Screen Height directly, comment out `Screen factor` whole option
                    # otherwise they won't take effect
                    # Default Screen Width is 560, Screen Height is 384
                    
                    	Screen Width 	= 800
                    	Screen Height	= 600
                    
                    ##########################################################################
                    #	Disable SDL Mouse Cursor, Handy for Full screen emulation.
                    #	Default is Disabled
                    
                        DisableCursor   =       1
                    
                    

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

                    1 Reply Last reply Reply Quote 0
                    • M
                      mediamogul Global Moderator @ExarKunIv
                      last edited by mediamogul 2 Apr 2017, 19:02 4 Feb 2017, 07:36

                      @ExarKunIv

                      OK, looking at the linapple.conf file, I remember two things. First, I mapped the joystick to the specific keyboard keys Linapple uses for control, as seen in my configuration above. Then I had to set the type of joystick emulation that would be used for player 1 in in the linapple.conf file to "keyboard centered", seen in the excerpt below.

                      # Joysticks, those sticks of joy! There may be 2 joysticks at the same time
                      # Possible values are:
                      # 0 - joystick disabled
                      # 1 - use PC joystick #1 or #2, for corresponding joystick
                      # 2 - Keyboard standard
                      # 3 - Keyboard centered
                      # When joysticks used as a keyboard, they are stuck to Numpad keys (1-9 - axis movement, 0 - button1, . - button2)
                      # when centered used, axis of joystick will be centered after releasing any cursor (Numpad 1..9) key.
                      # otherwise it assumed to be pressed always
                      # 4 - Use mouse as a joystick. Rather interesting thing, try it. Useful in Fantavision(tm)by Broderbund Software
                      # Default values are 2 for Joystick 0, and 0 for Joystick 1
                      Joystick 0 = 3
                      Joystick 1 = 0

                      Second, notice that Joystick 1 (Player 2) is set to 0, essentially telling the software that there is no second controller. Only after doing this will the second action button on Player 1 become available. This second button is necessary in many games such as 'Lode Runner' and 'Escape From Castle Wolfenstein'.

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

                      1 Reply Last reply Reply Quote 0
                      • E
                        ExarKunIv
                        last edited by ExarKunIv 2 Jun 2017, 17:28 6 Feb 2017, 17:28

                        @mediamogul
                        ok cool ill give that a try.

                        thanks again for all your help

                        RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                        RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                        Maintainer of RetroPie-Extra .

                        1 Reply Last reply Reply Quote 0
                        • E
                          ExarKunIv
                          last edited by 6 Feb 2017, 18:55

                          it works :)

                          heres my config for my 8BitDo FC30

                          if [ "$1" = "apple2" ]
                          then
                          sudo killall > /dev/null 2>&1 xboxdrv
                          sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv > /dev/null 2>&1 \
                          	--evdev /dev/input/event2 \
                          	--detach-kernel-driver \
                          	--force-feedback \
                          	--dpad-as-button \
                          	--trigger-as-button \
                          	--deadzone-trigger 15% \
                          	--deadzone 4000 \
                          	--silent \
                          	--axismap -Y1=Y1,-Y2=Y2 \
                          	--buttonmap tl^toggle=tl \
                          	--buttonmap tr^toggle=tr \
                          	--evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_Z=x2,ABS_RZ=y2,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y \
                          	--evdev-keymap KEY_#304=a,KEY_#305=b,KEY_#307=x,KEY_#308=y,KEY_#312=lt,KEY_#313=rt,KEY_#310=lb,KEY_#311=rb,KEY_#317=tl,KEY_#318=tr,KEY_#314=back,KEY_#315=start \
                          	--ui-axismap X1=KEY_KP4:KEY_KP6,Y1=KEY_KP8:KEY_KP2,X2=KEY_UNKNOWN:KEY_UNKNOWN,Y2=KEY_UNKNOWN:KEY_UNKNOWN \
                          	--ui-buttonmap b=KEY_KPDOT,a=KEY_KP0,x=KEY_UNKNOWN,y=KEY_UNKNOWN,lb=KEY_F3,rb=KEY_F4,du=KEY_KP8,dd=KEY_KP2,dl=KEY_KP4,dr=KEY_KP6,start=KEY_PAUSE,back=KEY_UNKNOWN,lt=KEY_UNKNOWN,rt=KEY_UNKNOWN,tl=KEY_UNKNOWN,tr=KEY_UNKNOWN \
                          	--ui-buttonmap back+start=KEY_F10,back+b=KEY_F2,back+y=KEY_F8,back+lb=KEY_LEFTALT+KEY_F12,back+rb=KEY_LEFTALT+KEY_F11,back+a=KEY_PAUSE \
                          	--ui-buttonmap lt+a=KEY_A,lt+b=KEY_B,lt+x=KEY_X,lt+y=KEY_Y,lt+lb=KEY_L,lt+rb=KEY_R,lt+du=KEY_UP,lt+dd=KEY_DOWN,lt+dl=KEY_LEFT,lt+dr=KEY_RIGHT,lt+start=KEY_T,lt+back=KEY_E \
                          	--ui-buttonmap rt+du=KEY_UP,rt+dd=KEY_DOWN,rt+dl=KEY_LEFT,rt+dr=KEY_RIGHT,rt+b=KEY_ESC,rt+a=KEY_ENTER \
                          	--ui-axismap tl+x1=REL_X:20,tl+y1=REL_Y:20 \
                          	--ui-buttonmap tr+b=BTN_LEFT,tr+a=BTN_RIGHT \
                          	--ui-buttonmap guide=void \
                          	&
                          	fi
                          

                          did anyone use this to get the Videopac/Odyssey 2 to work?
                          that will be my next mission.

                          RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                          RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                          Maintainer of RetroPie-Extra .

                          M 1 Reply Last reply 6 Feb 2017, 23:30 Reply Quote 1
                          • M
                            mediamogul Global Moderator @ExarKunIv
                            last edited by 6 Feb 2017, 23:30

                            @ExarKunIv said in Guide: Advanced Controller Mappings:

                            it works :)

                            Nice!

                            did anyone use this to get the Videopac/Odyssey 2 to work?

                            The Videopac/Odyssey 2 emulator is a RetroArch core, so you might not need an xboxdrv mapping. I use one to map 0-9 to the right joystick for starting games, but that's about it.

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

                            E 1 Reply Last reply 7 Feb 2017, 15:15 Reply Quote 1
                            • E
                              ExarKunIv @mediamogul
                              last edited by 7 Feb 2017, 15:15

                              @mediamogul

                              yes i did see that as i started messing around with it more.

                              @mediamogul said in Guide: Advanced Controller Mappings:

                              I use one to map 0-9 to the right joystick for starting games

                              good to know that it can be done.

                              does the mapping have to be done in the RetroArch config?
                              i would think it would, but not sure

                              RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                              RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                              Maintainer of RetroPie-Extra .

                              M 1 Reply Last reply 7 Feb 2017, 15:28 Reply Quote 0
                              • M
                                mediamogul Global Moderator @ExarKunIv
                                last edited by mediamogul 2 Jul 2017, 15:32 7 Feb 2017, 15:28

                                @ExarKunIv

                                I use a trick to where I put --evdev-no-grab into an xboxdrv configuration. This allows the physical controller to still have control input that would otherwise be blocked to prevent a conflict with the xboxdrv virtual controller. Then I map every button on the virtual controller to KEY_UNKNOWN except for the right joystick, which I map to the number pad. This way, RetroArch can still make use of the original control scheme with only the right joystick being read as keyboard input.

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

                                E 1 Reply Last reply 7 Feb 2017, 18:00 Reply Quote 3
                                • E
                                  ExarKunIv @mediamogul
                                  last edited by 7 Feb 2017, 18:00

                                  @mediamogul

                                  so cool

                                  i will give that a shot and see what i come up with
                                  thanks again

                                  RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                                  RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                                  Maintainer of RetroPie-Extra .

                                  1 Reply Last reply Reply Quote 0
                                  • E
                                    ExarKunIv
                                    last edited by 7 Feb 2017, 21:56

                                    here is what i got for now.

                                    sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
                                        --evdev /dev/input/event2 \
                                        --silent \
                                    	--detach-kernel-driver \
                                    	--force-feedback \
                                    	--mimic-xpad \
                                    	--dpad-as-button \
                                            --deadzone 15% \
                                    	--trigger-as-button \
                                    	--evdev-no-grab \
                                    	--evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_Z=x2,ABS_RZ=y2,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y \
                                    	--evdev-keymap KEY_#304=a,KEY_#305=b,KEY_#307=x,KEY_#308=y,KEY_#312=lt,KEY_#313=rt,KEY_#310=lb,KEY_#311=rb,KEY_#317=tl,KEY_#318=tr,KEY_#314=back,KEY_#315=start \
                                    	--axismap -Y1=Y1,-Y2=Y2 \
                                            --ui-buttonmap a=KEY_UNKNOWN,b=KEY_UNKNOWN,start=KEY_UNKNOWN,back=KEY_UNKNOWN,x=KEY_UNKNOWN,y=KEY_UNKNOWN,lt=KEY_UNKNOWN,rt=KEY_UNKNOWN,lb=KEY_UNKNOWN,rb=KEY_UNKNOWN,tl=KEY_UNKNOWN,tr=KEY_UNKNOWN \
                                    	--ui-axismap x2=KEY_1:KEY_2,Y2=KEY_3:KEY_4 \
                                    &
                                    

                                    i dont get any errors, but still no mapping.
                                    the no-grab works. as my left stick works fine. i think im useing the no-grab wrong
                                    i'll mess around with it more tomrrow.

                                    RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                                    RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                                    Maintainer of RetroPie-Extra .

                                    M 1 Reply Last reply 8 Feb 2017, 00:51 Reply Quote 0
                                    • M
                                      mediamogul Global Moderator @ExarKunIv
                                      last edited by 8 Feb 2017, 00:51

                                      @ExarKunIv

                                      RetroArch may be prioritizing the virtual xboxdrv controller as player one.

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

                                      E 1 Reply Last reply 8 Feb 2017, 16:51 Reply Quote 0
                                      • E
                                        ExarKunIv @mediamogul
                                        last edited by 8 Feb 2017, 16:51

                                        @mediamogul

                                        so i need to use this im guessing?

                                        
                                        input_remapping_directory = "/opt/retropie/configs/fba/"
                                        
                                        input_player1_joypad_index = "1"
                                        input_player2_joypad_index = "0"
                                        input_player2_analog_dpad_mode = 1
                                        
                                        #include "/opt/retropie/configs/all/retroarch.cfg"
                                        
                                        

                                        sorry for asking all the questions. this config stuff for me is very confusing

                                        RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                                        RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                                        Maintainer of RetroPie-Extra .

                                        M 1 Reply Last reply 8 Feb 2017, 17:36 Reply Quote 0
                                        • M
                                          mediamogul Global Moderator @ExarKunIv
                                          last edited by mediamogul 2 Aug 2017, 17:44 8 Feb 2017, 17:36

                                          @ExarKunIv

                                          Not a problem. If it is that RetroArch is confusing the controller order and if we're still talking about videopac/Odyssey², then your additions are right, but they should be made in /opt/retropie/configs/videopac/retroarch.cfg which would in turn mean that the first line would be:

                                          input_remapping_directory = "/opt/retropie/configs/videopac/"
                                          

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

                                          E 1 Reply Last reply 8 Feb 2017, 17:44 Reply Quote 0
                                          180 out of 626
                                          • First post
                                            180/626
                                            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.

                                            This community forum collects and processes your personal information.
                                            consent.not_received