 | La casella di testo
mostra in dettaglio le fasi
fondamentali del progetto:
 | come di consueto si predispone l'interfaccia
grafica (desktop); la
procedura locale (CALL
DESKTOP) organizza la stampa dei messaggi di
presentazione ed è assolutamente simile a quella coinvolta in quasi tutti i
progetti |
 | non è quindi necessario descriverla in dettaglio; ricordo
che il
servizio è ottenuto con l'intercessione
delle Procedure
e delle Macro
appartenenti alle mie 2 librerie,
Giobe.MAC
e
Giobe.LIB, disponibile in forma sorgente
in
Giobe.ASM. |
 | inizializza (CALL
Pre_ini) il controller
HD 44780, simulando da SW l'attivazione
della sua linea di reset; vengono
erogati 3 bytes a 30H separati da
piccoli ritardi "pesati", e viene predisposta (per default) l'interfaccia
a 8 bit |
 | predispone controller
HD 44780 per gestire il visualizzatore
nel modo operativo desiderato:
interfaccia a 4 bit,
visualizzatore a 2 linee, matrice del
carattere con 5x7 pixel,
display acceso, cursore invisibile a
forma fissa, azzeramento della memoria DDRam,
autoincremento dell'indirizzo,
display bloccato |
 | legge e mette a video
e sul visualizatore LCD la frase
"Giobe2000 - Benvenuti!":
 | associa il puntatore
SI alla stringa da stampare
(LEA SI,TxtLCD) |
 | assume il carattere corrente (MOV AL,CS:[SI])
e controlla se si tratta del carattere terminatore (CMP AL,00H) |
 | solo in questo caso pone termine alla visualizzazione (JE XXX01) |
 | altrimenti provvede alla
sua visualizzazione; di questo si occupa la
Procedura
Sta_chr,
descritta più avanti |
|
 | per mostrare l'efficienza del progetto offre un
messaggio animato (CALL
Giochino) che
continua fino alla pressione di un tasto qualunque |
 | le ultime istruzioni (MOV
AH,4CH,INT
21H)
chiudono il codice sorgente restituendo il controllo al sistema operativo
che ci ospita. |
|