| La casella di testo mostra in dettaglio il
programma principale (Main Program):
| come di consueto si predispone l'interfaccia
grafica; in questo caso è molto spartana ed essenziale:
si limita a pulire lo schermo (CALL
BIOScls) e a fornire il messaggio di presentazione (M_msgC
TESTO1,0,0,1FH) |
|
il
servizio è ottenuto con l'intercessione della Procedura
BIOScls
e della Macro
M_msgC,
entrambe appartenenti alle mie 2 librerie,
Giobe.MAC
e
Giobe.LIB, disponibile in forma sorgente
in
Giobe.ASM. |
| punta poi la porta d'uscita dei dati, cioè indirizza il
Registro d'uscita 0378H/0278H (MOV
DX,0378H)
spedendogli un valore in grado di accendere i led, uno si e un no (MOV
AL,55H), dato che 55H
è uguale a 01010101 e il led
sono accesi con
1 e spenti con
0. |
| naturalmente l'uscita effettiva del dato predisposto in
AL è ottenuta con l'istruzione
OUT DX,AL,
prevista per questo servizio. |
| quindi il programma si ferma (CALL
KEYwait) in attesa della
pressione di un tasto
qualunque; in effetti la Procedura
KEYwait
si avvale della
Funzione 00H dell'INT 16H,
che provvede
appunto alla lettura della
tastiera., lasciando in
AL,
in uscita, il codice ascii del tasto premuto. |
| il
programma ha termine dopo la pressione del tasto
Q (CMP
AL,'Q'/JZ
_OUT) |
| le ultime istruzioni (MOV
AH,4CH,INT
21H)
chiudono il codice sorgente restituendo il controllo al sistema operativo
che ci ospita. |
|