Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Bêta ON] Apprendre l'ASM Z80 pour TI

Dans la catégorie "Ti" par mdr1, nightmat et noelthebest

    14 décembre 2011 à 15:50:18

    Ben je sais pas, donne ton code pour voir.
    Peu-être aussi que t'oublies de mettre le ret.
    • Partager sur Facebook
    • Partager sur Twitter
      15 décembre 2011 à 19:45:20

      je te donne mon code (pas en entier : trop long, mais juste la fin) :
      LD A,E
      CP 50
      JP Z,perdu
      perdu:
      LD HL,txtfin
      LD DE,$1D28
      LD (pencol),DE
      Bcall Vputs
      Bcall getkey
      RET
      Je pense pas qu'il reste quelque chose dans le stack (mais est-ce-que ça peut faire bugger ?) et je te décris précisément (!) le truc : je lance le programme, il fait tout bien, fait la fin, affiche le texte et attend. J'appuie sur une touche, la calculette s’éteint, je la rallume et elle m'affiche RAM cleared...
      Est-ce-que tu as une idée ?
      • Partager sur Facebook
      • Partager sur Twitter
        15 décembre 2011 à 20:22:12

        A quoi sert le jp z, perdu ? De toute façon, on va au label perdu après !
        • Partager sur Facebook
        • Partager sur Twitter
          15 décembre 2011 à 20:30:59

          Citation : llclimb

          je te donne mon code (pas en entier : trop long, mais juste la fin) :
          LD A,E
          CP 50
          JP Z,perdu
          perdu:
          LD HL,txtfin
          LD DE,$1D28
          LD (pencol),DE
          Bcall Vputs
          Bcall getkey
          RET
          Je pense pas qu'il reste quelque chose dans le stack (mais est-ce-que ça peut faire bugger ?) et je te décris précisément (!) le truc : je lance le programme, il fait tout bien, fait la fin, affiche le texte et attend. J'appuie sur une touche, la calculette s’éteint, je la rallume et elle m'affiche RAM cleared...
          Est-ce-que tu as une idée ?


          Quel type de calculatrice as-tu ?
          Et est-ce que à un moment ton programme demande l'appui sur une touche et tu appuies sur ON ? Dans ce cas, il faut penser à remettre à zéro oninterrupt, (iy+onflags).
          Sinon, il faudra me donner le code en entier car l'erreur vient peut-être effectivement du stack...

          Et le solutionneur a raison, ton jump est un peu bizarre.
          • Partager sur Facebook
          • Partager sur Twitter
            15 décembre 2011 à 21:58:20

            J'ai une ti 83 plus. je crois pas que j'appuie sur ON à un moment, mais je vais essayer demain.
            Pour le jump, c'est que en fait il y a du code entre mais je l'ai pas copié (le jump est inclus dans une boucle)
            • Partager sur Facebook
            • Partager sur Twitter
              15 décembre 2011 à 23:06:02

              Le problème est que là, tu nous passes qu'une petite partie du code : le bug peut très bien être autre part !

              Ah oui, le "50" représente quoi ? Une touche ?

              Ps: merci de continuer ici : http://www.siteduzero.com/forum-83-192 [...] r-les-ti.html car ce topic est fait pour les questions sur le tuto lui même ou des améliorations pour le tuto.
              • Partager sur Facebook
              • Partager sur Twitter
                16 décembre 2011 à 13:02:37

                Citation : Le solutionneur

                Ps: merci de continuer ici : http://www.siteduzero.com/forum-83-192 [...] r-les-ti.html car ce topic est fait pour les questions sur le tuto lui même ou des améliorations pour le tuto.


                Non non, je trouve que c'est très bien ici, ça ne dérange pas tous les programmeurs TI-Basic/Axe qui ont tout sur les ti en favori.
                Il n'y a pas de problème, on n'est pas obligé de poser des questions que sur le tuto.
                • Partager sur Facebook
                • Partager sur Twitter
                  27 décembre 2011 à 18:24:42

                  Bon, ben, je reste sur cette page alors...
                  la valeur 50 correspond à une hauteur sur l'écran graphique.
                  Le problème si il faut que je vous passe le code, c'est qu'il est assez long et édité sur mimas... Si c'est la seule solution, je crois que je vais m'en tenir aux options de MirageOs (on+annul pour sortir d'un programme). C'est moins sympa, mais bon... J'ai aussi essayé de remplacer le jp z,perdu par ret z, mais ça a le même effet. J'ai aussi remarqué autre chose : il faut que je fasse un certain nombre d'actions avec le programme pour qu'il bugge à la fin.
                  En tous cas, c'est sympa de m'aider.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    6 janvier 2012 à 17:06:06

                    Peut on lancé un prg basic ti en asm sur une TI82 1ere version ?
                    C'est à dire que je voudrai écrire un programme en assembleur qui lance des programmes en TI basic .
                    • Partager sur Facebook
                    • Partager sur Twitter
                      6 janvier 2012 à 19:30:46

                      Salut,

                      tout d'abord, bienvenue dans la communauté de programmation ASM z80.

                      Pour exécuter un programme basic ou une équation, il faut utiliser la rom call de nom ParseInp.
                      En entrée : OP1, nom de la variable
                      En sortie pour une équation : OP1, le résultat

                      Je n'ai jamais essayé mais logiquement ça devrait marcher sur ta ti. ;)
                      • Partager sur Facebook
                      • Partager sur Twitter
                        6 janvier 2012 à 21:50:01

                        La prochaine fois, je te conseille de regarder dans la doc officielle des roms calls: elles sont, je pense, toutes documentées !
                        • Partager sur Facebook
                        • Partager sur Twitter
                          7 janvier 2012 à 10:05:32

                          Citation : Le solutionneur

                          La prochaine fois, je te conseille de regarder dans la doc officielle des roms calls: elles sont, je pense, toutes documentées !


                          Tu parles, elle est introuvable sur google et autre moteur de recherche, parce-qu'on pense rarement à utiliser le mot clef "parse" pour exécuter un prog !
                          Sérieusement, elle est pas facile à trouver.
                          • Partager sur Facebook
                          • Partager sur Twitter
                            7 janvier 2012 à 17:48:44

                            Pour les TI-82, je viens de trouver un site totalement par hasard, si cela peut aider : lien.
                            • Partager sur Facebook
                            • Partager sur Twitter
                            Anonyme
                              7 janvier 2012 à 18:02:42

                              Argh, tu trouves ça par hasard alors que moi en le cherchant... :'(
                              Merci beaucoup !
                              • Partager sur Facebook
                              • Partager sur Twitter
                                7 janvier 2012 à 19:44:14

                                Génial !
                                Mais quel dommage que ça compile pour shell, car j'aimerai bien savoir moi comment compiler pour sans shell pour les modèles inférieurs à la 83+.
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  7 janvier 2012 à 20:14:13

                                  En fait il me semble que la 82 ne support pas autrement l'ASM qu'avec l'aide d'un shell. Alors que la 83 peut faire les 2 (avec shell ou sans).
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    8 janvier 2012 à 1:51:18

                                    Bas il se démarre comme un programme TI-Basic... enfin moi j'y connais rien après. ^^
                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                    Anonyme
                                      8 janvier 2012 à 11:09:37

                                      Si le shell était en basic, se serait beaucoup plus lent de programmer en assembleur qu'en basic (en plus que ce n'est pas possible, on ne peut pas gérer un programme asm avec du basic). Le shell est bien en asm. Reste à savoir comment lancer un asm perso sans ce $£¤*§ shell.

                                      @mdr1 : finalement, si je comprends bien, un shell est un truc inutile (enfin, à part poposer des fonctions qu'on a autant de refaire) qui prend de la place et ralenti les prgm ? Personnellement, j'ai jamais programmé avec un shell, et je ne vois pas quel est le réel intéret.
                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        8 janvier 2012 à 13:13:56

                                        Citation : @dri1

                                        Si le shell était en basic, se serait beaucoup plus lent de programmer en assembleur qu'en basic (en plus que ce n'est pas possible, on ne peut pas gérer un programme asm avec du basic). Le shell est bien en asm. Reste à savoir comment lancer un asm perso sans ce $£¤*§ shell.

                                        @mdr1 : finalement, si je comprends bien, un shell est un truc inutile (enfin, à part poposer des fonctions qu'on a autant de refaire) qui prend de la place et ralenti les prgm ? Personnellement, j'ai jamais programmé avec un shell, et je ne vois pas quel est le réel intéret.


                                        Non, je n'ai jamais dis que le shell était en TI-Basic ! Je dis juste qu'il est capable de se lancer comme un programme TI-Basic, et que sans le shell impossible de démarrer les programmes asm. Moi aussi je n'avais pas compris quand j'ai vu ça, mais apparemment c'est possible. >_<
                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          8 janvier 2012 à 15:08:36

                                          Citation : @dri1

                                          @mdr1 : finalement, si je comprends bien, un shell est un truc inutile (enfin, à part poposer des fonctions qu'on a autant de refaire) qui prend de la place et ralenti les prgm ? Personnellement, j'ai jamais programmé avec un shell, et je ne vois pas quel est le réel intéret.


                                          Moi non plus je n'aime pas trop les shells. En théorie, c'est censé économiser de la mémoire en proposant une bibliothèque de routines réutilisables par les programmes asm compilés pour ce shell. En pratique, ça embête tout le monde car il y a plein de shells différents et plein de routines non utilisées donc finalement ça n'économise rien.
                                          D'ailleurs, c'est pour ça que DCS est là pour rassembler tous les différents shells, comme ça c'est compatible, mais par contre ça prend 3 pages donc ça fait le contraire d'économiser.

                                          Citation : kindermoumoute

                                          Non, je n'ai jamais dis que le shell était en TI-Basic ! Je dis juste qu'il est capable de se lancer comme un programme TI-Basic, et que sans le shell impossible de démarrer les programmes asm. Moi aussi je n'avais pas compris quand j'ai vu ça, mais apparemment c'est possible. >_<


                                          Mais attends, si le shell est capable de se lancer tout seul, pourquoi un autre programme asm pourrait pas faire pareil ?
                                          Qu'a le shell de plus ? On doit forcément pouvoir faire pareil, non ?
                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                          Anonyme
                                            8 janvier 2012 à 15:56:26

                                            Donc c'est bien ce que je pensais :
                                            les shell à la poubelle !
                                            les shell à la poubelle !
                                            :lol:

                                            Le shell est appelé par l'execution du programme, non ? Ou c'est la shell qui appelle l'execution du programme ? Ca permettrai de centrer les recherches pour savoir si il faut savoir comment le shell se lance ou comment il lance les programmes.
                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                              8 janvier 2012 à 17:39:10

                                              Citation : @dri1

                                              Le shell est appelé par l'execution du programme, non ? Ou c'est la shell qui appelle l'execution du programme ? Ca permettrai de centrer les recherches pour savoir si il faut savoir comment le shell se lance ou comment il lance les programmes.


                                              Ça dépend des shells. Et parfois, on peut faire dans les deux sens.
                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                              Anonyme
                                                8 janvier 2012 à 17:47:11

                                                Il y a quel shell qui lance lui même les programmes ?
                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                  8 janvier 2012 à 18:47:37

                                                  DoorCS...
                                                  Pour info, j'ai un avis partagé sur les Shells.
                                                  Je vais vous parler au sens ajout de fonctions : d'un côté, cela permet d'avoir de nouvelles routines, dans le même principe que les ROM calls.
                                                  Les problèmes, c'est qu'un Shell prend de la place et à moins de posséder une 84+, on aura jamais assez de programmes asm pour que :
                                                  place_du_Shell - place_gagnée < 0

                                                  Et quelque chose d'énervant, c'est qu'un prgm avec Shell ne marche généralement pas sans...

                                                  Ps: si je me souviens bien, ion est dispo pour ti 83/82
                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                  Anonyme
                                                    8 janvier 2012 à 18:50:21

                                                    Et ion lance ces programmes ou il est lancé à l'execution du programme (suis un boulet en matière de shell...) ?
                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                      8 janvier 2012 à 20:23:11

                                                      Citation : Le solutionneur

                                                      place_du_Shell - place_gagnée < 0


                                                      Tu aurais pu mettre en plus compréhensible : taille du shell < mémoire gagnée

                                                      Citation : Le solutionneur

                                                      Et quelque chose d'énervant, c'est qu'un prgm avec Shell ne marche généralement pas sans...


                                                      Ben oui, sinon il utilise rien du shell si ça marche sans.

                                                      Citation : @dri1

                                                      Il y a quel shell qui lance lui même les programmes ?



                                                      Citation : @dri1

                                                      Il y a quel shell qui lance lui même les programmes ?


                                                      Je crois qu'en plus de DCS, il y a MirageOS. Mais pourquoi cette question ?
                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                        8 janvier 2012 à 21:15:02

                                                        Je pense qu'il croit que les 3/4 des shells sont appelés à l'exécution des programmes grace à des hooks mais en fait, c'est le contraire, en général, les shells ne sont pas executés avec les hooks mais ont une interface.

                                                        Perso, j'utilise Dcs qui me permet d'exécuter les progs asm de la plupart des shells et d'éditer du ti basic en plein écran.
                                                        Son inconvéninet et qu'il prend pas mal de place et que son interface, qui semble stylée aux premiers abords s'avère lourde et pas très pratique, on arrête vite d'utiliser la souris.

                                                        Faites vos choix ! :)
                                                        • Partager sur Facebook
                                                        • Partager sur Twitter
                                                          8 janvier 2012 à 22:24:27

                                                          Je sais pas trop si c'est l'endroit pour débattre des shells. @mdr1 : je n'en sais pas plus, après il faut tester.
                                                          • Partager sur Facebook
                                                          • Partager sur Twitter
                                                          Anonyme
                                                            8 janvier 2012 à 22:38:17

                                                            Citation : Le solutionneur

                                                            Je pense qu'il croit que les 3/4 des shells sont appelés à l'exécution des programmes grace à des hooks mais en fait, c'est le contraire, en général, les shells ne sont pas executés avec les hooks mais ont une interface.



                                                            Non, c'etait pour en avoir un à décortiquer pour voir comment il lance le programme. Mais DCS est trop complexe, c'etait pour voir si il y en a un plus simple. Je vais voir avec Mos. C'est peut être un peu téméraire, mais qui ne risque rien n'a rien. Je vous dit si ça abouti.
                                                            • Partager sur Facebook
                                                            • Partager sur Twitter

                                                            [Bêta ON] Apprendre l'ASM Z80 pour TI

                                                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                                            • Editeur
                                                            • Markdown