Schneller Compiler für den Schneider Programm: Turbo Basic System: :CPC 464/664/6128 Preis: ca. 100 Mark (Disc) Hersteller: Hisoft Vertrieb: Datensysteme, Nürnberg Wer kennt nicht das Problem? Man schreibt ein langes Basic Programm und stellt am Schluß fest, daß es viel zu langsam abläuft. Auch wenn das Spiel noch so gut ist, so macht doch oft nur die Geschwindigkeit den Reiz des Programmes aus. Auch Adventures machen hier keine Ausnahme, denn die interne Wort- bzw. Satzerkennung muß enorm schnell arbeiten, da sonst riesige Wartezeiten entstehen können. Um dieses Problem zu beseitigen, gibt es schon viele Jahre die sogenannten Compiler. Ein solcher Compiler übersetzt das Programm entweder in Maschinensprache oder in einen P-Code. Im Falle eines P-Code Compilers, wird eine Art Zwischencode erzeugt, welcher später von einem Interpreter ausgeführt wird. Bei Turbo Basic handelt es sich jedoch um einen echten MC-Code Compiler. Das bedeutet, das Basic-Programm wird direkt in die 280 Maschi-nensprache übersetzt. Dies bedeutet, daß auch gegenüber eines P-Code Compilers eine wesentlich höhere Geschwindigkeitssteigerung erzielt wird. Je nach Basic-Programm erzeugt der Compiler ein zwischen 7 und 80 mal schnelleren Ablauf des Programmes. Um diese Geschwindigkeiten zu erreichen, mußten jedoch einige Einschränkungen im Basic gemacht werden. Das bedeutet: Will man ein Programm compi-lieren, so muß man sich an bestimmte Vorschriften des Compilers richten. Vor allem ist der Befehlssatz sehr eingeschränkt, da der Compiler nur Integer-Zahlen verarbeitet. Funktionen, die mit Fließkommazahlen arbeiten, wie beispielsweise SIN, COS oder Wurzelfunktion, sind dadurch nicht mehr verwendbar. Da bei Spielprogrammen jedoch selten Fließkommazahlen Verwendung finden, dürften hier keine Probleme entstehen. Bei Kalkulation und ähnlichen Programmen dürften hier jedoch Schwierigkeiten aufkommen. Ansonsten hält sich der Compiler recht genau an die Syntax des Schneider-Basic. Eine Bedingung ist jedoch, daß Variablen bei einem Neustart nicht auf ßf gesetzt werden. Das heißt, daß alle Variablen am Programmanfang definiert werden müssen. Selbst das mitgelieferte Demoprogramm OTHELLO hat hier Probleme: nach einem ersten Spiel läßt sich kein leeres Spielfeld mehr erzeugen. Offensichtlich haben hier die Programmierer Ihre eigene Syntax nicht beachtet. Ansonsten zeigen die beiden mitgelieferten Demoprogramme, Othello und Space-Invaders, was in dem Compiler steckt. Selbst das in Basic völlig unbrauchbare Spiel ist in compilierter Form noch zu vertreten. Für die Programmierer von Spielprogrammen kann ich diesen Compiler deshalb nur empfehlen. Frank Brall , COMPUTE MIT 1986-10 |