| plan 9 kernel history: overview | file list | diff list |
1994/0503/pc/kbd.c (diff list | history)
| 1994/0413/sys/src/9/pc/kbd.c:359,370 – 1994/0503/sys/src/9/pc/kbd.c:359,370 (short | long | prev | next) | ||
| 1992/1017 | static void | |
| 1993/1124 | kbdintr(Ureg *ur, void *arg) | |
| 1992/0904 | { | |
| 1992/0711 |
| |
| 1994/0503 | int s, c, i; | |
| 1991/0703 | static int esc1, esc2; static int caps; static int ctl; static int num; | |
| 1991/1211 |
| |
| 1994/0503 | static int collecting, nk; | |
| 1991/1211 | static uchar kc[5]; | |
| 1991/0703 | int keyup; | |
| 1991/0702 | ||
| 1994/0413/sys/src/9/pc/kbd.c:444,482 – 1994/0503/sys/src/9/pc/kbd.c:444,464 | ||
| 1991/0703 | if(!(c & Spec)){ if(ctl) c &= 0x1f; | |
| 1991/1211 |
| |
| 1991/0703 |
| |
| 1991/1211 |
| |
| 1991/0703 |
| |
| 1991/1211 |
| |
| 1991/0703 |
| |
| 1991/1211 |
| |
| 1993/1113 |
| |
| 1991/1211 |
| |
| 1993/1113 |
| |
| 1991/1211 |
| |
| 1991/0703 |
| |
| 1994/0503 | if(!collecting){ | |
| 1993/1113 | kbdputc(kbdq, c); | |
| 1991/0703 |
| |
| 1994/0503 | return; | |
| 1991/0703 | } | |
| 1994/0503 | kc[nk++] = c; c = latin1(kc, nk); if(c < -1) /* need more keystrokes */ return; if(c != -1) /* valid sequence */ kbdputc(kbdq, c); else /* dump characters */ for(i=0; i<nk; i++) kbdputc(kbdq, kc[i]); nk = 0; collecting = 0; | |
| 1993/1124 | return; | |
| 1991/0703 | } else { switch(c){ | |
| 1994/0413/sys/src/9/pc/kbd.c:490,496 – 1994/0503/sys/src/9/pc/kbd.c:472,479 | ||
| 1992/1020 | mouseshifted = shift = 1; | |
| 1993/1124 | return; | |
| 1991/0703 | case Latin: | |
| 1994/0503 | collecting = 1; nk = 0; | |
| 1993/1124 | return; | |
| 1991/0703 | case Ctrl: ctl = 1; | |