Skip to content

Commit

Permalink
Fix GameController interface on Switch (#54)
Browse files Browse the repository at this point in the history
  • Loading branch information
rsn8887 authored Feb 8, 2024
1 parent d116109 commit fd37636
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 6 deletions.
2 changes: 1 addition & 1 deletion src/joystick/SDL_gamecontrollerdb.h
Original file line number Diff line number Diff line change
Expand Up @@ -993,7 +993,7 @@ static const char *s_ControllerMappings[] = {
"000000004e696e74656e646f20334400,Nintendo 3DS,crc:3210,a:b0,b:b1,back:b2,dpdown:b7,dpleft:b5,dpright:b4,dpup:b6,leftshoulder:b9,lefttrigger:b14,leftx:a0,lefty:a1,rightshoulder:b8,righttrigger:b15,rightx:a2,righty:a3,start:b3,x:b10,y:b11,",
#endif
#if defined(SDL_JOYSTICK_SWITCH)
"53776974636820436F6E74726F6C6C65,Switch Controller,a:b1,b:b0,back:b11,dpdown:b15,dpleft:b12,dpright:b14,dpup:b13,leftshoulder:b6,leftstick:b4,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b5,righttrigger:b9,rightx:a2,righty:a3,start:b10,x:b3,y:b2,",
"000038f853776974636820436f6e7400,Switch Controller,a:b1,b:b0,back:b11,dpdown:b15,dpleft:b12,dpright:b14,dpup:b13,leftshoulder:b6,leftstick:b4,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b5,righttrigger:b9,rightx:a2,righty:a3,start:b10,x:b3,y:b2,",
#endif
"hidapi,*,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,",
NULL
Expand Down
7 changes: 2 additions & 5 deletions src/joystick/switch/SDL_sysjoystick.c
Original file line number Diff line number Diff line change
Expand Up @@ -201,12 +201,9 @@ static void SWITCH_JoystickSetDevicePlayerIndex(int device_index, int player_ind
}

static SDL_JoystickGUID SWITCH_JoystickGetDeviceGUID(int device_index) {
SDL_JoystickGUID guid;
/* the GUID is just the first 16 chars of the name for now */
/* the GUID is just the name for now */
const char *name = SWITCH_JoystickGetDeviceName(device_index);
SDL_zero(guid);
SDL_memcpy(&guid, name, SDL_min(sizeof(guid), SDL_strlen(name)));
return guid;
return SDL_CreateJoystickGUIDForName(name);
}

/* Function to perform the mapping from device index to the instance id for this index */
Expand Down

0 comments on commit fd37636

Please sign in to comment.