|
|
|
|
|
|
Bei der Textausgabe auf dem Bildschirm haben Sie beim Omikron Basic zwei Möglichkeiten. Zum einen können
Sie sich der Befehle PRINT und WRITE bedienen. Die andere Möglichkeit besteht in der Verwendung des
TEXT-Befehls oder der entsprechenden MacOS-Funktionen.
Bei der ersten Varianteten haben Sie spezielle Möglichkeiten zur Bildschirmsteuerung mit Hilfe von sogenannten
Escape-Sequenzen, während die zweite Variante besonders den Vorteil bietet, den Text auf ein Pixel genau plazieren
zu können.
Bei PRINT- und WRITE-Befehlen emuliert Omikron Basic ein Terminal vom Typ VT52, das eine ganze Anzahl von Steuerfunktionen
zur Verfügung stellt. Diese Steuerfunktionen werden durch ein spezielles Sonderzeichen eingeleitet, den Escape-Code.
Escape oder abgekürzt ESC hat den ASCII-Code 27. Dem ESC-Code folgen noch ein Buchstabe, der die Funktion
bestimmt, sowie bei Bedarf einige weitere Parameter. In der folgenden Aufstellung sind sämtliche Steuercodes
und ihre Bedeutung aufgelistet. Einige davon funktionieren auch mit dem LPRINT-Befehl. Natürlich ist es nicht
möglich, mit LPRINT CHR$(27)+"E" eine Seite zu löschen, wenn diese schon ausgedruckt wurde.
ESC A (Cursor hoch)
Damit wird der Cursor um eine Zeile nach oben bewegt. Befand sich der Cursor schon in der obersten Zeile, so passiert
nichts.
ESC B (Cursor runter)
Diese ESC-Sequenz bewegt den Cursor um eine Zeile nach unten. Befindet sich der Cursor schon in der untersten Zeile,
so geschieht nichts.
ESC C (Cursor rechts)
Um eine Spalte nach rechts wird der Cursor durch diese Sequenz bewegt.
ESC D (Cursor links)
Damit wird der Cursor um eine Position nach links bewegt. Diese Funktion ist identisch mit dem Kontroll-Code Backspace
(BS = ASCII-Code 8). Befindet sich der Cursor schon in der ersten Spalte, geschieht nichts.
ESC E (Clear home)
Diese Steuersequenz löscht den kompletten Bildschirm und positioniert den Cursor in die linke obere Bildschirmecke
(Home-Position).
ESC H (Cusor home)
Damit können Sie den Cursor in die linke obere Bildschirmecke bringen, ohne jedoch den Bildschirminhalt zu
löschen.
ESC I (Cursor nach oben)
Diese Sequenz bewegt den Cursor um eine Zeile nach oben. Im Gegensatz zu 'ESC A' wird jedoch dann, wenn der Cursor
sich schon in der obersten Zeile befand, eine Leerzeile eingefügt und der Rest des Bildschirms entsprechend
um eine Zeile nach unten gescrollt. Die Spaltenposition des Cursors bleibt dabei unverändert.
ESC J (Rest des Bildschirms löschen)
Mittels dieser Funktion wird der Rest des Bildschirms ab der augenblicklichen Cursorposition einschließlich
gelöscht. Der Cursor bleibt dabei an derselben Stelle.
ESC K (Rest der Zeile löschen)
Diese ESC-Sequenz löscht den Rest der Zeile, in der sich der Cursor befindet. Gelöscht wird ab der Cursorposition
einschließlich. Die Cursorposition selbst wird nicht verändert.
ESC L (Zeile einfügen)
Damit ist es möglich, an der augenblicklichen Cursorposition eine Leerzeile einzufügen. Der Rest des
Bildschirms wird nach unten geschoben, die unterste Zeile geht dabei verloren. Nach dem Einfügen steht der
Cursor am Beginn der neuen Zeile.
ESC M (Zeile löschen)
Diese Funktion löscht die Zeile, in der sich der Cursor befindet und rückt den Rest des Bildschirms nach
oben. Die unterste Bildschirmzeile wird dadurch frei. Der Cursor befindet sich nach dem Löschen in der ersten
Spalte der nachgerückten Zeile.
ESC Y (Cursor positionieren)
Dies ist mit die wichtigste Funktion. Sie erlaubt es, den Cursor beliebig auf dem Bildschirm zu positionieren.
Dazu braucht die Funktion noch die Cursorzeile und -spalte als Parameter, die in dieser Reihenfolge mit einem Offset
von 32 erwartet werden. Wollen Sie den Cursor z.B. in Zeile 5, Spalte 20 setzen, so müssen Sie den Befehl
'PRINT CHR$(27)+"Y"+CHR$(32+5)+CHR$(32+ 20);' ausgeben. Zeilen und Spalten werden dabei von Null an gezählt.
Bei einem 25 * 80 Bildschirm sind die Zeilen von 0 bis 24 und die Spalten von 0 bis 79 numeriert.
Hinweis: Einen solchen Steuerstring liefert auch die Funktion @(Y,X) zurück.
ESC b (Schriftfarbe wählen)
Mit dieser Funktion können Sie die Schriftfarbe für die weitere Ausgabe wählen. Bei einem Monochrommonitor
haben Sie nur die Wahl zwischen 0 = weiß und 1 = schwarz. Bei Farbdarstellung können Sie aus 16 Farben
wählen. Bei dem Parameter werden nur die untersten vier Bits ausgewertet (MOD 16). Deshalb können Sie
für die Farbe eins sowohl die Ziffer '1' als auch den Buchstaben 'A' oder 'a' verwenden.
ESC c (Hintergrundfarbe wählen)
Diese Funktion dient analog zur Wahl der Hintergrundfarbe. Wählen Sie für Schrift- und Hintergrund die
gleiche Farbe, so können Sie die nachfolgende Textausgabe natürlich nicht mehr sehen.
ESC d (Bildschirm bis Cursorposition löschen)
Durch diese Sequenz wird der Bildschirm vom Anfang bis zur augenblicklichen Cursorposition einschließlich
gelöscht. Die Position des Cursors wird dabei nicht verändert.
ESC e (Cursor einschalten)
Durch diese Escape-Sequenz wird der Cursor sichtbar, z.B. kann der Cursor eingeschaltet werden, wenn vom Benutzer
eine Eingabe erwartet wird.
ESC f (Cursor ausschalten)
Hierdurch wird der Cursor wieder abgeschaltet.
ESC j (Cursorposition speichern)
Wollen Sie die augenblickliche Position des Cursors speichern, so bedienen Sie sich dazu dieser Sequenz.
ESC k (Cursor auf gespeicherte Position setzen)
Das Gegenstück zu der obigen Funktion ist diese. Damit wird der Cursor wieder auf die Position gesetzt, die
vorher mit 'ESC j' gespeichert wurde. War keine Cursorposition gespeichert, wird der Cursor in die Home-Position
gebracht.
ESC l (Zeile löschen)
Damit wird die Zeile gelöscht, in der sich der Cursor gerade befindet. Die übrigen Zeilen bleiben davon
unbeeinträchtigt. Nach dem Löschen befindet sich der Cursor in der ersten Spalte der gelöschten
Zeile.
ESC o (Zeilenanfang löschen)
Hiermit wird der Anfang der Cursorzeile bis zur Cursorposition einschließlich gelöscht. Die Position
des Cursors bleibt unverändert.
ESC p (Reverse ein)
Durch diese Sequenz wird auf invertierte Ausgabe geschaltet. Dabei werden für die nachfolgende Ausgabe Schrift-
und Hintergrundfarbe vertauscht. Bei einem Monochrommonitor erhalten Sie weiße Schrift auf schwarzem Grund.
ESC q (Reverse aus)
Zum Zurückschalten auf Normaldarstellung dient diese Sequenz.
ESC v (Automatischer Überlauf ein)
Nach Ausführen dieser Sequenz wird bei einer versuchten Ausgabe über das Zeilenende hinaus automatisch
eine neue Zeile begonnen.
ESC w (Automatischer Überlauf aus)
Damit wird die obige Sequenz wieder aufgehoben. Beim Versuch, über das Zeilenende zu schreiben, werden alle
nachfolgenden Zeichen in die letzte Spalte dieser Zeile geschrieben.
Weitere Steuerzeichen, die nicht durch ESC eingeleitet werden:
CHR$(7) (BEL, Tonausgabe)
Es wird ein System-Beep ausgegeben. Wie sich der anhört, hängt von der Einstellung im Kontrollfeld Ihres
Macs ab.
CHR$(8) (BS, Back Space)
Der Cursor rückt eine Position nach links und löscht dabei das Zeichen unter dem Cursor.
CHR$(9) (TAB, Tabulator)
Der Cursor springt zur nächsten Tabulatorposition.
CHR$(10) (LF, Line Feed)
Ein Zeilenvorschub wird ausgelöst.
CHR$(12) (FF, Form Feed)
Bewirkt auf dem Drucker, daß die aktuelle Seite geschlossen wird. Bei den meisten Druckern passiert jetzt
aber noch nichts. Der Ausdruck erfolgt erst, wenn mit 'CHR$(26)' das ganze Dokument geschlossen wird.
CHR$(13) (CR, Carriage Return)
Der Cursor wird an den linken Rand der Zeile bewegt.
CHR$(26) (DE, Document End)
Bewirkt auf dem Drucker, daß die aktuelle Seite geschlossen und das ganze Dokument ausgedruckt wird.
|
|
|
Support | Bestellen | Start | Home: http://www.berkhan.de |
|
© 1997-2001 |