Retro Mac OS 9.2 mit QEMU
Wir schreiben das Jahr 1992. Ganz Deutschland ist von PCs mit DOS und Windows besetzt. Ganz Deutschland? Nein. Eine kleine Gruppe von Apple Macintosh hört nicht auf, eine attraktivere Alternative zu sein. Gute Zeiten, an die man mithilfe von QEMU anknüpfen kann.
Ich fühle mich gerade so “retro”. Die Fantas haben ihre größten Hits neu aufgenommen, im Kopfhörer läuft “Die Da”, als wäre 1992 nie vorbei. An der Wand hängt das Mainboard meines alten PowerMac 7200 und ich frage mich: Kann ich auf meinem AMD Ryzen mit Manjaro Linux auch ein Mac OS 9 virtualisieren? Die Antwort heisst: Ja, ein bisschen zumindest.
Vorbereitung
Zuerst ist die QEMU Software wichtig. Hier brauchen wir auch die PPC-Unterstützung, auf Arch/Manjaro installiert man die so:
pacman -S qemu-desktop qemu-system-ppc
Wir brauchen ein Installationsmedium, ein ISO-Abbild der Mac OS 9.2 Original-CD. Der Download heisst macos-922-uni.iso
, ist 423MB gross und ich finde sie zB hier.1 Lade die Datei herunter und speichere sie in einem Pfad deiner Wahl. Wechsle dann mit dem Terminal in dieses Verzeichnis.
Achtung: Diese .iso Datei muss zunächst entpackt werden, sie ist nicht direkt bootfähig.2
7z x macos-922-uni.iso
Die entstehende Datei macos-922-uni/macos-922-uni.iso
ist bei mir dann 607MB gross. Wenn du beim Start die Fehlermeldung “No valid state has been set by load or init-program” erhältst, dann findet die virtuelle Maschine kein Startmedium.
Zudem benötigen wir ein Festplattenimage, das wir später zur Installation verwenden. 10 Gigabyte reichen vorerst vollkommen aus.
qemu-img create -f qcow2 macos-922-disk.img 10G
Installation von Mac OS 9 unter QEMU
Jetzt geht es an die Installation. Wir starten den Emulator und booten zunächst von der CD.
$ qemu-system-ppc \
-machine mac99 \
-m 512M \
-cdrom macos-922-uni/macos-922-uni.iso \
-hda macos-922-disk.img \
-boot d \
-g 1024x768x32 \
-device usb-mouse \
-device usb-kbd \
-rtc base=localtime
Mit etwas Glück startet der virtuelle PowerPC und bietet diese Ansicht:
Uns fällt auf: Es ist keine Festplatte zu sehen. Diese muss zunächst initialisiert werden: Öffne den Ordner “Utilities” und dort “Drive Setup”.
- Wähle den ersten Eintrag
<not initialized>
aus der Liste - Klicke auf “Initialize…”
- Wähle “Custom Setup…”
- Wähle oben als Partitioning Scheme “1 Partition” aus
- Klicke auf “OK”
- Klicke auf “Initialize”
Nach kurzer Zeit sollte die Festplatte mit dem Namen “untitled” in der Liste und auf dem Schreibtisch rechts oben erscheinen. Wer mag, kann die Platte im Finder historisch korrekt in “Macintosh HD” umbenennen, aber jeder Name ist gut.
Schließe jetzt die Fenster (File->Quit oder Taste Windows-Q) und beginne mit der Installation. Klicke dazu auf “Mac OS Install” auf der CD “Mac OS 9.2.2”. Nach der Auswahl des Zielmediums (die neue Festplatte), den Lizenzbestimmungen und der Auswahl der Optionen (keine nötig, kann jeder spielen wie man mag) geht es auch schon los.
Nach Abschluss der Installation müssen wir die VM erstmal herunterfahren, dazu verwendet man das Menü “Special->Shut Down”.3
Der Start des Mac OS 9
Ab jetzt verwende ich eine etwas andere Kommandozeile: Statt -boot d
(starten von CD) verwende ich -boot c
(starten von Festplatte). Alles andere kann gleich bleiben.
$ qemu-system-ppc \
-machine mac99 \
-m 512M \
-cdrom macos-922-uni/macos-922-uni.iso \
-hda macos-922-disk.img \
-boot c \
-g 1024x768x32 \
-device usb-mouse \
-device usb-kbd \
-rtc base=localtime
Dieses Mal sollte Mac OS 9.2 eine größere Zahl von Erweiterungen laden. Beim ersten Mal erscheint der “Mac OS Setup Assistant” und fragt Grundeinstellungen ab. Das Installationsmedium bietet leider keine deutsche Fassung und kennt keine deutschen Landeseinstellungen - gut, belassen wir es bei Englisch. Achtung, auch das Tastaturlayout ist englisches QWERTY. Da Mac OS 9.2 “Personal File Sharing” beinhaltet, müssen wir zum Start einen Benutzernamen und einen Rechnernamen angeben - die Werte sind aber ohne weitere Bedeutung. Nach 10 Schritten ist man fertig und klickt auf “Go Ahead”, zum Ende der Einstellungen dann auf “Quit”. Damit ist die Installation abgeschlossen.
Dateiaustausch
Wie bekommt man jetzt Daten in den Uralt-Mac oder wieder heraus? Meine Antwort ist: Ein AFP-Server (Apple File Protocol). Das Paket netatalk
ist in heutigen Distributionen aber viel zu neu, als dass Mac OS 9 noch damit verbinden könnte. Hilfreich ist dieser Fork: https://github.com/rdmark/Netatalk-2.x
$ ./bootstrap
$ .configure --enable-systemd
Wichtig ist dann die (letzte) Zeile in der Datei /usr/local/etc/netatalk/afpd.conf
:
- -transall -uamlist uams_guest.so,uams_clrtxt.so,uams_dhx2.so
Such dir ein Verzeichnis aus, in das du Dateien zum Austausch hereinlegen willst.
Mit systemctl enable afpd.service
und systemctl start afpd.service
startet man den Dienst (auch automatisch nach Neustart).
Im Mac OS 9 Finder kann man jetzt über den Network Chooser die IP-Adresse des Hosts angeben - und sollte sich mit Benutzername und (Host-) Passwort verbinden können.
Was geht, was geht nicht?
Mein moderner AMD Ryzen 9 emuliert einen PowerPC G3 mit einer Geschwindigkeit von 900MHz. Wow. Das allein finde ich ziemlich beachtlich. Was kann man jetzt praktisch damit anfangen, außer, sich über den nostalgischen Retro-Look zu freuen?
- 😍 Über den Kontrollstreifen unten links kann man die Bildschirmauflösung komfortabel setzen, die Änderung wird sofort gültig.
- 😍 Das Netzwerk Device wird erkannt, der Mac bekommt eine IP-Konfiguration. Wer Ping & Co sucht: Auf der CD befindet sich unter “CD Extras->WhatRoute Folder” das WhatRoute Programm, mit dem man IPv4 Ping und Traceroutes durchführen kann.
- 😢 Es gibt keinen Ton. Zwar gibt es einen QEMU Patch, der Support für die Apple SCREAMER Hardware hinzufügt, dieser ist aber noch nicht in mainline QEMU angekommen.
- 😢 Heutiges Internet ist quasi unbrauchbar, weil wir alles verschlüsseln, der alten Software aber die passenden Verfahren fehlen. Jeder Aufruf von Google & Co mit Netscape Navigator (mitgeliefert) oder dem Microsoft Internet Explorer 5 für Mac (mitgeliefert) scheitert daran, dass die alten Browser keine moderne SSL-Verbindung beherrschen.
Ich würde ja gerne alte Mac-Spiele spielen: PegLeg oder Apeiron, Barrack oder “The Incredible Machine”. Wer alte Spiele sucht, findet vieles zB im Macintosh Repository. Wenn du also einen Tipp für mich hast, wie ich mein Setup vervollständige, bin ich für jeden Hinweis in den Kommentaren dankbar!
Zu dem Zeitpunkt hätte ich wahrscheinlich ein 56k-Modem verwendet (und selbst das wäre toll gewesen) Der Download von 422MB hätte damit fast 17 Stunden benötigt. Heute geht das an meiner Gigabit-Verbindung durchaus etwas schneller.
Wer macht sowas? Eine ISO-Datei “auf eine CD brennen” und diese dann als ISO verteilen? Doppelt ver-ISO’t? Hat mich eine Weile Zeit gekostet, um herauszufinden, warum mein Mac nicht starten wollte.
ACPI gab es noch nicht. Wenn man den Emulator einfach stoppt, ist das, als wenn man früher den Rechner einfach ausgeschaltet hätte. Nicht gut…