Autor Thema: Tastaturtreiber und die Scancodes E0h und E1h!  (Gelesen 5316 mal)

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« am: 18. July 2007, 08:48 »
Hi,

ich bin gerade dabei meinen Tastaturtreiber fertig zu schreiben. Es klappt auch eigentlich alles wunderbar. Nur habe ich Verständnisprobleme mit dem extendet Scancodes E0h und E1h. Ich dachte immer das nach E0h ein Scancode kommt, den man direkt auslesen darf ohne erneut auf den IRQ1 warten zu müssen, und bei E1h zwi Scancodes die folgen. Aber jetzt habe ich gesehen, dass die Taste "Pause Untbr" folgenden Scancode hat: E1h 1Dh 45h E1h 9Dh C5h und die Taste "Druck S-Abf": E0h 2Ah E0h 37h. Das sind ja weit mehr als nur ein/zwei Scancodes die folgen. Aber woher weiß ich jetzt ob ich ein, zwei, drei, vier oder wie viele Scancodes ich nach E0h und E1h direkt laden darf? Und wieso folgen so viele Scancodes, wenn es doch gar nicht so viele Tasten gibt. Da würden doch ein oder zwei Scancodes reichen? Vielen dank!!!

bitmaster
In the Future everyone will need OS-64!!!

bluecode

  • Beiträge: 1 391
    • Profil anzeigen
    • lightOS
Gespeichert
« Antwort #1 am: 18. July 2007, 18:20 »
E1h 1Dh 45h
Makecode.
E1h 9Dh C5h
Breakcode.

=> 2 Scancodes nach 0xE1 (zumindest bei dem Scancodeset)

Zitat
"Druck S-Abf": E0h 2Ah E0h 37h

=> 2 Scancodes (das zweite 0xE0 kannst du verwerfen)

zumindest sind das meine Folgerungen.
lightOS
"Überlegen sie mal 'nen Augenblick, dann lösen sich die ganzen Widersprüche auf. Die Wut wird noch größer, aber die intellektuelle Verwirrung lässt nach.", Georg Schramm

Cheebi

  • Beiträge: 91
    • Profil anzeigen
    • Cheebis Webseite
Gespeichert
« Antwort #2 am: 19. July 2007, 03:46 »
die tastatur ist der letzte üpll, der im ibm standard zu finden ist... ich hab wochen gebraucht, bis ich durchgestiegen bin... am besten, du verwendest einen einfachen scancode. problem ist nur, dass manche tastaturen nicht zu allen scancodes kompatibel sind. (naja.. probiern!)
was diese beschissenen sonder-scancodes betrifft, bleibt dir nur eine möglichkeit: du musst abspeichern, ob bereits ein scancode dieser art gesendet wurde; denn wie du bereits befürchtet hast, wird bei jedem scancode ein neuer irq0 ausgelöst... vorher kannst du den code nicht auslesen.

hier findest du einiges:


Cheebi
0100 1001 0100 1100 0100 0001 0010 0000 0011 1010 0010 1101 0010 1010
http://www.cheebi.de

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« Antwort #3 am: 19. July 2007, 10:16 »
Vielen dank!!! Ich bin zwar schon fast fertig mit meinem Tastaturtreiber, nur du hast recht die speziellen Tasten wie Druck und Pause sind schon nicht so schön. Wobei Druck noch relativ einfach ist und mit einem extended shift umschlingt wird. Aber ich weiß ja jetzt wie ich das machen werde. Also vielen dank!!!

bitmaster
In the Future everyone will need OS-64!!!

 

Einloggen