PEEK / POKE (Beispiel Syntax Beschreibung Basic)

 

Wenn Sie die Farben in den Farbregistern ändern wollten,
haben Sie bisher immer die SETCOLOR-Anwendung verwendet. Es
gibt auch noch eine andere Möglichkeit, die POKE-Anweisung.

Beispiel:
POKE 710, 22

Sie werden feststeLlen, dass der Hintergrund jetzt
goldfarh.en ist. Bei der POKE-Anwei- sung steht die erste
Zahl für das Farbregister. Folgende Ubersicht zeigt,
welcher POKE-Wert für welches Farbregister steht.

GRAPHICS SETCOLOR Anwendung POKE-Register
0 2 Hintergrund 710
4 Rand 712
1 Zeichen 708

1,2 2 Textfenster 710
1 Zeichen im Textfenster 709
4 Hintergrund 712
0 Zeichen 708

3,5,7 4 Hintergrund 712
2 Textfenster 710
1 Zeichen im Textfenster 709
8 Graphikfenster 708

Die zweite Zahl der POKE-Anweisung steht für die Farbe und
ihren HelLigkeitswert. Es gibt 1 6 Farben in 1 6
verschiedenen Helligkeitsstufen. Das ergibt zusammen 256
Farbabstufungen.

Zur Berechnung des POKE-Wertes für eine bestimmte Farbe
multiplizieren Sie die gewuenschte Farbnummer mit der Zahl
16 und addieren Sie den Wert der gewuenschten
Helligkeitsstufe dazu.

Beispiel:
Hintergrundfarbe in Hellblau (Farbnummer 9) in der Helligkeitsstufe 1 )
9*l 6+l 1 =l 55
POKE 710, 155
10 GRAPHICS 1
20 FOR X=O TO 255
30 PRINT X
40 POKE 712, X
50 FOR W=l TO 50 : NEXT W
60 NeXT X
Sie können dieses Programm an jeder Stelle stoppen, indem
Sie die CONTROL-Taste gedrueckt halten und zusätzlich die
Taste “1” drücken. Wollen Sie das Programm fortsetzen, so
drücken Sie beide Tasten nochmals.

Die PEEK-Anweisung ist das Gegenstueck zur POKE-Anweisung.
Sie verändert kein Register, sondern fragt den aktuellen
Wert eines Registers ab.

Im folgenden Beispiel wird nach dem aktuellen Farbwert des
Hintergrundregisters in Graphikstufe 0 gefragt (PRINT steht
dabei zur Darstellung auf dem Bildschirm).

PRINT PEEK ( 710 )
148
READY
Es gibt nun auch noch andere Möglichkeiten der POKE/PEEK-
Anweisungen. So existieren bestimmte Register, um z. B. die
Randbreite zu verändern oder um den PrOgraMMrecorder (falls
vorhanden) zu steuern.

POKE 82, X linker Rand, X gibt die Randbreite an
POKE 83, X rechter Rand, X gibt die Randbreite an
POKE 755, 4 kehrt den Text um und läßt den Cursor verschwinden
POKE 54018, 52 startet den Programmrecorder, wenn die PLAY-Taste gedrueckt ist

Ausserdem können über bestimmte Register einzelne Tasten
abgefragt werden. Weitere interessante Speicherstellen sind
im Anhang aufgefuehrt.