| plan 9 kernel history: overview | file list | diff list |
1993/1113/pc/kbd.c (diff list | history)
| 1993/0915/sys/src/9/pc/kbd.c:115,125 – 1993/1113/sys/src/9/pc/kbd.c:115,120 (short | long | prev | next) | ||
| 1991/0703 | [0x58] No, No, No, No, No, No, No, No, }; | |
| 1991/0905 |
| |
| 1991/0703 |
| |
| 1991/0905 | ||
| 1992/0811 | static int keybuttons; | |
| 1992/1015 | static uchar ccc; | |
| 1992/1017 | static int shift; | |
| 1993/0915/sys/src/9/pc/kbd.c:138,145 – 1993/1113/sys/src/9/pc/kbd.c:133,141 | ||
| 1991/0703 | ||
| 1992/1017 | static void kbdintr(Ureg*); | |
| 1993/0915 | static void ctps2intr(Ureg*); | |
| 1992/1017 |
| |
| 1992/1015 | ||
| 1993/1113 | extern int m3mouseputc(IOQ*, int); | |
| 1991/0803 | /* * wait for output no longer busy */ | |
| 1993/0915/sys/src/9/pc/kbd.c:246,251 – 1993/1113/sys/src/9/pc/kbd.c:242,249 | ||
| 1991/0703 | { | |
| 1992/0711 | int c; | |
| 1991/0730 | ||
| 1993/1113 | kbdq = qopen(4*1024, 0, 0, 0); | |
| 1991/0716 | setvec(Kbdvec, kbdintr); | |
| 1992/1017 | bigcursor(); | |
| 1991/0730 | ||
| 1993/0915/sys/src/9/pc/kbd.c:287,295 – 1993/1113/sys/src/9/pc/kbd.c:285,296 | ||
| 1992/1020 | error(Ebadarg); | |
| 1992/0904 | /* set up /dev/eia0 as the mouse */ | |
| 1992/1017 |
| |
| 1993/1113 | if(setspeed) setspeed = 1200; | |
| 1992/1017 | if(type && *type == 'M') | |
| 1993/1113 | NS16552special(port, setspeed, 0, 0, m3mouseputc); else NS16552special(port, setspeed, 0, 0, 0); | |
| 1992/0904 | mousetype = Mouseserial; } | |
| 1992/0408 | ||
| 1993/0915/sys/src/9/pc/kbd.c:390,396 – 1993/1113/sys/src/9/pc/kbd.c:391,397 | ||
| 1992/0918 | * shift & left button is the same as middle button | |
| 1991/0731 | */ | |
| 1992/1015 | static int | |
| 1992/1017 |
| |
| 1993/1113 | ps2mouseputc(int c) | |
| 1991/0731 | { static short msg[3]; static int nb; | |
| 1993/0915/sys/src/9/pc/kbd.c:397,403 – 1993/1113/sys/src/9/pc/kbd.c:398,403 | ||
| 1992/0918 | static uchar b[] = {0, 1, 4, 5, 2, 3, 6, 7, 0, 1, 2, 5, 2, 3, 6, 7 }; | |
| 1993/0226 | int buttons, dx, dy; | |
| 1991/0731 | ||
| 1992/1015 |
| |
| 1991/0731 | /* * check byte 0 for consistency */ | |
| 1993/0915/sys/src/9/pc/kbd.c:508,514 – 1993/1113/sys/src/9/pc/kbd.c:508,514 | ||
| 1991/0730 | * if it's the mouse... */ if(s & Minready){ | |
| 1992/1017 |
| |
| 1993/1113 | ps2mouseputc(c); | |
| 1991/0731 | return 0; | |
| 1991/0730 | } | |
| 1991/0703 | ||
| 1993/0915/sys/src/9/pc/kbd.c:579,587 – 1993/1113/sys/src/9/pc/kbd.c:579,587 | ||
| 1991/1211 | putit: | |
| 1991/0703 | lstate = 0; | |
| 1991/1211 | if(c != -1) | |
| 1993/1113 | kbdputc(kbdq, c); | |
| 1991/1211 | else for(i=0; i<nk; i++) | |
| 1993/1113 | kbdputc(kbdq, kc[i]); | |
| 1991/1211 | break; case 3: case 4: | |
| 1993/0915/sys/src/9/pc/kbd.c:595,601 – 1993/1113/sys/src/9/pc/kbd.c:595,601 | ||
| 1991/1211 | nk = 5; goto putit; | |
| 1991/0703 | default: | |
| 1991/1211 |
| |
| 1993/1113 | kbdputc(kbdq, c); | |
| 1991/0703 | break; } | |
| 1991/1211 | return 0; | |
| 1993/0915/sys/src/9/pc/kbd.c:618,624 – 1993/1113/sys/src/9/pc/kbd.c:618,624 | ||
| 1991/0731 | return 0; | |
| 1991/0703 | } } | |
| 1993/1113 | kbdputc(kbdq, c); | |
| 1991/0731 | return 0; | |
| 1992/0222 | } | |
| 1993/0915/sys/src/9/pc/kbd.c:641,645 – 1993/1113/sys/src/9/pc/kbd.c:641,645 | ||
| 1993/0915 | if((c & Rready) == 0) return; c = inb(ctport + CTdata); | |
| 1993/1113 | ps2mouseputc(c); | |
| 1991/0703 | } | |