Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

mapkey(1M)

mapkey(7)                                                         mapkey(7)

NAME
     mapkey - Mechanismus für PC-Terminals

BESCHREIBUNG
   Tastaturabbildung

     Die Tastaturabbildungen sind in /usr/include/sys/kd.h festgelegt. Für
     jede Taste sind zehn verschiedene Zustände möglich. Die ersten acht
     Zustände sind nachfolgend aufgeführt:

     -  BASE
     -  CTRL-SHIFT
     -  SHIFT
     -  ALT-SHIFT
     -  CTRL
     -  ALT-CTRL
     -  ALT
     -  ALT-CTRL-SHIFT

     Die beiden übrigen Zustände werden durch zwei spezielle Bytes ange-
     zeigt. Beim ersten Byte handelt es sich um ein Sonderstatus-Byte: die
     Bits dieses Bytes zeigen an, ob die Taste in einem oder mehreren der
     ersten acht Zustände eine Sonderfunktion hat. Beim zweiten Byte han-
     delt es sich um einen von vier Codes, die durch eines der vier Zeichen
     C, N, B oder O dargestellt werden; hiermit wird angegeben, wie das
     Drücken einer Feststelltaste sich auf die Belegung der betreffenden
     Taste auswirkt.

     Die folgende Tabelle beschreibt die Standard-Tastaturabbildungen. Mit
     Ausnahme der speziellen Schlüsselwörter (die später beschrieben wer-
     den) sind alle Werte ASCII-Zeichenwerte.

     Überschrift   Beschreibung

     SCAN CODE     Diese Spalte enthält die Scan-Codes, die beim Drücken
                   einer Taste durch die Tastatur-Hardware generiert wer-
                   den. Für die Scan-Codes, die beim Loslassen einer Taste
                   generiert werden, sind keine Tabelleneinträge angegeben.

     BASE          Diese Spalte enthält den normalen Wert, der beim Drücken
                   einer Taste generiert wird.

     SHIFT         Der in dieser Spalte aufgeführte Wert wird generiert,
                   indem die SHIFT-Taste gedrückt gehalten und gleichzeitig
                   eine Taste gedrückt wird.

     LOCK          In dieser Spalte sind die Feststelltasten aufgeführt,
                   die die Belegung der betreffenden Taste ändern:

                   -  C steht für CAPSLOCK

                   -  N steht für NUMLOCK



Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

mapkey(7)                                                         mapkey(7)

                   -  B steht für "beide"

                   -  O steht für Feststellfunktion AUS

     Die Werte in den übrigen Spalten werden generiert, wenn eine bestimmte
     Taste gedrückt und gleichzeitig bestimmte Kombinationen der Tasten
     CTRL, ALT und SHIFT gedrückt gehalten werden.
_______________________________________________________________________________
|                                                                ALT          |
|SCAN                            CTRL            ALT      ALT    CTRL         |
|CODE    BASE   SHIFT     CTRL   SHIFT    ALT    SHIFT    CTRL   SHIFT    LOCK|
|_____________________________________________________________________________|
|  0     nop    nop       nop    nop      nop    nop      nop    nop      O   |
|  1     esc    esc       nop    nop      nop    esc      nop    esc      O   |
|  2     '1'    '!'       nop    nop      '1'    '!'      nop    '!'      O   |
|  3     '2'    '"'       nop    nop      0262   '"'      nop    '"'      O   |
|  4     '3'    0247      nop    nop      0263   0247     nop    0247     O   |
|  5     '4'    '$'       nop    nop      '4'    '$'      nop    '$'      O   |
|  6     '5'    '%'       nop    nop      '5'    '%'      nop    '%'      O   |
|  7     '6'    '&'       nop    nop      '6'    '&'      nop    '&'      O   |
|  8     '7'    '/'       nop    nop      '{'    '/'      nop    '/'      O   |
|  9     '8'    '('       nop    nop      '['    '('      nop    '('      O   |
| 10     '9'    ')'       nop    nop      ']'    ')'      nop    ')'      O   |
| 11     '0'    '='       nop    nop      '}'    '='      nop    '='      O   |
| 12     0337   '?'       nop    nop      '\\'   '?'      nop    0034     O   |
| 13     0264   '`'       nop    nop      0264   '`'      nop    '`'      O   |
| 14     bs     bs        del    nop      bs     bs       nop    nop      O   |
| 15     ht     fkey12    nop    nop      nop    nop      nop    nop      O   |
| 16     'q'    'Q'       dc1    dc1      '@'    '@'      nop    0x00     C   |
| 17     'w'    'W'       etb    etb      'w'    'W'      nop    etb      C   |
| 18     'e'    'E'       enq    enq      'e'    'E'      nop    enq      C   |
| 19     'r'    'R'       dc2    dc2      'r'    'R'      nop    dc2      C   |
| 20     't'    'T'       dc4    dc4      't'    'T'      nop    dc4      C   |
| 21     'z'    'Z'       em     em       'z'    'Z'      nop    em       C   |
| 22     'u'    'U'       nak    nak      'u'    'U'      nop    nak      C   |
| 23     'i'    'I'       ht     ht       'i'    'I'      nop    ht       C   |
|_____________________________________________________________________________|

















Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

mapkey(7)                                                         mapkey(7)

_______________________________________________________________________________
|                                                                 ALT         |
|SCAN                           CTRL             ALT     ALT      CTRL        |
|CODE  BASE     SHIFT   CTRL    SHIFT    ALT     SHIFT   CTRL     SHIFT   LOCK|
|_____________________________________________________________________________|
| 24   'o'      'O'     si      si       'o'     'O'     nop      si      C   |
| 25   'p'      'P'     dle     dle      'p'     'P'     nop      dle     C   |
| 26   0374     0334    nop     nop      0374    0334    nop      0334    C   |
| 27   '+'      '*'     nop     nop      '~'     '*'     nop      '*'     O   |
| 28   cr       cr      nop     nop      cr      cr      nop      cr      O   |
| 29   lctrl    lctrl   lctrl   lctrl    lctrl   lctrl   lctrl    lctrl   O   |
| 30   'a'      'A'     soh     soh      'a'     'A'     nop      soh     C   |
| 31   's'      'S'     dc3     dc3      's'     'S'     nop      dc3     C   |
| 32   'd'      'D'     eot     eot      't'     'T'     nop      eot     C   |
| 33   'f'      'F'     ack     ack      'f'     'F'     nop      ack     C   |
| 34   'g'      'G'     bel     bel      'g'     'G'     nop      bel     C   |
| 35   'h'      'H'     bs      bs       'h'     'H'     nop      bs      C   |
| 36   'j'      'J'     nl      nl       'j'     'J'     nop      nl      C   |
| 37   'k'      'K'     vt      vt       'k'     'K'     nop      vt      C   |
| 38   'l'      'L'     np      np       'l'     'L'     nop      np      C   |
| 39   0366     0326    nop     nop      0366    0326    nop      0326    C   |
| 40   0344     0304    nop     nop      0344    0304    nop      0304    C   |
| 41   '^'      0260    0036    0036     '^'     0230    nop      0036    O   |
| 42   lshift   lshift  lshift  lshift   lshift  lshift  lshift   lshift  O   |
| 43   '#'      '\''    nop     nop      '#'     '\''    nop      '\''    O   |
| 44   'y'      'Y'     sub     sub      'y'     'Y'     nop      sub     C   |
| 45   'x'      'X'     can     can      'x'     'X'     nop      can     C   |
| 46   'c'      'C'     etx     etx      'c'     'C'     nop      etx     C   |
| 47   'v'      'V'     syn     syn      'v'     'V'     nop      syn     C   |
| 48   'b'      'B'     stx     stx      'b'     'B'     nop      stx     C   |
| 49   'n'      'N'     so      so       'n'     'N'     nop      so      C   |
| 50   'm'      'M'     cr      cr       'm'     'M'     nop      cr      C   |
| 51   ','      ';'     nop     nop      ','     ';'     nop      ';'     O   |
| 52   '.'      ':'     nop     nop      '.'     ':'     nop      ':'     O   |
| 53   '-'      '_'     nop     0037     '-'     '_'     nop      '_'     O   |
| 54   rshift   rshift  rshift  rshift   rshift  rshift  rshift   rshift  O   |
| 55   '*'      '*'     nop     nop      '*'     '*'     nop      nop     O   |
| 56   lalt     lalt    lalt    lalt     lalt    lalt    lalt     lalt    O   |
| 57   ' '      ' '     nop     nop      ' '     ' '     nop      ' '     O   |
| 58   clock    clock   clock   clock    clock   clock   clock    clock   O   |
| 59   fkey0    fkey12  fkey24  fkey36   nop     nop     nop      nop     O   |
| 60   fkey1    fkey13  fkey25  fkey37   nop     nop     nop      nop     O   |
| 61   fkey2    fkey14  fkey26  fkey38   nop     nop     nop      nop     O   |
| 62   fkey3    fkey15  fkey27  fkey39   nop     nop     nop      nop     O   |
| 63   fkey4    fkey16  fkey28  fkey40   nop     nop     nop      nop     O   |
|_____________________________________________________________________________|








Seite 3                      Reliant UNIX 5.44               Gedruckt 11/98

mapkey(7)                                                         mapkey(7)

________________________________________________________________________________
|                                                                  ALT         |
|SCAN                             CTRL             ALT     ALT     CTRL        |
|CODE   BASE     SHIFT    CTRL    SHIFT    ALT     SHIFT   CTRL    SHIFT   LOCK|
|______________________________________________________________________________|
| 64    fkey5    fkey17   fkey29  fkey41   nop     nop     nop     nop     O   |
| 65    fkey6    fkey18   fkey30  fkey42   nop     nop     nop     nop     O   |
| 66    fkey7    fkey18   fkey31  fkey43   nop     nop     nop     nop     O   |
| 67    fkey8    fkey20   fkey32  fkey44   nop     nop     nop     nop     O   |
| 68    fkey9    fkey21   fkey33  fkey45   nop     nop     nop     nop     O   |
| 69    nlock    nlock    nlock   nlock    nlock   nlock   nlock   nlock   O   |
| 70    slock    slock    del     nop      slock   slock   nop     nop     O   |
| 71    fkey48   '7'      '7'     '7'      bel     bel     bel     bel     N   |
| 72    fkey49   '8'      '8'     '8'      0x08    0x08    0x08    0x08    N   |
| 73    fkey50   '9'      '9'     '9'      0x09    0x09    0x09    0x09    N   |
| 74    fkey51   '-'      nop     nop      '-'     '-'     nop     '-'     O   |
| 75    fkey52   '4'      '4'     '4'      0x04    0x04    0x04    0x04    N   |
| 76    fkey53   '5'      '5'     '5'      0x05    0x05    0x05    0x05    N   |
| 77    fkey54   '6'      '6'     '6'      0x06    0x06    0x06    0x06    N   |
| 78    fkey55   '+'      nop     nop      '+'     '+'     nop     '+'     O   |
| 79    fkey56   '1'      '1'     '1'      0x01    0x01    0x01    0x01    N   |
| 80    fkey57   '2'      '2'     '2'      0x02    0x02    0x02    0x02    N   |
| 81    fkey58   '3'      '3'     '3'      0x03    0x03    0x03    0x03    N   |
| 82    fkey59   '0'      '0'     '0'      0x00    0x00    0x00    0x00    N   |
| 83    del      ','      ','     ','      ','     ','     nop     ','     N   |
| 84    nop      nop      nop     nop      nop     nop     nop     nop     O   |
| 85    nop      nop      nop     nop      nop     nop     nop     nop     O   |
| 86    '<'      '>'      nop     nop      '|'     '>'     nop     '>'     O   |
| 87    fkey10   fkey22   fkey34  fkey46   nop     nop     nop     nop     O   |
| 88    fkey11   fkey23   fkey35  fkey47   nop     nop     nop     nop     O   |
| 89    nop      nop      nop     nop      nop     nop     nop     nop     O   |
| 90    nop      nop      nop     nop      nop     nop     nop     nop     O   |
| 91    nop      nop      nop     nop      nop     nop     nop     nop     O   |
| 92    nop      nop      nop     nop      nop     nop     nop     nop     O   |
| 93    nop      nop      nop     nop      nop     nop     nop     nop     O   |
| 94    nop      nop      nop     nop      nop     nop     nop     nop     O   |
| 95    nop      nop      nop     nop      nop     nop     nop     nop     O   |
| 96    nop      nop      nop     nop      nop     nop     nop     nop     O   |
| 97    nop      nop      nop     nop      nop     nop     nop     nop     O   |
| 98    nop      nop      nop     nop      nop     nop     nop     nop     O   |
| 99    nop      nop      nop     nop      nop     nop     nop     nop     O   |
|100    nop      nop      nop     nop      nop     nop     nop     nop     O   |
|101    nop      nop      nop     nop      nop     nop     nop     nop     O   |
|102    nop      nop      nop     nop      nop     nop     nop     nop     O   |
|103    nop      nop      nop     nop      nop     nop     nop     nop     O   |
|______________________________________________________________________________|








Seite 4                      Reliant UNIX 5.44               Gedruckt 11/98

mapkey(7)                                                         mapkey(7)

_______________________________________________________________________________
|                                                                 ALT         |
|SCAN                             CTRL            ALT     ALT     CTRL        |
|CODE   BASE     SHIFT    CTRL    SHIFT   ALT     SHIFT   CTRL    SHIFT   LOCK|
|_____________________________________________________________________________|
|104    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|105    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|106    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|107    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|108    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|109    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|110    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|111    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|112    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|113    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|114    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|115    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|116    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|117    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|118    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|119    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|120    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|121    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|122    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|123    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|124    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|125    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|126    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|127    nop      nop      nop     nop     nop     nop     nop     nop     O   |
|128    rctrl    rctrl    rctrl   rctrl   rctrl   rctrl   rctrl   rctrl   O   |
|129    ralt     ralt     ralt    ralt    ralt    ralt    ralt    ralt    O   |
|130    fkey59   fkey59   nop     nop     nop     nop     nop     nop     O   |
|131    del      del      0037    0037    del     del     nop     0037    O   |
|132    fkey48   fkey48   nop     nop     nop     nop     nop     nop     O   |
|133    fkey56   fkey56   nop     nop     nop     nop     nop     nop     O   |
|134    fkey50   fkey50   nop     nop     nop     nop     nop     nop     O   |
|135    fkey58   fkey58   nop     nop     nop     nop     nop     nop     O   |
|136    fkey54   fkey54   nop     nop     nop     nop     nop     nop     O   |
|137    fkey52   fkey52   nop     nop     nop     nop     nop     nop     O   |
|138    fkey49   fkey49   nop     nop     nop     nop     nop     nop     O   |
|139    fkey57   fkey57   nop     nop     nop     nop     nop     nop     O   |
|140    '/'      '/'      nop     nop     '/'     '/'     nop     '/'     O   |
|141    cr       cr       nop     nop     cr      cr      nop     cr      O   |
|_____________________________________________________________________________|










Seite 5                      Reliant UNIX 5.44               Gedruckt 11/98

mapkey(7)                                                         mapkey(7)

     In der folgenden Tabelle sind die Werte der speziellen Schlüsselwörter
     aufgeführt, die in der vorhergehenden Tabelle benutzt wurden. Diese
     Schlüsselwörter wurden in der vorhergehenden Tabelle nur aus Gründen
     der Lesbarkeit benutzt, in der tatsächlichen Tastatur-Umsetztabelle
     wird ein spezielles Schlüsselwort anhand seines Wertes dargestellt und
     gleichzeitig das entsprechende Bit im 9. Zustandsbyte für besonderen
     Zustand gesetzt.

     ______________________________________________________________________
    | Name    Wert  Bedeutung                                             |
    |_____________________________________________________________________|
    | nop       0   Keine Operation - Keine Funktion bei Tastenanschlag   |
    | lshift    2   (Left-hand shift) SHIFT-Taste links                   |
    | rshift    3   (Right-hand shift) SHIFT-Taste rechts                 |
    | clock     4   CAPS LOCK (nur Großbuchstaben)                        |
    | nlock     5   NUM LOCK (nur numerische Werte)                       |
    | slock     6   SCROLL LOCK (Scrollen ein-/aus)                       |
    | alt       7   Alt-Taste                                             |
    | btab      8   Back Tab-Taste - generiert die feste Sequenz (ESC[ Z) |
    | ctrl      9   Control-Taste                                         |
    | lalt     10   (Left-hand alt key) ALT-Taste links                   |
    | ralt     11   (Right-hand alt key) ALT-Taste rechts                 |
    | lctrl    12   (Left-hand control key) CTRL-Taste links              |
    | rctrl    13   (Right-hand control key) CTRL-Taste rechts            |
    | fkey1    27   Funktionstaste #1                                     |
    | .             .                                                     |
    | .             .                                                     |
    | .             .                                                     |
    | fkey96  122   Funktionstaste #96                                    |
    | sysreq  123   Systemanforderung                                     |
    | brk     124   Break-Taste                                           |
    | escn    125   Generiert die Sequenz ESC N x, wobei x für den Wert   |
    |               eines Scan-Codes ohne Alt-Taste steht                 |
    | esco    126   Generiert die Sequenz ESC O x, wobei x für den Wert   |
    |               eines Scan-Codes ohne Alt-Taste steht                 |
    | escl    127   Generiert die Sequenz ESC L x, wobei x für den Wert   |
    |               eines Scan-Codes ohne Alt-Taste steht                 |
    |_____________________________________________________________________|

     In der folgenden Tabelle sind die Namen und Dezimalwerte für die
     ASCII-Zeichen in der obenstehenden Tabelle aufgeführt. Die Namen wur-
     den anstelle der numerischen Konstanten benutzt, um die Lesbarkeit der
     Scan-Code-Tabelle zu verbessern. In den ioctl-Puffer werden aus-
     schließlich die Dezimalwerte gesetzt. Diese Werte werden ascii(5) ent-
     nommen.









Seite 6                      Reliant UNIX 5.44               Gedruckt 11/98

mapkey(7)                                                         mapkey(7)

            _______________________________________________________
           | Name   Wert|  Name   Wert|  Name   Wert|  Name   Wert|
           |____________|_____________|_____________|_____________|
           | nul     0  |  ht       9 |  dc2     18 |  esc     27 |
           | soh     1  |  nl      10 |  dc3     19 |  fs      28 |
           | stx     2  |  vt      11 |  dc4     20 |  gs      29 |
           | etx     3  |  np      12 |  nak     21 |  rs      30 |
           | eot     4  |  cr      13 |  syn     22 |  ns      31 |
           | enq     5  |  so      14 |  etb     23 |  del    127 |
           | ack     6  |  si      15 |  can     24 |             |
           | bel     7  |  dle     16 |  em      25 |             |
           | bs      8  |  dc1     17 |  sub     26 |             |
           |____________|_____________|_____________|_____________|

   Belegung der Funktionstasten

     Die Abbildungstabelle für Zeichenketten, ein Array aus 512 Byte
     (typedef strmapt), enthält die durch das Null-Zeichen abgeschlossenen
     Zeichenketten, mit denen die Funktionstasten neu belegt werden. Die
     erste durch das Null-Zeichen abgeschlossene Zeichenkette wird der
     ersten Funktionstaste zugeordnet, die zweite der zweiten Funktiontaste
     usw.

     Die Zeichenketten dürfen beliebig lang sein; allerdings darf die
     Tabelle (einschließlich der Null-Zeichen) maximal 512 Byte enthalten.
     Um eine Zeichenkette Null zu machen, werden ihr zusätzliche Null-
     Zeichen angefügt. Die folgende Tabelle enthält die Standard-Funktions-
     tastenbelegungen.


























Seite 7                      Reliant UNIX 5.44               Gedruckt 11/98

mapkey(7)                                                         mapkey(7)

   String key values

     ____________________________________
    | "\033[M"   Function #1            |
    | "\033[N"   Function #2            |
    | "\033[O"   Function #3            |
    | "\033[P"   Function #4            |
    | "\033[Q"   Function #5            |
    | "\033[R"   Function #6            |
    | "\033[S"   Function #7            |
    | "\033[T"   Function #8            |
    | "\033[U"   Function #9            |
    | "\033[V"   Function #10           |
    | "\033[W"   Function #11           |
    | "\033[X"   Function #12           |
    | "\033[Y"   Shift Function #1      |
    | "\033[Z"   Shift Function #2      |
    | "\033[a"   Shift Function #3      |
    | "\033[b"   Shift Function #4      |
    | "\033[c"   Shift Function #5      |
    | "\033[d"   Shift Function #6      |
    | "\033[e"   Shift Function #7      |
    | "\033[f"   Shift Function #8      |
    | "\033[g"   Shift Function #9      |
    | "\033[h"   Shift Function #10     |
    | "\033[i"   Shift Function #11     |
    | "\033[j"   Shift Function #12     |
    | "\033[k"   Control Function #1    |
    | "\033[l"   Control Function #2    |
    | "\033[m"   Control Function #3    |
    | "\033[n"   Control Function #4    |
    | "\033[o"   Control Function #5    |
    | "\033[p"   Control Function #6    |
    |___________________________________|




















Seite 8                      Reliant UNIX 5.44               Gedruckt 11/98

mapkey(7)                                                         mapkey(7)

     ____________________________________
    | "\033[q"   Control Function #7    |
    | "\033[r"   Control Function #8    |
    | "\033[s"   Control Function #9    |
    | "\033[t"   Control Function #10   |
    | "\033[u"   Control Function #11   |
    | "\033[v"   Control Function #12   |
    | "\033[w"   Ctrl/Shft Function #1  |
    | "\033[x"   Ctrl/Shft Function #2  |
    | "\033[y"   Ctrl/Shft Function #3  |
    | "\033[z"   Ctrl/Shft Function #4  |
    | "\033[@"   Ctrl/Shft Function #5  |
    | "\033[["   Ctrl/Shft Function #6  |
    | "\033[\"   Ctrl/Shft Function #7  |
    | "\033[]"   Ctrl/Shft Function #8  |
    | "\033[^"   Ctrl/Shft Function #9  |
    | "\033["   Ctrl/Shft Function #10 |
    | "\033[`"   Ctrl/Shft Function #11 |
    | "\033[{"   Ctrl/Shft Function #12 |
    | "\033[H"   Home                   |
    | "\033[A"   Up arrow               |
    | "\033[I"   Page up                |
    | "-"        -                      |
    | "\033[D"   Left arrow             |
    | "\033[E"   5                      |
    | "\033[C"   Right arrow            |
    | "+"        +                      |
    | "\033[F"   End                    |
    | "\033[B"   Down arrow             |
    | "\033[G"   Page down              |
    | "\033[L"   Insert                 |
    |___________________________________|

   ioctl-Funktionsaufrufe

     KDGKBMODE
          Mit diesem Aufruf wird der aktuelle Tastaturmodus festgestellt.
          Er meldet einen der folgenden Werte zurück, die in
          /usr/include/sys/mapkey.h definiert sind:

          #define KRAW   0x00       /* Scan-Code für Zeile senden */
          #define KXLATE 0x01       /* Umsetzung in ASCII */

          Es muß ein Zeiger auf eine Variable übergeben werden, in der der
          Wert abgelegt werden soll.









Seite 9                      Reliant UNIX 5.44               Gedruckt 11/98

mapkey(7)                                                         mapkey(7)

     KDSKBMODE
          Dieser Aufruf setzt den aktuellen Tastaturmodus. Das Argument für
          diesen Aufruf ist entweder KRAW oder KXLATE. Wenn zeichenorien-
          tiert gearbeitet wird, kann das Programm die zeichenweisen
          up/down Scanner-Codes von der Tastatur ablesen. Im Übersetzungs-
          modus werden die Übersetzungstabellen benutzt, um den entspre-
          chenden Zeichencode zu generieren.

     KDGKBENT
          Dieser Aufruf liest einen der Einträge aus der Übersetzungsta-
          belle. Das Argument für den Aufruf ist die Adresse einer der fol-
          genden Strukturen, die in /usr/include/sys/mapkey.h definiert
          sind. Dabei sind die ersten beiden Felder versorgt.

          struct kbentry {
              unchar  kbtable;   /* zu verwendende Tabelle */
              unchar  kbindex;   /* Eintrag in Tabelle */
              ushort  kbvalue;   /* zu lesender/setzender Wert */
           };

          Zulässige Werte für das Feld kbtable sind:

          #define KNORMTAB      0x00    /* BASE */
          #define KSHIFTTAB     0x01    /* SHIFT */
          #define KALTTAB       0x02    /* ALT */
          #define KALTSHIFTTAB  0X03    /* SHIFT ALT */

          Der ioctl-Aufruf holt den angegebenen Eintrag aus der Überset-
          zungstabelle und gibt ihn im dritten Feld zurück.

     KDSKBENT
          Mit diesem Funktionsaufruf wird ein Eintrag in einer der Umset-
          zungstabellen eingestellt. Er benutzt dieselbe Struktur wie der
          ioctl-Funktionsaufruf KDGKBENT, nur befindet sich im dritten Feld
          der Wert, der in die Umsetzungstabelle eingetragen werden sollte.
          Dadurch kann eine Tastatur teilweise oder vollständig neu belegt
          werden.

     GIOKEYMAP
          Dieser Aufruf holt die gesamte Abbildungstabelle für die Tastatur
          vom Systemkern. Die Struktur des Arguments ist in
          /usr/include/sys/mapkey.h angegeben.

     PIOKEYMAP
          Dieser Aufruf setzt die gesamte Abbildungstabelle für die Tasta-
          tur. Die Struktur des Arguments ist in /usr/include/sys/mapkey.h
          angegeben.

     GIOSTRMAP
          Dieser Aufruf holt die Abbildungstabelle für Zeichen folgen vom
          Systemkern. Die Struktur des Arguments ist in
          /usr/include/sys/mapkey.h angegeben.


Seite 10                     Reliant UNIX 5.44               Gedruckt 11/98

mapkey(7)                                                         mapkey(7)

     PIOSTRMAP
          Dieser Aufruf setzt die Abbildungstabelle für Zeichenfolgen. Die
          Struktur des Arguments ist in /usr/include/sys/mapkey.h angege-
          ben.

     GETFKEY
          Stellt die aktuelle Definition einer Funktionstaste zur Verfü-
          gung. Das Argument für diesen Aufruf ist die Adresse einer der
          folgenden Strukturen, die in /usr/include/sys/mapkey.h definiert
          sind:

          struct fkeyarg {
                 unsigned int    keynum;
                 char    keydef [MAXFK]; /* mittels comcrt.h aus ioctl.h */
                 char    flen;
          };

          Die Nummer der Funktionstaste muß in keynum übergeben werden
          (siehe Struktur arg, oben). Die Zeichenkette, mit der die Taste
          aktuell belegt ist, wird beim Funktionsaufruf ioctl in keydef
          zurückgegegeben und hat die Länge der Zeichenkette in flen.

     SETFKEY
          Weist einer Funktionstaste eine bestimmte Zeichenkette zu. Dieser
          Funktionsaufruf benutzt dieselbe Struktur wie der ioctl-Funk-
          tionsaufruf GETFKEY. Die Nummer der Funktionstaste muß in keynum
          übergeben werden, die Zeichenkette in keydef und die Länge der
          Zeichenkette (Anzahl der Zeichen) in flen.

DATEIEN
     /usr/lib/keyboard/*

SIEHE AUCH
     mapkey(1M).




















Seite 11                     Reliant UNIX 5.44               Gedruckt 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026