1

Salut,
Je voudrais commencer à programmer ma calculatrice TI83+ avec l'ASM. Mais voilà le problème... Je suis présentementement ce Howto : http://nwps.ws/~dragonfire/Asmin28/lesson/day01.html#req .

Premièrement, je ne sais pas où trouver le fichier TI83PLUS.INC. J'ai recherché sur Internet et j'en ai trouvé un qui me paraissait bien http://education.ti.com/downloads/misc/ti83plus.inc . J'ai donc créé le fichier hello.z80 contenant ceci.


.nolist
#include "ti83plus.inc"
#define ProgStart $9D95
.list
.org ProgStart - 2
.db t2ByteTok, tAsmCmp
b_call(_ClrLCDFull)
ld hl, 0
ld (PenCol), hl
ld hl, msg
b_call(_PutS) ; Display the text
b_call(_NewLine)
ret

msg:
.db "Hello world!", 0
.end
.end

Lorsque je passe en compilation avec TASM.EXE -80 -i -b hello.z80 hello.bin ,

Il y a une longue liste d'erreurs finissant avec :
ti83plus.inc line 8504: unrecognized instruction. (e_ss)
ti83plus.inc line 8505: Label not found: (e_ms)
ti83plus.inc line 8505: label value misalligned. (e_ms)
ti83plus.inc line 8505: unrecognized instruction. (e_ms)
hello.z80 line 0006: Label not found: (t2ByteTok)
hello.z80 line 0006: Label not found: (tAsmCmp)
hello.z80 line 0007: unrecognized instruction. (B_CALL(_CLRLCDFULL))
hello.z80 line 0009: Label not found: (PenCol)
hello.z80 line 0009: Unused data in MS byte of argument. (2)
hello.z80 line 0011: unrecognized instruction. (B_CALL(_PUTS))
hello.z80 line 0012: unrecognized instruction. (B_CALL(_NEWLINE))
tasm: pass 2 complete.
tasm: Number of errors = 21673


Qu'est-ce que je fais de pas correct?

Merci beaucoup, ça fait 3h que j'essaie de réussir à compiler un petit Hello World smile

2

hello.z80 line 0006: Label not found: (t2ByteTok) hello.z80 line 0006: Label not found: (tAsmCmp)


Vérifie la syntaxe exacte des trucs entre parenthèses dans ti83plus.inc
hello.z80 line 0009: Label not found: (PenCol)


Même remarque, c'est pencol, pas PenCol (je crois que TASM fait la différence entre les casses).
hello.z80 line 0007: unrecognized instruction. (B_CALL(_CLRLCDFULL))


C'est plutôt bcall (_clrlcdfull). On écrit bcall en attaché, pas b_call.
ti83plus.inc line 8504: unrecognized instruction. (e_ss)
ti83plus.inc line 8505: Label not found: (e_ms)
ti83plus.inc line 8505: label value misalligned. (e_ms) ti83plus.inc line 8505: unrecognized instruction. (e_ms)


Visiblement, ton fichier ti83plus.inc est un peu merdique (mets un ; devant les deux lignes 8504 et 8505 dans ti83plus.inc et vois si ça marche).

Et surtout, n'abandonne pas, c'est difficile de commencer, mais ça vaut vraiment le coup (et puis, ça vient quand même beaucoup plus vite que l'apprentissage d'un instrument de musique...)

3

Remarque: C'est toute les lignes de mon fichier ti83plus.inc qui fait des erreurs comme ça.

Donc je crois que le problème vient de là... Mais je ne sais pas où je pourrais en trouver un meilleur.

Merci de m'aider, j'ai hâte de faire mon premier Hello World

4

Utilise dwedit.inc si tu veux, mais il nécessite un shell, il me semble... Sinon, tu es sûr que toutes les lignes merdent ? C'est quand même bizarre. T'as cherché sur ticalc.org ?

5

salut

voila j'ai le même probleme que maximead por compiler mais j'ai pas autant d'erreur


pour b_call il faut bien metre bcall a la place
mais pour le reste toujour les même erreurs

pour moi aussi j'ai des erreur a toutes les lignes de ti83plus.inc

PS: j'ai pas l'erreur avec e_ms dans ti83plus.inc
moi ca fini par(pour les erreurs de ti83plus.inc)
ti83plus.inc line 0663: label not found: <LfinanN>
ti83plus.inc line 0663: label value misalligned. <LfinanN>
ti83plus.inc line 0663: unrecognized instruction. <LfinanN>
Moi, l'elfe noir renegat

6

Vous devriez compiler avec un autre fichier d'include, comme dwedit.inc, par exemple ou, plus simple, ion.inc.

7

J'ai trouvé un autre fichier include : http://maximead.is-a-geek.com:8080/maximead/ti83/ti83plus.inc .

Hmm... C'est moi ou c'est très dur apprendre l'ASM pour ti83+? À part afficher du texte, je ne sais rien faire... Mais bon, ce n'est pas grave, il suffit que je persévere.

8

C'est très dur, au début, mais persévère, ça vaut le coup.