Anweisung | Bedeutung |
---|---|
ASM | Assemblerquelltext einfügen |
BORDER | Randfarbe setzen |
CALL | Aufruf eines in Maschinencode vorliegenden Unterprogramms |
CIRCLE | Kreis zeichnen |
CLOSE | Datei oder Ein-/Ausgabekanal schließen |
CLS | Bildschirm löschen |
COLOR | Farben setzen |
CURSOR | Cursor aus- oder einschalten |
DATA | Angabe von numerischen Werten und Zeichenketten, die mit READ gelesen werden können |
DECLARE | Benutzerdefinierte Funktion oder Prozedur deklarieren |
DEF | Adresse einer USR-Funktion festlegen |
DEFUSR | Adresse einer USR-Funktion festlegen |
DIM | Globale Variablen deklarieren |
DO | Beginn einer DO-Schleife |
DOKE | 16-Bit-Wert in den Arbeitsspeicher schreiben |
DRAW | Linie zeichnen |
DRAWR | Linie zeichnen |
ELSE | Teil einer IF-Anweisung |
ELSEIF | Weitere Verzweigung in einer IF-Anweisung |
END | Funktion, Prozedur oder BASIC-Programm beenden |
ENDIF | Ende einer IF-Anweisung |
EXIT | Vorzeitiges Verlassen einer Schleife |
FOR | Beginn einer FOR-Schleife |
FUNCTION | Implementierung einer benutzerdefinierten Funktion |
GOSUB | Aufruf eines Unterprogramms |
GOTO | Spung zu einer anderen Programmstelle |
IF | Bedingte Verzweigung |
INCLUDE | Einbinden einer weiteren Quelltextdatei |
INK | Vordergrundfarbe setzen |
INPUT | Zahlen und Zeichenketten mit der Tastatur eingeben oder von einem Eingabekanal lesen |
LABEL | Text im Grafikmodus ausgeben |
LET | Einer Variable einen Wert zuweisen |
LINE | Linie oder Rechteck zeichnen |
LINE INPUT | Textzeile eingeben oder von einem Eingabekanal lesen |
LOCAL | Lokale Variablen deklarieren |
LOCATE | Cursor positionieren |
LOOP | Ende einer DO-Schleife |
LPRINT | Ausgabe auf dem Drucker |
MOVE | Grafik-Cursor absolut positionieren |
MOVER | Grafik-Cursor relativ positionieren |
NEXT | Ende einer FOR-Schleife |
ON...GOSUB | Aufruf eines Unterprogramms aus einer Liste von Unterprogrammen |
ON...GOTO | Sprung zu einer Zeile aus einer Liste von Zeilennummern oder Marken |
OPEN | Datei oder Ein-/Ausgabekanal öffnen |
OUT | Ausgabe eines Wertes an einem Ausgabetor (Port) |
PAINT | Fläche füllen |
PAPER | Hintergrundfarbe setzen |
PASSWORD INPUT | Eingabe eines Kennworts |
PAUSE | Programm anhalten |
PEN | Grafikstift (Art des Pixelsetzens) festlegen |
PLOT | Grafik-Cursor absolut positionieren und Pixel setzen |
PLOTR | Grafik-Cursor relativ positionieren und Pixel setzen |
POKE | 8-Bit-Wert in den Arbeitsspeicher schreiben |
PRESET | Pixel auf dem Bildschirm zurücksetzen |
Ausgabe auf dem Bildschirm oder einem Ausgabekanal | |
PSET | Pixel auf dem Bildschirm setzen |
READ | Lesen von Werten aus mit DATA angegeben Daten |
REM | Kommentar |
RESTORE | Setzen oder Zurücksetzen der Leseposition für READ |
RETURN | Ende eines Unterprogramms |
SCREEN | Einstellen eines Bildschirm- bzw. Grafikmodus |
SELECT CASE | Bedingte Verzweigungen |
SUB | Implementierung einer benutzerdefinierten Prozedur |
SWAP | Tauschen der Werte zweier Variablen |
WAIT | Warten auf einen bestimmten Wert an einem Eingabetor |
WEND | Ende einer WHILE-Schleife |
WHILE | Beginn einer WHILE-Schleife |
Syntax: |
ASM [ CODE ] <Zeichenkette>
[, <Zeichenkette> [, ...]] ASM DATA <Zeichenkette> [, <Zeichenkette> [, ...]] ASM BSS <Zeichenkette> [, <Zeichenkette> [, ...]] |
Zeichenkette: | String-Literal |
Syntax: | BORDER <Integer-Ausdruck> |
Syntax: |
CALL <Adresse> CALL * <Hex-Adresse> |
Adresse: | Integer-Ausdruck |
Hex-Adresse: | Adresse als Hexadezimalzahl |
Syntax: |
CIRCLE <X> , <Y>
, <Radius> CIRCLE ( <X> , <Y> ) , <Radius> |
X: | Integer-Ausdruck |
Y: | Integer-Ausdruck |
Radius: | Integer-Ausdruck |
Syntax: | CLOSE # <Kanal> |
Kanal: | Integer-Ausdruck mit dem Wert 1 oder 2 |
Syntax: |
COLOR <Vordergrundfarbe> COLOR <Vordergrundfarbe> , <Hintergrundfarbe> COLOR <Vordergrundfarbe> , <Hintergrundfarbe> , <Randfarbe> |
Vordergrunddarbe: | Integer-Ausdruck |
Hintergrundfarbe: | Integer-Ausdruck |
Randfarbe: | Integer-Ausdruck |
Syntax: | CURSOR <Integer-Ausdruck> |
Syntax: | DATA <konstanter Ausdruck> [ , ... ] |
konstanter Ausdruck: | Zahlen- oder Zeichenkettenliteral |
Syntax: |
DECLARE FUNCTION <Funktionsname> DECLARE FUNCTION <Funktionsname> ( <Argumentname> [ , ... ] ) DECLARE SUB <Prozedurname> DECLARE SUB <Prozedurname> ( <Argumentname> [ , ... ] ) |
Syntax: |
DEF USR <Funktionsnummer> = <Adresse>
DEFUSR <Funktionsnummer> = <Adresse> |
Funktionsnummer: | 0...9 |
Adresse: | Integer-Ausdruck |
Syntax: |
DIM <Name> [, ... ] DIM <Name> AS <Typ> [, ... ] DIM <Name> ( <Dimension> ) [, ... ] DIM <Name> ( <Dimension> ) AS <Typ> [, ... ] DIM <Name> ( <Dimension> , <Dimension> ) [, ... ] DIM <Name> ( <Dimension> , <Dimension> ) AS <Typ> [, ... ] |
Name: | Name der zu deklarierenden Variable |
Typ: | DECIMAL, INTEGER, LONG oder STRING |
Dimension: | Integer-Literal |
Syntax: | DOKE <Adresse> , <Wert> |
Adresse: | Integer-Ausdruck |
Wert: | Integer-Ausdruck |
Syntax: |
DRAW <X> , <Y> DRAW TO <X> , <Y> DRAW ( <X> , <Y> ) DRAW TO ( <X> , <Y> ) DRAW STEP ( <X> , <Y> ) DRAW <Macro> |
X: | Integer-Ausdruck |
Y: | Integer-Ausdruck |
Macro: | einfacher String-Ausdruck |
H | U | E | ||
\ | | | / | ||
L | - | Grafik-Cursor | - | R |
/ | | | \ | ||
G | D | F |
Macro-Kommado | Bedeutung |
---|---|
U |
Linie einen Pixel nach oben zeichnen |
U<Anzahl> |
Linie Anzahl Pixel nach oben zeichnen |
D |
Linie einen Pixel nach unten zeichnen |
D<Anzahl> |
Linie Anzahl Pixel nach unten zeichnen |
L |
Linie einen Pixel nach links zeichnen |
L<Anzahl> |
Linie Anzahl Pixel nach links zeichnen |
R |
Linie einen Pixel nach rechts zeichnen |
R<Anzahl> |
Linie Anzahl Pixel nach rechts zeichnen |
E |
Linie einen Pixel nach rechts oben zeichnen |
E<Anzahl> |
Linie Anzahl Pixel nach rechts oben zeichnen |
F |
Linie einen Pixel nach rechts unten zeichnen |
F<Anzahl> |
Linie Anzahl Pixel nach rechts unten zeichnen |
G |
Linie einen Pixel nach links unten zeichnen |
G<Anzahl> |
Linie Anzahl Pixel nach links unten zeichnen |
H |
Linie einen Pixel nach links oben zeichnen |
H<Anzahl> |
Linie Anzahl Pixel nach links oben zeichnen |
M<X>,<Y> | Linie zur angegebenen absoluten Position zeichnen |
M<Vorzeichen><X>,[<Vorzeichen>]<Y> | Linie zur angegebenen relativen Position zeichnen |
B | beim nächsten Macro-Befehl nicht zeichnen, sondern nur den Grafik-Cursor verschieben |
Syntax: |
DRAWR <X> , <Y> DRAWR ( <X> , <Y> ) |
X: | Integer-Ausdruck |
Y: | Integer-Ausdruck |
Syntax: |
END END FUNCTION END SUB |
Syntax: |
EXIT EXIT DO EXIT FOR EXIT WHILE |
Syntax: | FOR <Variable>=<Startwert> TO <Endwert> [ STEP <Schrittweite> ] |
Startwert: | Integer-Ausdruck |
Endwert: | Integer-Ausdruck |
Schrittweite: | Integer-Ausdruck |
Syntax: |
FUNCTION <Funktionsname> FUNCTION <Funktionsname> ( <Argument> [ , ... ] ) |
Syntax: |
GOSUB <Zeilennummer> GOSUB <Marke> |
Syntax: |
GOTO <Zeilennummer> GOTO <Marke> |
Syntax: |
IF <Bedingung> [ THEN ] <Anweisungen>
[ : ELSE : <Anweisungen> ] IF <Bedingung> [ THEN ] <Zeilennummer> [ : ELSE : <Anweisungen> ] IF <Bedingung> [ THEN ] <Anweisungen> <Anweisungen> [ ELSEIF <Bedingung> THEN <Anweisungen> <Anweisungen> ] [ ELSEIF <Bedingung> THEN <Anweisungen> <Anweisungen> ] [ ELSE <Anweisungen> <Anweisungen> ] ENDIF |
Bedingung: | Integer-Ausdruck |
Syntax: | INCLUDE "Dateiname" |
Absolute Pfadangabe bei Windows: | INCLUDE "C:\basic\bibliothek.bas" |
Absolute Pfadangabe bei Linux/Unix: | INCLUDE "/home/benutzer/basic/bibliothek.bas" |
Relative Pfadangabe bei Windows: | INCLUDE "..\bibliothek.bas" |
Relative und betriebssystemunabhängige Pfadangabe (Linux/Unix/Windows): | INCLUDE "../bibliothek.bas" |
Syntax: | INK <Integer-Ausdruck> |
Syntax: |
INPUT [ <String-Literal> ; ] <Variable>
[ ; ... ] INPUT # <Kanal> , <Variable> [ , ... ] |
Kanal: | Integer-Ausdruck mit dem Wert 1 oder 2 |
Syntax: | LABEL <String-Ausdruck> |
Syntax: | [ LET ] <Variable> = <Ausdruck> |
Syntax: |
LINE <X1> , <Y1> ,
<X2> , <Y2> LINE ( <X1> , <Y1> ) - ( <X2> , <Y2> ) LINE <X1> , <Y1> , <X2> , <Y2> , B LINE ( <X1> , <Y1> ) - ( <X2> , <Y2> ) , B LINE <X1> , <Y1> , <X2> , <Y2> , BF LINE ( <X1> , <Y1> ) - ( <X2> , <Y2> ) , BF |
X1: | Integer-Ausdruck |
Y1: | Integer-Ausdruck |
X1: | Integer-Ausdruck |
Y2: | Integer-Ausdruck |
Syntax: |
LINE INPUT [ <String-Literal> ; ]
<String-Variable> LINE INPUT # <Kanal> , <String-Variable> |
Kanal: | Integer-Ausdruck mit dem Wert 1 oder 2 |
Syntax: | LOCALE <Name> [, ... ] |
Name: | Name der zu deklarierenden Variable |
Syntax: | LOCATE <Zeile> , <Spalte> |
Zeile: | Integer-Ausdruck mit einem Wert >= 0 |
Spalte: | Integer-Ausdruck mit einem Wert >= 0 |
Syntax: |
LOOP LOOP UNTIL <Bedingung> LOOP WHILE <Bedingung> |
Bedingung: | Integer-Ausdruck |
Syntax: |
LPRINT LPRINT <Abschnitt> LPRINT <Abschnitt> <Trennzeichen> LPRINT <Abschnitt> <Trennzeichen> <weitere Abschnitte> LPRINT <Abschnitt> <Trennzeichen> <weitere Abschnitte> <Trennzeichen> |
Abschnitt: | String-Ausdruck oder Integer-Ausdruck |
Trennzeichen: | Komma oder Semikolon |
Syntax: |
MOVE <X> , <Y> MOVE TO <X> , <Y> MOVE ( <X> , <Y> ) MOVE TO ( <X> , <Y> ) MOVE STEP ( <X> , <Y> ) |
X: | Integer-Ausdruck |
Y: | Integer-Ausdruck |
Syntax: |
MOVER <X> , <Y> MOVER ( <X> , <Y> ) |
X: | Integer-Ausdruck |
Y: | Integer-Ausdruck |
Syntax: | NEXT [ <Variable> ] |
Syntax: |
ON <Auswahl> GOSUB
<Zeilennummer> , <Zeilennummer>
[ , <Zeilennummer> [ , ... ] ] ON <Auswahl> GOSUB <Marke> , <Marke> [ , <Marke> [ , ... ] ] |
Auswahl: | Integer-Ausdruck >= 0 |
Syntax: |
ON <Auswahl> GOTO
<Zeilennummer> , <Zeilennummer>
[ , <Zeilennummer> [ , ... ] ] ON <Auswahl> GOTO <Marke> , <Marke> [ , <Marke> [ , ... ] ] |
Auswahl: | Integer-Ausdruck >= 0 |
Syntax: |
OPEN <Geräte-/Dateiname> AS # Kanal
OPEN <Geräte-/Dateiname> FOR <Betriebsart> AS # Kanalnummer OPEN <Geräte-/Dateiname> FOR BINARY <Betriebsart> AS # Kanalnummer |
Geräte-/Dateiname: | einfacher String-Ausdruck |
Betriebsart: | INPUT, OUTPUT oder APPEND |
Kanal: | Integer-Ausdruck mit dem Wert 1 oder 2 |
Betriebsart | Bedeutung |
---|---|
INPUT | Eingabekanal |
OUTPUT |
Ausgabekanal, Wurde eine Datei angegeben, so wird sie neu angelegt. Eine evtl. vorhandene Datei wird dabei gelöscht. |
APPEND |
Ausgabekanal, Wurde eine Datei angegeben, so werden die Daten an die Datei angehängt. Der Inhalt einer evtl. vorhandenen Datei wird nicht gelöscht. |
Gerät | Bedeutung | Unterstützte Betriebsarten | Standard-Betriebsart |
---|---|---|---|
CRT: | Bildschirm | OUTPUT | OUTPUT |
LPT: | Drucker | OUTPUT | OUTPUT |
A: bis P: | Laufwerke im Dateisystem | INPUT, OUTPUT, APPEND | INPUT |
V: | USB-Speicher am VDIP-Modul | INPUT, OUTPUT, APPEND | INPUT |
Syntax: |
OUT ( <Port> ) = <Wert>
OUT <Port> , <Wert> |
Port: | Integer-Ausdruck |
Wert: | Integer-Ausdruck |
Syntax: |
PAINT <X> , <Y> PAINT ( <X> , <Y> ) |
X: | Integer-Ausdruck |
Y: | Integer-Ausdruck |
Syntax: | PAPER <Integer-Ausdruck> |
Syntax: | PASSWORD INPUT [ <String-Literal> ; ] <String-Variable> |
Syntax: |
PAUSE PAUSE <Integer-Ausdruck> |
Syntax: | PEN <Integer-Ausdruck> |
Stift | Konstante | Bedeutung |
---|---|---|
0 | PEN_NONE |
Stift angehoben, Bei diesem Stift passiert nichts. Es wird weder etwas gezeichnet noch etwas gelöscht. |
1 | PEN_NORMAL |
Zeichnen, Die zu zeichnenden Pixel werden auf die Vordergrundfarbe gesetzt. Bereits auf dem Bildschirm befindliche Texte und Grafiken werden somit übermalt. Dieser Stift ist der "normale" Zeichenstift und wird bei Programmstart automatisch eingestellt. |
2 | PEN_ERASER |
Löschen, Die zu zeichnenden Pixel werden auf die Hintergrundfarbe gesetzt. |
3 | PEN_XOR |
XOR-Modus, Bei jedem zu zeichnenden Pixel wird geprüft, ob es bereits gesetzt ist. Wenn ja, wird das Pixel gelöscht (auf Hintergrundfarbe gesetzt). Wenn nein, wird es normal gezeichnet (auf Vordergrundfarbe gesetzt). Dadurch bleiben auf dem Bildschirm bereits befindliche Texte und Grafiken weiterhin sichtbar, aber invers. |
Syntax: |
PLOT <X> , <Y> PLOT TO <X> , <Y> PLOT ( <X> , <Y> ) PLOT TO ( <X> , <Y> ) PLOT STEP ( <X> , <Y> ) |
X: | Integer-Ausdruck |
Y: | Integer-Ausdruck |
Syntax: |
PLOTR <X> , <Y> PLOTR ( <X> , <Y> ) |
X: | Integer-Ausdruck |
Y: | Integer-Ausdruck |
Syntax: | POKE <Adresse> , <Wert> |
Adresse: | Integer-Ausdruck |
Wert: | Integer-Ausdruck |
Syntax: |
PRESET <X> , <Y> PRESET ( <X> , <Y> ) |
X: | Integer-Ausdruck mit einem Wert >= 0 |
Y: | Integer-Ausdruck mit einem Wert >= 0 |
Syntax: |
PRINT PRINT <Abschnitt> PRINT <Abschnitt> <Trennzeichen> PRINT <Abschnitt> <Trennzeichen> <weitere Abschnitte> PRINT <Abschnitt> <Trennzeichen> <weitere Abschnitte> <Trennzeichen> PRINT # <Kanal> PRINT # <Kanal> , <Abschnitt> PRINT # <Kanal> , <Abschnitt> <Trennzeichen> PRINT # <Kanal> , <Abschnitt> <Trennzeichen> <weitere Abschnitte> PRINT # <Kanal> , <Abschnitt> <Trennzeichen> <weitere Abschnitte> <Trennzeichen> |
Kanal: | Integer-Ausdruck mit dem Wert 1 oder 2 |
Abschnitt: | String-Ausdruck oder Integer-Ausdruck |
Trennzeichen: | Komma oder Semikolon |
linksbündige Ausgabe | rechtsbündige Ausgabe |
---|---|
A=12
PRINT "A=";A |
A=12
PRINT "A=",A |
Syntax: |
PSET <X> , <Y> PSET ( <X> , <Y> ) |
X: | Integer-Ausdruck mit einem Wert >= 0 |
Y: | Integer-Ausdruck mit einem Wert >= 0 |
Syntax: | READ <Variable> [ , ... ] |
Syntax: |
RESTORE RESTORE <Zeilennummer> RESTORE <Marke> |
Syntax: | SCREEN <Integer-Ausdruck> |
Syntax: |
SELECT CASE <Integer-Ausdruck> CASE <Werteliste> <Anweisungen> [ CASE <Werteliste> <Anweisungen> ] [ CASE ELSE <Anweisungen> ] END SELECT |
Werteliste: |
durch Komma getrennte Liste von Integer-Literalen
und/oder Integer-Konstanten, kann auch nur ein Wert sein |
Syntax: |
SUB <Prozedurname> SUB <Prozedurname> ( <Argument> [ , ... ] ) |
Syntax: | SWAP <Variable_1> , <Variable_2> |
Syntax: | WAIT <E/A-Adresse> , <Maske> [ , <Inversion> ] |
E/A-Adresse: | Integer-Ausdruck |
Maske: | Integer-Ausdruck |
Inversion: | Integer-Ausdruck |
Syntax: | WHILE <Bedingung> |
Bedingung: | Integer-Ausdruck |