INV
INV | |
Syntax: | 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 |
Abkürzung: | keine |
Token: | $64 $0d (100 13) |
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. In TSB arbeitet dieser Befehl doppelt so schnell.
Bei Über- oder Unterschreitung der zulässigen Werte (siehe Box) meldet der Interpreter die Fehlermeldung ?BAD MODE ERROR.
Beispiel[Bearbeiten | Quelltext bearbeiten]
10 PRINT CHR$(147);: 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 CHR$(19)
Das Beispiel schreibt einen Rahmen in die rechte untere Bildschirmecke, wartet und lässt den Inhalt einmal blinken.
$ | % | @ | ANGL | ARC | AT | AUTO | BCKGNDS | BFLASH | BLOCK | CALL | CENTRE | CGOTO | CHAR | CHECK | CIRCLE | CMOB | COLD | COLOUR | COPY | CSET | DELAY | DESIGN | DETECT | DIR | DISABLE | DISAPA | DISK | DISPLAY | DIV | DOWN | DRAW | DUMP | DUP | ELSE | END LOOP | END PROC | ENVELOPE | ERRLN | ERRN | EXEC | EXIT | EXOR | FCHR | FCOL | FETCH | FILL | FIND | FLASH | FRAC | GLOBAL | GRAPHICS | HI COL | HIRES | HRDCPY | INKEY | INSERT | INST | INV | JOY | KEY | LEFT | LIN | LINE | LOCAL | LOOP | LOW COL | MEM | MERGE | MMOB | MOB OFF | MOB SET | MOD | MOVE | MULTI | MUSIC | NO ERROR | NRM | OFF | OLD | ON ERROR | ON KEY | OPTION | OUT | PAGE | PAINT | PAUSE | PENX | PENY | PLACE | PLAY | PLOT | POT | PROC | RCOMP | REC | RENUMBER | REPEAT | RESET | RESUME | RETRACE | RIGHT | RLOCMOB | ROT | SCRLD | SCRSV | SECURE | SOUND | TEST | TEXT | TRACE | UNTIL | UP | USE | VOL | WAVE