| plan 9 kernel history: overview | file list | diff list |
1997/0820/port/devcons.c (diff list | history)
| 1997/0616/sys/src/9/port/devcons.c:522,558 – 1997/0820/sys/src/9/port/devcons.c:522,566 (short | long | prev | next) | ||
| 1993/0601 | qunlock(&kbd); | |
| 1990/0617 | nexterror(); } | |
| 1997/0327 |
| |
| 1993/0601 |
| |
| 1994/1124 |
| |
| 1993/0601 |
| |
| 1997/0820 | if(kbd.raw) { if(qcanread(lineq)) n = qread(lineq, buf, n); else n = qread(kbdq, buf, n); } else { while(!qcanread(lineq)) { qread(kbdq, &kbd.line[kbd.x], 1); ch = kbd.line[kbd.x]; if(kbd.raw){ qiwrite(lineq, kbd.line, kbd.x+1); kbd.x = 0; continue; } eol = 0; switch(ch){ case '\b': if(kbd.x) kbd.x--; break; case 0x15: kbd.x = 0; break; case '\n': case 0x04: eol = 1; default: kbd.line[kbd.x++] = ch; break; } if(kbd.x == sizeof(kbd.line) || eol){ if(ch == 0x04) kbd.x--; qwrite(lineq, kbd.line, kbd.x); kbd.x = 0; } | |
| 1993/0601 | } | |
| 1993/0725 |
| |
| 1993/0601 |
| |
| 1990/0227 |
| |
| 1993/0601 |
| |
| 1993/0725 |
| |
| 1993/0601 |
| |
| 1993/0725 |
| |
| 1993/0601 |
| |
| 1994/0902 |
| |
| 1993/0725 |
| |
| 1993/0601 |
| |
| 1997/0820 | n = qread(lineq, buf, n); | |
| 1990/0227 | } | |
| 1993/0601 |
| |
| 1993/0725 | poperror(); | |
| 1993/0601 | return n; | |