Ouvrir le menu principal

iGeneration

Recherche

Un émulateur pour le premier iPhoneOS… dans sa version iPod touch

Pierre Dandumont

lundi 26 décembre 2022 à 12:00 • 7

iPod

Un développeur néerlandais, Martijn de Vos, a montré récemment un émulateur un peu particulier : il utilise QEMU pour lancer iPhoneOS 1.0 sur un iPod touch virtuel.

Un iPod touch virtuel sans trop de fonctions

Émuler un appareil iOS n'est pas totalement une première : Correlium le fait pour ses offres, par exemple. Mais la solution de Vos est open source et utilise QEMU comme base, un outil largement employé, multiplateforme et complet.

Il ne se connecte pas à Internet.

Il a choisi iPhoneOS 1.0 (oui, à l'époque iOS ne s'appelait pas encore iOS) dans sa toute première version pour un appareil… qui n'est pas l'iPhone. Il a en effet développé son programme pour émuler le premier iPod touch. S'il est techniquement assez proche de l'iPhone, il n'a pas de modem cellulaire, pas de Bluetooth, pas d'appareil photo. Il explique dans un premier billet ce qui fonctionne et ce qui ne fonctionne pas.

Vous ne lancerez pas vos applications préférées

Le processeur lui-même fonctionne, mais c'est logique : Apple utilisait à l'époque un modèle directement fourni par ARM, l'ARM11, et QEMU l'émulait déjà. Il a surtout dû développer les composants nécessaires à la prise en charge du stockage et quelques puces annexes, pour permettre à iPhoneOS de démarrer. Il a aussi implémenté la gestion partielle du multitouch (certains gestes ne fonctionnent pas) et un affichage en 2D. Il n'émule en effet pas encore le GPU de l'iPod touch (un PowerVR MBX Lite) mais l'OS et l'interface peuvent démarrer sans accélération vidéo, avec un rendu purement logiciel.

Calculatrice et alarme.

Si quelques applications livrées avec l'OS existent, n'espérez évidemment pas lancer vos jeux préférés : cette version du système n'acceptait pas les applications tierces et il manque encore pas mal de choses. Premièrement, il n'émule pas le Wi-Fi (donc l'iPod touch ne communique pas), l'audio, tout ce qui est lié au GPU, les capteurs ou l'USB. Deuxièmement, dans ce qui fonctionne, le clavier virtuel ne marche pas, c'est instable, les gestes avancés ne sont pas gérés et l'ensemble n'est pas persistant, c'est-à-dire que les modifications effectuées ne sont pas sauvegardées lors de l'arrêt.

Malgré tout, il s'agit d'un exploit : c'est le premier émulateur open source qui lance le système d'Apple. Et si vous avez envie d'essayer l'émulateur en question (et que la ligne de commande ne vous effraye pas), un second billet explique comment exécuter le programme.

illustration magazine 25 ans

MacGeneration a 25 ans !

Participez à la fête et découvrez l’histoire de votre site favori en précommandant notre magazine exclusif.

Je précommande le magazine