OWBasic

Gruppe NEW25 Start INTRO Alphabetischer Index

Kleine Probleme mit älteren Programmen

Ein paar kleinere Probleme können mit älteren Programmen auftreten:

Koordinaten werden strikter getestet. Zeichenfunktionen (außer LINE) melden einen Fehler, wenn die Koordinaten den (ansonsten unveränderten) Wertebereich von 0 bis 159 überschreiten. Ein Test von Koordinaten ist sehr leicht mit INSIDEG!() möglich.

Die booleschen Konstanten TRUE und FALSE sind neue Schlüsselwörter, die nicht als Namen von Variablen und Prozeduren benutzt werden können.

Die Code-Größe von Programmen ist geringfügig gestiegen. Alte Programme, die bisher fast den ganzen Speicherbereich nutzten, können für die Übersetzung zu groß sein.

Es gibt die Integer-Operatoren AND, OR und XOR, die die Integer-Operanden bitweise logisch verknüpfen und die Booleschen Operatoren AND, OR und XOR, die logische Operanden verknüpfen. Um sicherzustellen, daß der jeweils richtige Operator genutzt wird, sollten die Integer-Operatoren mit Klammern verwendet werden:

IF (a AND 1)>0 THEN .. : ! ist das Bit 1 der Variable a gesetzt
Bei Verwendung ohne Klammern würde das so interpretiert:
IF a AND (1>0) THEN ..
was einen Typfehler liefert: a ist integer und (1>0) ist boolesch.

IF A>0 AND A<10 THEN .. : ! liegt a im Bereich 1..9 
Hier werden keine Klammern benötigt. (Allerdings würde man hier besser INRANGE!() verwenden)

Gruppe NEW25 Start INTRO Alphabetischer Index