![]() |
Re: KeyboardLED
danke, unbekannte :D
:coder: aenogym |
Re: KeyboardLED
Also ich sitze hier an einem Vaio und da funktioniert es definitiv NICHT, da bei aktivem Num-Lock "uiopjklöm." = "456*123-0," ergibt... Ihr könnt es glauben oder nicht, es IST so :?
Das schrebe ch etzt mt atvem KeyED Es werden defnitv Zechen versccth |
Re: KeyboardLED
An meinem KeyLED kanns jedenfalls nicht liegen, da
1.) Es ja schließlich nur die Unit verwendet ;) 2.) Sonst ja funktioniert *fg* Auch mal was mit aktivem KeyLED und Intervall 10ms: Dies ist ein Testtext und wie man sieht passiert rein garnichts seltsames oder ungewöhnliches :) Und noch was mit NumPad: 56+57*28+45 Ist auch ganz normal ;) air Edit: Wenn KeyLED übrigens ein paar Leuten gefällt mach ich mich gerne auch an zusätzliche Muster und um es in den Tray zu minimieren etc... ;) Momentan ist es aber Spielerei, weil mir partout kein sinnvoller verwendungszweck dafür einfällt *fg* |
Re: KeyboardLED
Zitat:
|
Re: KeyboardLED
Ich meine damit dass der Fehler in der Unit liegt und nicht im Quelltext von mir :)
air |
Re: KeyboardLED
Zitat:
Mal eine Frage: warum steht da ein "i" im "defnitv" wenn es (das "i") anscheinend nicht gehen sollte? Und nochwas: Probier mal bitte die Demo vom MarcoWarm. Ich will Airblader nichts unterstellen aber ... man weiß ja nie. :) //edit: Ok, Nachtrag: Das Verschwinden von Zeichen konnte ich jetzt mit dem Prog von Airblader und einem Intervall von etwa 10ms nachempfinden. Das ist aber in der Natur der Sache begründet, die Marco noch ein wenig erläutern will. |
Re: KeyboardLED
Zitat:
Auch mit der anderen Demo tritt dieser Effekt ein... |
Re: KeyboardLED
Ihr habt es ja nich anders gewollt ;)
Jetzt müsst ihr nen technischen Vortrag ertragen (nich erschrecken vor dem bissl asm) Wat macht eijentlich SetKeyboardLED? Da stell'n mer uns ma janz dumm und sagen.... nen LED Status kann man beim Keyboard setzen, indem man einen zwei Byte-Code-Kommando an den Tastaturport sendet. (Bitte merken darauf komm ich nochmal zurück) Also was passiert nu? 1. ne Schleife wartet, bis der Tastaturpuffer leer ist.
Code:
2. jetzt schicken wir ganz schnell ein $ED an $60
in al,64h ;
and al,00000010b ; den Keyboard inputbuffer prüfen jz makeLED ; wenn der Leer ist ... loslegen
Code:
3. Prüfen, ob der Befehl von der Tastatur angenommen wurde
mov al,0edh ; Keyboard LED output Kommando $ED
out 60h,al ; an die Adresse $60 schreiben 4. jetzt machen wir alle 3 LEDs an
Code:
ok, ok, ok... zwischendrin fehlen n paar Befehle aber das soll ja jetzt auch bloß als Anschauungsmaterial dienen.
mov al,00000111b ; Keyboard LED output Kommando 111
out 60h,al ; an die Adresse $60 schreiben Dem aufmerksamen Leser ist sicher aufgefallen, daß hier das Risiko besteht, daß zwischen dem Senden von $ED und 00000111 die Tastatur (also der Mensch durch drücken einer Taste) eine "Taste" in den Buffer schreibt, die dann als LED Kommando gewertet würde. Unter DOS und Win9x kann man das unterbinden indem man den Interrupt exklusiv für sich reserviert (asm -> cli) und nachher die Interruptkontrolle wieder freigibt (asm -> sti). Aber leider macht uns XP da nen Strich durch die Rechnung, da sowas nur möglich ist, wenn die Anwendung im Kernelmodus läuft. Bitte Beachten
zur Beruhigung aller... chaosben ist immer noch dabei das irgendwie anders zu lösen (good luck man :thumb:) |
Re: KeyboardLED
auf jeden fall sehr nett das ganze.
ich sitz grade an nem programm, dass dieses geblinke auch halbwegs sinnvoll einsetzen kann (nein, kein traffic-monitor^^) wenns fertig ist, stell ich's natürlich in die freeware-sparte. dauert aber nochn wenig, da ich nebenbei auch noch viele andere dinge zu tun habe ;) aenogym |
Re: KeyboardLED
Bin schon gespannt.
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:41 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz