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

    Scummvm controller help

    Scheduled Pinned Locked Moved Help and Support
    scummvmcontroller help
    76 Posts 8 Posters 13.4k 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.
    • ExarKunIvE
      ExarKunIv @bassman6805
      last edited by ExarKunIv

      @bassman6805
      that makes two of us.

      just one quick question where do you have the runcommand files placed in your pie?

      try this

      To fully round out this section on key-mapping, it should be mentioned that in some scenarios, the keyboard that xbmc virtualizes may not be recognized as being a keyboard by the software you intend to use it with. In this situation, you can create a udev rule that will authenticate the input as being from an actual keyboard at a system level, allowing it to function anywhere. To add this udev rule, drop to the command line and type:

      sudo nano /etc/udev/rules.d/99-xboxdrv.rules

      Press 'Enter" and type the following:

      SUBSYSTEM=="input", ATTRS{name}=="Microsoft X-Box 360 pad", GROUP="users", MODE="0666", ENV{ID_INPUT_KEYBOARD}="1"

      Now press 'ctrl+o' to save the file, 'Enter' to confirm and 'ctrl+x' to exit.
      if that dont work then we need to view the log file to see why

      you will have to use WinSCP to dive into your Pie and view the /dev.shm/runcommand.log there.

      other then that i done know. from my end you have everything set correctly

      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
      • B
        bassman6805
        last edited by bassman6805

        The xboxdrv.rules was already present. The runcommand files are located in opt/retropie/config/all. Here is a pic of all the files in the folder.

        0_1510097299534_runcommand folders.JPG

        I can't find a runcommand.log file. I have searched the whole system. Where would I find the file?

        1 Reply Last reply Reply Quote 0
        • B
          bassman6805
          last edited by

          Here is a rundown of everything I have so far just to make sure something isn't messed up.

          cat /proc/bus/input/devices

          
           I: Bus=0003 Vendor=0001 Product=0001 Version=0001
          N: Name="retrogame"
          P: Phys=
          S: Sysfs=/devices/virtual/input/input0
          U: Uniq=
          H: Handlers=kbd event0
          B: PROP=0
          B: EV=3
          B: KEY=1680 0 3000 d0030002
          

          evtest /dev/input/event0

          Input driver version is 1.0.1
          Input device ID: bus 0x3 vendor 0x1 product 0x1 version 0x1
          Input device name: "retrogame"
          Supported events:
            Event type 0 (EV_SYN)
            Event type 1 (EV_KEY)
              Event code 1 (KEY_ESC)
              Event code 16 (KEY_Q)
              Event code 17 (KEY_W)
              Event code 28 (KEY_ENTER)
              Event code 30 (KEY_A)
              Event code 31 (KEY_S)
              Event code 44 (KEY_Z)
              Event code 45 (KEY_X)
              Event code 103 (KEY_UP)
              Event code 105 (KEY_LEFT)
              Event code 106 (KEY_RIGHT)
              Event code 108 (KEY_DOWN)
          Properties:
          Testing ... (interrupt to exit)
          

          nano /opt/retropie/configs/all/runcommand-onstart.sh

          ##!/bin/sh
          
          ## 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
          
          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/event0 \
          --silent \
          --detach-kernel-driver \
          --force-feedback \
          --deadzone-trigger 15% \
          --deadzone 4000 \
          --mimic-xpad \
          --evdev-keymap KEY_#44=a,KEY_#45=b,KEY_#31=x,KEY_#30=y,KEY_#16=lb,KEY_#17=rb,KEY_#1=back,KEY_#28=start,KEY_#108=du,KEY_#106=dr,KEY_#103=dd,KEY_#105=dl \
          --ui-buttonmap b=BTN_LEFT,a=BTN_RIGHT,start=KEY_F5,dr=REL_X:25,dl=REL_X:-25,dd=REL_Y:25,du=REL_Y:-25 \
          --ui-buttonmap guide=void,x=void,y=void,lb=void,rb=void,tl=void,tr=void,lt=void,rt=void,back=void \
          
          
          &
          fi
          

          nano /opt/retropie/configs/all/runcommand-onend.sh

          #!/bin/sh
          
          sudo killall >/dev/null xboxdrv
          
          sudo pkill -CONT python
          
          ExarKunIvE 1 Reply Last reply Reply Quote 0
          • ExarKunIvE
            ExarKunIv @bassman6805
            last edited by ExarKunIv

            @bassman6805

            everything else looks like it should

            did you run this ?

            chmod +x /opt/retropie/configs/all/runcommand-onstart.sh

            and

            chmod +x /opt/retropie/configs/all/runcommand-onend.sh

            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
            • B
              bassman6805
              last edited by

              Yes, I ran those when I very first created the runonstart and runonend files. I did that following the guide. I am idiot when it comes to linux. The part that gets me is when I started scummvm and remoted into it and run the command you gave me it started working. If you can tell me how to find the log file I will post it.

              ExarKunIvE 1 Reply Last reply Reply Quote 0
              • ExarKunIvE
                ExarKunIv @bassman6805
                last edited by ExarKunIv

                @bassman6805

                ok
                use WinSCP
                to find the log file you just need to open the DEV folder and in that open SHM folder

                in there will be the log file that you need.

                just make sure you start scummvm first. cuz without it running the folder will be empty.

                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
                • B
                  bassman6805
                  last edited by

                  Ok. That's probably why I couldn't find it. I just remoted into the unit and looked without starting the program.

                  1 Reply Last reply Reply Quote 0
                  • B
                    bassman6805
                    last edited by bassman6805

                    Here is the log file. I see there is an error but I am not sure what to do. I copied it from the guide. I thought maybe it was the indention on the onstart but that didn't fix it. If you look at mine compared to yours the "fi" at the end isn't the same color as the "if" at the beginning of the if statement.

                    scummvm
                    scummvm
                    
                    bash "/home/pi/RetroPie/roms/scummvm/+Start ScummVM.sh"
                    /opt/retropie/configs/all/runcommand-onstart.sh: line 31: syntax error near unexpected token `&'
                    /opt/retropie/configs/all/runcommand-onstart.sh: line 31: `&'
                    Parameters: 
                    Executing: bash "/home/pi/RetroPie/roms/scummvm/+Start ScummVM.sh"
                    WARNING: Invalid joystick: 0!
                    Virtual keyboard pack 'vkeybd_default' loaded successfully
                    WARNING: No hardware input were defined, using defaults!
                    
                    ExarKunIvE 1 Reply Last reply Reply Quote 0
                    • ExarKunIvE
                      ExarKunIv @bassman6805
                      last edited by ExarKunIv

                      ok i have found your problem at the very start you have a double #

                      so copy the script as you see below. it works. i tested it out on my system.

                      if for some reason it still not working, please post your log file again. it is the only way we know what is going on, but so far it is looking good

                      #!/bin/sh
                      
                      ## 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
                      
                      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/event0 \
                      --silent \
                      --detach-kernel-driver \
                      --force-feedback \
                      --deadzone-trigger 15% \
                      --deadzone 4000 \
                      --mimic-xpad \
                      --evdev-keymap KEY_#44=a,KEY_#45=b,KEY_#31=x,KEY_#30=y,KEY_#16=lb,KEY_#17=rb,KEY_#1=back,KEY_#28=start,KEY_#108=du,KEY_#106=dr,KEY_#103=dd,KEY_#105=dl \
                      --ui-buttonmap b=BTN_LEFT,a=BTN_RIGHT,start=KEY_F5,dr=REL_X:25,dl=REL_X:-25,dd=REL_Y:25,du=REL_Y:-25 \
                      --ui-buttonmap guide=void,x=void,y=void,lb=void,rb=void,tl=void,tr=void,lt=void,rt=void,back=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 .

                      jonnykeshJ 1 Reply Last reply Reply Quote 1
                      • jonnykeshJ
                        jonnykesh @ExarKunIv
                        last edited by jonnykesh

                        @exarkuniv Well spotted. I'd say that is the issue. The extra hash before the shebang just comments it out and the script won't run.

                        1 Reply Last reply Reply Quote 0
                        • B
                          bassman6805
                          last edited by

                          I'll try it this evening. Thanks so much. I'm probably showing my age but I wish these things were written in dos!

                          ExarKunIvE 1 Reply Last reply Reply Quote 0
                          • ExarKunIvE
                            ExarKunIv @bassman6805
                            last edited by

                            @bassman6805

                            i miss DOS also, was never that good at that either, but i knew enough to get around :)

                            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
                            • B
                              bassman6805
                              last edited by

                              That did the trick. Works great. The movement is a little jerky but that is probably caused by using a directional pad versus analog. When I built the unit it called for the analog joystick so me being an idiot I thought that meant it would be analog. I think this will work perfectly for the point and click games I am wanting to play though. I would like to build another supergame pi but make it analog on the next one. Maybe that can be my next challenge. Thanks again for all the help.

                              1 Reply Last reply Reply Quote 1
                              • B
                                bassman6805
                                last edited by

                                One last question. Is there away to adjust the movement of the joystick? By that I mean the amount the cursor moves when pushed once in a certain direction. I was unable to load a couple games from the menus because I couldn't get the cursor over the name to select it. If I pushed up or down it would go to far. Other than that it seams to be good.

                                ExarKunIvE 1 Reply Last reply Reply Quote 0
                                • ExarKunIvE
                                  ExarKunIv @bassman6805
                                  last edited by

                                  @bassman6805

                                  I don't know off the top of my head but I'll take a look in to. I'm sure there is away to fine tune it better for you.

                                  If it seems like the curser moves too fast then lower the number for the movement. Right now for you it is set for 25 and -25. Going lower will slow down how fast the pointer moves.

                                  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
                                  • B
                                    bassman6805
                                    last edited by

                                    Thanks. I will also try lowering the speed.

                                    1 Reply Last reply Reply Quote 0
                                    • B
                                      bassman6805
                                      last edited by

                                      Lowering the speed from 25 to 15 seemed to help with the issue. Thanks.

                                      ExarKunIvE 1 Reply Last reply Reply Quote 0
                                      • ExarKunIvE
                                        ExarKunIv @bassman6805
                                        last edited by

                                        @bassman6805
                                        Sweet
                                        Glad to hear

                                        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
                                        • BillyHB
                                          BillyH @dudleydes
                                          last edited by

                                          @dudleydes said in Scummvm controller help:

                                          A year ago, ScummVM moved to version 1.9 which uses SDL2 as its backend. Users reported issues when using a joystick so the devs added the SDL1 version to RetroPie.

                                          Found this thread because my controller doesn't work in ScummVM so I looked for a way to fix it. Going by this post, I removed the 'new' ScummVM and installed the SDL1 one but that one won't even start up for me, I just get thrown back into the main menu.

                                          • First Pi: Pi 3 in a PSone case
                                          • Second Pi: Pi 0 in a Retroflag GPi Case
                                          • Third Pi: Pi 4 as a desktop computer
                                          • Some time in 2020: Picade
                                          1 Reply Last reply Reply Quote 0
                                          • fabio78F
                                            fabio78
                                            last edited by

                                            The new ScummVm (2.0) offers better support to gamepads and it basically works out-of-the-box. Try updating it (binary works).

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