{ 0 }
};
static const ValLoc vallocs[]= {
- { "EV_ABS ABS_X", 1,0,-1, 0xff, 0x7f },
+ { "EV_ABS ABS_X", 1,0,-1, 0xff, 0x80 },
{ "EV_ABS ABS_Y", 2,0,-1, 0xff, 0x80 },
- { "EV_ABS ABS_RUDDER", 3,0,+1, 0xff, 0x7f },
+ { "EV_ABS ABS_RUDDER", 3,0,+1, 0xff, 0x80 },
{ "EV_ABS ABS_THROTTLE", 4,0,-1, 0xff, 0x80 },
- { "EV_ABS DPAD", 5,0,+1, 0x0f, 0x00 },
+// { "EV_ABS DPAD", 5,0,+1, 0x0f, 0x00 },
{ 0 }
};
* exit status:
* 0 all ok
* other some other problem
+ *
+ * joystick values are always doubles from -1 to 0 to +1
*/
#include "hidrawconv.h"
if (mb==lb) continue;
mb >>= loc->rshift;
mb -= loc->zero;
- printf("%s %d\n", loc->str, loc->sign * (int8_t)mb);
+ double val= (int8_t)mb;
+ val /= (val >= 0 ? 127 : 128);
+ printf("%s %.5f\n", loc->str, loc->sign * val);
}
}