Hallo,
ich habe einen kleinen Tastaturtreiber mit Port 0x60 geschrieben, der auch wunderbar funktioniert. Nun ist es aber so, dass der Port die gedrückte Taste immer speichert. Ich möchte erst prüfen, ob nach einer bestimmten Stelle eine bzw. welche Taste gedrückt wurde. Dazu habe ich folgende Funktion geschrieben:
Mir ist nicht ganz klar, was an der Funktion falsch ist.
Ich bedanke mich schon einmal vorträglich für jede Hilfestellung.
ich habe einen kleinen Tastaturtreiber mit Port 0x60 geschrieben, der auch wunderbar funktioniert. Nun ist es aber so, dass der Port die gedrückte Taste immer speichert. Ich möchte erst prüfen, ob nach einer bestimmten Stelle eine bzw. welche Taste gedrückt wurde. Dazu habe ich folgende Funktion geschrieben:
Code: [Auswählen]
void reset_keyboard() {
outb(0x60, inb(0x60)^inb(0x60));
}
Dieser Code funktioniert im Gegensatz zuCode: [Auswählen]
void reset_keyboard() {
outb(0x60, 0);
}
zumindest in der VirtualBox, aber nicht mit echter Hardware.Mir ist nicht ganz klar, was an der Funktion falsch ist.
Ich bedanke mich schon einmal vorträglich für jede Hilfestellung.


Übersicht
Wiki
Hilfe
Suche
Einloggen
Registrieren
Drucken

Gespeichert
