tatonilo Inserito: 18 agosto 2005 Segnala Inserito: 18 agosto 2005 Ciao a tutti,Un mio amico e collega mi ha posto un quesito a cui io non ho saputo dare risposta.Mi ha chiesto se e come è possible sapere, su un PC in cui gira un SO Microsoft, lo stato dello SHIFT-LOCK, ovvero il tastino con il lucchetto alla ns sx.Secondo lui addirittura c'è una locazione di memoria gestita non dal SO ma dal bios della MotherBoard in cui è possibile leggere questa condizione, come altre che riguardano sempre e comunque la tastiera.Leggendo quella locazione, si riuscirebbe ad avere una interfaccia utente per il proprio applicativoInoltre mi ha chiesto se c'è uno standard che definisca l'output fisico di una tastiera ovvero, prima che entri nel PC direttamente dal connettore DIN 5poli per le At ed invece mini DIN PS/2 per le ATX.Saluti e Grazie
mircoelektra Inserita: 18 agosto 2005 Segnala Inserita: 18 agosto 2005 (modificato) Mi ha chiesto se e come è possible sapere, su un PC in cui gira un SO Microsoft, lo stato dello SHIFT-LOCK, ovvero il tastino con il lucchetto alla ns sx. Modificato: 18 agosto 2005 da mircoelektra
nicola1 Inserita: 18 agosto 2005 Segnala Inserita: 18 agosto 2005 ecco tutto quanto puo' servire per scrivere un bel programmino in assembly a livello bios (basso!) per leggere lo stato dei tasti di shift... ! buon lavoro! io avevo fatto una cosa simile che leggeva il num lock .... poi mi e' fumato l'hard disk e ho perso tutto.... comunque per queste cose l'assembly rimane sempre il top.ciao GESTIONE TASTI INT 16H: (AH=12H) Legge i tasti di shift ESTESI [09/09] ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ Funzione BIOS per la TASTIERA ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ _16_12: MOV AH,12H ;Funzione BIOS INT 16H adatta alle Tastiere di INT 16H ;tipo "Enhanced" (vedere la variabile di sistema ;0000:0496H per sapere se essa Š disponibile); ;restituisce lo stato dei tasti SPECIALI della ;tastiera, lasciato in AL (e disponibile ANCHE ;nella variabile di sistema 0000:0417H) e in AH; ;da notare che il registro AH controlla in modo ;DIVERSO taluni tasti gi… controllati da AL, ri- ;levandone la PRESSIONE anzicch‚ il loro stato ;ATTIVO; inoltre la variabile 0000:0418H, anche ;essa relativa allo stato degli "Shift Enhanced" ;porta informazioni NON ESATTAMENTE corrispon- ;denti a quelle disponibili in uscita in AH: ; ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄ[Shift Status]ÄÄÄÄÄÄÄÄ¿ ; ³ 76543210 ³ AL ð variabile [0000:0417H] ³ ; ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ; Ú³ 0....... ³ Insert commutato ³ ; Ú´³ .0...... ³þCaps Lock commutato ³ ; ³³³ ..0..... ³þNum Lock commutato ³ ; ³À³ ...0.... ³þScroll Lock commutato ³ ; ³ ³ ....1... ³ Alt premuto ³¿ ; ³ ³ .....1.. ³ Ctrl premuto ³Ã¿ ; ³ ³ ......1. ³ Left Shift premuto ³³³ ; ³ ³ .......1 ³ Right Shift premuto ³Ù³ ; ³ ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ³ ; ÀÄÄ[1 = DISATTIVATO] [0 = NON PREMUTO]ÄÄÄÄÙ ; ÚÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄ[Extended Shift Status]ÄÄÄÄÄÄÄÄÄ¿ ; ³76543210³ registro AH ÷ variab.[0000:0418H]³ ; ÃÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ; ³1.......³ Sys Req premuto³Ins premuto ³ ; ³.1......³þCaps Lock premuto³Caps Lock premuto ³ ; ³..1.....³þNum Lock premuto³Num Lock premuto ³ ; ³...1....³þScroll Lock premuto³Scroll Lock premuto ³ ; ³....1...³ Right Alt premuto³Pause (*) commutato ³ ; ³.....1..³ Right Ctrl premuto³SysReq premuto ³ ; ³......1.³ Left Alt premuto³Left Alt premuto ³ ; ³.......1³ Left Ctrl premuto³Right Ctrl premuto ³ ; ÀÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ; ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ;(*) NB:" Pause " = " Ctrl+Num Lock " =Hold commutato³ ; ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ;Ú[NB]ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ;³La funzione 02H Š la versione standard di³ ;³questo Servizio ed assicura SOLO lo stato dei³ ;³tasti SPECIALI delle tastiere NORMALI lascia-³ ;³ti SOLO in AL (e quindi i dati di AH non sono³ ;³disponibili) ³ ;ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ per visualizzarlo correttamente devi copiare, incollare e applicare il carattere che ho allegato... altrimenti non vedi i caratteri cornice ma solo delle A balorde ciao nicola
nicola1 Inserita: 27 agosto 2005 Segnala Inserita: 27 agosto 2005 (modificato) Ciao! i allego uno .zip che contiene- file eseguibile con programmino che legge lo stato del CAPS LOCK- sorgente in .TXT del programmino che legge lo stato del CAPS LOCK- file eseguibile con programmino che legge lo stato del SHIFT SINISTRO- sorgente in .TXT del programmino che legge lo stato del SHIFT SINISTRO- carattere GIOBE.TTF per leggere correttamente i caratteri cornice nei sorgenti(da copiare in C:\Windows\Fonts)Ciaoo!Fammi saperebuona serata,ps. se ti interessa anche gli altri tasti di shift fammi sapere (es. alt, ctrl, ins ecc) Modificato: 27 agosto 2005 da nicola1
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora