30

wep wep faudrait évidemment rassembler le plus possible pour que ça ressemble à qqch. Deeph si t'es motivé essaye de regarder du coté de ti-bak voir si yaurait moyen de les associer ?
«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

31

zContest n'a jamais été yaronet-only, c'est ouvert à tout le monde hein.

Maintenant en ce qui concerne la "pub", bien-sûr qu'il faut en faire un peu partout. Pour tibank je vois pas comment les associer encore plus qu'en leur proposant une news...

Sinon j'ai pas trop le temps en ce moment pour recoder le site, mais ce week-end normalement c'est bon smile

32

(comme a dit deeph : vous voulez pas qu'on crée un autre topic pour parler du zcontest... roll )

33

Je suis agréablement surpris par tous ces nouveaux élans de motivation smile
Je pensais franchement qu'avec l'arrivée des smart-phones, optimisés pour jouer en cours grin, le jeu sur TI et par extension la prog ne pouvaient aller qu'en baissant.
Quant à moi, j'ai quelques débuts de projets en stocks, mais je ne suis malheureusement pas certain de trouver le temps pour les reprendre...
<-- et à votre gauche une superbe peinture pointilliste du XVIe siècle #sisi# représentant - vous l'aurez deviné - une banane ...
http://www.ti83plus.online.fr/home.php...

34

Je pensais franchement qu'avec l'arrivée des smart-phones, optimisés pour jouer en cours grin , le jeu sur TI et par extension la prog ne pouvaient aller qu'en baissant.

Le z80 est quand même un assembleur très facile et très agréable.

Une TI est un bête plutôt intéressante à bidouiller car très simple, assez "basique". Les smartphones apportent avec les performances beaucoup de complexité.
Mais je pourrais très bien m'amuser avec mon iphone ( le très célèbre Joe Wingbermuele a bien fait un jeu iphone ^^) ou coder pour android.
Je connais l'assembleur ARM aussi par exemple, même s'il est largement optimisé, c'est quand même plus difficile à manipuler je trouve.
Décortiquer les entrailles de la memoire, du système lui même, des possibilités cachées qu'il permet... Franchement pourquoi allez chercher plus loin qu'une TI.
Et de plus, les ti83+, 82stats et d'autres restent un produit très largement possédé.

Puis y a aussi le côté "old school" du truc grin
Et aussi le fait de faire ça pour une machine qui n'est pas forcement destinée à ça, pas de gros sdk officiel etc... Disons que c'est toujours gratifiant de détourner l'objet...
Quant à moi, j'ai quelques débuts de projets en stocks, mais je ne suis malheureusement pas certain de trouver le temps pour les reprendre...

Un petit lien pour regarder ?

35

Pour la prog en elle même les TI restent assez optimisées oui, mais la différence est qu'il n'y a plus grand monde pour jouer au jeux créés...

Pour ce qui est des projets, je ne les ai jamais mis en ligne. Je préférais ne poster que ceux vraiment aboutis (cf zContest 2007 et 2008), du coup je dois juste les avoir dans une vieille archive qui n'a pas vu la lumière du jour depuis un bail tongue
<-- et à votre gauche une superbe peinture pointilliste du XVIe siècle #sisi# représentant - vous l'aurez deviné - une banane ...
http://www.ti83plus.online.fr/home.php...

36

Effectivement j'ai aussi l'impression qu'il n'y a pas beaucoup de monde pour jouer aux jeux, pourtant je vois encore toutes les personnes autour de moi ont une TI avec plein de jeux (mario, phoenix etc...)

Bref, coder asm pour TI relève plus du défi personnel et d'une passion que de la recherche de gloire, mais ça ça ne change pas grand chose par rapport à avant je pense lol.

Tes projets sont vraiment très aboutis, j'espère que tu traineras un peu par ici...Ton expérience vaut de l'or pour moi smile

37

Concernant les nouveautés bien fraiches de tilem:

- Nouvelle barre de progression pour le chargement des fichiers
- Nouvelle procedure avec thread pour le chargement de fichiers
- Ajout d'une fenetre pour sauver les macros. Pareil pour les screenshot.
- La gestion des raccourcis clavier est en cours (stocké dans un fichier externe).
- Gestion des arguments de la ligne de commande améliorée.
- Sauvegarde des "plus recent repertoire ouvert" (dépend si c'est macro, skin, fichier etc...)

En ce qui concerne les travaux en cours :

- Benjamin travaille sur le lancement automatique des programmes au chargement (si le fichier est pour ti83, on charge la rom ti83 et on execute le programme avec ou sans shell)
- Je vais devoir finir le debugger
- Je suis en train de faire du "refactoring" cad améliorer le code sans ajouter de fonctionnalité.


Thibault

38

Je viens de tomber sur un bug gênant : après avoir fait "hide skin", on ne peut pas simplement la réactiver, il faut ouvrir un fichier de skin, mais je ne pense pas en avoir sur mon disque dur. Ou alors j'ai manqué quelque chose ?

39

Ah ?? Bizarre je teste ce soir il
me semble que ça marchait ...

Mais sinon tu as les skins par défaut que j'ai fait moi-même tongue (83 83+ 76 82 81 et d'autres encore) elles sont dans data/skn ou quelque chose comme ça.

40

Ok j'ai trouvé les skins.

Il y a un bug quand on charge une skin après avoir bougé la taille de l'affichage : la skin est re-proportionnée pour tenir dans la taille de la fenêtre existante ! cf http://i.imgur.com/qWNDN.png C'est après avoir redimensionné la fenetre en pressant la touche shift, ce qui semble garder le ratio.

Autre bug : si on envoie un fichier à une calculette qui n'a pas assez de RAM libre, aucune erreur n'est affichée, et l'opération semble être effectuée (certes trop rapidement pour être normale).

Autre bug : quand on resette la calculette, l'affichage devient gris (pas très gênant mais bizarre).

41

1) Au lancement la fenêtre prend la taille qu'il y avait quand tu quittes, je ne
comprends pas c'est vraiment bizarre o_O

2) Tu veux un message d'erreur si le tranfert foire c'est ça ??

3) L'affichage reste gris tout le temps ou juste une seconde après le
reset? Ça se change avec le contraste de la calc ou non ?

42

1) Oui, et le pire c'est que maintenant je ne peux plus activer de skin sans avoir ce ratio bizarre.
2) Oui.
3) Il reste gris tout le temps, mais on peut changer le contraste manuellement effectivement.

43

1) solution temporaire : tu peux corriger
ça dans le fichier ~/.config/config.ini en virant les lignes dans [général] height width ou quelque chose comme ça.
C'est ça qui sert a forcer l'affichage au démarrage.

2) ok reste a couvrir tous les cas d'échec et donc les détecter

3) ok bizarre ça. C'est plutôt cote émulation que ça foire je pense ...

Et au fait encore merci pour le feedback merci merci wink

44

J'utilise tilem depuis quelques jours et il est marveilleux ! Mais j'ai quelques demandes:
1. Pour le débuggeur, "pause" est quelle touche ?
2. Est-il possible de parcourir le mémoire instruction par instruction (au lieu d'octet par octet) ? Je crois que tout avance bien quand on va en bas, mais aller en haut est un peu lourd.
3. Serait-il possible aussi d'avoir la valeur en hexe à côté du code asm ?
4. Y a-t-il un shortcut pour placer un breakpoint ?
5. J'ai une idée pour les breakpoints, un type de "arrêt conditionnel", arrêter quand un (ou des) registre(s) valent X ou quand certains drapeaux sont établis (ce serait util pour débugger les boucles).
6. Je crois qu'il s'agit d'un conflit avec quelque chose sur mon ordinateur, mais je ne peut pas combiner Ctrl avec d'autres touches.

Maintenant programmer est plus facile que jamais, merci beaucoup ! J'ai avancé beaucoup dans mes projets smile

45

Merci merci grin
1. Pour le débuggeur, "pause" est quelle touche ?

Escape
2. Est-il possible de parcourir le mémoire instruction par instruction (au lieu d'octet par octet) ? Je crois que tout avance bien quand on va en bas, mais aller en haut est un peu lourd.

N'est-ce pas ce que fait déjà la fenêtre de desassemblage?
En allant vers le haut tout se passe normalement chez moi...
3. Serait-il possible aussi d'avoir la valeur en hexe à côté du code asm ?

Possible bien sur il est plus facile d'afficher sa valeur que de desassembler, mais... pourquoi faire?
4. Y a-t-il un shortcut pour placer un breakpoint ?

Tu parles bien du "breakpoint here" et non du menu breakpoint (accessible par ctrl + b).
Oui c'est une bonne idée, je garde ça sous le coude smile
Mais il y a au moins le click droit puis b qui fait un peu l'affaire.
5. J'ai une idée pour les breakpoints, un type de "arrêt conditionnel", arrêter quand un (ou des) registre(s) valent X ou quand certains drapeaux sont établis (ce serait util pour débugger les boucles).

Il faut que j'en discute avec Benjamin, c'est lui qui s'est occupé de cette version du debugger.
6. Je crois qu'il s'agit d'un conflit avec quelque chose sur mon ordinateur, mais je ne peut pas combiner Ctrl avec d'autres touches.

Arf oui ça vient de chez toi je pense.

Merci pour ce feedback, tilem est vraiment destiné à simplifier la vie des programmeurs, et je suis content de savoir qu'il te plait.

46

2. Est-il possible de parcourir le mémoire instruction par instruction (au lieu d'octet par octet) ? Je crois que tout avance bien quand on va en bas, mais aller en haut est un peu lourd.

N'est-ce pas ce que fait déjà la fenêtre de desassemblage? En allant vers le haut tout se passe normalement chez moi...
Ici, quand je vais vers le haut les instructions d'un octet s'affichent bien, mais celles de deux/trois octets s'affiche octet par octet. Par exemple, "ld b,8" affiche d'abord "ex af,af'" puis quand je pousse Up de nouveau le "ex af,af'" devient "ld b,$08".
3. Serait-il possible aussi d'avoir la valeur en hexe à côté du code asm ?
Possible bien sur il est plus facile d'afficher sa valeur que de desassembler, mais... pourquoi faire?
1. Pour savoir les valeurs hexas des instructions grin
2. Pour pouvoir changer leurs valeurs
3. J'ai oublié les autres raisons :/
4. Y a-t-il un shortcut pour placer un breakpoint ?

Tu parles bien du "breakpoint here" et non du menu breakpoint (accessible par ctrl + b).
Oui c'est une bonne idée, je garde ça sous le coude smile Mais il y a au moins le click droit puis b qui fait un peu l'affaire.
Ce serait très convenient smile En PindurTI on pouvait les mettre avec F2 et en WabbitEmu je crois que c'est Ctrl+B, je n'aime pas utiliser la souris :P
6. Je crois qu'il s'agit d'un conflit avec quelque chose sur mon ordinateur, mais je ne peut pas combiner Ctrl avec d'autres touches.
Arf oui ça vient de chez toi je pense.
J'ai parfois aussi des problèmes avec Shift+d'autres touches, je pensais que c'était mon code la cause du problème, mais il fonctionne bien sur PindurTI.

Une autre chose que je voudrais pouvoir faire: sauter l'instruction actuelle ! (ne l'exécuter pas), très util pour débugger smile

Merci de nouveau pour l'émulateur grin

47

Ici, quand je vais vers le haut les instructions d'un octet s'affichent bien, mais celles de deux/trois octets s'affiche octet par octet. Par exemple, "ld b,8" affiche d'abord "ex af,af'" puis quand je pousse Up de nouveau le "ex af,af'" devient "ld b,$08".


Je ne sais pas pourquoi ça fait ça.
3. Serait-il possible aussi d'avoir la valeur en hexe à côté du code asm ?


Je vais demander à Benjamin s'il veut qu'on ajoute ça ou pas.
Ce serait très convenient smile En PindurTI on pouvait les mettre avec F2 et en WabbitEmu je crois que c'est Ctrl+B, je n'aime pas utiliser la souris :P


Maintenant tu peux le faire avec F2 smile
Une autre chose que je voudrais pouvoir faire: sauter l'instruction actuelle ! (ne l'exécuter pas), très util pour débugger


Step over ne fait pas déjà ça ? (F8)

Merci encore pour ton feedbak smile

48

MERCI !!! C'est super !

Je n'ai pas de "Step over", seulement celui d'éxécuter l'instruction actuelle. Quand j'appuye sur F8, la prochaine instruction s'exécute. Je voudrais pouvoir sauter cette instruction (ne rien faire, seulement augmenter le pc, changer sa valeur à l'addresse de la prochaine instruction). Maintenant je le fais manuelment. Une autre chose utile serait d'avoir une touche pour mettre l'addresse de la ligne soulignée dans le pc (Current Address to PC). Ah, et pouvoir aller à une addresse quelconque (Go to Address) dans la section en bas (la table de valeurs hexa qu'on peut modifier). Merci beaucoup pour ajouter cette nouvelle touche ! Je suppose que je suis devenu très paresseux.

Et avez-vous parlé des breakpoints conditionnels ? grin

49

Et avez-vous parlé des breakpoints conditionnels ?


Oui c'est ici dans les feature request :
http://tilem.svn.sourceforge.net/viewvc/tilem/trunk/features_request?revision=613&view=markup
grin

50

Merci smile

51

Bravo pour la news sur ticalc smile

Y'a pas un article parlant d'émulation de TI dans un magazine sortit récemment ? Si oui tu as pu voir s'ils citent TilEm2 ?

52

Merci pour les 2 infos, je n'avais pas vu.

L'article sur Linux Pratique Essentiel HS 1 parle de TilEm mais pas de TilEm2. Mais bon c'est deja bien smile

53

Je crois qu'il serait peut-être util de pouvoir arrêter l'éxécution du programme jusqu'avant qu'il sorte du code éxécutable (c'est-à-dire, avant de se planter wink).

54

Détecter si le program counter saute à 0000 (ou autre zone bizarre) c'est un test facile.

Ou mieux, dans ce cas pouvoir faire du débugging à l'envers. GDB sait le faire. C'est sans doute compliqué à implémenter (et couteux en mémoire?) mais possible.

D'ailleurs j'ai un émulateur NES sur ma Nintendo DS qui permet de revenir en arrière à l'aide d'une touche.

55

J'ai encore quelques suggestions grin
1. Peut-on utiliser du "silent linking" pour transmiter les fichiers ? Ou bien changer temporairement la vitesse de la calto au max pendant le transfer ? PindurTI faisait le transfer très rapide, je crois que CoBB avait mencionné que c'était à cause du "silent linking" mais à vrais dire je ne sais pas ce que ça veut dire :P
2. Ou au moins je voudrait avoir une touche (ou combination de touches) pour changer la vitesse de la calculatrice (au lieu d'ouvrir le menu avec le souris) parce que, oui, je suis tellement paresseux !
3. Dans le debuggeur, serait-il possible de créer un shortcut pour sauter à une addresse ? Si je me trompe pas, WabbitEmu utilise Ctrl+G et je crois que c'est assez convenient smile
4. Il serait très très très utile de pouvoir voir une section de la mémoire comme un LCD, par exemple pour visualiser des sprites ou même un buffer entier (comme le gbuf)
5. Et encore une fois, je voudrais que l'éxécution du programme s'arrête quand on sort des valeurs normale ($9D95-$C000), je le fais manuellement pour le moment (en créant un breakpoint entre tous les valeurs de $0000-$9D95 pour la 83+) et ça m'a aidé beaucoup. grin

J'en avais plus, me je les ai oubliées ! Ah ! Et:
6. Une touche/bouton qui saute l'instruction actuelle, ça veut dire qu'on n'éxécute pas cette instruction, simplement change le pc à la prochaine instruction. Pour faire des breakpoints, j'utilise souvent "jr $". Pouvoir le sauter avec une touche (F6 ?) serait marveilleux grin Beaucoup mieux que changer le PC en y ajoutant deux.
7. Je crois que je l'ai déjà dit, mais... est-ce possible voir (et changer) les code hexas à côté des instructions? Exemple:
9D95 | C9 | ret

Merci de nouveau smile

56

Détecter si le program counter saute à 0000 (ou autre zone bizarre) c'est un test facile.


Comme un breakpoint en fait ? Il suffit de choisir une range de valeurs? Ca ne suffit pas?
Les zones bizarres dépendent parfois du modèle ca devient vite difficile à gérer ça à mon avis.
Ou mieux, dans ce cas pouvoir faire du débugging à l'envers. GDB sait le faire. C'est sans doute compliqué à implémenter (et couteux en mémoire?) mais possible.

Oui ce serait bien mais là je crois que c'est vraiment difficile à implémenter.

1. Peut-on utiliser du "silent linking" pour transmiter les fichiers ? Ou bien changer temporairement la vitesse de la calto au max pendant le transfer ? PindurTI faisait le transfer très rapide, je crois que CoBB avait mencionné que c'était à cause du "silent linking" mais à vrais dire je ne sais pas ce que ça veut dire :P

Le silent linking est deja fait, cela ne concerne pas la vitesse mais plutôt le fait que l'on doive mettre ou non la calc en reception. Je t'épargne les détails smile
Pour la vitesse, je crois qu'on en a parlé avec benjamin, il faut que je relise les mails. C'est possible, mais y a les histoires de timeout à gerer etc...
2. Ou au moins je voudrait avoir une touche (ou combination de touches) pour changer la vitesse de la calculatrice (au lieu d'ouvrir le menu avec le souris) parce que, oui, je suis tellement paresseux !


Ok je vais voir ca.
3. Dans le debuggeur, serait-il possible de créer un shortcut pour sauter à une addresse ? Si je me trompe pas, WabbitEmu utilise Ctrl+G et je crois que c'est assez convenient


Ok je vais regarder ça aussi smile
4. Il serait très très très utile de pouvoir voir une section de la mémoire comme un LCD, par exemple pour visualiser des sprites ou même un buffer entier (comme le gbuf)

Comment ça voir? Que veux-tu exactement?
5. Et encore une fois, je voudrais que l'éxécution du programme s'arrête quand on sort des valeurs normale ($9D95-$C000), je le fais manuellement pour le moment (en créant un breakpoint entre tous les valeurs de $0000-$9D95 pour la 83+) et ça m'a aidé beaucoup.


Tiens justement j'ai cette requête aussi tongue
6. Une touche/bouton qui saute l'instruction actuelle, ça veut dire qu'on n'éxécute pas cette instruction, simplement change le pc à la prochaine instruction. Pour faire des breakpoints, j'utilise souvent "jr $". Pouvoir le sauter avec une touche (F6 ?) serait marveilleux grin Beaucoup mieux que changer le PC en y ajoutant deux.


Ok. J'utilise de plus en plus le debugger aussi et je me rends compte à quel point c'est utile. Je vais m'en occuper.
7. Je crois que je l'ai déjà dit, mais... est-ce possible voir (et changer) les code hexas à côté des instructions? Exemple: 9D95 | C9 | ret


Oui déjà noté smile

Merci chickendude pour le feedback et courage pour ton jeu boing
Merci gh aussi smile

57

Contra (./56) :
4. Il serait très très très utile de pouvoir voir une section de la mémoire comme un LCD, par exemple pour visualiser des sprites ou même un buffer entier (comme le gbuf)
Comment ça voir? Que veux-tu exactement?
Je voudrais pouvoir définir une section de code, disons que nous dessinons notre tilemap au gbuf avant de l'afficher à l'écran. Je voudrais pouvoir écrire l'addresse où il (le gbuf) commence ($9340), combien d'octets il a de largeur (12) et combien de rangs (64). Puis à son côté on verrait tout ce qu'il y avait là-dedans comme si c'était le LCD. Ou si tu as des sprites comprimés que tu extrais à saferam, tu pourrais voir si tu les décomprimes bien (et plus tard de voir si tu as remplacé une partie de ce qu'il y avait accidentellement).

PindurTI a quelque chose pareille, seulement que c'est une copie du LCD:
xFQR

Au lieu d'une copie du LCD, on pourrait peut-être y mettre une visualisation d'un buffer grin

58

Je viens de le télécharger (oui seulement maintenant scotch) parce que le débuggeur de wabbitemu me prend un peu la tête, et j'ai été agréablement surpris, on est bien loin de l'installation fastidieuse de TilEm 1 (avec les batch pour télécharger gtk+ etc...) top

C'est peut être un peu tard pour faire des requêtes ? Parce qu'il y a un truc qui me serait très utile : pouvoir ouvrir et visualiser le débuggeur (avec les instructions qui défilent donc) en même temps que l'émulateur est exécuté, mais à vitesse très réduite (1 instruction/seconde, même moins), parce que dans certains car accéder à certaines parties du code est très galère fou

Et sinon la proposition de chickendude m'intéresse aussi (pouvoir visualiser les données comme si c'était des pixels d'un sprite dont on peut spécifier les dimensions) smile

59

Oui on peut dire que TilEm2 n'a plsu grand chose de commun avec TilEm "old" !

TilEm2 est encore en développement donc les features request ne s'arrêtent pas smile

Vous verrez peut-être une surprise dans quelques mois tongue

Ca me parait pas évident à faire ce que tu demandes mais je vais en parler.
Et l'idée de chickendude devrait être fait à moyen terme, ce serai vraiment bien.

60

Une surprise ? J'ai hâte de voir happy

Tiens sinon je me demande si techniquement un portage sur android serait réalisable ?