Page 1 of 1

controller problem snes9x1.53

Posted: Mon Jun 13, 2011 2:58 am
by gahyoujerk
I found a controller bug today for snes9x1.53

This bug I noticed was caused when I was using my controller. I mapped all the inputs to my controller and the buttons were all working, but I noticed that every so often the character I was controlling would stop moving forward even though I was pressing forward, at these times my buttons all still worked and I could move backwards, but I'd stop going backwards eventually due to the same problem I had as going forwards. It was really quite an annoying thing to deal with.

Since I'm learning to become a programmer I've learned that an important step to solve any bug is to be able to replicate the bug. So I spent some time testing different things and I found out why the bug is caused. The bug is caused if two directional buttons are pressed at the same time when using the d-pad of a controller, for instance, right + up, or right + down, etc. The strange thing is this bug is not replicated when using a keyboard and holding the keys for right + up, right + down, left + up, etc...nor is the bug replicated when using the analog controls on a controller.
--------------
I can recreate this bug every time.
I tested this bug in these games:
Mega Man X 2
Mega Man X
Super Mario World
Donkey Kong Country

Also tried to replicate the problem in Zsnes1.51 and bsnes0.74 in order to rule out a controller problem. I was unable to replicate the problem, so controller problem is ruled out.

I hope someone will be able to work on this

Posted: Mon Jun 13, 2011 12:37 pm
by OV2
Snes9x sees the diagonals of your controller's d-pad as extra buttons, not as a combination of the normal directions (i.e. "up-left" is not "up and left"). You'll have to map those to the corresponding buttons in the input config.

Posted: Mon Jun 13, 2011 4:00 pm
by adventure_of_link
OV2 wrote:Snes9x sees the diagonals of your controller's d-pad as extra buttons, not as a combination of the normal directions (i.e. "up-left" is not "up and left"). You'll have to map those to the corresponding buttons in the input config.
the only exception to this is if the D-pad is mapped to the X/Y Axis instead of the POV hats.