Extension Visual Studio Code pour l'assembleur Amiga

Forum News Room Projets Extension Visual Studio Code pour l'assembleur Amiga

  • Ce sujet contient 44 réponses, 5 participants et a été mis à jour pour la dernière fois par Jeeg, le il y a 3 années et 2 mois.
  • Créateur
    Sujet
  • #26225
    prb28
    • Level 2
    • Messages : 41

    Bonjour à tous !

    Si ça intéresse quelqu’un j’ai codé une extension pour Visual Studio Code afin de faciliter le codage de l’assembleur pour Amiga.

    https://marketplace.visualstudio.com/items?itemName=prb28.amiga-assembly

    https://github.com/prb28/vscode-amiga-assembly

    Les fonctionnalités les plus intéressantes sont la colorisation (existait déjà), le formatage du code et la documentation assembleur et registres amiga en tooltip.

    Si vous avez des remarques ou vous voulez y apporter des modifications, elles sont les bienvenues !

    Pour la petite histoire : je me suis remis, il y a peu de temps, à l’assembleur sur Amiga (toujours rêvé de faire une copperlist depuis la fin des années 80) :

    • j’ai sorti et nettoyé mon Amiga 500
    • j’ai préparé un FS-UAE avec vscode (plantage -> reboot = 0.5s)
    • enfin j’ai suivi les tutos de Photon sur Youtube

    Sauf qu’arrivé au tuto numéro 13, il commence à dire qu’il va nettoyer son code car c’est pas très propre. Et, en effet, le mien ne ressemblait à rien avec toutes les erreurs de jeunesse.

    Sauf, que moi je suis flemmard alors me retaper les tabulations sur tout le document, non merci ! Donc j’ai codé une extension qui le fait, j’en ai profité pour ajouter quelques bonus.

    Je la ferais vivre en fonction de mes besoins qui apparaîtront à partir du tuto 14 :lol: !

Affichage de 15 réponses de 16 à 30 (sur un total de 44)

Partager sur vos réseaux sociaux préférés :
Facebooktwitterredditpinterestlinkedintumblrmail

  • Auteur
    Réponses
  • #26505
    Jeeg
    • Level 5
    • Messages : 212

      @prb28, rien ne t’empêche déjà de compiler avec vasm, il suffit de lancer la commande dans le terminal de vs code et le tour est joué. Il ne reste ensuite plus qu’ à lancer l’exécutable généré dans winUAE ou consort. :-)

      Bravo et merci pour cette extension. :good:

      https://www.amigapassion.fr/abbaye/



      #26506
      prb28
      • Level 2
      • Messages : 41

        @Jeeg, en effet c’est la première étape et je voudrais qu’elle arrive assez rapidement pour faire de la validation syntaxique (je suis pas sur que l’on fasse souvent des erreurs de syntaxe, mais bon…).

        Mais avec mes premiers essais, j’ai été frustré lorsque j’ai compris qu’à la 10e commande assembleur (désactivation du système pour l’installation des interruptions), il n’y avait plus de debug possible !

        Normal, me direz-vous, jeune padawan, il faut bien calculer ses boucles et attention ça marche pas vraiment comme dans les autres langages … bah c’est l’apprentissage par l’erreur, mais on en revient au debug par ligne rose dans la copperlist :lol: .

        (Même pas peur, j’ai déjà débuggé au bip sur les vieux PC lorsque l’écran était noir.)

        J’en suis donc à faire des sorties plus tôt dans mon programme pour vérifier l’état de la mémoire :cry: … c’est pas l’idéal…

        #26650
        prb28
        • Level 2
        • Messages : 41

          La version 0.5.0 est disponible !

          Nouveautés :

          • Calculs : à la volée, en commande et avec remplacement.
          • Ajout de la doc des ciaa et ciab
          • Ajout de présentation et modification des couleurs dans le code
          • Présentation binaire des valeurs attribuées aux registres amiga
          • Tooltip avec la conversion binaire / hex / decimal

          Bon code à tous !

          #26653
          Jeeg
          • Level 5
          • Messages : 212

            Superbes ces évolutions, par contre j’ai l’impression que les commentaires sont passés de ; à // qui n’est pas interprété correctement avec vasm. ;-)

             

             

             

            https://www.amigapassion.fr/abbaye/

            #26670
            prb28
            • Level 2
            • Messages : 41

              merci @Jeeg !

              Non, je ne pense pas voir touché aux commentaires. Pourrais-tu m’en dire un peu plus sur ce que tu as remarqué ?

              J’ai tout juste commencé à jouer avec vasm et j’ai du utiliser la compatibilité devpac pour faire fonctionner ma copperlist :

              • vasmm68k_mot -kick1hunks -devpac -Fhunk -o p.o p.s
              • vlink -bamigahunk -o monexe -s p.o

              Quelles options utilises-tu pour vasm ?

              Quel enchainement utilises tu pour faire éditeur / compilation vasm / test sur émulateur ?

              #26690
              Jeeg
              • Level 5
              • Messages : 212

                @prb28, c’est tout bête, dans la version précédente, lorsque l’on appuyait sur CTRL+: la ligne sélectionnée était commentée avec un ; maintenant, c’est un //.  Où menu modifier, option « Afficher/masquer le commentaire de ligne ».

                Sinon pour compiler j’utilise simplement dans la console du VS code une commande de ce type : vasmm68k_mot -Fhunkexe -o display.exe -nosym display.s ce qui a pour effet de générer directement mon exécutable (format hunk AmigaDos, sans symboles de débogage) à l’emplacement du source.

                Plus qu’a basculer sous winUAE et lancer le programme, c’est tout. :-)

                https://www.amigapassion.fr/abbaye/

                #26691
                prb28
                • Level 2
                • Messages : 41

                  @Jeeg, peux-tu, stp, vérifier si tu n’aurais pas gardé le plugin m68k ?

                  C’était son comportement, dans mon plugin c’est bien un ‘;’ qui est inséré. Comme nous répondons au mêmes extensions de fichier il est possible que vscode se trompe dans la source de définition du langage.

                  #26692
                  Jeeg
                  • Level 5
                  • Messages : 212

                    @prb28, bien vu, c’était bien le cas, il y avait bien un conflit avec ce plugin.
                    Tout est rentré dans l’ordre.  :good:

                    https://www.amigapassion.fr/abbaye/

                    #38042
                    prb28
                    • Level 2
                    • Messages : 41

                      S’il y a des curieux (et courageux), j’ai fait une preview du debuger:

                      https://github.com/prb28/vscode-amiga-wks-example

                      Pour quelqu’un qui veut faire ses premier pas en ASM, ça vaut vraiment le coup d’oeil.

                      N’hésitez pas à me faire des remarques !

                       

                      #38086
                      Jeeg
                      • Level 5
                      • Messages : 212

                        Je regarde cela, merci ton superbe travail. :-)

                        https://www.amigapassion.fr/abbaye/



                        #38090
                        prb28
                        • Level 2
                        • Messages : 41

                          Merci !

                          Même si je l’ai débuté avec pour but de me simplifier la vie…ça fait plaisir de voir que ça peut servir à d’autres et avoir un retour positif !

                          #38130
                          Jeeg
                          • Level 5
                          • Messages : 212

                            @prb28, j’ai l’impression que ma version de fs uae ne fonctionne pas en mode débogage (je suis sous Windows), je ne m’arrête jamais sur un point d’arrêt et j’ai toujours un message d’erreur : ECONNREFUSED 127.0.0.1:6860.

                            Il faut que je regarde si je peux récupérer une autre version. :scratch:

                            https://www.amigapassion.fr/abbaye/

                            #38133
                            prb28
                            • Level 2
                            • Messages : 41

                              @jeeg en effet les options de debugage à distance ne sont pas encore disponibles dans la version officielle de fs-uae, il faut compiler la version de Daniel Collin :

                              https://github.com/emoon/fs-uae

                              ou ma version de travail :

                              https://github.com/prb28/fs-uae

                              J’ai modifié la version de test en ajoutant la possibilité de désassembler la mémoire grâce à l’outil cstool de capstone (il faut aussi le compiler):

                              http://www.capstone-engine.org/

                              #38304
                              Jeeg
                              • Level 5
                              • Messages : 212

                                @prb28, choux blanc, après pas mal de galères pour compiler l’une de deux version sous Mingw, l’exécutable ne fonctionne pas. J’attendrai qu’une prochaine version avec exécutable arrive. Tant pis.

                                Dans tous les cas, merci pour ton travail, bonne continuation. :good:

                                https://www.amigapassion.fr/abbaye/

                                #38305
                                prb28
                                • Level 2
                                • Messages : 41

                                  @jeeg merci d’avoir essayé !

                                  Lorsque j’aurais avancé, je mettrais à dispo un exe windows.

                                  Pour l’instant ma version de FS-UAE est un peu en vrac avec mes modifications :-p .

                                Partager sur vos réseaux sociaux préférés :
                                Facebooktwitterredditpinterestlinkedintumblrmail
                                Affichage de 15 réponses de 16 à 30 (sur un total de 44)
                                • Vous devez être connecté pour répondre à ce sujet.