INV
Aus C64-Wiki
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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)