Amiga - Erste Schritte und Emulation

Tja, da hat man erfahren, dass man doch tatsächlich Amiga-Spiele auf dem PC spielen kann, oder man will einfach mal (wieder) mit AmigaOS herumbasteln. Und jetzt? Dummerweise ist der alte Amiga mittlerweile schon lange verkauft oder steht seit Jahren auf dem Speicher und man hat bereits alles vergessen außer vielleicht wie man einen Joystick bedient. Aber keine Angst, mit ein bißchen Geduld ist das Thema Emulation ganz einfach zu verstehen.

Grundlagen

Ein PC ist kein Amiga, soviel steht fest. Diese offensichtliche Feststellung hat leider ein paar unpraktische Konsequenzen:

Was heißt das jetzt für uns? Amiga-Programme können nicht direkt auf einem PC ausgeführt werden. Amiga-Disketten können vom PC nicht gelesen werden. Der PC verfügt nicht über die Amiga-Chips. Diese Probleme können durch einen Emulator gelöst werden. Dies ist ein Programm, das eine andere Hardwarearchitektur per Software nachbildet. Es gibt für alle möglichen Systeme solche Emulatoren, vom C64 bis zur Playstation. Natürlich ist der Amiga mit dabei. Der bekannteste Amiga-Emulator ist WinUAE. Genauer gesagt ist WinUAE eine Windows-Umsetzung des Unix Amiga Emulators UAE.

Aufgrund seiner Natur ist ein Amiga ein recht komplexes Stück Elektronik, und die Emulatoren sind auch nicht gerade für Anfänger, egal ob "Amiga-vorbelastet" oder nicht. Meist scheitert es bereits beim "ich hab jetzt den Emulator, was brauche ich denn noch?".

Was brauche ich?

Um mit einem Amiga-Emulator mehr zu machen als eine "ROM not found"-Fehlermeldung zu bekommen, benötigt man die folgenden Dinge:

Das Kickstart-ROM Image ist ein Abbild des ROM-Bausteins, welches den "festen" Teil des Amiga-Betriebssystems beinhaltet (weitere Infos siehe Workbench 1.x). Man bekommt es, indem man es von einem echten Amiga mittels des Transrom-Programmes ausliest, oder indem man das Internet danach durchstöbert. Es ist auch auf den "Amiga Forever"-CDs der Firma Cloanto zu finden. Da alle Betriebssystembestandteile des Amigas nach wie vor Urheberrechtlich geschützt sind, ist es mir leider nicht möglich, diese Dateien zum Download anzubieten. Anfragen per E-Mail oder dergleichen sind ebenfalls zwecklos.

Ein normaler Amiga 500 verwendet üblicherweise die Kickstart-Version 1.2 oder 1.3, welche davon man im Emulator verwendet ist (fast) egal. Version 2.0 und aufwärts machen bei einigen Spielen und Programmen Probleme, sind also nur für ernsthafte Anwendungen (ja, das geht auch) interessant. Lediglich Spiele für den Amiga 1200 benötigen meist Kickstart 3.0 oder höher.

Bei den Diskettenimages ist es ähnlich, nur handelt es sich hierbei um Abbilder von Disketten. Da wie bereits erwähnt der PC mit Amiga-Disketten praktisch nichts anfangen kann muß man diese Dateien auf einem echten Amiga mittels eines speziellen Disketten-Ausleseprogramms erzeugen. Details dazu siehe Anhang 1.

Die Grundeinstellungen des Emulators

WinUAE ist ein normales Win32-Programm, sollte also von Windows 98 bis Windows XP problemlos laufen. Es setzt DirectX voraus. Wenn man es gestartet hat, wird man zuerst mit der GUI konfrontiert:

Dies ist die Konfigurationsverwaltung. Da gewisse Programme mit manchen Amiga-Konfigurationen Schwierigkeiten machen kann man hier mehrere Konfigurationen verwalten und durch Doppelklick starten. Ein nicht zu unterschätzender Vorteil gegenüber einem echten Amiga :). Bei einer frischen Installation des Programms ist üblicherweise nur der "DEFAULT"-Eintrag vorhanden wenn überhaupt. Diese Konfiguration wird gestartet, wenn vor dem Klick auf OK keine andere gewählt wurde. Am praktischsten ist es im allgemeinen, wenn man diese Konfiguration einem Amiga 500 so ähnlich wie nur möglich macht. Dies ist unser erstes Ziel.

Um große Verwirrung zu vermeiden gibts hier eine vorgefertigte Konfiguration für WinUAE 8.22 Release 6 (und hoffentlich auch alle Nachfolgeversionen) : A500 Konfiguration. Einfach ab damit ins "configurations"-Verzeichnis im WinUAE-Verzeichnis.

Ein paar Anpassungen sind aber noch nötig. Wir fangen am besten mit dem Kickstart-ROM an. Im "ROM"-Tab gibt es ein Auswahlfeld für "ROM-File". Genau da muß der Pfad zu der Kickstart-Datei rein. Für Schreibfaule ist ein "Browse"-Knopf daneben. Ansonsten gibts hier nichts einzustellen.

Im "Display-Tab" kann man je nach eigener Rechnerleistung den "Refresh"-Wert anpassen (je häufiger, umso flüssiger die Animation, aber umso höher die Hardwareanforderungen an den PC). Beim "Sound"-Tab kann man je nach Wunsch die "Sound Emulation" auf "Enabled, 100% accurate" stellen, was die Tonqualität verbessert. Auch kann man an den Frequency, Stereo Mode und Interpolation-Werten rumspielen. Wenn der Sound stottert kommt entweder der PC nicht mit (also Frequenz etc. reduzieren) oder man sollte mal mit dem "Sound Latency"-Regler experimentieren.

Wer auf seinen Joystick bzw. sein Gamepad nicht verzichten will, der wirft einen Blick aufs Input-Tab und wählt sein Eingabegerät aus. In Ermangelung entsprechender Eingabegeräte kann man auch auf die Tastatur zurückgreifen. Das "Keyboard Layout B" ist beispielsweise wie folgt belegt:

Wenn man fertig ist, speichert man die Konfiguration wieder unter demselben Namen ab.

Starten des Emulators

Jetzt ist es soweit. Nach einem Druck auf den OK-Knopf verwandelt sich das Bild. Sofern man ein Kickstart-ROM der Version 1.3 verwendet sollte sich ein neues Fenster öffnen und der Inhalt von Schwarz nach Grau nach Weiß und schlußendlich zur berühmten Workbench-Hand wechseln.

Schön, jetzt haben wir da ne hübsche zweifarbige Hand. Und jetzt?

Der Amiga erwartet nach dem Einschalten immer ein bootfähiges Medium, sei es eine Diskette, eine Festplatte, ein CD-Laufwerk, eine PCMCIA-Speicherkarte oder was auch immer. Meist wird man aber mit Disketten und Festplatten arbeiten. Damit unsere virtuelle Freundin jetzt was sinnvolles macht, müssen wir eine "Diskette einlegen". Genauer gesagt, wir müssen dem Emulator ein Diskettenimage zum fressen geben. Nach einem Druck auf F12 öffnet sich wieder die GUI.

Im Floppies-Tab wählt man nun eine ADF-Datei beim Laufwerk "DF0:" aus und drückt wieder auf OK. Sofern das ADF bootfähig war sollte der virtuelle Amiga anfangen zu booten. Auf diese Art kann man auch "Disketten wechseln" sofern man dazu aufgefordert wird.

Ab jetzt befindet man sich endgültig in der "Welt" des Amigas.

Das Alternativuniversum - AmigaOS

Je nachdem was man jetzt anstellen will braucht man unterschiedliche Kenntnisse des Amiga OS. Für Spieler reicht die Fähigkeit, die Maus bzw. den Joystick zu bedienen, wenn man wieder mal mit Deluxe Paint arbeiten will sollte man zumindest die Laufwerksorganisation des Amigas kennen. Auch besitzen manche Spiele einen Spielstand-Requester, bei dem Laufwerksnamen und ähnliches auftauchen.

Die Laufwerksnamen des Amigas enthalten üblicherweise eine Art Typbezeichnung. DF0: heißt übersetzt soviel wie 1. Floppylaufwerk (Disk Floppy 0). Das zweite Laufwerk heißt dann DF1: usw.

Laufwerkstyp Üblicher Name
Diskettenlaufwerk DF0: bis DF3:
Festplatte DH0: aufwärts
CD-Laufwerk CD0: aufwärts
Dynamische RAM-Disk RAM:
Statische Resetfeste RAM-Disk RAD:

Die dynamische RAM-Disk ist immer vorhanden, die statische muß explizit eingerichtet und angemeldet werden. Dafür kann man von ihr booten, sie benötigt aber natürlich RAM-Speicher, je größer desto mehr.

Bei Programmen die strikt ein bestimmtes Laufwerk verlangen kann man entweder eine Diskette so nennen wie das Laufwerk, von der Shell aus ein Assign legen oder ein anderes Laufwerk unter einem anderen Namen neu mounten. Die letzten beiden Möglichkeiten werden in einem anderen Tutorial behandelt.

Ist man glücklicher Besitzer einer Workbench-Diskette ist womöglich auch die Shell bzw. das Amiga DOS interessant. Die AmigaDOS Kommandos sind prinzipiell denen einer typischen UNIX-Shell recht ähnlich, MS-DOS-Erfahrene werden sich ebenfalls schnell heimisch finden. Hier ein paar Unterschiede im Überblick:

Befehl DOS UNIX-Shell Amiga
Laufwerkswechsel cd <LAUFWERKSBUCHSTABE>: - cd <GERÄTENAME>:
Wurzelverzeichnis cd \ cd / cd :
Eine Ebene höher cd.. cd .. cd /
Neues Shell-Fenster command sh newcli(oder newshell)
Shell-Fenster schließen exit exit endcli(oder endshell)
Programm im Hintergrund ausführen nicht möglich <PROGRAMMNAME> & run <PROGRAMMNAME>
Datei umbenennen ren mv rename
Verzeichnis umbenennen ren mv rename
Dateien oder Verzeichnisse verschieben move mv move
Dateien oder Verzeichnisse kopieren copy cp copy
Datei löschen del rm delete
Verzeichnis erstellen mkdir mk makedir
Verzeichnis löschen rmdir rm delete
Textdatei anzeigen type cat type

Glücklicherweise kann man dem Amiga auch beibringen, auf andere Befehle zu hören. Im Verzeichnis "s" der Workbench-Disketten ab Version 1.3 findet sich eine Datei namens "Shell-Startup". Hier kann man mittels des Befehls "Alias" Befehlszuweisungen durchführen. "ALIAS cd.. cd /" zum Beispiel macht "cd.." zum Synonym für "cd /" und DOS-Freaks freuen sich.

Das wärs erstmal von meiner Seite. Bei Fragen und Ergänzungswünschen (Festplatteneinrichtung) bin ich wie immer unter der unten stehenden E-Mail-Adresse erreichbar.

Anhang 1: Wie erstelle ich ein Kickstart-Image oder ein Disketten-Image?

Im "Lieferumfang" von WinUAE befinden sich die beiden Programme "transdisk" (manchmal heißt es wegen der DOS-Namensbeschränkungen auch "transdis") und "transrom". Wie der Name schon sagt schreibt transdisk die Diskimages und transrom die ROM-Images. Diese Programme MÜSSEN auf einem ECHTEN Amiga ausgeführt werden.

Zum Amiga bekommt man die Dateien dann entweder mittels Terminalprogramm (ein SEHR einfaches aber für den Zweck vermutlich brauchbares ist auf der Extras-Diskette der Workbench 1.3) und Nullmodemkabel, oder mittels CrossDos sofern man einen Amiga mit mindestens Kickstart und Workbench 2.1 sein eigen nennt.

Beide Programme sind CLI-Programme, also nix mit anklicken und so. Sie schreiben beide ihre Ausgabe an die Standardausgabe, um jetzt normale Dateien zu erhalten muß man die Standardausgabe umleiten. Dazu gibt man ein:

Bei Transdisk: transdisk >dh0:image.adf
Bei Transrom: transrom >dh0:kick.rom

Die Dateinamen nach dem ">" sind hierbei beliebig wählbar. Das Standard-Quell-Laufwerk bei transdisk ist DF0: (also das eingebaute Bootlaufwerk).

Um Diskettenimages zurück auf eine Diskette in Laufwerk DF0: zu schreiben gibt man ein:

transdisk -w name_des_diskimages