Mandelbrot auf dem Gigatron

Gigatron TTL Vorstellung – Teil 2

Das Gigatron ist ein Computer aus TTL Schaltkreisen der 7400 Familie. Es wird mit einem Takt von 6,25 MHz angetrieben und ist als Harvard-Architektur ausgeführt.

Das bedeutet Programmcode und Daten haben nicht denselben Adressraum. Das vereinfacht die Hardware und man benötigt weniger Schaltkreise. Das bedeutet aber auch man kann es kann kein Programm aus dem Datenspeicher (RAM) ausgeführt werden. Das klingt erst einmal etwas paradox, da man ja im praktischen Rechnerbetrieb nur Programme in den Datenspeicher (RAM) laden kann. Der Programm ROM ist ja nur lese Speicher und kann nicht so ohne weiteres beschrieben werden.

Das lässt uns jetzt zu den Möglichkeiten der Programmierung des Gigatron kommen. Als Erstes gibt es natürlich die Maschinensprache des Gigatron, die einzige die auch wirklich auf dem Computer ausgeführt wird. In dieser Sprache ist das Betriebssystem des Gigatron TTL geschrieben. Zum einen stellt es alle Funktionen des Rechners zur Verfügung, es erzeugt die Videoausgabe, den Sound, die Tastaturabfrage. Dies kann man zu den Low-Level-Funktionen zählen. Des Weiteren stellt es noch Tools zur Verfügung wie den Loader mit dem externe Daten in das Gigatron geladen und auch gestartet werden können. Neben ein paar Beispielprogrammen die auch noch im ROM vorhanden sind und über das Menü ausgewählt werde können gibt es dann noch Programme die es ermöglichen Programmcode im Datenspeicher (RAM) auszuführen.

Da haben wir als Erstes die vCPU eine Virtuelle 16 Bit CPU die ein Programm im RAM interpretiert. Damit ist es jetzt Möglich Programme in den RAM zu laden und dort ausführen zu lassen. Ein zweiter solcher Interpreter ist die Virtuelle 6502 CPU. Damit ist es jetzt möglich 6502 Code auszuführen. So läuft auf dem Gigatron eine angepasstes Apple I original Betriebssystem und einige alte 6502 Programme, wie das Original MS Basic mit Gleitkomma-Arithmetik. Wenn ich es richtig verstanden habe, wird auch noch an einer virtuellen 8080 CPU gearbeitet um ein CP/M auf dem Gigatron zu haben.

Für Programmierer die sich nicht bis auf die Assembler Ebene herunter begeben möchten, sind dann noch einige Hochsprachen vorhanden. Im ROM bereits enthalten ein Integer BASIC. Es gibt verschiedene weitere BASIC’s.

Es gibt auch Tools auf dem PC um Software für das Gigatron zu erstellen und einen Emulator zum Testen. So sind verschiedene Assembler für vCPU und nativen Code vorhanden. Es gibt auch einen BASIC Compiler, der Programme in Maschinencode übersetzt. Auch ein ANSI C Compiler der LCC ist vorhanden.