Keyboard Controller — Änderungen 11090 → 11262

Zeile 389: Zeile 389:
 
einzig mögliche, hier muss man sich selbst überlegen wie das für den konkreten
 
einzig mögliche, hier muss man sich selbst überlegen wie das für den konkreten
 
Anwendungsfall am komfortabelsten ist.
 
Anwendungsfall am komfortabelsten ist.
 +
 +
== Power-on Reset und Initialisierung des KBC durch das BIOS ==
 +
Anders, als man vermuten sollte, ist der KBC nach einem Reset des Computers nicht
 +
direkt betriebsbereit. Vielmehr befindet er sich in einem Initialisierungs-
 +
Zustand, in dem er auf einen Selbsttest-Befehl (0x55) wartet. Erst, nachdem dieser
 +
Selbsttest-Befehl vom BIOS des Computers gesendet wurde und der KBC den Selbsttest
 +
erfolgreich abgeschlossen hat, startet dieser seine Mainloop und ist dazu bereit,
 +
normale Befehle entgegenzunehmen.
 +
 +
Diese Informationen sind jedoch zum Programmieren eines Betriebssystems nicht
 +
direkt relevant, da diese Prozedur vom BIOS bereits vor dem Start des Bootloaders
 +
durchgeführt wird. Genaueres über die interne Funktionsweise des i8042 KBC kann
 +
dessen [http://www.halicery.com/8042/8042_1503033.TXT Quellcode] entnommen werden.
  
 
== Beispiele zur Benutzung der KBC Funktionen ==
 
== Beispiele zur Benutzung der KBC Funktionen ==
Zeile 419: Zeile 432:
 
* http://www.win.tue.nl/~aeb/linux/kbd/scancodes-1.html
 
* http://www.win.tue.nl/~aeb/linux/kbd/scancodes-1.html
 
* [http://www.diakom.ru/el/elfirms/datashts/Smsc/42w11.pdf SMS "8042" Datenblatt]
 
* [http://www.diakom.ru/el/elfirms/datashts/Smsc/42w11.pdf SMS "8042" Datenblatt]
 +
* [http://www.halicery.com/8042/8042_1503033.TXT Quellcode des originalen i8042 KBC von IBM]
  
 
[[Kategorie:Tutorials]]
 
[[Kategorie:Tutorials]]
 
[[en:PS2 Keyboard]]
 
[[en:PS2 Keyboard]]