[Tutorial] OpenBOR - the complete guide
-
@greenhawk84 The same way you add or remove roms. Just delete that entry via ES, SSH or SAMBA from
home/pi/RetroPie/roms/ports
-
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 commandsudo ./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 intoOptions -> 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 usingsudo mkdir /opt/retropie/configs/all/runcommand-menu
and 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 modifiedruncommmand-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.
-
@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
- Now edit emulator config and add
%ROM%
- Exchange OpenBOR binary
- 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.
- Now edit emulator config and add
-
@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! -
@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
- The ES integrated way for showcase
- 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....
-
@cyperghost I did that but there is still an entry on my ES menu under ports for OpenBOR
-
@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
-
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.
-
@spud11 Well it's a pity that there is no compatible version list out there. But to keep it simple.
If you use a addon made up to 2014 it's likely to 99% working
If you use a addon made early 2015 your changes that it is working are good
Addons made later than (mid) 2015 are very likely to crash
Forget 2016+I used some mods from the list @BiZzAr721 and they worked all flawless. A good download location is the official side: www.chronocrash.com
I've got the modified commandline version of openbor working. Thanks for modifying it.
And it was @darknior who made the CLI inside the binary work. I just pushed support to runcommand script for a more natural emulator core behaviour.
-
I'm going to be trying to help the community here by building a spreadsheet of compatible games. I installed the MEGA app and downloaded an entire mirror of the version of games that should be 99% compatible.
http://www.chronocrash.com/forum/index.php?topic=2360.0
(and more specifically) EDIT 3
https://mega.nz/#F!28kzwQiA!l-Yh7HFUUKL5wiFsgQQJxQ
Hopefully that's not against the rules, considering it's Open Source, the forum is free to register and access, as is the link to download the games. Feel free to erase this post or edit as needed if I am in violation.
EDIT - My Spreadsheet (WIP)
https://docs.google.com/spreadsheets/d/e/2PACX-1vQxht0_rTt1_UvaHctJaMw5snzB_3Dv7GD0DUCzBHw5LI9VyY7Z4ZYu1-LlE_mZOIcuR-iXUZ8PI9i2/pubhtml
Will continue to update as I test. Need to work out my controller issues first. -
@hansolo77 Can you make your sheet ready for puplic access?
About the conventions.....
RED = Game crashes, no chance
Orange = Game is playable in some parts, but crashes sometimes (a good example is Streets of Rage Z 2 - It crashes in level selection but the "Keep Alive" part is working flawless)
Green = No crashes reported
Green with gamename [!] = Someone made a playthrough to the game and all went fine (= kingclass) -
@hansolo77 Good idea, thanks a lot
-
@cyperghost said in [Tutorial] OpenBOR - the complete guide:
@hansolo77 Can you make your sheet ready for puplic access?
About the conventions.....
RED = Game crashes, no chance
Orange = Game is playable in some parts, but crashes sometimes (a good example is Streets of Rage Z 2 - It crashes in level selection but the "Keep Alive" part is working flawless)
Green = No crashes reported
Green with gamename [!] = Someone made a playthrough to the game and all went fine (= kingclass)If I can figure out how, I have no problem sharing it. I like the idea of users being able to update it. I just fear having people go through and change stuff that's not legit. I've seen various N64 spreadsheets that people have tried to make with this same intent, just to have it get all messed up because of jerks or people not understanding what to do.
I will also restructure the spreadsheet to allow for notes to be added, so we can have details as to what's not 100%.
-
Here we go, have a look at this:
https://docs.google.com/spreadsheets/d/1XoRi1OXgx_fJCkfINmsvZ7SM7yXVOjykg_V1zxP-j7w/edit?usp=sharing -
@hansolo77 I've entered some entries - I think @BiZzAr721 can enter a bunch ;)
-
Awesome. Glad to hep out the community some. :)
-
Is there a way to have the screen change back to the default when returning from a game? What I mean is, every time I exit a game and go to play something else, the last screen showing from the OpenBOR system is still showing. Like it's stuck in a buffer or something. It's a problem, because it hides the
runcommand
menu, and blocks you from being able to access things like setting up an emulator, resolution, netplay, etc. There needs to be something to clear out that buffered screen.. -
@hansolo77 I have no problem with a screen showing. But I don't use ES to start these games. Does this also happen if you use the selection menu from here?
Place this in Ports section and restart ES to let show it up. -
I will test and come back. I don't really know of a good way to provide an example, unless I can set up a tripod and record a video of it happening. I remember having that same problem when I tried setting up the "loading images", to make the
runcommand
alert look better. It might be something specific to my setup too. I'm finding more and more that my configuration is far from the norm for some reason. -
I should be sleeping, but instead a learned something new and wanted to try to see if I could get this batch file complete! This is far from a perfect solution, but I created a Windows batch file that will copy your
master.bor.cfg
to[game name].bor.cfg
and put it in a saves folder. This is useful when you got a lot of games that you need to make a game config for and don't want to enter runcommand to copy master to game config every time.
(for example, the 181 games I have installed from when I was creating the list of working games=P
)I had a test directory on my PC where I could test without ruining the actual mod installs (which I definitely would have!) When I finally got it working exactly how I wanted, I hit another wall - new Samba security measures do not allow programs to be executed on a networked drive! I was expecting it to be just drop it in the folder and run it from a pc, but the only simple work around I found is to run it from a command prompt. I use
"file menu tools"
to select the openbor folder and select "command prompt from here" which will automatically open to the correct drive & directory. In the script I included how to do it otherwise. Here is the bat file. Below is the contents.::Due to new security policy of samba, files cannot be executed through a shared drive. Open a command prompt,and type: ::"wmic logicaldisk get name" to list drives (Usually Y:) Switch to the retropie drive eg. Y: (type dir to verify content) ::Type cd ports/openbor then run the batch file from there ::A Saves folder will be created with all the game configs. Move the Saves folder to /opt/retropie/configs/ports/openbor @echo on setlocal mkdir Saves FOR /f "tokens=*" %%i IN ('dir /b *.bor') DO ( copy "master.bor.cfg" "%%i.cfg" move "%%i.cfg" "Saves" ) pause
@cyperghost You've already outdone yourself! Maybe in the future we can have an Ultra-Mega Gamepad Setup with an option create a game config based off
master.bor.cfg
for all mods installed.
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.