1

Comment faut-il que je m'y prenne pour afficher une chaine de caractère? je suppose trè fortement qu'il faille que j'utilise "drawstrxy", mais je ne sais pas comment. (apré l'affichage des sprites en nivo de gri, je passe au menu)
avatar
"Je respecte profondément Iggy Pop et Neil Young pour le fait qu'ils n'ont jamais cédé aux compromis et que leur musique a toujours été sauvage. Tout cela n'a rien à voir avec ces Guns N' Roses et autres Metallica qui devraient tous êtres pendus par les couilles, voire castrés... En fait, on devrait leur injecter du silicone dans la poitrine et les envoyer dans un bordel nippon tenu par la mafia locale."

-Kurt Cobain-
(1967-1994)

J'avais une vie... maintenant, j'ai une TI-89.

2

avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

3

tu le veux vraiment celui-là pas vrai?
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

4

gringrin
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

5

Je te remerci de ton aide Kevin, mais je ne travaille pas en nostub, et je ne croi pa que je m'y mette un jour, dsl.
Bon, sinon g trouvé comment fre affiché une chaine de caractère, j'utilise WriteStr d0,d1,#1,texte où d0 et d1 sont les coordonné, texte, le texte a ecrire, et #1 sert a je c pa koi. Seulement ce qui m'intérésserai, c d'afficher la premièere chaine de caractère de a2, puis d'afficher la suivante en incrémentant le pointeur du texte. Je c pa si g été assez clair. Je ft un petit schema:

menu:
move.w #y,d0 ;x designe l'abscisse
move.w #x,d1 ;y designe l'ordonné
lea texte(pc),a2 ;je place le texte dans a2
move.w #1,d3 ;je met 1 dans d3 pour faire 2 boucle
bsr ecrit_msg ;j'appelle le sous prog qui affiche le texte contenu dans a2 à d0+7,d1
rts

ecrit_msg:
addq.w #7,d0 ;j'ajoute 7 à d0 pour passer a la ligne suivante et ne pa ecrire 2 foi au meme endroit
lea (a2),a0 ;je li la ligne du texte sur lakelle pointe a2 et je la met ds a0
WriteStr d0,d1,#,(a0) ;j'affiche a0 à d0,d1
loop_fin_liste:
tst.b (a2)+ ;je teste si je suis a la fin de la chaine (le caractère nul) et j'avance d'un octet. Si je ne suis pa a la fin, je recommence jusqu'à y etre
bne.s loop_fin_liste
dbra d3,ecrit msg ;je decremente d3, et si d3 n'est pas encore egale à -1, j'affiche la ligne suivante
rts

texte: dc.b "1.azerty",0
dc.b "2.qwerty",0


Seulement en faisant ca, j'obtien une erreur en compilant: "undefined reference to a0. Cette erreur est apparement du a la ligne ou je l'affiche avec WriteStr. Vous avez une idée pour solutionner mon probléme svp?
avatar
"Je respecte profondément Iggy Pop et Neil Young pour le fait qu'ils n'ont jamais cédé aux compromis et que leur musique a toujours été sauvage. Tout cela n'a rien à voir avec ces Guns N' Roses et autres Metallica qui devraient tous êtres pendus par les couilles, voire castrés... En fait, on devrait leur injecter du silicone dans la poitrine et les envoyer dans un bordel nippon tenu par la mafia locale."

-Kurt Cobain-
(1967-1994)

J'avais une vie... maintenant, j'ai une TI-89.

6

[nosmile]- Solution facile: utilise WriteStrA (lis les commentaires dans doorsos.h).
- Explication: c'est le problème typique si on utilise des macros sans comprendre ce qu'elles font.

En l'occurrence, tout ce que cette macro fait est:
- passer les paramètres sur la pile (la même chose que dans mon tutorial, paragraphe III.6)
- appeler doorsos:grinrawStr (ce que je fais avec move.l DrawStr*4(a5),a0 et jsr (a0) en _nostub - c'est un jsr doorsos:grinrawStr en mode kernel, qui d'ailleurs malgré les apparences prend 2 fois plus de place que mes 2 instructions)
- nettoyer la pile (la même chose que dans mon tutorial)

Seulement, la syntaxe pour passer un label en paramètre n'est pas la même que celle pour passer un registre d'adresses en paramètre, c'est pourquoi il y a 2 macros.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

7

Excuses-moi, mais je vois pas trop en koi ce que tu as dit resoud mon probléme? Et en plus je n'ai pas lu ton tutorial.
avatar
"Je respecte profondément Iggy Pop et Neil Young pour le fait qu'ils n'ont jamais cédé aux compromis et que leur musique a toujours été sauvage. Tout cela n'a rien à voir avec ces Guns N' Roses et autres Metallica qui devraient tous êtres pendus par les couilles, voire castrés... En fait, on devrait leur injecter du silicone dans la poitrine et les envoyer dans un bordel nippon tenu par la mafia locale."

-Kurt Cobain-
(1967-1994)

J'avais une vie... maintenant, j'ai une TI-89.

8

Ûne chtite faute de frappe, je pense
tu as mis '#' au lieu de '#1' en appelant ta macro
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

9

Oui, c une faute de frappe, en ft c "WriteStr d0,d1,#1,(a0)"
j'avai oublié le 1. Mais g pa ft l'erreur sur le code. Donc le probléme est tjs présent.
avatar
"Je respecte profondément Iggy Pop et Neil Young pour le fait qu'ils n'ont jamais cédé aux compromis et que leur musique a toujours été sauvage. Tout cela n'a rien à voir avec ces Guns N' Roses et autres Metallica qui devraient tous êtres pendus par les couilles, voire castrés... En fait, on devrait leur injecter du silicone dans la poitrine et les envoyer dans un bordel nippon tenu par la mafia locale."

-Kurt Cobain-
(1967-1994)

J'avais une vie... maintenant, j'ai une TI-89.

10

[nosmile]
EagleLIONHEART
a écrit : Excuses-moi, mais je vois pas trop en koi ce que tu as dit resoud mon probléme? Et en plus je n'ai pas lu ton tutorial.

1. Lis les sources de doorsos.h (répertoire Include/ASM de TIGCC) comme je t'ai demandé. Ça te permettrait de voir ce qu'est WriteStrA et pourquoi il faut utiliser WriteStrA plutôt que WriteStr ici.
2. Lis la deuxième source du paragraphe III.6 de mon tutorial. Pas la peine de lire tout le reste pour comprendre mon message. Comme tu m'as l'air extrèmement paresseux, je mets la source en question ici:
 include "OS.h"
 xdef _nostub
 xdef _ti89
 xdef _ti92plus
 ;Aucun registre ne doit être sauvegardé ici.
 move.w #4,-(a7) ;passe l'attribut A_REPLACE en argument
 pea.l hello_world(PC) ;passe le message à afficher en argument
 clr.l -(a7) ;passe x=0 et y=0 en argument (On efface 4 octets, dont 2 pour x et 2 pour y.)
 move.l $c8,a0
 move.l DrawStr*4(a0),a0
 jsr (a0) ;appelle DrawStr
 lea.l 10(a7),a7 ;nettoie la pile
 rts
hello_world: dc.b 'Hello, World!',0

Voilà comment on appelle DrawStr, indépendamment du mode (_nostub ou kernel). Mais en mode kernel, tu voudras probablement remplacer les 3 lignes qui appellent DrawStr par jsr doorsos:grinrawStr. Le reste ne change pas.
3. Maintenant, relis bien mon message n°5 et réfléchis, et tu comprendras ce que j'ai dit dans ce message.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

11

Ok, excuse moi, g compris mntnt top
effectivement mntnt ca fonctionne, merci. Enfin presque...j'arrive a compiler, mais qd j'execute, y'a rien que la premiere ligne qui s'affiche, la seconde n'apparai pa.
avatar
"Je respecte profondément Iggy Pop et Neil Young pour le fait qu'ils n'ont jamais cédé aux compromis et que leur musique a toujours été sauvage. Tout cela n'a rien à voir avec ces Guns N' Roses et autres Metallica qui devraient tous êtres pendus par les couilles, voire castrés... En fait, on devrait leur injecter du silicone dans la poitrine et les envoyer dans un bordel nippon tenu par la mafia locale."

-Kurt Cobain-
(1967-1994)

J'avais une vie... maintenant, j'ai une TI-89.

12

Alors, n'y a t'il persone qui pourrait m'aider? parce que je commence a devenir triso
avatar
"Je respecte profondément Iggy Pop et Neil Young pour le fait qu'ils n'ont jamais cédé aux compromis et que leur musique a toujours été sauvage. Tout cela n'a rien à voir avec ces Guns N' Roses et autres Metallica qui devraient tous êtres pendus par les couilles, voire castrés... En fait, on devrait leur injecter du silicone dans la poitrine et les envoyer dans un bordel nippon tenu par la mafia locale."

-Kurt Cobain-
(1967-1994)

J'avais une vie... maintenant, j'ai une TI-89.

13

-

14

S'il veut faire un menu, les coordonnées varient, de même que le texte.

Tu arrives à afficher ton premier texte?
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

15

oui, juste le premier, mais pas la suite.
Je suis en train de pemcher sur une modification de mon algo. Je vous tiens au courant. black
avatar
"Je respecte profondément Iggy Pop et Neil Young pour le fait qu'ils n'ont jamais cédé aux compromis et que leur musique a toujours été sauvage. Tout cela n'a rien à voir avec ces Guns N' Roses et autres Metallica qui devraient tous êtres pendus par les couilles, voire castrés... En fait, on devrait leur injecter du silicone dans la poitrine et les envoyer dans un bordel nippon tenu par la mafia locale."

-Kurt Cobain-
(1967-1994)

J'avais une vie... maintenant, j'ai une TI-89.

16

J'ai finalement fini par trouvé. En fait le prog change une des coordoné, donc g du faire deux trois petites modif (en ft g rajouté du code). Bonne lecture, en espérant qu'il pourra servir a certains d'entre vous.
menu_principal:   SetFont #0   lea texte(pc),a2 ;a2 pointe sur le texte   move.w #y,d4  ;y designe l'ordonné   move.w #4,d5  ;x designe l'abscisse   move.w #3,d3  ;je met 2 dans d3 pour faire 3 boucles   bsr ecrit_msg    ;j'appelle le sous prog qui affiche le texte   rts ecrit_msg:          move.w d5,d0     ;je copie d5 ds d0 (d5 sert de sauvegarde)          move.w d4,d1     ;je copie d4 ds d1 (d4 sert de sauvegarde)          add.w #7,d4     ;j'incrémente d4 de 7 pour passer à la ligne du dessous          lea (a2),a3       ;a3 pointe sur une chaine de caractère          WriteStrA d0,d1,#1,a3   ;j'affiche le texte pointé par a3 à d0,d1 loop_fin_liste:          tst.b    (a2)+  ;je teste si je suis a la fin de la chaine (le caractère nul) et j'avance d'un octet. Si je ne suis pa a la fin, je recommence jusqu'à y etre          bne.s    loop_fin_str          dbra     d3,ecrit_msg je passe a la nouvelle chaine de caractère          rts texte     dc.b "XXX",0      dc.b "YYY",0      dc.b "ZZZ",0

J'espère ne pas avoir fait d'erreur de frappe. En tout cas chez moi ca fonctionne a merveille, c exactement ce que je voulais. Un grand merci a tous.
Si jamais y'en a un de vous qui vois une optimisation possible en KERNEL, qu'il me previenne je suis preneur.
avatar
"Je respecte profondément Iggy Pop et Neil Young pour le fait qu'ils n'ont jamais cédé aux compromis et que leur musique a toujours été sauvage. Tout cela n'a rien à voir avec ces Guns N' Roses et autres Metallica qui devraient tous êtres pendus par les couilles, voire castrés... En fait, on devrait leur injecter du silicone dans la poitrine et les envoyer dans un bordel nippon tenu par la mafia locale."

-Kurt Cobain-
(1967-1994)

J'avais une vie... maintenant, j'ai une TI-89.

17

Tu peux utiliser moveq au lieu de move.w

18

C'est valable pour tt mes move.w?
avatar
"Je respecte profondément Iggy Pop et Neil Young pour le fait qu'ils n'ont jamais cédé aux compromis et que leur musique a toujours été sauvage. Tout cela n'a rien à voir avec ces Guns N' Roses et autres Metallica qui devraient tous êtres pendus par les couilles, voire castrés... En fait, on devrait leur injecter du silicone dans la poitrine et les envoyer dans un bordel nippon tenu par la mafia locale."

-Kurt Cobain-
(1967-1994)

J'avais une vie... maintenant, j'ai une TI-89.

19

j'ai failli poster hier pour te dire de faire gaffe: les ROM_CALL (que tu utilise, mais elles sont cachées dans la macro) détruisent a priori quelques registres, le plus souvent a0-a2 et quelques dn.
9a doit être ça qui changeait
ensuite moveq marche avec les registres dn et pour un nombre entre -127 et 127 (arrêtez moi si je me trompe) et affecte le registre en entier (c'est en fait moveq.l)
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

20

attention
- Il n'y a pas d'autres registres détruits que d0/d1/d2/a0/a1
- Les limites sur 8 bits sont -128 -> +127
attention
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.