Vous savez déjà que l'on peut changer le contraste lors d'une saisie d'une touche avec la commande _getkey.
Voici un programme qui change le contraste en communiquant directement avec le driver d'écran de la 83.
Nous reverrons cela dans la leçon 23 :
...début standard........
.LIST
#define contsav $8265 ; variable pour sauvegarder le contraste
.org 9327h
call _clrlcdfull
call _grbufclr ; efface plotscreen (sauvegarde de l'écran
graphique)
ld a,43d
ld (contsav),a ; sauve le contraste
jr kupress
mainloop:
call _getkey ; saisie des touches
cp 01h
jr z,kupress
cp 02h
jr z,kdpress
cp 05h ; enter est pressé, on quitte
ret z
jr mainloop
kupress:
ld a,(contsav) ; restaure le contraste
cp 62d ; 62 est la valeur maximale
jr z,mainloop
inc a
ld (contsav),a ;sauvegarde le contraste
jr setcont ; met à jour le contraste
kdpress:
ld a,(contsav)
cp 23d
jr z,mainloop
dec a
ld (contsav),a
jr setcont
setcont:
or 0C0h ; met à jour le contraste
call _lcd_busy
out (lcdinstport),a
jr mainloop
.end
END
Avec les explications et en omettant le label setcont rien de bien compliqué.