tastureingaben
-
jo danke das habe ich wohl verstanden.
meine frage war jetzt eher, ob es eine feste konvention gibt welche taste der tastatur welche zahl im puffer bedeutet.
würde jede tastatur ihre tasten ande zahlen zuweisen wäre das ja recht ungünstig.
-
naja keine ahnung, du meinst wie das funktioniert wennst das tastaturlayout zb über windows umgestellt wird???
, hab jez auch grad keine ahung wie das funktioniert ich kenn eben nur den buffer im speicher, vielleicht simuliert windows dann einfach nur das tastaturschema ?
ich mein das zb die orginal tastatur zwar noch die original codes sendet aber diese von windows übersetz werden.
ansonsten sollte die tastatur die signale der tasten doch so senden wie sie gebaut wurde, alle tasten sind genormt und haben einen eindeutigen code.
-
hey nein ich meinte genau die sache mit den scancodes die sich jetzt dank dem wiki link geklärt hat
vllt eine kleinigkeit noch:
eine tastatur kennt ja nur eine stelle im speicher, an die sie den scancode bei jedem tastendruck hinschreibt oder?
wie genau funktioniert dann ein tastaturpuffer bzw wer koordiniert die aneinanderreihung der scancodes im speicher?
angenommen der tastaturpuffer ist an den speicherstellen 1 bis 10 (wobei jede speicherstelle platz für einen scancode bietet) und es wird die a-taste gedrückt. dann steht der entsprechende scancode in speicherstelle 1!
woher weiß die tastatur bei erneutem druck(falls der scancode von a noch nicht aus dem puffer gelesen wurde), dass sie in speicherstelle 2 schreiben muss?gruß
-
der neue tastendruck steht immer an erster stelle, der alte wird eins nach rechts verschoben und geht am ende verloren,(wie bei einem stapel), also kann man aus dem speicher immer die letzen paar zeichen die gedrückt wurden auslesen
-
naja reingeschrieben werden diese über das bios.
wenn du zugang zum gesammten ram hast liegt das einfach offen da, wie das innere einer frucht wennst sie halbierst, dazu braucht man dann keinen interrupt mehr um die tasten auszulesen, funktioniert von null-OS bis windows vista
-
ausserdem kannst in echtzeit beobachten wie sich der buffer verändert wennst die tasten drückst, ist zum verstehen vielleicht anschaulich
-
gut aber wer sorgt für die verschiebung bzw für die verwaltung der puffers?
von der tastatur kommt ja nur ein scancode. irgendwer muss doch nun dafür sorgen, dass alle einträge im puffer um eine einheit aufgeschoben werden und der empfangene scancode hinten angehängt wird.gruß
-
hmm schau mal das an:
http://www.datasource.de/programmierung/tab07_biosdatenbereich.htmlhttp://www.datasource.de/programmierung/tab13_biosint16h.html
als irgendwie wirds das bios machen...
-
alles klar
danke
-
eine frabe bitte noch. wenn ich auf eine tastatur drücke und die tastatur einen interrupt auslöst, dann ist das nicht dieser int 16h oder? (http://de.wikibooks.org/wiki/Interrupts_80x86/_INT_16)