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, 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 | Feldvariable anlegen |
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 |
SUB | Implementierung einer benutzerdefinierten Prozedur |
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 <numerischer Ausdruck> |
Syntax: |
CALL <Adresse> CALL * <Hex-Adresse> |
Adresse: | numerischer Ausdruck |
Hex-Adresse: | Adresse als Hexadezimalzahl |
Syntax: |
CIRCLE <X> , <Y>
, <Radius> CIRCLE ( <X> , <Y> ) , <Radius> |
X: | numerischer Ausdruck |
Y: | numerischer Ausdruck |
Radius: | numerischer Ausdruck |
Syntax: | CLOSE # <Kanal> |
Kanal: | numerischer Ausdruck mit dem Wert 1 oder 2 |
Syntax: |
COLOR <Vordergrundfarbe> COLOR <Vordergrundfarbe> , <Hintergrundfarbe> COLOR <Vordergrundfarbe> , <Hintergrundfarbe> , <Randfarbe> |
Vordergrunddarbe: | numerischer Ausdruck |
Hintergrundfarbe: | numerischer Ausdruck |
Randfarbe: | numerischer Ausdruck |
Syntax: | CURSOR <numerischer 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: | numerischer Ausdruck |
Syntax: |
DIM <Name> ( <Dimension> )
[, ... ] DIM <Name> ( <Dimension> , <Dimension> ) [, ... ] |
Name: | Name der zu deklarierenden Feldvariable |
Dimension: | Zahlen-Literal |
Syntax: | DOKE <Adresse> , <Wert> |
Adresse: | numerischer Ausdruck |
Wert: | numerischer Ausdruck |
Syntax: |
DRAW <X> , <Y> DRAW TO <X> , <Y> DRAW ( <X> , <Y> ) DRAW TO ( <X> , <Y> ) DRAW STEP ( <X> , <Y> ) DRAW <Macro> |
X: | numerischer Ausdruck |
Y: | numerischer 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: | numerischer Ausdruck |
Y: | numerischer Ausdruck |
Syntax: |
END END FUNCTION END SUB |
Syntax: |
EXIT EXIT DO EXIT FOR EXIT WHILE |
Syntax: | FOR <Variable>=<Startwert> TO <Endwert> [ STEP <Schrittweite> ] |
Startwert: | numerischer Ausdruck |
Endwert: | numerischer Ausdruck |
Schrittweite: | numerischer 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: | numerischer 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 <numerischer Ausdruck> |
Syntax: |
INPUT [ <String-Literal> ; ] <Variable>
[ ; ... ] INPUT # <Kanal> , <Variable> [ , ... ] |
Kanal: | numerischer 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: | numerischer Ausdruck |
Y1: | numerischer Ausdruck |
X1: | numerischer Ausdruck |
Y2: | numerischer Ausdruck |
Syntax: |
LINE INPUT [ <String-Literal> ; ]
<String-Variable> LINE INPUT # <Kanal> , <String-Variable> |
Kanal: | numerischer Ausdruck mit dem Wert 1 oder 2 |
Syntax: | LOCALE <Name> [, ... ] |
Name: | Name der zu deklarierenden Variable |
Syntax: | LOCATE <Zeile> , <Spalte> |
Zeile: | numerischer Ausdruck mit einem Wert >= 0 |
Spalte: | numerischer Ausdruck mit einem Wert >= 0 |
Syntax: |
LOOP LOOP UNTIL <Bedingung> LOOP WHILE <Bedingung> |
Bedingung: | numerischer Ausdruck |
Syntax: |
LPRINT LPRINT <Abschnitt> LPRINT <Abschnitt> <Trennzeichen> LPRINT <Abschnitt> <Trennzeichen> <weitere Abschnitte> LPRINT <Abschnitt> <Trennzeichen> <weitere Abschnitte> <Trennzeichen> |
Abschnitt: | String-Ausdruck oder numerischer 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: | numerischer Ausdruck |
Y: | numerischer Ausdruck |
Syntax: |
MOVER <X> , <Y> MOVER ( <X> , <Y> ) |
X: | numerischer Ausdruck |
Y: | numerischer Ausdruck |
Syntax: | NEXT [ <Variable> ] |
Syntax: |
ON <Auswahl> GOSUB
<Zeilennummer> , <Zeilennummer>
[ , <Zeilennummer> [ , ... ] ] ON <Auswahl> GOSUB <Marke> , <Marke> [ , <Marke> [ , ... ] ] |
Auswahl: | numerischer Ausdruck >= 0 |
Syntax: |
ON <Auswahl> GOTO
<Zeilennummer> , <Zeilennummer>
[ , <Zeilennummer> [ , ... ] ] ON <Auswahl> GOTO <Marke> , <Marke> [ , <Marke> [ , ... ] ] |
Auswahl: | numerischer 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: | numerischer 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 an VDIP-Modul | INPUT, OUTPUT, APPEND | INPUT |
Syntax: |
OUT ( <Port> ) = <Wert>
OUT <Port> , <Wert> |
Port: | numerischer Ausdruck |
Wert: | numerischer Ausdruck |
Syntax: |
PAINT <X> , <Y> PAINT ( <X> , <Y> ) |
X: | numerischer Ausdruck |
Y: | numerischer Ausdruck |
Syntax: | PAPER <numerischer Ausdruck> |
Syntax: | PASSWORD INPUT [ <String-Literal> ; ] <String-Variable> |
Syntax: |
PAUSE PAUSE <numerischer Ausdruck> |
Syntax: | PEN <numerischer 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_RUBBER |
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: | numerischer Ausdruck |
Y: | numerischer Ausdruck |
Syntax: |
PLOTR <X> , <Y> PLOTR ( <X> , <Y> ) |
X: | numerischer Ausdruck |
Y: | numerischer Ausdruck |
Syntax: | POKE <Adresse> , <Wert> |
Adresse: | numerischer Ausdruck |
Wert: | numerischer Ausdruck |
Syntax: |
PRESET <X> , <Y> PRESET ( <X> , <Y> ) |
X: | numerischer Ausdruck mit einem Wert >= 0 |
Y: | numerischer 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: | numerischer Ausdruck mit dem Wert 1 oder 2 |
Abschnitt: | String-Ausdruck oder numerischer 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: | numerischer Ausdruck mit einem Wert >= 0 |
Y: | numerischer Ausdruck mit einem Wert >= 0 |
Syntax: | READ <Variable> [ , ... ] |
Syntax: |
RESTORE RESTORE <Zeilennummer> RESTORE <Marke> |
Syntax: | SCREEN <numerischer Ausdruck> |
Syntax: |
SUB <Prozedurname> SUB <Prozedurname> ( <Argument> [ , ... ] ) |
Syntax: | WAIT <E/A-Adresse> , <Maske> [ , <Inversion> ] |
E/A-Adresse: | numerischer Ausdruck |
Maske: | numerischer Ausdruck |
Inversion: | numerischer Ausdruck |
Syntax: | WHILE <Bedingung> |
Bedingung: | numerischer Ausdruck |