diff --git a/board/recalbox/fsoverlay/recalbox/share_init/system/.emulationstation/es_input.cfg b/board/recalbox/fsoverlay/recalbox/share_init/system/.emulationstation/es_input.cfg
index 566bd016dd017e70acc1bf7439a7d4b3eceebd14..49af8878e55297e36932c61fc72aefb61813796d 100644
--- a/board/recalbox/fsoverlay/recalbox/share_init/system/.emulationstation/es_input.cfg
+++ b/board/recalbox/fsoverlay/recalbox/share_init/system/.emulationstation/es_input.cfg
@@ -59,7 +59,6 @@
-
@@ -72,7 +71,6 @@
-
@@ -237,4 +235,42 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/projects/configgen/configgen/generators/libretro/libretroControllers.py b/projects/configgen/configgen/generators/libretro/libretroControllers.py
index e62942d81c1ac92f53b776861e73b979a419e0a9..21df5730cd5d63e45b21903523626f353dcf6258 100644
--- a/projects/configgen/configgen/generators/libretro/libretroControllers.py
+++ b/projects/configgen/configgen/generators/libretro/libretroControllers.py
@@ -426,11 +426,11 @@ class LibretroControllers:
settings.setInt("input_player{}_joypad_index".format(playerIndex), inputIndex)
# Specific configuration for Nintendo Switch N64 Controller
- if controller.DeviceName == 'Nintendo Switch N64 Controller':
- settings.setString("input_player{}_r_x_plus_btn".format(playerIndex), '"9"')
- settings.setString("input_player{}_r_x_minus_btn".format(playerIndex), '"2"')
- settings.setString("input_player{}_r_y_plus_btn".format(playerIndex), '"8"')
- settings.setString("input_player{}_r_y_minus_btn".format(playerIndex), '"3"')
+ if controller.DeviceName in ['Nintendo Switch N64 Controller', 'N64 Controller']:
+ settings.setString("input_player{}_r_x_plus_btn".format(playerIndex), '"2"') # C-Right
+ settings.setString("input_player{}_r_x_minus_btn".format(playerIndex), '"4"') # C-Left
+ settings.setString("input_player{}_r_y_plus_btn".format(playerIndex), '"3"') # C-Down
+ settings.setString("input_player{}_r_y_minus_btn".format(playerIndex), '"10"') # C-Up
# remap config
print("[libretroControllers] setting input_libretro_device_p{}={}".format(playerIndex, 1))
diff --git a/projects/configgen/configgen/generators/mupen/mupenControllers.py b/projects/configgen/configgen/generators/mupen/mupenControllers.py
index a982ce0dacde3eaa71b8d555e2ecc2c621b99c05..b26d8dd36f5a390fcb2c5bbc55eb310d2842af1a 100644
--- a/projects/configgen/configgen/generators/mupen/mupenControllers.py
+++ b/projects/configgen/configgen/generators/mupen/mupenControllers.py
@@ -83,12 +83,12 @@ def defineControllerKeys(controller: Controller) -> Dict[str, str]:
config['X Axis'] = "button({},{})".format(controller.Left.Id, controller.Right.Id)
config['Y Axis'] = "button({},{})".format(controller.Up.Id, controller.Down.Id)
- if controller.DeviceName == 'Nintendo Switch N64 Controller':
+ if controller.DeviceName in ['Nintendo Switch N64 Controller', 'N64 Controller']:
# Specific case for the official N64 controller for Nintendo Switch
- config['C Button U'] = "button(3)";
- config['C Button D'] = "button(8)";
- config['C Button L'] = "button(2)";
- config['C Button R'] = "button(9)";
+ config['C Button U'] = "button(10)"
+ config['C Button D'] = "button(3)"
+ config['C Button L'] = "button(4)"
+ config['C Button R'] = "button(2)"
return config