Changes

Jump to navigation Jump to search

IOS emulators

16,236 bytes added, 24 June
Comparison
}}
:''This page is about software that emulates iOS on other hardware, like desktops.''{{for|emulators that run on IOSiOS|Emulators on iOS}} '''iOS''' devices started the smartphone craze, which would go on to replace conventional mobile phones in both Japan (which had its own subset of cell phones) and the rest of the world, with more advanced touch-controlled devices'''iPadOS''' are operating systems created by Apple.
iOS devices started the smartphone craze, which would go on to replace conventional mobile phones in both Japan (which had its own subset of cell phones) and the rest of the world, with more advanced touch-controlled devices. Formerly, iOS was used for both Apple's phones and tablets. Then, the iOS brand was split into two parts in 2019, with iOS now being the OS exclusively used in the iPhone and the now-defunct [[Apple_iPod|iPod Touch]]. The second half, named iPadOS, is a fork of iOS for iPads that makes use of their larger screens, hence its name. Most iOS apps and games work on iPadOS. Unlike its direct competitor, [[Android emulators|Android]], there are practically no usable emulators, as the official iOS SDK (macOS-only) only allows for running your own projects, i.e., they run code generated for an x86 target rather than ARM code as used by iOS. Some simulators Similar to most of the Android emulators, some emulators (e.g., [[BlackThunder]]) make uses two-step approach, making use of the simulator in the iOS SDK to run a few chosen iOS apps that are recompiled for x86. Unlike previous emulation trails, BlackThunder first loads a highly trimmed Hackintosh image via VirtualBox, which loads Xcode and an iOS simulator into it, then runs decompiled iOS apps recompiled for the x86 architecture. Appetize.io and other tools that claim to emulate iOS on a web browser are in reality just the iOS simulator in XCode wrapped around a cloud stream to the web browser, and like the iOS XCode simulator, need the source code to run. More recently, touchHLE managed to get a few older iPhone OS apps running by recreating some of iOS’s standard libraries and emulating just the iPhone’s CPU, and nearly the same time, QEMU-iOS got released and can successfully emulate iPhone OS 1.0 on an iPod Touch 1st generation, albeit with bugs.
==ROMs==
TODO: Merge this with ROM & ISO sites<br>https://archive.org/details/ipaarchive is the best source for classic ROMs. Just search your app or find collections with your app in it. https://decrypt.day/ is the best source for modern app ROMs that are all free.
==Emulators==
{| class="wikitable" style="text-align:center;width:100%"
! scope="col"|Name
! scope="col"|Platform(s)
! scope="col"|Latest version
! scope="col"|[[#Hardware_features|Hardware features]]
! scope="col"|[[#Enhancements|Enhancements]]
! scope="col"|Compatibility
! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>
! scope="col"|Active
|-
!colspan="9"|PC / x86
|-
|macOS Big Sur and up
|align=left|{{Icon|macOS}}
|?
|{{✗}}
|{{✓}}
|{{✓}}
|-
|[https://www.corellium.com/ Corellium]
|align=left|{{Icon|Web}}
|[https://www.corellium.com/ Web-based]
|{{✗}}
|{{✓}}
|{{✓}}
|-
|[https://touchhle.org/ touchHLE]
|align=left|{{Icon|Windows|macOS}}
|[https://github.com/hikari-no-yumetouchHLE/touchHLE/releases 0.1.2{{TouchHLEVer}}] <br> |{{~}}|{{~}}|[https://githubappdb.touchhle.comorg/hikari-no-yume28%<br/touchHLE><small>52 out of 188 reported titles</actions Actionssmall>]
|{{✓}}
|{{✓}}
|align=left|{{Icon|macOS|Linux}}
|[https://github.com/devos50/qemu-ios/tree/ipod_touch_1g#building git]
|{{~}}
|?
|N/A
|{{✓}}
|{{✓}}
|{{✗}}
|{{~}}
|-
|[[BlackThunder]]
|align=left|{{Icon|Windows|macOS}}
|?|?|?|?
|{{✗}}
|{{?}}
|{{~✗}}|-|[[MAME]]|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}|[http://www.mamedev.org/release.html {{MAMEVer}}]|?|?|N/A|{{✓}}|{{✓}}|{{✗}}[https://github.com/mamedev/mame/blob/master/src/mame/apple/iphone2g.cpp#L318 *]|-|[https://github.com/zhkl0228/unidbg unidbg]|align=left|{{Icon|Windows|macOS|Linux}}|0.9.7|?|?|?|{{✓}}|{{✓}}|{{✗}}|-|Unnamed iOS emulator|align=left|{{Icon|Windows}}|Unreleased due to touchHLE|?|?|?|{{✗}}|{{✗}}|{{✗}}
|-
|[https://github.com/zydeco/aah aah]
|align=left|{{Icon|macOS}}
|?|?|?|?
|{{✓}}
|{{✗}}
|{{~}}
|-
|[https://github.com/ipasimulator/ipasim ipasim]
|align=left|{{Icon|Windows}}
|PatchV1.0.1
|?
|?
|?
|{{✓}}
|{{✗}}
|align=left|{{Icon|Windows|macOS|Linux}}
|0.9.7
|?
|?
|?
|{{✓}}
|{{~}}
|[https://github.com/TrungNguyen1909/qemu-t8030 TruEmu]
|align=left|{{Icon|Windows|Linux|macOS}}
|?|?|?|?
|{{✓}} ||{{✗}} ||{{✗}}
|-
|[https://github.com/alephsecurity/xnu-qemu-arm64 xnu-qemu-arm64]
|align=left|{{Icon|Windows|Linux|macOS}}
|?|?|?|?
|{{✓}} ||{{✗}} ||{{✗}}
|-
|iEmu
|align=left|{{Icon|Windows|Linux|macOS}}
|??? |{{✓}} ||{{✗}} ||{{✗}}?|-?|[[MAME]]|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}|[http://www.mamedev.org/release.html {{MAMEVer}}]?
|{{✓}} ||{{✗}} ||{{✗}}
|-
|[https://touchhle.org/ touchHLE]
|align=left|{{Icon|Android}}
|[https://github.com/hikari-no-yume/touchHLE 1/releases 0.02.2]|{{~}}|{{~}}|[https://appdb.touchhle.org/ 28%<br/><small>52 out of 188 reported titles</small>]|{{✓}}|{{✓}}|{{~}}|} ==Hypervisors [[Hypervisors|(...)]]==<div style="overflow-x:auto;width:100%">{| class="wikitable" style="text-align:center;width:100%"! scope="col"|Name! scope="col"|Platform(s)! scope="col"|Latest version! scope="col"|[[#Hardware_features|Hardware features]]! scope="col"|[[#Enhancements|Enhancements]]! scope="col"|Compatibility! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>! scope="col"|Active! scope="col"|[[Recommended emulators|Recommended]]|-|[https://www.corellium.com/ Corellium]|align=left|{{Icon|Web}}|[https://www.corellium.com/ Web-based] ($)|?|?|?|{{✗}}|{{✓}}|{{~}}<ref group=N>Would be completely recommended if it wasn’t paid and/or a local version that runs on Windows/macOS/Linux is available.</ref>|} ==Native==<div style="overflow-x:auto;width:100%">{| class="wikitable" style="text-align:center;width:100%"! scope="col"|Name! scope="col"|Platform(s)! scope="col"|Latest version! scope="col"|[[#Hardware_features|Hardware features]]! scope="col"|[[#Enhancements|Enhancements]]! scope="col"|Compatibility! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>! scope="col"|Active! scope="col"|[[Recommended emulators|Recommended]]|-!colspan="9"|Mobile / ARM|-|[https://apple.com/macos macOS]|align=left|{{Icon|macOS}}<ref group=N>Requires Mac computers with Apple Silicon (M series) processors.</ref>|11 Big Sur to 14 Sonoma|?|?|?|{{✗}}
|{{✓}}
|{{✓}}
|{{TBD}}
|-
|[http://systems.cs.columbia.edu/projects/cycada/ Cycada]
|align=left|{{Icon|Android}}
|Unreleased
|?
|?
|?
|{{✗}}
|{{✗}}
|{{TBD}}
|-
|QEMU-iOS port
|align=left|{{Icon|Android|Web}}
|Not released yet
|{{✗}}
|{{?}}
|{{TBD}}
|}
<references group=N />
 
==Comparison==
;Emulators
:;[[touchHLE]]
::A promising new endeavor that aims to run older iOS apps by reimplementing standard libraries instead of internal components. Because of this [[High/Low_level_emulation|very high-level approach]], no dump of the operating system is required. Its initial target is iPhone OS 2.x, with plans to support other 32-bit iOS versions, mainly 3.x and 4.x, as well as the iPad. Development started in December 2022, and its initial 0.1.0 release came out in February 2023. [https://appdb.touchhle.org/ touchHLE supports a handful of apps], with most apps that do not crash on the start working absolutely perfectly. touchHLE supports running IPA files directly. A game controller is required to control the accelerometer. touchHLE has an app archive that currently only has two apps being touch and go and it’s lite version, which are licensed to be free to use with touchHLE. Unfortunately, touchHLE does not currently have a “canary” branch which gets all the additions of it’s multiple concurrent pull requests.
 
:;QEMU-iOS
::Previously unnamed and referred to as “devos50’s qemu fork”, Based on earlier work emulating the S5L8900 and the iPhone 11 in QEMU. It can emulate an iPod Touch 1G running iOS 1.0, including iBoot, the kernel, and the Springboard, although it requires a modified NOR and NAND image. Some features, such as audio and Wi-Fi, are not emulated, and there are multiple crashes. About a year later, the same user managed to run iPhone OS 2 on an emulated iPod Touch 2G, however internet connectivity is not figured out yet, and nobody has yet ran a 3rd party app via filesystem hacks as of now, as both networking and USB (iTunes) are unemulated and cannot be installed regularly.
:;macOS Big SurMAME:The 17th major operating system of the macOS line:Very basic iPhone 2G support available [https://github.com/mamedev/mame/blob/master/src/mame/apple/iphone2g. It has support for cpp here] <small>(that cannot boot iOS and iPadOS applications for Apple M1- and M2-based Macs. However, some apps are not installed due nor even get to the Apple DRMlogo)</small>. This can '''Unlikely to ever be bypassed using an IPA file and PlayCover/Sideloadycompleted.'''
:;touchHLEBlackThunder:A promising new endeavor :Closed-source, commercial iOS emulator that aims to can run older a few commercial iOS apps by reimplementing standard libraries instead of internal components. Because of this very highThe official iOS SDK (macOS-level approachonly) only allows for running your own projects, no dump of the operating system is requiredi.e. Its initial they run code generated for an x86 target is iPhone OS 2rather than ARM code as used by iOS.xHowever, with plans to support other 32-bit iOS versionssome emulators, mainly 3e.x and 4g.xBlackThunder, as well as make use of the iPad. Development started simulator in December 2022, and its initial 0.1.0 release came out in February 2023. The only officially supported applications the iOS SDK to run a few chosen iOS apps that are [https://archive.org/download/iOSObscura/iPhoneOS%202/comrecompiled for x86.ooi.supermonkeyball/ ''Super Monkey Ball''] – the dev’s inspiration for the project – which is fully playable and runs at full speedUnlike previous emulation trails, even on mid-range laptopsBlackThunder first loads a highly trimmed Hackintosh image via VirtualBox, as well as Crash Bandicoot Nitro Kart 3D. touchHLE supports running IPA files directly. [https://archive.org/download/smblite-ios2.0-clutch-2.0.4/smblite-iOS2.0-%28Clutch-2.0.4%29.ipa Super Monkey Ball Lite] which loads Xcode and Touch & Go Lite, the only supported free gamesan iOS simulator into it, then runs iOS apps that are the third decompiled and fourth ones supported. A game controller is required to control recompiled for the accelerometerx86 architecture.
:; QEMU-Unnamed iOSEmulator:Previously unnamed :This is a Low-Level Emulator made by user “K-8-L-Y-N” discussed on the Darling Discord Server, which can run Springboard and referred to as “devos50’s qemu fork”the Calculator. They said it’s their own codename and own interpreter. It does not support touch at all, Based on earlier work emulating making it almost useless. It only emulates the S5L8900 kernel and the iPhone 11 in QEMUuser provides a filesystem DMG. It can emulate an iPod Touch 1G running They’ve gotten iOS 1.0springboard to boot, including iBoot, which they said was not too difficult and said they were also using iOS 1.0 dyld directly. They said it was a Low-Level-Emulation project as they had to emulate the CPU. They also said the kernel, emulation is shorty and it only works. They said they’ll never release it in the Springboardstate that is in, although and refuses to even work on it requires a modified NOR due to touchHLE’s existence. It does load the original frameworks but doesn’t emulate UIKit. The interpreter was for x86 and NAND imageinterprets ARM. Some featuresThey got it to boot via emulated/recreated parts of the darwin/bsd kernel. Again, such as audio it’s emulating the kernel and Wi-Finot doing BSD syscalls on windows. When they feel like the code is in a better state, are they do want to release it under the unlicense. However they do not emulated, and there are multiple crashesplan to ever work on it anymore due to touchHLE. They say the code is in some pretty messy C++ stuff. They plan on rewriting in C# as they feel more comfortable continuing it in C#.
:;CorelliumTruEmu:A service made by the Israeli company of the same name that runs any modern iOS devices:QEMU-t8030, also known as TruEmu, is an iPhone 11 emulated in QEMU, some Android deviceshowever, or bring-your-own IoT devices on either the cloud or current version with a self-hosted serverpublished source cannot boot. Emulation TruEmu is basically perfect, and they have hardware a software that offers support for iOS 10.3 14 up to the latest iOS version, 16 and is built to work on iPhone 6S SecureROM hardware. It also provides out-of-box kernel debugging support and USB support (with debugging Firmware Restore) and utilizes Apple's custom CPU features such as SPRR/GXF and security toolscustom PAC. Additionally, as well as IPA installingTruEmu is open-source software. They also have iPhone 7 TruEmu is made to counteract the latest iPhone paid Corellium’s monopoly in terms of hardwareiOS emulation for security reasearch. The devices run creator’s mastodon and X (formally Twitter) shows work on an ARM hypervisor. For individualsfull SEP emulation and it booting to SpringBoard and operating the Calculator and Settings apps, but it costs 99 USD for two coresis currently unreleased, which with only has iPhone 7minor graphical glitches. The day videos of it’s operation were posted on social medias, a user made an issue about it and 295 USD for six coresarchived the repo with no comment, to use modern iPhonesonly with a comment before it was emulated saying that he was working on multitouch. The site also prohibits users under 18 from using their servicereason it was unreleased remains uncertain. The service is also made for cybersecurityHe may be developing a very capable iOS emulator, may have been hired by Corellium, or he may have been stopped by an Apple employee or has been paranoid about possible Copyright issues and decided to not gamingrelease it nor make a comment.
:;MAMEiEmu:Very basic :QEMU-s5l89xx-port (also known without the -port) (2012), also known as iEmu, is another failed attempt to get an iPhone 2G support available [https://githubrunning in QEMU, this time the 1st generation.com/mamedev/mame/blob/master/src/mame/apple/iphone2gThe last commits were made in 2013.cpp here]Any Android app going by the name iEmu is a *scam* and should be avoided. Nowadays, a malicious APK file going by the '''iEmu'Unlikely '' moniker is also being circulated on blogs run by script kiddies claiming to ever be completedoffer a way to run iOS apps on Android.More often than not, they're uploaded with the intention of generating revenue from impressionable users (through pay-per-click URL shorteners) who fall easily for those types of scams. The project started in 2011 but got mysteriously abandoned two years later before anything usable surfaced. All pages related to the project were removed. It''s speculated Apple had a hand in this. The name is based on the part number of the original iPhone, and also is known to be called iVM, however, this is unconfirmed.
:;BlackThunderunidbg:The official iOS SDK : ''unidbg'' (macOS-only2020) only is a developer library that allows for running your own projectsemulating Android binaries, however, i.e. they run code generated for an x86 target rather than ARM code as used by "experimental" iOS. However, some simulators, e.g. BlackThunder, make use of the simulator support was added sometime in the iOS SDK to run a few chosen iOS apps that are recompiled for x862021. [[BlackThunder]] It is a closed source, commercial iOS simulator that can run a few commercial iOS unknown if any apps. Unlike previous emulation trails, BlackThunder firstly loads a highly trimmed Hackintosh image via VirtualBox, which loads Xcode and an iOS simulator into it, then runs iOS apps that are decompiled and recompiled for the x86 architecturesupported.
:;Cycadaaah: ''Cycada'' : aah (2014arm64 architecture handler), formally known as Cider uses unicorn and Chameleon before that is an unreleased research project made by a few folks at Columbia that ran libffi to run iOS 5.1.1 and experimentally iOS 6 apps at a higharm64 binaries on x86_64 macOS, but not perfect quality and compatibility (see paper for list). It is based on pirated iOS libraries. It is seriously not recommended to initiate contact with the developers varying degrees of the project, as they never planned on releasing it and want people to use their paper to reproduce it with "significant effort"success. All attempts Most things will fail to release it by contacting them have resulted in them saying launch because they are not interestedneed frameworks/symbols that aren't available on macOS. You may try to recreate Cycada aah relies on your own, provided the Mac Catalyst frameworks that you know are present on macOS 10.15. Additionally aah requires the internals source code of Androidthe app to run it, like the iOS, XNU, and Linuxsimulator/emulator in XCode. Out of 69 tested apps, 19 apps fully work, 10 work with minor bugs that do not affect functionality, 15 have major errors that affect functionality, and 27 crash. Only [https://githubtwitter.com/darlinghqmaczydeco/darlingstatus/issues1155588054486310912 https:/1168#issuecomment-1115143186 one recreation] is know to exist, which is also unreleased, and it was made by the creator of DarlingHQ/github.com/zydeco/aah
:;TruEmuipasim:QEMU-t8030 : ''ipasim'' (20222017), also known as TruEmu, is an iPhone 11 emulated a high-level emulator written in QEMU, however it does not have a display, and seems abandoned. TruEmu is a software C++ that offers support for iOS 14 up uses Microsoft's winObjC to the latest recompile 64-bit iOS 16, and is built to work on iPhone 6S SecureROM hardwareapps into apps in live. It also provides out-of-box kernel debugging doesn't support and USB support (with Firmware Restore), and utilizes Apple's custom CPU features such as SPRR/GXF and custom PACmuch apps except for really basic ones. Additionally, TruEmu is an open-source software. ;iEmu:QEMU-s5l89xx-port (2012), also known as iEmu, is another failed attempt to get an iPhone running in QEMU, this time the 1st generation. The last commits were made in 2013. Any Android app going by the name iEmu is a *scam* and should be avoidedIt was more focused on apps than games.
:;unidbgxnu-qemu-arm64: ''unidbg'' (2020) is a developer library that allows emulating Android binaries: A security research emulator created by Aleph. Much like TruEmu, however "experimental" it can partially run iOS support was added some time in 2021. It is unknown if any apps are supported, with launch services working correctly.
;aahHypervisor: aah (arm64 architecture handler) uses unicorn ;Corellium::A service made by the Israeli company of the same name that runs any modern iOS devices, some Android devices, or bring-your-own IoT devices on either the cloud or a self-hosted server. Compatibility is basically perfect, and libffi they have hardware iOS 10.3 to run the latest iOS arm64 binaries on x86_64 macOSversion, with varying degrees of successdebugging features and security tools, as well as IPA installing. Most things will fail They also have iPhone 7 to launch because they need frameworks/symbols that aren't available on macOSthe latest iPhone in terms of hardware. aah relies on the Mac Catalyst frameworks that are present [[Hypervisors#Type_1_hypervisors|The devices run on macOS 10an ARM hypervisor called "CHARM"]].15. Additionally aah requires the source code of the app to run '''For individuals, it, like the iOS simulator/emulator in XCodecosts 3 USD per hour''' for most use excluding some cybersecurity tools. https://twitterThe site also prohibits users under 18 from using their service.com/maczydeco/status/1155588054486310912 https://github'''The service is made for cybersecurity, not general use'''.com/zydeco/aah
;ipasimNative: ''ipasim'' (2017) is a high level emulator written in C++ that uses Microsoft's winObjC to recompile 64;macOS 11 and up::Since macOS 11 Big Sur, the 17th major operating system of the macOS line, the operating system for Mac computers has support for iOS and iPadOS applications for Apple Silicon-bit iOS based Macs. However, some apps into apps in livecannot be installed directly due to Apple DRM. This can be bypassed using an IPA file and PlayCover/Sideloady. It doesn't [https://support much .apple.com/guide/app-store/iphone-ipad-apps except for really basic ones-mac-apple-silicon-fird2c7092da/mac See this page]. It was more focused on If you have an ARM Mac, and want to emulate newer/modern apps then /games., native execution is the most recommended
:;xnu-qemu-arm64Cycada: A security : ''Cycada'' (2014), formally known as Cider and Chameleon before that is an unreleased research emulator created project made by a few folks at Columbia that ran iOS 5.1.1 and experimentally iOS 6 apps at a high, but not perfect quality and compatibility (see paper for list). It is based on pirated iOS libraries. It is seriously not recommended to initiate contact with the developers of the project, as they never planned on releasing it and want people to use their paper to reproduce it with "significant effort". All attempts to release it by Alephcontacting them have resulted in them saying they are not interested. You may try to recreate Cycada on your own, provided that you know the internals of Android, iOS, XNU, and Linux. Security Out of 69 tested apps, 19 apps fully work, 10 work with minor bugs that do not affect functionality, 15 have major errors that like TruEmuaffect functionality, and 27 crash. Only [https://github.com/darlinghq/darling/issues/1168#issuecomment-1115143186 one recreation] is known to exist, which is also unreleased, and it was made by the creator of DarlingHQ along with two other unknown individuals. It took about a year to develop, and one component of it can partially run was released. The one exception where some original code was published was [https://github.com/darlinghq/darling-newlkm here], to be reused in Darling later on. Jeremy Andrus was accused of being a sellout for leaving the project to work as a kernel programmer (Now a Cloud Computing Efficiency worker) for Apple. The project booted many 32-bit iOSapps successfully, albeit slowly. The last update to this project was in [https://dl.acm.org/doi/pdf/10.1145/3135974.3135981 '''2017''']. (NOTE: If you search "Cider APK", you will get iPhone 12 launcher adware) To see the paper, with launchd services working correctlyits specifications, its compatible apps, and possibly recreate it, see [http://jeremya.com/files/pub/2015/02/andrus-thesis.pdf here]
;Compatibility layer ([[Compatibility_layers|...]])?:;Darling::Although no iOS support exists at the moment, [https://www.darlinghq.org/ Darling] wants to add support for iOS apps in the “long term”. Although not stated, they might add support for other platforms based on iOS, such as tvOS or watchOS in the future.
==Our most recommendedHardware features==''This is an overall guide for people looking for table focusing on early iOS operating system and crucial hardware features that can be possible to emulated through software or will be possible in the near future. Including everything or niche modern iOS features (e.g. [[List_of_games_that_support_Pressure-Sensitive_Face_Buttons#iOS_Emulation|3D Touch / Pressure Sensitive Buttons]], [https://www.reddit.com/r/EmulationOniOS/comments/1dcrgy1/new_game_mode_coming_to_ios_18/ Game Mode]) would result in an endless list.'' {| class="wikitable" style="text-align:center;width:100%"|- style="font-weight:bold;"! colspan=2 | Name! TouchHLE! QEMU-iOS ! Corellium|-| colspan=2 | [[Wikipedia:IOS#Home_screen|Home screen]]<br/><small>This shouldn't be confused with emulatorfrontend/GUI.</small>| {{✗}}| {{~}}| {{✓}}|-| colspan=2 | Non-game apps| {{✗}}| {{~}}| {{✓}}|-| colspan=2 | [[Wikipedia:IOS#Notification_Center|Notification Center]]| {{✗}}| {{✗}}| {{✓}}|-| colspan=2 | [[Wikipedia:IOS#App_Store_bypasses|Sideloading/Installing]]| {{✓}}| {{?}}| {{✓}}|-| colspan=2 | Wi-Fi| {{~}}<abbr title="Local Area Network (LAN) only">*</abbr>| {{✗}}| {{✓}}|-| colspan=2 | Bluetooth| {{✗}}| {{✗}}| {{✗}}|-| colspan=2 | [[Wikipedia:Multi-touch#Applications|Multi-touch]]| {{?}}| {{?}}| {{?}}|-| colspan=2 | [[List_of_games_that_support_tracked_motion_controllers#iOS_Emulation|Motion sensors]]| {{✓}}[https://github.com/hikari-no-yume/touchHLE/blob/trunk/OPTIONS_HELP.txt#L33 *]| {{✗}}| {{?}}|-| colspan=2 | [[Wikipedia:IOS#Multitasking|Location]]| {{✗}}| {{✗}}| {{✓}}|-| rowspan=2 | Connectivity| [[Preservation_projects#Private_Platform_Servers|Game Center]]<br/><small>Achievements, Challenges, Leaderboards etc. If you have a </small>| {{✗}}| {{✗}}| {{?}}|-| [[Wikipedia:Apple_Push_Notification_service|Apple Silicon Mac Push Notification service]]| {{✗}}| {{✗}}| {{✓}}|-! colspan=5 | [[Wikipedia:List_of_Apple_codenames#iOS|OS versions]]|-| colspan=2 | iPhone OS 1| {{✗}}| {{✓}}| {{✗}}|-| colspan=2 | iPhone OS 2<br/><small>iPhone OS 2.2.1 was the last version compatible solely with ARMv6 chips.| {{✓}}| {{✓}}| {{✗}}|-| colspan=2 | iPhone OS 3<br/><small>Supported both ARMv6 and want ARMv7-A chips.</br>| {{✓}} <br> <small>(Only 3.0)</small>| {{✗}}| {{✗}}|-| colspan=2 | iOS 4<br/><small>iOS 4.2.1 was the last version supported ARMv6 chips.</small>| style="background: Orange;"|WIP| {{✗}}| {{✗}}|-| colspan=2 | iOS 5|style="background:skyblue;"|[https://github.com/hikari-no-yume/touchHLE#touchhle-high-level-emulator-for-iphone-os-apps Future goal]| {{✗}}| {{✗}}|-| colspan=2 | iOS 6<br/><small>iOS 6.1.6 was the last version compatible solely with 32-bit ARMv7-A chips.</small>|style="background:skyblue;"|[https://github.com/hikari-no-yume/touchHLE#touchhle-high-level-emulator-for-iphone-os-apps Future goal]| {{✗}}| {{✗}}|-| colspan=2 | iOS 7 to emulate 10<br/><small>Supports both 64-bitARMv8''x''-A and 32-bit ARMv7-A chips. iOS 10.3.4 was the last version that supported 32-bit chips.</small>|style="background:{{{color|#FFD2D2}}};"|[https://modern apps, just use Sideloady github.com/hikari-no-yume/touchHLE/issues/181#issuecomment-1777098259 Never]| {{✗}}| {{~}} (iOS 10.3.3 and DecryptDay 10.3.4 only)|-| colspan=2 | iOS 11 to install the app itself on your M1''present''|style="background:{{{color|#FFD2D2}}};"|[https://github.com/hikari-no-yume/touchHLE/issues/181#issuecomment-1777098259 Never]| {{✗}}| {{✓}}|-| colspan=2 | iPadOS|style="background:{{{color|#FFD2D2}}};"|[https://github.com/hikari-no-yume/touchHLE/issues/181#issuecomment-1777098259 Never]| {{✗}}| {{✗}}|-| colspan=2 | WatchOS|style="background:{{{color|#FFD2D2}}};"|[https://github.com/hikari-no-yume/touchHLE/issues/181#issuecomment-1777098259 Never]| {{✗}}| {{✗}}|-! colspan=5 | [https://developer.apple.com/documentation/xcode/application-binary-interfaces Supported ABIs]|-| colspan=2 | [https://M2 Macdeveloper. If you have an Intel Mac, try using “aah” which apple.com/documentation/xcode/writing-armv6-code-for-ios ios_armv6] (iPhone OS 1 – iOS 4.2.1)<br/><small>Supporting ios_armv6 ABI is your best optioncrucial for emulators due to compatibility and [[Preservation_projects|preservation]] reasons.</small>| {{✓}}[https://github.com/merryhime/dynarmic?tab=readme-ov-file#supported-guest-architectures *]| {{✗}}| {{✗}}|-| colspan=2 | [https://developer.apple.com/documentation/xcode/writing-armv7-code-for-ios ios_armv7a] (iPhone OS 3 – iOS 10.3. If you want 4)<br/><small>Supporting ios_armv7a ABI is crucial for emulators due to emulate compatibility and [[Preservation_projects|preservation]] reasons.<br/> Older applications and games often rely on the [[Wikipedia:ARM_architecture_family|ARM 32-bit (Cortex)]] architecture, which isn't used in newer hardware.</small>| {{✓}}[https://github.com/merryhime/dynarmic?tab=readme-ov-file#supported-guest-architectures *]| {{✗}}| {{✗}}|-| colspan=2 | [https://developer.apple.com/documentation/xcode/writing-arm64-code-for-apple-platforms ios_armv8.''x''a] (iOS apps, use 11.0 to ''present'')|style="background:{{{color|#FFD2D2}}};"|[https://github.com/hikari-no-yume/touchHLE for /issues/181#issuecomment-1777098259 Never]| {{✗}}| {{?}}|-! colspan=5 | [https://developer.apple.com/documentation/technologies Supported APIs]|-| colspan=2 | [https://developer.apple.com/documentation/opengles OpenGL ES x.x] (iPhone OS 2 apps, if your app – iOS 12.0)<br/><small>Supporting OpenGL ES x.x APIs is one of the only of the handful of supported appscrucial for emulators due to compatibility and [[Preservation_projects|preservation]] reasons.</small>| {{✓}}[https://github.com/hikari-no-yume/touchHLE?tab=readme-ov-file#development-status *]| {{?}}| {{?}}|-| colspan=2 | [https://developer.apple.com/metal/ Metal] (iOS 8 to ''present'')|style="background:{{{color|#FFD2D2}}};"|[https://github.com/hikari-no-yume/touchHLE/issues/181#issuecomment-1777098259 Never]| {{✗}}| {{?}}|}<references group=N4/> ==Enhancements=={| class="wikitable" style="text-align:center;width:100%"|- style="font-weight:bold;"! colspan=2 | Name! TouchHLE! QEMU-iOS|-|rowspan=1 | Graphics| [[Resolution|Resizable Internal Resolution]]| {{✓}}[https://github.com/hikari-no-yume/touchHLE/blob/trunk/OPTIONS_HELP.txt#L23 *]| {{?}}|-|rowspan=6 | Post-Processing| [[Shader_Presets|Shader Chain]]| {{✗}}| {{✗}}|-| [[Shaders_and_filters|Filters]]| {{✗}}| {{✗}}|-|[[Shaders_and_filters#AI-powered filters|AI-powered filter compatible]]<br/><small>([https://www.nvidia.com/en-us/geforce/news/gfecnt/nvidia-freestyle-ansel-enhancements-geforce-experience-article/ Freestyle])</small>| {{?}}| {{?}}|-| [[Wikipedia:Category:Anti-aliasing_algorithms|Post-rendering AA]]<br/><small>(FXAA, TXAA and if notMLAA/SMAA)</small>| {{✗}}| {{✗}}|-| [[Wikipedia:Comparison_gallery_of_image_scaling_algorithms|Post-rendering scaling]]<br/><small>(Sharp bilinear, you Lanczos and [[Wikipedia:GPUOpen#FidelityFX_Super_Resolution|FSR 1]])</small>| {{✗}}| {{✗}}|-|[[High_dynamic_range#Inverse_tone_mapping|Inverse tone mapping compatible]]| {{?}}| {{?}}|-| rowspan=5 | [https://tasvideos.org/Emulatorresources/Features TAS features]| [[Wikipedia:Macro_(computer_science)|Macros/Scripts]]/[https://tasvideos.org/LuaScripting Lua]| {{?}}| {{?}}|-| Rewind| {{✗}}| {{✗}}|-| Fast-Forward/Turbo Speed| {{✗}}| {{✗}}|-| Savestates| {{✗}}| {{✗}}|-| [https://tasvideos.org/Movies Movie recording/playback]| {{✗}}| {{✗}}|-| rowspan=3 | Input| [[Controllers#Mouse Injectors for Emulators|Keyboard input injection]]<br/><small>Early versions of iOS didn't support keyboard input.<br/>One way an iOS emulator can wait provide keyboard input for Cycada to release or get recreatedthese versions is through the injection method, but it likely won’t ever happenwhich sends keystrokes input data directy into emulated memory. If you just want to try the look and feel </small>| {{✗}}| {{✗}}|-| [[Controllers#Mouse Injectors for Emulators|Mouse input injection]]<br/><small>Early versions of the first iPhoneiOS didn't support mouse input.<br/>One way an iOS, devos19’s QEMU fork emulator can provide mouse input for these versions is through the best optioninjection method, which sends cursor input data directy into emulated memory. If you are emulating </small>| {{✗}}| {{✗}}|-| [[Controllers#Mouse Injectors for Emulators|Gamepad input injection]]<br/><small>Before [[Wikipedia:MFi_Program|MFi]] extended support in iOS 7 (unlocking gamepad compatibility for devices like the purpose [https://blog.logitech.com/2013/11/20/compatible-games-for-logitech-powershell-controller-battery/ Logitech Powershell Controller]).<br/> Earlier iOS versions (1-to-6) offered [https://www.gottabemobile.com/ios-6-gaming-ipad-controller-iphone/ no native gamepad support].</small>| {{✗}}| {{✗}}|-| rowspan=6 | Quality of something related life| [[Save_disk_space_for_ISOs#PlayStation_1|Streamable compression format]]| {{✗}}| {{✗}}|-| Per-Game Profiles| {{✓}}| {{✗}}|-| Command Line Options| {{✓}}| {{?}}|-| On-Screen Display<br/><small>Showcases messages, controller input state which is useful for cybersecurity or advanced testing not in the XCode emulatorspeedrunners, performance data, active settings, try and purchase Corellium, however if you are broke various notifications.</small>| {{✗}}| {{✗}}|-| Built-in On-Screen Control<br/><small>Simulating touch input on display via keyboard or a minor, your only real option gamepad. This QoL enhancement is TruEmu, even though it crucial for lots of touch input exclusive games.<br/>Also you can only be used use third party apps such as [https://apps.apple.com/us/app/shootingplus-v3/id1447087625 ShootingPlus V3] for testing low level iOS components because it cannot boot this.</small>| {{✓}}[https://github.com/hikari-no-yume/touchHLE/blob/trunk/OPTIONS_HELP.txt#L33 *]| {{✗}}|-| Big Picture Mode| {{✗}}| {{✗}}|-| rowspan=4 | Misc| [[Wikipedia:Variable_refresh_rate|Variable Refresh Rate compatible]]| {{✗}}| {{✗}}|-| [[Virtual_reality#VR_game_room_simulations|EmuVR support]]| colspan=11 | Exclusive to iOS[https://www.emuvr.net/wiki/Installation_Guide#Downloads libretro cores] at the moment. So there is no support. If you want |-| AI Service<br/><small>With the help of <abbr title="optical character recognition">OCR</abbr> and other techniques, the AI service can provide a live translation of a game, or text-to easily run '''VERY''' simple iOS apps -speech capabilities for the visually impaired among other things, either on Windows, use ipasim, even though demand or automatically.</small>| colspan=11 | Exclusive to [https://docs.libretro.com/guides/ai-service/ libretro cores] at the moment. So there is nearly zero people in this categoryno support.|-| Debug features| {{~}}[https://github. If you would like to run a few commercial iOS apps and games from China, use BlackThundercom/hikari-no-yume/touchHLE/blob/trunk/OPTIONS_HELP.txt#L131 *]| {{?}}|}<references group=N3/>
==History of failed iOS emulation attemptsScams==Many of the currently available '''"simulatorssolutions"''' only try recreating popular iOS apps (like browsers) in a PC application with no real emulation involved. Some notable [[Emulator scams|scams]] in such fashion are called '''iPadian''' or variations on the name, and are often '''malware'''. iPadian itself is not a real emulator and cannot actually emulate any iOS, iPadOS, or watchOS code and just use recreations that are limited in functionality and are not ports. “AIR iPhone” is also a simulator in Adobe Flash. Malware on Android also goes by the name “iEmu”, “Cider” and “Cycada”, based on the unfinished and unreleased projects of the same name, and is sometimes iOS launcher software that is possibly infected by malware. iOS emulators that aren't scams operate like XCode, where they cannot run non-development builds.*TikTok videos by the user “iPod Emulator Hype” appear to show QEMU-iOS running on an Android device and a web browser, however, the Android version is confirmed to be a VNC client and faked, with the HTML5 version likely fake as well.*Blog sites suggest “iOSEmus” as an iOS emulator for Android devices. In reality, it is an alternate App Store for iOS to install jailbreak tools including console emulators and other tools on iOS 11.
* A project Your best bet, until touchHLE supports your 32-bit app, ARM macOS is able to emulate various smartphones be virtualized without an ARM Mac (iPhone, iPod Touch, iPad, Apple TV 2Gfor 64-bit) called '''iEmu''', or a new emulation effort is ever started in 2011 but got mysteriously abandoned two years later before anything usable surfaced. All pages related to the project were removed. It's speculated Apple had a hand in this.* Nowadays, a malicious APK file going by the '''iEmu''' moniker is also being circulated on blogs run by script kiddies claiming to offer a way to run hope that whatever iOS apps on app you're interested in gets an Androidport. More often than notThis is very rare, they're uploaded with the intention of generating revenue from impressionable users (through pay-per-click URL shorteners) who fall easily especially for those types of scams.* There has been a project Japanese ones, as Android is perceived to provide a runtime for iOS apps be more open to run on '''Android''' called [http://systemspiracy.cs.columbia.edu/projects/cycada/ That appears to be gradually changing lately and isn'''Cycada'''] (formerly known t of as '''Cider'''). Not much progress has been made, and the original author was accused of being a sellout for leaving the project to work as a kernel programmer concern for Apple. The project booted many 32non-bit iOS gaming apps successfully. However, albeit slowly. The last update to this project was in [https://dl.acm.org/doi/pdf/10.1145/3135974the U.3135981 '''2017''']S. (NOTE: If you search "Cider APK", you will get iPhone 12 launcher adware) * There was also a project based on [[QEMU]] that usually went around by the name QEMU-s5l89xx (based on trend goes to iOS exclusively, including the part number of Faves, Bloom, and the original iPhone)official ChatGPT apps getting iOS versions first, or iVM. The last known commits to this project were and a trend of users in 2013Anglo-America discriminating against Android users, and it is unclear if this project will ever come forcing them to switch to iOS also may contribute to fruitionthe need for one.
Your best bet, until a new emulation effort is ever started, is to hope that whatever iOS app you're interested in gets an Android port==External links==*[[Wikipedia:Comparison_of_mobile_operating_systems|Comparison of mobile operating systems]] (Wikipedia)*Reddit: [https://www.reddit. This is very rare, especially for Japanese ones, as Android is perceived to be more open to piracycom/r/LegacyJailbreak/ r/LegacyJailbreak] (old devices) [https://www. That appears to be gradually changing lately and isn't of as much concern for non-gaming appsreddit.com/r/Jailbreak/ r/Jailbreak] (new devices)
{{Apple}}
[[Category:Mobiles]]
[[Category:Media Players]]
[[Category:iOS emulators|*]]
[[Category:Operating systems]]
[[Category:Mobile Operating Systems]]
[[Category:MAME Driver Status: Preliminary]]
[[Category:ARM-based]]
Anonymous user

Navigation menu