diff --git a/profiles/ds3.ini b/profiles/ds3.ini new file mode 100644 index 00000000..2fc7c03f --- /dev/null +++ b/profiles/ds3.ini @@ -0,0 +1,13 @@ +joyx=axis0 +joyy=axis1 +ltrig=axis12 +rtrig=axis13 +start=joy17 +a=joy15 +b=joy14 +x=joy16 +y=joy13 +dpad_up=joy5 +dpad_down=joy7 +dpad_left=joy8 +dpad_right=joy6 diff --git a/src/ui/keycode.c b/src/ui/keycode.c index cdfa9d75..e46a85c2 100644 --- a/src/ui/keycode.c +++ b/src/ui/keycode.c @@ -316,7 +316,17 @@ static struct key keys[] = {{K_UNKNOWN, "unknown"}, {K_AXIS12, "axis12"}, {K_AXIS13, "axis13"}, {K_AXIS14, "axis14"}, - {K_AXIS15, "axis15"}}; + {K_AXIS15, "axis15"}, + {K_AXIS16, "axis16"}, + {K_AXIS17, "axis17"}, + {K_AXIS18, "axis18"}, + {K_AXIS19, "axis19"}, + {K_AXIS20, "axis20"}, + {K_AXIS21, "axis21"}, + {K_AXIS22, "axis22"}, + {K_AXIS23, "axis23"}, + {K_AXIS24, "axis24"}, + {K_AXIS25, "axis25"}}; enum keycode get_key_by_name(const char *keyname) { char buffer[256] = {0}; diff --git a/src/ui/keycode.h b/src/ui/keycode.h index 2454cd65..2bc5249a 100644 --- a/src/ui/keycode.h +++ b/src/ui/keycode.h @@ -263,6 +263,16 @@ enum keycode { K_AXIS13, K_AXIS14, K_AXIS15, + K_AXIS16, + K_AXIS17, + K_AXIS18, + K_AXIS19, + K_AXIS20, + K_AXIS21, + K_AXIS22, + K_AXIS23, + K_AXIS24, + K_AXIS25, K_NUM_KEYS }; diff --git a/src/ui/window.h b/src/ui/window.h index c8ea1102..1c5f8d3c 100644 --- a/src/ui/window.h +++ b/src/ui/window.h @@ -22,7 +22,7 @@ struct SDL_Window; #define MAX_JOYSTICKS 4 -#define NUM_JOYSTICK_AXES ((K_AXIS15 - K_AXIS0) + 1) +#define NUM_JOYSTICK_AXES ((K_AXIS25 - K_AXIS0) + 1) #define NUM_JOYSTICK_KEYS ((K_JOY31 - K_JOY0) + 1) #define NUM_JOYSTICK_HATS (((K_HAT15 - K_HAT0) + 1) / 4) /* 4 keys per hat */