Aller au menu - Aller au contenu

[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)
Avatar
Auteur : nightmat
Note : 19 / 20 (2 votes)
Visualisations : 3 774

Plus d'informations Plus d'informations
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 ! ^^
Sommaire du chapitre :
Icône du chapitre
Chapitre précédent Sommaire Chapitre suivant

Edition

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 :
  1. Clic droit sur votre fichier z80.
  2. Ouvrir avec
  3. Choisir le programme
  4. Le bloc-note devrait déjà être présent dans la liste suivante.
  5. 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.

Image utilisateur


Vous êtes maintenant prêts pour l'édition. :)

Compilation

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 ! :D
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.
Image utilisateur
En cas d'échec (oui, ça arrive :p ), 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
asm MATHS

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 Instruments
Le 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.

Transfert

OK, vous avez un programme pour calculette sur votre ordinateur.
Il ne serait pas mieux sur une calculette ? :p
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.



Image utilisateur

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 :

Image utilisateur

Comme vous pouvez le remarquer, plus intuitif, tu meurs ! :D
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é !
Image utilisateur


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 ! :p

Émulation

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 ! :lol:
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.


Image utilisateur

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.

Image utilisateur

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.

Image utilisateur


Je déconseille fortement de charger un programme dont le nom est déjà présent dans la calculette virtuelle...













Après plusieurs utilisations, mon logiciel refusait de se lancer. Si cela vous arrive, je n'ai comme solution que le redémarrage. >_<
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. ;)

Et Linux alors..?!

Cette sous-partie a été créée par saimoun, merci à lui !

  1. 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 :diable: ) é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.
  2. Tilem à la place de VirtualTI, fonctionne très bien, téléchargeable sur http://lpg.ticalc.org/prj_tilem/
  3. 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).
  4. 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 :p ). 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... :)
Chapitre précédent Sommaire Chapitre suivant
Retour en haut Retour en haut


Créé : le 06/09/2007 à 12:33:57
Modifié : le 05/10/2008 à 19:09:22
Avancement : 100%
Licence : Copie non autorisée

4 commentaires

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | RSS tutoriels | RSS news
Édité par Simple IT SARL : Nous contacter | Notre blog | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 118 Zéros connectés | Requêtes SQL 8 requêtes | Temps de génération de la page : Total (SQL) 0.0968s (0.0856s)