RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Arcade Buttons - How Many? Layout?

    Scheduled Pinned Locked Moved Ideas and Development
    controllerbuttonslayoutarcade
    38 Posts 15 Posters 122.3k 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.
    • R
      rolrod66
      last edited by

      Would some one send me their all/retorarch.cfg file that is setup for 2 players. So, I have a idea how to setup up mine. THANK YOU!

      1 Reply Last reply Reply Quote 0
      • AndersHPA
        AndersHP
        last edited by

        I'm in the process of a bartop build, and I'm adding side buttons as well, primarily to have these as pinball buttons.

        But what do you assign these for if not X,Y,A,B or L and R (my layout pr. player is 6 buttons)?

        And is there a cool functionality to have for side buttons in Emulation station, e.g. letter browsing or something like that?

        My "Bubble Bobble" Themed Bartop Arcade
        My Gameboy

        B 1 Reply Last reply Reply Quote 1
        • B
          backstander @AndersHP
          last edited by

          @AndersHP

          I'm adding side buttons as well, primarily to have these as pinball buttons.

          I like that idea!

          But what do you assign these for if not X,Y,A,B or L and R (my layout pr. player is 6 buttons)?

          You could use L2 and R2 (aka trigger buttons) or L3 and R3 (push in sticks buttons)

          And is there a cool functionality to have for side buttons in Emulation station, e.g. letter browsing or something like that?

          On my controller if you use either the L2 and R2 trigger buttons or the L and R shoulder buttons (can't remember which) you can move down or up a page. That might be a good use for those side buttons.

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

            @backstander @AndersHP I love the idea of setting up side buttons for pinball games! Is it possible to get those to have the same function as existing buttons (I.e. having two buttons assigned to r2, for instance)?

            I imagine that theoretically it would be, we'd just connect the two buttons to the same GPIO pin? But as I haven't done any such setup yet, I'd love to get your thoughts for when I do set up my bartop.

            Thanks!

            B caver01C 2 Replies Last reply Reply Quote 0
            • B
              backstander @pjft
              last edited by

              @pjft

              I imagine that theoretically it would be, we'd just connect the two buttons to the same GPIO pin?

              I've never tried it either but I think it would be possible. I thought I read once of someone doing something like that on their bartop.

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

                @pjft said in Arcade Buttons - How Many? Layout?:

                we'd just connect the two buttons to the same GPIO pin?

                Yes. This is pretty common in the long history of BYOAC (build your own arcade cabinet). You can simply "double wire" the buttons so they operate in parallel with another button you already have. Ideally, you have enough inputs to map them separately (IPAC, etc. with a bunch of input screw terminals), but with GPIO you may be tapped out. I have seen plenty of examples of sharing input wires; the best example of this is the old "Franken-panel" where someone will wire up an additional joystick using the same inputs as existing Player 1 stick. In other words, Player 1 might normally use an 8-way joystick, but the builder installs an additional 4-way with a restrictor plate to improve the experience with classic games like PacMan, Donkey Kong, etc.

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

                AndersHPA 1 Reply Last reply Reply Quote 2
                • AndersHPA
                  AndersHP @caver01
                  last edited by AndersHP

                  @caver01 Ah I can see the point in this.
                  I haven't thought of making the buttons do the same as the trigger buttons, maybe I should just do that.

                  I have spare slots on my iPac, so I think as a start I will try and see what L2 and R2 would do. I guess if in the end I want them to have the same trigger functions as buttons I already have, I could also hardcode the inputs in the config/all/retroarch.cfg to map to the same button as another.

                  My "Bubble Bobble" Themed Bartop Arcade
                  My Gameboy

                  1 Reply Last reply Reply Quote 0
                  • S
                    svendborg @dsstrainer
                    last edited by

                    @dsstrainer Hi there - I have built a control panel, wicth could resemple yours - just with the coinbuttons on the side, to funtion as flippers in a pin-ball game. I built it with the Ultimarc Minipac Keyboard Encoder - which is the same as the ipac.

                    ...anyways. Could you post me a working Retroarch.cfg with the layout you just pictured? That would be really helpfull :-)

                    1 Reply Last reply Reply Quote 0
                    • EnnioE
                      Ennio @dsstrainer
                      last edited by

                      @dsstrainer I love your layout and am trying to do something just like in a full size arcade cabinet. I plan on using the coin return buttons at the Coin credit buttons to keep that look. I plan on purchasing the zero delay boards but noticed you also are using the xarcade keyboard encoder. Do I need both to do this setup. And like the last guy posted would you be willing to share your config file?

                      Thanks,
                      E

                      1 Reply Last reply Reply Quote 0
                      • N
                        neb @dsstrainer
                        last edited by neb

                        @dsstrainer , I know that this is an old post but maybe still alive. I love the layout of your buttons and am new to Retro Pie and trying to decide how to setup buttons. I built out a quick panel to test the configuration with your layout. I'm having trouble configuring my buttons though when I run Emulation Station's controller setup. Since there is not a Select / Start combo do you have some hidden buttons for this? Do you then connect buttons such as your "Save State" button to the "select" and "right shoulder" buttons so that pressing it actually sends both keys to the controller?

                        This is my first build, any help would be great!
                        Thanks!
                        Ben

                        1 Reply Last reply Reply Quote 0
                        • D
                          dsstrainer
                          last edited by

                          @neb @Ennio

                          Sorry I hadn't seen these. Instead of Select/Start as exit, you can turn off hotkey support and just map a button to be exit. I did all of my mapping through the actual config file. I only used emulation station's mapping for the menu itself.. then I manually changed retroarch to a setup that worked for my encoder mapping. Finally mapped it through mame2003 for mame.

                          RetroPie v4.2 • RPi3 Model B • 5.1V 2.5A PSU • 8GB SanDisk class 10 microSD • 16GB External USB Thumb Drive
                          Roms, images and configs stored in USB and symlinked from normal microsd location
                          Xarcade Keyboard encoder + Zero Delay Joystick encoder

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

                            @dsstrainer I did exactly the same thing.

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

                            1 Reply Last reply Reply Quote 0
                            • D
                              dsstrainer
                              last edited by

                              Bringing this back up again in the latest versions of mame and retropie.
                              It looks like the powers that be claim that this is the correct end-all-be-all layout as far as what retroarch expects
                              https://www.reddit.com/r/RetroPie/comments/j5o21b/how_should_i_configure_a_6button_arcade_controller/
                              Y X L
                              B A R

                              I could live with this but what are people doing about Street fighter games?
                              Y X L
                              B A R
                              will default to
                              HP LK MK
                              LP MP HK
                              in mame2003/mame2003+

                              So are people going into each SF game and remapping the buttons just for those to be
                              LP MP HP
                              LK MK HK
                              ?

                              Some people claim that if you use YXL, BAR then SF should all be correct by default but that does not appear to be the case

                              RetroPie v4.2 • RPi3 Model B • 5.1V 2.5A PSU • 8GB SanDisk class 10 microSD • 16GB External USB Thumb Drive
                              Roms, images and configs stored in USB and symlinked from normal microsd location
                              Xarcade Keyboard encoder + Zero Delay Joystick encoder

                              D dankcushionsD 2 Replies Last reply Reply Quote 0
                              • D
                                dsstrainer @dsstrainer
                                last edited by

                                @dsstrainer So after digging into the mame2003 menu I was right... it defaults the layout as
                                BAY
                                XLR
                                At least it was for me. When I deleted the default.cfg and sf2.cfg files under mame2003+/cfg it still used those
                                So I manually set the global to be
                                YXL
                                BAR

                                and viola... now all games work fine. Not sure why it was setting itself the other way but looks like this will work at least for most games setting button 1 as the starting button and for SF2 games they are all mapped fine.

                                RetroPie v4.2 • RPi3 Model B • 5.1V 2.5A PSU • 8GB SanDisk class 10 microSD • 16GB External USB Thumb Drive
                                Roms, images and configs stored in USB and symlinked from normal microsd location
                                Xarcade Keyboard encoder + Zero Delay Joystick encoder

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

                                  @dsstrainer I think I did the same thing years ago, then saved a rom-specific mapping config for title that required it. It was handy to be able to go, OH, this is just the Street Fighter mapping? then drop in the appropriate cfg file for that rom.

                                  By the way, it seems like it has been ages since I was on the forum here, but I finally have a P4 to play with, so that’s going into the cabinet this weekend. V4.8 was nicely timed for me ;-) so next comes a bunch of file transfers and re-configurations to get my power and volume working, test my spinners etc. etc. etc. It’s a lot of work, but I need to read posts again and re-familiarlize myself with stuff like this!

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

                                  1 Reply Last reply Reply Quote 0
                                  • D
                                    dsstrainer
                                    last edited by dsstrainer

                                    So I'm again having second thoughts on this.
                                    YXL
                                    BAR
                                    is what they say you should use... but I have a setup where I can use either the joystick and buttons OR use a gamepad.

                                    So if I set up "BAR" as "ABC" in genesis using remap, that works great for the arcade buttons, but that means I have to use the B, A, and Right Shoulder on my gamepad. That's not so intuitive. And you can't have (nor want to have) per-controller remaps that I've seen.

                                    Definitely thinking the best is to have
                                    LXR
                                    YBA
                                    and remap them accordingly so that I would have YBA as the ABC buttons and on the gamepad it would be the bottom 3 buttons of the usual 4 (west, south, east) which is much more intuitive.

                                    -EDIT- But then I guess arcade would be screwed up as L would be button 1 so in SF2, L is light punch, X med, R Hard.. I guess there's no way to win them all.

                                    RetroPie v4.2 • RPi3 Model B • 5.1V 2.5A PSU • 8GB SanDisk class 10 microSD • 16GB External USB Thumb Drive
                                    Roms, images and configs stored in USB and symlinked from normal microsd location
                                    Xarcade Keyboard encoder + Zero Delay Joystick encoder

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

                                      @dsstrainer I think everyone is going to have to reach their own conclusions based on whatever standards are out there. Part of the issue here is just flexibility—the huge variety of emulated systems we have available combined with the potential variability in individual projects requires decisions to be made on a case by case basis.

                                      It seems clear to me that the standard, recommended mapping caters more toward hand-held controller use cases which is fine. For my project however, I align more with the legacy, native MAME application button mapping where the concept of AB or XY or LR have no meaning. In my world, it is all about button numbers Btn1, Btn2, Btn3, Btn4, Coin, START, etc. etc.

                                      So, how these map to the ABXLYR is the issue. At some point, I simply had to admit that I am building an Arcade system whose primary function is play coin-operated video games. I may be a dying breed of cabinet builders using keyboard interfaces, so my challenge is to properly map my control panel layout so that my keyboard interface (ipac) triggers the switches I expect it to for arcade game. This has never changed, but I know the mapping through ES and Retroarch maybe has.

                                      COIN START

                                      SW1 SW2 SW3
                                      SW4 SW5 SW6

                                      This is always my goal, regardless of how these have to flow through “A” and “B” mappings

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

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

                                        @dsstrainer said in Arcade Buttons - How Many? Layout?:

                                        I could live with this but what are people doing about Street fighter games?
                                        Y X L
                                        B A R
                                        will default to
                                        HP LK MK
                                        LP MP HK
                                        in mame2003/mame2003+

                                        i have no idea how it works now, but i for sure made mame2003 default to that when i was working on it years ago, as it's the sensible/standard layout...

                                        i would check the core options for a 'controller type' option. maybe there's a way of getting the old functionality back.

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

                                          @caver01 said in Arcade Buttons - How Many? Layout?:

                                          So, how these map to the ABXLYR is the issue.

                                          sure, but the issue was solved with street fighter 2 on the SNES in the early 90s :) that's where the XYL/BAR came from, and since libretro is geared around the retropad abstraction (effectively an iteration on a SNES controller), all libretro emulators must map back to that in a way that makes sense by default.

                                          the issue is with 8 button controllers (eg playstation, xbox). fighting games of that era have moved to towards a
                                          Y X R1
                                          B A R2
                                          layout, for whatever reason. back when i was masochistic enough to involve myself with MAME development, this was called the 'modern' controller layout and selectable in core options. i think SNES was called "classic".

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

                                            That’s right. Retropad abstraction. . . Thanks for the reminder about that terminology.

                                            None of this is actually a problem—it’s just a matter of development solving the needs of everyone AND configuration solving the needs of an individual project.

                                            It has been a while since I was deep into these details as I tend to come and go with other projects/hobbies getting in the way. Someone gave me a Pi4 which is the first in my collection, so naturally, I put it into the arcade build and setup a fresh image of RetroPie 4.8. Now, I have LOTS of work to get it going again, so I am re-learning the controller configs, transcribing some stuff from 2003 to 2003 plus etc., not to mention getting some of my GPIO inputs working again, dealing with different HDMI cords, USB-C, and on and on.

                                            There is actually what I will call a second generation of nostalgia in all of this nostalgia!

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

                                            1 Reply Last reply Reply Quote 2
                                            • 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.