OFF

Aus C64-Wiki
Zur Navigation springenZur Suche springen
OFF
Syntax: OFF
Parameter
keine
Einordnung
Typ: Anweisung
Kontext: Bildschirmkontrolle
Aufgabe: Blinken von Zeichen beenden
Abkürzung: keine (TSB: oF)
Token: $64 $69 (100 105)
Verwandte Befehle
FLASH - BFLASH


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

Typ: Anweisung
Syntax: OFF

Das mit FLASH hervorgerufenene Blinken von Zeichen wird mit OFF beendet.

Beachten: Die Ausführung des FLASH-Befehls findet im Interrupt statt, das Programm läuft in dieser Zeit weiter. Der Programmierer hat in dieser Zeit keinen Einfluss mehr auf dessen Ablauf. Auch das Ende des Befehlslaufs ist nicht synchronisiert, die zuletzt angezeigte FLASH-Blinkphase hängt daher vom Moment des Ausführens von OFF ab. Wenn ein Programm vorzeitig abbricht (RUN/STOP  gedrückt oder Laufzeitfehler), muss das Blinken von Hand mit OFF ausgeschaltet werden, da der Interpreter es im Direktmodus weiterlaufen lässt.


In TSB wurden diese Synchronisationsprobleme behoben. Möchte man dort an einem laufenden FLASH-Screen zusätzliche Änderungen vornehmen, so synchronisiert man die Ausgabe mit WAIT $C5C7,$80,$80 (und danach PRINT u. ä.)


Beispiel[Bearbeiten | Quelltext bearbeiten]

 100 COLOUR 7,2:
     POKE 646,1:			; TSB: COLOUR 7,2,1 (kein POKE nötig)
     BFLASH 1,7,6:
     PRINT "{clear}";
 110 FOR x=0 TO 39
 120   y=x/2
 130   PRINT AT(x,y)"*" AT(39-x,y)"*"
 140   PRINT AT(x,0)"*" AT(x,20)"*"
 150   PRINT AT(0,y)"*" AT(39,y)"*"
 160 NEXT 
 170 FLASH 1,15:
     POKE 646,10			; TSB: COLOUR ,10 (kein POKE nötig)
 180 PRINT AT(0,1)"";:
     CENTRE "Demo von":
     PRINT 
 190 CENTRE "Flash und BFlash"
 200 PRINT AT(0,20)"";:
     PAUSE 6
 210 OFF :				; TSB: Auch FLASH OFF möglich
     PAUSE 6:
     BFLASH 0:				; TSB: Auch BFLASH OFF möglich
     COLOUR 11,12:
     POKE 646,0				; TSB: COLOUR 11,12,0 (kein POKE nötig)

Dieses Programm schreibt einen Kasten mit weißen Sternen auf rotem Grund und lässt alles blinken.