diff --git a/sys/dev/atkbdc/psm.c b/sys/dev/atkbdc/psm.c --- a/sys/dev/atkbdc/psm.c +++ b/sys/dev/atkbdc/psm.c @@ -62,6 +62,7 @@ __FBSDID("$FreeBSD$"); #include "opt_isa.h" +#include "opt_kbd.h" #include "opt_psm.h" #include "opt_evdev.h" diff --git a/usr.sbin/kbdcontrol/kbdcontrol.1 b/usr.sbin/kbdcontrol/kbdcontrol.1 --- a/usr.sbin/kbdcontrol/kbdcontrol.1 +++ b/usr.sbin/kbdcontrol/kbdcontrol.1 @@ -104,10 +104,10 @@ .Xc Set keyboard .Ar delay -(250, 500, 750, 1000) +(200, 250, 500, 750, 1000) and .Ar repeat -(34, 38, 42, 46, 50, 55, 59, 63, 68, 76, 84, 92, 100, 110, 118, 126, +(15, 34, 38, 42, 46, 50, 55, 59, 63, 68, 76, 84, 92, 100, 110, 118, 126, 136, 152, 168, 184, 200, 220, 236, 252, 272, 304, 336, 368, 400, 440, 472, 504) rates, or if a @@ -116,7 +116,9 @@ .Cm slow (1000.504), .Cm fast -(250.34) +(250.34), +.Cm ultra +(200.15) or .Cm normal (500.126). diff --git a/usr.sbin/kbdcontrol/kbdcontrol.c b/usr.sbin/kbdcontrol/kbdcontrol.c --- a/usr.sbin/kbdcontrol/kbdcontrol.c +++ b/usr.sbin/kbdcontrol/kbdcontrol.c @@ -107,8 +107,8 @@ /* 93-96 */ "" , "" , "" , "" , }; -static const int delays[] = {250, 500, 750, 1000}; -static const int repeats[] = { 34, 38, 42, 46, 50, 55, 59, 63, +static const int delays[] = {200, 250, 500, 750, 1000}; +static const int repeats[] = {15, 34, 38, 42, 46, 50, 55, 59, 63, 68, 76, 84, 92, 100, 110, 118, 126, 136, 152, 168, 184, 200, 220, 236, 252, 272, 304, 336, 368, 400, 440, 472, 504}; @@ -1064,7 +1064,10 @@ delay = 500, repeat = 125; d = 1, r = 15; } else if (!strcmp(opt, "fast")) { - delay = repeat = 0; + delay = 250, repeat = 34; + d = r = 0; + } else if (!strcmp(opt, "ultra")) { + delay = 200, repeat = 15; d = r = 0; } else { int n; @@ -1077,7 +1080,7 @@ repeat = strtol(opt, &v1, 0); if ((repeat < 0) || (*opt == '\0') || (*v1 != '\0')) { badopt: - warnx("argument to -r must be delay.repeat or slow|normal|fast"); + warnx("argument to -r must be delay.repeat or slow|normal|fast|ultra"); return; } for (n = 0; n < ndelays - 1; n++)