tastaturcode in ascii umwnadeln
-
hallo
wenn ich einen tastaturcode per input mir hole, was wäre der schnellste und
effektivste weg, den code in ascii umzuwandeln, damit ich mit einem ascii wert
weiterarbeiten kann. Ist die tabelle nicht im bios rom abgelegt ?mfg
-
Hi.
Tjo... einen einfachen Weg via Tabelle gibt es da leider nicht.
Problem zB. Grossbuchstaben:
Die Tastaturcodes fuer die Taste "A" bleiben die gleichen, egal, ob der User nun caps lock bzw. shift gedrueckt hat (bzw. die Taste gedrueckt haelt) oder nicht.
Es muesste also abgefangen werden, wann der user die shift-Taste drueckt bzw. wieder loslaesst usw.
Dann gibt es da auch noch Laenderspezifische Tastaturlayouts... *bla*Kurz: Das Umwandeln der Tastaturscancodes in ASCII ist gar nicht mal so banal und wenn irgendwie moeglich, benutze besser OS- oder BIOS-Funktionen.
Falls du aber darauf beharrst, direkt den Port auszulesen, muesstest du wie folgt vorgehen:
-IRQ-Handler fuer Tastatur installieren
dort dann=>
-ueber Port 60h scancode auslesen und interpretieren (Tabellen der Scancodes gibt es bei den OSDev-Links in den FAQ)
Wie du nun hier genau vorgehst sei dir selbst ueberlassen - wie gesagt: einen einfachen Weg alle Scancodes richtig zu verarbeiten (so wie Windows/das BIOS es tun) gibt es nicht
-KB-Reset ausfuehren
-E(nd)O(f)I(nterrupt) zum Interrupt controller