提交 29d8c2ee 创建 作者: Austin Clements's avatar Austin Clements

Handle backspace on serial input and output better. Better solutions are welcome.

上级 bab819ed
...@@ -163,7 +163,12 @@ consputc(int c) ...@@ -163,7 +163,12 @@ consputc(int c)
; ;
} }
uartputc(c); if (c == BACKSPACE) {
uartputc('\b');
uartputc(' ');
uartputc('\b');
} else
uartputc(c);
cgaputc(c); cgaputc(c);
} }
...@@ -198,6 +203,7 @@ consoleintr(int (*getc)(void)) ...@@ -198,6 +203,7 @@ consoleintr(int (*getc)(void))
} }
break; break;
case C('H'): // Backspace case C('H'): // Backspace
case '\x7f':
if(input.e != input.w){ if(input.e != input.w){
input.e--; input.e--;
consputc(BACKSPACE); consputc(BACKSPACE);
......
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论