|
32 | 32 | #include <wiiu/pad_strings.h> |
33 | 33 | #endif |
34 | 34 |
|
| 35 | +#ifdef HAVE_SDL3 |
| 36 | +#include <SDL3/SDL.h> |
| 37 | +#endif |
| 38 | + |
35 | 39 | #define DECL_BTN(btn, bind) "input_" #btn "_btn = " #bind "\n" |
36 | 40 | #define DECL_BTN_EX(btn, bind, name) "input_" #btn "_btn = " #bind "\ninput_" #btn "_btn_label = \"" name "\"\n" |
37 | 41 | #define DECL_AXIS(axis, bind) "input_" #axis "_axis = " #bind "\n" |
38 | 42 | #define DECL_AXIS_EX(axis, bind, name) "input_" #axis "_axis = " #bind "\ninput_" #axis "_axis_label = \"" name "\"\n" |
39 | 43 | #define DECL_MENU(btn) "input_menu_toggle_btn = " #btn "\n" |
| 44 | +#define DECL_MENU_EX(btn, name) "input_menu_toggle_btn = " #btn "\ninput_menu_toggle_btn_label = \"" name "\"\n" |
40 | 45 | #define DECL_AUTOCONF_DEVICE(device, driver, binds) "input_device = \"" device "\"\ninput_driver = \"" driver "\"\n" binds |
41 | 46 | #define DECL_AUTOCONF_PID(pid, vid, driver, binds) "input_product_id = " #pid "\ninput_vendor_id = " #vid "\ninput_driver = \"" driver "\"\n" binds |
42 | 47 |
|
@@ -66,6 +71,33 @@ DECL_AXIS(r_x_minus, -2) \ |
66 | 71 | DECL_AXIS(r_y_plus, -3) \ |
67 | 72 | DECL_AXIS(r_y_minus, +3) |
68 | 73 |
|
| 74 | +#define SDL3_DEFAULT_BINDS \ |
| 75 | +DECL_BTN_EX(a, SDL_GAMEPAD_BUTTON_EAST, "Right Face Button") \ |
| 76 | +DECL_BTN_EX(b, SDL_GAMEPAD_BUTTON_SOUTH, "Bottom Face Button") \ |
| 77 | +DECL_BTN_EX(x, SDL_GAMEPAD_BUTTON_NORTH, "Top Face Button") \ |
| 78 | +DECL_BTN_EX(y, SDL_GAMEPAD_BUTTON_WEST, "Left Face Button") \ |
| 79 | +DECL_BTN_EX(select, SDL_GAMEPAD_BUTTON_BACK, "Back") \ |
| 80 | +DECL_BTN_EX(start, SDL_GAMEPAD_BUTTON_START, "Start") \ |
| 81 | +DECL_BTN_EX(up, SDL_GAMEPAD_BUTTON_DPAD_UP, "D-Pad Up") \ |
| 82 | +DECL_BTN_EX(down, SDL_GAMEPAD_BUTTON_DPAD_DOWN, "D-Pad Down") \ |
| 83 | +DECL_BTN_EX(left, SDL_GAMEPAD_BUTTON_DPAD_LEFT, "D-Pad Left") \ |
| 84 | +DECL_BTN_EX(right, SDL_GAMEPAD_BUTTON_DPAD_RIGHT, "D-Pad Right") \ |
| 85 | +DECL_BTN_EX(l, SDL_GAMEPAD_BUTTON_LEFT_SHOULDER, "Left Shoulder") \ |
| 86 | +DECL_BTN_EX(r, SDL_GAMEPAD_BUTTON_RIGHT_SHOULDER, "Right Shoulder") \ |
| 87 | +DECL_AXIS_EX(l2, +SDL_GAMEPAD_AXIS_LEFT_TRIGGER, "Left Trigger") \ |
| 88 | +DECL_AXIS_EX(r2, +SDL_GAMEPAD_AXIS_RIGHT_TRIGGER, "Right Trigger") \ |
| 89 | +DECL_BTN_EX(l3, SDL_GAMEPAD_BUTTON_LEFT_STICK, "Left Stick") \ |
| 90 | +DECL_BTN_EX(r3, SDL_GAMEPAD_BUTTON_RIGHT_STICK, "Right Stick") \ |
| 91 | +DECL_AXIS_EX(l_x_plus, +SDL_GAMEPAD_AXIS_LEFTX, "Left Thumbstick X+") \ |
| 92 | +DECL_AXIS_EX(l_x_minus, -SDL_GAMEPAD_AXIS_LEFTX, "Left Thumbstick X-") \ |
| 93 | +DECL_AXIS_EX(l_y_plus, +SDL_GAMEPAD_AXIS_LEFTY, "Left Thumbstick Y+") \ |
| 94 | +DECL_AXIS_EX(l_y_minus, -SDL_GAMEPAD_AXIS_LEFTY, "Left Thumbstick Y-") \ |
| 95 | +DECL_AXIS_EX(r_x_plus, +SDL_GAMEPAD_AXIS_RIGHTX, "Right Thumbstick X+") \ |
| 96 | +DECL_AXIS_EX(r_x_minus, -SDL_GAMEPAD_AXIS_RIGHTX, "Right Thumbstick X-") \ |
| 97 | +DECL_AXIS_EX(r_y_plus, -SDL_GAMEPAD_AXIS_RIGHTY, "Right Thumbstick Y+") \ |
| 98 | +DECL_AXIS_EX(r_y_minus, +SDL_GAMEPAD_AXIS_RIGHTY, "Right Thumbstick Y-") \ |
| 99 | +DECL_MENU_EX(SDL_GAMEPAD_BUTTON_GUIDE, "Guide") |
| 100 | + |
69 | 101 | #if defined(DINGUX) && defined(HAVE_SDL_DINGUX) |
70 | 102 | #define DINGUX_SDL_DEFAULT_BINDS \ |
71 | 103 | DECL_BTN_EX(a, 8, "A") \ |
@@ -721,7 +753,7 @@ const char* const input_builtin_autoconfs[] = |
721 | 753 | DECL_AUTOCONF_DEVICE("Standard Gamepad", "sdl2", SDL2_DEFAULT_BINDS), |
722 | 754 | #endif |
723 | 755 | #ifdef HAVE_SDL3 |
724 | | - DECL_AUTOCONF_DEVICE("Standard Gamepad", "sdl3", SDL2_DEFAULT_BINDS), |
| 756 | + DECL_AUTOCONF_DEVICE("Gamepad", "sdl3", SDL3_DEFAULT_BINDS), |
725 | 757 | #endif |
726 | 758 | #if defined(DINGUX) && defined(HAVE_SDL_DINGUX) |
727 | 759 | DECL_AUTOCONF_DEVICE("Dingux Gamepad", "sdl_dingux", DINGUX_SDL_DEFAULT_BINDS), |
|
0 commit comments