Provided by: libsdl3-doc_3.2.20+ds-2_all bug

NAME

       SDL_AddGamepadMapping  -  Add  support  for  gamepads  that SDL is unaware of or change the binding of an
       existing gamepad.

SYNOPSIS

       #include <SDL3/SDL_gamepad.h>

       int SDL_AddGamepadMapping(const char *mapping);

DESCRIPTION

       The  mapping  string  has  the  format  "GUID,name,mapping",  where  GUID  is  the  string   value   from
       SDL_GUIDToString(), name is the human readable string for the device and mappings are gamepad mappings to
       joystick  ones.  Under  Windows  there is a reserved GUID of "xinput" that covers all XInput devices. The
       mapping format for joystick is:

       • bX: a joystick button, index X

       • hX.Y: hat X with value Y

       • aX: axis X of the joystick

       Buttons can be used as a gamepad axes and vice versa.

       If a device with this GUID is already plugged in, SDL will generate an SDL_EVENT_GAMEPAD_ADDED event.

       This string shows an example of a valid mapping for a gamepad:

              "341a3608000000000000504944564944,Afterglow PS3 Controller,a:b1,b:b2,y:b3,x:b0,start:b9,guide:b12,back:b8,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftshoulder:b4,rightshoulder:b5,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7"

FUNCTION PARAMETERS

       mapping
              the mapping string.

RETURN VALUE

       for more information.

THREAD SAFETY

       It is safe to call this function from any thread.

AVAILABILITY

       This function is available since SDL 3.2.0.

SEE ALSO

       SDL_AddGamepadMappingsFromFile(3),       SDL_AddGamepadMappingsFromIO(3),       SDL_GetGamepadMapping(3),
       SDL_GetGamepadMappingForGUID(3), SDL_HINT_GAMECONTROLLERCONFIG(3), SDL_HINT_GAMECONTROLLERCONFIG_FILE(3),
       SDL_EVENT_GAMEPAD_ADDED(3)

Simple Directmedia Layer                           SDL 3.2.20                           SDL_AddGamepadMapping(3)