when I was having problems getting my (much) older model gravis gamepad working this worked for me.
then install jscalibrator
sudo apt-get update
sudo apt-get install joystick
then run the calibration processes
sudo apt-get jscalibrator
If I remember correctly, this should return 0 for no error.
jscal -c /dev/input/js0 (this is my joystick location check yours)
jstest /dev/input/js0 (or wherever)
and it should recognize the type of gamepad correctly and recognize all of your buttons, and axis
now, fceu should recognize the directional pads.
minor troubleshooting: try a different USB port, I don’t know why, but I was suggested in the literature that got my pad working, and it worked for me.