OpenBOR finally working fine on RETROPIE with ES
-
@cyperghost
Very thanks!!!! -
Maybe this in interesting for you ....
You can get OpenBOR - Beats of Rage Engine Selection from here
I've written a bash script to improve the use of
runcommand.sh
so users are not forced to use a "Extra System" by editinges_systems.cfg
.I used @darknior naming convention. So you unpack the files and put each
data
folder in it's ownsubdirectory.bor
It's just a selection windows with "Yes ... I want to play title xy" or "No ... I want to go back to ES". The big advantage of this is you don't have to edit
es_systems.cfg
andruncommand.sh
is launched as usually. That makes it (imho) a bit more compatible to RetroPies conventions of "How to setup" custom systems. As plus I've added the possibility to automatic set key settings. This can be done by copying one ready configurated setting to bor basedirectory.Just for example:
- Setup one Addon (maybe Asterix) with your joypad
1.1 So connect a keyboard to the Pie and navigate to the menu
1.2 Select options and setup gamepad
1.3 Settings are stored to/opt/retropie/configs/ports/openbor/Saves/Asterix and Caesars Challange.bor.cfg
- Now copy
Asterix and Caesars Challange.bor.cfg
to/home/pi/retropie/roms/ports/openbor/master.bor.cfg
- Thats's it ... the script will check if there is a config file for every AddOn available and if
master.bor.cfg
is in correct location
3.1 If no config file for AddOn is availalbe the master-file is copied (and named) to right loctation
3.2 If a config file is available OpenBOR starts as usual
I'm really not the great coder, so I used the nice joy2key script to get cursor movement via joypads. Sorry it's just a quick rip in a script kiddie way.
Only one thing you have to alter manually and maybe @mediamogul or any other admin can do the job (as it won't hurt) and would be a better base for future development.
- Please edit openbor config by typing
nano /opt/retropie/configs/ports/openbor/emulators.cfg
- fill in following code from block this will enable calls via ROMs as we are used in all other emulator settings.
#openbor= "pushd /opt/retropie/ports/openbor; /opt/retropie/ports/openbor/OpenBOR; popd" openbor= "pushd /opt/retropie/ports/openbor; /opt/retropie/ports/openbor/OpenBOR %ROM%; popd" default = "openbor"
The bash frontend looks like this
1. Selection via Ports menu
2. Selection of OpenBOR AddOns
3.
runcommand.sh
launch screen with selected ROM
EDIT:
@BiZzAr721 @mitu I did read your post later but you see what happens if more and more people are getting into this topic. I think it's better to integrate this within runcommand. The bash GUI isn't needed you can stick to single bash files to run each episode. ...I'm currently working on a master-setup-solution for joypad config.DONE! - Setup one Addon (maybe Asterix) with your joypad
-
@cyperghost
O.o is great!!! Your method.I left it separate as a system apart from ports, to be able to run the games at two different resolutions, depending on where the game is played. If it is executed from ports or from the systems menu openbor.
Your method is really good !!!!
-
@kactius There is a bit more. I'm testing the possibilty to setup each game with a ready setted config ;)
Maybe I post this on GITHub, too. Because it's a bit stupid to setup each game episode for joypad input, isn't it?Done!We can now setup each new added OpenBOR game with a ready setted config file! Read more here about how to setup here or download the script via GITHUB
But we have to thank @darknior for making command lines available ;)
-
Well I tried to get it going.. I have the OpenBOR item in my Ports section, it opens to an OpenBOR menu with MK Outworld and "Original" selectable. I unpacked the file using the command in PuTTy. When I select MKOA it just crashes back to ES. Not sure what else to do.
-
-
@greenhawk84 Can you list filestructure?
It should be
/home/pi/RetroPie/roms/ports/openbor/mkoa.bor/
Inside directorymkoa.bor
is a directory nameddata
That's all.... of course you should use the binary from @darknior in first posting.Descripe further what you've done. Did you modify the
es_sysmtems.cfg
or did you use the shell script that I wrote` -
Using 2 seperate systems in es_systems allows for the <command> tags to be different. I was trying to find a way to get only . bor folders to use the custom command, while the rest of ports work with the default command, or vice versa. @cyperghost I'm really liking your take on it utilizing runcommand and especially a unified controller config. I think you are really creating a foundation based on the groundwork @darknior layed out. Thank you both. I think this will breath new life into openBOR on retropie. Maybe even get the interest of someone with the talent to compile the latest & greatest! The only thing I would love to see now is launching a game directly from ports. I would like to have all ports in the system menu, with only a openBOR folder in the list, showing artwork, intro video, and description, which would then take you to the list of .bor folders (eventually with per game artwork/video)
-
@bizzar721 said in OpenBOR finally working fine on RETROPIE with ES:
I was trying to find a way to get only . bor folders to use the custom command. while the rest of ports work with the default command, or vice versa .....
That should work if you edit the command call like this
<command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _PORT_ openbor %ROM%</command>
*edit: changed from ´_SYS_´ to ´_PORT_´
and edit the emulator call like I've posted here Just edit the file/opt/retropie/configs/ports/openbor/emulators.cfg
and add%ROM%
after OpenBor call.As last resort you can call every single BOR AddOn in one single bash file. The menu I wrote works in an equal way.
@cyperghost I'm really liking your take on it utilizing runcommand....
Thanks that was the main idea of this because
runcommand.sh means power
I hope the admins will change the default install as this won't hurt and makes OpenBOR strenghten for future.and especially a unified controller config.
only a sleight ;)
I was just fedup to fix added games again and again. So do it one time and you're happy and it's a automated setup.I think you are really creating a foundation based on the groundwork @darknior layed out. Thank you both. I think this will breath new life into openBOR on retropie. Maybe even get the interest of someone with the talent to compile the latest & greatest!
I hope so
The only thing I would love to see now is launching a game directly from ports. I would like to have all ports in the system menu, with only a openBOR folder in the list, showing artwork, intro video, and description, which would then take you to the list of .bor folders (eventually with per game artwork/video)
As I wrote earlier. That can be done using a special command tag. Or you can do this via single bash files (in ports). Both methods should allow scraping for single entries. I just took that menuroute because I don't wont my port section mixed up with hundreds of OpenBOR entries.
-
I'll probably come back to this when it is a bit sorted out. Ideally I would just like to have an entry in my Ports section for Mortal Kombat Outworld Assasins as its own game. Or even something in the main menu of Emulation Station as a stand alone game with logo and everything.
-
@greenhawk84 said in OpenBOR finally working fine on RETROPIE with ES:
I'll probably come back to this when it is a bit sorted out. Ideally I would just like to have an entry in my Ports section for Mortal Kombat Outworld Assasins as its own game. Or even something in the main menu of Emulation Station as a stand alone game with logo and everything.
Using darknior 's setup instructions AND the binary as mentioned in a post directed at you by cyperghost you can have openBOR as a separate ES menu item (system), with each game listed individually (artwork, meta and all if you have it).
What is being discussed is including individual games in the ports menu without the need for a seperate openBOR system menu.
-
@cyperghost WOAW thanks a lot, your script is really excellent, it's a very good idea, maybe it can be added to official OpenBOR port on Retropie. Easy to use for every one ;)
For my part i prefer modifying the system file to have a new system" OpenBOR" in my ES with informations, videos, covers ... for each games. Like it was a console ...
-
I finally got to a PC so I can try this out. I keep getting the error
"no config found for system openbor"
I setup master.bor.cfg. I created a .sh named the same as .bor folder (Bare Knuckle - Next Generation.sh) Here is the contents:#!/bin/bash "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _SYS_ openbor %ROM%
When I saw the error mention system openbor, I edited es-systems to add back openbor to see if that was what it was calling for
<system> <name>ports</name> <fullname>Ports</fullname> <path>/home/pi/RetroPie/roms/ports</path> <extension>.sh .SH .bor .BOR</extension> <command>bash %ROM%</command> <platform>pc</platform> <theme>ports</theme> </system> <system> <name>openbor</name> <fullname>OpenBOR</fullname> <path>/home/pi/RetroPie/roms/ports/openbor</path> <extension>.bor .BOR</extension> <command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _SYS_ openbor %ROM%</command> <platform>openbor</platform> <theme>ports</theme> </system>
My ports/openbor/emulators.cfg matches what cyperghost has written
#openbor= "pushd /opt/retropie/ports/openbor; /opt/retropie/ports/openbor/OpenBOR; popd" openbor= "pushd /opt/retropie/ports/openbor; /opt/retropie/ports/openbor/OpenBOR %ROM%; popd" default = "openbor"
I re-read the post a few times, tried multiple combinations (such as editing ports command to match), multiple ES restarts but I'm stuck!
-
@bizzar721 My first suggestions contained a small mistake.
Take a look at the calls, the command call is
_SYS_
while the script call is_PORT_
maybe writing a line like<command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _PORT_ openbor %ROM%</command>
will do the trick?In my script I do a call like
"$ROOTDIR/supplementary/runcommand/runcommand.sh" 0 _PORT_ "openbor" "$BOR_file"
Maybe you can try
"/opt/retropie/supplementary/runcommand/runcommand.sh 0 _PORT_ openbor %ROM%"
or
"/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ openbor "%ROM%"
@bizzar721 said in OpenBOR finally working fine on RETROPIE with ES:
I finally got to a PC so I can try this out. I keep getting the error
"no config found for system openbor"
I setup master.bor.cfg. I created a .sh named the same as .bor folder (Bare Knuckle - Next Generation.sh) Here is the contents:#!/bin/bash "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _SYS_ openbor %ROM%
Does my script work for you? Or a bash-file with call
"/opt/retropie/supplementary/runcommand/runcommand.sh 0 _PORT_ openbor /home/pi/RetroPie/roms/ports/openbor/The game you want to play.bor"
works? If you setup bash files you need exact path togame.bor
directory - just %ROM% makes no sense and take care of the_SYS_
it's_PORT_
-
@bizzar721 said in OpenBOR finally working fine on RETROPIE with ES:
What is being discussed is including individual games in the ports menu without the need for a seperate openBOR system menu.
THIS would be awesome. I would like to see MK Outworld Assassins as a standalone game that happens to use OpenBOR.
-
@cyperghost
This command brings me to the stock openBOR menu. It seems to be ignoring the %ROM%. I tried %$BOR_file% and had same results.#!/bin/bash "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ openbor "%ROM%"
Using your script works like a charm with the exception of the controller config not carrying over, but we'll save that for another time!
So now, I apologize, but I do not really understand bash, except that for dosbox it does not let you call a universal config file, but a script will.
That said, using
"/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ openbor "/home/pi/RetroPie/roms/ports/openbor/Bare Knuckle - Next Generation.bor"
DOES load right into the game - run command loading screen & all.
To get the script to run without having to specify the directory, the only thing to do I assume is to edit the emulators.cfg to specify what the %ROM% variable is.
Reason being is that I would like to make a script for all the openBOR games I listed earlier before I remove any off my PI to make available to others here. I don't know enough about scripting to even create a script to make .sh's with the name of the .bor folder let alone with an exact path to each file. (I have been reading up on how to make a script that will make files named as the .bor folders, then planned on using notepad ++ to edit them all at once......plan B is doing each one manually)
-
@BiZzAr721 Don't worry you are close to get this working. You will understand how bash files and the calls do their job. Glad the script works.... You are the first who is reporting.
This command brings me to the stock openBOR menu. It seems to be ignoring the %ROM%. I tried %$BOR_file% and had same results.
#!/bin/bash "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ openbor "%ROM%"
This makes no sense as bash file %ROM% is a unknown variable so it's loading just the binary. You should use that line for
es_systems.cfg
(without #!-shebang)
"$BOR_file" is a variable out of my script ... also unknowen call for other script files.Using your script works like a charm with the exception of the controller config not carrying over, but we'll save that for another time!
Glad to hear the script is working for you. It is intended to give users quick access and little guidance.
The controller config is found inside
/opt/retropie/configs/ports/openbor/Saves
there you will findgamenname.bor.cfg
files. If you configurated one game with correct gamepad settings then just copy that config file to/home/pi/retropie/roms/ports/openbor/master.bor.cfg
this config file will be used for other games. So you need one good/correct done configuration file.
That saves me alot of time (and keyboard plugins and plugouts)"/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ openbor "/home/pi/RetroPie/roms/ports/openbor/Bare Knuckle - Next Generation.bor"
DOES load right into the game - run command loading screen & all.
To get the script to run without having to specify the directory, the only thing to do I assume is to edit the emulators.cfg to specify what the %ROM% variable is.
Yes that's the correct call for single bash files. Those calls can be setup manually with single files. So you can name this file
Bare Knuckle - Next Generation.sh
and it will be showen inside ES if it is saved in ports.The call out of Emulationstation after editing
es_systems.cfg
is<command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _PORT_ openbor %ROM%</command>
There is also a %ROM_RAW% parameter but don't know what it does. Last resort is to copy each to copy the PORTS section from
es_system.cfg
. Create bashfiless with each single game and you should be done.Don't forget to alter
emulators.cfg
withnano /opt/retropie/configs/ports/openbor/emulators.cfg
like I've done here@darknior said in OpenBOR finally working fine on RETROPIE with ES:
@cyperghost WOAW thanks a lot, your script is really excellent, it's a very good idea, maybe it can be added to official OpenBOR port on Retropie. Easy to use for every one ;)
For my part i prefer modifying the system file to have a new system" OpenBOR" in my ES with informations, videos, covers ... for each games. Like it was a console ...
Maybe you can edit your first post if you find the solution usefull?
I think the method to call through runcommand is the better method because it will create logfiles and helps people who are using backgroundmusic hacks and customized loading screens (you can use
runcommand-onstart.sh
for ex.)Therefore we need two modifications
- command call in
es_systems.cfg
like i've posted here<command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _PORT_ openbor %ROM%</command>
- The change in
emulator.cfg
I've posted here - The rest can be left as you descriped ;) With system openbor and the same naming convention with
gamename.bor
I would be glad if you can do this ;)
Bonne chance à l'équipe de France de football;) - command call in
-
@cyperghost said in OpenBOR finally working fine on RETROPIE with ES:
command call in es_systems.cfg like i've posted here <command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 PORT openbor %ROM%</command>
The change in emulator.cfg I've posted here
The rest can be left as you descriped ;) With system openbor and the same naming convention with gamename.borThanks a lot, i try it and it works very well now and faster than before :D
I have update the first post.An other question please, your script is really excellent to launch .BOR games in a list with GITHUBt
Do you think we can mix it with my (and actual) system ?
Like when we launch an emulator, having a loading screen with write "PRESS A TO ..." and when we press it having your menu.
Like that if we only read XML on ES we can launch other BOR games with your menu ;)
It's just an idea, but i think it can be cool, and for users that launch BOR from PORT they will have it too.
ThanksEDIT: I have also add your Windows UNBOR trick ;)
It's a good idée, and i share the software. -
I see what I did wrong with the controller config file - I did
CONFIGS/ports/openbor/master.bor.cfg
(I had it right the very first time I set it up using an unconfiguredmaster.bor.cfg
- I think dumb mistakes like this happen way too much in this scene when your fighting to stay awake and finish "one more thing")So I did a lot of research on scripts and made a script to make a script! It's a hackish, Frankensteined way of doing it BUT IT WORKS!
I did this on a windows 7 PC
The script will create .sh files based on a text based file list.
I used lopesoft file menu tools which the free version will do what is needed
I selected all my .bor folders, then right clicked, and chose FileMenu Tools --> Copy Name
Then create BOR.txt and pasted the contents (you'll have a list of folder names including .bor)
Next create a text file, then paste the codebox below and save it as .bat (named whatever you like)
##Create .sh files from .txt list of files/folders## @echo on setlocal for /f "tokens=*" %%a in (BOR.txt) do ( echo #!/bin/bash>"%%a.sh" echo "/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ openbor "/home/pi/RetroPie/roms/ports/openbor/%%a">>"%%a.sh") pause
Now all you have to do is execute the batch file just created and it will create the .sh files.
The last thing I did was select all the newly created scripts, right clicked and chose FileMenu Tools ---> Advanced Renamer. Click the advanced options tab, then check REPLACE. Select FIND STRING, & enter .bor. You should now see on the right side the .bor is removed. Click rename, and your done.
EDIT: The batch file is adding a blank Line 3 in the script - you must delete that blank 3rd line or you will get an error! I Could not figure out how to make the batch file not create that 3rd line!
NOTE: I moved the batch file and BOR.txt to a folder on my pc to run. I was not able to run it within a shared retropie folder. As long as the batch file and BOR.txt are in the same folder everything should run fine.
GreenHawk - if it's just 1 game your after, and you don't want to go through all the trouble I can help you create it easily.
Cyperghost, thank you for your patience and taking the time to help. I'm glad I got this far and learning a lot along the way. Really feeling like a lot's getting accomplished.
For those here in the US Have a safe & happy 4th of July!
-
@darknior said in OpenBOR finally working fine on RETROPIE with ES:
Thanks a lot, i try it and it works very well now and faster than before :D
I have update the first post.
An other question please, your script is really excellent to launch .BOR games in a list with GITHUBt
Do you think we can mix it with my (and actual) system ?You're welcome!
Yes that would be possible with some detours. It is not possible to mix the launching commands of .bor-files with .sh-files
BOR is called through OpenBOR command setted in emulator.cfg
SH should be called by a bash-callLike when we launch an emulator, having a loading screen with write "PRESS A TO ..." and when we press it having your menu.
Like that if we only read XML on ES we can launch other BOR games with your menu ;)We have now access to the runcommand user menu. You see the grey launching box screen and press a button. Then you can access User Menu. From there you could call the script, too.
Or may I misunderstood you? What do you mean with XML on ES? Do you want a launcher for series? Like Mortal-Kombat series, Beat of Rage series? So the script just shows 5 games out of all?EDIT: I have also add your Windows UNBOR trick ;)
It's a good idée, and i share the software.Yes I didn't get the unix version running, because I'm working on FAT32 filesystem with external USB device. Moreover full grown PCs are much faster than our little credit-card-computer ;)
Imho the possibilities of lauching OpenBOR with 2 systems is enough
- Use the own system with nice artwork from ES directly (@darknior method)
- Use a menu like bash script with automated controller config from PORTS (@cyperghost method)
- Use bash files to call single games out from PORTS if you don't like menu access at all :)
As the script is on github feel free to change this to your needs.
Annother annotation: Could you also add the link from @BiZzAr721's working game lists. This is really helpfull and was the initial post for me to give OpenBOR a chance.
@BiZzAr721 4th of July party ;) In middle europa it will be a wam sunny day. 30 degrees and more with the tendency for thunderstorms in the late evening ;)
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.