Migration to the new server completed.

Please add any new defect you notice here!


Die Migration auf den neuen Server ist abgeschlossen.

Bitte neue Defekte hier vermerken!

MOVE

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



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

Typ: Anweisung
Syntax: MOVE <zl>,<sp>,<bt>,<ho>,<zz>,<zs>

MOVE dient dazu, Bereiche des Textbildschirms inklusive der Farben an eine andere Stelle des Textbildschirms (definiert durch <zz> und <zs>) zu kopieren.

Nützlich, um ohne großen Aufwand eine symmetrische Bildschirmgestaltung zu erzeugen.

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

Beachten: Die beiden letzten Parameter des Befehls (Zielzeile und Zielspalte) dürfen nur durch Konstanten angegeben werden. Der Interpreter wertet Variablen an dieser Stelle falsch aus, so dass unvorhersehbare Werte entstehen. Dieser Mangel ist unter TSB behoben.

Beispiel: 

100 PRINT "{clear/home}"
110 COLOUR 0,13: x=14: rv$=CHR$(18): sc$=CHR$(144): gr$=CHR$(152)
115 st$=rv$+sc$+":"+gr$+"{11*space}"+sc$+":": rr=39-LEN(st$)+4
120 FILL 0,0,40,1,160,5: MOVE 0,0,40,1,24,0
125 FILL 0,0,1,25,160,5: MOVE 0,0,1,25,0,39
130 REPEAT: x=x+RND(1)*2-1: GET x$
140 IF x<1 THEN x=1
150 IF x>rr THEN x=r
160 DOWNB 1,1,38,23
170 PRINT AT(x,1) st$
180 UNTIL x$>""

(erzeugt eine sich windende Straße, Abbruch per Tastendruck
 MOVE vervollständigt hier den Rahmen ums Bild)