OWBasic

Gruppe INTRO Start INTRO Alphabetischer Index

Neu in Version 5.0

Neue Merkmale der Version 5.0 von OWBasic sind:

Die graphische Oberfläche (GUI) von OWBasic wurde erneuert; OWBasic erscheint jetzt in dem für Add-Ins üblichen Aussehen. Außerdem lädt OWBasic jetzt deutlich schneller.

Der Dialog zum Ändern der Optionen ist nicht mehr in OWBasic enthalten; zum Konfigurieren der Optionen ist das Programm "OWBasic Settings", das in der OWBasic Standard Library enthalten ist, nötig.

Das Zwischenspeichern eines kompilierten Programmes in die SHARED-Datei ( Caching) ist möglich. ( OPTIONS)
ACHTUNG: Damit OWBasic bei dem Start eines Programmes nach einer zwischengespeicherten Version sucht, muß in den Optionen "Caching" aktiviert sein!

Wenn ein Laufzeitfehler auftritt, fragt OWBasic, ob es nach der Fehlerposition suchen soll. Wurde das Programm von IEdit gestartet, so sucht IEdit, nachdem der Fehler gefunden wurde, die Fehlerposition auf.

Einige Fehlermeldungen enthalten nun zusätzliche Informationen; z.B. wird bei Auftreten des Fehlers "Index out of range" auch der fehlerhafte Index angezeigt.

Der Compiler optimiert Variablen- und Arrayzugriffe, so daß weniger Programmcodes entstehen. Konstante Ausdrücke wie z.B. der Zugriff auf ein globales Array mit einem konstanten Index (z.B. PRINT arr[1]) werden zur Kompilierzeit ausgewertet, so daß der gleiche Code wie für den Zugriff auf eine normale Variable erzeugt wird.

Anwenderprozeduren sind nicht mehr auf 250 (PV-S1600: 1000) limitiert, da sie nun in die Symboltabelle eingetragen werden.

Die Kapazität für Symbole, Daten und Programmcode und die maximale Stringlänge wurden vergrößert (nicht auf dem PV-S1600). Für Daten und Programme stehen nun nicht 12288, sondern 16128 Words zur Verfügung; anstatt 5392 sind nun maximal 5632 Programmcodes möglich. Die maximale Stringlänge beträgt nicht mehr 150, sondern 220 Zeichen. Außerdem stieg die maximale Anzahl verschachtelter Kontrollstrukturen von 15 auf 19 und die maximale Bezeichnerlänge von 17 auf 30.

Die Syntax für die Deklaration von Funktionszeigern wurde geändert.

Das Typsystem des Compilers wurde komplett überarbeitet ( VARIABLES);
Zeiger sind jetzt typsicher, außerdem können eigene Typen mit ENUM und FPTR erstellt werden.

Umwandlungen zwischen Zeigern und Integern sind möglich.

Mit dem Operator '*' ist das explizite Dereferenzieren von Zeigern möglich.

Funktionen können Pointer zurückgeben.

Die globale Konstante #INTSIZE gibt die Größe eines Integers in Byte an (alte PVs: 2, PV-S1600: 4)

Der Button "Menu Bar" in der Hardicon-Leiste spricht nun nicht mehr den Abort-Dialog an, sondern kann von OWBasic-Programmen abgefragt werden.

Die Funktion SETJUMP% speichert den Code-Pointer des Interpreters und zusätzliche Daten in einem Array der Größe #JUMPBUFSIZE. Die darin gespeicherte Programmstelle kann später von überall aus mittels JUMP angesprungen werden (vgl. setjmp () und longjmp () in ANSI C).

Das globale Array ERRORHANDLER kann durch die Funktion SETJUMP% einen Code-Pointer aufnehmen, der – sofern ungleich 0 – bei Auftreten eines Laufzeitfehlers angesprungen wird.

Es ist möglich, mittels des globalen Arrays EXITHANDLER einen Programmabbruch abzufangen.

Die Funktion APOTIME% fragt die Zeit bis zum automatischen Abschalten des PV in 500ms-Einheiten ab. Mit der Prozedur SETAPOTIME kann diese verändert werden.

Die Buttons "Light" und "Off" in der Hardicon-Leiste werden von OWBasic abgefragt. Ist dies nicht erwünscht, so kann die Funktionalität mit der Prozedur SYS abgeschaltet werden.

Wenn durch SYS aktiviert, schaltet sich der PV nach einer gegebenen Zeit ohne Betätigung des Touchscreens automatisch ab (AutoPowerOff).

Der PV kann auf Befehl ausgeschaltet werden ( POWEROFF).

Über SYSDLG können auch Systemeinstellungsdialoge (Kontrast, Format etc.) aufgerufen werden.

FILEREAD nimmt als optionalen vierten Parameter die Anzahl der Blocks an, die in den Filebuffer geladen werden soll.

POLYGON stellt ein Polygon dar.

MSGBOX stellt eine Message-Box auf dem Bildschirm dar.

Die Funktion TOUCHED! kann auch ohne Parameter aufgerufen werden; sie bewirkt dann das gleiche wie NEWTOUCH!.

Über die Funktion LIGHT! kann der Status der EL-Hintergrundleuchte abgefragt werden.

DRAWICON kann ein Icon auch teilweise darstellen.

Mittels CONST können auch initialisierte Arrays von Daten- und Funktionszeigern erstellt werden.

Prozeduren und Funktionen können Default-Parameter besitzen.

Mittels ENUM können Aufzählungstypen deklariert werden.

XCHGS tauscht zwei Strings aus.

Die Systemsprache kann über SYSLANG abgefragt werden. .

Der Name des im Autorun-Modus gestarteten Programmes kann mit OWBasic Settings angepaßt werden.

Über SYSDLG sind zwei neue Dialoge verfügbar.

Version und Dateidetails eines Modus werden über MODEVER$ bereitgestellt.

Mittels KBDRAW und KBWAIT! kann eine Tastatur dargestellt und abgefragt werden.


  • NEW44 - Neu in Version 4.4
Gruppe INTRO Start INTRO Alphabetischer Index