• All, I am currently in the process of migrating domain registrations. During this time there may be some intermittent outages or slowdowns. Please contact staff if you have any questions.

Native iOS Port of OpenBOR: early, but working!

harakari

New member
Hi! I started porting OpenBOR to iOS as a native application. You could run the PSP version of OpenBOR using PPSSPP, but I found that there were compatibility issues.

Currently it only works with a physical controller (mFi controller, or XBox One or PS4 controller on iOS 13), and the default controls are still a work in progress.

I started a new github project for this just to get this working under Xcode, but I eventually do want to bring this into the mainline code, and support tvOS and macOS again as well:
https://github.com/yoshisuga/OpenBOR-iOS

OpenBOR uses SDL2, so it was pretty straightforward to port it to iOS. The only things I really needed to do were bringing in the dependencies as precompiled binaries so I didn't really have to compile any of the dependencies myself, and making some minor changes to support the iOS file paths and default controller mappings.

Link to IPA:
https://mega.nz/#!ORIylK4K!bxf6QKABXe7WGrU-hfnXW74pzmubQ1lW1wsCw-xPpOk

Thanks, let me know if there's any feedback/bugs you'd like to report.

Usage:
To install PAKs, you can AirDrop them from a Mac and save them to the OpenBOR/Paks directory using the Files app. You can also download the PAK files directly onto your iPhone/iPad and then save/move them in the Files app.

You can also copy over the PAK files using iTunes as well.
 
harakari great work I recently stummbled on your project on Github. I am testing now on my iphone 3gs.  I hope DC will not have any issues with this port being in the offical builds but unfortunately he probably will.

Report: It did not work any chance of lowering the required OS down from 8.0+ to maybe 4 or 5 ?

Edit: Your layout is wrong if you want to combine with the source code look how the android port was made. Your IOS folder should sit on top on the openbor engine.  You relativley reference "resources" and "source" folders from there.
 
msmalik681 said:
I hope DC will not have any issues with this port being in the offical builds but unfortunately he probably will.

Don't put words in my mouth msmalik681. My decisions are made case by case.

harakari you have my attention. I'll admit up front I hate most anything to do with Apple - more so now that I've had to take up iOS coding as part of my CS work. Swift is a great language, but IMO XCode and everything else about the Apple ecosystem sucks rocks. But that said, iOS would be a really nice addition for us.

For various reasons I'm not really interested in supporting Mac again, but I'm more than willing to consider iOS if it can be done without messing around with any engine logic or adding yet another 10GB of tool chains. Look into msmalik681 suggestions and iron out the kinks, and we'll go from there.

An up front warning though - if I agree to this and we get it working, but you disappear a few months later, I'll drop support immediately.

DC
 
Damon Caskey
I have to admit I am very nicley suprised this is great news. I also hate apple but adding ios support would open the engine to a lot more gamers.

harakari
I will try to get mac os working in virtualbox then I can try to directly support you with this.
 
For various reasons I'm not really interested in supporting Mac again
With Wine running it almost perfectly, it's not needed for sure. iOS is another thing and I agree with you - if the coder doesn't vanish few months later, that is okay to me too :)
 
Not planning on disappearing anytime soon :)

My github repo was just to get this working so the project layout in Xcode could use improving, etc. I'm planning on making a PR for the main openbor repo to get iOS support in.

One thing I need to deal with is that the project depends on having libraries for vorbis, webm and maybe a couple others. Rather than having to compile them from source for iOS, i'd like to maybe just bring in the precompiled libraries as a submodule or something like that.

Thanks for the initial support!
 
harakari  Finally i was able to test it on my jailbroken ipad on ios 13.3. It seems to work well but there are not any touchscreen buttons, so it’s unplayable at the moment  :(
Maybe it’s playable with a controller (need to test), but please i hope that you will add the touchscreen controls as well  :)

By the way, i noticed that you are the guy who made the MAME4iOS and others playable for ios 13 and i‘m really thankful for this! Great work man!
 
good to know it works cause tons of peopel were askong me how to make heman work on ipad
 
Is there any interest in a macOS port? I have the latest openbor code building and running on my MacBook Air under macOS 10.15 with no code changes required. Just a case of getting libsdl, libvorbis, libogg installed using MacPorts which wasn't particularly difficult. I'd be happy to supply a build if people want it.
 
pbbopenbor said:
Is there any interest in a macOS port? I have the latest openbor code building and running on my MacBook Air under macOS 10.15 with no code changes required. Just a case of getting libsdl, libvorbis, libogg installed using MacPorts which wasn't particularly difficult. I'd be happy to supply a build if people want it.
Yes please! :D
 
This might work on MacOS 10.15 or higher
https://drive.google.com/file/d/1hNUbxrFNzREZWtoZzXf2-6Xxztb_L1Ls/view?usp=sharing

Getting it to build an app bundle with all the libraries included was a bit awkward and those libraries don't like running on my 10.14 Mac. Theoretically if I go to the trouble of getting the source code for every library and building them all as dependencies of the openbor project I could get a more compatible build but that is quite a bit of work.
 
I found a format on linux called appimage that can pretty much run on any linux distro much like a exe.  Is there anything similar on mac ?

Also this post is for the mobile ios port please make a seperate post for mac.
 
Okay, after all this time there is finally a tool that lets you install any .ipa file app on ios without jailbreaking. So i was able to test the old ios .ipa from the first post and it's working very well without any bugs on the enging or the games( i only tested my games). The only thing is this old openbor.ipa does not have touch controlls but the good news is that my connected ps4 controller is instantly recognized and i can then set the buttons correctly from the options.

So for those who don't know the tool i used is called Trollstore and it basicaly takes advandage of an ios bug and it's leting you install any .ipa as a system app, so no app revoking and you can enjoy your app as long as you like.

Here is the ios version compatibility list:
-TrollStore works on iOS 14.0 - 15.4.1, on iOS 15.5 beta 1 - iOS 15.5 beta 4 and on iOS 15.6 beta 1 - iOS 15.6 beta 5.


-iOS 15.5 RC / full build is NOT supported.


-Anything higher than iOS 15.6 beta 5 (including iOS 15.6 RC / full build) is NOT supported.


-Anything lower than iOS 14.0 is NOT supported.

So if anyone here is in a compatible ios version for the Trollstore, can very easily download Trollstore from the the official github page by choosing one of the download links (found below the code stuff) direktly from your ios device. No PC needed or something and there are also instructions just below the dl links.

Also one more thing, the guy who made and posted the first native port .ipa has updated it some time later with touchcontrol support, but he did not release any new .ipa since then. So if anyone here with a mac and xcode can compile the newer version of the app that would be cool. Here is the github page.



And here is me on the second half of the video playing my DD game on my ipad with this first openbor.ipa:

 
Last edited:
It's a shame this seems like its been abandoned.
Yes, he seem to have quit working on this for years (understandably), but he is still active on his github working on MAME4iOS emulator all this time. I would have ask him there about this but i don't have a github account.
 
Back
Top Bottom