Emulator Problem: 360 Controller on Snes9x-gtk

Snake90

New member
Hello everyone,

this is my first message!

I hope this is the right section and that you could help me.

I've installed the Snes emulatore Snes9x-gtk via software manager on linux mint 18.

It works really well except for the joypad configuration. It's as if the controller (x360 wired controller) is not there, i can't map buttons.

On Higan the mapping works fine, so i assume the problem is Snes9x related.

Do you have any advice?
 

ulaoulao

Controller Man
Staff member
Most old emulators do not support that Xinput stuff. Use a normal HID based controller or find a program to convert Xinput to HID (x360ce may do that not sure).
 

Snake90

New member
Thank you ulaoulao for the answer.

I am not familiar with the terms Xinput and HID.

How would i know if a controller is HID based? Would a cheap usb joypad work?
 

osrunner2019

New member
If ZSNES doesn't recognize your controller when trying to input the keys, you have to download the Xbox Controller driver from Microsoft's website

https://www.microsoft.com/accessories/en-gb/d/xbox-360-controller-for-windows

Test if you controller is set up right Go to crontroll panel - hardware and sound-show device and printers right click the crontroller settings properties,
Move up down right left to see if all is right

Sometimes controller stop work for emulator and then I had to reinstall drivers.

If ZSNES isn't detecting your xbox controller but your computer is.
Simply exit the program but leave the controller plugged in, then restart ZSNES and set you keys. It should register your controller.

If it still doesn't work
Disable the Desktop Mode in the controller configuration

program files > Microsoft xbox 360 Accessories > (right click) xboxStat > Properties > Sharing > Advanced sharing > (check) share this folder


Load up snex9x.conf and under the section [Controls/Win] copy and paste this.

Joypad1:Enabled = TRUE
Joypad1:Up = (J0)Up
Joypad1:Down = (J0)Down
Joypad1:Left = (J0)Left
Joypad1:Right = (J0)Right
Joypad1:A = (J0)Button 1
Joypad1:B = (J0)Button 0
Joypad1:Y = (J0)Button 2
Joypad1:X = (J0)Button 3
Joypad1:L = (J0)Z Down
Joypad1:R = (J0)Z Up
Joypad1:Start = (J0)Button 7
Joypad1:Select = (J0)Button 6

Not sure why the forum is making an smile, but change that into an D first

It's setup to emulate how an SNES controller would feel so A/B and X/Y are flipped. Also make sure that Fullscreen is set to true and EmulateFullscreen is set to false (same file, a few sections above), otherwise it will try using desktop control settings by default. I'd also recommend setting the file to "read only"


If none of above works then consider getting a cheap as said
It should work joypad option isn't there for no reason
 

pix07

Well-known member
He has linux mint so i was searching for links about that.

And Snes9x.
 
Last edited:

pix07

Well-known member
He was have better help if he use ubuntu which is more easier.

And more popular.

Also try other emulator like bsnes.

Or mednafen or other multi system emulator which use snes.
 

Snake90

New member
I think I'll try with another joypad, or stick to higan or go windows.

Thank you all for your replies!
 
Last edited:

ulaoulao

Controller Man
Staff member
You will find that works better but yeah most all OEM to USB are HID based, linux sees that as SDL.

HID - human interface device. Is a drive installed in to most all OS's that uses general things like Mice, Keyboards, Gamepads. Since it is supported out of the box most emulators use it. This is how Dirrect X works with controllers.

Xinput was the xbox 360 stripped down HID driver and it became popular for windows in 2000+. It does not use the same HID driver and most cases you need to download one. Also works with DirrectX if the driver is installed.

SDL is another thing like DirrectX but open and free as why Linux uses it. You will also see it on Windows by some emulator.


PS: I also missed the linux part but same info applies. I think in linux you can install a xbox MOD driver and map it to ENV calls.
 
Last edited:

Snake90

New member
Hi guys, eventually i solved my issue so I'm writing in case this helps someone else.

I used a software that allows users to map keyboard button on the joypad so that you can control the pc by the joypad.

This way you can "bypass" the issue of having the joypad recognised by the pc but not from the emulator.

The software is qjoypad.

Again I thank you for your support.
 
Last edited:
Top