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

    [Tutorial] OpenBOR - the complete guide

    Scheduled Pinned Locked Moved Ideas and Development
    openborcyperghost
    112 Posts 22 Posters 70.5k 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.
    • hiulitH
      hiulit @cyperghost
      last edited by

      @cyperghost Great work! I'll try it out!

      My little contributions to the RetroPie project:

      • Shell-Script-Boilerplate
      • Fun-Facts-Splashscreens
      • Limit-Last-Played-Games
      cyperghostC 1 Reply Last reply Reply Quote 1
      • cyperghostC
        cyperghost @hiulit
        last edited by

        @hiulit said in [Tutorial] OpenBOR - the complete guide:

        @cyperghost Great work! I'll try it out!

        Hello my friend, nice to see you again. Yes give this a try ... OpenBOR gives good gaming experience. About the unpacking of the .pak files - I just tried on Windows ... never on Unix. So I would appreciate a nice feedback about the way you setted the game up.

        Maybe @darknior and @BiZzAr721 can upload their joypad configs so I can integrate into this. Biggest respects fly out to darknior - he made the CLI work.

        BiZzAr721B darkniorD 2 Replies Last reply Reply Quote 2
        • BiZzAr721B
          BiZzAr721 @cyperghost
          last edited by BiZzAr721

          @cyperghost said in [Tutorial] OpenBOR - the complete guide:

          Maybe @darknior and @BiZzAr721 can upload their joypad configs so I can integrate into this. Biggest respects fly out to darknior - he made the CLI work.

          Hopefully by tonight I can get to my pc and create some configs.

          Do you happen to know, for a windows batch file, the the variable that would mean "folder name" for folders in the directory the batch was executed from? I want do something like
          copy master.bor.cfg to "folder name.cfg (maybe %%f, but haven't tried it yet)

          cyperghostC 1 Reply Last reply Reply Quote 0
          • cyperghostC
            cyperghost @BiZzAr721
            last edited by cyperghost

            @bizzar721 afaik echo %~dp0 puts out path where batch file is located. I rarely used BATCH... it's so really awfull, nearly no flow control! In your case I would use a higher language. Python for ex.... or script languages like autoit. BASIC is also very "powerfull" in that case.

            EDIT: Updated controller config script ... more robust flow control and file detection

            1 Reply Last reply Reply Quote 0
            • darkniorD
              darknior @cyperghost
              last edited by

              @cyperghost said in [Tutorial] OpenBOR - the complete guide:

              Maybe @darknior and @BiZzAr721 can upload their joypad configs

              Hi, yes i will make them for all my joypad and send them to you in some days ;)

              Life is game, just play it !

              1 Reply Last reply Reply Quote 1
              • cyperghostC
                cyperghost
                last edited by

                @son_link Do you think you can take action and repair the OpenBOR C-code? All builds are unable to save gamestates and highscore data. It's hard to finish games or to unlock extra games by level progress :(

                1 Reply Last reply Reply Quote 0
                • BiZzAr721B
                  BiZzAr721
                  last edited by

                  Here are 3 controller configs

                  PS3
                  Xbox 360
                  SNES Clone (tata)

                  I mapped them according to how I have my controller mapped (D-pad), and Player 2 using what is normally Player 1 keyboard default keys.

                  SNES Layout

                  Let me know what layout is prefered and I will create new configs to keep them all to the same standard.

                  cyperghostC 1 Reply Last reply Reply Quote 1
                  • cyperghostC
                    cyperghost @BiZzAr721
                    last edited by cyperghost

                    @bizzar721 I'm using a different layout - more like the Genesis "Bare Knuckle" or "Streets of Rage"

                    Y = Special
                    B = Attack 1
                    A = Jump
                    X = Attack 2
                    L = Attack 3
                    R = Attack 4
                    DPAD=DPAD ;)

                    But I will upload your configuartion. I think the main purpose should be that dedicated controllers can be used in a quick way. Thanks for your contribution ;) You can also upload them to your github account. So I can just link to them, that makes updates a bit easier as long the filenames do not change ;)

                    Edit: I tried all your controller configs with my Snakebyte PS3 clone... Only the PS3 worked but the moving axis are swapped. So I think the contribution of ready configurated cfg files is essential for easy setup. Because every controller gots different mappings.
                    If someone can contribute the 8-bit-do's then the community will appreciate this ;)

                    Edit 2:
                    Did you map the DPAD to analog input on your PS3 and XBOX? Because only the PS3 analog input (left stick) worked on my Snakebyte (it's a kind of XBOX360 clone)? I would always prefer DPAD instead of analog input but I can't verify the settings (lack of controllers)
                    Again thank you very much

                    BiZzAr721B 1 Reply Last reply Reply Quote 0
                    • BiZzAr721B
                      BiZzAr721 @cyperghost
                      last edited by BiZzAr721

                      @cyperghost said in [Tutorial] OpenBOR - the complete guide:

                      Thanks for your contribution ;)

                      No, thank you

                      @cyperghost said in [Tutorial] OpenBOR - the complete guide:

                      If someone can contribute the 8-bit-do's then the community will appreciate this ;)
                      ::cough:: @darknior ::cough::

                      I use d-pad for all - I like it much better to double tap for run

                      I'll give your controller setup a try and see how I like it

                      cyperghostC 1 Reply Last reply Reply Quote 1
                      • cyperghostC
                        cyperghost @BiZzAr721
                        last edited by

                        @bizzar721 said in [Tutorial] OpenBOR - the complete guide:

                        I use d-pad for all - I like it much better to double tap for run

                        Perfect!
                        I tested also a cheap SNES clone pad (brand: 2tech) - worked flawless with your SNES settings.

                        1 Reply Last reply Reply Quote 0
                        • P
                          ppuspfc
                          last edited by

                          What a nice idea, congrats on everyone

                          1 Reply Last reply Reply Quote 0
                          • GreenHawk84G
                            GreenHawk84
                            last edited by

                            Can you tell me how to fully uninstall OpenBOR? I went into manage packages and uninstalled but I still have an entry in Ports.

                            cyperghostC 1 Reply Last reply Reply Quote 0
                            • cyperghostC
                              cyperghost @GreenHawk84
                              last edited by cyperghost

                              @greenhawk84 The same way you add or remove roms. Just delete that entry via ES, SSH or SAMBA fromhome/pi/RetroPie/roms/ports

                              GreenHawk84G 1 Reply Last reply Reply Quote 0
                              • hansolo77H
                                hansolo77
                                last edited by hansolo77

                                I'm lost. Trying to follow the OP instructions... Getting hung up on the very first part. Executing the command wget http://raw.githubusercontent.com/crcerror/RetroPie-OpenBOR-scripts/master/openbor.sh -O /home/pi/RetroPie-Setup/scriptmodules/ports/openbor.sh does something, but not sure what to do next. You say to go through "Select Configuration", etc.. but there is nothing here. After executing the first command, it just sits at the terminal. I'm a little better at this than I used to be, but I'm being ignorant on purpose to help others...

                                The command appears to basically download a modified openbor.sh file and replace it with the one located in the RetroPie-Setup script path. At this point, am I supposed to run the command sudo ./RetroPie-Setup/retropie_setup.sh?


                                EDIT
                                I tested my theory and it looks like the modification worked. However, I got a lot of warnings during the compiling. Can somebody take a look at my log and see if it's something bad? Do I need to do something?
                                https://pastebin.com/wKi4jc7p


                                EDIT 2
                                I went ahead and tried to figure it out on my own. I've got 2 games (modules) downloaded. I unpacked them and have them located in the ~/RetroPie/roms/ports/openbor/**gamename**.bor path. With only 1 game, running the Port from the EmulationStation "ports" menu just launches the game. With 0 or 2 (or more) games, launching the Port will provide an "ingame" launching window. I can make both games I've downloaded RUN, but I can't get the control to work. I can navigate with the keyboard, and can go into Options -> Control Options... -> Setup Player 1..., but I can't get it to change any of the options to my controller. I made sure "GamePads Enabled" is set. Any ideas? I'm using a wireless Xbox360 controller and official dongle. Also.. I've not installed the "Part 3: JoyPad Setup" script yet.. should I do that? It seems like I should be able to create a config without it, just for testing purposes. I'll experiment further...


                                EDIT 3
                                From SSH, running the command:
                                wget "http://raw.githubusercontent.com/crcerror/RetroPie-OpenBOR-scripts/master/OpenBOR - Ultimate GamePad Setup.sh" -O "/opt/retropie/configs/all/runcommand-menu/OpenBOR - Ultimate GamePad Setup.sh"
                                Results in this error:

                                /opt/retropie/configs/all/runcommand-menu/OpenBOR - Ultimate GamePad Setup.sh: No such file or directory
                                

                                I checked, and there is not directory called runcommand-menu on my system.

                                Should this be downloaded to /opt/retropie/supplementary/runcommand by chance?


                                EDIT 4
                                I created the folder using sudo mkdir /opt/retropie/configs/all/runcommand-menuand then ran the wget and got the script. The script won't execute unless you're running an OpenBOR "ROM". I tried to get the script to launch from the Ports menu but it wouldn't work. I have the script running now from a ROM listing, and I chose to download the XBox360 controller config. I guess it was successful in that it said it was. But I still can't get it to work inside a game. What am I doing wrong?


                                EDIT 5
                                I finally figured out what my problem was. I had to take my console apart to get at the plugs. Apparently I'm still having the same issue I've always been having. Assignment of what controls are being used. For some damned reason, the system boots up with my Raphnet NES controllers as the primary input, and not my Xbox controller. I've gotten around this because EmulationStation works with ALL controllers, not caring who P1, P2, etc is. RetroArch does the same thing, but assumes P1 is the person who enters the game. I dunno why, it just works that way. The way I've built my system, I wanted to have the option to use original controllers (NES for NES games, Sega for Sega, Atari for Atari). Xbox360 is my primary "always use" controller. But if I want to play with originals, I have a modified runcommmand-onstart that checks if the system being loaded matches a pre-determined system, then executes the loading of the XBOXDRV driver to map controls for them. It works great. But whenever I go and try to add something new, OpenBOR in this case, the controls get all f*ed up. I couldn't figure out why the controller wouldn't work, even after going through all the trouble to figure out how to get the script to run to download a premade config. So I unplugged everything from the Pi except the Xbox dongle, and it worked. I then plugged in the Sega (MayFlash) adapter, and it still worked. But once I plugged in the NES (Raphnet) adapter, everything stopped working. So I'm going to have to go back and figure out what's causing this. In the mean time, it looks like I got it figured out.

                                ** I think the OP of this thread should be made a little more clear. It's very easy to get lost in all the stuff needing to happen.

                                Who's Scruffy Looking?

                                cyperghostC 1 Reply Last reply Reply Quote 1
                                • cyperghostC
                                  cyperghost @hansolo77
                                  last edited by cyperghost

                                  @hansolo77 Hey man... everything all right? You've done a real stresstest to this guide and revealed some issues, too.

                                  EDIT 0 und 1

                                  The command appears to basically download a modified openbor.sh file and replace it with the one located in the RetroPie-Setup script path. At this point, am I supposed to run the command sudo ./RetroPie-Setup/retropie_setup.sh?

                                  Also doable but I ment the graphical approach, go to ES select CONFIGURATION (the RetroJoy graphic) and then select RetroPie-Setup ;)

                                  But I add your SSH approach, too

                                  Yes you are right the first wget just overwrites the scriptmodule to add the tweaks. I wanted an automated process.... Because it's much better than

                                  1. Now edit emulator config and add %ROM%
                                  2. Exchange OpenBOR binary
                                  3. Make the binary executable ;)

                                  Yes ... the compiling errors are okay. It's sadly an old unsupported port (and the only one that runs on ARM Pie). We need the help of advanced C coders here.

                                  Edit 2 and 3

                                  Also.. I've not installed the "Part 3: JoyPad Setup" script yet.. should I do that? It seems like I should be able to create a config without it, just for testing purposes. I'll experiment further...

                                  Not needed but it will make things easier!

                                  Should this be downloaded to /opt/retropie/supplementary/runcommand by chance?

                                  No it's /opt/retropie/configs/all/runcommand-menu, the runcommand-menu was introduces for more than one year. So I'm kind of shocked that in your installation the directory isn't available. Will change this in instructions...

                                  Edit 4

                                  I created the folder using sudo mkdir /opt/retropie/configs/all/runcommand-menuand then ran the wget and got the script.

                                  It is intended to run only out of runcommand. So you don't have provided any argument to the script the script denies to work with the message "Only openbor supported". It's a fail safe feature.

                                  Edit 5

                                  I finally figured out what my problem was. I had to take my console apart to get at the plugs. Apparently I'm still having the same issue I've always been having. Assignment of what controls are being used. For some damned reason, the system boots up with my Raphnet NES controllers as the primary input, and not my Xbox controller.

                                  Your setup seems very complex. So it's a good test. We assumed the main controller is always assigned to Player 1.

                                  hansolo77H 1 Reply Last reply Reply Quote 0
                                  • hansolo77H
                                    hansolo77 @cyperghost
                                    last edited by hansolo77

                                    @cyperghost - Thanks. :) I've been sick and when it comes to things like this I get very critical and upset when things don't work as they should. I'm super happy with myself though that I've come as far as I have in figuring out most of this stuff on my own. I remember just starting out, not even knowing what SSH is, now here I am making my own directories, using sudo, creating my own systems, etc. That reminds me, I think @darknior needs to update his walkthrough to include some <system> and </system> tags in that part. I'm building this as a System, rather than using your launching script to pick a game. I wanted to be able to have screenshots/videos for each game. But overall, this is the stuff I love to do, tamper with things to figure out how to make them work. I just wish I could code or write scripts. Then I'd REALLY be helping the community!

                                    Who's Scruffy Looking?

                                    cyperghostC 1 Reply Last reply Reply Quote 1
                                    • cyperghostC
                                      cyperghost @hansolo77
                                      last edited by cyperghost

                                      @hansolo77 No problem pal. Hope you are well again ;)
                                      I prefer the launching script because this offers automate setup of master controllers so far. But I recommend the JoyPad script ... Maybe you can help us to generate an ultimate controller setup.

                                      I never come to action to install openBOR because I don't like to tinker with controller configs. But as this was done and I saw it can be launched by runcommand, it was much easy to implent working scripts ;)

                                      BTW: I included also a JoyPad setup link in the launching menu script. It will now warn you if no configuration was found. I believe to get the best of OpenBOR use

                                      1. The ES integrated way for showcase
                                      2. The script part for quick setup

                                      I just wish I could code or write scripts. Then I'd REALLY be helping the community!

                                      There is a thread Shell Scripting Topic - there you can ask questions about bash scripts....

                                      1 Reply Last reply Reply Quote 0
                                      • GreenHawk84G
                                        GreenHawk84 @cyperghost
                                        last edited by

                                        @cyperghost I did that but there is still an entry on my ES menu under ports for OpenBOR

                                        cyperghostC 1 Reply Last reply Reply Quote 0
                                        • cyperghostC
                                          cyperghost @GreenHawk84
                                          last edited by cyperghost

                                          @greenhawk84 if after a reboot the file is still available you did not delete it. You can download BASHROMManager from my repo - this can also delete files

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

                                            I've got the modified commandline version of openbor working. Thanks for modifying it.

                                            Could I ask please what version of openbor this is? Is it effectively 3400 (or at least it plays mods up to version 3400)?

                                            With the list of mods that @BiZzAr721 has said work with openbor, what version of the mods are each of these? Thanks.

                                            RetroPie v4.4.1 • RPi3 Model B • 5.1V 2.5A PSU • 32GB SanDisk Extreme microSD • 2TB Toshiba Canvio Basics Portable USB 3.0 hard drive • 4 x DragonRise USB Arcade joysticks • 2 x TurboTwist spinners • 1 x USB trackball • 1 x PS4 wireless • 1 x 8BitDo Zero

                                            cyperghostC 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.