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

    Happ joystick doesn't work on some dreamcast games

    Scheduled Pinned Locked Moved Help and Support
    reicast helpjoystick issueconfigure inputd-pad
    11 Posts 3 Posters 2.6k 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.
    • G
      GHOSTfaceKILLr74
      last edited by

      Pi Model or other hardware: Raspberry Pi 3 b +
      Power Supply used: 5v 3a
      RetroPie Version Used: 4.4.4
      Built From: Pre made SD Image on RetroPie website
      USB Devices connected: DragonRiseInc. Generic USB Joystick
      Controller used: Suzo happ joysticks and buttons. Zero delay usb controller
      Guide used: https://github.com/RetroPie/RetroPie-Setup/wiki/Dreamcast (Mapping a Nonstandard Controller via @Folly)
      Emulator: reicast (Dreamcast)

      I have an arcade cabinet with joysticks and buttons setup Street Fighter 2 style. I have several Dreamcast games running smoothly but the joysticks don't work on some games (buttons work on all games).
      To make things simple I will focus on 2 games.
      "Marvel vs Capcom 2" joysticks work. (The games controller option show you can play with joystick and d-pad)
      "The King of Fighters Evolution" joysticks not working. (game shows it's playable with d-pad only)

      /opt/retropie/configs/all/autoconf.cfg

      reicast_input = "0"
      

      This is my emu.cfg

      [audio]
      backend = auto
      disable = 0
      
      [config]
      Debug.SerialConsoleEnabled = 0
      Dreamcast.Broadcast = 4
      Dreamcast.Cable = 3
      Dreamcast.RTC = -2110512542
      Dreamcast.Region = 3
      Dynarec.Enabled = 1
      Dynarec.idleskip = 1
      Dynarec.unstable-opt = 0
      aica.LimitFPS = 1
      aica.NoBatch = 0
      aica.NoSound = 0
      bios.UseReios = 0
      pvr.MaxThreads = 3
      pvr.Subdivide = 0
      pvr.SynchronousRendering = 0
      pvr.rend = 0
      rend.UseMipmaps = 1
      rend.WideScreen = 0
      ta.skip = 0
      
      [dispmanx]
      height = 480
      maintain_aspect = yes
      width = 640
      
      [input]
      evdev_device_id_1 = 2
      evdev_device_id_2 = 3
      evdev_device_id_3 = -1
      evdev_device_id_4 = -1
      evdev_mapping_1 = /opt/retropie/configs/dreamcast/mappings/MYcontroller.cfg
      evdev_mapping_2 = /opt/retropie/configs/dreamcast/mappings/MYcontroller.cfg
      joystick_device_id = -1
      
      [omx]
      audio_hdmi = yes
      audio_latency = 100
      
      [players]
      nb = 1
      
      [reios]
      ElfFile = 
      
      [testing]
      ta.HashCheckFile = 
      ta.HashLogFile = 
      
      [validate]
      OpenGlChecks = 0
      

      Only Marvel vs Capcom 2 works with this Mycontroller.cfg setup.

      [emulator]
      mapping_name = DragonRise Inc.   Generic   USB  Joystick  
      btn_escape = 292
      
      [dreamcast]
      btn_a = 296
      btn_b = 295
      btn_x = 299
      btn_y = 298
      btn_start = 293
      btn_dpad1_left =
      btn_dpad1_right =
      btn_dpad1_up =
      btn_dpad1_down =
      axis_x = 0
      axis_y = 1
      
      [compat]
      axis_dpad1_x = 
      axis_dpad1_y = 
      axis_dpad1_x_inverted = no
      axis_dpad1_y_inverted = no
      btn_trigger_left = 297
      btn_trigger_right = 294
      axis_x_inverted = no
      axis_y_inverted = no
      

      Joysticks will not work for both games using this Mycontroller.cfg setup.

      [emulator]
      mapping_name = DragonRise Inc.   Generic   USB  Joystick  
      btn_escape = 292
      
      [dreamcast]
      btn_a = 296
      btn_b = 295
      btn_x = 299
      btn_y = 298
      btn_start = 293
      btn_dpad1_left =
      btn_dpad1_right =
      btn_dpad1_up =
      btn_dpad1_down =
      axis_x = 0
      axis_y = 1
      
      [compat]
      axis_dpad1_x = 0
      axis_dpad1_y = 1
      axis_dpad1_x_inverted = no
      axis_dpad1_y_inverted = no
      btn_trigger_left = 297
      btn_trigger_right = 294
      axis_x_inverted = no
      axis_y_inverted = no
      

      Buttons used for d-pad in this MYcontroller.cfg setup. The King of Fighters Evolution works but now I don't have enough buttons for kick or punch. Also forward jump or special moves to difficult to perform using buttons (joystick still not working).

      [emulator]
      mapping_name = DragonRise Inc.   Generic   USB  Joystick  
      btn_escape = 292
      
      [dreamcast]
      btn_a = 
      btn_b = 
      btn_x = 
      btn_y = 
      btn_start = 293
      btn_dpad1_left =296
      btn_dpad1_right =298
      btn_dpad1_up =299
      btn_dpad1_down =295
      axis_x = 0
      axis_y = 1
      
      [compat]
      axis_dpad1_x = 
      axis_dpad1_y = 
      axis_dpad1_x_inverted = no
      axis_dpad1_y_inverted = no
      btn_trigger_left = 297
      btn_trigger_right = 294
      axis_x_inverted = no
      axis_y_inverted = no
      

      I found a post suggesting to go to configs/all/retroarch.cfg

      input_player1_analog_dpad_mode = "1"
      input_player2_analog_dpad_mode = "1"
      

      Doesn't work at all.

      Is there a way to bind joystick/d-pad or is this the wrong way to go.
      Not sure what to do at this point.

      EfriimE B 2 Replies Last reply Reply Quote 0
      • EfriimE
        Efriim @GHOSTfaceKILLr74
        last edited by

        @GHOSTfaceKILLr74
        emu.cfg << reicast
        retroarch.cfg << (libretro)lr-emulators

        There are ways, but why did you map the direction buttons as b, a y and x?

        sudo /opt/retropie/emulators/reicast/bin/reicast-joyconfig
        You will have to attend the mappings in this order exit, a, b, c, d, x, y, z, start, dpad1-LRUD, dpad2-LRUD, L1, R1, analog.

        G 1 Reply Last reply Reply Quote 0
        • B
          BJRetro @GHOSTfaceKILLr74
          last edited by BJRetro

          @GHOSTfaceKILLr74 so I had this same issue with reicast and my bartop (xin mo joysticks) and Virtua Fighter 3tb which is also dpad only. The easiest way I found ultimately was just to install lr-reicast to play the dpad only games because then I could use the GUI menu to select the analog to digital option for the joystick for those games. I never like messing with hard coded controller config files unless I absolutely have to but that’s just me (originally did my standalone reicast controls using the configuration/tools menu for reicast in the retropie setup menu). I had also posted a help request asking if somehow outside of retroarch you could load a new controller config file on a game-by-game basis using the runcommand on start and no one responded at the time. If you decide to go the lr-reicast route let me know and I can find my post that summarized the install instructions.

          EDIT: I can’t remember anymore if there were some games that required analog controls. When I did my setup originally I had to map the joystick as analog for sure because it was the only way to get past the date and time screen. But now that is not an issue because with the updated reicast that screen does not appear anymore. So if no games require the analog stick you could just map the joystick as dpad and be done with it in standalone. I just can’t remember anymore whether some games also require analog like some require dpad.

          G 1 Reply Last reply Reply Quote 0
          • G
            GHOSTfaceKILLr74 @Efriim
            last edited by

            @Efriim I was experimenting by copy and pasting different inputs in the Mycontroller.cfg.

            1 Reply Last reply Reply Quote 0
            • G
              GHOSTfaceKILLr74 @BJRetro
              last edited by

              @BJRetro I didn't know lr-reicast was available as an option.
              I can't seem to find lr-reicast in the optional packages or experimental package.
              Is it an experimental package??? Is there a link on how to get it?
              Last question: do I install/update experimental packages to get it?

              Thanks for responding!!!

              B 2 Replies Last reply Reply Quote 0
              • B
                BJRetro @GHOSTfaceKILLr74
                last edited by

                @GHOSTfaceKILLr74 before installing lr-reicast maybe double check to see if any of your games require the analog stick. If not, I would remap your controller using the controller config utility @Efriim mentioned by only mapping your joystick only as the dpad 1 and not the analog stick. If some of your games do require using the analog stick then my next post I will copy the instructions from my other post on installing lr-reicast. You are not missing anything it was not typically available for rpi but my guess is it will be back in the Retropie 4.5 image as an experimental emulator when that comes out in a few weeks. But until then there is a way to install which I will post. Note that lr-reicast will SEEM worse at first. You will need to mess with the various settings in the Retroarch GUI once you install and then you will get pretty much the same performance and traffics as standalone (search for the “working Dreamcast games” thread for a lot of people’s testing and thoughts).

                1 Reply Last reply Reply Quote 0
                • B
                  BJRetro @GHOSTfaceKILLr74
                  last edited by

                  @GHOSTfaceKILLr74 ok here are the instructions for lr-reicast:

                  1-goto retropie setup menu, update the retropie setup script

                  2-update Retroarch from the the retropie setup menu choosing the “from binary” option

                  3-once you reboot and are back in emulation station press F4 to go to terminal

                  4-type sudo nano /home/pi/RetroPie-Setup/scriptmodules/libretrocores/lr-reicast.sh

                  This lets you edit the lr-reicast setup script to allow it to appear on the raspberry pi retropie setup menu under experimental packages.

                  replace the rp_module_flags with
                  rp_module_flags=""

                  in the build_lr-reicast function, replace the single make line with
                  make platform=rpi3
                  Press Ctrl and X on your keyboard then y to save changes.

                  5-go back to terminal with F4, type sudo reboot to reboot then in EmulationStation go to the retropie setup menu, manage experimental packages, and lr-reicast should now be there. Install from source.

                  6-go back to terminal with F4, type sudo nano /opt/retropie/configs/dreamcast/emulators.cfg
                  You will see a line that says lr-reicast= and at the very end of the line inside the last quotation mark put </dev/null

                  7-put the bios files you need in the Dreamcast bios folder

                  8- Dreamcast should now work; when you start a game go to runcommand menu and choose lr-reicast.

                  1. Suggested to choose a reduced resolution from the runcommand menu, e.g. CEA1 or CEA3, then in the retroarch GUI you can experiment with other performance options, such as frameskip and altering the internal resolution, which will make lr-reicast performance approach or equal standalone reicast.

                  2. To fix the DPAD issue where your joystick is recognized as analog by default, go to quick menu, controls, and underneath the retro pad options for player 1 and player 2 choose “left analog” as analog to digital.

                  3. note that you can attempt to play Naomi / Atomiswave arcade games on lr-reicast which is not available on standalone reicast. You will need the proper bios files and also need to alter the Dreamcast system entry in essystems.cfg to recognize .zip files as games in emulation station since you use Mame zips for that (.184 rom set I used I think):

                  Go to terminal with F4, type sudo nano
                  /etc/emulationstation/es_systems.cfg

                  Add .zip and .ZIP to the extensions line where it currently lists GDI, etc.

                  The working Dreamcast games thread has the bios files needed for Naomi / Atomiswave. Warning that hard to find a perfectly working game with those but Guilty Gear X 1.5 works great for me, for instance.

                  Hope this helps you but also anyone else.

                  G 2 Replies Last reply Reply Quote 0
                  • G
                    GHOSTfaceKILLr74 @BJRetro
                    last edited by

                    @BJRetro Thanks for going out of your way in posting all of this information. I really appreciate it. Looks like I'm going to be pulling an all-nighter on this one!!!

                    1 Reply Last reply Reply Quote 0
                    • G
                      GHOSTfaceKILLr74 @BJRetro
                      last edited by GHOSTfaceKILLr74

                      @BJRetro Ignore this post. Figured it out.

                      Thanks again for the help. Got lr-reicast up and running BUT I'm getting this message on a few games especially the game The King of Fighters Evolution were I was trying to get the joystick to work.
                      I'm using HDMI so what's going on?
                      alt text
                      I'm so close and this shows up.

                      B 1 Reply Last reply Reply Quote 0
                      • B
                        BJRetro @GHOSTfaceKILLr74
                        last edited by

                        @GHOSTfaceKILLr74 ok good so all works?

                        G 1 Reply Last reply Reply Quote 0
                        • G
                          GHOSTfaceKILLr74 @BJRetro
                          last edited by GHOSTfaceKILLr74

                          @BJRetro Yes everything works good! Thanks for the extra info on Naomi/Atomisware!!!
                          Guilty Gear X 1.5 and Fist of the North Star works great.

                          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.