In Bearbeitung
BASIC - Befehle
C64 BASIC V2.0 - Befehle mit kurz Syntaxbeschreibung
CLOSE <logische Dateinummer> Eine geöffnete Datei schließen.
CLR Löscht alle Variablen, Felder sowie vom Benutzer definierte Funktionen.
CMD <logische Dateinummer>[,[<Ausdruck>][ [<; oder ,>][<Ausdruck>] ] ] (Change Main Device) - Datenumleitung von Bildschirm auf andere Peripheriegerät.
CONT Ein gestopptes Programm wird fortgesetzt.
DATA <Konstante> [,<Konstante>…] Anweisung zum hinterlegen von ständigen Informationen (siehe auch READ).
DEF FN <Funktionsname>(<Variable>)=<mathematischer Ausdruck> Anweisung zum definierung einer mathematischen Funktion.
DIM <Variable>(<Index-Zahl>)[,<Variable>(<Index-Zahl>)…] Anweisung zum Feld oder Matrix dimensionieren (Variablen indizieren).
END Das Programm beenden.
FOR (<Zahl-Variable>)=<Startzahl> TO <Endzahl> [STEP <Schrittweite>] Zähler (siehe auch NEXT)
GET <Variable>[, <Variable>…] Tastaturzeichen einzeln auslesen.
GET# <logische Dateinummer>,<Variable> Zeichen einzeln auslesen von Dateien/Geräte die von OPEN geöffnet wurden.
GOSUB <Zeilennummer> Springt zur Zeilennummer (siehe RETURN).
GOTO <Zeilennummer> Springt zur Zeilennummer.
GO TO <Zeilennummer> Springt zur Zeilennummer.
IF <Ausdruck> THEN <Zeilennummer>/<Anweisungen> Bedingung prüfen (Wenn… dann), bei wahr Sprung zur Zeilennummer oder Anweisung ausführen.
IF <Ausdruck> GOTO <Zeilennummer> Bedingung prüfen (Wenn… dann), bei wahr Sprung zur Zeilennummer.
INPUT [“<Kommentar>“;]<Variable>[,<Variable>…] Benutzer - Dateneingabe die in Variablen gespeichert werden.
INPUT# <logische Dateinummer>,<Variable> Übernimmt Daten von Dateien die von OPEN geöffnet wurden.
LET <Variable> = <Ausdruck> Zuweisung von Zahlen oder Zeichen in Variablen (wird normalerweise nicht genutzt, da Zuweisungen auch ohne LET möglich sind).
LIST [ [Erste Zeilennr.]-[Letzte Zeilennr.] ] Programmzeilen anzeigen lassen.
LOAD [“<Programmname>“] [,<Gerätenummer>] [,<Sekundäradresse>] Programm von einem Speichermedium laden.
NEW Löscht Programme und Variable - Inhalte aus dem Speicher.
NEXT [<Variable>],[<Variable>]… Zwingend notwendige Makierung des Endes einer FOR TO [STEP] Schleife.
ON <Variable> GOTO <Zeilennummer> [,<Zeilennummer>]… Anweisung für verzweigte Sprünge.
ON <Variable> GOSUB <Zeilennummer>[,<Zeilennummer>]… Anweisung für verzweigte Sprünge.
OPEN <logische Dateinummer> [, Gerätenummer>] [,<Sekundäradresse>] [,“<Dateiname>[,<Type>][,<Modus>]“] Befehl zum öffnen von Kanälen für Ein- und Ausgabevorgängen. Gültig für Dateien oder Geräte.
PRINT <Variable> [<, oder ;><Variable>…] Ausgabe auf dem Bildschirm.
PRINT#<logische Dateinummer>,<Variable> Schreiben von Daten in Dateien/Geräte die von OPEN geöffnet wurden.
READ <Variable> [,<Variable>] Einlesen von DATA Zeilen in Variablen. Darauf achten das der richtige Variablentyp genutzt wird.
REM [<Bemerkungen>] (Remark) Bemerkungen die keine Auswirkungen auf das Programm haben.
RESTORE Setzt den Zeiger auf das nächste aus einer DATA Zeile zu lesende Element auf den Anfang zurück.
RETURN Erreicht das Programm RETURN, springt es zum GOSUB nachfolgenden Befehl.
RUN [<Zeilennummer>] Programm starten
SAVE [“<Programmname>“] [,<Gerätenummer>] [,<Sekundäradresse>] Programm auf ein Speichermedium sichern.
STEP <Schrittweite> Kein eigenständige Befehl. STEP läuft nur im Zusammenhang mit FOR TO und dient zur Einstellung von Zählschritten.
STOP Befehl für Fehlersuche. Stoppt ein Programm. Es kann wieder mit CONT fortgesetzt werden.
VERIFY [“<Programmname>“] [,<Gerätenummer>] Anweisung zum Vergleich (verifizieren) von Daten einer Datei und dem Speicher.
WAIT <Speicheradresse>,<Wert1>[,<Wert2>] Dient zu Überwachung von verschiedenen Ein- und Ausgabevorgänge. Das Programm bleibt gestoppt bis an den angegebenen Speicheradresse bestimmte Werte gesetzt sind.
Numerische Funktion
ABS(<Ausdruck>) Ergibt den Absolutwert (Wert ohne Vorzeichen) einer Zahl.
ATN (<Zahl>) Gibt den Arcustangens der angegebenen Zahl zurück.
COS(<Zahl>) Gibt den Kosinus von Zahl zurück.
EXP(<Zahl>) Gibt von der angegebenen Zahl die Potenz zur Basis e (2.71828183) zurück.
FN <Funktionsname>(<Zahl>) Ruft eine selbstdefinierte Funktion auf, die mit der Anweisung DEF im vorherigen Programmverlauf definiert worden ist.
FRE(<Hilfsargument>) Gibt zurück, wieviel RAM-Speicher noch, für Programme und Variablen, zur Verfügung steht.
INT(<Numerisch>) Schneidet, ohne Rundung, vorhandene Nachkommastellen ab.
LEN(<Zeichenkette>) Gibt die Anzahl aller Zeichen einer Zeichenkette zurück.
LOG(<Numerisch>) Gibt den natürlichen Logarithmus des numerischen Arguments zurück.
PEEK(<Speicheradresse>) Kann eine beliebige Speicheradresse von 0 bis 65535 auslesen. Die Ausgabe erfolgt mit einen Zahlenwert von 0 bis 255.
POKE <Speicheradresse>,<Zahlenwert> Kann an einer beliebigen Speicheradresse im Adressraum des C64 (Adresse 0-65535) ein Zahlenwert von 0 bis 255 (ein Byte) hineinschreiben.
POS(<Variable-Hilfsargument>) Gibt die aktuelle Cursorposition in der Bildschirmzeile zurück.
RND(<Zahl>) (Random) Dient zur Erzeugung von Zufallszahlen.
SGN(<numerisch>) Gibt unabhängig des Vorzeichens folgende Zahlen für diese numerischen Argumente aus: Bei positiven Zahlen eine 1; bei negativen Zahlen eine -1 und bei Null 0.
SIN(<Zahl>) Gibt den Sinus der als Argument angegebenen Zahl zurück.
SQR(<Zahl>) Liefert die Quadratwurzel der als Argument angegebenen Zahl zurück.
SYS <Speicheradresse> Aufruf von Maschinenespracheprogramme oder von Systemroutinen des C64.
TAN(<Zahl>) Gibt den Tangens von einer Zahl zurück.
USR(<Zahl>) Ruft aus einem BASIC-Programm ein Maschinensprache-Unterprogramm auf, gibt an dieses das Argument (Zahl) weiter und gibt selbst einen (anderen) Zahlenwert in einer Gleitpunktvariablen an das BASIC-Programm zurück.
VAL(<Zeichenkette>) Wandelt eine Zeichenkette in eine Zahl um.
String (Zeichenketten) Funktion
ASC(“<Zeichen>“) Gibt den ASCII-Code des ersten Zeichens der Zeichenkette (String) als Zahl von 0 bis 255 zurück.
CHR$(<8-Bit Zahl>) Wandelt eine Zahl von 0 bis 255 in eine Zeichenkette mit dem entsprechenden ASCII-Code um.
LEFT$(<Zeichenkette>,<Ganze Zahl>) Liefert den linken Teil einer Zeichenkette mit der vom angegebenen Zahlenwert bestimmten Länge.
MID$(<Zeichenkette>,<1.Ganze Zahl Startzeichen>,<2.Ganze Zahl Länge>) Liefert den Teil einer Zeichenkette, der beim Startzeichen beginnt, das vom Zahlenwert 1.Ganze Zahl bestimmt wird, und der die angegebene Länge (2.Ganze Zahl) besitzt.
RIGHT$(<Zeichenkette>,<Ganze Zahl>) Liefert den rechten Teil einer Zeichenkette mit der vom angegebenen Zahlenwert bestimmten Länge.
SPC(<Numerisch>) Am Bildschirm wird der Cursor um die im numerischen Argument angegebene Zahl nach rechts bewegt (ohne Überschreiben am Bildschirm dargestellter Zeichen).
STR$(<Numerisch>) Dient zum Umwandeln einer Zahl in eine Zeichenkette.
TAB(<Numerisch>) Tabulatorenfunktion für die Positionierung des Cursors zur „Spaltenbildung“.
logische Operatoren
<Ausdruck> AND <Ausdruck>
NOT <Ausdruck>
<Ausdruck> OR <Ausdruck>
Operatoren
+
-
*
/
=
<
⇐
=
<>
Addition Subtraktion Multiplikation Division Exponentiation (hoch) gleich kleiner als größer als kleiner oder gleich größer oder gleich ungleich
Variablen
Systemvariable
STATUS oder ST Dient zum Abfragen von Meldungen, die bei Ein- und Ausgabevorgängen von Datasette und seriellem Datenbus (z.B. Diskettenlaufwerk) generiert werden.
TIME oder TI List ein Timer (Zeitzähler), der die seit dem Einschalten des C64 oder nach einem Reset verstrichenen 1/60 Sekunden zählt.
TIME$ oder TI$ Enthält einen sechs Zeichen langen String, der die Laufzeit des Rechners seit dem letzten Zurücksetzen oder den Zeitverlauf seit der letzten Zuweisung in Stunden, Minuten und Sekunden angibt (Format: HHMMSS). Die Systemvariable kann mit Werte von „000000“ bis „235959“ beeinflusst werden.
Variablentypen
Fließkommazahlen (real) ganze Zahlen (integer) Strings (alphanumerische Zeichenketten)
Variablennamen können aus einem einzelnen Buchstaben, einem Buchstaben mit nachfolgender Ziffer oder zwei Buchstaben bestehen.
Kennzeichnung der Variablentypen
Intergervariablen werden zum Schluss des Variablennamen mit % gekennzeichnet. Stringvariablen werden zum Schluss des Variablennamen mit $ gekennzeichnet.
Legende