
KAPITEL 8

-8-       VT-Emulation

-8.1.1-     Allgemeine ASCI-Codes:

BEL  7      Pips
BACK 8      Cursor 1 Schritt links
TAB  9      Tabulation
LF   10     Nchste Zeile
CR   13     Cursor nach lins (Return)
ESC  27     Escape-Sequenz

-8.2.1-     VT-52-Steuercodes

ESC A       Cursor rauf
ESC B       ' runter 
ESC C       ' rechts
ESC D       ' links
ESC E       Bilschirm lschen
ESC F     * Spezial-Grafik
ESC G     * US-character-set
ESC H       ' home
ESC I       rauf, oben scrollen
ESC J       bis Seitenende lschen
ESC K       bis Zeilenende lschen
ESC L       Zeile einfgen
ESC M       Zeile herausklschen
ESC Y nl nc direkt positionieren, nl=Zeile nc=spalte (s.Angang)
ESC b n     Schriftfarbe n setzen
ESC c n     Hintergrundfarbe n
ESC d       Bildschirm bis Cursor lschen
ESC e       Cursor an
ESC f       Cursor aus
ESC j       Pos. speichern
ESC k       abrufen
ESC l       Zeile lschen
ESC o       Zeile bis Cursor lschen
ESC p       Invers
ESC q       Normal
ESC v       Umbruch an
ESC w       Umbruch aus
ESC =       Alternate keypad mode
ESC >       Normal

Drucker:

ESC V       Zeile drucken
ESC ]       Seite drucken
ESC ^       printer an
ESC _       printer aus

Report:

ESC Z       Terminalart abfragen
  ESC / Z   report - type VT101

ESC <       VT-52 Abschalten VT100 aktivieren.

-8.2.2- VT-52 Tastaturtabelle:

Die Tabelle zeigt spezielle Funktionstasten und die zu sendenden Zeichen. Das Orginal-
VT52 terminal hat 4 Funktionstasten PF1 -PF4, 4 Cursortasten und ein numerisches Key-
pad mit "0-9",  ".", "-", RETURN und ",".  Das numerische Keypad und die Cursortasten
knnen in den Standardmodus oder Applicationsmodus vom Hostcomputer gesetzt werden.

Normal Numlock
  0    ESC ? p
  1    ESC ? q
  2    ESC ? r
  3    ESC ? s
  4    ESC ? t
  5    ESC ? u
  6    ESC ? v
  7    ESC ? w
  8    ESC ? x
  9    ESC ? y
  -    ESC ? m
  ,    ESC ? l    Ins (shift 0)
  .    ESC ? n
Return ESC ? M

Cursor:

ESC A   (Hoch)
ESC B   (Runter)
ESC C   (Rechts)
ESC D   (Links)
      
VT-52 Funktionstasten:

PF1  ESC P
PF2  ESC Q
PF3  ESC R
PF4  ESC S

-8.3.1- VT100 Steuercodes

Scrollfunktionen:
ESC [pt;pb r  setze Scrollregion und anschalten
ESC [? 6 h    Region anschalten (origin mode)
ESC [? 6 l    ausschalten (full screen mode)

Cursor Funktionen:
ESC [pn A     Cursor pn * rauf. Kein Scrolling!
ESC [pn B     ' runter, kein Scrolling
ESC [pn C     ' rechts
ESC [pn D     ' links
ESC [pl;pc H  Setze cursor position - pl Zeile, pc Spalte
ESC [H        Home
ESC [pl;pc f  Set cursor position
ESC [f        Home
ESC D         Cursor runter, evt.unten scrollen!
ESC M         ' rauf, evt.scrollen!
ESC E         entspricht CR LF
ESC 7         Cursorposition speichern
ESC 8         Position abrufen


Applications-/ normaler Modus:
ESC [?1h    Cursor keys im Applicationsmodus
ESC [?1l    ' normal
ESC =       keypad keys im Applicationsmodus
ESC >       ' numerisch

Zeichensatz:
ESC (A    * UK char set as G0
ESC (B    * US char set as G0
ESC (0    * line char set as G0
ESC )A    * UK char set as G1
ESC )B    * US char set as G1
ESC )0    * line char set as G1
ESC N     * select G2 set for next character only
ESC O     * select G3 set for next character only

ESC [0m   Alle Attribute aus!
ESC [1m   Fett an
ESC [2m   Hell an
ESC [3m   kursiv an
ESC [4m   Unterstrichen an
ESC [5m   blinkend (in Monochrom hell)
ESC [6m   schnell blinkend (nur Farbe!)
ESC [7m   invers an
ESC [8m   unterlegt an
ESC [22m  Fett aus (Warum 22m?)
ESC [24m  Unterstrichen aus
ESC [25m  Blinken aus
ESC [27m  Invers aus.
ESC [30m  Schwarzer Vordergrund
ESC [31m  Rot
ESC [32m  Grn
ESC [33m  Gelb
ESC [34m  Blau
ESC [35m  Purpurrot
ESC [36m  Cyanblau
ESC [37m  Weiss
ESC [40m  Schwarzer Hintergrund
ESC [41m  Rot
ESC [42m  Grn
ESC [43m  Gelb
ESC [44m  Blau
ESC [45m  Purpurrot
ESC [46m  Cyanblau
ESC [47m  Weiss
ESC [48m  tiefstellen
ESC [49m  hochstellen

ESC #3  * Doppelte Hoehe+Breite, obere Haelfte
ESC #4  * Doppelte Hoehe+Breite, untere Haelfte
ESC #5  * Normal
ESC #6  * Doppelte Breite, normale Hhe

Loeschen von Cursor bis... (Cursor bewegt sich nicht!)
ESC [K    Zeilenende
ESC [0K   '
ESC [1K   Zeilenanfang
ESC [2K   Ganze Zeile
ESC [J    Seitenende
ESC [0J   '

ESC [1J   Seitenanfang
ESC [2J   Ganzen Bildschirm

Tabulation:
ESC H     setze Tabulator auf aktueller Position
ESC [0 g  lsche Tab auf akt. Pos.
ESC [3 g  lsche alle Tabs.

Drucken:
ESC [i    * print page
ESC [0i   * print page
ESC [1i   * print line
ESC [?4i  * auto print aus
ESC [?5i  * auto print an
ESC [4i   * print controller aus
ESC [5i   * print controller an

Requests / Reports (Fragen und Antworten)
ESC [5n        request for terminal status
  ESC [0n      report - no malfunction
ESC [6n        request for cursor position report
  ESC [pl;pc R report - cursor at line pl, & column pc
ESC [?15n      request printer status
  ESC [?10n    report - printer ready
ESC [c         request to identify terminal type
ESC [0c        request to identify terminal type
ESC Z          request to identify terminal type
  ESC [? 1;0 c report - type VT100

Initialisierung / Test:
ESC c       Reset (zum Anfangsstatus)
ESC [2;1 y  * power up test
ESC [2;2 y  * loop back test
ESC [2;9 y  * power up test till failure or power down
ESC [2;10 y * loop back test till failure or power down
ESC # 8     videoeinstellung (Text oder viele 'E's werden ausgegeben)

Einstellungen:
ESC [?2l    auf VT52 umschalten
ESC <       VT52 abschalten
ESC [?3h    * 132 Spalten
ESC [?3l    80 Spalten
ESC [?4h    weiches Pixel-Scrolling
ESC [?4l    grobes Scrolling
ESC [?5h    Weier Hintergrund
ESC [?5l    Schwarzer '
ESC [?7h    Umbruch an
ESC [?7l    ' aus
ESC [?8h    Tastaturwiederholung an
ESC [?8l    ' aus
ESC [?9h    * 480 scan line mode
ESC [?9l    * 240 scan line mode
ESC [?18h   * print form feed on
ESC [?18l   * print form feed off
ESC [?19h   * print whole screen
ESC [?19l   * Print only scroll region
ESC [20h    'newline' Modus:  LF, FF, VT, CR = CR/LF
ESC [20l    'normaler' Modus: LF, FF, VT = LF ; CR = CR)

LED Functionen:

ESC [0 q    LEDs aus
ESC [1 q    LED #1 an
ESC [2 q    LED #2
ESC [3 q    LED #3
ESC [4 q    LED #4

Die untere Zeile des Bildschirms ist eine Statuszeile mit folgenden Daten:

1) Status der 4 LED's
2) Status des keypads  (application mode /normal mode)
3) Status des cursor-keypad '

Control-Character:
^O      * shift out - selects G0 character set
^N      * shift out - selects G1 character set

-8.3.2- VT100 - Tastaturtabelle:

Keypad:
0       ESC O p
1       ESC O q
2       ESC O r
3       ESC O s
4       ESC O t
5       ESC O u
6       ESC O v
7       ESC O w
8       ESC O x
9       ESC O y
-       ESC O m
*       ESC O l (auf PrtSc-Taste)
.       ESC O n
Return  ESC O M

Cursor:  Normal    mit Numlock
   Up    ESC [A    ESC O A       Up
  Down   ESC [B    ESC O B      Down
  Right  ESC [C    ESC O C      Right
  Left   ESC [D    ESC O D      Left

   Up    ESC [A    ESC O A      Alt 9
  Down   ESC [B    ESC O B      Alt 0
  Right  ESC [C    ESC O C      Alt -
  Left   ESC [D    ESC O D      Alt =

Funktionstasten:
PF1      ESC O P
PF2      ESC O Q
PF3      ESC O R
PF4      ESC O S

Ein '*' bedeutet, da die Funktion von VT100EMU.PRG nicht benutzt wird.
ESC entspricht dezimal 27.
  Pn, pl und pc sind Variablen der VT-100 Emulation.
Sie werden direkt als ZIFFERN bergeben ! 0 kann weggelassen werden.
Falls Pn, pl, pc <=1 , kann es weggelassen werden.

  N, n1, n2 sind Variablen der VT-52 Emulation.
Hier wird der Wert als ASCI-ZEICHEN+32 bergeben, also:
 1=!  2="   3=#    4=$   5=%   6=&   7='   8=(   9=)  10=*

11=+  12=,  13=-  14=.  15=/  16=0  17=1  18=2  19=3  20=4 usw.

Die Steuercodes und Reports werden vom VT100EMUlator korrekt behandelt. das Senden der
Tastaturcodes, die Anzeige der Statuszeile etc.. ist Aufgabe des Terminalprogramms !

Falls Sie noch Fragen haben oder fr DM 25.- den VT100Emulator fr eignen Programme am
Atari ST bestellen mchten, schreiben Sie an die oben genannte Adresse.

