N64 controller mapping

Very powerful gaming console solution based on Debian

Moderators: mdrjr, odroid

N64 controller mapping

Unread postby NewAgeRetro » Mon Jun 11, 2018 6:14 am

Hello,

I have been searching the forums with no luck so I figured I would post my question.

I'm trying to run N64 on OGST with a USB N64 controller. Everything works fine until the game loads. The controls change so I assume they are loaded with the game. The 'Joystick' is linked with the 'C buttons' and 'B' and 'Z' are mixed up. I have seen posts on editing the Retroarch configs but am starting to get a little lost. I am used to RetroPie and know that its in the opt directory under configs but obviously this isn't Retropie. I'm just trying to figure out where the N64 emulator pulls its configs from.

I looked at the retroarch.cfg file in (/home/odroid/.config/retroarch/retroarch.cfg) but could not see any configs for my N64 controller.

Also is the hotkey+start combo supposed to work?

Sorry for questions. I hope my topic follows all the forum rules but if not please let me know as I often read forums but rarely post.

Thank you for any help.
NewAgeRetro
 
Posts: 11
Joined: Mon Jun 11, 2018 5:52 am
languages_spoken: english
ODROIDs: Odroid XU4

Re: N64 controller mapping

Unread postby odroid » Mon Jun 11, 2018 9:37 am

Can you try to find a udev rule file for your controller?
For examples, we made a rule /usr/share/libretro/autoconfig/udev/xiaoji_GameSir_G3w.cfg for our G3w controller.
Code: Select all
input_driver = "udev"
input_device = "Gamesir-G3w"
input_device_display_name = "xiaoji GameSir G3w"
# Hex vid:pid is found using "dmesg -w" or "tail -f /var/log/syslog" and converted to Decimal using http://www.binaryhexconverter.com/hex-to-decimal-converter
# Hex vid:pid = 20BC:5500 -> Decimal vid:pid = 8380:21760
input_vendor_id = "8380"
input_product_id = "21760"
input_b_btn = "0"
input_y_btn = "3"
input_select_btn = "10"
input_start_btn = "11"
input_up_btn = "h0up"
input_down_btn = "h0down"
input_left_btn = "h0left"
input_right_btn = "h0right"
input_a_btn = "1"
input_x_btn = "4"
input_l_btn = "6"
input_r_btn = "7"
input_l2_btn = "8"
input_r2_btn = "9"
input_l3_btn = "13"
input_r3_btn = "14"
input_l_x_plus_axis = "+0"
input_l_x_minus_axis = "-0"
input_l_y_plus_axis = "+1"
input_l_y_minus_axis = "-1"
input_r_x_plus_axis = "+2"
input_r_x_minus_axis = "-2"
input_r_y_plus_axis = "+3"
input_r_y_minus_axis = "-3"
input_b_btn_label = "A"
input_y_btn_label = "X"
input_select_btn_label = "Select"
input_start_btn_label = "Start"
input_up_btn_label = "D-Pad Up"
input_down_btn_label = "D-Pad Down"
input_left_btn_label = "D-Pad Left"
input_right_btn_label = "D-Pad Right"
input_a_btn_label = "B"
input_x_btn_label = "Y"
input_l_btn_label = "L1"
input_r_btn_label = "R1"
input_l2_btn_label = "L2"
input_r2_btn_label = "R2"
input_l3_btn_label = "Left Stick"
input_r3_btn_label = "Right Stick"
input_l_x_plus_axis_label = "Left Stick Right"
input_l_x_minus_axis_label = "Left Stick Left"
input_l_y_plus_axis_label = "Left Stick Down"
input_l_y_minus_axis_label = "Left Stick Up"
input_r_x_plus_axis_label = "Right Stick Right"
input_r_x_minus_axis_label = "Right Stick Left"
input_r_y_plus_axis_label = "Right Stick Down"
input_r_y_minus_axis_label = "Right Stick Up"
User avatar
odroid
Site Admin
 
Posts: 28697
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: N64 controller mapping

Unread postby meveric » Mon Jun 11, 2018 2:24 pm

It really depends on what controller you're using.
Retroarch should show the name of the controller when you start it, you can also use lsusb to find the name and the ID of your controller.

Retroarch has a very large library of known controllers, apparently yours is not one of em, or is found as a generic no-name controller which can mess up the button layout as well.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.
User avatar
meveric
 
Posts: 9168
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go

Re: N64 controller mapping

Unread postby NewAgeRetro » Mon Jun 25, 2018 2:26 am

Just had to get used to how Retroarch is set up on this system.

As for the GameSir controllers did you find that the udev rule fixed the trigger buttons? For some reason my GameSir maps correct for Emulationstation menus but in games it uses LT and RT as start and select. I think I can fix it in Retroarch but haven't had time to try yet.
NewAgeRetro
 
Posts: 11
Joined: Mon Jun 11, 2018 5:52 am
languages_spoken: english
ODROIDs: Odroid XU4

Re: N64 controller mapping

Unread postby meveric » Mon Jun 25, 2018 4:48 am

EmulationStation and Retroarch are completely separated.. EmulationStation uses SDL2 and maps the controller it currently finds.
Retroarch uses udev and identifies the controller from the Vendor and Product ID and looks up a database of configs to map the buttons.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.
User avatar
meveric
 
Posts: 9168
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go


Return to OGST-XU4

Who is online

Users browsing this forum: No registered users and 2 guests