Bonjour tout le monde, c'est mon premier script ici. J'ai eu la calculatrice TI-83 Plus pour le cours de math et j'ai commencé à programmer en ASM pour faire des programmes puissants. Ce qui suit est un tutoriel qui vous explique comment faire des programmes en ASM pour TI-83 Plus (ca doit surement marcher avec dautre version...)
Source / Exemple :
---------------------
INFOS - TI-83 Plus
---------------------
CPU: 8Mhz Z80
Flash ROM: 160K
RAM: 24K
Piles: 4AAA
1 CR 1616 (backup)
LCD: 64 x 96 Pixels
Languages: TI-Basic et ASM
ATTENTION: mettre un [ENTER] après le .end
----------
DEFAULT
----------
;programme default
.nolist
#include "ti83plus.inc" ;fichier nécessaire pour acceder aux routines systemes
.org userMem-2 ;dire ou commencer dans la mémoire
.db $BB,$6D
bcall(_clrLCDfull) ;effacer l'écran
ret
.end ;fin du code
----------
DEFAULT
----------
Ce script va seulement effacer l'écran. N'utilisez pas ASM juste pour ca, il y a déja une fonction implémenté dans la calculatrice(ClrHome) :p . Vous ajoutez votre code après bcall(_clrLCDfull).
-------------
SHUTDOWN
-------------
#define B_CALL(xxxx) rst 28h \ .dw xxxx
#define B_JUMP(xxxx) call 50h \ .dw xxxx
.org 9D95h
DI ; neutraliser les interruptions
LD A,001H ; mettre 0 au regitre "a"
OUT (003H),A ; fermer l'ecran
EI ;accepter les interruptions
RET
.end
END
-------------
SHUTDOWN
-------------
Ce script va fermer la calculatrice!
-------
LIGNE
-------
#define B_CALL(xxxx) rst 28h \ .dw xxxx
#define B_JUMP(xxxx) call 50h \ .dw xxxx
_op1set3 =41a1h
_vertcmd =48a9h
.org 9D95h
B_CALL(_op1set3) ; Opl1 = 3
B_CALL(_vertcmd) ; dessiner la ligne verticale: Y = 3
ret
.end
END
-------
LIGNE
-------
Ce script va afficher une ligne sur le graphique. Vous allez être surpris par la vitesse comparée au TI-BASIC
-------
TEXTE
-------
#define B_CALL(xxxx) rst 28h \ .dw xxxx
#define B_JUMP(xxxx) call 50h \ .dw xxxx
_ClrLCDFull =4540h
_GrBufClr =4BD0h
_VPutS =4561h
PENCOL =86D7h
CURROW =800Ch
CURCOL =800Dh
_puts =450Ah
.org 9D95h
B_CALL(_clrLCDFull) ;effacer l'écran
B_CALL(_GrBufClr) ;effacer toutes les valeurs du graph
ld hl,0000h ;loader 0 au registre hl
ld (PENCOL),hl ;loader la valeur de hl à Pencol
ld hl,str1 ;loader le string de texte
B_CALL(_vputs) ;CALL pour afficher du texte sur l'écran
ld hl,0001h ;loader 0 au registre hl
ld (CURROW),hl ;loader la valeur de hl a la coordonnée normale du texte
ld hl,0000h
ld (CURCOL),hl
ld hl,str2
B_CALL(_puts) ;Mettre le texte homescreen dessus
ret
str1: ;label pour le texte
.db "petit texte.",0 ;petit texte
str2:
.db "grand texte. ",0 ;normal (plus grand) text
.end
END
-------
TEXTE
-------
Bon, je dois partir mais je promets de continuer ce tutoriel dès que je le pourrais
Conclusion :
Merci de m'avertir s'il y a des bugs...
bob3000
http://www.netdude.tk
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.