Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre
Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre
L'abbonamento Ultimate di GeForce NOW ora comprende la nuova architettura Blackwell RTX con GPU RTX 5080 che garantisce prestazioni tre volte superiori alla precedente generazione. Non si tratta solo di velocità, ma di un'esperienza di gioco migliorata con nuove tecnologie di streaming e un catalogo giochi raddoppiato grazie alla funzione Install-to-Play
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco
Deebot X11 Omnicyclone implementa tutte le ultime tecnologie Ecovacs per l'aspirazione dei pavimenti di casa e il loro lavaggio, con una novità: nella base di ricarica non c'è più il sacchetto di raccolta dello sporco, sostituito da un aspirapolvere ciclonico che accumula tutto in un contenitore rigido
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Grazie ad un mocio rotante che viene costantemente bagnato e pulito, Narwal Flow assicura un completo e capillare lavaggio dei pavimenti di casa. La logica di intellignza artificiale integrata guida nella pulizia tra i diversi locali, sfruttando un motore di aspirazione molto potente e un sistema basculante per la spazzola molto efficace sui tappeti di casa
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 11-08-2007, 18:11   #1
frizzo28
Senior Member
 
Iscritto dal: Aug 2005
Città: Roma sud
Messaggi: 590
[ASSEMBLER]rilevare rilascio e pressione dei tasti

ciao a tutti dovrei realizzare un programma in assembler che esegua una procedura alla pressione di un tasto e un altra quando lo si rilascia...
non so da dove iniziare... Qualche idea?
grazie ciao
__________________
-Mac Book intel core duo 1,83GHz, 1,25 Gb RAM
-Amd athlon 64 dual core 4400+, 2 GB RAM, Asus a8n-sli Deluxe, totale 500 GB di HARD DISK(4 hdd)
frizzo28 è offline   Rispondi citando il messaggio o parte di esso
Old 12-08-2007, 21:20   #2
Netskate
Senior Member
 
L'Avatar di Netskate
 
Iscritto dal: Oct 2004
Messaggi: 1661
è passato abbastanza tempo dall'esame di architettura degli elaboratori ma da quel che mi ricordo qualcosa del genere dovrebbe andare bene:

Codice:
;Si mette in attesa di un tasto se il tasto premuto è esc salta a fine programma
wait4Key:  call        insChar
	       cmp        al,1bh
	       je          fine_programma
               jmp        wait4key

;*****************************************
;* PROCEDURA "insChar"
;* Questa procedura legge un carattere da
;* tastiera e lo memorizza nel registro AL
;*****************************************
insChar proc near
	   mov         ah,07h
	   int           21h
	   ret
insChar endp
;*****************************************
;* FINE PROCEDURA "insChar"
;*****************************************
devi usare gli interrupt, se non ricordo male mettendo in ax 07 e chiamando l'interrupt 21 il sistema si mette in attesa della pressione di un tasto da tastiera, in questo caso mette il codice ascii in AL e lo puoi confrontare con quello che ti serve per fare partire una determinata procedura.

opzioni dell'interrupt 21 specifiche proprio per la pressione o per il rilascio non le ricordo, magari esistono. Comunque questo ti può essere d'aiuto come punto di partenza
Netskate è offline   Rispondi citando il messaggio o parte di esso
Old 12-08-2007, 22:40   #3
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
non credo sia bene affidarsi alla int 21h quando si lavora in Windows, se ben ricordo i kernel NT non sono stati progettati con la pretesa di retrocompatibilità con MS-DOS come uno degli scopi primari, percui alcune funzionalità della int 21h potrebbero non esistere più, anche se magari una cosa molto basilare come il controllo della tastiera c'è ancora. la int 21h era un'API specifica di MS-DOS.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 12-08-2007, 23:27   #4
Netskate
Senior Member
 
L'Avatar di Netskate
 
Iscritto dal: Oct 2004
Messaggi: 1661
per un programma basilare come sembra aver chiesto lui dovrebbe andare bene
Netskate è offline   Rispondi citando il messaggio o parte di esso
Old 13-08-2007, 09:50   #5
frizzo28
Senior Member
 
Iscritto dal: Aug 2005
Città: Roma sud
Messaggi: 590
Quote:
Originariamente inviato da 71104 Guarda i messaggi
non credo sia bene affidarsi alla int 21h quando si lavora in Windows, se ben ricordo i kernel NT non sono stati progettati con la pretesa di retrocompatibilità con MS-DOS come uno degli scopi primari, percui alcune funzionalità della int 21h potrebbero non esistere più, anche se magari una cosa molto basilare come il controllo della tastiera c'è ancora. la int 21h era un'API specifica di MS-DOS.
Innanzitutto grazie a tutti x le risposte

x 71104 Si infatti non ho specificato che sto programmando su un 386 con MS-Dos installato (Da oggi un 486 perche' il 386 stamattina sono andato ad accenderlo e non funziona +... )

x Netskate Quello che mi hai proposto tu si mette in attesa della pressione di un tasto e mette l'ascii in al vero? Come la ah=01h int 21h?


cmq il programma che ho intenzione di realizzare e' questo:
"Scrivere un programma che modifichi la routine di interruzione relativa alla gestione della tastiera in modo che ogni volta che viene premuto un tasto venga emesso un suono che duri finche' il tasto non viene rilasciato..."


Quindi mi servirebbe se e' stato premuto un tasto 'attivo il suono' poi appena viene rilasciato lo 'disattivo' cosa che faccio con due procedure... attiva_suono e disattiva_suono...
__________________
-Mac Book intel core duo 1,83GHz, 1,25 Gb RAM
-Amd athlon 64 dual core 4400+, 2 GB RAM, Asus a8n-sli Deluxe, totale 500 GB di HARD DISK(4 hdd)

Ultima modifica di frizzo28 : 13-08-2007 alle 09:57.
frizzo28 è offline   Rispondi citando il messaggio o parte di esso
Old 16-08-2007, 11:27   #6
frizzo28
Senior Member
 
Iscritto dal: Aug 2005
Città: Roma sud
Messaggi: 590
up un aiutino?
__________________
-Mac Book intel core duo 1,83GHz, 1,25 Gb RAM
-Amd athlon 64 dual core 4400+, 2 GB RAM, Asus a8n-sli Deluxe, totale 500 GB di HARD DISK(4 hdd)
frizzo28 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre Prova GeForce NOW upgrade Blackwell: il cloud ga...
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco Ecovacs Deebot X11 Omnicyclone: niente più...
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio Narwal Flow: con il mocio orizzontale lava i pav...
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi Panasonic 55Z95BEG cala gli assi: pannello Tande...
HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione HONOR Magic V5: il pieghevole ultra sottile e co...
Sony WH-1000XM6 già scontate su A...
NVIDIA chiede più velocità...
Windows 11 in soli 2,8 GB: con questo sc...
Panico in casa HYTE: ritirato dal mercat...
OPPO Reno14, debutto tra rooftoop esclus...
3DAIQ, il progetto di Concept Reply e TE...
Il parlamento francese contro TikTok: '&...
Apple Watch SE 2ª gen. Cellular a soli 2...
MotoE sospesa dopo il 2025: fine tempora...
GhostRedirector: nuova campagna di attac...
AirPods Pro 3, la nuova traduzione vocal...
Dead Island 3 potrebbe essere già...
Nuova Lancia Ypsilon Rally2 HF Integrale...
Meta e TikTok vincono la sfida legale co...
Silent Hill f: svelato il peso in GB e p...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 16:03.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v