Emulators on iOS: Difference between revisions

See also: Category fix
Changed heading sizes
Line 23: Line 23:
;*See each Wiki Category [[:Category:Consoles|Consoles]], [[:Category:Computers|Computers]] and [[:Category:Arcade|Arcade]] for individual dedicated system pages to see more detailed comparisons and information about software emulators. Dedicated system pages provide more up-to-date listings and in-depth information on specific aspects like hardware features, peripheral support, and compatibility etc.
;*See each Wiki Category [[:Category:Consoles|Consoles]], [[:Category:Computers|Computers]] and [[:Category:Arcade|Arcade]] for individual dedicated system pages to see more detailed comparisons and information about software emulators. Dedicated system pages provide more up-to-date listings and in-depth information on specific aspects like hardware features, peripheral support, and compatibility etc.
;*Some games have [[Game engine recreations and source ports]] that run on iOS, which can be the better than emulators for their specific games.
;*Some games have [[Game engine recreations and source ports]] that run on iOS, which can be the better than emulators for their specific games.
=Background Information (WIP)=
==Background Information (WIP)==
Emulators were banned on the App Store for over a decade. Out of the blue, Apple allowed them in April 2024, under a few restrictions (most notably, they are not allowed to use JIT, which still requires sideloading).
Emulators were banned on the App Store for over a decade. Out of the blue, Apple allowed them in April 2024, under a few restrictions (most notably, they are not allowed to use JIT, which still requires sideloading).
==Installation Methods==
===Installation Methods===
===App Store===
====App Store====
Currently, the most recommended method to install most emulators on iOS devices is the Apple App Store. (A few emulators still aren't available here though).
Currently, the most recommended method to install most emulators on iOS devices is the Apple App Store. (A few emulators still aren't available here though).


===Sideloading===
====Sideloading====
Due to Apple restrictions, up to three apps can be sideloaded at a time (including Alt/SideServer, if applicable) and must be refreshed within one week to prevent from expiring without a paid Apple Developer account ($99/year). On iOS versions below 16.1.2 (excluding 15.7.2), MacDirtyCow's WDBRemoveThreeAppLimit exploit removes this restriction (compatible with AltStore).
Due to Apple restrictions, up to three apps can be sideloaded at a time (including Alt/SideServer, if applicable) and must be refreshed within one week to prevent from expiring without a paid Apple Developer account ($99/year). On iOS versions below 16.1.2 (excluding 15.7.2), MacDirtyCow's WDBRemoveThreeAppLimit exploit removes this restriction (compatible with AltStore).
;[https://altstore.io/ AltStore Classic]: An effective method to sideload by Riley Testut (developer of Delta) which doesn't require jailbreaking your iDevice. It requires a connected AltServer running on a computer connected by cable or Wi-Fi to install and sideload other apps.
;[https://altstore.io/ AltStore Classic]: An effective method to sideload by Riley Testut (developer of Delta) which doesn't require jailbreaking your iDevice. It requires a connected AltServer running on a computer connected by cable or Wi-Fi to install and sideload other apps.
Line 36: Line 36:
;[https://github.com/khanhduytran0/LiveContainer/releases LiveContainer]: (For post-sideloading): An IPA that allows you to run iOS app without actually installing it, allowing you to technically install unlimited apps (3 app/10 app id limits of free developer accounts do not apply) and have multiple versions of an app installed and multiple data containers. Supports JIT. JIT-Less Mode requires exporting your certificate (requires AltStore 2.2.1+/SideStore 0.6.2+).
;[https://github.com/khanhduytran0/LiveContainer/releases LiveContainer]: (For post-sideloading): An IPA that allows you to run iOS app without actually installing it, allowing you to technically install unlimited apps (3 app/10 app id limits of free developer accounts do not apply) and have multiple versions of an app installed and multiple data containers. Supports JIT. JIT-Less Mode requires exporting your certificate (requires AltStore 2.2.1+/SideStore 0.6.2+).


===Xcode===
====Xcode====
Apps can be manually built, signed, and sideloaded with Apple's Xcode, but this isn't recommended unless you know what you're doing.
Apps can be manually built, signed, and sideloaded with Apple's Xcode, but this isn't recommended unless you know what you're doing.


==Just-In-Time Enablers==
===Just-In-Time Enablers===
Apple doesn't allow Just-In-Time Recompilation (or JIT), some emulators require it in order to run at full speed, requiring sideloading and a JIT enabler or debugger. Popular options include
Apple doesn't allow Just-In-Time Recompilation (or JIT), some emulators require it in order to run at full speed, requiring sideloading and a JIT enabler or debugger. Popular options include
;[https://apps.apple.com/us/app/stikdebug/id6744045754 StikDebug]: Primarily developed by Stephen using jkcoxson's idevice library, StikDebug allows debugging/JIT enabling on sideloaded apps, requiring only a Jitterbug pairing file. Supersedes JitStreamer (EB).
;[https://apps.apple.com/us/app/stikdebug/id6744045754 StikDebug]: Primarily developed by Stephen using jkcoxson's idevice library, StikDebug allows debugging/JIT enabling on sideloaded apps, requiring only a Jitterbug pairing file. Supersedes JitStreamer (EB).
Line 45: Line 45:
;[https://faq.altstore.io/altstore-classic/altjit AltJIT]: Uses AltServer and AltStore to enable JIT, requires a Mac.
;[https://faq.altstore.io/altstore-classic/altjit AltJIT]: Uses AltServer and AltStore to enable JIT, requires a Mac.


=iOS/iPadOS=
==iOS/iPadOS==
==Multi-Systems==
===Multi-Systems===
{|class=wikitable style=text-align:center
{|class=wikitable style=text-align:center
!Name
!Name
Line 125: Line 125:
|}
|}


==Nintendo==
===Nintendo===
===GameCube / Wii===
====GameCube / Wii====
{| class="wikitable" style="text-align:center;"
{| class="wikitable" style="text-align:center;"
! Name
! Name
Line 147: Line 147:
|}
|}


===Nintendo Switch===
====Nintendo Switch====
{| class="wikitable" style="text-align:center;"
{| class="wikitable" style="text-align:center;"
! Name
! Name
Line 182: Line 182:
|}
|}


==Sony==
===Sony===
===PlayStation 2===
====PlayStation 2====
{|class="wikitable" style="text-align:center;"
{|class="wikitable" style="text-align:center;"
!Name
!Name
Line 202: Line 202:
|}
|}


===PlayStation Portable===
====PlayStation Portable====
{| class="wikitable" style="text-align:center;"
{| class="wikitable" style="text-align:center;"
! scope="col"|Name
! scope="col"|Name
Line 219: Line 219:
|}
|}


==Sega==
===Sega===
===Saturn===
====Saturn====
{| class="wikitable" style="text-align:center;"
{| class="wikitable" style="text-align:center;"
! Name
! Name
Line 237: Line 237:
|}
|}


===Dreamcast===
====Dreamcast====
{| class="wikitable" style="text-align:center;"
{| class="wikitable" style="text-align:center;"
! Name
! Name
Line 256: Line 256:
|}
|}


==Apple Inc.==
===Apple Inc.===
===Macintosh 68k===
====Macintosh 68k====
{| class="wikitable" style="text-align:center;"
{| class="wikitable" style="text-align:center;"
! scope="col"|Name
! scope="col"|Name
Line 274: Line 274:
|}
|}


==Multi- game engines==
===Multi- game engines===
===ScummVM (point-and-click adventure game engine)===
====ScummVM (point-and-click adventure game engine)====
{|class=wikitable style=text-align:center
{|class=wikitable style=text-align:center
!scope="col"|Name
!scope="col"|Name
Line 292: Line 292:
|}
|}


===OpenBOR===
====OpenBOR====
{| class="wikitable" style="text-align:center;"
{| class="wikitable" style="text-align:center;"
! Name
! Name
Line 309: Line 309:
|}
|}


==CHIP-8==
===CHIP-8===
===CHIP-8/MegaChip/SCHIP===
====CHIP-8/MegaChip/SCHIP====
{| class="wikitable" style="text-align:center;"
{| class="wikitable" style="text-align:center;"
! Name
! Name