Jouons encore avec les bêtas de Mac OS X. J’en ai déjà parlé, l’image qui apparaît au démarrage est une depuis Mac OS X Jaguar, alors qu’auparavant, c’était un Mac souriant, le « Happy Mac ». Entre les deux, Apple a testé au moins une autre image. Il s’agissait d’un Mac souriant plus stylisé, avec un message sous ce dernier. Et je me suis mis en tête de récupérer cette image.
L’image de démarrage en question. je n’ai pas réussi à faire une vidéo correcte avec ma carte d’acquisition, donc c’est filmé avec l’iPhone.
Première tentative, utiliser les programmes capables de modifier l’image. Peine perdue : ils ne prennent en charge Jaguar qu’après la version finale.
J’ai donc tenté à la main (et réussi). Première chose, donc récupérer un fichier BootX sur un CD de boot d’une vieille bêta, la 6C92 ou la 6C98.
Ensuite, il a fallu réfléchir. La structure est simple : on a une table de couleurs de 768 octets, suivie des images. En cherchant un peu, j’ai trouvé que toutes les tables utilisées commençaient par FFFFFF
. J’ai eu de la chance : cette suite d’octets n’était présente que trois fois dans le fichier. Une seule semblait correspondre à une table de couleurs, elle a donc été sauvée.
Seconde étape, récupérer l’image. C’est assez compliqué, parce qu’il s’agit d’une image en format brut (raw). En gros, il faut connaître la taille exacte en pixels pour placer les pixels correctement.
J’ai d’abord essayé de délimiter la zone contenant l’image. Ca a été assez simple : j’ai utilisé des fichiers BootX contenant des images connues pour déterminer quand terminait l’image, en supposant que les données étaient placées de la même façon dans tous les cas. Bonne pioche, j’ai récupéré une zone qui semblait correspondre.
Ensuite, j’ai eu plus de mal : ça ne semblait pas fonctionner. J’avais bien ce qui ressemblait à des images, mais impossible d’obtenir un truc propre. J’ai donc procédé empiriquement : comme je connaissais l’image à trouver, j’ai supposé qu’on avait une ligne vide, quelques pixels blancs, des gris, puis une ligne noire. J’ai découpé le début de l’image présumé, en prenant une largeur en pixels au hasard, en estimant par rapport aux autres images de démarrage qu’elle devait mesurer entre 40 et 80 pixels.
Après quelques essais empirique à base de copier/coller, conversions en hexadécimal, passage dans Photoshop et autres changements de tables de couleurs, j’ai trouvé la bonne valeur : 52 pixels de large. Ensuite, j’ai augmenté progressivement la hauteur, pour trouver l’image.
Là, j’ai eu un souci : premièrement, la taille de l’image en octets ne correspondait pas à une largeur de 52 pixels. Deuxièmement, le texte « hello » au démarrage était plus large que l’image du Mac. Troisièmement, je n’obtenais pas le texte « hello ».
En cherchant un peu, je me suis rendu compte que mon « image » était en fait composée de plusieurs images. En tâtonnant un peu, j’ai trouvé qu’il y avait le Mac souriant (52 x 44) suivi d’une série d’images. En cherchant encore un peu, je me suis rendu compte d’une chose simple : l’image « hello » et la boule qui tourne ne sont tout simplement pas dans le fichier BootX…
Au final, après un passage dans Photoshop pour convertir l’image correctement (cf. explications), voici le Mac souriant qu’Apple n’a finalement pas utilisé.
Pour le texte « hello » et pour la boule de plage (ou la pizza, comme vous voulez), c’est (a priori) stocké dans un autre fichier, mais avec la même structure. Les images sont en fait stockée directement dans le noyau de Mac OS X (mach_kernel
). Etant donné que le fichier est beaucoup plus gros, ma méthode empirique pour récupérer les fichiers RAW est à oublier. On peut remarquer assez facilement que les images ne sont pas stockées au même endroit : le texte et la boule apparaissent avec un petit retard, et ils ne sont pas présents quand on démarre en mode Verbose.
Il doit être possible de récupérer les données, un internaute en parle, mais ça dépasse franchement mes compétences.
Point amusant à noter, les utilisateurs râlent toujours autant, preuve en est ce sujet de forum sur la disparition du « Happy Mac » original.
Bilan du truc ? Il m’a fallu une grosse soirée (et une bonne demi-nuit…) pour récupérer l’image, mais c’est fait. Petit truc amusant, la personne qui avait découvert comment changer la à l’époque de la sortie de la version finale de Jaguar avait visiblement cherché comme moi, en tâtonnant un peu.
Mac OS X Jaguar a toujours été beaucoup plus simple à modifier que les autres versions de ce système d’exploitation. Il suffit de voir les thèmes disponibles à l’époque et toutes les bidouilles graphiques facilement réalisables et installables sans le moindre problème…
On ne peut pas vraiment dire qu’Apple aie gardé cet aspect « accessible » après Mac OS X Panther…
Intéressant !
Quelle est la police du texte « hello » ? parce que je me dis que un petit Photoshop avec l’image que tu as récupéré et je peux l’utiliser comme image de démarrage .
Aucune idée, c’est a priori une image en dur, donc je ne sais même pas si c’est vraiment une police
Bah voila qui va faire chic en avatar …
Merci