Les divers langages sur les z80
Posted: 19 Feb 2012, 22:13
Bonjour à vous tous, qui possédez une TI-82(stat), TI-83(+), TI-84(+) et toutes les autres calculatrices z80.
Avec tous les langages de programmation existant sur ces calculatrices, on s'emmêle un peu les pinceaux ces temps-ci. Et les débutants demandent régulièrement des conseils sur le langage à choisir et des liens vers des tutoriels pour débutant. C'est pourquoi j'ai décidé de créer cette news pour faire un p'tit récap' de tout ça. J'essayerai d'être le plus objectif possible.
Aussi, même si vous ne connaissez pas la programmation, ne manquez pas de vous y lancer !
Le TI-Basic :
Idéal pour les débutants, c'est le langage le plus simple, et qui marche avec toutes les calculatrices z80. Il permet d'arriver vite à des résultats, en faisant des programmes de maths aussi bien que des jeux. Il est directement éditable sur votre calculatrice grâce à la touche PRGM.
Cependant, il est vite limité : impossible de faire des vrais jeux comme Mario, et la 3D, n'y pensons même pas. Très vite, dès que l'on a de l'expérience, on est limité par la mémoire de la calculatrice, et par la vitesse d'exécution.
Voici un tutoriel pour apprendre ce langage à partir de Zér0 : http://www.siteduzero.com/tutoriel-3-40 ... basic.html
Pour ceux qui trouvent trop de limites au TI-Basic, ne manquez pas de lire la dernière partie qui les repousse en partie !
Note technique : le TI-Basic est un langage interprété (expliqué dans le tutoriel). Il ne peut faire planter votre TI car un simple appui sur ON permet de le quitter.
L'Axe :
L'Axe est un langage assez récent, mais possède pourtant déjà une bonne communauté derrière, car il permet, une fois appris, de réaliser des jeux fluides, et avec une syntaxe ressemblant à celle du TI-Basic (quoique un peu trompeuse car la théorie est bien différente).
Pour programmer dans ce langage, il suffit de le taper dans l'éditeur de TI-Basic (c'est pour ça que la syntaxe ressemble), et de le compiler avec l'application "Axe Parser". Inconvénients :
- ça ne marche que pour les TI-83+(silver) et TI-84(+)(silver), à cause de l'application. Et un programme ainsi compilé ne marche aussi que sur ces modèles
- impossibilité de programmer en Axe sur ordi (sauf avec un éditeur TI-Basic, mais il faudra quand même compiler sur une calculatrice, voire une calculatrice virtuelle)
- si vous n'avez pas l'application, programmer en Axe est moins pratique car les Hooks ne seront pas là (les Hooks permettent de changer la représentation de certains tokens)
Mais ce langage permet de faire assez facilement ses propres programmes, bien que pas forcément des plus optimisés.
Tutoriel pour apprendre l'Axe depuis Zér0 : http://www.siteduzero.com/tutoriel-3-40 ... arser.html
L'assembleur
Un peu plus difficile que l'Axe, il constitue cependant une curiosité bien singulière. Les programmeurs assembleur se sentent proches du matériel en contrôlant vraiment par eux-même l'ensemble de la calculatrice. L'assembleur ouvre un plus grand horizon que l'Axe et est plus optimisé, avec lui, toutes les limites sont franchises.
Je constate depuis peu que certains gens ont des préjugés en croyant que l'assembleur est très difficile, en réalité, ce n'est pas du tout le cas, il est largement ouvert aux débutants avec un bon tutoriel. De plus, contrairement à l'Axe, il est utilisable pour les calculatrices TI-82 stat, TI-83 (pas +), et TI-76 tout comme pour les TI-83+(silver)/TI-84(+)(silver). La seule concession que je veux bien faire, c'est que les temps de développement sont un peu plus longs quand on est pas encore très habitués, mais je le trouve plus intéressant et plus enrichissant ! Il permet une véritable ouverture sur l'informatique, et vous aidera vraiment à comprendre comment marche un processeur.
Quelques projets d'assembleur pour vous donner une idée : compilateur Axe, interpréteurs Grammer et BBC Basic, OS etc.
Il est possible de directement faire de l'assembleur en hexadécimal sur la calculatrice, même si c'est très difficile. Le chemin utilisé est soit son édition/assemblage sur ordinateur, soit son édition/assemblage sur l'application Mimas directement sur la calculatrice (mais que TI-83+(silver)/TI-84(+)(silver) du coup).
Tutoriel pour apprendre l'assembleur z80 depuis Zér0 : http://www.siteduzero.com/tutoriel-3-57 ... ur-ti.html
Si vous êtes inscrit sur le site, une version bien meilleure est disponible : http://www.siteduzero.com/tutoriel-3-1- ... ur-ti.html
Le Grammer
C'est un langage interprété, comme le TI-Basic, mais nécessitant pour cela de l'application Grammer. Malgré ce contexte, je le trouve plus difficile à apprendre que l'Axe et l'assembleur, mais sa syntaxe étonnante m'attise beaucoup de curiosité. Donc je ne pense pas que ce soit le langage à choisir pour les débutants, mais ça peut être très sympa à apprendre.
De plus, bien que interprété, il est très rapide, beaucoup plus que le TI-Basic, possède beaucoup plus de fonctions que ce dernier (entre autres des fonctions graphiques), et permet des manipulations système.
Voici une news plus explicative, même si je ne suis pas vraiment d'accord en ce qui concerne la difficulté d'apprentissage : viewtopic.php?t=8134
Voici pourquoi je pense comme cela : la syntaxe très curieuse n'est pas forcément des plus simples, et il n'existe pas de tutoriel pour commencer de Zér0, il faudra se contenter d'archives.
Le BBC Basic
Vieux langage presque plus utilisé, et dont la communauté est assez faible, il peut cependant être sympa à apprendre, et possède des fonctions graphiques intéressantes, et est assez rapide. De plus, comme avant l'Axe et le Grammer n'existaient pas, beaucoup de gens se penchaient avant sur ce langage, et du coup pas mal de ressources existent dessus, dommage que ça ait comme ça disparu.
Il s'agit en fait d'une adaptation sur calculatrice d'un langage basic d'ordinateur, et ça peut-être amusant de le retrouver avec l'éditeur spécial sur calculatrice, avec une application.
Un bon tutoriel pour apprendre le BBC Basic (en Anglais) : http://www.benryves.com/bin/bbcbasic/manual/
Lien de téléchargement de l'application : http://www.ticalc.org/archives/files/fi ... 41608.html
Le C
Je vois venir les gens me regardant avec des yeux tous ronds. Eh oui, le C, sur votre TI z80, c'est possible !
Que je vous le dise tout de suite : ce n'est pas du tout le langage le plus adapté pour votre TI, car ce langage n'utilise pas les routines de l'OS. Du coup, rien que pour afficher du texte, il faut déjà inclure une petite librairie bien consistante. Mais ne manquez pas l'expérience de faire du C sur votre z80 ! Et puis d'ailleurs, si vous connaissez l'assembleur, pourquoi ne pas vous-mêmes faire des librairies ?
Si vous ne connaissez pas le C, il faudra d'abord apprendre ce langage pour l'ordinateur, pour ensuite apprendre comme faire de même sur la calculatrice.
Tutoriel pour apprendre le C sur ordinateur depuis Zér0 : http://www.siteduzero.com/tutoriel-3-14 ... -en-c.html
Sujet pour apprendre à compiler du C pour les TI-83(pas +)/TI-82 stat/TI-76 : http://www.yaronet.com/posts.php?s=138500
Les librairies
Les librairies servent à ceux qui savent déjà programmer en TI-Basic, et veulent faire des vrais jeux avec, sans changer de langage, mais juste l'étendre. Ils utilisent alors des "librairies" comme XLib, Celtic etc. pour ajouter des fonctionnalités. Ce ne sont en fait rien d'autre que des programmes assembleur qui soit vont utiliser un procédé compliqué se nommant les Hooks, permettant de changer l'effet de l'utilisation d'une commande, soit vont être appelables par tout programme TI-Basic qui met tout d'abord une valeur dans Ans afin d'effectuer une action précise.
L'avantage des librairies est de pouvoir poursuivre un projet TI-Basic sans tout recommencer, et ne pas apprendre un autre langage, mais l'inconvénient (tout comme pour le BBC Basic et Grammer, d'ailleurs), c'est que le programme TI-Basic, pour fonctionner, a besoin du programme assembleur (ou de l'application).
LA plus connue comme librairie est XLib, et elle forme avec Celtic, Omnicalc et Symbolic les quatre les plus connues. Après, il en existe plein d'autres et ce n'est même pas la peine de les compter. Et si vous faites de l'assembleur, ne manquez pas de créer la vôtre ! Le fait qu'il y en ait beaucoup peut être perçu comme un avantage, mais en réalité, c'est un poids, car il faut les télécharger (ça prend de la place) pour utiliser les programmes qui les utilisent.
Tutoriel pour apprendre à utiliser XLib : http://tiplanet.org/modules/archives/do ... l_Xlib.pdf
Encore un tutoriel pour apprendre à utiliser XLib : http://tibasicdev.wikidot.com/xlib-tutorial
Télécharger XLib : http://www.ticalc.org/archives/files/fi ... 35907.html
Télécharger Celtic : http://www.ticalc.org/archives/files/fi ... 42446.html
Une liste sympa comportant de nombreuses librairies avec des liens (quelques uns sont morts) : http://tibasicdev.wikidot.com/asmlibs
Avec tous les langages de programmation existant sur ces calculatrices, on s'emmêle un peu les pinceaux ces temps-ci. Et les débutants demandent régulièrement des conseils sur le langage à choisir et des liens vers des tutoriels pour débutant. C'est pourquoi j'ai décidé de créer cette news pour faire un p'tit récap' de tout ça. J'essayerai d'être le plus objectif possible.
Aussi, même si vous ne connaissez pas la programmation, ne manquez pas de vous y lancer !
Le TI-Basic :
Idéal pour les débutants, c'est le langage le plus simple, et qui marche avec toutes les calculatrices z80. Il permet d'arriver vite à des résultats, en faisant des programmes de maths aussi bien que des jeux. Il est directement éditable sur votre calculatrice grâce à la touche PRGM.
Cependant, il est vite limité : impossible de faire des vrais jeux comme Mario, et la 3D, n'y pensons même pas. Très vite, dès que l'on a de l'expérience, on est limité par la mémoire de la calculatrice, et par la vitesse d'exécution.
Voici un tutoriel pour apprendre ce langage à partir de Zér0 : http://www.siteduzero.com/tutoriel-3-40 ... basic.html
Pour ceux qui trouvent trop de limites au TI-Basic, ne manquez pas de lire la dernière partie qui les repousse en partie !
Note technique : le TI-Basic est un langage interprété (expliqué dans le tutoriel). Il ne peut faire planter votre TI car un simple appui sur ON permet de le quitter.
L'Axe :
L'Axe est un langage assez récent, mais possède pourtant déjà une bonne communauté derrière, car il permet, une fois appris, de réaliser des jeux fluides, et avec une syntaxe ressemblant à celle du TI-Basic (quoique un peu trompeuse car la théorie est bien différente).
Pour programmer dans ce langage, il suffit de le taper dans l'éditeur de TI-Basic (c'est pour ça que la syntaxe ressemble), et de le compiler avec l'application "Axe Parser". Inconvénients :
- ça ne marche que pour les TI-83+(silver) et TI-84(+)(silver), à cause de l'application. Et un programme ainsi compilé ne marche aussi que sur ces modèles
- impossibilité de programmer en Axe sur ordi (sauf avec un éditeur TI-Basic, mais il faudra quand même compiler sur une calculatrice, voire une calculatrice virtuelle)
- si vous n'avez pas l'application, programmer en Axe est moins pratique car les Hooks ne seront pas là (les Hooks permettent de changer la représentation de certains tokens)
Mais ce langage permet de faire assez facilement ses propres programmes, bien que pas forcément des plus optimisés.
Tutoriel pour apprendre l'Axe depuis Zér0 : http://www.siteduzero.com/tutoriel-3-40 ... arser.html
L'assembleur
Un peu plus difficile que l'Axe, il constitue cependant une curiosité bien singulière. Les programmeurs assembleur se sentent proches du matériel en contrôlant vraiment par eux-même l'ensemble de la calculatrice. L'assembleur ouvre un plus grand horizon que l'Axe et est plus optimisé, avec lui, toutes les limites sont franchises.
Je constate depuis peu que certains gens ont des préjugés en croyant que l'assembleur est très difficile, en réalité, ce n'est pas du tout le cas, il est largement ouvert aux débutants avec un bon tutoriel. De plus, contrairement à l'Axe, il est utilisable pour les calculatrices TI-82 stat, TI-83 (pas +), et TI-76 tout comme pour les TI-83+(silver)/TI-84(+)(silver). La seule concession que je veux bien faire, c'est que les temps de développement sont un peu plus longs quand on est pas encore très habitués, mais je le trouve plus intéressant et plus enrichissant ! Il permet une véritable ouverture sur l'informatique, et vous aidera vraiment à comprendre comment marche un processeur.
Quelques projets d'assembleur pour vous donner une idée : compilateur Axe, interpréteurs Grammer et BBC Basic, OS etc.
Il est possible de directement faire de l'assembleur en hexadécimal sur la calculatrice, même si c'est très difficile. Le chemin utilisé est soit son édition/assemblage sur ordinateur, soit son édition/assemblage sur l'application Mimas directement sur la calculatrice (mais que TI-83+(silver)/TI-84(+)(silver) du coup).
Tutoriel pour apprendre l'assembleur z80 depuis Zér0 : http://www.siteduzero.com/tutoriel-3-57 ... ur-ti.html
Si vous êtes inscrit sur le site, une version bien meilleure est disponible : http://www.siteduzero.com/tutoriel-3-1- ... ur-ti.html
Le Grammer
C'est un langage interprété, comme le TI-Basic, mais nécessitant pour cela de l'application Grammer. Malgré ce contexte, je le trouve plus difficile à apprendre que l'Axe et l'assembleur, mais sa syntaxe étonnante m'attise beaucoup de curiosité. Donc je ne pense pas que ce soit le langage à choisir pour les débutants, mais ça peut être très sympa à apprendre.
De plus, bien que interprété, il est très rapide, beaucoup plus que le TI-Basic, possède beaucoup plus de fonctions que ce dernier (entre autres des fonctions graphiques), et permet des manipulations système.
Voici une news plus explicative, même si je ne suis pas vraiment d'accord en ce qui concerne la difficulté d'apprentissage : viewtopic.php?t=8134
Voici pourquoi je pense comme cela : la syntaxe très curieuse n'est pas forcément des plus simples, et il n'existe pas de tutoriel pour commencer de Zér0, il faudra se contenter d'archives.
Le BBC Basic
Vieux langage presque plus utilisé, et dont la communauté est assez faible, il peut cependant être sympa à apprendre, et possède des fonctions graphiques intéressantes, et est assez rapide. De plus, comme avant l'Axe et le Grammer n'existaient pas, beaucoup de gens se penchaient avant sur ce langage, et du coup pas mal de ressources existent dessus, dommage que ça ait comme ça disparu.
Il s'agit en fait d'une adaptation sur calculatrice d'un langage basic d'ordinateur, et ça peut-être amusant de le retrouver avec l'éditeur spécial sur calculatrice, avec une application.
Un bon tutoriel pour apprendre le BBC Basic (en Anglais) : http://www.benryves.com/bin/bbcbasic/manual/
Lien de téléchargement de l'application : http://www.ticalc.org/archives/files/fi ... 41608.html
Le C
Je vois venir les gens me regardant avec des yeux tous ronds. Eh oui, le C, sur votre TI z80, c'est possible !
Que je vous le dise tout de suite : ce n'est pas du tout le langage le plus adapté pour votre TI, car ce langage n'utilise pas les routines de l'OS. Du coup, rien que pour afficher du texte, il faut déjà inclure une petite librairie bien consistante. Mais ne manquez pas l'expérience de faire du C sur votre z80 ! Et puis d'ailleurs, si vous connaissez l'assembleur, pourquoi ne pas vous-mêmes faire des librairies ?
Si vous ne connaissez pas le C, il faudra d'abord apprendre ce langage pour l'ordinateur, pour ensuite apprendre comme faire de même sur la calculatrice.
Tutoriel pour apprendre le C sur ordinateur depuis Zér0 : http://www.siteduzero.com/tutoriel-3-14 ... -en-c.html
Sujet pour apprendre à compiler du C pour les TI-83(pas +)/TI-82 stat/TI-76 : http://www.yaronet.com/posts.php?s=138500
Les librairies
Les librairies servent à ceux qui savent déjà programmer en TI-Basic, et veulent faire des vrais jeux avec, sans changer de langage, mais juste l'étendre. Ils utilisent alors des "librairies" comme XLib, Celtic etc. pour ajouter des fonctionnalités. Ce ne sont en fait rien d'autre que des programmes assembleur qui soit vont utiliser un procédé compliqué se nommant les Hooks, permettant de changer l'effet de l'utilisation d'une commande, soit vont être appelables par tout programme TI-Basic qui met tout d'abord une valeur dans Ans afin d'effectuer une action précise.
L'avantage des librairies est de pouvoir poursuivre un projet TI-Basic sans tout recommencer, et ne pas apprendre un autre langage, mais l'inconvénient (tout comme pour le BBC Basic et Grammer, d'ailleurs), c'est que le programme TI-Basic, pour fonctionner, a besoin du programme assembleur (ou de l'application).
LA plus connue comme librairie est XLib, et elle forme avec Celtic, Omnicalc et Symbolic les quatre les plus connues. Après, il en existe plein d'autres et ce n'est même pas la peine de les compter. Et si vous faites de l'assembleur, ne manquez pas de créer la vôtre ! Le fait qu'il y en ait beaucoup peut être perçu comme un avantage, mais en réalité, c'est un poids, car il faut les télécharger (ça prend de la place) pour utiliser les programmes qui les utilisent.
Tutoriel pour apprendre à utiliser XLib : http://tiplanet.org/modules/archives/do ... l_Xlib.pdf
Encore un tutoriel pour apprendre à utiliser XLib : http://tibasicdev.wikidot.com/xlib-tutorial
Télécharger XLib : http://www.ticalc.org/archives/files/fi ... 35907.html
Télécharger Celtic : http://www.ticalc.org/archives/files/fi ... 42446.html
Une liste sympa comportant de nombreuses librairies avec des liens (quelques uns sont morts) : http://tibasicdev.wikidot.com/asmlibs