Index: uspace/lib/libc/generic/io/stream.c
===================================================================
--- uspace/lib/libc/generic/io/stream.c	(revision fa094491c49be2130cd1f5bbad081181cbad82b1)
+++ uspace/lib/libc/generic/io/stream.c	(revision 4b44099d821552a64452274b994f2cf5cb8adbaf)
@@ -68,5 +68,5 @@
 				rc = kbd_get_event(&ev);
 				if (rc < 0) return -1;
-			} while (ev.c == 0);
+			} while (ev.c == 0 || ev.type == KE_RELEASE);
 
 			((char *) buf)[i++] = ev.c;
Index: uspace/lib/libc/generic/kbd.c
===================================================================
--- uspace/lib/libc/generic/kbd.c	(revision fa094491c49be2130cd1f5bbad081181cbad82b1)
+++ uspace/lib/libc/generic/kbd.c	(revision 4b44099d821552a64452274b994f2cf5cb8adbaf)
@@ -51,7 +51,7 @@
 
 	ev->type = r0;
-	ev->c = r1;
-	ev->key = r2;
-	ev->mods = r3;
+	ev->key = r1;
+	ev->mods = r2;
+	ev->c = r3;
 
 	return 0;
Index: uspace/lib/libc/include/kbd/keycode.h
===================================================================
--- uspace/lib/libc/include/kbd/keycode.h	(revision fa094491c49be2130cd1f5bbad081181cbad82b1)
+++ uspace/lib/libc/include/kbd/keycode.h	(revision 4b44099d821552a64452274b994f2cf5cb8adbaf)
@@ -55,5 +55,5 @@
 	/* Main block row 1 */
 
-	KC_BACKTICK,
+	KC_BACKTICK = 1,
 
 	KC_1,
