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

    LR-MAME2003 speeding up with B-button press

    Scheduled Pinned Locked Moved Help and Support
    lr-mame2003speedbutton
    22 Posts 8 Posters 7.0k 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.
    • dankcushionsD
      dankcushions Global Moderator
      last edited by dankcushions

      this is interesting. i can't see why this would happen, but i will test myself. "UI cancel" should have no impact on game speed, and B would be a button i press all the time, so i assume it's something specific with your setup.

      but yeah, if anyone else could test that would be helpful! i will try and do the same soon.

      1 Reply Last reply Reply Quote 0
      • caver01C
        caver01
        last edited by

        I would test, but my image is a few revs back, kept updated. Also, as an iPAC user, I have a dedicated button <ESC> to exit the core which overrides the MAME "back/exit" so I always just navigate to the "previous menu" choice in the GUI. It seems like you would quickly get into trouble trying to map a button to a game control if that same button is already mapped to the UI "back/exit".

        My 4-player cocktail style cabinet built as a custom "roadcase"

        dankcushionsD 1 Reply Last reply Reply Quote 0
        • dankcushionsD
          dankcushions Global Moderator @caver01
          last edited by

          @caver01 said in LR-MAME2003 speeding up with B-button press:

          It seems like you would quickly get into trouble trying to map a button to a game control if that same button is already mapped to the UI "back/exit".

          to be clear, the 'ui cancel' button is not the 'exit mame' button. in fact, it is mapped to button 1 (retropad b) by default.
          https://github.com/libretro/mame2003-libretro/blob/7b55725e744ac9702db092f996e2fca2276146b2/src/inptport.c#L213
          and
          https://github.com/libretro/mame2003-libretro/blob/master/src/libretro/joystick.c#L18

          so yeah, if this was an issue it should be affecting everyone with a default setup.

          GtBFilmsG caver01C 2 Replies Last reply Reply Quote 0
          • GtBFilmsG
            GtBFilms @dankcushions
            last edited by

            @dankcushions

            I noticed this with Pacman. Didn't think anything of it, as I don't usually press that button (as Pacman doesn't have ANY buttons mapped, apart from insert coin and P1 start I guess).

            Just thought it was a weird one-off.

            I'll try it again tonight.

            1 Reply Last reply Reply Quote 0
            • RumblinBuffaloR
              RumblinBuffalo
              last edited by

              so yeah, if this was an issue it should be affecting everyone with a default setup

              @dankcushions I would agree. I can tell you I first noticed this when I first setup my fresh 4.1 install. Testing "Mat Mania" was the first game I noticed. Every time I pressed the B (punch button) I could hear the music speed up slightly. I thought it was just the rom so I used lr-mame4all for that rom and it was fine. Then I started noticing it with others.

              Last night, when I narrowed it down, I was able to reproduce the issue with Ms Pacman, without even playing. I just let the demo run, and started pressing the ESC key on my keyboard (mapped to the UI back button) and I could see tiny speed bursts in the game. With a game running, you can actually hear it.

              I'll wait till you've tested, but I can't figure out what I might have set different that wouldn't be default for everyone. I had basically setup my gamepad (basic setup, no problems) and the shader override configs when I first noticed.

              1 Reply Last reply Reply Quote 0
              • dankcushionsD
                dankcushions Global Moderator
                last edited by

                SOLVED:
                https://github.com/libretro/mame2003-libretro/blob/7b55725e744ac9702db092f996e2fca2276146b2/src/drivers/pacman.c#L1016

                there's a speedup hack in pacman + ms pacman that is bound to button1.

                GtBFilmsG RumblinBuffaloR 2 Replies Last reply Reply Quote 2
                • GtBFilmsG
                  GtBFilms @dankcushions
                  last edited by GtBFilms

                  @dankcushions

                  Wow, nicely discovered!

                  Thanks!

                  1 Reply Last reply Reply Quote 0
                  • W
                    windale
                    last edited by

                    There is also something similar in the game Track & Field and/or Hypersports ? One of the buttons is mapped to a 'Run Like Hell' cheat, which needs to be turned off/remaped for most of the events and entering your name

                    1 Reply Last reply Reply Quote 1
                    • caver01C
                      caver01 @dankcushions
                      last edited by caver01

                      @dankcushions said in LR-MAME2003 speeding up with B-button press:

                      to be clear, the 'ui cancel' button is not the 'exit mame' button. in fact, it is mapped to button 1 (retropad b) by default.

                      That makes sense. I made it more confusing, partly because while navigating the GUI menus in AdvanceMAME, you can back out of the menus with <ESC> which is also the EXIT key. I always forget it works differently in the lr-mame2003 GUI

                      My 4-player cocktail style cabinet built as a custom "roadcase"

                      1 Reply Last reply Reply Quote 0
                      • RumblinBuffaloR
                        RumblinBuffalo @dankcushions
                        last edited by

                        @dankcushions said in LR-MAME2003 speeding up with B-button press:

                        SOLVED:
                        https://github.com/libretro/mame2003-libretro/blob/7b55725e744ac9702db092f996e2fca2276146b2/src/drivers/pacman.c#L1016

                        there's a speedup hack in pacman + ms pacman that is bound to button1.

                        I'm not sure this is the same issue that I am indicating. I'll try a few more roms later - and provide examples - but I have seen this issue in far more than just Pacman/MsPacman. I know that Mat Mania, Dig Dug, Joust and others all had the same issue, and as soon as I removed "B" from the mapping for "UI back" the problem went away. And tapping the ESC key (still mapped to "UI back") still showed the issue.

                        I agree that it makes no sense that "UI back" should do anything in the game, but in my experience it seems to skip a frame or create a split-second speed-up.

                        1 Reply Last reply Reply Quote 0
                        • RumblinBuffaloR
                          RumblinBuffalo
                          last edited by

                          I tested a few more roms tonight.

                          Just to be sure, in the Mame2003 UI, I have mapped "UI back" to the ESC key and to the retropad button L1.

                          "Ui back" should have no effect on games, but with all games I tested, I could see/hear the speed up effect by pressing the L1 button on my gamepad. I tested Dig Dug, Frogger, Ghouls 'n Ghosts, and Kung Fu Master. It also happened with the ESC key, which should eliminate my gamepad as a cause.

                          I really don't believe I have any setting changed from the default in Mame2003 that would cause this, but the fix was easy enough (just make sure I un-map the "UI back" command away from any gamepad buttons that are used).

                          I will mention the effect is very subtle, so it's possible with many games in Mame2003, perhaps people just don't notice. It took me 2 months to realize it was with every rom.

                          As always - appreciate all the responses and efforts.

                          dankcushionsD 1 Reply Last reply Reply Quote 0
                          • dankcushionsD
                            dankcushions Global Moderator @RumblinBuffalo
                            last edited by dankcushions

                            @RumblinBuffalo said in LR-MAME2003 speeding up with B-button press:

                            I tested a few more roms tonight.

                            Just to be sure, in the Mame2003 UI, I have mapped "UI back" to the ESC key and to the retropad button L1.

                            "Ui back" should have no effect on games, but with all games I tested, I could see/hear the speed up effect by pressing the L1 button on my gamepad. I tested Dig Dug, Frogger, Ghouls 'n Ghosts, and Kung Fu Master. It also happened with the ESC key, which should eliminate my gamepad as a cause.

                            I really don't believe I have any setting changed from the default in Mame2003 that would cause this, but the fix was easy enough (just make sure I un-map the "UI back" command away from any gamepad buttons that are used).

                            I will mention the effect is very subtle, so it's possible with many games in Mame2003, perhaps people just don't notice. It took me 2 months to realize it was with every rom.

                            As always - appreciate all the responses and efforts.

                            assuming you mean "UI Cancel" rather than "UI back" (which i don't think exists?) i think i see where your issue MIGHT be: https://github.com/libretro/mame2003-libretro/blob/7b55725e744ac9702db092f996e2fca2276146b2/src/usrintrf.c#L3856

                            i need to confirm, but i'm sure your right. it does look like it's polling UI_CANCEL every frame for whatever reason.

                            caver01C 1 Reply Last reply Reply Quote 0
                            • caver01C
                              caver01 @dankcushions
                              last edited by

                              @dankcushions said in LR-MAME2003 speeding up with B-button press:

                              it does look like it's polling UI_CANCEL every frame for whatever reason.

                              It looks like that check is there to accept UI_CANCEL for when/if the OSD MENU is open. If it is, it triggers the menu to close, screen to refresh.

                              My 4-player cocktail style cabinet built as a custom "roadcase"

                              1 Reply Last reply Reply Quote 0
                              • RumblinBuffaloR
                                RumblinBuffalo
                                last edited by

                                @dankcushions You're right - I meant UI_CANCEL.

                                So if I understand correctly, the theory is that polling allows the UI-CANCEL command to be activated/triggered by the button press (even when the UI menu isn't present), thus causing the tiny frame jump that I kept seeing?

                                Thanks as always for your efforts.

                                1 Reply Last reply Reply Quote 0
                                • dankcushionsD
                                  dankcushions Global Moderator
                                  last edited by

                                  This is now fixed! please update mame2003 from source to get the fix straight away (takes about 40 minutes to install)

                                  Thanks very much to @RumblinBuffalo for the good spot and report!This was a bit of a clunky bug that would have gone missed without your attention :)

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

                                    @dankcushions thanks for the quick turnaround! I have updated though I haven't tried it yet. Have a great weekend :)

                                    1 Reply Last reply Reply Quote 1
                                    • RumblinBuffaloR
                                      RumblinBuffalo
                                      last edited by RumblinBuffalo

                                      @dankcushions Glad to be of assistance and thanks for the quick attention and update. I'll say it again - the efforts of the Retropie team and this community are really impressive! Many thanks!

                                      1 Reply Last reply Reply Quote 1
                                      • fritzF
                                        fritz
                                        last edited by

                                        Thanks for addressing the issue, much appreciated. But:

                                        The fix does appear to solve a few symptoms of the problem, but it does not solve the problem itself. There is still a check on the b-button, and it does slow down/skip frames on some occasions.

                                        Try for instance Commando or Flying Shark. Some proper fast button mashing on B will still slow down the game or result in slightly visible frameskips.

                                        1 Reply Last reply Reply Quote 0
                                        • Thorr69T
                                          Thorr69
                                          last edited by

                                          Ressurecting this topic because I noticed that after I upgraded to RPi 4.5 that the speed cheat in Ms pac-man stopped working altogether. I checked the inputs on the TAB menu and button B isn't listed there. There are no dipswitch settings for it, either. I am curious if this is a driver change or if it's something that got broken in the update?

                                          RPi 3b
                                          Official PSU
                                          Official RetroPie image
                                          Pandora's Box 5 controller

                                          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.