Menu

#301 Problem Mapping PS3 DS3 Controller Buttons

closed
nobody
sdl (53)
5
2012-06-08
2010-02-26
Anonymous
No

I am running Ubuntu 9.10 on my PS3. I compiled the latest SVN at the time (1704) with the GTK GUI enabled and ensured I had the latest SDL (1.2.14). This finally allowed me to load ROMs with the sound working. I am running QtSixA to connect my PS3 DS3 controller to Ubuntu. This seems to all work fine but I am running into problems when I try to assign keys in FCEUX to the controller. I am able to assign most keys (direction keys, select, start) but when I try one of the buttons (square, circle, x, or triangle) to map to A, B, etc.., FCEUX exits with a segmentation fault.

Discussion

  • Lukas Sabota

    Lukas Sabota - 2010-03-03

    Hey anonymous. I've done a lot of work to the joystick code for SDL in subversion. Would you mind trying your ps3 ds3 with the latest subversion revision? My xbox360 pad did not work prior to these changes that I've made in subversion.

    Please let me know if this issue is resolved. If you're still having an issue, I'll see if I can get a hold of a dual shock 3 and test myself.

     
  • Mark Rabe

    Mark Rabe - 2010-03-04

    Thanks you for jumping onto this so quickly. It does not appear to be fixed yet. I tested my controller both over USB and over Bluetooth with another emulator (snes9x) and was able to map keys and play games as well as use the controller to do stuff in Ubuntu so I know it works. With Bluetooth, FCEUX still crashes with a segfault when trying to map keys to the Circle, Square, etc. keys. It does not appear to matter what key or function I assign to those keys, if any, outside of the program first. With USB, it partially works. I need to test this a little more because I have a theory. I am able to map all the keys but random behavior appears when trying to play a game. The mapping over USB might be getting screwed up because if the controller is moved at all while assigning a key, I think the tilt sensors in the controller also provide input while trying to assign a key and it messes it up. I tried two different games after mapping the keys a couple times. In the first game (zelda), the dpad was screwed up and it appeard the Up key on the dpad was sticking. If I pushed another direction, the cursor on the menu screen or link when in game would stop moving but once let go, would continue to move as if the Up button was being pressed. The other keys (Square, Circle, etc) appeared to partially work. When trying another game (startropics), the keys were messed up again but in a completely different way then the last game. This time when trying to start a new game, I was not even able to make the initial first save/profile to start a new game. I am using QtSixA 1.2.1 to connect my controller via Bluetooth and USB. It seems to work well as FCEUX is the only program that is causing problems thus far.

     
  • Mark Rabe

    Mark Rabe - 2010-03-04

    Upon further investigation, the USB does seem to work fine. It is the accelerometers in the controller that were messing it up. I must have tilted the controller slightly while setting the buttons. After setting it on a table and setting the buttons like that, it works fine in games now. The Bluetooth still has crashing problems though.

     
  • Lukas Sabota

    Lukas Sabota - 2010-03-05

    Bluetooth probelsm would be not an issue with fceuX code

    I can't think of any better fix for this other than the workaround you suggested. The acceleramators are just treated as axises in SDL and the config looks for any axis change.

    I'm going to go ahead and close this bug since it's not an issue with our code

     

Log in to post a comment.