summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/src/cmd/aux/kbdfs/kbdfs.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/src/cmd/aux/kbdfs/kbdfs.c b/sys/src/cmd/aux/kbdfs/kbdfs.c
index 19cb130c6..0f659f8bd 100644
--- a/sys/src/cmd/aux/kbdfs/kbdfs.c
+++ b/sys/src/cmd/aux/kbdfs/kbdfs.c
@@ -291,6 +291,10 @@ kbdputsc(Scan *scan, int c)
if(c >= Nscan)
return;
+ /* qemu workarround: emulate e0 for numpad */
+ if(c != 0 && strchr("GHIKMOPQRS", c) != nil)
+ scan->esc1 |= !scan->num;
+
if(scan->esc1 && scan->ctl && kbtabctrlesc1[c] != 0)
key.r = kbtabctrlesc1[c];
else if(scan->esc1 && scan->shift && kbtabshiftesc1[c] != 0)