Developer emulates iPhone OS on a computer with QEMU

For years, people have been able to run macOS on non-Apple computers thanks to Hackintosh tools. But when it comes to iOS, pretty much no one has been able to run it on other platforms – at least until now. A developer has successfully emulated the first version of iPhone OS (remember that name?) on a computer using QEMU.

iPhone OS 1.0 emulated without iPhone hardware

Martijn de Vos, also known as devos50, has used a lot of reverse engineering to emulate the very first version of the iPhone OS released for the first-generation iPod touch in 2007, after the iPhone was launched. The project took more than a year to work as the developer had to figure out how to simulate things like multitouch support and other hardware components.

In a blog post, de Vos explains that the hard part was emulating the hardware components of the iPod touch. This is why the developer chose to emulate the first version of the iPhone OS made for the iPod instead of the iPhone, since getting the iPhone version to work would require emulating even more components.

At the same time, de Vos also chose iPhone OS 1.0 due to the fact that this version has much fewer security mechanisms than newer versions of the operating system. “Contemporary Apple devices contain many additional hardware components, such as neural engines, secure enclaves, and a variety of sensors that will make the emulation of such devices much more difficult and time-consuming,” the developer explained.

Interestingly, the project only became a reality thanks to OpeniBoot – an open source implementation of Apple’s bootloader. The project was discontinued a long time ago, but it allowed users to do things like install Android on the first generations of iPhone and iPod touch.

But is it functional?

Despite a few bugs, the final project seems quite functional and iPhone OS 1.0 has been emulated using QEMU – an open source virtualization platform.

The system is fully navigable using mouse and keyboard, and most of the pre-installed apps work just fine. There are some situations that cause the system to crash, but it’s still impressive to see a version of iOS emulated on another platform.

The developer notes that this is probably the first time anyone has emulated the iPhone operating system using open source tools. Corellium, for example, sells virtual iOS devices, but all tools and code are private. Creating your own virtual machine isn’t exactly easy, but de Vos has shared all the details in a blog post for those interested in doing so.

For his next project, de Vos wants to emulate a second-generation iPod touch, which was released with iPhone OS 2.1.

FTC: We use monetized auto affiliate links. More.


Check out 9to5Mac on YouTube for more Apple news:

Leave a Reply

Your email address will not be published. Required fields are marked *