RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    N64 Controller Setup - Inconsistent Documentation

    Scheduled Pinned Locked Moved Help and Support
    n64retroarchcontroller
    9 Posts 3 Posters 595 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • busywaitB
      busywait
      last edited by busywait

      In the RetroPie documentation there's a picture showing the mapping of a "RetroPad" to an N64 controller.

      The A and B buttons are not correct for lr-mupen64plus-next. I noticed this on a 64-bit RetroPie compiled from source, with lr-mupen64plus-next v2.2 while I was creating an autoconfig file for a Retro-bit Sega "8-button" controller, which is a bit like an N64 without the analog stick.

      alt text

      The actual mappings are
      RetroPad B -> N64 A
      RetroPad Y -> N64 B

      I think that the mapping in the picture is much more sensible, and the code should be changed, otherwise, you will not be able to control the RGUI using the N64 controller because there is no RetroPad A button.

      1 Reply Last reply Reply Quote 0
      • mituM
        mitu Global Moderator
        last edited by

        @busywait said in N64 Controller Setup - Inconsistent Documentation:

        RetroPad B -> N64 A
        RetroPad Y -> N64 B

        Doesn't this look closer to the standalone Mupen64Plus mapping image ?

        this

        IanDaemonI busywaitB 2 Replies Last reply Reply Quote 0
        • IanDaemonI
          IanDaemon @mitu
          last edited by IanDaemon

          @mitu So you're drawing attention to the difference between lr-mupen64plus-next and standalone Mupen64Plus, correct? At least that's my take-away.

          • 5 Favorite Arcade Games in MAME
          • Cocktail Cabinet Games
          • Check out the MAME RoW
          mituM 1 Reply Last reply Reply Quote 0
          • mituM
            mitu Global Moderator @IanDaemon
            last edited by

            @iandaemon Yes, the mappings are different, but I suspect the images are switched. I only looked at the default mapping for lr-mupen64-plus-next described in their doc page, which is similar to what @busywait reported, but haven't looked at mapping created from the RetroPie scripts for the standalone Mupen64plus.

            1 Reply Last reply Reply Quote 0
            • busywaitB
              busywait @mitu
              last edited by

              @mitu said in N64 Controller Setup - Inconsistent Documentation:

              @busywait said in N64 Controller Setup - Inconsistent Documentation:

              RetroPad B -> N64 A
              RetroPad Y -> N64 B

              Doesn't this look closer to the standalone Mupen64Plus mapping image ?

              Yes, that image is correct, but I've never seen it before - the (only) one I found was inhttps://retropie.org.uk/docs/RetroArch-Configuration/, which did not match.

              And also, it seems odd to not use retropad A in the mapping because then you can't use the controller to select in the RGUI. I guess the core author gets to make that call :)

              mituM 1 Reply Last reply Reply Quote 0
              • mituM
                mitu Global Moderator @busywait
                last edited by

                @busywait said in N64 Controller Setup - Inconsistent Documentation:

                Yes, that image is correct, but I've never seen it before - the (only) one I found was inhttps://retropie.org.uk/docs/RetroArch-Configuration/, which did not match.

                Both input configurations for N64 are shown on the N64 doc page, I think they're switched.

                And also, it seems odd to not use retropad A in the mapping because then you can't use the controller to select in the RGUI. I guess the core author gets to make that call :)

                How the button is mapped to the underlying core doesn't matter for the menu (RGUI or otherwise).

                busywaitB 1 Reply Last reply Reply Quote 0
                • busywaitB
                  busywait @mitu
                  last edited by busywait

                  @mitu said in N64 Controller Setup - Inconsistent Documentation:

                  How the button is mapped to the underlying core doesn't matter for the menu (RGUI or otherwise).

                  From experience, it does.

                  I use a controller with 6 face buttons and 2 shoulder buttons, plus start and "mode" buttons (Retro-bit Sega Genesis style 8-button pad).

                  The joypad autoconfig for my 8-button Retro-bit/Sega pad to match lr-mupen64plus-next does not have any input_a_btn defined, and so nothing can be selected in the RGUI.

                  This is not a problem with my XBox controller because it has input_a_btn defined, even though it is used in the n64 controller mapping.

                  My autoconfig file is

                  ## in the n64/retroarch.cfg file include the line below to reference this autoconfig file:
                  ## joypad_autoconfig_dir = "/opt/retropie/configs/n64/joypads/"
                  
                  input_device = "SWITCH CO.,LTD. USB Gamepad "
                  input_device_display_name = "Retro-bit Mega Drive/Saturn Arcade Pad"
                  #input_vendor_id = "121"
                  #input_product_id = "17"
                  input_driver = "udev"
                  
                  input_l_btn_label = "Sega-L"
                  input_l_btn = "6"
                  input_up_axis_label = "D-Pad Up"
                  input_up_axis = "-1"
                  input_left_axis_label = "D-Pad Left"
                  input_left_axis = "-0"
                  input_right_axis_label = "D-Pad Right"
                  input_right_axis = "+0"
                  input_r_btn_label = "Sega-R"
                  input_r_btn = "7"
                  input_down_axis_label = "D-Pad Down"
                  input_down_axis = "+1"
                  input_start_btn_label = "Start"
                  input_start_btn = "9"
                  
                  # Modifications for N64
                  input_l2_btn_label = "Mode"
                  input_l2_btn = "8"
                  input_b_btn_label = "Sega-A"
                  input_b_btn = "1"
                  input_y_btn_label = "Sega-X"
                  input_y_btn = "0"
                  input_r_x_plus_btn_label = "Sega-C"
                  input_r_x_plus_btn = "4"
                  input_r_x_minus_btn_label = "Sega-Y"
                  input_r_x_minus_btn = "3"
                  input_r_y_plus_btn_label = "Sega-B"
                  input_r_y_plus_btn = "2"
                  input_r_y_minus_btn_label = "Sega-Z"
                  input_r_y_minus_btn = "5"
                  
                  
                  # RetroArch hotkeys to match "SNES on Right" layout
                  input_enable_hotkey_btn = "8"
                  input_exit_emulator_btn = "9"
                  input_save_state_btn = "7"
                  input_load_state_btn = "6"
                  input_menu_toggle_btn = "5"
                  input_state_slot_increase_axis = "+0"
                  input_state_slot_decrease_axis = "-0"
                  input_rewind_axis = "+1"
                  input_hold_fast_forward_axis = "-1"
                  input_reset_btn = "2"
                  
                  
                  1 Reply Last reply Reply Quote 0
                  • mituM
                    mitu Global Moderator
                    last edited by

                    @busywait said in N64 Controller Setup - Inconsistent Documentation:

                    From experience, it does.
                    The joypad autoconfig for my 8-button Retro-bit/Sega pad to match lr-mupen64plus-next does not have any input_a_btn defined, and so nothing can be selected in the RGUI.

                    If you don't have a 'retropad A' button defined, of course it's not going to work in the menu . My remark was:

                    How the button is mapped to the underlying core doesn't matter for the menu (RGUI or otherwise).

                    busywaitB 1 Reply Last reply Reply Quote 1
                    • busywaitB
                      busywait @mitu
                      last edited by busywait

                      @mitu said in N64 Controller Setup - Inconsistent Documentation:

                      @busywait said in N64 Controller Setup - Inconsistent Documentation:

                      If you don't have a 'retropad A' button defined, of course it's not going to work in the menu . My remark was:

                      How the button is mapped to the underlying core doesn't matter for the menu (RGUI or otherwise).

                      I agree, but the reason that I don't have a retropad A button defined is because the core doesn't use it for it's logical function in the mapping. I could have had both [N64 "A" and RGUI "A"] if the core used different bindings.

                      Obviously this is a minority problem for people trying to use pads without the full set of retroarch inputs, and I can still navigate the RGUI using a keyboard in my case :)

                      1 Reply Last reply Reply Quote 0
                      • First post
                        Last post

                      Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                      Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.