Lowlevel

Lowlevel => OS-Design => Thema gestartet von: rizor am 22. March 2009, 01:10

Titel: einfache Keycode-Tabelle
Beitrag von: rizor am 22. March 2009, 01:10
Nabend zusammen,

ich bin gerade dabei, mir eine Keycode-Tabelle auszudenken.
Ich wollte eine 16-Bit-Zahl als Keycode verwenden.
Dazu habe ich mir überlegt, dass ich die oberen 8 Bit für die Sondertasten verwende und die unteren 8 Bit für "normale" Tasten.
Dabei überlege ich mir nur gerade, dass ich an sich eine Eindeutigkeit beibehalten sollte, oder?
Sprich wenn einer Str-Alt-Entf klickt, sind das für mich alles Sondertasten.
Wenn ich die alle auf die oberen acht Bit lege, weiß ich bei der Auswertung dieses Keycodes nicht mehr, welche Tasten jetzt gedrückt wurden.
Wie kann ich das am einfachsten machen?
Ich habe mir auch mal den Link mit der Tabelle angeschaut und den Code aus tyndur, das ist alles irgendwie verwirrend für mich.
Titel: Re: einfache Keycode-Tabelle
Beitrag von: ehenkes am 26. April 2009, 19:26
Zumeist werden zwei Arrays verwendet, eins für Non-Shift und eins für Shift. Schau Dir mal die Tabellen in meinOS an, die sind sehr ordentlich.
Titel: Re: einfache Keycode-Tabelle
Beitrag von: kevin am 26. April 2009, 19:43
Ob Modifier-Tasten (also Shift, Strg, Alt, evtl. Win und evtl. alle unterschieden nach linke/rechte Taste) gedrückt sind, willst du wahrscheinlich getrennt speichern. Das könnte ein Bitmaske geben, vielleicht in den oberen 8 Bit deines 16-Bit-Keycodes. Entf wird üblicherweise wie eine "normale" Taste behandelt, die könntest du in den unteren 8 Bit ablegen.
Titel: Re: einfache Keycode-Tabelle
Beitrag von: jgraef am 26. April 2009, 19:44
Hier findest du meine Keycode-Tabellen:
http://repo.or.cz/w/meinos.git?a=tree;f=keyboard_layouts

Das sind eigentlich nur C-Programme, die die Keycode-Tabelle in Binär ausgeben. Damit werden dann Keylayout-Dateien erstellt, die dann später auf der CD liegen.