Wanting to play Nintendo Wii or Nintendo GameCube games on your iPhone via DolphiniOS emulator but caught up with “Waiting for JIT” error message? Well, don’t worry. You are on the right place. In this article, I’ll walk you through on each and every steps in thorough details. In case you have questions related to the steps, don’t hesitate to submit your queries on the comment section down below.
- This tutorial detailed the steps to fix “Waiting for JIT” error found on DolphiniOS via wireless tethering, so that you can continue playing Nintendo Wii & Nintendo GameCube games on your iPhone running on latest iOS.
- No jailbreak nor any forms of subscriptions is required.
- This tutorial though intended for iPhone, but all the steps provided here works and applicable for iPad as well as iPod Touch.
- For other interesting articles related to gaming, check it out here DolphiniOS, Nintendo Wii, Nintendo GameCube, Xbox, PS5, Nintendo Switch, other gaming, iOS, Tech or more at JILAXZONE.
- If you find this article / content inside is already obsolete, do let me know by commenting on the comment section below so that I can update the article to reflect the latest process/news. Thanks.
Previously, I have posted similar article on the same topic. The previous article was “Waiting for JIT” workaround fix via wired tether method (using Lightning cable) (here is the link: DolphiniOS – Waiting for JIT workaround fix via wired tether at JILAXZONE), while this time, on this article, I’m going to show you how you can do wireless tethering method instead of wired tethering method. If you want something faster and more reliable, go and have a look at my previous article, but if you want greater convenience of not always hooking up your iPhone to the Computer to run DolphiniOS, stay here and read on.
In case you have not installed DolphiniOS on your iPhone or your DolphiniOS is not the latest updated version, check out here for detail steps: Installing & Updating DolphiniOS on iPhone and iPad at JILAXZONE.
DolphiniOS: Waiting for JIT: A short explanation & The proposed workaround fix
JIT is short for Just-In-Time compiler. It’s a method, like its name implies, to compile codes during execution, so the codes will then translated into device native code which resulted in faster performance. Apple quietly introduced this feature back in iOS 14.2 which by then was greatly improved DolphiniOS performance running on Apple devices, however knowing that people used the feature outside what Apple initially intended (mainly for running emulators and VMs), Apple quickly pulled JIT out on iOS 14.4. That’s the reason, if you are on iOS 14.4 or above, you are getting “Waiting for JIT” message on DolphiniOS.
There are few workarounds and fixes available for this “Waiting for JIT” error. One of them, which I’m sharing here, is using “iDeviceDebug” method, which is also known as “tether method” invented by Jkcoxson and Spidy123222. Refer to the link here to see their original work.
The “iDeviceDebug” method itself has 2 ways: a) wired tether method and b) wireless tether method. As each of the method’s name suggested:
a) Wired tether method requires you to plug your iPhone to your Computer to execute the workaround fix
b) Wireless tether method requires no cable involvement at all.
Both method – wired and wireless – when done correctly, will give you the same result: You can play Nintendo Wii & Nintendo GameCube games on your iPhone via DolphiniOS. The difference between the 2 is: wired method is much faster and more reliable, while wireless method is more convenient since you don’t need to always hook up yourself to the Computer.
In case you prefer to do the wired method, check out the link here: DolphiniOS – wired tether method at JILAXZONE. In case you prefer to do the wireless method, then continue reading.
Prerequisites
These are the things you need to prepare to before being able to run DolphiniOS via wireless tether method. If there are certain things you don’t have / don’t know yet, don’t worry, as part of the installation and configuration steps, all the download links and how to create / configured them are shared in details.
# | Item required | Description |
---|---|---|
a | iPhone or iPad or iPod Touch | The main show. |
b | Computer (either a Mac or PC) | Required to push JIT package from your Computer to run DolphiniOS on your iPhone. |
c | iTunes | Required to be installed on your Computer to transfer data from Computer to iPhone and perform wireless sync. |
d | AltStore | Required to be installed on your iPhone to get DolphiniOS Package ID. If you don’t have AltStore yet on your iPhone, check this out: Here’s how to install AltStore: iPhone alternative App Store at JILAXZONE. |
e | Lightning cable | Required to do first time setup, before wireless refresh is enabled. |
f | Wi-Fi network | Required to sync and refresh wirelessly. Computer with iTunes must be in the same Wi-Fi network as iPhone. |
Article continues below.
Popular on JILAXZONE today:
DolphiniOS: Waiting for JIT workaround fix without using cable (a.k.a wireless tethering method)
Get the convenience for not always hooking up your iPhone to your Computer, every time you run DolphiniOS!
The step by step guide I provided here is intended for you who are especially not geeky & not-so technical. While the steps are so thorough and details, however in any case you are confused with any of the steps, don’t hesitate to ask via the comment section down below. I’ll be happy to help.
So without further ado, here’s the “iDeviceDebug wireless tether method” workaround to fix “Waiting for JIT” error message you are getting while opening and running DolphiniOS.
The steps written here are tested on: a) Latest iOS – at the time this article is written is iOS 15 Public Beta 4 and using the iPhone that I currently have – iPhone XR. In case you are not on iOS 15 or iPadOS 15 yet, check the link here to get iOS 15 & iPadOS 15: Here’s how to update iPhone to iOS 15 today (iPad and iPod Touch included!) at JILAXZONE. b) Latest Windows – at the time this article is written is Windows 11 Pro Preview Build 22000.100 co_release. In you are also using Windows and would like to install Windows 11, check the link here to get them installed: Getting Windows 11 and installing on your Computer at JILAXZONE. Should you are using different version of iOS or iPadOS and / or different computer OS (such as Linux / Mac), the steps may be slightly different but should not deviate too much. Anyway, in case you have questions / issues, feel free to put them down on the comment section down below, I’ll be more than happy to help you. |
Step 1) Enable iTunes Wi-Fi Sync
This is to setup wireless connection between your iPhone and iTunes. Lightning cable is required here to complete the one-time setup. Once you succesfully enable iTunes Wi-Fi sync, going forward, you won’t need Lightning cable anymore to sync.
Step 1a) Open iTunes on your Computer. If you haven’t got iTunes open, do double click on iTunes icon to open iTunes.
Step 1b) Plug-in the iPhone to the Computer. Get the Lightning cable and plug your iPhone to the Computer. Ensure iTunes detect your iPhone, by checking on iTunes whether it has the iPhone icon. Click on the iPhone icon to open the summary of your iPhone (the page where you can see “Summary”, “Music”, “Movies”, “TV Shows”, “Photos”, “Info”, “File Sharing” and many more. Click on “Summary”.
Step 1c) Turn on “Sync with this iPhone over Wi-Fi”. With your iPhone connected to iTunes and iTunes showing your iPhone summary page, scroll down the summary page to the “Options” section. Tick “Sync with this iPhone over Wi-Fi” located under “Options” section to enable wireless syncing between your iPhone wirelessly to your Computer and iTunes. Click “Done” to confirm applying the changes.
Step 1d) Unplug your iPhone from your Computer & connect to the same Wi-Fi. After removing the cable from your iPhone, go into iPhone Settings > Wi-Fi. Ensure you are connecting to the same Wi-Fi network as the Computer by checking the Wi-Fi network name, both Computer and iPhone need to have the same Wi-Fi name.
Step 2) Download libimobiledevice
libimobiledevice is set of libraries to communicate with services on iOS devices using native protocols. You can get libimobiledevice from the following link.
Download libimobiledevice | https://github.com/libimobiledevice-win32/imobiledevice-net/releases/ |
Choose zip file according to your Computer OS. Since I’m using Windows, so I downloaded the Windows version.
For easier references throughout the article: 1) regardless of the Computer version (whether Windows, Mac, or Linux), let’s just call the zip file downloaded from the link as “libimobiledevice.zip” 2) Since I’m using Windows and because different Windows Computer has different drive, for the rest of this article, I will use “D:\Programs\libimobiledevice” as the “libimobiledevice download folder”. You have the option to follow or use your own folder preference. |
Step 3) Navigate to “libimobiledevice download folder” and unzip the “libimobiledevice.zip”
Once downloaded into “libimobiledevice download folder” (inside “D:\Programs\libimobiledevice”), unzip “libimobiledevice.zip” file and place all the files into “libimobiledevice download folder” (inside “D:\Programs\libimobiledevice”).
If you do it correctly, you should be able to see “idevice_id.exe”, “ideviceimagemounter.exe” and “idevicedebug.exe” under “libimobiledevice download folder” (inside “D:\Programs\libimobiledevice”).
Step 4) Open Command Prompt / Terminal, navigate to “libimobiledevice download folder”
On your Computer and assuming “libimobiledevice download folder” is located at “D:\Programs\libimobiledevice”, do the following:
Step 4a) Click on Windows button, type “Command Prompt”, then press Enter. Command Prompt window will then open.
Step 4b) Inside the Command Prompt window, type “D:” without the double quotes. Then press Enter. If your “libimobiledevice download folder” is different from mine, adjust the command yourself.
Step 4c) Inside the Command Prompt window, type “CD D:\Programs\libimobiledevice” without the double quotes. Then press Enter. If your “libimobiledevice download folder” is different from mine, adjust the command yourself.
If you are doing the steps correctly, now your Command Prompt should be showing the “libimobiledevice download folder” at “D:\Programs\libimobiledevice” or in case your “libimobiledevice download folder” is different from mine, your Command Prompt should be showing your folder location.
Step 5) Getting iPhone UDID via Command Prompt / Terminal
On your Computer and assuming “libimobiledevice download folder” is located at “D:\Programs\libimobiledevice”, do the following:
Step 5a) Plug your iPhone back to the Computer as this step unfortunately can’t be done wirelessly. This step is need to be done one time only.
Step 5b) With iPhone plugged into the Computer, inside the Computer Command Prompt window, type “idevice_id.exe” without the double quote. Then press Enter.
Step 5c) Take note of the 25 character (including the “-“) of your iPhone UDID. The iPhone UDID is shown in this format: XXXXXXXX-XXXXXXXXXXXXXXXX (USB).
Step 5d) Now you can safely unplug your iPhone. If you don’t want to keep re-plugging your iPhone to the Computer, ensure you store and save the iPhone UDID somewhere you can remember.
Step 6) Check and get DolphiniOS Package ID.
On your iPhone, do the following:
Step 6a) Open AltStore app, then navigate to My Apps. Tap on “View App IDs”.
Step 6b) Find DiOS or DiOS Beta. Then write down the text you find below. It’s case sensitive, so be careful not to write them wrongly. This text is DolphiniOS Package ID, which is unique on every device. The DolphiniOS Package ID is shown in this format: me.oatmealdome.DolphiniOS-njb-XXXXXXXX.YYYYYYYYYY where XXXXXXXX refers to your DolphiniOS version and YYYYYYYYYY refers to your unique Apple Developer Beta ID.
Here’s the template you can use, so you don’t need to write them from scratch. Do change accordingly based on your device DolphiniOS Package ID. DolphiniOS Release Build: me.oatmealdome.DolphiniOS-njb.YYYYYYYYYY DolphiniOS Beta Build: me.oatmealdome.DolphiniOS-njb-patreon-beta.YYYYYYYYYY |
Step 7) Download Developer Disk Image.
This image is used to inject the Just-In-Time (JIT) code / program into your iPhone. Download developer disk image according to your iOS version. For example: If you are like me, using iOS 15, then download the developer disk image for iOS 15.
On your Computer, do the following:
Step 7a) Open your Computer browser and click one of the links. For iOS 15, you can go to the Link #1 to get the developer disk image. For other iOS version, check both links to get your correct version.
Step 7b) Once you have found the correct version that match with your iOS version, download the zip file.
Link # | Download Link |
---|---|
Link #1 | https://github.com/mspvirajpatel/Xcode_Developer_Disk_Images/releases/ |
Link #2 | https://github.com/pdso/DeveloperDiskImage/tree/master |
If you are like me, using iOS 15, I download the 15.0.zip file.
For easier references throughout the article: Due to different iOS version has different zip filename, for the rest of this article, let’s just call the whichever version of zip file as “developer disk image.zip”. |
Step 8) Unzip the “developer disk image.zip” into “libimobiledevice download folder”
On your Computer and assuming “libimobiledevice download folder” is located at “D:\Programs\libimobiledevice”, do the following:
Step 8a) Unzip “developer disk image.zip” into “libimobiledevice download folder”. In my case, it’s the “15.0.zip”.
Step 8b) Check the files generated. If you did it correctly, you should see 2 files: DeveloperDiskImage.dmg and DeveloperDiskImage.dmg.signature inside “libimobiledevice download folder”.
Step 9) Mount Developer Disk Image
This step requires your iPhone to be in unlock position with screen turned on. If the iPhone screen goes off, the process will fail and throw error.
On your Computer, with Command Prompt window is still opened and assuming “libimobiledevice download folder” is located at “D:\Programs\libimobiledevice”, do the following:
Step 9a) Inside the Command Prompt window, type “ideviceimagemounter.exe D:\Programs\libimobiledevice\DeveloperDiskImage.dmg -n” without the double quotes. Then press Enter. The “-n” is important, it tells the iDeviceImageMounter to look for your iPhone wirelessly (n for network).
Step 9b) Ensure you are getting “Status: Complete” message on Command Prompt window after executing the previous step. Since you are doing it wirelessly, please be patient here as depends on your Wi-Fi traffic and the range between your Computer, your iPhone and Wi-Fi router, this mounting process can be slow.
Step 10) Running iDeviceDebug
On your Computer, with Command Prompt window is still opened and assuming “libimobiledevice download folder” is located at “D:\Programs\libimobiledevice”, do the following:
Step 10a) Inside Command Prompt window, type “idevicedebug -u <iPhone UDID> -n –detach run <DolphiniOS PackageID>” without double quotes.
Replace <iPhone UDID> with your iPhone Unique UDID (check Step 5).
Replace <DolphiniOS Package ID> with your own DolphiniOS unique Package ID (Check Step 6).
Between <iPhone UDID> and –detach, there’s “-n” which basically tells iDeviceDebug command to look your iPhone wirelessly (n for network).
Step 10b) Press Enter to execute the command.
Step 10c) If you run the command correctly with correct iPhone UDID and correct DolphiniOS Package ID, dolphiniOS app on your iPhone will open.
Congratulations! You just enable Just-In-Time (JIT) code on DolphiniOS via the iDeviceDebug wireless tether method. Now, you can start playing those huge libraries of both Nintendo Wii and Nintendo GameCube!
Suggestions
Because the whole configuration process is a tether process (in this case wireless tether method), in which if DolphiniOS on your iPhone is closed / killed, you need to redo the tether process in order to (again) run Nintendo Wii / Nintendo GameCube games, so I would suggest you to save these commands on your Computer, so whenever you need them, you just execute them. You don’t need to repeat the whole process, you just need to re-execute step d) and step e) below to re-enable JIT on DolphiniOS in case DolphiniOS is closed / killed.
Here are the important commands for Command Prompt:
Step | Important Command for Command Prompt / Terminal | Description |
---|---|---|
a) | D: | To navigate to the correct drive |
b) | CD D:\Programs\libimobiledevice | To navigate to the correct folder where libimobiledevice files are located |
c) | idevice_id.exe | To be run one time only to get iPhone UDID. You need to only rerun this if you forgotten your iPhone UDID. |
d) | ideviceimagemounter.exe D:\Programs\libimobiledevice\DeveloperDiskImage.dmg -n | To mount the Developer Disk Image to your iPhone wirelessly |
e) | idevicedebug -u <iPhone UDID> -n –detach run <DolphiniOS Package ID> | To enable JIT on your iPhone wirelessly |
Bring it all together
With the “iDeviceDebug wireless tether method” workaround, I can conveniently run DolphiniOS without the hassle of dangling cable and plugging-unplugging my iPhone to my Computer. Then based on my test using iPhone XR, I can run Super Mario Sunshine (GameCube) on 30 FPS (this is the max FPS for the game, check here for discussion on Reddit) and Mario Kart Wii on 40-50 FPS. Still reasonably impressive!
So, don’t wait, try the workaround – if you haven’t – to get rid of the “Waiting for JIT” error and go play!
Do you have anything you want me to cover on my next article? Write them down on the comment section down below.
Alternatively, find more interesting topics on JILAXZONE:
JILAXZONE – Jon’s Interesting Life & Amazing eXperience ZONE.
Hi, thanks for reading my curated article. Since you are here and if you find this article is good and helping you in anyway, help me to spread the words by sharing this article to your family, friends, acquaintances so the benefits do not just stop at you, they will also get the same goodness and benefit from it.
Or if you wish, you can also buy me a coffee:
Thank you!
Live to Share. Share to Live. This blog is my life-long term project, for me to share my experiences and knowledge to the world which hopefully can be fruitful to those who read them and in the end hoping to become my life-long (passive) income.
My apologies. If you see ads appearing on this site and getting annoyed or disturb by them. As much as I want to share everything for free, unfortunately the domain and hosting used to host all these articles are not free. That’s the reason I need the ads running to offset the cost. While I won’t force you to see the ads, but it will be great and helpful if you are willing to turn off the ad-blocker while seeing this site.