Libreria delle FunzioniGestione Tastiera

Entra nella Libreria GIOBE.TPU

 ChkKey 

CODICE SORGENTE [3 di 4]  

    
bulletLa procedura è parzialmente scritta in linguaggio Assembly. E' probabile che il lettore, in questo momento, non sia in possesso delle conoscenze di base della programmazione a basso livello, per cui questa pagina pụ risultare incomprensibile; desidero fornirtela comunque, come stimolo per approfondire questa potente tecnica di programmazione (vedi Sezione Tutorial Assembly).
    
bulletLa funzione verifica la pressione di un tasto con l’aiuto della Funzione 01H della libreria INT 16H [consulta la Scheda dedicata alla Tastiera della Sezione Dentro il Computer].
bulletQuesta funzione verifica lo stato della tastiera senza fermarsi, lasciandone lo stato nella flag di zero:
bulletse nessun tasto è stato premuto il risultato è Z (zero) e ffZ=1
bulletse è stato premuto un tasto  il risultato è NZ (non zero) e ffZ=0 e la funzione lascia il codice ASCII in AL e il codice di scansione in AH
bulletNon appena un tasto è stato premuto i suoi codici devono essere estratti dal buffer della tastiera: per questo viene chiamata la Funzione 00H della libreria INT 16H
    
Codice Sorgente   Mostra Effetto Esegui il Programma Scarica l'Esempio d'Applicazione
FUNCTION ChkKey (VAR ascii,scans:word):boolean; 
VAR  test:byte;
BEGIN
  ChkKey:=false;
  asm
    PUSH   AX
    PUSH   DI
    MOV    test,0
    MOV   AH,01H
    INT   16H
    JZ @@1 
     
    MOV   AH,00H 
    INT   16H    
    PUSH   AX
    XOR    AH,AH
    LES    DI,ascii
    STOSW
    POP    AX
    MOV    AL,AH
    XOR    AH,AH
    LES    DI,scans
    STOSW
    MOV    test,1
@@1:POP    DI
    POP    AX
  end;
  IF test=1 THEN
  ChkKey:=true;
END;
    
Pagina Precedente Tastiera Pagina Successiva ChkKey Lezioni - Vai al DownLoad dei files DOC Torna al Menu "Tastiera"
Esempio Sorgente Mostra
4 di 6

    

PASCAL  »

Libreria Giobe | Librerie Standard | Allegati | Applicazioni | Info | Download
PROCEDURE  »   Caratteri | Mouse | Tastiera | Tempo, Data & Ora
Box | Cornici | Cursore | Aree a Riga Intera | Aree a Schermo Totale
FUNZIONI  »   Caratteri | Mouse | Tastiera | Tempo, Data & Ora
Home 
Pascal|Manuali|Tabelle|Schede
Tutorial Assembly|Palestra Assembler
Aggiungi Giobe®2000 ai preferiti  
Motore
Ricerca
  Rendi Giobe®2000 pagina di Default
© 2001-2010  -  Studio Tecnico ing. Giorgio OBER
Tutti i diritti sono riservati