Die Klasse Keyboard_Controller dient dazu, die PC Tastatur zu
initialisieren und aus den gesendeten Make- und Break-Codes den Scan-
und ASCII Code der gedrückten Taste zu bestimmen.
öffentliche Methoden
void init ()
Hiermit wird die Tastatur initialisiert.
Key key_hit ()
Holt den Code des letzten Tastendrucks vom Tastaturcontroller.
Wenn eine sinnvolle Interpretation möglich ist, werden der
Scancode, die gegebenenfalls gleichzeitig gedrückten
"Modifier" Tasten (Shift, Ctrl, Alt, Capslock, usw.) und der
ASCII Code der Taste als Objekt der Klasse Key
zurückgeliefert. Wenn dagegen bloß eine der
Spezialtasten Shift, Alt, CapsLock usw. gedrückt wurde,
liefert die Methode ein ungültiges Key Objekt
zurück. Ob das Ergebnis gültig oder nicht gültig
ist, kann mit der Methode Key::valid() geprüft
werden.
void reboot ()
Löst beim Prozessor ein Reset aus, das ein Neustarten des
PCs bewirkt.
set_repeat_rate (int speed, int delay)
Mit dieser Methode kann die Wiederholungsrate der Tastatur
festgelegt werden. Dabei bestimmt delay, wie lange
eine Taste gedrückt gehalten werden muß, bevor die
Tastaturwiederholung einsetzt. Möglich sind die Werte 0
für 250ms, 1 für 500ms, 2 für 750ms und 3
für 1000ms. Mit speed wird die eigentliche
Wiederholungsrate festgelegt. Hierbei sind Werte zwischen 0
für 30 Zeichen pro Sekunde und 31 für 2 Zeichen pro
Sekunde möglich.
void set_led (char led, bool on)
Hiermit kann eine der drei Tastatur-LEDs
led::caps_lock, led::num_lock oder
led::scroll_lock ein- bzw. ausgeschaltet werden.