Scummvm controller help
-
ok good the second one is not a big deal. so no worries
the next thing we need to do is start the mapping.
as you read in the guide you will need to make a runcommand-onstart.sh and runcommand-onend.sh
for runcommand-onend.sh you just need to follow what is in the guide, that will never change.
the runcommand-onstart.sh is the one that will change, i will help you out with the start, once you play with it a little then i can point out what needs to be done to get it going
[•] is where you will enter the keycode from your post above.
--evdev-keymap KEY_#304=a
is how you will need to enter it.#!/bin/sh sudo killall > /dev/null 2>&1 xboxdrv /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-absmap ABS_[•]=x1,ABS_[•]=y1,ABS_[•]=x2,ABS_[•]=y2,ABS_[•]=lt,ABS_[•]=rt,ABS_[•]=dpad_x,ABS_[•]=dpad_y \ --evdev-keymap BTN_[•]=a,BTN_[•]=b,BTN_[•]=x,BTN_[•]=y,BTN_[•]=lb,BTN_[•]=rb,BTN_[•]=tl,BTN_[•]=tr,BTN_[•]=guide,BTN_[•]=back,BTN_[•]=start \ &
so you have a anlog joystick on your controller? or is it just buttons
-
Thanks. I will work on it this evening when I get home. The controller is in the picture. It has an analog joystick and buttons. The buttons are from a super nintendo controller board I cut up and the analog joystick is from the raspberry pi store. Here is the guide to what I made.
https://learn.adafruit.com/super-game-pi
I don't think the joystick is an actual analog movement joystick. Looks like it's just up, down, left, right.
-
ok cool
the only think that might be a hang up will be the fact is that you do no have any ABS or anglog movement which is used for the mouse movement.
but i think it still should work with just buttons, we will cross that when the time comes. if need be we can ask the god of keymapping.
-
I completed both steps of creating the runcommand-onend.sh and runcommand-onstart.sh. Based on what I posted above for my controller layout does this look correct for the keys?
--evdev-keymap KEY_#44=a,KEY_#45=b,KEY_#31=x,KEY_#30=y,KEY_#16=lb,KEY_#17=rb,BTN_[•]=tl,BTN_[•]=tr,BTN_[•]=guide,KEY_#1=back,KEY_#28=start
&If so, where do I assign the keys for direction? According tho the results I got they would be keys 108, 103, 105, 106.
Thanks for your help.
-
@bassman6805
so far it is looking good
you can removeBTN_[•]=tl,BTN_[•]=tr,BTN_[•]=guide
for your d pad it will look like this
BTN_TOP2=du,BTN_PINKIE=dr,BTN_BASE=dd,BTN_BASE2=dl
replace theBTN
with your key numberas for getting it to work with the mouse im still looking it to
-
When I add the directions do they go in the same line as the others?
-
yes.
you keep everything that goes with the first part in the same line.
--evdev-keymap
is for keys and buttons. -
Here is what I have for the onstart.sh
#!/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/by-id/[•]
--silent
--detach-kernel-driver
--force-feedback
--deadzone-trigger 15%
--deadzone 4000
--mimic-xpad
--evdev-absmap ABS_[•]=x1,ABS_[•]=y1,ABS_[•]=x2,ABS_[•]=y2,ABS_[•]=lt,ABS_[•]=rt,ABS_[•]=dpad_x,ABS_[•]=dpad_y
--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
--axismap -Y1=Y1,-Y2=Y2
--ui-axismap x1=REL_X:10,y1=REL_Y:10
--ui-buttonmap b=BTN_LEFT,a=BTN_RIGHT,start=KEY_F5
--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'm still not getting anything to work. I am using scummvm sdl1 if that matters.
I also tried regular scummvm.
-
@bassman6805
you have most of it right but there are a few things that were needed
try this#!/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/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
-
I'll give it a shot this evening. On a side note, how do you get the code to show up in the black box on here?
-
-
I pasted the code word for word but I still don't get any movement when I launch scummvm and the buttons do not seem to do anything either. Is there something else I can check? Would it help if I posted some settings or something?
-
I did find out that the xboxdrv was not installed. The original directions I found were old and the menus had changed. I figured out the location and installed it but still no controller response.
-
when you are running the game you can put this on the command line.
then sudo killall > /dev/null 2>&1 xboxdrv sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \ --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 \ &
this will force it to start and if there is any errors it will come up.
if it is working it will pop up something like this
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/js2 /dev/input/event4 Press Ctrl-C to quit
if nothing comes up then there is something else not working. i did try the mapping i gave you so i know there are no errors on it for my system at least
-
Please excuse my ignorance. I'm not sure how to get a command line after I select scummvm from the retropie menu. Do I start scummvm on the retropie menu then ssh into the unit and run the command?
-
-
Sorry about that. Will this still work at the opening scummvm screen? That's as far as I can get. I don't have any games loaded because I can't move the cursor to load them. This is all I get.
-
yes if you put this in the ssh it will come up with something
then sudo killall > /dev/null 2>&1 xboxdrv sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \ --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 \ &
if all works then this will come up as soon as you hit enter
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/event2 Press Ctrl-C to quit
-
Here are the results.
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/js0 /dev/input/event1 Press Ctrl-C to quit After that I was able to get the directional stick to work and the buttons. Once I restarted the unit it stopped working again. I'm guessing something from the code needs to be added or changed. Thanks for taking the time to help. Looks like we or more you might be close to fixing the issue.
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.