Live data from Hacker News

High-level emulator for iPhone OS apps

github.com

31–40 of 60 posts

Re: High-level emulator for iPhone OS apps

#31
post #4

Almost every program that I bought on the Steam store in 2009 runs flawlessly today on the latest Windows version, and even on new Linux distros that couldn’t have even been imagined in 2009. Exactly zero software that I purchased on the App Store since 2009 still functions at all, on the exact same platform. What a pathetic showing by Apple.

How much battery and storage do you want to burn for the privilege of emulating old ARMv6 binaries?

A lot. A modern iPhone is multiple orders of magnitude faster than the original.

Re: High-level emulator for iPhone OS apps

#32
post #4

Almost every program that I bought on the Steam store in 2009 runs flawlessly today on the latest Windows version, and even on new Linux distros that couldn’t have even been imagined in 2009. Exactly zero software that I purchased on the App Store since 2009 still functions at all, on the exact same platform. What a pathetic showing by Apple.

How much battery and storage do you want to burn for the privilege of emulating old ARMv6 binaries?

The entirety of iPhone OS 1.0 fits in the same storage requirements as the built-in wallpapers of the latest releases, so presumably about that much space? Presumably it could be downloaded when you actually have an app that needs it.

https://blog.timac.org/2020/1122-comparing-iphone-os-with-io...

Re: High-level emulator for iPhone OS apps

#33
post #6
post #4

Almost every program that I bought on the Steam store in 2009 runs flawlessly today on the latest Windows version, and even on new Linux distros that couldn’t have even been imagined in 2009. Exactly zero software that I purchased on the App Store since 2009 still functions at all, on the exact same platform. What a pathetic showing by Apple.

Is that really a fair comparison, though? The changes seen by smartphones (both hardware and software) in that period of time are much more dramatic than PCs saw in the same period. In 2009, PCs as a device category were mature already while smartphones were just getting started. Windows (and thus anything mimicking it) is also a bit of on outlier when it comes to backwards compatibility anyway. There aren’t too many…

On the one hand, yeah, Windows can claim compatibility back so far that it does extend into the PC platform's early-ish days. After that, we quickly fall into emulators; a copy of dosbox will happily run the great hits of the 90s... I'm not actually sure how to count that, though, since it is an emulator, but also it's a relatively easy emulator to support because the platform was so much more open than iPhone (and also just simpler).

Re: High-level emulator for iPhone OS apps

#34
post #11

Earlier quoted context omitted.

There’s nearly 0 demand for this why is why you can’t do this. If there was this would either be an OS feature or a very popular third party app.

It's not an OS feature because Apple has an aversion to maintaining any kind of compatibility layer for more than a few years, it's not a third party app because Apple doesn't allow JIT code (eg. high performance emulators) in third party applications on iOS. Demand isn't the only reason to make a feature, sometimes customers might want something only after they're given the opportunity to recognize it's value.

There are hacky ways to get JIT to work and you can run Dolphin and other emulators that way.

Re: High-level emulator for iPhone OS apps

#36
post #9
post #6

Earlier quoted context omitted.

Is that really a fair comparison, though? The changes seen by smartphones (both hardware and software) in that period of time are much more dramatic than PCs saw in the same period. In 2009, PCs as a device category were mature already while smartphones were just getting started. Windows (and thus anything mimicking it) is also a bit of on outlier when it comes to backwards compatibility anyway. There aren’t too many…

> Is that really a fair comparison, though? GP is highlighting a problem with Apple, and it's quite true. I have a licenses to Macomedia Fireworks (from 2010) for macOS and Windows. Windows version works still flawlessly. macOS dropped 32-bit support after Mojave (2018). I paid good money for Fireworks, and more importantly I loved that app.

Not much of a problem though outside of archiving concerns. Anyway, this is also the main reason windows sucks ass to use. Or used to be anyway; no idea if they've fixed the keybindings or reliance on the registry yet.

Re: High-level emulator for iPhone OS apps

#37
post #34

Earlier quoted context omitted.

It's not an OS feature because Apple has an aversion to maintaining any kind of compatibility layer for more than a few years, it's not a third party app because Apple doesn't allow JIT code (eg. high performance emulators) in third party applications on iOS. Demand isn't the only reason to make a feature, sometimes customers might want something only after they're given the opportunity to recognize it's value.

There are hacky ways to get JIT to work and you can run Dolphin and other emulators that way.

Not productizable and not something that you could rely on working in the longer term.

Re: High-level emulator for iPhone OS apps

#38
post #19

Earlier quoted context omitted.

Designing an app to emulate iOS games would be extemely difficult, let alone allowed on the app store. Backwards compatibility requires deep forethought and careful engineering as well as draconian enforcement. I think the technical difficulty plays a huge role here, when weighed against Apple's culture (sleek, minimalist) and the impact it would have on profit.

A modern iPhone sure but what about the iPhone 2/3G? That’s basically a low power ARM chip and we have Nintendo Switch emulators with very good performance. Anything pre-security chip should not be that difficult to emulate.

My guess is that while it may not be too much effort to get a mostly accurate emulator that works well enough for hobbyist use, it'd be a lot of effort to get something up to the compatibility and usability standards of an official product.

Many older apps may use undocumented functionality or non obvious quirks of the system that an emulator may miss, which means you'd need to have a QA team testing individual apps for compatibility.

Part of Apple's brand is usability and a lack of rough edges. The downside of that is that building a tool like this up to their standards would be prohibitively costly.

Re: High-level emulator for iPhone OS apps

#39
post #5

This is what osmeta did (bought by Facebook). I believe it shipped in whatsapp and messenger (see https://twitter.com/steipete/status/1007428817579859969 , https://news.ycombinator.com/item?id=11599617 ) but later fell out of favor and was replaced with react native and pure native rewrites.

A little bird told me that they wanted to open-source it but they were waiting for the Oracle v Google lawsuit to conclude, and that dragged on a long time, so maybe they have up.

Re: High-level emulator for iPhone OS apps

#40
post #11

Earlier quoted context omitted.

Perhaps it's a matter of priorities. Given how much more powerful today's iPhones are compared to those from 2009, Apple could run older apps in an emulator.

There’s nearly 0 demand for this why is why you can’t do this. If there was this would either be an OS feature or a very popular third party app.

Emulators aren't allowed on the App Store, so it couldn't be a third-party app.
Post reply on HN