[Plan du site]
Vous êtes ici ---
> Le Site du Zéro
> Les tutoriels
> Non-Officiels
> Programmation
> Calculatrices
> Ti
> Apprendre l'asm z80 pour TI > Introduction / installation > Matériel nécessaire
> Lecture du tutoriel
Matériel nécessaire
Vous vous apprêtez à lire un tutoriel rédigé par un membre de ce site. Malgré tout le soin que ce membre a pu apporter au tutoriel, nous ne pouvons pas garantir que les informations contenues sur cette page sont exactes à 100%. Merci de garder cela en tête lorsque vous lirez cette page ;o)
C'est bien beau de programmer, mais généralement ça ne suffit pas ; un matériel minimum est requis.
Vous connaissez peut-être la galère de rechercher ses bons fichiers sur le net ?
Eh bien comme je suis très gentil je vous éviterai cette souffrance !
De nombreux
IDE sont présents sur le net mais personnellement, je leur préfère de loin le bloc-note ; lui n'a aucune prétention !
En plus, vous n'avez pas à le télécharger, et ses fonctions seront bien suffisantes pour l'usage que vous en ferez.
Vous devez donc créer un nouveau document texte à l'aide d'un clic droit et modifier son extension en
.z80.
Répondez "oui" à la question idiote que vous pose votre ordinateur et créez si nécessaire une association de programme :
- Clic droit sur votre fichier z80.
- Ouvrir avec
- Choisir le programme
- Le bloc-note devrait déjà être présent dans la liste suivante.
Sélectionnez le, cochez Toujours utiliser ce programme pour ouvrir ce type de fichier, et cliquez sur OK.
Cela permet de lancer directement le bloc-note quand vous "double-cliquerez" sur un fichier z80.
Vous êtes maintenant prêts pour l'édition.
Bon, là y'a pas 36 solutions ! Le compilateur le plus connu (et le seul que je connaisse...) est sans conteste
TASM, qui fonctionne avec une table de référence, un fichier nommé
TASM80.TAB.
Cette application permet de transformer votre texte en un fichier binaire... inutilisable !
Heureusement il y a
findus un autre compilateur qui permet de compiler ce fichier
.bin en programme directement exportable sur la calculatrice, ô, joie !
Ce compilateur s'appelle...
DEVPAC8X.COM et comme son nom l'indique, il produit un fichier en
.8XP lisible par la calculette ou par un émulateur.
C'est bien beau toutes ces applications, mais comment on les utilise ?
Je supposerai que vous préférez lancer une application plutôt que de créer plusieurs fichiers pour gérer ces deux compilateurs.
Et c'est pour ça qu'a été créé le fichier
asm.bat qui gère le tout pour ne vous laisser que le programme en cas de réussite.
En cas d'échec (oui, ça arrive

), vous obtiendrez un fichier
.XLT s'ouvrant avec
excel qui détaillera vos erreurs.
Et comme promis, voilà tous ces fichiers dans un package :
Tout ces fichiers doivent IMPERATIVEMENT être dans le même dossier.
Pour utiliser
asm.bat facilement, créez un fichier
lancement.bat (appelez le comme vous voulez, il faut juste que l'extension soit en
.bat. Utilisez un fichier texte puis changez le
.txt) et tapez le code suivant :
Code : Console | asm [nom du fichier z80 sans l'extension] |
Par exemple, pour compiler le fichier "MATHS.z80", tapez
Code : Console
Ensuite, enregistrez votre
.bat et double-cliquez dessus.
Votre programme (fichier z80) doit également se trouver dans le même dossier que les applications.
Et tant qu'on est dans les téléchargements, je vous propose les derniers (au moments où j'écris ces lignes !) OS :
Pour TI-83+ ou TI-83+ SE
Pour TI-84+ ou TI-84+ SE
Et c'est quoi au juste un OS ? Parce que Operating System, ça me parle pas vraiment...
Personne ne saurait expliquer ça mieux que ses créateurs je suppose...
Citation : Texas InstrumentsLe système d'exploitation (OS) de votre calculatrice fait référence au programme de configuration qui permet à votre calculatrice de fonctionner. Comme pour les ordinateurs, le système d'exploitation de votre calculatrice peut être mis à jour.
OK, vous avez un programme pour calculette sur votre ordinateur.
Il ne serait pas mieux sur une calculette ?
Il vous faut donc un logiciel de transfert pour échanger des données de l'ordinateur à votre TI, ou
vice versa.
Mon choix s'est porté sur le logiciel TI-Connect qui propose en plus quelques options sympas comme la capture d'écran, la conversion et le transfert d'images...
De plus, la version Windows ne fait pas de discrimination ; toutes les calculettes (de TI-83+ à TI-84+ SE) sont acceptées.
L'installation est extrêmement simple et intuitive, je ne perdrai pas de temps à l'expliquer.
Ce qui nous intéresse le plus pour le moment, c'est l'application de transfert ordinateur -> calculette.
A la base, si vous double-cliquez sur un fichier en
.8XP, l'ordinateur vous sortira un truc du genre "il n'y a pas de programme associé à cette action".
Il faut lui associer l'application
TISendTo.exe présente par défaut dans le dossier
Program files\TI Education\TI Connect.
Vous démarrerez ainsi le logiciel de transfert en double-cliquant sur un fichier 8XP.
Bien sûr, c'est ce que je préconise, mais rien ne vous empêche d'associer un autre programme.
Voilà un screenshot :
Comme vous pouvez le remarquer, plus intuitif, tu meurs !
De plus, si vous essayez de transférer un programme dont le nom est déjà présent, aucun bug ne sera généré !
J'en profite pour préciser que le nom du programme n'est pas modifiable après la compilation. Si vous changez le nom du fichier 8XP, c'est tout de même le nom de départ qui apparaîtra dans vos programmes.
La preuve : j'avais compilé ce fichier en l'appellant A.z80 puis renommé le fichier final en B.8XP et regardez... Le programme est transféré sous le nom A !
Voilà le plus important. Les autres applications sont moins utiles, je vous laisse les découvrir seuls comme des grands !
Si vous n'êtes pas au courant, il est temps que je vous prévienne : l'asm génère des bugs beaucoup plus "élaborés"

que le ti-basic !
Ça passe par l'impossibilité de lancer des programmes, le sempiternel "Mem cleared", le blocage pur et simple, ou encore un écran bleu (oui ! Bleu !)...
Vous n'avez pas fini de vous amuser !
Je vous rassure, il suffit généralement d'enlever les piles d'alimentation et de les remettre pour résoudre le problème.
Au pire, vous devrez carrément retirer la "back-up battery" et laisser patienter quelques jours.
Heureusement, il existe des
émulateurs qui prennent des risques à la place de votre TI. En cas de plantage, vous avez juste à fermer le logiciel !
Je précise que je ne pourrai en aucun cas être tenu responsable d'éventuels dégâts causés à votre calculatrice puisque je compile et vérifie moi-même les programmes d'exemple complets.
Voyons... je propose TI-83+ flash debugger !
Télécharger
Pourquoi "flash" ?
Parce qu'il
prend des photos supporte les applications. Cela s'avère très utile pour tester un programme sous
MirageOS par exemple.
Une fois le logiciel lancé,
File/New, et choisissez votre calculette.
Il n'y a quasi aucune différence en ce qui concerne les programmes entre une TI-83+ ou une TI-84+. Si vous possédez cette dernière, vous pouvez quand même utiliser le logiciel.
Pour lancer la calculette virtuelle, appuyez sur la flèche noire (4ème icône en partant de la gauche), et sur le carré pour la stopper.
Ces commandes ne correspondent en aucun cas à l'allumage ou à l'extinction de la TI ; elles n'agissent que sur l'application.
Pour charger un programme ou une application flash, choisissez
Load puis
Application... ou
RAM file....
La calculette doit être stoppée pour pouvoir utiliser cette fonction.
Je déconseille fortement de charger un programme dont le nom est déjà présent dans la calculette virtuelle...
Les principales fonctions sont le chargement de programmes et l'émulation de la TI. Je n'expliquerai donc rien d'autre, d'autant plus que je n'ai pas encore tout compris !
Mais cela devrait vous suffire.
Cette sous-partie a été créée par
saimoun, merci à lui !
- z80asm à la place de Tasm, il est dans les paquets de la plupart des distributions, sinon faîtes une recherche sur Google. Son gros défaut (ou celui de Tasm, tout dépend de quel point de vue on se place niark niark
) étant qu'il a une syntaxe légèrement différente de Tasm. Voir la doc ici : http://www.nongnu.org/z80asm/usage.html
Je donne quand même les équivalences :
- #define Nom_de_la_macro (arg1, arg2, ...) code_de_la_macro_sur_une_ligne avec Tasm contre Code : Autre
1
2
3
4
5
| Nom_de_la_macro: macro arg1, arg2, ...
code_de_la_macro
qui_peu_s_etendre_sur_plusieurs_lignes
; Genial_non ?
endm |
avec z80asm.
- _fonction = XXXXh avec Tasm contre _fonction: equ XXXXh avec z80asm.
- .dw, .db, .org, .etc... avec Tasm contre dw, db, org, etc... (enlevez tous les points ".") avec z80asm.
Si avec tout ça vous trouvez encore des bugs avec un programme qui marchait avec Tasm, regardez sur la doc en ligne (lien un peu plus haut), sinon tapez man z80asm en console et vous aurez une documentation plus complète.
- Tilem à la place de VirtualTI, fonctionne très bien, téléchargeable sur http://lpg.ticalc.org/prj_tilem/
- bin2var à la place de Devpac8x (je l'ai cherché celui-là...), en plus, il peut convertir en 82p, 83p, 8xp, 85s, etc. Note : le programme est distribué pour Windows, mais le code source est distribué, il faut juste le recompiler pour Nux (gcc -o bin2var bin2var.c dans le dossier où l'archive est décompressée).
- Tilp à la place de TI-Graph Link du programme de transfert, fonctionne très bien avec le câble TI GraphLink, mais aussi le GreyLink, les cables séries et parallèles (voir le site ftp83plus.net).
Ci-dessous le makefile que j'utilise pour compiler (bande de veinards j'ai fais tout le boulot à votre place

). Pour le faire marcher : vous le mettez dans le même dossier que votre fichier source (portant l'extension *.z80), vous tapez
make dans une console (dans le bon dossier, bien sûr) et il vous produira un fichier du même nom ayant l'extension *.8xp, ce dernier étant directement ouvrable par tilem.
Note : vous pouvez aussi taper
make clean pour effacer les fichiers intermédiaires, et
make mrproper pour effacer les fichiers intermédiaires et les fichiers finaux (avec l'extension *.8xp).
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 | COMP = z80asm
FLAGS = --verbose
CONVERT = bin2var
SRC = $(wildcard *.z80)
BIN = $(SRC:.z80=.bin)
EXE = $(SRC:.z80=.8xp)
all: asm
asm: ${SRC}
@${COMP} ${FLAGS} --input ${SRC} --output ${BIN}
@${CONVERT} ${BIN} ${EXE}
.PHONY: clean mrproper
clean :
@rm -f *.bin
@rm -rf *~
@echo "Nettoyé."
mrproper: clean
@rm -f *.8xp
@echo "C'est vide !"
|
Voilà, je trouvais que ça manquait, partout sur le Net, on ne voit que des tutos (même ceux en anglais et réputés "très bons") qui balancent du Tasm et Cie, pas un seul n'explique qu'on peut très bien faire ça avec Linux !
Vous devriez à présent être en mesure de compiler vos programmes SANS BUGS en fichiers directement transférables, et de les transférer.
Je vous sens impatients de commencer...