INV

Aus C64-Wiki

Wechseln zu: Navigation, Suche
INV
Format: INV <zl>,<sp>,<bt>,<ho>
Parameter
zl: Bildschirmzeile (0..24)
sp: Bildschirmspalte (0..39)
bt: Breite (1..40)
ho: Höhe (1..25)
Einordnung
Typ: Anweisung
Kontext: Bildschirmkontrolle
Aufgabe: Invertieren eines Bildschirmbereichs
Shortcut: keiner
Verwandte Befehle
FCOL - FILL - MOVE - FCHR - COLOUR


Dieser Artikel beschreibt das Simons'-Basic-Schlüsselwort INV.

Typ: Anweisung
Syntax: INV <zl>,<sp>,<bt>,<ho>

INV invertiert Bereiche des Textbildschirms (oder den ganzen Textbildschirm). Die Farben, die dort schon vorher waren, bleiben erhalten, da die Zeichen selbst manipuliert werden (Bit 7 der Bytes im Bildschirmspeicher wird umgeschaltet).

Nützlich, wenn man bestimmte Stellen auf dem Bildschirm (z.B. selbstdefinierte Fenster) blinken lassen oder auch nur hervorheben möchte.

Bei Über- oder Unterschreitung der zulässigen Werte (siehe Box) meldet der Interpreter einen ?BAD MODE ERROR.

Beispiel: 

10 PRINT "{clr/home}";: CENTRE "demo inv"
20 sp=29: zl=14: bt=10: ho=10: ra=160: in=32
30 FCHR zl,sp,bt,ho,ra
40 FCHR zl+1,sp+1,bt-2,ho-2,in
50 PRINT AT(sp+2,zl+2) "-demo-"
60 PRINT AT(sp+2,zl+ho-2) "taste!"
70 WAIT 198,255
80 INV zl+1,sp+1,bt-2,ho-2: PAUSE 1: INV zl+1,sp+1,bt-2,ho-2
90 PRINT AT(sp+2,zl+ho-2) "danke!"
100 PRINT "{home}"

(schreibt einen Rahmen in die rechte untere Bildschirmecke,
wartet und lässt den Inhalt einmal blinken)
Persönliche Werkzeuge