Coding-Schatzkästlein Kleine Tips & Scripts zum Webdesign Start > GfA-Basic > Befehlsübersicht
GfA-Basic: Befehlsübersicht (Atari-TOS / Windows / GfA2JS-Library)
Zusammenfassung
Name:
GfA-Basic-Befehlsübersicht
Aufgabe:
Liste der GfA-Basic-Befehle. CSS-fähige Browser stellen Zugehörigkeit des jeweiligen Befehls zur GfA-Version dar, die man in verschiedenen Listen darstellen kann (systemübergreifende Befehle, Atari-TOS-Befehle, Windows-Befehle & Funktionen der GfA2JS-Library).
Benötigt:
Für Farbkennung der Versionen CSS 1.0, für interaktive (DHTML-)Listen JavaScript 1.5
Beispiel:
-
Download:
-
GfA-Basic, der Geniestreich von Frank Ostrowski von der "Gesellschaft für
angewandte Systemtechnik", war eine der "Killer-Applikationen" der 16/32-Bit
Ataris (neben der DTP-Software Calamus,
der Textverarbeitung Signum,
der Musiksoftware Cubase
und, natürlich, der einfachen GEM-Benutzeroberfläche auf jenem
legendären flimmerfreien, hochauflösenden Schwarzweiß-Monitor). 8-)
Diese strukturierte Sprache - eine Mischung aus Basic, C und Pascal - begleitet
mich seit meiner Atari-ST-Zeit und macht mir immer noch so manche
Problemlösung schnell programmierbar - von der kleinen Routine, über
LogFile-Analyse bis hin zu Content-Management-Software und
Online-Shops (und zudem systemübergreifend: Code once, run everywhere
;-)). Aber auch wenn es GfA-Basic nicht nur für
Ataris TOS, sondern auch offiziell für DOS, Windows und Unix gibt (na ja,
auch eine offizielle, allerdings grottenschlechte, Version für den Amiga gibt,
bzw. gab es =:-) - und es gibt mittlerweile auch einen
Open-Source-Clone: X11-Basic
für POSIX-Systeme wie Unix/Linux, inkl. ARM-Linux auf Handhelds, aber auch Windows):
Meine Liebe gilt dem Atari, der übrigens immer noch als ultra-schnelle Emulation
auf meinem jetzigen PC Dienst tut.
Zur Übersicht habe ich mir diese kleine, interaktive Befehlsliste geschrieben.
Sie beinhaltet die Befehle der originalen Atari-Version (3.6TT), die Befehle
der Windows-Version, sowie die Funktionen der JavaScript-Bibliothek
GfA2JS-Library,
mit der ich möglichst viele GfA-Basic-Befehle unter JavaScript nutzbar
machen möchte (es erleichtert mir zumindest das Prototyping komplexerer
JavaScript-Programme ungemein, weil ich sehr einfach meinen hinreichend
bewährten, sprich ausgiebig getesteten GfA-Code einbinden kann).
Die Befehle teilen sich deswegen in mehrere Gruppen:
Die Befehle, die die eigentliche Grundlage des GfA-Basics bilden
("Basis-Befehle" - hellblaue Farbkennung). Sie stehen unter den verschiedenen
Computersystemen zur Verfügung und erlauben die relativ leichte Portierung der
Programme.
Die Befehle, die darüberhinaus in der Atari-Version
(3.6TT) vorhanden sind (hellgrüne Farbkennung).
Die Befehle, die in den Windows-Versionen hinzukamen
(hellgelbe Farbkennung).
Die bislang existenten JavaScript-Umsetzungen (grüne
Umrandung um den eigentlichen Farbcode).
Für die Farbkennung benötigt man einen CSS-fähigen Browser -
möchte man sich interaktiv einzelne Teillisten generieren (verwendet wird die
Funktion Darstellungswechsel), bedarf
es eines DHTML-Browsers (z.B. IE 5.x, Mozilla/Netscape 6.x, Opera 7.x, Konqueror,
Safari)
Die Befehle der Atari-Version sind allerdings nicht vollständig enthalten.
Insbesondere hardwarenahe Systembefehle fehlen ...
Bitweise Konjunktion zweier Bitmuster wobei das erste Bitmuster von einer Integervariablen stammen muß
'
Programmkommentar
*=
Multiplikation einer arithmetischen Variablen mit einem arithmetischen Ausdruck
++
Inkrementierung einer arithmetischen Variablen
+=
Addition eines arithmetischen Ausdrucks zu einer arithmetischen Variablen
--
Dekrementierung einer arithmetischen Variablen
-=
Subtraktion eines arithmetischen Ausdrucks von einer arithmetischen Variablen
/* - */
Programmkommentar
//
Programmkommentar
/=
Division einer arithmetischen Variablen durch einen arithmetischen Ausdruck
<<
Schiebt ein Bitmuster nach links
>>
Schiebt ein Bitmuster nach rechts
@
Unbedingte Sprunganweisung
^=
Bitweise exklusive Disjunktion zweier Bitmuster
^^
Logische exklusive ODER zweier Wahrheitswerte
_ADAP()
Nur aus Kompatibilität zu GfA-Basic für MS-DOS implementiert; liefert 0
_ANSI$()
Konvertiert einen String im OEM- (IBM-PC-, Atari-TOS- bzw. ASCII-)Zeichensatz in den ANSI-(Windows-)Zeichensatz
_Atom$()
Liefert den globalen Namen des übergebenen Atoms
_C
Enthält die Anzahl der möglichen Farben für den Bildschirm
_CB
Callback-Funktionen
_DATA
Positionierung des Datenzeigers für READ auf einen vorher mittels der Funktion _DATA ermittelten Wert
_DC()
Ermittelt das Handle des Device-Context für einen Fensterinnenbereich
_dosCmd$
Liefert die Kommandozeile von MS-DOS
_DRIVE
Liefert das aktuelle Laufwerk als Ordinal-Zahl zurück
_FILE(n)
Ermittelt das MS-DOS- bzw. MS-Windows-File-Handle des geöffneten Files #n. Ist kein File #n geöffnet wird 0 und bei Geräten (CON: LPT1:) eine negative Zahl zurückgegeben.
_font$
Liest die mit den Befehlen FONT GETFONT DLG FONT oder _font$=gesetzten Font-Informationen in einen String
_font$=
Speichert die im String angegebenen Font-Informationen zur späteren Verwendung mit FONT TO und SETFONT
_HUGE ()
Hilft bei der Adressierung von Speicherblöcken größer als 64 KByte
_hWnd
Liefert das Window-Handle der letzten Message
_INSTANCE
Liefert das Instance-Handle des laufenden Programmes
_LAR
Lädt die Zugriffsrechte für einen Selektor
_lParam
Liefert den Long-Parameter (32-Bit) der letzten Message
_LSL
Ermittelt das Limit eines Selektors
_MD
Nur aus Kompatibilität zu GfA-Basic für MS-DOS implementiert liefert 0
_Mess
Liefert die ID der letzten Message
_Name$
Gibt den Namen des Client-Rechners an
_OEM$()
Konvertiert einen String im ANSI-(Windows-)Zeichensatz in den OEM-(IBM-PC-, Atari-TOS bzw. ASCII-) Zeichensatz
_PAL()
Liefert das Handle der Farbpalette die zum angebenen Fenster gehört
_PSP
Liefert die Adresse des Programmsegment Präfix zurück
_Share
Prüft ob SHARE (oder ein Äquivalent) installiert ist
_VERR
Überprüft die Lese-Zugriffsrechte für einen Selektor
_VERW
Überprüft die Schreib-Zugriffsrechte für einen Selektor
_WDC()
Ermittelt das Handle des Darstellungsbereiches für ein Gesamtfenster
_WIN$()
Liest aus oder ändert den Titel eines Fensters
_WinID
Liefert die Window-ID der letzten Botschaft
_wParam
Liefert den Word-Parameter (16-Bit) der letzten Message
_X
Enthält die Breite des aktuellen Fensters in Pixel
_Y
Enthält die Höhe des aktuellen Fensters in Pixel
{}
Liest ein Doppelwort (32 Bits) ab einer Adresse
{}=
Schreibt ein Doppelwort (32 Bits) an eine Adresse
|
Bitweise inklusive ODER zweier Bitmuster
|=
Bitweise inklusive Disjunktion zweier Bitmuster wobei das erste Bitmuster von einer Integervariable stammen muß
Auflistung von numerischen und/oder Zeichenkettenkonstanten
DATE$
Ermittelt das Systemdatum
DATE$=
Setzt das Systemdatum
DEBUG
Setzt im Programm Breakpoints für den eingebauten Debugger
DEC
Dekrementierung einer arithmetischen Variablen
DEC$()
Wandelt einen Integerausdruck in die dezimale Darstellung
DECL
Deklaration einer in einer DLL befindlichen Funktion
DEFAULT
Teil eines SELECT - CASE Sprungverteilers. Enthält eine Verzweigungsanweisung die dann durchgeführt wird wenn keine der CASE-Bedingungen zutraf oder mittels CONT auf das DEFAULT verzweigt wurde
DEFBIT
Deklaration von Variablen bestimmter Spezifikation als BOOL'sche (Bit) Variablen
DEFBYT
Deklaration von Variablen bestimmter Spezifikation als 1 Byte (8 Bit) Integer-Variablen
DEFDBL
Deklaration von Variablen bestimmter Spezifikation als 8 Byte (64 Bit) Fließkomma-Variablen
DEFFILL
Festlegen eines Füllmusters
DEFFLT
Deklaration von Variablen bestimmter Spezifikation als 8 Byte (64 Bit) Fließkomma-Variablen
DEFFN
Erlaubt das Definieren von einzeiligen Funktionen
DEFINT
Deklaration von Variablen bestimmter Spezifikation als 4 Byte (32 Bit) Integer-Variablen
DEFLINE
Festlegung des Linienstils
DEFMOUSE
Setzt das Maussymbol
DEFNUM
Beeinflußt die Zahlenausgabe durch den PRINT-Befehl und dessen Varianten
DEFSNG
Deklaration von Variablen bestimmter Spezifikation als 8 Byte (64 Bit) Fließkomma-Variablen
DEFSTR
Deklaration von Variablen bestimmter Spezifikation als String-Variablen
DEFWRD
Deklaration von Variablen bestimmter Spezifikation als 2 Byte (16 Bit) Integer-Variablen
DEG()
Liefert den Winkel eines arithmetischen Ausdrucks im Gradmaß
DELAY
Programmunterbrechung
DELETE
Löscht ein definierbares Element aus einem eindimensionalen Feld beliebigen Variablentyps
DFREE()
Ermittelt den freien Speicherplatz auf einem Laufwerk
DIALOG
Bildet den Kopf einer Dialogstruktur
DIM
Dient zum Einrichten von Feldern beliebigen Variablentyps
DIM?()
Gibt die Anzahl der Elemente in einem numerischen bzw. die Anzahl der Zeichenketten in einem String-Feld an
DIR$()
Bestimmt den aktuellen Zugriffspfad
DIR - TO
Ausgabe von Verzeichnissen im aktuellen Zugriffspfad
DISABLEW
Sperrt Maus- und Tastatur-Input für ein Fenster
DIV
Dividiert eine arithmetische Variable durch einen arithmetischen Ausdruck
DIV()
Division zweier Integerausdrücke
DLG 3D
Erzeugt dreidimensionalen Effekt
DLG COLOR
Ruft den Farbauswahl-Dialog aus COMMDLG.DLL auf
DLG FILL
Setzt die Hintergrundfarbe bzw. das Hintergrundmuster in einem Dialog
DLG FONT
Ruft den Schriftenauswahl-Dialog aus COMMDLG.DLL auf
DLG OPEN
Ruft den Dateiauswahl-Dialog aus COMMDLG.DLL auf
DLG PRINT
Ruft den Druckerauswahl-Dialog aus COMMDLG.DLL auf
DLG SAVE
Ruft den Dateiauswahl-Dialog aus COMMDLG.DLL auf
DLG()
Ermittelt das Handle eines Dialoges bzw. eines Dialogitems
DLGBASE
Skaliert die Abmessungen von Dialogboxen und Dialog-Controls
DLGITEM()
Ermittelt das Handle eines Dialog-Items
DLL
Öffnet eine DLL (dynamic link library)
DMACONTROL
Kontrolliert den DMA-Sample-Sound
DMASOUND
Gibt Sound-Samples über DMA (Direct Memory Access) aus
DO LOOP
Nicht-abweisende Programmschleife die endlos durchlaufen wird und nur durch den Strukturbefehl EXIT IF verlassen werden kann
DOUBLE{}
Liest eine 64 Bit IEEE-Double-Zahl ab einer Adresse
DOUBLE{}
Schreibt eine 64 Bit IEEE-Double-Zahl an eine Adresse
DPEEK()
Liest zwei Bytes (16 Bits) ab einer Adresse
DPOKE
Schreibt ein Wort (16 Bits) an eine Adresse
DRAGBOX
Bewegen eines Rechteckausschnittes über den Bildschirm
DRAW
Zeichnen eines Punktes bzw. von Linien zwischen jeweils zwei Punkten auf dem Bildschirm
Legt Dateien mit wahlfreiem Zugriff (random access) an
FILES - TO
Ausgabe von Verzeichnissen im aktuellen Zugriffspfad
FILESELECT
Auswahl einer Datei
FILL
Füllen einer beliebig geformten Fläche
FILLMODE
Legt den Füllmodus fest
FIX()
Liefert den ganzzahligen Anteil eines arithmetischen Ausdrucks
FLAG EXIT
Erlaubt es das Beenden von Windows zu verhindern
FLASH
Läßt ein Fenster durch Aktiv/Inaktiv-Darstellung blinken
FLOOR()
Liefert die größte ganze Zahl die kleiner oder gleich einem arithmetischen Ausdruck ist
FLUSH
Löscht interne Puffer
FN
Unbedingte Sprunganweisung
FONT
Generiert Schriften-Parameter für SETFONT
FOR - NEXT
Programmschleife die für eine definierte Anzahl von Schritten durchlaufen wird (Zählschleife)
FORM INPUT
Eingabe von Stringvariablen
FORM INPUT AS
Eingabe von Stringvariablen
FRAC()
Liefert den gebrochenen Anteil eines arithmetischen Ausdrucks
FRE()
Angabe des freien Speichers
FREEBMP
Löscht eine mittels CREATEBMP erzeugte Bitmap aus dem Speicher
FREEDC
Löscht einen Device-Context (Handle)
FREEDLL
Freigabe einer DLL (dynamic link library)
FREEFONT
Freigeben einer Schrift
FROUND()
Liefert einen gerundeten Wert eines arithmetischen Ausdrucks x (kaufmännische Rundung)
FSATTR
Setzt die Attribute einer Datei
FSETDTA
Setzt neue Adresse der disk transfer area
FSFIRST()
Ermöglicht die Suche nach der ersten Datei mit einem bestimmten Kriterium
FSNEXT()
Sucht nach der nächsten Datei mit einem mittels FSFIRST festgelegtes Kriterium
FULLW#
Erweitern eines Fensters auf Maximalgröße
FUNCTION Name$ ENDFUNC
Ermöglicht die Berechnung eines Zeichenkettenausdruckes der mehrfach im Programm benötigt wird wobei der Ausdruck von den beteiligten String-Variablen abhängt
FUNCTION Name ENDFUNC
Ermöglicht die Berechnung eines arithmetischen Ausdrucks der mehrfach im Programm benötigt wird wobei der Wert des Ausdrucks von den Ausprägungen der beteiligten Variablen abhängt
Meldet TRUE zurück falls das Fenster ikonisiert ist
IF - ENDIF
Bedingter Anweisungsbefehl der es ermöglicht bestimmte Programmteile nur dann ausführen zu lassen wenn eine Bedingung logisch wahr ist.
IMAX()
Liefert das Maximum der übergebenen Argumente
IMIN()
Liefert das Minimum der übergebenen Argumente
IMP()
Bitweise Implikation zweier Bitmuster
INC
Inkrementierung einer arithmetischen Variablen
INKEY$
Liest ein Zeichen von der Tastatur (nicht jedoch Tastaturumschalttasten wie Shift Alt Alt Gr Strg)
INP(#n)
Auslesen eines Bytes aus einer vorher geöffneten Datei
INP(PORT)
Auslesen eines Bytes von einem Port
INP?(PORT)
Testet Port auf Empfangsbereitschaft
INPAUX$
String von seriellem Port (RS232) lesen
INPMID$
String von MIDI-IN-Port lesen
INPUT
Eingabe von Variablen oder Variablenlisten mit und ohne vorangestellten Text
INPUT #
Einlesen von Daten aus einer zuvor geöffneten Datei
INPUT$
Einlesen einer Zeichenkette von der Tastatur oder aus einer Datei
INSERT
Fügt einen arithmetischen oder Zeichenkettenausdruck in ein eindimensionales Feld entsprechenden Variablentyps an einer definierbaren Stelle ein
INSTR()
Sucht optional ab einer bestimmten Position in einem Zeichenkettenausdruck nach einem Teilstring. Wird der Teilstring gefunden wird die Position zurückgemeldet an der der Teilstring im Zeichenkettenausdruck beginnt. Wird der Teilstring nicht gefunden wird 0 zurückgegeben
INT()
Liefert den ganzzahligen Anteil eines arithmetischen Ausdrucks
INT{}
Liest ein Wort (16 Bits) ab einer Adresse
INT{}=
Schreibt ein Wort (16 Bits) an eine Adresse
INTR()
Aufruf von DOS- oder BIOS-Funktionen
INVALIDATE
Merkt ein spezifiziertes Rechteck zum Neuzeichnen vor
INVERT
Stellt den Inhalt eines spezifizierten Rechtecks invers dar
Bildet aus zwei wortwertigen Integerausdrücken eine langwortwertige Integervariable
MALLOC()
Reservierung von Speicherbereichen
MAPMODE
Legt den Übersetzungsmodus für den aktuellen Device-Context fest
MAT ADD
Addiert die Elemente zweier ein- oder zweidimensionaler Fließkommafelder
MAT BASE
Festlegung des Zeilen- bzw. Spaltenoffsets für Feldindizierungen
MAT CLR
Setzt alle Elemente eines ein- oder zweidimensionalen Fließkommafeldes auf den Wert 0
MAT CPY
Kopiert ab einem definierbaren Zeilen- bzw. Spaltenoffset eine definierbare Anzahl von Zeilen mit jeweils einer definierbaren Anzahl von Elementen von einer Quellmatrix an einen definierbaren Zeilen- bzw. Spaltenoffset einer Zielmatrix.
MAT DET
Berechnung der Determinante eines zweidimensionalen Fließkommafeldes das als Matrix aufgefaßt wird
MAT INPUT #
Einlesen der Werte eines dimensionierten Fließkommafeldes aus einer Datei
MAT INV
Berechnung der Inversen eines zweidimensionalen Fließkommafeldes das als Matrix aufgefaßt wird
MAT MUL
Mulitpliziert ein- oder zweidimensionale Fließkommafelder die als Matrizen aufgefaßt werden
MAT NEG
Negierung aller Elemente eines ein- oder zweidimensionalen Fließkommafeldes
MAT NORM
Zeilen- oder spaltenweise Normierung eines zweidimensionalen Fließkommafeldes das als Matrix aufgefaßt wird
MAT ONE
Erzeugung eines Einheitsmatrix
MAT PRINT
Ausgabe der Elemente eines Feldes auf dem Bildschirm oder auf einen Kanal
MAT QDET
Berechnung der Determinante eines zweidimensionalen Fließkommafeldes das als Matrix aufgefaßt wird
MAT RANK
Bestimmung des Ranges eines zweidimensionalen Fließkommafeldes das als Matrix aufgefaßt wird
MAT READ
Liest Werte eines dimensionierten Fließkommafeldes aus DATA-Zeilen ein
MAT SET
Belegt alle Elemente eines ein- oder zweidimensionalen Fließkommafeldes mit einem bestimmten Wert vor
MAT SUB
Subtraktion der Elemente zweier ein- oder zweidimensionaler Fließkommafelder
MAT TRANS
Kopiert die Transponierte einer Quellmatrix in eine Zielmatrix
MAT XCPY
Kopiert ab einem definierbaren Zeilen- bzw. Spaltenoffset eine definierbare Anzahl von Zeilen mit jeweils einer definierbaren Anzahl von Elementen von einer Quellmatrix an einen definierbaren Zeilen- bzw. Spaltenoffset einer Zielmatrix. Vor dem Kopiervorgang wird die Quellmatrix oder der entsprechende Teilausschnitt intern transponiert.
MAX()
Liefert das Maximum ihrer Argumente
MCI
Führt einen MCI (Multimedia Control Interface)-Befehl aus
MCI$
Führt einen MCI (Multimedia Control Interface)-Befehl aus
MCIERR$()
Liefert eine Erklärung eines MCI-Fehlers in Textform
MCIID()
Liefert die ID eines geöffneten MCI-Gerätes (Device)
MEMAND
Bitweise Verknüpfung von zwei Speicherbereichen
MEMBFILL
Füllt einen Speicherbereich mit einem Byte-Wert
MEMDC()
Erzeugt einen Speicher Device-Context (DC) der kompatibel zu einem angegebenen Device-Context ist
MEMLFILL
Füllt einen Speicherbereich mit einem Long-Word (4 Byte)-Wert
MEMOR
Bitweise ODER-Verknüpfung von zwei Speicherbereichen
MEMWFILL
Füllt einen Speicherbereich mit einem Wort (2 Byte)-Wert
MEMXOR
Bitweise exklusives ODER-Verknüpfung von zwei Speicherbereichen
MENU
Erzeugung einer Menü-Leiste
MENU KILL
Abschalten eines Pop-up-Menüs
MENU()
Ereignisverwaltung in Pop-up-Menüs und Fenstern
MESSAGE
Erzeugt eine Messagebox
MFREE()
Freigabe von reservierten Speicherbereichen
MID$
Setzt einen Stringausdruck mit definierbarer Länge an beliebiger Stelle in eine Zeichenkette ein
MID$()
Liefert ab einer Position p die folgenden m Zeichen eines Zeichenkettenausdrucks
MIN()
Liefert das Minimum ihrer Argumente
MIRROR$()
Erzeugt eine Zeichenkette, die aus dem Spiegelbild eines vorgegebenen Stringausdrucks besteht
MKD$()
Konvertiert einen 64 Bit Fließkommaausdruck im IEEE-Double Format in acht Zeichen
MKDIR
Anlegen eines Verzeichnisses
MKDMBF$()
Konvertiert einen Fließkommaausdruck aus dem MBF-Format in einen 8-Byte-String
MKI$()
Konvertiert einen 16 Bit Intergerausdruck in zwei Zeichen
MKS$()
Konvertiert einen 32 Bit Fließkommaausdruck im IEEE-Single Format in vier Zeichen
MKSMBF$()
Konvertiert einen Fließkommaausdruck aus dem MBF-Format in einen 4-Byte-String
MOD
Berechnet den Modulo eines Integerausdrucks zur Basis eines zweiten Integerausdrucks
MOD()
Berechnet den Modulo eines Integerausdrucks zur Basis eines zweiten Integerausdrucks
MODE
Einstellung der Zahlen-Darstellung
MOUSE
Ermittelt die aktuelle x- und y-Position des Mauszeigers und den Status der Mausknöpfe
MOUSEK
Ermittelt den aktuellen Status der Mausknöpfe
MOUSESX
Ermittelt die aktuelle x-Position der Maus in Pixel relativ zur linken oberen Ecke des Desktops
MOUSESY
Ermittelt die aktuelle y-Position der Maus in Pixel relativ zur linken oberen Ecke des Desktops
MOUSEX
Ermittelt die aktuelle x-Position des Mauszeigers
MOUSEY
Ermittelt die aktuelle y-Position des Mauszeigers
MOVEW #
Bewegen eines Fensters
MSHRINK()
Verkleinerung von reservierten Speicherbereichen
MUL
Multiplikation einer arithmetischen Variablen mit einem arithmetischen Ausdruck
MUL()
Multiplikation zweier oder mehrerer Integerausdrücke
Legt die nachfolgende Parameterliste auf dem Stack ab
PARENT()
Ermittelt für ein gegebenes Child window die Nummer des übergeordneten Fensters (Parent window)
PARENTW
Erzeugt ein Fenster wie OPENW verwendet jedoch zur Konfiguration des Fensters die Windows Style-Flags
PATBLT
Bildet eine bitweise Kombination eines gegebenen Rechteckausschnitts mit dem aktuellen Füllmuster
PAUSE
Programmunterbrechung
PBOX
Zeichnet ein gefülltes Rechteck
PCIRCLE
Zeichnet einen gefüllten Kreis
PEEK$()
Schreiben eines Speicherbereiches in eine Zeichenkettenvariable
PEEK()
Liest ein Byte (8 Bits) ab einer Adresse
PEEKEVENT
Ereignisüberprüfung in Menüs und Fenstern
PELLIPSE
Zeichnet eine gefüllte Ellipse
PERMUT
Liefert die Anzahl der Permutationen von n Elementen zu k-ten Klasse ohne Wiederholung
PI
Enthält die Kreiskonstante (3.1415926536)
PLAYMETA
Gibt ein spezifiziertes Metafile im aktuelen Device-Context aus
PLAYSOUND
Spielt WAV-Dateien ab
PLOT
Zeichnet einen Punkt auf dem Bildschirm
POINT
Meldet die Farbe eines Punktes zurück
POKE
Schreibt ein Byte (8 Bits) an eine Adresse
POKE$
Schreiben des Inhalts einer Zeichenkettenvariablen in einen Speicherbereich
POLYFILL
Füllt ein Vieleck mit einem wahlfreien Muster
POLYLINE
Zeichnet einen Linienzug mit einer wahlfreien Anzahl von Ecken
POLYMARK
Zeichnet einen Linienzug mit einer wahlfreien Anzahl von Ecken und mit Eckpunkten
POPUP()
Erzeugen eines Pop-Up-Menüs
POS()
Bestimmt die seit dem letzten Wagenrücklauf ausgegebenen Zeichen
POSTMESSAGE
Übergibt eine Message an das Message-Queue eines Anwendungsprogrammes (Fensters). Die Funktion wartet nicht (wie etwa SENDMESSAGE) auf die Abarbeitung der Nachricht. Die übergebene Message kann durch den Aufruf der Windows-Funktion GetMessage() oder PeekMessage() abgefragt werden.
PRBOX
Zeichnet ein gefülltes Rechteck mit abgerundeten Ecken
PRED()
Berechnung der nächst kleineren natürlichen Zahl zu einem Integerausdruck
PRED()
Liefert das Zeichen dessen ASCII-Wert um eins niedriger ist als das erste Zeichen eines Stringausdrucks
PRINT
Ausgabe von arithmetischen und/oder Zeichenkettenausdrücken
PRINT #
Ausgabe von Daten auf einem Datenkanal PRINT #n
PRINT AT
Ausgabe von arithmetischen und/oder Zeichenkettenausdrücken
PRINT AT USING
Formatierte Datenausgabe am Bildschirm
PRINT ATXY
Ausgabe von arithmetischen und/oder Zeichenkettenausdrücken an einer bestimmten Position
PRINT ATYX
Ausgabe von arithmetischen und/oder Zeichenkettenausdrücken an einer bestimmten Position
PRINT USING
Formatierte Datenausgabe auf den Bildschirm mit #m an eine Datei
PrinterDC()
Öffnet einen Device-Context um Druck-Ausgaben zu ermöglichen
PROCEDURE - RETURN
Ermöglicht die Zusammenfassung von Programmsegmenten die mehrfach im Programm verwendet werden zu einem Unterprogramm
PROMPT
Erzeugt eine Dialog-Box für Eingabe-Funktionen
PSAVE
Abspeichern des aktuellen GfA-Basic-Programms mit LIST-Schutz
PSET
Setzen eines Grafik-Punktes (TOS: mit Line-A)
PTST
Testet mit Line-A einen Bildschirmpunkt
PUT
Legt einen mit GET gespeicherten Bildschirmausschnitt in den Bildschirmspeicher ab
PUT #
Schreibt einen Datensatz in eine Random Access-Datei
Liefert das Bogenmaß eines im Gradmaß vorliegenden Winkels
RAND()
Erzeugt eine ganzzahlige 16-Bit Zufallszahl im Bereich von 0 bis n-1 (beides inklusive)
RANDOM()
Erzeugt eine ganzzahlige Zufallszahl zwischen 0 (inklusive) und x (exklusive)
RANDOMIZE
Initialisiert die Zufallszahlengeneratoren
RBOX
Zeichnet ein Rechteck mit abgerundeten Ecken
RC_INTERSECT()
Stellt Überlappungsbereiche von je zwei Rechtecken fest
READ
Einlesen von Daten aus DATA-Zeilen in Variablen
REALIZE
Übersetzt Einträge in der logischen (Farb-) Palette des aktiven Fensters in die Systempalette
RECALL #
Schnelles Laden eines mit STORE gespeicherten Textfiles
RECORD #
Legt den nächsten mit GET # zu lesenden oder mit PUT # zu schreibenden Datensatz fest
RELEASECAPTURE
Hebt den durch SETCAPTURE erzeugten exklusiven Maus-Input für ein spezifiziertes Fenster wieder auf
RELSEEK #
Relative Positionierung des Datenzeigers
REM
Programmkommentar
RENAME - AS
Umbenennen einer bestehenden Datei
REPEAT - UNTIL
Nicht-abweisende Programmschleife die solange durchlaufen wird bis die Bedingung am Schleifenende logisch wahr ist
RESTORE
Positionierung des Datenzeigers für READ
RESTOREDC
Stellt den zuvor abgespeicherten Status eines Device-Contextes (DC) wieder her
RESUME
Keine Funktion mehr: seit der Version 4.2 durch TRY/CATCH ersetzt worden
RETVAL
Erzeugt einen Rückgabewert für Callback- oder DLL-Funktionen
RFONT
Umkehrung zu FONT
RGBCOLOR
Selektion von Fensterwerten
RGBPOINT(x,y)
Ermittelt den RGB-Wert des Bildpunktes der Koordinate x,y
RIGHT$()
Liefert die letzten m Zeichen eines Zeichenkettenausdrucks
RINSTR()
Sucht optional ab einer bestimmten Position in einem Zeichenkettenausdruck nach einem Teilstring. Wird der Teilstring gefunden wird die Position zurückgemeldet an der der Teilstring im Zeichenkettenausdruck beginnt. Wird der Teilstring nicht gefunden wird 0 zurückgegeben
RMDIR
Löscht ein Verzeichnis
RND()
Erzeugt eine Zufallszahl zwischen 0 (inklusive) und 1 (exklusive)
ROL()
Rotieren eines Bitmusters nach links
ROR()
Rotieren eines Bitmusters nach rechts
ROUND()
Liefert einen gerundeten Wert eines arithmetischen Ausdrucks x
RSET
Setzt einen Stringausdruck rechtsbündig in eine Zeichenkette ein
RUBBERBOX
Zieht einen Rechteckausschnitt auf dem Bildschirm auf
RUN
Startet das im Arbeitsspeicher befindliche Programm
Speichert die Informationen über den Status des aktuellen Device-Contextes (DC)
SCALE()
Berechnet den Quotienten aus dem Produkt zweier Intergervariablen und einer dritten Integervariablen
SCROLL
Nur aus Kompatibilität zu den anderen GfA-Basic-Versionen implementiert
SEEK #
Absolute Positionierung des Datenzeigers
SELECT - CASE
Sprungverteiler der es ermöglicht bestimmte Programmteile in Abhängigkeit von einem Integerausdruck ausführen zu lassen
SENDMESSAGE
Übergibt eine Message an ein oder mehrere Fenster. Das SENDMESSAGE-Kommando kehrt nicht zurück bevor die Nachricht verarbeitet wurde. Nach Erhalt eines SENDMESSAGE-Calls ruft Windows direkt die entsprechende Fensterfunktion auf.
SETBMP
Ordnet einem Speicher-Device-Context eine Bitmap zu
SETCAPTURE
Bewirkt daß alle Ma,usaktionen auf ein spezifiziertes Fenster umgeleitet werden
SETCHECK
Ändert den Status einer Checkbox oder eines Radiobuttons
SETDC
Setzt einen Device-Context
SETFONT
Ändert die Schrift im aktuellen DC
SETMAPPERFLAG
Stellt den Modus für die Übersetzung eines logischen in einen physikalischen Font ein
SETMOUSE
Setzt den Mauscursor an eine definierte Position
SETTIME
Setzt die Systemzeit und das Systemdatum
SETTIMER
Setzt ein Timer Event
SETWINDOWSTYLE
Verändert nach einem OPENW das Aussehen eines Fensters durch Modifikation seiner Attribute
SGN()
Liefert das Vorzeichen eines arithmetischen Ausdrucks (-1/0/1)
SHELL
Aufruf des Kommandointerpreters
SHL()
Schiebt ein Bitmuster nach links
SHORT()
Vorzeichenerweiterung
SHORT{}
Liest ein Wort (16 Bits) ab einer Adresse
SHORT{}=
Schreibt ein Wort (16 Bits) an eine Adresse
SHOWDIALOG
Stellt eine Dialogstruktur auf dem Bildschirm dar
SHOWM
Schaltet den Mauszeiger ein
SHOWW
Stellt ein Fenster mit einem bestimmten Status dar
SHR()
Schiebt ein Bitmuster nach rechts
SIN()
Liefert den Sinus eines arithmetischen Ausdrucks
SINGLE{}
Liest eine 32 Bit IEEE-Double Zahl ab einer Adresse
SINGLE{}
Schreibt eine 32 Bit IEEE-Double Zahl an eine Adresse
SINH()
Liefert den Sinus hyperbolicus eines arithmetischen Ausdrucks
SINQ()
Liefert den 16tel-Grad-interpolierten Sinus eines arithmetischen Ausdrucks
SIZEW #
Verändern der Fenstergröße
SLEEP
Warten auf das Eintreten einer Message mit anschließender Verzweigung in die mit ON MENU xxx GOSUB spezifizierten Prozeduren
SOUND
Erzeugt einen Ton mit beeinflußbarer Tonhöhe
SPACE$()
Erzeugt einen Leerstring in dem eine vorgegebene Anzahl von Leerzeichen steht
SPC
Gibt Spaces aus
SQR()
Liefert die positive Quadratwurzel eines numerischen Ausdrucks
SSORT
Sortiert die Elemente eines Feldes ihrer Größe nach. Dazu wird das Shell-Metzner-Sortierverfahren verwendet
STACKSIZE
Ändert die Größe des Stapelspeichers für GfA-Basic
STARTDOC
Startet einen Druckauftrag
STICK()
Fragt die aktuellen Joystick-Positionen ab
STOP
Anhalten eines GfA-Basic-Programms
STORE #
Abspeichern eines String-Feldes als Textfile
STR$()
Wandelt einen arithmetischen Ausdruck in eine Zeichenkette um
STRETCH
Stellt eine Bitmap in veränderten Ausmaßen dar
STRIG()
Fragt den Status der Joystick-Buttons ab
STRING$()
Erzeugt eine Zeichenkette die aus einer vorgegebenen Anzahl von Wiederholungen eines Stringausdrucks besteht
SUB
Subtraktion eines arithmetischen Ausdrucks von einer arithmetischen Variablen
SUB()
Subtraktion zweier Integerausdrücke
SUCC()
Berechnet die nächst größere natürliche Zahl zu einem Integerausdruck
SUCC()
Liefert das Zeichen dessen ASCII-Wert um eins höher ist als das erste Zeichen eines Stringausdrucks
SWAP
Vertauscht zwei Variablen desselben Typs
SWAP()
Vertauschen von Low- und High-Wort
SWITCH
Teil eines SELECT - CASE-Sprungverteilers. Enthält eine Bedingungsprüfung
SYSCOL
Einstellung von Farben für Menüleisten, Pull-Down-Menüs, Pop-Up-Menüs und Fensterrahmen
SYSCOL()
Ermittelt die Systemfarbe für ein spezifiziertes Element
SYSMETRIC()
Ermittelt die Abmessungen für ein spezifiziertes Element
SYSTEM
Beendet ein GfA-Basic-Programm und kehrt zum aufrufenden Programm zurück
Ermittelt die Adresse einer Variablen bzw. eines Feldelementes
VAL()
Konvertiert einen Zeichenkettenausdruck in eine Zahl
VAL?()
Gibt an wie viele Stellen eines Zeichenkettenausdrucks mittels VAL() umgewandelt werden würden
VALIDATE
Schließt beim Neuzeichnen ein spezifiziertes Rechteck aus
VAR-Parameter
Deklarationsteil der Parameterliste einer PROCEDURE oder einer FUNCTION nach dem die Call by Reference Variablen folgen.
VARIAT()
Liefert die Anzahl der Variationen von n Elementen zur k-ten Klasse ohne Wiederholung
VARPTR()
Ermittelt die Adresse von Variablen bzw. Feldelementen
VB:
Aufruf einer internen Funktion innerhalb von Visual Basic oder einer Visual Basic EXE-Datei wenn das kompilierte Programm als DLL von VB aus geladen wurde (nur möglich in Verbindung mit dem Compiler eine Verwendung im Interpreter wäre unsinnig und systemgefährdend)
VDISYS()
VDI-System-Aufruf (GEM-Ausgabe)
VIEWPORT
Skaliert einen gegebenen Device-Context
VISIBLE?()
Meldet TRUE zurück falls das Fenster sichtbar (=Top Window) ist