Developer Explains Challenges of Bringing Dolphin to iOS App Store

Apple’s recent decision to allow retro game emulators in the App Store made waves in the community. Following this, Delta emulator debuted on the App Store sparking discussions about other potential emulators, including DolphiniOS.

Dolphin iOS

However, hopes for DolphiniOS making its way to the App Store were dashed by Apple’s continued restriction on a crucial technology: Just-in-Time (JIT) recompilation, as explained by OatmealDome.

This technology is essential for translating PowerPC code, used in GameCube and Wii games, to ARM, which is compatible with Apple’s devices.

JIT is Dolphin’s key feature, allowing it to efficiently run GameCube and Wii games on devices like iPhones. When an emulated console calls for game code, Dolphin’s JIT translates the PowerPC code to ARM, enabling smooth gameplay.

But here’s the catch: Apple generally prohibits the use of JIT recompilers on iOS, with exceptions only for Safari and certain alternative web browsers in Europe.

Despite efforts by Dolphin’s developers, including a DMA interoperability request to Apple for JIT support, the tech giant denied their request, leaving the developers with limited options.

Without JIT, Dolphin can still operate using an “interpreter,” albeit at a significantly reduced speed compared to the JIT recompiler. To showcase the stark performance difference, developers released the following two videos of DolphiniOS in action—one using the interpreter and the other utilizing JIT.

Youtube video

Youtube video

While it’s technically feasible to submit DolphiniOS to the App Store using the interpreter, the performance would likely be subpar. This could result in numerous user complaints and potential rejection by Apple’s App Review due to the app’s usability issues.

So unless Apple reevaluates and relaxes its restrictions on JIT recompilers, DolphiniOS’s App Store release remains uncertain.

Want to see more of our stories on Google?

Add iPhone in Canada as a Preferred Source on Google

P.S. Want to keep this site truly independent? Support us by buying us a beer, treating us to a coffee, or shopping through Amazon here. Links in this post are affiliate links, so we earn a tiny commission at no charge to you. Thanks for supporting independent Canadian media!

Subscribe
Notify of
guest
1 Comment
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
raslucas
raslucas
2 years ago

It’d have been cool to include at least a hypothesis of “why” Apple disallows JIT within apps.

Maybe there’s security concerns as a general rule or something. Perhaps there are performance concerns.

1
0
Would love your thoughts, please comment.x
()
x