CPC Locomotive BASIC

Die meisten Befehle entsprechen dem Standard-BASIC, wie es auf Heimcomputern seiner Zeit üblich war. Das Locomotive-BASIC des CPC geht aber an vielen Stellen weit darüber hinaus.

Mathematische Operationen

Die mathematischen Befehle des Standard-BASIC werden durch folgende Befehle erweitert bzw. geändert:

\ ganzzahlige Division ohne Rest
MOD Der Rest, der nach der ganzzahligen Division bleibt
SQR Quadratwurzel
^ Potenz (auch mit gebrochenen Exponenten!)

Timer-Interruptbehandlung

Der CPC besitzt mit der Fähigkeit die Interrupts des Timers zu bearbeiten, die Möglichkeit mehrere Aufgaben parallel zu bearbeiten und damit eine Art Multithreading durchzuführen.

Es gibt vier Zeitgeber durchnummeriert von 0 bis 3. Dabei ist die Priorität mit dem Wert steigend.

AFTER Intervall[,ZeitgeberNr] GOSUB Zeilennummer
ruft zeitversetzt nach einem Intervall ein Unterprogramm auf. Intervall ist in Einheiten je 50stel Sekunden.
DI und EI
Disable und Enable Interrupt.
EVERY Intervall[,ZeitgeberNr] GOSUB Zeilennummer
Ruft wiederkehrend ein Unterprogramm auf. Intervall ist in Einheiten je 50stel Sekunden.

Diverse Erweiterungen

CLS
löscht den Bildschirm und bringt den Cursor nach links oben
DEFINT C-R
Legt fest, dass alle Variablen, die mit C bis R anfangen, ganzzahlige Werte aufnehmen (INTEGER).
DEFSTR S
Legt fest, dass alle Variablen, die mit S anfangen, Stringvariablen sind. Es ist kein $ notwendig.
EDIT Zeilennummer
Bearbeitet die Zeile. Links- und Rechtscursor funktionieren und die CLR-Taste löscht einzelne Zeichen unter dem Cursor.
JOY(Welcher)
liefert die Position des Joysticks 0 oder 1. Die zurückgegebenen Werte sind:
1 oben
2 unten
4 links
8 rechts
16 Feuer 2
32 Feuer 1
Kombinationen ergeben sich durch Addition. Links-oben gibt also 5. Bei meinen Tests habe ich Feuer 1 nicht erzeugen können. Vielleicht ist aber auch der Joystick defekt.
WHILE logischer Ausdruck ... WEND
Wiederhole bis-Schleife mit der Abfrage am Schleifenkopf. BASIC-Erweiterung
WINDOW [#-Stream,] links, rechts, oben, unten
Beschränkt die Umleitung des Ausgabestroms auf einen Bildschirmausschnitt.

CPC Programmierung/Bedienung - Computer-Oldies E-Mail