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

    Pi4 MAME2010 crashing on Tab menu > Inputs

    Scheduled Pinned Locked Moved Help and Support
    mame2010crashcontrols
    89 Posts 9 Posters 10.1k 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
      grant2258 Banned
      last edited by grant2258

      I wont be using this on a pi 3 to be honest just want to get it usable fror a pi4 if people want to use it.

      Ok the updating is done there is one fix in here for the pi 4. Its a one line paragma and the rest of the updates are for the input that never worked right so it applies to all platforms. I only updated this because there might be a need for it to be usable.

      There is a core option to enable auto mapping this will set selected games to automap its off by default you need to restart the core when you enable/disable this setting.

      how to compile for pi4

      git clone https://github.com/grant2258/mame2010-libretro.git
      git checkout input
      make platform=rpi4 -j8
      sudo cp mame2010_libretro.so /opt/retropie/libretrocores/lr-mame2010/
      

      you can also patch the official repo with this

      wget https://github.com/grant2258/mame2010-libretro/commit/eb1d80d0625c5ecd493c9e001a5e9f3a1fd8ec18.diff
      git apply eb1d80d0625c5ecd493c9e001a5e9f3a1fd8ec18.diff
      

      @pjft let me know if you find any issues i will look out for sensible way to add the digital hats at some point!

      pjftP 1 Reply Last reply Reply Quote 1
      • pjftP
        pjft @grant2258
        last edited by

        @grant2258 Oh my, I did not get notified of these changes/edits to your post, so only now did I come back to update this.

        I ended up digging into the actual issue there - thank to yours and @mitu's guidance - and came up with a smaller fix for the crash on the Pi4, on the actual struct that was causing the problems. There might be more memory leaks or wrong accesses, but at least from what I tested nothing is crashing for the moment.

        https://github.com/pjft/mame2010-libretro/commit/5b689b6351b602102967dd953237fb85fbb59244

        I am just running a final test on compiling from scratch and then if it works well I'll submit it upstream.

        I'll test out your patch tomorrow or weekend the latest, for sure.

        For the actual compilation scripts, I'd love to get other (definitely more knowledgeable) people's inputs on those -- @mitu being clearly one of them. :)

        Thanks for these - they'll make the lr-mame2010 experience a lot better for 2 player games and for customizing the inputs!

        1 Reply Last reply Reply Quote 3
        • G
          grant2258 Banned
          last edited by

          the only fix needed for the pi4 crash is #pragma i sent you. The rest of the updates is fixing the input thats badly broke and not finished

          pjftP 1 Reply Last reply Reply Quote 0
          • pjftP
            pjft @grant2258
            last edited by

            @grant2258 Correct - I ended up just narrowing it down to what was the exact struct that was being accessed incorrectly, and apply the __packed qualifier to it only, in case the repository maintainers would object to applying it to the entire file for some reason.

            Thanks for putting these together!

            1 Reply Last reply Reply Quote 0
            • G
              grant2258 Banned
              last edited by grant2258

              I have one more check on the code and noticed a little boo boo the latest updates will be in the input branch if you want them it works like it should now. If you find any issues let me know. Ill check the code over in the next few days and play some games. I dont think there is any maintainers. The defaults are stored in src/emu/inpttype.h if you want to have a look at changing them. In my experience this is the hardest part to deal with there is always going to be someone that doesnt like your changes.

              Ive looked at this there is two ways to do the dpad you can set it up as a button and map it in the .h file you would for digital you would need to map the dpad to all alalog controls dial,xaxis,yaxis,paddle ect. This basically means you would loose the extra buttons on the dpad because they are already mapped and you really need it for games like hard driving ect.

              I think a better way of doing this would be use of a controller file if the code for that hasnt been ripped out it wil basically do the same as above but you could have a core option to enable it or not of course a restart would be required.

              1 Reply Last reply Reply Quote 1
              • S
                Simrose
                last edited by

                I'm having problems compiling or patching.
                Can you help me with what i might be doing wrong.

                error: Makefile: No such file or directory
                error: src/emu/uimenu.c: No such file or directory
                error: src/osd/retro/retromain.c: No such file or directory
                error: src/osd/retro/retromain.h: No such file or directory
                i get the above message.
                Thanks
                Sim

                1 Reply Last reply Reply Quote 0
                • G
                  grant2258 Banned
                  last edited by grant2258

                  just do this

                  git clone https://github.com/grant2258/mame2010-libretro.git
                  cd mame2010-libretro
                  git checkout input
                  make platform=rpi4 -j8
                  sudo cp mame2010_libretro.so /opt/retropie/libretrocores/lr-mame2010/
                  
                  S 1 Reply Last reply Reply Quote 0
                  • S
                    Simrose @grant2258
                    last edited by Simrose

                    @grant2258 said in Pi4 MAME2010 crashing on Tab menu > Inputs:

                    git clone https://github.com/grant2258/mame2010-libretro.git

                    git clone https://github.com/grant2258/mame2010-libretro.git
                    fatal: destination path 'mame2010-libretro' already exists and is not an empty directory.

                    im not sure what im doing wrong still, I tried uninstalling lr-mame2010 and still had same issue. No folder in libretrocores for lr-mame2010.
                    Hope you can help.
                    Thanks Sim

                    1 Reply Last reply Reply Quote 0
                    • G
                      grant2258 Banned
                      last edited by grant2258

                      rm -rf mame2010-libretro
                      

                      then do the above

                      S 1 Reply Last reply Reply Quote 0
                      • S
                        Simrose @grant2258
                        last edited by

                        @grant2258 said in Pi4 MAME2010 crashing on Tab menu > Inputs:

                        rm -f mame2010-libretro
                        rm: cannot remove 'mame2010-libretro': Is a directory

                        1 Reply Last reply Reply Quote 0
                        • G
                          grant2258 Banned
                          last edited by grant2258

                          its rm -rf you posted that as i was editing it. I think ill compile a binary for people probably easier that way

                          1 Reply Last reply Reply Quote 0
                          • S
                            Simrose
                            last edited by Simrose

                            @grant2258 said in Pi4 MAME2010 crashing on Tab menu > Inputs:

                            git clone https://github.com/grant2258/mame2010-libretro.git
                            cd mame2010-libretro
                            git checkout input
                            make platform=rpi4 -j8
                            sudo cp mame2010_libretro.so /opt/retropie/libretrocores/lr-mame2010/

                            Thanks its installing now.

                            The remove command worked and used this post you made
                            git clone https://github.com/grant2258/mame2010-libretro.git
                            cd mame2010-libretro
                            git checkout input
                            make platform=rpi4 -j8
                            sudo cp mame2010_libretro.so /opt/retropie/libretrocores/lr-mame2010/

                            Im hopeing this will help with player 2 controls for some reason mortal kombat 2 etc the circle button does not do anything. Cant low kick on player 2. It will be great if it works afterwards.

                            Thanks
                            Sim

                            1 Reply Last reply Reply Quote 0
                            • G
                              grant2258 Banned
                              last edited by

                              should be good for 4 players :)

                              S 1 Reply Last reply Reply Quote 0
                              • S
                                Simrose @grant2258
                                last edited by Simrose

                                @grant2258
                                It was compiling but at the end it didnt install
                                ill have to do it again as i closed putty and show message thanks.

                                pi@retropie:~ $ git clone https://github.com/grant2258/mame2010-libretro
                                fatal: destination path 'mame2010-libretro' already exists and is not anirectory.
                                pi@retropie:~ $ cd mame2010-libretro
                                pi@retropie:~/mame2010-libretro $ git checkout input
                                Already on 'input'
                                Your branch is up to date with 'origin/input'.
                                pi@retropie:~/mame2010-libretro $ make platform=rpi4 -j8^C
                                pi@retropie:~/mame2010-libretro $ sudo cp mame2010_libretro.so /opt/retropie/libretrocores/lr-mame2010/
                                cp: cannot create regular file '/opt/retropie/libretrocores/lr-mame2010/': Not a directory
                                pi@retropie:~/mame2010-libretro $

                                EDIT
                                I just had to create a lr-mame2010 directory and it worked now to test
                                mame2010_libretro is in the lr-mame2010 folder from your install

                                So I have the new core installed from you, I just need some config to launch the emulator. As before installing i removed the emulator from setup, I can see in retropie setup it says installed via unknown lr-mame2010 so i must be close in getting it working.

                                I think i solved it the long way around sorry im not really confident with this.

                                I backed up the new core you made then installed via binary
                                so i have the config to launch the emulator
                                then run just this code

                                git clone https://github.com/grant2258/mame2010-libretro.git
                                cd mame2010-libretro
                                git checkout input
                                make platform=rpi4 -j8
                                now its doing its installing lots of code
                                when that finishes ill copy over the new core over the binary one as root user
                                so hopefully when finished it will all be good.

                                1 Reply Last reply Reply Quote 0
                                • G
                                  grant2258 Banned
                                  last edited by grant2258

                                  yes you need to install the mame2010 package first on thing to note if it stops compiling just go back to the mame2010-libretro
                                  directory

                                  the other commands before this just grabed the source and checkout the branch no need to worry about them again

                                  make platform=rpi4 -j8
                                  sudo cp mame2010_libretro.so /opt/retropie/libretrocores/lr-mame2010/
                                  
                                  S 1 Reply Last reply Reply Quote 0
                                  • S
                                    Simrose @grant2258
                                    last edited by Simrose

                                    @grant2258
                                    So the Controls are wrong for Mortal kombwt
                                    Compared to arcade and mame 2003, megadrive etc
                                    But they all can be mapped now which is wonderful
                                    Thanks
                                    Sim

                                    This is how I set it now for Mortal kombat to be the same as mame 2003 and layout of how Mortal kombat games are on most platforms.

                                    Auto 0 key z button 4
                                    Auto 3 key a button 1
                                    Auto 1 key x button 5
                                    Auto 2 key S button 3
                                    Auto 4 key q button 2
                                    Auto 5 key w button 6
                                    Auto 6 button 8
                                    Auto 7 button 7

                                    Its working really well
                                    Thank you again

                                    Is their a way to get dpad working and not just analog.

                                    Thanks
                                    Sim

                                    1 Reply Last reply Reply Quote 0
                                    • G
                                      grant2258 Banned
                                      last edited by grant2258

                                      there is some mapping that was there you need to turn it on in the options and restart the core. I left them off by default because i havent tested them. So if you turn it on (then restart) and load up street fighter 2 it should map properly. Again this isint my mapping its what was there

                                      S 1 Reply Last reply Reply Quote 0
                                      • S
                                        Simrose @grant2258
                                        last edited by

                                        @grant2258
                                        Can you please explain where options how to enable
                                        Thanks
                                        Sim

                                        G 1 Reply Last reply Reply Quote 0
                                        • G
                                          grant2258 Banned @Simrose
                                          last edited by

                                          @Simrose like any other retroarch core option select +x to get to rgui

                                          then goto options

                                          its the first option automapping turn it on close the core and restart

                                          S 2 Replies Last reply Reply Quote 0
                                          • S
                                            Simrose @grant2258
                                            last edited by Simrose

                                            @grant2258 thanks for that sorry I'm learning.

                                            Edit
                                            Works perfect😊
                                            It would be great to be able to enable dpad also
                                            Thanks
                                            Sim

                                            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.