La ROM (Read-only memory ou mémoire morte est l’un des organes vitaux des Macintoshes « Old World »1En gros, tous les Macs de 1984 à 1998-99. L’iMac, le PowerMac G3 (Blue & White) et le PowerBook G3 (Bronze Keyboard) ou « Lombard » sont les premiers Macs « New World » sans Macintosh Tooolbox en ROM.. Grossièrement résumé, il s’agit d’une ou plusieurs puces de mémoire qui contiennent les instructions de démarrage de la machine (à l’instar du BIOS apparu à l’époque sur l’IBM PC), mais aussi et surtout une bonne partie du logiciel Système du Macintosh (la « Macintosh Toolbox »). Les machines « New World » (à partir du premier iMac) ont remplacé cette « boîte à outil » en mémoire morte par un simple fichier.
Les émulateurs Mini vMac, Basilisk II et dans une moindre mesure SheepShaver ont besoin du contenu de cette ROM copié dans un fichier pour émuler fidèlement les Macs de cette époque. Il fut un temps où les ayatollahs du copyright clamaient haut et fort qu’il était indispensable de posséder un exemplaire de la machine qu’on souhaitait émuler, afin de ne pas se mettre en délicatesse avec Apple, puisque les données contenues en ROM sont bien évidemment protégées par un copyright. Ce temps est à mon sens révolu, et le contenu des ROMs de machines vieilles de plus de vingt ans peut plus que légitimement être considéré comme de l’abandonware. Des archives contenant les ROMs de tous les Macintoshes « Old World » peuvent être téléchargées sur le Macintosh Garden, ou sur le Macintosh Repository.
Mais il peut être rigolo d’extraire soi-même la ROM d’un Mac que l’on possède pour l’utiliser dans un émulateur, que ce soit par sentimentalisme ou par dogmatisme… Pour ma part je penche du côté sentimental, et mes émulateurs tournent avec des ROM extraites de machines que je possède dans ma collection. Il existe à ma connaissance quatre « extracteurs de ROM » qui fonctionnent pour les Macs 68k et PPC Old World, du Macintosh 128K de 1984 aux PowerMacs G3 beiges de la fin des années 90.
L’auteur de Mini vMac propose CopyRoms, un tout petit programme sans interface qui récupère le contenu de la ROM dans un fichier. CopyRoms fonctionne en théorie sur tous les Macs 68k.
GetRom est très similaire à CopyRoms, et fonctionne aussi sur tous les Macs 68k. Il fonctionne aussi sur les Macs PPC, mais crée manifestement des fichiers incomplets.
CopyROM a l’avantage sur les précédents de montrer la somme de contrôle et la taille de la Rom avant de la copier, et propose même le luxe d’un dialogue d’enregistrement pour copier la Rom ailleurs que sur le disque où se trouve le programme. Il fonctionne sur tous les Macs 68k et PPC à partir du Système 6.0.4
ROM Grabber fonctionne de manière aléatoire sur les Macs PPC. Il m’a fait lamentablement planter plusieurs machines.
En résumé
CopyRoms pour les machines les plus anciennes, et CopyROM pour tout le reste ! La partie la plus difficile de l’exercice sera de transférer le programme sur le vieux Mac et de rapatrier la Rom copiée sur un ordinateur récent…
- 1En gros, tous les Macs de 1984 à 1998-99. L’iMac, le PowerMac G3 (Blue & White) et le PowerBook G3 (Bronze Keyboard) ou « Lombard » sont les premiers Macs « New World » sans Macintosh Tooolbox en ROM.