Reviews

Der erste Forth-Computer: Jupiter-Ace

Neue Dimensionen

Der erste Computer für die Programmiersprache Forth ist als Home-Computer erhältlich und feiert eine großartige Premiere.

Die Computer von Apple und ITT konnten durch eine Zusatzplatine mit der Programmiersprache Forth arbeiten. Diese Sprache wird durch einen „threaded“-Code und Postfix- (oder invertierte polnische) Notation charakterisiert. Daher auch die Bezeichnung Postfix-BASIC. Der Jupiter-Ace arbeitet mit dieser schnellen und frei programmierbaren Prozeßsprache, die für spezielle Steuerungsaufgaben geschaffen worden ist. Forth unterstützt die modulare Programmierung des Anwenders und lässt sich beliebig erweitern. Man kann praktisch seinen eigenen Befehlssatz für zugeschnittene Spezialaufgaben schreiben, ohne dass der Jupiter-Ace einen Fehler meldet.

Forth ist eine sehr maschinennahe Sprache, die sich in diesem Fall auf den Mikroprozessor Z-80 bezieht. Jedoch lassen sich CP/M-kompatible Files erzeugen. Die Verarbeitungsgeschwindigkeit von Forth ist wesentlich höher als beispielsweise BASIC. Trotzdem zählt Forth zu der Gruppe der Interpreter-Sprachen. Ein Vergleich mit den bekannten BASIC-Computern zeigt die großen Unterschiede in der Verarbeitung. Die Geschwindigkeit ist teilweise um den Faktor 10 schneller.

Die Hardware

Der Jupiter-Ace hat die Abmessungen von 215 mm Breite, 190 mm Tiefe und eine Höhe von 35 mm. In dem Gerät befindet sich der Mikroprozessor Z80, der mit einer Frequenz von 3,25 MHz arbeitet. Die Befehle und das Monitorprogramm sind in einem 8-KByte-EPROM und die Anwender-Programme werden in einem 3 KByte-RAM gespeichert.

Auf der Rückseite des sehr flachen Gehäuses befinden sich zwei Steckerleisten für die Erweiterungen. Leider sind in dem ausgezeichnet englisch geschriebenen Handbuch keine genauen Steckerbelegungen angegeben.

Durch ein Kabel wird der Computer mit dem Fernsehschirm verbunden. Das externe Netzgerät ist ebenfalls anzuschließen und nach denn Einschalten der Betriebsspannungen erscheint unten links im Fernsehbild der Cursor. Leider erkennt man an der Verbindung zwischen Fernsehgerät und Computer, dass die Entwickler früher bei Sinclair gearbeitet haben. Das Fernsehkabel ist mehr als verbesserungswürdig.

Funktion*          Jupiter   BBC    VC20   Spectrum   ZX81
Leerschleife        0,12      0,67    1,3    4,7      17,7
Nummern schreiben   7,5      13,5    26     19       430
Symbole schreiben   0,62      1,3    3,1     7,5      24
Addition            0,45      1,4    5,5     7,5      28
Multiplikation      0,9       1,6    6,5     7,7      32

* gilt für jeweils 1000 Operationen und die Werte sind in Sekunden angegeben

Das Arbeiten

Nun gibt man VLIST ein und drückt die ENTER-Taste. Auf dem Bildschirm erscheint der Text mit 32 Symbolen, also Zahlen und Buchstaben pro Zeile und 24 Zeilen stehen uns zur Verfügung. Die Wiedergabe erfolgt in Schwarzweiß.

Die Grafik hat eine Auflösung von 84 x 48 und lässt ein Plotten, Löschen und Überplotten zu. Dabei sind 126 Symbole direkt oder invers darzustellen. Diese Auflösung lässt sich bis auf 256 x 192 steigern. Mit dem Befehl 30 20 1 PLOT erscheint im Bildschirm sofort ein Punkt. Der Wert 30 steht für die X- und der Wert 20 für die Y-Koordinate. Nach dem Eingeben der Werte muss nur die ENTER-Taste gedrückt werden. Neben dem Punkt erscheint oben die komplette Befehlszeile und ein OK. Damit ist der Befehl ausgeführt.

Vertippt man sich, drückt man die SHIFT-Taste und die DELETE-LINE. Die eingetippte Programmzeile wird sofort gelöscht. Die fertigen grafischen Zeichen beschränken sich auf acht Möglichkeiten. Dafür wird man durch die Sounderzeugung des Computers weitgehend entschädigt. Mit der Taste GRAPHICS in Verbindung mit der SHIFT-Taste erhalten wir die Grafik.

Die Besonderheiten

Die Eingabe der Daten erfolgt über eine Tastatur, die etwas gewöhnungsbedürftig ist. Es ist zwar ein mechanischer Druckpunkt vorhanden, aber die Tasten müssen genau von oben betätigt werden. Gibt man einen Befehl ein und druckt die ENTER-Taste, erscheint der Text in der obersten Zeile und der Computer hat diesen Wert übernommen. Bei einem Fehler wird der noch richtige Teil übernommen und der Anfang des Fehlers durch ein Fragezeichen angezeigt. Mit der Taste DELETE LINE lässt sich der fehlerhafte Restteil löschen.

Die Umschaltung zwischen Groß- und Kleinbuchstaben erfolgt über SHIFT. Die Belegung der Sonderzeichen erreicht man über SYMBOL SHIFT. Ist eine Zeile im Bildschirm voll ausgeschrieben, übernimmt die nächste Zeile den weiteren Taxt. Erst wenn die ENTER-Taste gedrückt wird, übernimmt der Computer den Text und legt diesen im RAM-Speicher ab. Werden nur große Buchstaben für die Texteingabe benötigt drückt man die CAPS-LOCK-Taste.

Forth gegen BASIC

Wir geben folgende Multiplikation ein, die uns sofort den wesentlichen Unterschied zu BASIC zeigt:

DOUBLE 2 * . ;

Mit dem Doppelpunkt beginnt die Programmzeile. DOUBLE gibt die Nummer im Stack an und mit der Zahl 2 folgt der Wert. Danach kommt das Multiplikationszeichen und mit dem Punkt wird die freie Stelle gekennzeichnet. Der Abschluss ist ein Strichpunkt oder ein Semikolon. Nach dem Drücken von ENTER erscheint die Zeile oben im Bildschirm und ist mit OK versehen.

Die zweite Textzeile beginnt mit 23 DOUBLE und wird mit ENTER beendet. Während der Übernahme wird sofort die Rechnung durchgeführt und in der Textzeile erscheint der Wert 46 mit einem OK. Die Rechnung ist damit abgeschlossen.

Ein Arbeiten mit einem Dezimalkomma ist nicht möglich, aber im Gegensatz zu BASIC sind zahlreiche neue Definitionen von arithmetischen Wörtern entwickelt worden. Bei Forth fehlt eine Gleitkommadarstellung und 5:3 = 0, aber ohne Fehleranzeige. Durch einen Trick kann man dies umgehen und kommt zur üblichen Gleitkommadarstellung.

Zu den üblichen BASIC-Befehlen kommen in Form einige Eigenheiten hinzu. Hier spricht man von den „wechselnden Wortdefinitionen“, die aber sehr schnell zu erlernen sind. So lässt sich beispielsweise „IF…ELSE…THEN“ mit „DO…LOOP“ oder „DO…LOOP“ mit „IF…ELSE…THEN“ schreiben. Auch „BEGIN…UNTIL“ und „BEGIN…WHILE REPEAT“ ist möglich.

Für die grafischen Möglichkeiten ergeben sich neben PLOT und DRAW auch DIAG, SQUARE und STEP. Mit DIAG wird diagonal kopiert und gleichzeitig um einen programmierten Schritt verschoben. Bei SQUARE erfolgt ein Kopieren und ein programmierter Schritt nach oben. STEP ist nur eine schrittweise Verschiebung. H.B.