From ec13b6f0f6c98941f600ba418409af89c4365fdf Mon Sep 17 00:00:00 2001 From: AL2009man <67606569+AL2009man@users.noreply.github.com> Date: Wed, 18 Jun 2025 23:00:30 -0400 Subject: [PATCH] added SDL_GameControllerDB support added `SDL_GameControllerAddMappingsFromFile` to allow support for SDL_GameControllerDB as a option, for those who prefer Community-driven Gamepad database (tends to be far more up-to-date than main SDL) --- UnleashedRecomp/hid/driver/sdl_hid.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/UnleashedRecomp/hid/driver/sdl_hid.cpp b/UnleashedRecomp/hid/driver/sdl_hid.cpp index 876f6d4..f9b8f60 100644 --- a/UnleashedRecomp/hid/driver/sdl_hid.cpp +++ b/UnleashedRecomp/hid/driver/sdl_hid.cpp @@ -344,6 +344,13 @@ void hid::Init() SDL_AddEventWatch(HID_OnSDLEvent, nullptr); SDL_InitSubSystem(SDL_INIT_GAMECONTROLLER); + + // Load SDL_GameControllerDB mappings from file + const char* mappingFile = "gamecontrollerdb.txt"; + int mappingsAdded = SDL_GameControllerAddMappingsFromFile(mappingFile); + if (mappingsAdded > 0) { + LOGFN("Loaded {} controller mapping(s) from SDL_GameControllerDB file", mappingsAdded, mappingFile); + } } uint32_t hid::GetState(uint32_t dwUserIndex, XAMINPUT_STATE* pState)