Tutorial 4
Premier programme - Effacer l'écran

Survol
   Dans ce tutorial, nous allons apprendre comment effacer l'écran, à la manière Asm, bien sûr.

Programmation
   Le code du programme suivant va vider l'écran de votre calculatrice. Comme c'est votre premier programme, je vais vous guider pas à pas. Ouvrez le dossier "MesProgs" et créez un nouveau fichier texte. Appellez-le "Clrscreen.z80". Remarquez que l'extension de fichier est .z80. Ouvrez-le et copiez le programme suivant dedans. Au lieu de faire un simple copier/coller (NDT: Je me suis permis de faire une mise en page rendant difficile le copier/coller de la source du programme), je vous recommande de l'imprimer et de le copier à la main pour vous familiariser avec le format du programme, et donc vous apprendrez plus vite à programmer).

#define B_CALL(xxxx) rst 28h \ .dw xxxx       ;Ceci définit les deux macros, bcall et bjump
#define B_JUMP(xxxx) call 50h \ .dw xxxx       ;Ne vous préoccupez pas trop de bjump parce que vous ne l'utiliserez pas très souvent

_clrlcdfull =4540h                   ;Les calls que nous allons utiliser sont définis ici
_homeup =4558h

.org 9D95h                   ;Ceci indique à la calculatrice que le programme devra commencer à l'adresse mémoire 9D95h

B_CALL(_homeup)          ;Appelle le home screen
B_CALL(_clrlcdfull)         ;Efface l'écran
ret                              ;Retourne au TI-OS

.end                                 ;Fin du programme
END

Commandes Utilisées
   _clrlcdf - Cette commande va effacer entièrement l'écran. Lorsque vous utilisez ce call seul dans un programme, il effacera l'écran entier. Mais n'oubliez pas d'inclure un call ret à la fin ou sinon la calculatrice ne retournera pas sous l'AMS, la forçant à crasher et se réinitialiser (resetter). Il en va de même avec tous les ROM calls.
    _homeup - Celle-ci amène le home screen.
    ret - Une instruction Asm z80 standard qui vous ramène au TI-OS
    .end and END - Des instructions z80 qui indiquent à la calculatrice la fin du programme.

Assembler le Programme
   Pour assembler un programme, allez au tutorial 5

Autres commandes de purge (NDT: Clear Commands dans le texte original)
   D'autres commandes telles que _ClrLcd (_ClrLcd = 4543h) effacent entièrement l'écran, tandis que _Clrlcdf effacera l'écran en ignorant tout mode de division d'écran (split screen). _ClrScrn (_ClrScrn = 4549h) effacera l'écran et toute trace de texte avec (NDT: and any text shading along with it dans le texte original). _ClrScrnFull (_ClrScrnFull = 4546h) videra l'écran et toute trace de texte en ignorant toute division d'écran. _ClrTxtShd ( _ClrTxtShd = 454Ch) videra le buffer de texte (NDT: the text shade buffer dans le texte original). Pour utilisez n'importe lequel de ces calls dans le programme ci-dessus, définissez le call et rappelez-le dans le programme en utilisant la macro B_CALL().
   Par exemple, pour utiliser le call _ClrScrnFull ROM, le programme devrait ressembler à ça:

#define bcall(xxxx) rst 28h \ .dw xxxx
#define bjump(xxxx) call 50h \ .dw xxxx

_clrscrnfull =4546h       ;N'oubliez pas de le définir
_homeup =4558h

.org 9D95h

bcall(_homeup)
bcall(_clrscrnfull)       ;Au lieu de _clrlcdf, vous utilisez _clrscrnfull
ret

.end
END

   Si vous avez des questions, envoyez-moi un e-mail. Je ferais de mon mieux.

 

Tutorial 5

    Cliquez pour revenir au menu du site... ou ici pour retourner au menu du tutorial.