there are some keyboards with f13-19 (apple full-size keyboard), or even f24 around. accept these keycodes. NOTE: this does not address the failure of vision of making Home=KF|13 (f13). it simply allows the keypress to do something. Reference: /n/atom/patch/applied/nixf13 Date: Thu Mar 20 14:38:39 CET 2014 Signed-off-by: quanstro@quanstro.net --- /sys/src/nix/k10/kbd.c Thu Mar 20 14:37:06 2014 +++ /sys/src/nix/k10/kbd.c Thu Mar 20 14:37:07 2014 @@ -36,7 +36,7 @@ Kmouse= Spec|0x100, No= 0x00, /* peter */ - Home= KF|13, + Home= KF|13, /* failure of vision; collides with f keys */ Up= KF|14, Pgup= KF|15, Print= KF|16, @@ -74,8 +74,8 @@ [0x48] '8', '9', '-', '4', '5', '6', '+', '1', [0x50] '2', '3', '0', '.', No, No, No, KF|11, [0x58] KF|12, No, No, No, No, No, No, No, -[0x60] No, No, No, No, No, No, No, No, -[0x68] No, No, No, No, No, No, No, No, +[0x60] No, No, No, No, KF|13, KF|14, KF|15, KF|16, +[0x68] KF|17, KF|18, KF|19, KF|20, KF|21, KF|22, KF|23, KF|24, [0x70] No, No, No, No, No, No, No, No, [0x78] No, View, No, Up, No, No, No, No, }; @@ -94,8 +94,8 @@ [0x48] '8', '9', '-', '4', '5', '6', '+', '1', [0x50] '2', '3', '0', '.', No, No, No, KF|11, [0x58] KF|12, No, No, No, No, No, No, No, -[0x60] No, No, No, No, No, No, No, No, -[0x68] No, No, No, No, No, No, No, No, +[0x60] No, No, No, No, KF|13, KF|14, KF|15, KF|16, +[0x68] KF|17, KF|18, KF|19, KF|20, KF|21, KF|22, KF|23, KF|24, [0x70] No, No, No, No, No, No, No, No, [0x78] No, Up, No, Up, No, No, No, No, }; @@ -174,6 +174,7 @@ static Queue *kbdq; int mouseshifted; +int kdebug; void (*kbdmouse)(int); static Lock i8042lock; @@ -363,6 +364,8 @@ kbscan = kbscans + scanno; + if(kdebug) + print("%d: sc %x ms %d\n", scanno, c, mouseshifted); /* * e0's is the first of a 2 character sequence, e1 the first * of a 3 character sequence (on the safari) @@ -507,6 +510,13 @@ if(kbdmouse) kbdmouse(kbscan->buttons); return; + case KF|11: + print("kbd debug on, F12 turns it off\n"); + kdebug = 1; + break; + case KF|12: + kdebug = 0; + break; } } kbdputc(kbdq, c);