KatCe ST - ein Pascal- und Assembler-Entwicklungssystem

Der Name dieses Softwarepakets wird im einen oder anderen Leser Erinnerungen wecken. Richtig! Genau das war es, da gab es doch - Verzeihung, gibt es einen MC68000-Einplatinen-Computer mit dem gleichen Namen. Kenner der Szene wissen, daß es dafür auch einen Pascal-Compiler gibt. Sollten da etwa Ähnlichkeiten vorhanden sein? Die Antwort ist ja. Es handelt sich um eine Portierung des Entwicklungssystems der Kat 68-Systeme aus der Pionierzeit des 68000-Prozessors. Damals war das noch Hi-Tech (neueste Technologie). Heute in der Zeit der 68030er und Transputer nimmt ein Rechnen der nur einen 68000 hat, eine ähnliche Stellung ein wie der C-64 zu Anfang der Atari ST-Zeit.

Aber nun zur Software. Was bekommt man für die 100 Märker, die KatCe-ST kostet, denn geboten? Erstmal einen Pascal-Compiler, der in puncto Geschwindigkeit alles andere zersägt. Dazu gibt's einen Editor, der sehr stark mit Wordstar/Turbo-Pascal verwandt ist. Wer gerne Bits fummelt, freut sich sicher, daß außerdem noch Assembler, Disassembler- und Debugger dazugehören. Das ganze ist in ca. 83 Kbyte zusammen mit einer Shell, die an das UCSD-System erinnert, untergebracht. Die Größe läßt darauf schließen, daß bei der Entwicklung keine Hochsprache, sondern reine Maschinensprache verwendet wurde. Ich werde jetzt zu jeder einzelnen Komponente des Systems ein paar Worte verlieren. Beginnen wir mit dem

Pascal-Compiler

Wie bei den meisten anderen Compilern auch, wird zusätzlich zum Standard ein Sack voll Erweiterungen geboten. Das freut den Kunden, macht sich gut in Werbebroschüren und Anzeigen und schränkt die Portabilität ein, weil natürlich kein anderes System die gleichen Erweiterungen bietet. Das wiederum bindet den Kunden an den Hersteller und der freut sich. So sind alle zufrieden, oder?

Genug des Unkens, gehen wir zusammen die Liste durch. Das Vorhandensein des Assemblers ist natürlich ein Grund, eine entsprechende Schnittelle zu bieten. Es besteht die Möglichkeit, Prozeduren, die in Assembler geschrieben sind, aufzurufen. Eine für Pascal eher exotische Erweiterung sind parallele Prozesse. Bis zu 8 Tasks können parallel laufen und über globale Variablen Nachrichten austauschen. Genauso ungewöhnlich ist es, daß der Editor als Funktion von Pascal aus aufgerufen werden kann; doch dazu später mehr. Wie es sich für den ST gehö sind natürlich die AES- und VDI-Funktionen im Sprachumfang enthalten. Soviel zu den Erweiterungen. Wie ich vorhin schon erwähnte, ist der Compiler sehr schnell. Um konkret sein: er verarbeitet 21.500 Zeilen pro Minute. Im Handbuch wird die Übersetzungsgeschwindigkeit mit 200 Zeilen pro Sekunde angegeben (wieviel sind nochmal pro Minute? Stimmt! 12.000 Der Hersteller ist an dieser Stelle erstaunlich bescheiden. Ich habe jedenfalls de Wert von 21.500 anhand des mitgelieferten Programms DEMO.PAS ermittelt. Woher kommt die auffallend hohe Geschwindigkeit, werden Sie sich frage Ganz einfach, alles läuft im Speicher. Der Compiler und der Quelltext befinden sich immer im Speicher und das erzeugte Programm wird auch dort abgelegt. Wie bei Turbo-Pascal kann man optional auch mit Dateien auf Floppy oder Harddisk arbeiten. Dann dauert's natürlich länger. Der erzeugte Code kann sich auch sehen lassen. Besonders erwähnenswert ist die Real-Mathematik. Der Rechenbereich reicht von 10 hoch-999 bis 10 hoch +999 mit einer Genauigkeit von 13 Stellen (CCD-Pascal bietet 11 Stellen). Faul, wie der Mensch nun einmal ist, habe ich als Benchmark ein altes Programm hergenommen, das ich schon in der ST Nr.6 anno 1986 verwendet habe, um den Pascal-Compiler von Metacomco zu testen. Ja, ich weiß, sie haben Ihren ST noch nicht so lange, oder Sie haben keine Lust, in den Keller zu gehen und in der Kiste mit den alten Zeitschriften zu wühlen. Keine Aufregung, das Listing finden Sie in Bild 2, da stehen auch die Ergebnisse des Zeitvergleichs. Natürlich habe ich auch den obligatorischen Test mit dem Sieb des Eratosthenes durchgeführt (den drucke ich aber nicht zum 1001. Mal ab). Der Prüfling benötigte 25,6 Sekunden für 25 Iterationen, Pascal 2.02 von CCD 15,1 Sekunden. Borland wirbt mit 9,3 Sekunden für Turbo-Pascal auf einem 8 MHz AT. Aber denken Sie daran, daß Primzahlen nicht alles sind.

Erinnern Sie sich noch daran, daß man von Pascal aus den Editor aufrufen kann? An dieser Stelle mehr dazu. Die Entwicklungsumgebung enthält außer dem Editor noch jede Menge anderer Funktionen, die von mehreren Stellen aus gemeinsam verwendet werden. Viele dieser Funktionen kann man auch von Pascal aus aufrufen. Das bedeutet aber, daß die Routinen auch bei einem eigenständigen Progamm (neudeutsch: stand-alone-Application) vorhanden sein müssen. Es muß also zu jedem noch so kleinen Programm ein Laufzeitmodul mit einem Umfang von ca.25 KByte gebunden werden, um es vom Desktop aus starten zu können. Der Compiler unterstützt Include-Dateien,die aber nicht geschachtelt werden können. Ansonsten gibt es keine Modularisierung, es gibt ja auch keinen Linker. Nun zum

Assembler

Der 2-Pass-Assembler versteht die Motorola Mnemonics und kann sowohl Dateien includieren als auch verkettete Quelltexte verarbeiten. Der Pascal-Compiler wurde laut Aussage des Entwicklers mit diesem Assembler erstellt. Einen gründlicheren Test kann man sich kaum vorstellen. Mit dem Assembler kann man auch Programme erstellen, die nicht das Laufzeitmodul brauchen. Allerdings muß man dann auch auf die Annehmlichkeiten der darin enthaltenen Funktionen verzichten. Mehr ist zu dem Assembler nicht zu sagen. Machen wir weiter mit dem

Editor

Wie gesagt ist der Editor von den Kommandos her Turbo-Pascal kompatibel. Er verarbeitet allerdings keine Standard-Textdateien wie sie auf dem ST üblich sind, sondern hat ein eigenes Dateiformat. Umwandlungsroutinen von und nach ASCII werden in Pascal mitgeliefert. Die Konvertierroutinen lesen und schreiben immer in 512 Bytegroßen Blöcken. Dadurch kommt es in der Regel zu Fehlermeldungen (welche Datei hat als Größe schon genau ein Vielfaches von 512 Byte "). Aber dafür hat man ja den Quelltext und kann basteln. Ich gehe davon aus, daß der Autor, wenn Sie diesen Artikel lesen, die Konvertierung schon überarbeitet hat. Als letztes noch ein paar Bemerkungen zum

Debugger

Man kann damit den Speicher ansehen und modifizieren. Speicherbereiche können in eine Datei gespeichert und von einer Datei gelesen werden. Es lassen sich Befehle im Einzelschrittmodus abarbeiten aber keine Unterbrechungspunkte (Breakpoints) setzen. An dieser Stelle noch ein Nachtrag zu den Erweiterungen des Pascal-Compilers. Es gibt eine Break-Funktion, die es ermöglicht, vom laufenden Programm in den Debugger zu verzweigen und sich die Variablen des Pascalprogramms anzusehen. Dieses Feature ist bei der Fehlersuche sehr hilfreich, es setzt jedoch Assemblerkenntnisse voraus.

Das Handbuch ist in deutscher Sprache geschrieben und 180 Seiten lang. Man findet sich relativ schnell zurecht, woran der Suchindex nicht unschuldig ist. Der Schreibstil ist sachlich und knapp es werden alle Funktionen erklärt, an manchen Stellen wäre jedoch etwas mehr Ausführlichkeit angebracht.

Fazit

Es bleibt dem Benutzer nicht verborgen, daß dieses Entwicklungspaket aus der Welt der Einplatinencomputer kommt. Die Benutzeroberfläche läuft nicht unter GEM, ist aber akzeptabel. Das exotische Datenformat des Editors ist störend, kann aber hingenommem werden. Auf jeden Fall stimmt das Preis-Leistungs-Verhältnis. Für 100 DM bekommt man sonst nirgends ein Paket mit diesem Funktionsumfang. Softwarefirmen werden für die Entwicklung professioneller Produkte sicher leistungsfähigere (und teurere) Systeme verwenden, aber für den Anwender mit etwas schmalerem Geldbeutel ist KatCe-Pascal eine Alternative.

Bezugsquelle: Christa Mayer-Gürr Software und Computerbaugruppen Treptower Str. 2 4350 Recklinghausen


JL
Aus: ST-Computer 07 / 1988, Seite 52

Links

Copyright-Bestimmungen: siehe Über diese Seite