Recycler un Mac mini en Macintosh SE avec un Raspberry Pi

Petit montage amusant : comme j’avais une coque de Mac mini 2010, un Raspberry Pi et quelques accessoires sous la main, je me suis fabriqué un « Macintosh SE » maison. J’ai utilisé Mini vMac, un adaptateur ADB pour un clavier et une souris de l’époque et quelques lignes de commandes pour lancer le logiciel au démarrage.
apple_mac_se30

Ce que j’ai utilisé ?

Une coque de Mac mini 2010 vide.
Un Raspberry Pi Model B+ (un modèle B ou A suffit), sa carte mémoire, son chargeur, etc.
Un Griffin iMate (adaptateur USB/ADB).
Une souris ADB et un clavier ADB (Apple Keyboard 2).
Un écran DVI en 1080p.
Une enceinte noname achetée quelques $ sur eBay, sur une carte son USB (j’y reviens).

En vrac

En vrac

Clavier et souris

Clavier et souris

Pour la partie logicielle, Raspbian et Mini vMac.

Préparer Mini vMac

L’émulateur de Macintosh que j’ai utilisé, c’est Mini vMac. Un classique, qui marche sur Raspberry Pi. Le plus simple pour le configurer est d’utiliser le module de configuration disponible sur le site. Il faut choisir Linux ARM, la machine (dans mon cas un Macintosh SE), etc. Le plus important, c’est surtout l’écran : le mieux est de prendre la moitié de la définition de votre écran (par exemple 960 x 540 pour mon écran 1080p) et d’agrandir le tout avec le « Magnify ». Ma liste de commandes pour ceux qui veulent sortir les sources. J’ai émulé le CPU à sa vitesse classique, mais le Raspberry Pi devrait permettre d’aller plus vite.

-t larm -lang fre -m SEFDHD -hres 960 -vres 540 -fullscreen 1 -sony-sum 1 -sony-tag 1 -speed z -mf 2 -magnify 1

Le site va vous proposer un fichier .tar comprenant les sources à compiler directement sur le Raspberry Pi.

On doit simplement décompresser (tar -xpf test.tar), entrer dans le dossier et faire make.

Vous aurez besoin d’une ROM (en fonction du Mac émulé), je vous laisse chercher. Pour le système, Apple propose des trucs sur son site, dont System 6, 7 ou 7.5.

Quand vous avez placé la ROM et le système dans le dossier, il faut lancer un serveur X (startx), aller dans le terminal et vérifier que ça fonctionne avec la commande suivante.

./minivmac MacOS6.dmg

Si ça marche, on quitte et on va modifier quelques trucs pour lancer le tout au démarrage.

Ca fonctionne

Ca fonctionne

Dans mon cas, j’ai du mettre une carte son USB : mon enceinte bas de gamme n’est pas amplifiée et le son est ridiculement bas sur la sortie jack du Raspberry Pi. J’ai donc pris une carte son dans mon stock, et il faut juste modifier une ligne pour l’activer.

sudo nano /etc/modprobe.d/alsa-base.conf

Et commenter la ligne options snd-usb-audio index=-2 (en mettant un # devant).

Ensuite, on va lancer le logiciel au démarrage.

Première étape, aller lancer le serveur X au démarrage.

sudo nano /etc.rc.local

Il faut aller ajouter cette ligne avant le exit 0.

su -s /bin/bash -c startx pi &

Ensuite, on vérifie que n’importe qui peut lancer le serveur X.

sudo dpkg-reconfigure x11-common

Il faut choisir Anybody.

Enfin, il faut simplement lancer Mini vMac au démarrage.

sudo nano ~/.xinitrc

Il faut ajouter deux lignes. La première force le clavier en FR (si vous avez un AZERTY), la seconde lance le programme. A vous de modifier en fonction de vos dossiers.

sudo setxkbmap fr
~/mini/minivmac ~/mini/MacOS6.dmg

Enfin, on peut aller modifier un fichier de config pour éviter les textes au démarrage.

sudo nano /boot/cmdline.txt

Il faut simplement supprimer console=tty1 de la ligne.

Ensuite… ça donne ça.

Ca marche assez bien, même si c’est un peu compliqué d’ouvrir des images disques et que le réseau n’est pas actif. En effet, Mini vMac ne supporte le réseau que sous Mac OS X. Prochaine étape, se construire un boîtier ou l’intégrer dans un « vrai » Macintosh ?