We all carry a powerful computer in our pockets, and it’s called iphone. It’s also the most secure smartphone on the market, thanks to the security measures that Apple puts in place on the phone, and the restrictions when install apps which are not in your popular app store. That could change in a few years, if Apple finally allows apps to be installed outside of its App Store, although there are no firm plans yet.
These restrictions, in addition to code review processes for malicious code, also restrict the emulator installation which allows the user to run software for free from the App Store – but that doesn’t mean we can’t install it ourselves without going through that.
Before, to achieve this, you had to do jailbreak and there are even ways to install using third-party certificates that we cannot trust. However, there is a way easy to install these emulators without doing anything “weird” on our iPhone and even using nyour Apple ID for added security. And you don’t even have to be a developer or have dabbled in Xcode before.
How to Install MAME Emulator on iPhone
Before you begin, remove your fear of tinker with Xcode – Apple’s development environment for its apps – even if you’ve used it before. This guide may seem very long but it is because I have perfectly explained and detailed so that – precisely – no one is lost. It’s very simple, you don’t need a paid developer account: just your iPhone and your Mac.
Installation with Xcode is extremely simple: the guide may seem long, but that’s because you have explained each step in detail
A few months ago I explained to you how to install the MAME arcade emulator on Apple TV, we even ventured to compile it. This time it will not be necessary not even that, since we will directly download the already compiled version ready to generate as an Xcode project.
I must say that in my tests, the version of MAME for iOS has evolved in an incredible way: the interface is simple, easy to use, very complete – and the quality of the emulation is impressive. Do not hesitate to try it on your iPhone to convince yourself. Let’s go:
1.- Install Xcode. Do this first as the download is quick, but decompressing and installing the environment may take time depending on your Mac, just go to the Xcode section of the Mac App Store, and click To install.
2.- Create or use a developer account: The first thing you need is a developer account. It doesn’t have to be paid. If we don’t have one, we can create one completely free of charge (it takes 1 minute) from this link: https://developer.apple.com/account/
2.- Download the MAME4iOS master repository: go to the repository website and copy the address that I show in the following image:
3.- Open the project in Xcode: Once you’ve installed Xcode, open it. Maybe other tools need to be installed, the environment itself will tell you that and it’s completely automatic. Once the welcome screen is displayed, press “Clone an existing project” and enter the address we copied before:
4.- Choose the “master” branch from the drop-down menu and click “Clone”:
5.- You have just downloaded all source code of Mame for iOS. Open Finder and navigate to where you downloaded it to open the .xcodeproj project file. By default, you will have it in: /Documents/MAME4iOS/Xcode/MAME4iOS/MAME4iOS.xcodeproj.
If you can’t find it, search for it with Spotlight. Double click on this file to open it with Xcode.
6.- Give it time, it has to process all the files the first time it opens…
7.- Before generating the executable, we will add two essential things: our Apple ID to sign the application and bind our iPhone/iPad to install it. For the first part, open Xcode / Settings
8.- Go to the Accounts tab, click on the “+” logo and add the developer’s Apple ID that you created before (or already had). With this we will sign our application to be able to install it safely on our iPhone.
9.- Connect your iPhone to your Mac and open Xcode / Window / Devices and Simulators. You will see your phone connected, but not yet paired. To do this, you must unlock the iPhone (or the iPad, it’s done exactly the same) with your code and “trust” the Mac to which you have connected it. It will be necessary to activate the development mode of the iPhone/iPad in Preferences/Privacy and security/Developer mode/ (Yes).
ten.- Once the iPhone/iPad is connected and paired, you don’t have to do anything else. Of course the iPad version take full advantage of the large screen of the iPad (try it!). The screen appearance on an iPhone will look like this:
11.- We close the “Devices and Simulators” window and in Xcode click first where the arrow points and then in the upper central part to select the “Release” version, which is the one that we are going to install on our iPhone, like the picture shows:
12.- There we will install the Release version and the iPhone that we paired before will have been selected. Otherwise, select it by hand in the path from the previous step. Once done, you will see this error in the “Signing & Capabilities” tab:
13.- Indeed, we need to tell you with which account to sign the application. Select the development account we installed before from the drop-down list.
14.- It will keep giving you an error because you need to change the app’s “Bundle Identifier”. You can change the middle part that says “example”, to whatever you want. I put “pedroaznar”, but here you can put the word you like the most (is indifferent). Hit enter and the errors will disappear and everything will be ready to install.
15.- We go up to the left, and we give the huge “PLAY” button so that Xcode generates the installation. Remember to keep your iPhone wired to your Mac at all times.
16.- The first installation takes time, don’t worry and go with confidence. After a while a “Build Succeeded” will appear and if you look on your iPhone… you will find the cute MAME icon! Now you can disconnect iPhone from Mac.
17.- We will now send the ROMs (the games) to the emulator. MAME has several ways to do this, including creating our own web server that we can open from the Mac, but we’re going to make it even easier: using AirDrop. Let’s go, for example, to the legal MAME ROM download page and download the ones you want from the Mac, now you can send them directly via AirPlay to the iPhone. There, you will be presented with a window asking what you want to open it with: select “MAME4iOS”. After a few seconds, the games will appear in the MAME interface. Otherwise, close the application and reopen it:
¡Y we already have it! The only “but” to this process is that when using a free development account, the application signature only lasts for 7 days: that is, before seven days, if we want to continue using the application, we must connect the iPhone to the Mac, open Xcode and press the “PLAY” button again. You don’t have to do anything else. The signature of the application will be updated and we will not lose any game that we have already installed.
MAME for iOS works great
The latest version of MAME for iOS is very well designed. You will see how when adding ROMs automatically downloads all game information, screen, data… and the customization capability of the application is huge: screen filters, different types of touch controls, importing ROMs from iCloud (in case we don’t have a Mac handy), skins…
If you also have a external console command, you can connect it to your iPhone and MAME is fully compatible. Even if you use the popular controls that come attached to the phone, like the Razer Kishi V2 we reviewed at Applesfera a few months ago. It is fully MAME compatible and there is absolutely nothing to configure: plug and play.
I hope this little tutorial will help you. learn more about Xcode (if you have never used it) and lose a bit of the fear of Apple’s development environment, which you can take advantage of for small personal projects like this – and incidentally take advantage of playing these legendary games of yesteryear at any time.