Voici le moyen de programmer la TI 59 avec les facilités d'un langage de haut niveau: - des noms de variable au lieu des numéros de registres
- des noms d'étiquettes, de flags
- des commentaires
- adresses calculées lors de la compilation
- structures LOOP, WHILE, UNTIL, FOR, IF, ELSE
- structures SELECT, CASE, DEFAULT, ENDCASE
- goto calculé ON reg { ... }
- affectations multiples
- notation des tableaux
- fonctions d'impression
- Macros avec paramètres
Il génère le listing identique à celui de l'imprimante TI avec: - numéros de pas
- codes des touches
- mnémoniques sur 3 caractères
Il génère les fichiers programmes pour trois émulateurs (voir plus bas):- l'émulateur TI-59.EXE pour Windows
- le TI59ce sur Pocket PC et Smartphone!
- Le tout nouvel émulateur d'Alain Zanchetta sous Windows
| Le TI Compiler Shell, l'interface graphique bilingue est disponible! Inclus: documentation en Anglais et Français avec programme d'installation sous Windows.
Le Shell avec la fenetre d'édition du programme, celle du listing, la fenêtre MS-DOS du compilateur et l'émulateur Windows TI-59. |
Remplacer les numeros de registres et les étiquettes peu parlantes...
LBL A
RCL 00
x²
STO 01
RTN |
|  | ...par des noms de variables et de procédures!
#label A au_carré
#reg 00 valeur
#reg 01 carré
LBL au_carré
RCL valeur
x²
STO carré
RTN |
|
Remplacer des numéros de pas dans les sauts, qu'il faut calculer soi-même...
RCL 00
SBR 012
STO 01
R/S
x²
RTN |
|  | ...par des noms d'étiquettes calculées automatiquement!
RCL 00
SBR routine
STO 01
R/S
routine:
x²
RTN |
|
Remplacer les tests, les boucles sans structure apparente...
RCL 00
x%t
RCL 01
x=t 017
RCL 00
+
DSZ 0 008
0
=
R/S |
|  | ...par des ensembles IF/ENDIF, ou FOR/LOOP clairement définis!
RCL compteur
x%t
RCL reference
IF(x<>t)
FOR compteur
RCL compteur
+
LOOP
0 =
ENDIF
R/S |
|
Remplacer une suite peu lisible...
RCL 00
+
RCL 01
=
STO 02
1 0 0 0
SUM 00
SUM 01 |
|  | ...par des unités logiques visibles, avec affectation, somme ou produit multiple:
#reg 2 somme
#reg 0 x
#reg 1 y
somme={ @x + @y = }
x,y+{ $1000 } |
|
Remplacer des adressages indirects dans des zones non clairement définies...
4 STO 00
9 STO 05
RC* 00 x%t
RC* 05
INV x=t 022
OP 35
DSZ 00 006
R/S
... |
|  | ...par une notation sous forme de tableau!
#ARRAY tab_1 1 4
#ARRAY tab_2 6 9
#reg 00 I
#reg 05 J
I={ TOP tab_1 }
J={ TOP tab_2 }
FOR I
@tab_1(I) x%t
@tab_2(J)
WHILE(x=t) difference
DEC J
WEND
R/S
difference: ... |
|
Remplacer les codes et opérations d'impression...
6413351713
OP 04
1 0 x² * Pi =
OP 06 |
|  | ...par du texte et des ordres clairs!
"=area line>>
$10 x² * Pi =
MixLine ; this prints
; 314,1592654 =area |
|
TI Compiler génère le listing complet pour programmer votre calculatrice...
000 76 LBL
001 10 E'
002 43 RCL
003 12 12
004 85 +
005 89 Pi
006 95 =
007 45 y^x
008 05 5
009 95 =
010 22 INV
011 59 Int
012 42 STO
013 12 12
... |
|  | ... mais aussi le fichier directement utilisable sous l'émulateur TI-59.EXE pour un test rapide et une mise au point immédiate. (Ce fichier s'appelle TIEMUL.T59 par défaut, nom réglable avec la commande #EMULATOR) |
Lien avec l'émulateur sur Pocket PC
TI59ce est un second émulateur géré par TI Compiler. Il tourne sur Pocket PC et SmartPhone et est toujours supporté par son auteur Alain Zanchetta.Le précédent émulateur souffre de quelques rares bugs mais qui ne seront jamais corrigés... Essayez par exemple ceci avec TI-59.EXE:
8888888888 2nd INT On devrait logiquement obtenir 8888888888 Mais il renvoie 298954296.0 Ce bug n'existe pas dans TI59ce qui est donc recommandée d'autant que son auteur est toujours actif.
Sous Windows XP, j'utilise l'émulateur de PocketPC "Device Emulator" fourni par Microsoft pour faire tourner cet émulateur de TI59... (Pour l'installationde Device Emulator, contactez moi!). |  | Le fichier généré s'appelle TIPPC.TI par défaut (réglable avec la commande #POCKETPC) et est chargeable par l'émulateur par INV 2ND WRITE:
 |
 |  | Le tout nouvel émulateur d'Alain Zanchetta pour Windows.
Basé sur son travail pour le PocketPC, voici son adaptation sur PC. Le format des des nombres a été entièrement remanié pour s'adapter à la précision de 13 chiffres décimaux afin d'émuler au mieux le comportement de la calculatrice.
Cet emulateur est doublé d'un debugger avec visualisation des registres et gestion de points d'arrêts!
Remarquable travail que vous pouvez télécharger ici.
Le fichier généré par TI Compiler s'appelle TIWIN.TI par défaut (réglable avec la commande #AZEMULATOR) et est chargeable par l'émulateur par INV 2ND WRITE. |
Titre | Genre | Bon exemple pour... | Description |
ALEATEST | Maths | . | Permet de tester votre générateur aléatoire, répartition dans 10 tranches, moyenne, écart type. Ci-contre, le résultat pour le générateur x'=frac(1/x). Mal équilibré, les premières tranches (de 0,0 à 0,4) sont chargées et les dernières (de 0,5 à 0,9) peut atteintes. |  | |
MASTMIND  | Jeu de réflexion | #ARRAY, #MACRO | Jeu de Master Mind, combinaison de 4 chiffres de 1 à 7 avec répétitions. Un classique. Ci-contre une partie avec la version imprimante. |  | |
INTEGDBL | Maths | . | Calcul d'intégrales doubles. |
GAUSS_5 | Maths | #DATA | Calcul d'intégrales avec la méthode de Gauss à 5 points, très efficace! |
NEWTON | Maths | . | Résout les équations du type f(x)=0. |
SYSNOLIN | Maths | #ORG | Résout les systèmes d'équations non linéaires du type ( f(x,y)=0 ( g(x,y)=0 |
FRACTION | Maths | . | Calculateur RPN pour fractions, simplifications, PGCD, PPCM, approximation d'un réel. |
STATS | Maths | #PGM, #ARRAY | Regression a deux variables jusqu'à Y=a.F(x,t)+b avec optimisation de t. |
SOLEIL | Astronomie | . | heure du lever, coucher du soleil, passage au méridien, durée du jour, phases de la Lune à toute date et de tout lieu sur Terre. Ci-contre, état de la lune le 10 sept 2009. Signe "-" donc lune décroissante, éclairée à gauche à 60% (partie 333333) et sombre à droite à 40% (partie décimale 1111). |  | |
MAXIMUM | Maths | . | Cherche le maximum (ou minimum) local d'une fonction. |
Grandes Sommes | Maths | . | Optimise la somme d'un grand nombre de termes (à tester, efficacité relative...) |
EARTHDIST | Géographie | . | Distances sur Terre (ou autre sphère), distance en ligne, décalage horaire. |
Bataille de Chars | Jeu de stratégie | VAL | Combat contre la calculatrice, détruisez son char avant qu'elle ne vous détruise! |
LASER  | Jeu de réflexion | #ARRAY, SELECT, #ASK, printing | Devinez la position des mirroirs dans la grille à l'aide de votre laser! |