Salut, Je suis en train d'essayer la Flib, et surtout sa fonction sprite pour charger les pics. Mais le problème est que je n'arrive pas à utiliser des variables pour positionner un sprite. Ça ne veut marcher que quand je mets directement le nombre dans la fonction. Du coup, je peux pas me servir de boucles et autres joyeusetés pour placer des sprites. Une solution pour ça? Merci. Programmeur sur TI82, et bientôt sur 89! |
yen avait une, t'as lu la doc ? je me demande s'il faut pas mettre un espace avant la variable. Sinon, c'est que ta version de flib est vraiment vieille, rprends la dernière. Et mieux que flib à mon goût, essaye vertel "MSVC, le soft qui arrive à générer des problèmes à partir de solutions" © |
Si je me souviens bien, Flib est une horreur en ce qui concerne le passage de variables en paramètres. On doit donc passer une chaîne de caractères complète que flib interprètera. Pour passer une variable, il faut donc passer par la concaténation de chaînes et écrire flib("blabla"&string(var)&","&string(var2)&"blublu...") « Very est aux choses intellectuelles ce que le jacky est aux voitures de sport. » - The_CUrE |
Comme Folco l'a dit, tu peux mettre un espace devant la variable mais tu peux pas faire d'expression. I.e. flib("drawstr:0, a,Test") marche mais
flib("drawstr:0, a+1,Test") ne marche pas (je crois)
flib("drawstr:0," & string(a+1) & ",Test") est la seule solution dans ce cas "La vie est un grand terrain de jeu. On le sait quand on est enfant mais on l’oublie en grandissant." |
YN -> ça avait sauté avec le temps cette contrainte, l'espace avant les variables avait été introduit je ne sais plus quand. Quand au a+1, marrant, je pensais que ça marchait. Toute façon suffit d'essayer. "MSVC, le soft qui arrive à générer des problèmes à partir de solutions" © |
De toute façon il faut éviter les variables avec flib, mieux vaut les convertir en chaîne (via string()) et les fournir directement, sinon c'est assez nettement plus lent, alors les expressions j'imagine même pas... Le modèle de vertel, même s'il est moins évident, est nettement plus pratique à l'usage. "La vie est un grand terrain de jeu. On le sait quand on est enfant mais on l’oublie en grandissant." |
Ben, vertel est aussi simple à mon sens "MSVC, le soft qui arrive à générer des problèmes à partir de solutions" © |
Dans la doc justement ça n'en parlait pas. En tout cas, c'était bien l'espace avant la variable qui manquait. Programmeur sur TI82, et bientôt sur 89! |
Folco (./6) : Oué bon toi c'est spécial En fait vu que t'aimes l'asm tu aurais kiffé la lib que j'avais fait à un moment. Le truc plus haut aurait été fait comme ça: lib("nA = #a
nA+
DrawStr 0, nA, Test")
ou alors:
lib("DrawStr 0, n\, Test", a+1) "La vie est un grand terrain de jeu. On le sait quand on est enfant mais on l’oublie en grandissant." |
Folco (./6) : J'ai tenté vertel, j'ai jeté flib. D'ailleurs y a un bug avec vertel, au niveau de "list" ^^
vertel("list",VAR_DOSSIER,1);
Provoque un joli crash ^^ *sifflote* !call Zephyr --- Call : Zephyr appelé(e) sur ce topic ... |
tu utilises la dernière version ? je l'ai recompilée y'a pas longtemps, le souci c'est que le code est immonde et date de 2003... du coup non seulement les choses ont peut-être changé depuis le temps, mais surtout j'ai absolument aucune motivation pour y jeter un oeil (et accessoirement j'ai vendu ma Ti89 il y a des années ^^) |
Vertel est mieux alors? J'y jetterais un coup d'œil. Programmeur sur TI82, et bientôt sur 89! |
Zephyr (./10) : Je crois bien, j't'avais signalé le bud de débug Ca sort toujours une liste contenant rien que des "", et il y en a autant que de fichiers dans le dossier. Pour l'instant je fais une boucle pour tricher mais c'est assez long avec 114 fichiers ^^ |
j'essaierai de penser à regarder ça ce soir, mais sans Ti je suis limité à VTI (je n'installerai pas TiEmu), je sais pas si ça va permettre grand-chose... |
Bon ben comme je le craignais : sur VTI ça passe sans problème avec la version du post ./10 (et AMS 2.09), donc je vais avoir du mal à comprendre d'où ça vient. Tu utilises quel AMS ? |
Ben le dernier AMS 3.10, HW4 :s J'utilise la version de débug, ça peut être ça aussi :s |
ça serait curieux que ça vienne de la version debug, mais tu as essayé la version normale à tout hasard, voir si ça marche mieux ? question subsidiaire, est-ce qu'AMS 3.10 fonctionne avec VTI ? si oui j'essaierai de trouver la rom quelque part. |
Zephyr (./16) : Non, et j'ai pas trop le temps là, mais j'le fais dès que possible |
Il faudra que tu te résignes à utiliser TiEmu ou Emu-TIGCC pour tester sous AMS 3.10, un émulateur de 2001 ne peut pas tout faire. |
bah non, il faudrait que j'installe GTK puisqu'il n'est pas compilé en statique : hors de question. |
Tu parles comme si GTK+ était quelque chose de mortel. |
Non, c'est juste une dépendance de merde qui n'atterrira jamais sur mon ordinateur ; les programmes qui l'utilisent sont donc bannis, à moins d'être compilé en statique (auquel cas je suis *sûr* que ça n'installe pas de la merde ailleurs que là où j'ai mis le programme que je voulais installer). Mais c'est un troll évoqué 150 fois, pas la peine de continuer cette discussion stérile. |
Bon je profite de mon topic pour poser une autre question sur flib: Quand le programme plante (ou qu'on le quitte avec esc), il arrive parfois que le fichier ASM flib ne soit plus accessible... Il disparait de la mémoire dans var-link, et quand on essaye de l'utiliser, ça indique que c'est justement en cous d'utilisation, enfin dans TI Connect, on peut le voir, mais verrouillé, et impossible à supprimer... Du coup, à part reset la calculette (et utiliser des backups), j'ai pas trouvé d'autre solution... donc si vous en avez une, merci de me l'indiquer Programmeur sur TI82, et bientôt sur 89! |
Erf... le programme flib est quitté en cours, il doit être marqué in use. Je ne sais pas si par exemple, PreOS rétablit correctement un fichier nostub en sortie, à voir. Sinon, t'as pas des masses de solutions hein... "MSVC, le soft qui arrive à générer des problèmes à partir de solutions" © |
Bon j'ai trouvé un moyen un peu long, mais bon. Je back up la mémoire, je vire flib du fichier créé, je reset la calculette, je restore, et je remet flib. Faut que j'essaye vertel, pour voir si c'est pas mieux ^^ Programmeur sur TI82, et bientôt sur 89! |
En fait si tu fais un test de byte Flib apparaîtrat caché. Donc suffit de le décacher avec flib2: flib2("unhide:main/flib") de mémoire. Par contre si Flib2 est lui-même quitté in use, faut utiliser un petit fichier C, et j'en suis incapable (de le faire ... for now) ^^ |
L'idée c'est ça : bclr.b #flag_inuse,(SymFindPtr( SYMSTR( "main,flib2" )).Flags "MSVC, le soft qui arrive à générer des problèmes à partir de solutions" © |
En ASM, of course Tant que j'y suis comment on exécute de l'ASM dans un fichier C ? |
FireHunter (./26) : Jusqu'ici, flib2 était toujours présent, seul flib était caché. Merci du tuyau! Programmeur sur TI82, et bientôt sur 89! |