Programmieren auf dem Amiga
Seit Jahren will ich programmieren auf dem Amiga. Immer wieder ist mir ein Projekt dazwischen gekommen und Assembler habe ich noch immer nicht so recht verstanden. Das ändert sich nun.
Programmieren auf dem Amiga
Durch Zufall bin ich auf eine aktuelle Serie von Youtube Videos zum Thema Programmieren von Software für den Amiga gestoßen. Der Ansatz einer Toolchain auf dem Windows 10 Rechner mit virtuellen Amiga 1200 Geräten hat mir gefallen, weshalb ich den Schwung und den Weihnachtsurlaub nutze um meine eigenen Ideen umzusetzen.
Vorbereitungen
Im Focus des ersten Videos steht das Toolchain Setup. Es ist sehr langatmig und es wird sehr viel gemacht. Ich habe das Video in mehreren Tagen durchgearbeitet und die Fakten daraus in den ersten beiden Artikeln hier für den Blog zusammengefasst. Eine ordentliche Toolchain erleichtert die spätere Arbeit. Als Programmierer will man möglichst effizient arbeiten und hat keine Lust sich später um den Prozess rund herum zu kümmern. Wenn ihr den Einstellungen und Tipps folgt habt ihr nach den beiden Artikeln eine konfiguriertes Notepad++ in dem ihr Assembler Code schreiben könnt und über Tastenkürzel diesen Code in eine *.exe Datei kompilieren die ihr über weiteren Tastenklicks direkt auf virtuellen Amigas ausführt. Ihr braucht dazu nur frei verfügbare Software:
- WinUAE
WinUAE ist ein Programm um virtuelle Amiga Rechner zu emulieren. Von dort könnt ihr eure Amiga Lieblingsspiele spielen oder mit dem Amiga OS arbeiten. Ich habe euch ja gezeigt wie ich Amiga OS 3.9 für meinen Amiga 1200 dort erstellt und auf eine CF Karte geschrieben habe. Als Entwickler kann man darauf auch sehr angenehm Software für den Amiga schreiben, testen und debuggen. - Notepad++
Als Windows Nutzer kennst du vermutlich diesen Editor. Das ist wohl der effektivste Editor, der so vielseitig ist, dass man ihn mit Plugins auch für alle möglichen Anwendungsbereiche anpassen kann, so auch als Amiga Programmier IDE.
am besten ihr installiert euch die beiden Programme.
Virtuellen Amiga erstellen
Ich habe mir für Windows 10 die 64bit Version von WinUAE heruntergeladen. Diese Version ist vermutlich für alle Leser die Wahl, 32bit Programme machen auf heutigen Systemen eigentlich keinen Sinn mehr.
Wir starten nun WinUAE und ignorieren die Kickstart ROM Meldungen. Über den Punkt Quickstart links im Menü wählen wir als Modell den Amiga 1200 (A1200) aus. Damit werden die Standardeinstellungen dieses üblichen Amiga Modells gesetzt. Für uns ist der moderne Amiga eine gute Plattform. Wer noch mehr Retro Feeling haben will kann später mit etwas mehr Erfahrung immer noch auf den Amiga 500 umsteigen…
Der erste Schritt ist unter ROM der Pfad zum Amiga Kickstart ROM 3.1, der im Amiga 1200 eingebaut ist. Das ist vermutlich auch gleich ein Problem. Dieser Teil vom Betriebssystem ist auch heute noch geschützt, man muss sich diesen über eine Lizenz kaufen. Es gibt dazu im Internet Quellen (Amiga Forever), man bekommt die ROMs aber auch auf anderen Weg. Eure Suchmaschine hilft euch da sicher weiter. Wie auch immer, sofern ihr das ROM File habt müsst ihr dieses im Emulator angeben.
Im RAM Bereich können wir unserem virtuellen Amiga noch ein wenig mehr Ram (Chip und Slow) geben. Wir sollten zwar eine realistische Testmaschine bereitstellen, wir müssen uns das Leben aber auch nicht zu schwer machen. Solltest du später dein Programm auf echter Hardware laufen lassen wollen, dann kann man durch diese Einstellungen das Testen realistischer machen.
Unter CD & Hard drives legen wir uns 2 Festplatten an. Das sind zwei Ordner unter Windows, die wir als DH0 (für das Betriebssystem) und DH1 (für das Programm) als Festplatten einbinden. Die Einstellung ist super einfach gehalten, WinUAE kümmert sich um alles. Die Dateien werden später auch von Windows 10 aus normal änderbar sein.
Zeit unsere Konfiguration abzuspeichern. Ich nenne dieses Setup A1200Test.
Es nun auch Zeit die virtuelle Amiga Maschine zu testen. Ein Klick auf Start und ihr solltet das AmigaDOS sehen. Mehr als das vom ROM aus gestartete Basissystem ist aktuell nicht installiert, das holen wir aber gleich nach.
Mit der Taste F12 können wir jederzeit den Dialog mit den Einstellungen einblenden. Unter Floppy drives können wir auch zur Laufzeit Disketten Images laden und wechseln. Ich habe mir die 6 Installationsdisketten für Kickstart 3.1 heruntergeladen und lege die Disk 1 Install ein.
Startet man nun den virtuellen Amiga neu, dann gelangt man ins Workbench, welches von der Diskette geladen wird. Dort werden als Icons der RAM, die beiden Festplatte (benannt System DH0 und Dev DH1) angezeigt. Zusätzlich auch noch die Diskette. Diese öffnen wir und wählen im Install Ordner die Installation. Ich habe mich für die deutsche Installation entschieden.
Die Installation läuft nun fast automatisch ab. Ich habe überall die Standardeinstellungen ausgewählt. Man muss mehrmals die Disketten wechseln, das funktioniert jeweils mit den Aufruf des Dialogs mit F12. Nach einigen Minuten ist das Setup geschafft.
Nach der Installation die Diskette entfernen (Eject) und den virtuellen Amiga neu starten.
Das Symbol der System Festplatte ist nun anders und beinhaltet das installierte Betriebssystem. Wir können den virtuellen Amiga nun herunterfahren. Geplant ist ein zweiter Dev Amiga, wir erstellen dazu einen zweiten Ordner in unserem Amiga Verzeichnis und kopieren beide Unterordner DH0 und DH1 dort hin. Dadurch wird das gerade zuvor installierte System ebenfalls kopiert. So einfach kopiert man einen virtuellen Stand einer Software (man kann sich den auch gerne für weitere Maschinen wo abspeichern).
Amiga Test konfigurieren
Der Test Amiga soll später unsere erstellten Programme automatisch ausführen.
Die Startup-Sequence regelt was beim Systemstart passiert. Ihr kennt vielleicht noch das Equivalent von DOS genannt Autoexec.bat. Bei modernen Windows Systemen wäre das der Autostart. Bevor die Workbench geladen wird starten wir das Programm Text.exe von der zweiten Festplatte. Moment, Test.exe? Ja, das gibt es noch nicht, aber dieses Programm werden wir im laufe des Tutorials schreiben. Auf einen Tastenklick wird der Test Amiga automatisch gestartet und damit auch automatisch das entwickelte Programm ausgeführt.
Beim Debug System gehen wir genau so vor, jedoch wird Test.exe von einem Debugger aufgerufen. Der entsprechende Aufruf ist:
Für den Debug Amiga laden wir zwei Programme herunter: MonAm und ProPack. Diese entpacken wir im DH1 Ordner vom Amiga1200Debug.
Unter WinUAE laden wir nun die AmigaTest Konfiguration und speichern diese sofort wieder als AmigaDebug Konfiguration. Zuvor ändern wir aber noch die beiden virtuellen Festplatten auf den korrekten Ordner:
Wenn man alles richtig gemacht hat sollte der gestartete AmigaDebug Rechner folgende Ausgabe produzieren:
Die Fehlermeldung:
AmigaDOS error 205
kommt übrigens daher, dass auf dem Debug System aktuell die Test.exe nicht existiert und der Debugger keine Daten hat zum laden.
Wir haben nun 2 fertig konfigurierte Maschinen zum Testen und Debuggen unserer Software.
Fazit
Im ersten Teil dieser Artikelserie zum Programmieren auf dem Amiga haben wir 2 virtuelle Amiga 1200 Maschinen mit WinUAE auf einem Windows 10 System aufgesetzt. Mit diesen Test und Debug Devices können wir nun eigene Amiga Software schreiben und diese testen beziehungsweise debuggen. Im nächsten Teil wird die Toolchain fertig gestellt.
Alle Artikel dieser Artikelserie:
Programmieren auf dem Amiga
Programmieren auf dem Amiga – Teil 2
Amiga Assembler
Amiga Assembler – Teil 2
Amiga Assembler – Teil 3
Amiga Assembler – Teil 4
Amiga Assembler – Teil 5
Amiga Bibliotheken verwenden
Hallo Werner, danke für das ausführliche und detailierte Tutorial. Der erste Teil hat mir sehr gut gefallen, hoffe das es so weiter geht. Habe ich erst jetzt durch Zufall entdeckt und werde es komplett durchgehen.