Schlagwort-Archive: VMware

In Vorbereitung auf das baldige Ende von Windows als meinem Haupt-Betriebssystem nach mehr als 23 Jahren experimentiere ich unter anderem mit VirtualBox als Ausführungsumgebung für alte Windows-Versionen, um darin alte Spiele auch weiterhin verwenden zu können. Nachdem sich in meinem letzten Artikel zu diesem Thema PCem als PC-Emulator für Windows 98 SE zumindest im Rahmen meiner Stichprobe bereits als überraschend kompatibel und ergiebig erwiesen hat, wollte ich den Schwierigkeitsgrad nun deutlich erhöhen. Heute geht es um das Thema Virtualisierung mit der beliebten Open-Source-Lösung VirtualBox.

Die Unterstützung für Windows 95/98 unter VirtualBox ist bekanntermaßen miserabel, weil die Entwickler darauf bedauerlicherweise überhaupt keine Lust haben. Daher gibt es auch keinerlei Guest-Additions (wie etwa unter VMware), und die Hardware-Unterstützung ist bestenfalls rudimentär. Keine gute Voraussetzung, um damit Spiele testen zu wollen. Aber was wäre die Community ohne ihr Ideenreichtum, denn es gibt durchaus fundierte Anleitungen im Internet, um zum Beispiel Windows 98 einigermaßen genießbar zu machen. Wie einigermaßen genießbar das am Ende sein würde, darüber wollte ich mir nun selbst ein Bild machen, um zu sehen, ob diese Option für mich eine Zukunft haben könnte.

Google funktioniert im Jahr 2020 immer noch mit dem beliebten Internet Explorer 5

Wie bereits im Artikel zuvor möchte ich betonen, dass das hier keine Anleitung werden soll, denn für interessierte Mitleidende gibt es bereits genug Hilfestellung im Netz. Stattdessen gehe ich auf die Dinge ein, die mir aufgefallen sind. Während man bei der Konkurrenz von VMware zur Installation von Windows 98 zum Beispiel mit einer vollständigen Unattended-Installation und sehr leistungsfähigen Guest-Additions umschmeichelt wird, bekommt man unter VirtualBox nicht einmal einen Knochen hingeworfen. Windows 98 verbrennt Out-Of-The-Box unter VirtualBox mangels ACPI-Unterstützung leider CPU-Zyklen ohne Ende, was das Betriebssystem komplett unbenutzbar macht. Das Problem ist zwar lösbar, allerdings muss man dazu den Installationsvorgang etwas modifizieren.

Am Ende des recht langwierigen Prozesses hat man ein lauffähiges und auch noch relativ reaktionsschnelles Betriebssystem, aber die Grafik- und Soundtreiber bleiben leider ein Problem, und die Gast-zu-Host-Kommunikation ist minimal. Eine Internetverbindung über LAN lässt sich noch mühelos konfigurieren, und schon darf man mit dem gruselig antiquierten Internet Explorer 5 ins Netz. Selbstredend gibt es für den senilen Browser hier nicht mehr viel zu sehen, da die meisten Webseiten längst auf völlig neue Technologien setzen. Um die Grafikeinstellungen zu verbessern, ist der SciTech Display Doctor 7 heute das Non-Plus-Ultra, der einen universellen SVGA-Treiber mitbringt, mit dem man Windows 98 auf bis zu 1600×1200 Pixeln und sogar 32 Bit Farbtiefe einstellen darf. Letzteres soll angeblich die Performance unter VirtualBox deutlich verbessern. Zumindest in dieser Hinsicht bekommt man also ein ganz brauchbares, modernes Setup in angenehmer Auflösung.

Das Thema Sound ist unter VirtualBox leider ein gewaltiger Hemmschuh. Die Virtualisierungssoftware bringt wahlweise eine virtuelle SoundBlaster 16 oder einen RealTek AC’97-Chip mit. Der geneigte Retrogamer bekommt natürlich feuchte Augen, wenn er nur die SoundBlaster 16-Option sieht, denn die wäre ja vollkommen ausreichend in 99% der Fällen. Aber leider haben die Flachzangen bei Oracle wohl an der Implementierung gespart. Die Leistung ist selbst mit dem offiziellen Creative-Treiber nur schwer zu ertragen, und MIDI-Unterstützung sucht man vergeblich, womit man in vielen Spielen von vor 1998 eben gänzlich ohne Musik auskommen muss. Aber es gibt Hoffnung, denn technikversierte Community-Mitglieder haben stattdessen einen obskuren Windows 95-Treiber für den AC’97-Chip aufgetan, der schließlich sogar MIDI ermöglicht. Dies ist heute offenbar das Mittel der Wahl, wenn man Windows 98 verwenden möchte. Das Umkonfigurieren der VM ist zum Glück nur eine Angelegenheit von Sekunden, und schon hat man eine andere Soundkarte drin.

Noch ist wenig los am Ballermann, in Holiday Island von 1996 in VirtualBox

Nun war es also an der Zeit, ein paar wirklich alte Spiele auf meine Installation loszulassen, darunter das von mir geschätzte und heutzutage kaum noch bekannte „Holiday Island“ von der Firma Sunflowers Interactive. Hierbei handelt es sich um ein witziges Aufbauspiel für ein Urlaubs-Resort auf einer tropischen Insel, ähnlich wie das neuere Rollercoaster Tycoon. Holiday Island ist berüchtigt dafür, bereits ab Windows 2000/XP nicht mehr problemlos lauffähig zu sein. Es lässt sich oft mit Hilfe von Registry-Tricks und anderen technischen Kniffen starten, zeigt dann aber während des Spielens unterschiedlichste Probleme, ist also nur noch bedingt spielbar. Das fällt natürlich nicht auf, wenn man immer nur die ersten 5 Minuten vom Spiel sehen will, um zu beweisen, dass es läuft.

Die Installation von Holiday Island verlief noch beinahe ohne Zwischenfälle, aber der CD-Kopierschutz machte daraufhin Schwierigkeiten, und die SVGA-Autoerkennung schlug bei mir fehl. Der erste erfolgreiche Start des Spiels nach einiger Bastelarbeit im Installationsverzeichnis machte Hoffnung und die Videos liefen einwandfrei. Nachdem ich die ersten Gebäude platziert hatte, erhielt ich einen Bluescreen in der VM, das Spiel lief aber weiter. Soundeffekte und Musik funktionierten mit dem AC’97-Soundchip ganz passabel. Die Performance war im großen und ganzen halbwegs brauchbar, wenn auch nicht optimal. Die Tonausgabe stotterte gelegentlich. Das Optionsmenü zeigte teilweise keine Beschriftungen. Nach etwa 15 Minuten fiel der Sound plötzlich grundlos aus. Fazit: Das Spiel ist spielbar, aber ein wenig leidensfähig muss man mindestens sein.

Zweites Spiel auf meiner Liste war Sim City 2000. Dieses ließ sich ganz einfach installieren und starten. Die Animation im Hauptmenü funktionierte nicht (benötigt wohl 256 Farben), und im Spiel gab es bei mir keine Soundeffekte, aber die MIDI-Musik läuft immerhin. Die Spielperformance sah soweit gut aus. Das Soundproblem ist natürlich eine gewaltige Einschränkung, die ich nicht lösen konnte, aber spielbar ist es irgendwie. Anschließend wollte ich Theme Hospital kurz testen, aber auch hier hat der CD-Kopierschutz den Start verhindert, und ich wollte keine Zeit damit vergeuden, noch mühsam eine lauffähige Version zusammenzupatchen.

Ein Weltraum-Monster greift Atlanta an, in Sim City 2000 aus dem Jahr 1993 in VirtualBox

Das dritte getestete Spiel war Myst von 1993, ein ebenfalls von mir sehr geschätztes Rätselspiel. Auch hier lief die Installation zunächst rund, bis der Installer mir mitteilte, dass er nun Apple Quicktime installieren wolle, woraufhin aber die Installation plötzlich beendet war, und nichts mehr passierte. Ein wenig verdutzt startete ich das Spiel, was auch funktionierte, aber es gab kein Introvideo zu sehen. Stattdessen lag direkt das mysteriöse Buch vor mir. Mit zwei Mausklicks konnte ich es öffnen um zum Pier der Myst-Insel katapultiert zu werden, aber das Spiel hing sich an dieser Stelle auf. Die Transition funktionierte nicht. Ein Neustart der VM war nötig. Das Experiment war für mich hier beendet.

Spiele unter Windows 98 in VirtualBox? Leider nein. Naja, einiges funktioniert natürlich, manchmal sogar erfreulich gut. Anderes dagegen klappt nur mit Einschränkungen oder überhaupt nicht. Die Spielekompatibilität ist hölzern und unkomfortabel, die Performance ok – wenn man Glück hat -, aber gern auch ruckelig und eher langsam, der Sound geht entweder nicht oder stottert. Videos funktionieren mal prächtig unter Holiday Island, aber in Myst leider wieder nicht. Selbstverständlich kann ich nicht ausschließen, dass meine Windows 98-Installation und meine VM-Konfiguration sich noch verbessern lassen, aber zumindest mit Hilfe der üblichen Anleitungen von Fans im Internet lässt sich meines Erachtens nicht viel mehr herausholen. Daher betrachte ich mein Setup dahingehend als nahe am Optimum. Und dieses ist unglücklicherweise wenig optimal um damit meine kleine (wenig repräsentative) Auswahl von Spielen zu spielen. Ich fürchte also, dieses Thema brauche ich künftig nicht mehr weiterverfolgen.

Alles trieft, alles klebt, die Affenhitze hat Deutschland fest im Griff, und wochenlang gibt es keinen einzigen Tropfen Regen, der die Qual ein wenig lindern würde. Während ich bei bestimmt 40 Grad unterm Dach vor mich hin transpiriere und es seit letztem Monat kaum terminfreie Tage gab, versuche ich im Umzugsstress meinen Blog nicht komplett zu vernachlässigen, auch wenn ich dafür nur noch zwischen Tür und Angel mal die Möglichkeit habe. Aber es kommen wieder bessere Tage, dafür garantiere ich. Die Gelegenheit ist günstig für einen Füllbeitrag zum Thema „Warum Windows manchmal eben doch großer Mist ist“. Hier habe ich zwei skurrile Dinge gesammelt, die mir beim Arbeiten (oder Zocken) mit Windows sinnlos Probleme bereitet haben.

Fangen wir mit dem größten Übel an: Ein Problem mit Windows Server 2003, das scheinbar schon so manchem die Schuhe beim Gedanken daran auszieht. Ich wollte einen gerade unter Windows laufenden Java-Prozess mit Hilfe des Tools jstack.exe untersuchen. Üblicherweise ist das gar kein Problem, man muss eben nur Process-ID wissen, und die erfährt man mit dem tollen Windows-Befehl tasklist. Soweit alles noch in Ordnung. Als ich dann aber jstack mit besagtem Parameter ausführen wollte, erhielt ich diese völlig nichtssagende weil absurd falsche Fehlermeldung: „Not enough storage is available to process this command.“ (im deutschen Windows „Nicht genügend Server-Speicherplatz verfügbar, um diesen Befehl zu verarbeiten„).

Einwandfrei. Nicht genügend Arbeitsspeicher bzw. Swap-Speicher für die winzige jstack.exe auf einem eigentlich gut ausgestatteten Windows-Server? Nein, ich glaube eher nicht. Aber danke für deine unbrauchbare Hilfe, Windows! Ich fand eine Microsoft-Hilfeseite, die versucht das Problem näher zu erläutern und Problemlösungen zu bieten. Mit Betonung auf „versucht“, weil Microsoft grandios daran scheitert, denn schon die Fehlermeldung an sich ist einfach Quatsch. Auch eine deutsche Hilfeseite führte mit ihren Anweisungen nur komplett in die Irre.

Zum Glück kannte jemand auf Stackoverflow.com die Lösung. Man muss jstack mit Hilfe von „psexec -s jstack.exe pid“ aufrufen, damit es richtig auf dem Zielrechner ausgeführt wird. Das hat also genau gar nichts mit zuwenig Speicherplatz o.ä. zu tun, wie Windows mir weismachen wollte. Wenn man noch nicht einmal die richtige Fehlermeldung angezeigt bekommt, wenn schon ein Fehler auftritt, dann weiß ich nicht, worauf ich mich bei Windows sonst noch verlassen können soll.

Das zweite Problem ist dagegen ein eher kleines, kürzlich entdeckt und gelöst auf einer LAN-Party, also einem gesellschaftlichen Event zum gemeinschaftlichen Zocken netzwerkfähiger Windows-Spiele. Besonders nervtötend ist es, wenn das Windows-Netzwerk an sich fehlerfrei eingerichtet ist, es aber dennoch vereinzelt Spiele gibt, in denen immer derselbe LAN-Teilnehmer (=ich) die Spiele der anderen nicht sehen kann, und umgekehrt. Die Liste in der Lobby ist leer, obwohl alle anderen bereits dem offenen Spiel beigetreten sind. Man sucht sich also einen Wolf, auf der Suche nach dem einen Fehler, der dafür sorgt, dass man in manchen Spielen für alle anderen unsichtbar ist. Die Fehlersuche wird allein dadurch erschwert, dass das Problem nur manche Spiele betrifft, und auch dann noch nicht einmal immer.

lanadapterDas Problem wäre natürlich gar keines, wenn man in solchen Spielen einfach eine Ziel-IP zum Verbinden eingeben könnte, aber so einfach machen es einem die Entwickler nicht. Könnte womöglich manche Spieler überfordern. Des Rätsels Lösung lag dann in der Existenz weiterer LAN-Adapter, die unter Windows installiert waren: darunter der VirtualBox-LAN-Adapter, Tunngle, bei anderen findet man dort etwa Hamachi oder VMware. Alle diese Adapter müssten – auch wenn sie im Moment nicht benutzt werden – explizit deaktiviert werden, weil die Spiele sonst in Versuchung kommen könnten, diese für die Netzwerkverbindung mit den anderen Spielern zu verwenden, anstelle des eigentlich höher priorisierten richtigen LAN-Adapters.

Die freie Virtualisierungslösung VirtualBox von Oracle (vormals Sun) liegt seit dem 22. Dezember in der Version 4.0 vor. Erstmals unterstützt diese Version das sogenannte Guest-Scaling. Darunter versteht man nicht etwa das Anpassen der Gast-Auflösung an die Host-Auflösung, sondern das nachträgliche Hoch- oder Runterskalieren von kleineren oder größeren Gast-Auflösungen. Bislang gab es stattdessen nur dicke schwarze Balken zu sehen, wenn die Host-Auflösung sehr viel größer war als die des Gastes.

Seit nicht weniger als drei Jahren warte ich auf diese Funktion, daher auch dieser Beitrag dazu. Von Nutzen kann diese Funktion z.B. dann sein, wenn Anwendungen in der Gastmaschine in einer fixen Auflösung laufen (z.B. Spiele wie Starcraft) und man diese aber trotzdem über die gesamte Monitorgröße nutzen will. Auch kann man nun Gäste schrumpfen lassen um so mehrere gleichzeitig laufende virtuelle Maschinen simultan auf einem Monitor überwachen zu können, ohne deren interne Auflösung zu ändern.

VirtualBox ist so ziemlich die spielefreundlichste und -kompatibelste verfügbare Virtualisierungssoftware und zudem noch frei. Microsofts Virtual PC und VMwares Workstation kommen da nicht ganz ran. VirtualBox ist vielleicht nicht ganz so komfortabel wie VMware Workstation mit seiner automatisierten „unattended“ Windows-Installation, und rein offiziell unterstützt VirtualBox keine Windows 9x-Gäste, aber wenn es um Windows NT geht, ist es meines Erachtens die beste Wahl.