Terms-LogoTerms97801 Version 2.0 Online Handbuch

Inhalt Index Voriges Kapitel Vorige Seite Nächste Seite Nächstes Kapitel Kapitel: 1 2 3 4 5 6 7 8 9 10 Anhang


5.2 Tastenprogrammierung

5.2.1 Funktionsweise der Tastenumsetzung

Die Schritte der Umsetzung eines Tastaturanschlags werden in folgender Grafik verdeutlicht:


Abb. 19: Tastenumsetzung

Die Tastatur liefert einen OEM-Code ab. Dieser Code ist abhängig von der verwendeten Tastatur, aber nicht von der Beschriftung der Tastaturkappe. Der zugehörige Windows-Tastaturtreiber setzt diesen OEM-Code in den virtuellen Keycode um, wobei die Ländereinstellungen für die Tastatur zur Umsetzung der nationalen Sonderzeichen verwendet wird.

Terms97801 erzeugt aus den virtuellen Keycodes zusammen mit Alt, Hoch und Strg-Taste einen Scancode des 97801-Terminals.

Ein 97801-Terminal, und damit auch Terms97801, erzeugt aus dem Scancode über seine Tastaturtabelle einen Character-Code, der auf die Leitung zum Host gegeben wird. Der Host schickt dieses Zeichen als Echo an das Terminal zurück. Die Darstellung des Zeichens auf dem Bildschirm hängt vom angewählten Font des 97801-Terminals ab.

Terms97801 geht in erster Linie von einer Umsetzung des virtuellen Keycodes in 97801-Scancodes aus. Eine entsprechende Tabelle (*.key) kann mit dem Menüpunkt Datei..Tastaturtabelle laden/speichern und der Tastenprogrammierung bequem individuellen Wünschen angepaßt werden.

Die Umsetzung von OEM-Code zu virtuellem Keycode kann mit Terms97801 über externe Tabellen realisiert werden. Die Tabelle kann über System..Terminal oder über Editieren der Ini-Datei angegeben werden.

Mit OEM-Tabelle ist der NumLock-Mechanismus für Terms97801 abgeschaltet. Das zugehörige Lämpchen zeigt dann den Zustand der Ch.-Code-Taste an.

ANMERKUNG:
Die Tastaturtreiber von WindowsNT 4.0 fangen einige Tasten ab und geben sie nicht an die Anwendung, in diesem Fall Terms97801, weiter. Die Verwendung von OEM-Tabellen unterliegt somit gewissen Einschränkungen.

5.2.2 Interaktive Tastenprogrammierung

Die Tastatur kann leicht und ohne Kenntnis von Tastaturcodes programmiert werden. Die gewünschte 97801-Taste wird über die Bitmap-Tastatur mit der Maus bestimmt, die dazugehörende PC-Taste wird auf der angeschlossenen Tastatur eingegeben.

Zur Programmierung einer Tastenzuordnung sollte die volle Tastatur auf dem Bildschirm angezeigt werden.

Ein Anklicken der Taste Prog versetzt die Tastatur in den Programmiermodus. Dies wird duch eine invertierte Darstellung der Tastaturanzeige sichtbar gemacht.

Für jede Tastenzuordnung sind folgende Schritte durchzuführen:

  1. Die zu programmierende Taste wird mit der linken Maustaste auf dem 97801-Tastaturbild angeklickt. Für Tastenkombinationen wird gleichzeitig Shift, Strg und/oder Alt auf der PC-Tastatur gedrückt. Es erscheint der Dialog zur Tastenprogrammierung:


    Abb. 20: Tastenprogrammierung vor der Eingabe der PC-Taste

  2. Nach Drücken der Schaltfläche 'PC-Taste eingeben' erscheint in der Mitte des Dialogs die Aufforderung, auf der PC-Tastatur die gewünschte Taste bzw. Tastenkombination zu drücken.

  3. Nachdem die gewünschte Taste gedrückt wurde, zeigt der Dialog die nun neu definierte Tastenzuordnung an.


    Abb. 21: Tastenprogrammierung nach der Eingabe der PC-Taste

  4. Anklicken von OK läßt die Zuordnung wirksam werden. Der Hinweis, daß die alte Zuordnung gelöscht wird, bedeutet, daß mit der gedrückten Tastenkombination vorher eine andere 97801-Taste angesprochen wurde.

Um herauszufinden, welche Tastenkombinationen noch unverwendet sind, kann mit dem Knopf 'Liste' eine Liste aller Tastenkombinationen angezeigt werden. Die erste Spalte zeigt alle PC-Tastenkombinationen. In der zweiten Spalte ist die jeweils zugehörige 97801-Taste eingetragen, falls für die PC-Taste eine solche programmiert ist.

Die Auswahl der Tastenkombination kann durch Doppelklick auf den Listeneintrag vorgenommen werden.

Falls eine Liste der Tastenzuordnungen gewünscht ist, kann diese mit dem Knopf 'Liste kopieren' in die Zwischenablage übertragen werden und mit einem geeigneten Programm ausgedruckt weden. Die Felder sind mit Tabulatoren getrennt. Da die Liste die 102 Tasten in je 8 Kombinationen mit Hoch, Strg und Alt enthält, wird der Ausdruck knapp 20 Seiten lang!


Abb. 22: Tastenprogrammierung durch Auswahl aus der Liste

Alle Tasteneingaben werden nach der Bearbeitung durch Terms97801 an Windows weitergegeben. Damit funktionieren die Windows-üblichen Tastensteuerungen wie Alt-Tab oder Alt-F4. Sollen bestimmte Tastenkombinationen nicht an Windows weitergegeben werden, muß das Kästchen 'PC-Taste für Windows sperren' angekreuzt werden. In der Standardtabelle ist dies für F10 getan, da Windows sonst durch diese Taste zur Auswahl im Menü wechselt. Programmierer/innen sollten dies für Strg+V und Strg+C vornehmen, falls sie diese Taste benötigen und auf diese Tastenkürzel für Kopieren und Einfügen verzichten können.

HINWEIS:
Unter den 32bit Windows-Plattformen gibt es einige Tasten, die eine Windows-Funktion auslösen, bevor sie an die Anwendung weitergegeben werden. Solche Tasten lassen sich nicht in ihrer Windows-funktion sperren. Eine solche Taste ist z.B. die Windows-Taste.

HINWEIS:
Die Taste Alt-Gr der PC-Tastatur bewirkt genau dasselbe wie gleichzeitiges Drücken von Strg und Alt. Dieser Sachverhalt ist eine technische Eigenheit der PC-Tastaturen. Für die Tastenprogrammierung von Terms97801 bedeutet dies, daß eine Tastenkombination mit Strg-Alt Gr nicht verwendet werden kann.

HINWEIS:
Die Beschriftung der PC-Taste und der Tastenname müssen nicht immer genau der angeschlossenen Tastatur entsprechen. Tasten ohne Beschriftung, z.B. mit Pfeilen, bleiben leer.

5.2.3 Tastaturtabelle

Terms97801 verwendet eine Tabelle, um die 'virtuellen keycodes' des PC auf Scancodes des 97801 umzusetzen. Eine Tabelle mit Standardwerten ist fester Bestandteil von Terms97801. Es kann aber auch eine externe Tastaturtabelle verwendet werden. Eine solche Tabelle entsteht, wenn die Menüfunktion Datei..Tastaturtabelle speichern aufgerufen wird. Alternativ kann die Tastaturtabelle auch im Dialog Einstellungen..Tastatur oder über den roten 'Save'-Knopf in der Tastaturanzeige gespeichert werden. Eine so gespeicherte Tastaturtabelle wird beim nächsten Start von Terms97801 automatisch geladen und statt der internen Tabelle verwendet. Die Tastaturtabellen haben die Endung .key.

Die externe Tastaturtabelle wird im ASCII-Format gespeichert und kann mit einem Editor bearbeitet werden. Normalerweise wird die Tastaturtabelle statt mit einem Editor über die interaktive Tastenprogrammierung per Maus erstellt.

Eine einmal erstellte Tastaturtabelle kann durch Kopieren für andere Terms97801-Installationen verfügbar gemacht werden.

5.2.4 Das Format der Tastaturtabelle

Eine kommentierte Beispieltabelle mit dem Namen pcto978.key befindet sich im Lieferumfang. Da Kommentare beim Einlesen herausgefiltert werden, werden sie beim Speichern nicht mehr geschrieben.

Das Editieren der Tastaturtabelle ist mühsam und es gibt nur wenig Gründe dies zu tun. Ein Grund ist der Wunsch, eine 97801-Taste über verschiedene PC-Tasten erreichen zu können. In der interaktiven Tastenprogrammierung mit der Maus kann immer nur eine PC-Tastenkombination einer 97801-Tastenkombination zugeordnet werden, da die Tasteninfo nur eine zugehörige PC-Taste anzeigt.

Für die externe Tastaturtabelle gilt folgende Syntax:

- Leerzeilen werden überlesen
- Zeilen, die mit # oder ; beginnen, werden als Kommentare überlesen
- eine Tastenzuordnung hat folgenden Aufbau:
PC-VKey: ScanCode, shift, ctrl, shift+ctrl, alt, shift+alt, ctrl+alt, shift+ctrl+alt

Alle Code-Angaben werden hexadezimal interpretiert.
Die Zuordnung einer Shift-Ctrl-Alt-Kombination zur PC-Taste erfolgt über die Position der durch Kommata getrennten Zahlenreihe.

Der auf dieser Position stehende 97801-Scancode kann durch Addition von
0x100 für shift
0x200 für ctrl
0x400 für alt
als eine Shift-Ctrl-Alt-Kombination der 97801-Tastatur definiert werden.

Die Addition von 0x80 sperrt die Taste für die Weitergabe an Windows. Normalerweise werden alle Tasteneingaben nach der Verarbeitung durch Terms97801 an Windows weitergereicht. Damit funktioniert die Windows-übliche Tastatursteuerung, wie Alt-Tab, Alt-Space etc. Die Funktionstasten F1 und F10 werden von Windows für die Tastatursteuerung benutzt (F1 = Hilfe, F10 = Menüauswahl) und ebenso von vielen UNIX-Anwendungen. Darum sind in der Standard-Tabelle diese Tasten für Windows gesperrt, d.h. innerhalb von Terms97801 kann das Menü nicht mit F10 angesprochen werden.

Beispiel:

;Taste M PC-VK-Code = 4d 97801-Scancode = 4d
4d: 4d,14d,24d,06,0,54d,44d,64d
;Taste F10 PC-VK-Code = 79 97801-Scancode = 68
79: e8,1e8,268, 74, 0,568,468,668

Durch diese Zeilen in der Tastaturtabelle ergeben sich folgende Zuordnungen:

PC 97801 Kommentar
M M
shift-M shift-M
ctrl-M ctrl-M
shift-ctrl-M Mode-Taste 97801-Scancode für Mode ist 06
alt-M - für Windows reserviert/nicht gesperrt
shift-alt-M shift-alt-M
alt-gr-M alt-M Alt-GrPC=Alt97801
shift-alt-M shift-ctrl-M
F10 F10 Windows-Funktion (Menü) ist gesperrt
shift-F10 shift-F10 Windows-Funktion (Menü) ist gesperrt
ctrl-F10 ctrl-F10
shift-ctrl-F10 F20 97801-Scancode für F20 ist 74
alt-F10 - nicht belegt
shift-alt-F10 shift-alt-F10
alt-gr-F10 alt-F10 Alt-GrPC=Alt97801
shift-alt-gr-F10 ctrl-alt-F10



Terms-LogoTerms97801 Version 2.0 Online Handbuch

Inhalt Index Voriges Kapitel Vorige Seite Nächste Seite Nächstes Kapitel Kapitel: 1 2 3 4 5 6 7 8 9 10 Anhang