PETSPEED 64

Aus C64-Wiki
Wechseln zu: Navigation, Suche
PETSPEED 64
Startbild
Firma System Software Oxford Ltd.
Release 1984
Lizenz Vollversion
Plattform(en) C64 (BASIC 2.0), C128 (BASIC 7.0), PET
Genre Compiler
Steuerung Icon tastatur.png
Medien Icon kassette.png Icon disk525.png
Sprache(n) Sprache:englisch
Information C128-Version: siehe PETSPEED 128

PETSPEED 64 ist ein BASIC 2.0-Compiler, der ein bestehendes BASIC-Programm durch die Kompilation um das bis zu 40-fache schneller ablaufen lässt. Er besitzt einen Kopierschutz. PETspeed 64 arbeitet mit jedem Commodore Diskettenlaufwerk.
Das Cover des 10seitigen Benutzerhandbuchs bewirbt PETSPEED 64 wie folgt: "The BASIC Compiler PETSPEED 64 - Up to 40 times the speed of BASIC

  • All BASIC 2 commands plus
  • makes long programs shorter
  • extensions to BASIC
  • easy to use"

Arbeitsdisketten anlegen[Bearbeiten]

Vor der Nutzung muss man mit Hilfe der Originaldiskette vier Arbeitsdisketten anlegen. Dazu sind vier vorformatierte Diskette mit den Namen "PETSPEED MASTER", "UTILITIES MASTER", "PETSPEED WORK" und "UTILITIES WORK" anzulegen. Das Anlegen der Arbeitsdisketten erfolgt mit dem Programm LOAD"BACKUP",8 und über den Menüpunkten: "MAKE PETSPEED MASTER", "MAKE UTILITIES MASTER", "BACKUP PETSPEED" und "BACKUP UTILITIES".

Arbeitsweise[Bearbeiten]

Nach der Überprüfung des Kopierschutzes wird der Compiler gestartet. Man gibt dort den Namen des BASIC-Programms ein und PETSPEED führt 4 Durchläufe durch. Wenn diese alle fehlerfrei sind, erfolgt abschließend die Meldung: RUN: NNNNN bytes free .

Nun kann das kompilierte PETSPEED-BASIC-Programm ganz normal auf Diskette abgespeichert werden. Die einzige BASIC-Zeile, die ein kompilierte PETSPEED-BASIC-Programm besitzt, lautet:

10 SYS (2073) PETSPEED

Hinweis: Das Kompilieren von BASIC-Programme mit enthaltenen Maschinenspracheprogramme oder mit der Übergabe von Variablen an Maschinenspracheprogramme führt zu Probleme, da PETSPEED nur den BASIC-Code betrachtet und ihn unabhängig von Maschinenspracheprogramme kompiliert!

BASIC[Bearbeiten]

Beim Kompilieren von BASIC-Programmen mit PETSPEED müssen folgende Kompromisse gemacht werden:

  • Folgende BASIC-Schlüsselwörter dürfen in PETSPEED-BASIC-Programme nicht verwendet werden: LIST, CONT und SAVE
  • Der Befehl RUN darf nur ohne Zeilennummer genutzt werden.
  • Das Dimensionieren von Variablen ohne Angabe der Feldanzahl erfolgt standardmäßig mit 11 Elementen (obgleich BASIC V2 hier von einer einfachen Variable ausgeht), andernfalls mit der angegebenen Zahl. Allgemeine Ausdrücke bei den Dimensionsangaben, abgesehen von Konstanten, wie z.B. DIM Z(X), sind nicht erlaubt. Fehlt die Angabe, fragt gegebenenfalls der Compiler nach.
  • Das Verwenden von 3-dimensionalen Arrays oder mit mehr Dimensionen kann beim direkten Kompilieren zu Problemen führen. Vor der eigentlich Kompilierung muss es mit dem Ultility PRE-SCAN vorbehandelt werden.
  • Beim Nachladen eines Programms wird der Variablenspeicher nicht gelöscht.

Extras[Bearbeiten]

Mit folgenden Spezialbefehlen (Kompilerdirektiven) können einige Extras von PETSPEED genutzt werden:

  • Unbeschränkte Namenslänge von Variablen, Feldern und Funktionen bei Einbau als erste BASIC-Zeile: REM !LN
  • Normalerweise ist im Kompilation die RUN/STOP  deaktiviert, kann aber mit entsprechenden Kompilerdirektiven zur Laufzeit gesteuert werden:
    • aktivieren: REM !ES
    • abschalten: REM !DS
  • Besonderheit zum Zeichen #: Anstelle von CMD 5 reicht #5
  • Integer-Variable in FOR-NEXT-Schleifen sind erlaubt und bringen einen kleinen Geschwindigkeitsvorteil: FOR A%=1 TO 99: PRINT: NEXT A%
  • Ferner ist auch das Mischen von Zeichenkettenfunktionen mit normalen Funktionen beim Definieren von eigenen Funktionen erlaubt. Beispiele:
DEF FN X(Z)
DEF FN Z$(X) 
DEF EN Z(BS) 
DEF FN Z$(Y$)

Weblinks[Bearbeiten]