SheepShaver

Software zur Emulation von MacOS

SheepShaver ist ein freier Apple-Power-Macintosh-Emulator für Unix mit X11 (Linux und BSD), macOS (PowerPC und Intel), Windows und BeOS als Wirtsystem. Als PowerPC-Emulator unterstützt SheepShaver Mac OS 7.5.2 bis 9.0.4 als Gastsysteme.

SheepShaver

Logo
Basisdaten

Entwickler Christian Bauer, Marc Hellwig, Gwenolé Beauchesne, u. a.
Erscheinungsjahr 1998
Aktuelle Version 2.5
(13. September 2022)
Betriebssystem BeOS, BSD, Darwin, Linux, macOS, Windows
Programmiersprache C++[1], C
Kategorie Emulation
Lizenz GNU GPL
sheepshaver.cebix.net
SheepShaver auf einer BeBox unter BeOS.
Entwicklungsgeschichte

Geschichte Bearbeiten

Da ShapeShifter und dessen Weiterentwicklung Basilisk II als 68k-Macintosh-Emulator ausgelegt sind können damit nur Mac-OS-Betriebssysteme für 68k-Macintosh-Rechner als Gast ausgeführt werden. Das letzte Mac OS, das diese Rechnerarchitektur unterstützt, ist Mac OS 8.1. Um auch neuere Versionen von Mac OS emulieren zu können, bedurfte es daher eines PowerPC-Emulators. Zusammen mit Teilen des Programmcodes von Basilisk II entstand 1998 SheepShaver für BeOS zuerst als Shareware, später als Teil von BeDepot.[2]

Der Name SheepShaver ist eine Anspielung auf ShapeShifter, den 68K-Macintosh-Emulator für den Amiga.[2] Bereits ShapeShifter wie auch Basilisk I und Basilisk II stammen in großen Teilen von Christian Bauer.

Nachdem BeOS nicht erfolgreich gewesen war, wurde SheepShaver 2002 als Open Source unter der GPL veröffentlicht. Gwenolé Beauchesne, ein Entwickler bei Mandriva Linux, der bereits 1999 zu Basilisk II beigetragen hatte, erweiterte den PowerPC-G4-Emulator ab 2003 um Just-In-Time translation”[3] und portierte den Emulator von BeOS nach Linux, Mac OS X und Windows. 2008 stellte er die Arbeit an SheepShaver ein.[4]

SheepShaver war der erste und bis Ende 2005 der einzige verfügbare PowerPC-Emulator mit G4-Prozessor- und AltiVec-Unterstützung. Am 20. Dezember wurde PearPC in Version 0.4.0 ebenfalls mit AltiVec-Unterstützung freigegeben.

Mit dem Entfernen der Classic-Umgebung in Mac OS X 10.5 „Leopard“ hat Apple die eingebaute Möglichkeit, alte Mac-Programme auf neuer Apple-Hardware zu nutzen, auch auf PowerPC-Macs genommen. Auf Intel-basierten Macs gab es bereits in der ersten Mac OS X-Version für diese Architektur, 10.4 „Tiger“, kein Classic Environment mehr. SheepShaver schließt diese Lücke: Es ist derzeit (Stand: 2014) die einzige Möglichkeit, für Mac OS geschriebene Programme auf Intel-basierten Macs sowie auf allen Macs, auf denen Mac OS X 10.5 und neuer läuft, zu nutzen. Dabei ist es sowohl auf PowerPC- als auch auf x86-Rechnern stabil und ausreichend schnell.[5]

Unterstützte Gastsysteme Bearbeiten

Als stabil gelten Mac OS 7.5.2 bis 8.6, jedoch wird auch Mac OS 9.0.4 experimentell unterstützt. Die neueren Mac-OS-Betriebssysteme Mac OS 9.1 bis 9.2.2 sind nicht lauffähig, da diese eine MMU voraussetzen, die von der PowerPC-Emulation nicht bereitgestellt wird.[6] macOS ist nicht lauffähig.

Zur Ausführung von Mac OS benötigt SheepShaver ein Abbild von einem Mac OS ROM, in dem sich der Macintosh-Baukasten befindet, wobei das verwendete ROM-Abbild die Kompatibilität zu einer bestimmten Mac-OS-Version festlegt.[7] Bei älteren Macintosh-Computern (später als “Old World” bezeichnet) war das ROM in seiner Gesamtheit noch fest in einem ROM-Chip auf der Hauptplatine des Computers untergebracht. Dieses kann auf der originalen Hardware ausgelesen und in eine Datei gespeichert werden, die ShapeShifter, Basilisk II und SheepShaver als ROM-Datei verwenden können. Bei neueren Macs (von Apple “New World” bezeichnet) wurde eine Trennung zwischen Boot-ROM (“Low-Level” ROM) und “Mac OS ROM” (“Higher Level ROM”) eingeführt.[8] Diese ROM-Dateien werden von SheepShaver benötigt, um ein damit unterstütztes Mac OS starten zu können.[9] Das Mac-OS-ROM (“Higher Level ROM”) ist ab Mac OS 8.5 für “New World”-Macs bereits Bestandteil des Betriebssystems. Das noch benötigte Boot-ROM (“Low-Level ROM”) könnte zwar von einem existierenden Power Mac ausgelesen werden, jedoch bietet Apple auch offizielle ROM-Updates an, aus denen das jeweilige ROM als Abbild ebenfalls entnommen werden kann.[10]

Technik Bearbeiten

SheepShaver emuliert generische PowerPC-Hardware; um zu Mac OS kompatibel zu sein, werden die originalen Macintosh-ROMs benötigt. Damit bietet SheepShaver folgende Funktionen:[11]

  • kompatibel mit den Gastsystemen Mac OS 7.5.2 bis 9.0.4 (je nach verwendetem Mac OS ROM)
  • PowerPC-G4-Emulation, mit JIT translation auf IA-32 (32-Bit-x86, i386), x64 (64-Bit-x64, auch x86-64 oder amd64) und MIPS
  • native Ausführung auf PowerPC-G4-Hardware (Virtuelle Maschine)
  • Kopieren und Einfügen zwischen Gast- und Wirtsystem
  • Dateiaustausch über das Unix-Symbol auf dem Schreibtisch im Gastsystem
  • Ändern der Auflösung sowie Anpassung des Farbraums an das Wirtsystem zur Laufzeit
  • QuickDraw-2D-Videobeschleunigung für die Funktionen BitBlt und FillRect
  • Audio-Ausgabe in Stereo mit CD-Qualität
  • Netzwerk: Internet- und LAN-Verbindung über Ethernet und PPP mit allen Mac-OS-Programmen, die Open Transport unterstützen

Durch die JIT-Emulation erreicht SheepShaver auf Nicht-PowerPC-Systemen eine annehmbare Geschwindigkeit von in etwa einem Achtel des Wirtssystems.[11] Verglichen mit einem Power Mac G4 mit 400 MHz läuft Mac OS auf einem 32-Bit-x86-System mit 3,2 GHz sogar etwas schneller.[12]

Distribution Bearbeiten

Die ursprünglichen Entwickler, Christian Bauer und Marc Hellwig, stellen auf ihrer Homepage nur sehr alte Versionen zur Verfügung. Auch auf der Homepage von Gwenolé Beauchesne, die inzwischen nicht mehr erreichbar ist, ist die letzte Version aus dem Jahr 2008.

Auf E-Maculation gibt es eine aktive Entwicklergemeinde, die aktuelle Builds für verschiedene Betriebssysteme bereitstellt. Mit Stand 2014 wird sogar OS X 10.9 als Wirtsystem unterstützt.

Da SheepShaver unter der GPL steht, können viele Entwickler zum Fortbestand des Emulators beitragen. Derzeit wird Basilisk II und SheepShaver (die Teile des Quelltextes gemeinsam verwenden) auf GitHub bereitgestellt.

Neben den Builds für Linux (PowerPC sowie x86, 32-Bit und 64-Bit), Mac OS X (PowerPC und Intel, 32-Bit) und Windows (32-Bit) gibt es auch Binaries für Darwin, FreeBSD, Mac OS X (64-Bit, Intel), NetBSD und Windows (64-Bit).

Siehe auch Bearbeiten

Weblinks Bearbeiten

Einzelnachweise Bearbeiten

  1. The sheepshaver Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 18. Juli 2018).
  2. a b SheepShaver FAQ (englisch), abgerufen am 19. August 2014
  3. gibix.net (Memento vom 9. Februar 2006 im Internet Archive)Vorlage:Webarchiv/Wartung/Linktext_fehlt
  4. SheepShaver (englisch) im E-Maculation-Wiki, abgerufen am 19. August 2014
  5. SheepShaver Brings the Classic Mac OS to Intel Macs and Leopard (englisch) auf Low-End-Mac, Alan Zisman, 2. Mai 2008, abgerufen am 19. August 2014
  6. What about using Sheepshaver to emulate Mac OS 9.2.2 (englisch) im E-Maculation-Forum, abgerufen am 19. August 2014
  7. Macintosh ROM Images, E-Maculation wiki (englisch), abgerufen am 19. August 2014
  8. Unterschiede zwischen dem Mac OS ROM und dem bootROM, abgerufen am 19. August 2014
  9. Mac OS: Matching Mac OS ROM File To Mac OS Version (englisch), abgerufen am 19. August 2014
  10. Extracting a ROM for use in SheepShaver using Basilisk II, E-Maculation wiki (englisch), abgerufen am 3. September 2014
  11. a b SheepShaver (Memento vom 13. Februar 2006 im Internet Archive), Gwenolé Beauchesne Wiki (englisch), abgerufen am 19. August 2014
  12. Benchmarks (Memento vom 9. Februar 2006 im Internet Archive), Gwenolé Beauchesne Wiki (englisch) abgerufen am 19. August 2014