| La casella di testo mostra in
dettaglio il
programma principale (Main
Program):
| l'interfaccia
grafica è ancora assicurata dalla procedura Desktop (CALL
BIOScls): sul monitor appare la
struttura
del
connettore EPP e lo
stato attuale del registro d'ingresso coinvolto nel test |
| se la porta parallela è impostata come
EPP (Enhanced
Parallel Port) è possibile effettuare l'input
DATI di 8 bit
dal registro 037CH; può essere
necessario (e questo programma lo fa...) impostare a
1 il bit5
del registro 037AH; impostando a
0 il bit5 del registro
037AH il registro
037CH ritorna a funzionare come porta
di output |
| il programma si infila poi nel
main loop, nel quale rimane in
perenne lettura dello stato logico dei pin autorizzati; in
particolare:
| legge il dato dalla
porta d'ingresso, cioè indirizza il
Registro bidirezionale Dati 037CH/027CH
(MOV
DX,PRNdato/IN
AL,DX) |
| esegue opzionalmente la lettura anche dei
rimanenti Registri
dato e ne mostra il contenuto |
| mostra una piacevole simulazione
degli eventi (CALL
Colora), con l'aiuto di una
procedura locale: oltre porre a video la stringa ascii
numerica esadecimale e l'aspetto dei
singoli bit corrispondenti al
byte letto dal registro, mostra
un'animazione del contatto effettuato. |
| data la velocità della porta introduce un
breve ritardo opzionale, per rendere
più stabile la visualizzazione degli eventi |
| provvede ad
interrogare la tastiera senza fermarsi,
in virtù della Funzione
01H dell'INT 16H;
solo se si preme un tasto qualunque la
lettura asincrona dei pin del connettore ha termine
e il programma viene chiuso, restituendo il controllo al sistema operativo
che ci ospita |
|
|