+ unsigned char key = usb_hidkb_get_char_from_keycode(k->keys[i],
+ (k->mod & MOD_lshift) || (k->mod & MOD_rshift));
+ /* no key or key not relevant? next, please. */
+ if (key == 0)
+ continue;
+
+ /* RETURN pressed? */
+ if (key == '\n') {
+ x = STDOUT_BORDER_LEFT;
+ y += FONT_HEIGHT;
+ /* TAB pressed? */
+ } else if (key == '\t') {
+ x += (TABSIZE*FONT_WIDTH);
+
+ /* BACKSPACE pressed? */
+ } else if (key == '\r') {
+ /* TODO */
+
+ /* now we have only printable characters left */
+ } else {
+ x += FONT_WIDTH;
+ str[j] = key;
+ j++;