Suyogya Shukla

Crafting magic on web

Installing SideStore and PPSSPP on iOS

Installing PPSSPP on iOS

I’ve recently found myself wanting to play arcade/old games in general quite frequently – perhaps it’s the nostalgia, or maybe it’s because literally all the modern games (specially the ones on mobile) seem to be all about micro transactions. Anyway, I decided to play some PSP games and to no one’s surprise, my PSP purchased in 2007 wouldn’t work.

I eventually browsed through the internet and realised I could sideload an emulator (PPSSPP) on my iPhone that would let me play almost any PSP game out there. To accomplish this, I installed SideStore, which by the way, doesn’t require you to jailbreak your device and is completely open-source. While SideStore has some decent documentation on how to set things up, I still ran into a few snags that I had to figure out myself so I thought I’ll lay down the steps I followed to setup SideStore, along with installing and running a game using PPSSPP.

Aside: If you’re running into “Unable to connect to the device, please make sure WireGuard is enabled and you are connected to WiFi” error after installing SideStore using SideServer, this guide will also be relevant for you as an alternative method of installing SideStore.

You’ll need a working Mac/Windows computer to set up SideStore, but this post is going to focus on setting things up using a Mac as that’s my primary computer. If you’re a Windows user, you’re welcome to follow the instructions here.


Setting up AltServer & installing SideStore on your iPhone

  • First of all, you’d need to make sure your iPhone has developer mode turned on – you can check this by going to Settings -> Privacy -> Scroll down to find developer mode.
Developer mode on iOS
Make sure to turn the developer mode ON
  • Next, head to SideStore’s website and scroll down to the very bottom. Click on the “Just want the downloads button” and download “latest stable release” under .ipa, as well as JitterBugPair for MacOS, whatever the latest version currently is. You’ll need to later download both the files under VPN (WireGuard & it’s configuration) as well, but on your iPhone.

  • Now, SideStore recommends sideloading the app using SideServer. This, for some reason, never worked for me and I couldn’t get the apps to refresh inside SideStore once it was installed. Luckily, AltServer worked pretty well for me, and I used it to install SideStore on my phone. So, head on to this link and download the latest AltServer for MacOS.

  • Once this is downloaded, move the AltServer app to the applicatons folder in MacOS. Now, connect your iPhone while making sure it’s unlocked. If prompted, choose to “Trust the device”. Unless stated otherwise, you’d want to make sure your iPhone stays connected and unlocked throughout the rest of this guide.

  • Open AltServer, and you’ll likely get a security warning. You can bypass this by following the steps mentioned here.

  • Once AltServer is up and running, you’ll see an icon in your menu tray.

  • Find the downloaded .ipa file for SideStore. Hold option/alt and click on the AltServer menu bar icon. Click “Sideload .ipa”, and select your iPhone. Next, choose the SideStore .ipa file you had downloaded.
Choose the SideStore ipa file
Choose the SideStore ipa file
  • You’ll be prompted to log into your Apple ID, so go ahead and do that. Generally speaking, AltServer is pretty secure, and open source so there aren’t any issues with using your actual Apple ID, but if you want to be extra cautious, I recommend setting up a burner Apple ID to use.

  • Make sure your iPhone is unlocked, and don’t do anything while the SideStore gets installed. Once installed, you should be able to see it on your home screen, or in your app library. Don’t open it just yet.

  • Find the downloaded configuration using the Files app and click on Share icon, choose “WireGuard”. You’ll be prompted to install VPN profile, for which you’ll need to authorise using your iPhone’s passcode. Go ahead and and do that.
Choose WireGuard in the share menu
  • Head back to your Mac and extract the jitterbugpair-macos.zip and run jitterbugpair program. You might need to allow running it through Settings -> Security, just like we did for AltServer earlier.

  • Once it finishes, you’ll see it generates a .mobiledevicepairing file with a bunch of random characters . Copy the name of this file, and search it in Finder to locate it, right click and choose “Show in enclosing folder”. More than likely, it’ll be stored in your user account folder.

  • Copy this file, and paste it in your iCloud drive (or any other cloud storage) so it gets synced and becomes accessible on your iPhone. Check your iPhone, locate the file, and make sure the extension hasn’t changed – cloud uploads can sometimes result in this file being converted to a txt file, but this likely wouldn’t happen if you use iCloud.

  • Turn on WireGuard to enable the SideStore configuration you had set up – you’ll need to make sure this is turned on every time you need to use SideStore. However, you don’t need to keep WireGuard running if you’re using an app installed from SideStore, they will continue to work without issues.

  • Head to Settings -> General -> VPN & Device Management -> Under Developer App, click on your Apple ID and click “Approve apps”.

  • Now, open SideStore on your iPhone. You’ll be prompted to choose the pairing file, go ahead and choose the .mobiledevicepairing file you had just uploaded on your iCloud drive.

  • Next, head to Settings in SideStore and click on “Log in with Apple ID” – go ahead and log in using the same account you used when sideloading SideStore using AltServer.

  • Once logged in, go to “My Apps” in SideStore and click on “Refresh All” – at this point, your SideStore is all set up, and the next part of this guide will talk about setting up PPSSPP and installing a game.

Setting up PPSSP & installing a game

  • Open SideStore on your device, and go to Browse. Click on “Sources” in the top right corner, and under “Trusted Sources”, choose SideStore Team Picks.

  • Click on Done in the top right corner, and go back to Browse. You should be able to see a list of apps. In the search bar, search for “PPSSPP” and install it.
Install PPSPP from SideStore
  • Next, you’d want to look for ISO file of the game you want to play using PPSSPP. You can either download a purchased game’s ISO by following the steps here, or you can also search on Google and look for ISO files of the games you’re looking to download, but I’ll not be listing these websites in this guide.

  • Once the ISO file is downloaded, locate it and move it to the PPSSPP folder on your iPhone – this will either be in your iCloud Drive, or on your iPhone.
Copy the ISO file in PPSSPP folder
  • Next, open PPSSPP on your iPhone, click on the “Home” tab -> Click on “Documents” and you should be able to find the game you wanted to play in here! Simply click on it and start playing!
Choose the game you’d like to play!

That’s all you need to do to play a PSP game on your iPhone. It might sound like a lot of work, but it’s really not! I hope this was useful for you, and if you run into any issues, please leave a comment below and I’ll try my best to help you out.

Lastly, all of these projects are maintained by mostly individual developers & small teams that aren’t earning from them directly, and are open source. If you enjoy their work, please consider supporting them directly using the links below:

If you enjoyed reading the post, you’re also welcoming to donate to me by clicking on the “Support Me” button on the bottom left corner of this site.

54 responses

  1. Diego C Avatar
    Diego C

    does this require a jailbroken device?

    1. Suyogya Shukla Avatar

      Nope, you don’t need Jailbreak to set this up!

      1. Jean Avatar

        Comment télécharger jeux sur ppsspp

  2. Julius Avatar

    Developer mode is not showing up, I’m on iOS 17

    1. Ahmed Avatar

      Yep. Same thing here

    2. Suyogya Shukla Avatar

      Hmm, I’m still seeing the developer mode option in settings -> privacy & security -> Scroll to the very bottom -> developer mode. I’m on latest iOS too. I researched a bit more about this on the internet, and some folks recommend enabling it through XCode so you can give that a try – here’s a relevant thread: https://forums.developer.apple.com/forums/thread/716697

      If that doesn’t help either though, I’ll recommend y’all talk to Apple’s support team directly since it might just be a bug. All the best!

  3. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  4. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  5. […] con versiones anteriores de la aplicación que estaban disponibles a través de varios exploits y soluciones. El mayor es que Apple no permite recompiladores Just-in-Time que retraducen el código para el […]

  6. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  7. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  8. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  9. […] açıklardan yararlanılan önceki sürümlerine göre bazı sınırlamalara sahip olduğu ve geçici çözümler. En büyüğü, Apple’ın, işletim sistemi için kodu yeniden çeviren ve daha sorunsuz […]

  10. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  11. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  12. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  13. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  14. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  15. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  16. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  17. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  18. […] versus earlier builds of the app that had been accessible by means of numerous exploits and workarounds. The largest is that Apple doesn’t enable Simply-in-Time recompilers that retranslate code for […]

  19. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  20. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for […]

  21. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  22. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  23. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  24. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  25. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  26. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  27. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for […]

  28. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  29. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  30. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  31. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  32. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  33. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  34. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  35. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  36. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  37. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  38. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  39. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  40. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  41. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  42. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  43. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  44. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  45. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  46. […] z poprzednimi wersjami aplikacji, które były dostępne za pośrednictwem kilku exploitów i Rozwiązania. Największym z nich jest to, że Apple nie zezwala na rekompilatory just-in-time, które […]

  47. […] some limitations versus previous builds of the app that were available through various exploits and workarounds. The biggest is that Apple doesn’t allow Just-in-Time recompilers that retranslate code for the […]

  48. […] version de PPSSPP compatible iOS existe déjà. Celle-ci n'est pas très pratique à trouver étant donné qu'il faut passer par […]

  49. ASSER Avatar

    I like to

  50. Fisokuhle kewel Avatar

    I like playing games and I only use ppsspp gold

Leave a Reply to PPSSPP brings PSP emulation to the iPhone – Assets Under Control Cancel reply

Your email address will not be published. Required fields are marked *