AMOS Pro community 2020.1 / Exemples de code Amos

Forum Amiga Coding AMOS Pro community 2020.1 / Exemples de code Amos

  • Ce sujet contient 83 réponses, 10 participants et a été mis à jour pour la dernière fois par alama, le il y a 3 semaines.
  • Créateur
    Sujet
  • #75812
    Alain.Treesong
      • Level 5
      • Messages : 229

      Bonsoir,

      Sur AmigaImpact j’ai uploadé à la demande d’un membre du forum une version d’Amos qui peut servir de référence au développement sur Amiga 500 avec ce langage.

      https://www.dropbox.com/s/nch9p4fj59lw4k4/AMOSPro_Community_2020_1.adf?dl=0

      Je l’avais indiqué dans un thread déjà mais il est possible que cela soit passé inaperçu sur ce forum car ce n’était le sujet du thread (ou alors cela n’intéresse pas grand monde…)

      Donc je crée ce thread sur ce forum pour en parler plus en détail. J’ai par ailleurs dans l’idée d’ajouter de temps en temps quelques bouts de code qui serviront d’exemples pour les personnes éventuellement intéressées par du dev avec ce langage avec comme plateforme cible plutôt un Amiga ECS/OCS (généralement un A500 vanille).

      J’ai ajouté un progamme sur le thread d’Amiga Impact que je reporte ici également pour toucher le plus de personnes (si jamais il y en a :-)).

      Donc voici un petit programme qui après compilation fera tourner sur l’axe Y en 50 fps un triangle avec un effet d’ombre. Ce progamme est à utiliser avec la version 2020.1 d’Amos paramétrée avec les extensions incontournables selon moi.

      Ceux qui veulent en parler ou poster d’autres codes n’hésitent pas.

      https://www.dropbox.com/s/jna6hf1o8r981fu/AmosPro2_triangle.png

      Le code :

      ‘ Flat shadow rotating Y triangle by Aghnar/Agima in dec. 2019
      Screen Open 0,320,256,8,Lowres
      Flash Off : Curs Off : Hide : Degree
      Paper 0 : Cls : Palette $0,$666,$888,$BBB,$AAA,$BBB,$CCC,$EEE
      Pen 2
      Double Buffer : Autoback 0
      Blitter Copy Limit 0,48 To 320,208
      Dim C(359),S(359) : For I=0 To 359 : C(I)=256*Cos(I) : S(I)=256*Sin(I) : Next
      X1=64 : Y1=-32 : Z1=0 : X2=-64 : Y2=-32 : Z2=0 : X3=0 : Y3=74 : Z3=0
      XE1=0 : YE1=0 : XE2=0 : YE2=0 : XE3=0 : YE3=0
      X=0 : Y=0 : Z=0 : T=0 : Timer=0
      Do
      Blitter Copy 0,1 To 0,2
      Blitter Copy 0,0 To 0,1
      Add T,1 : If T=10 : Locate 1,26 : Print 500/Timer; » fps » : Timer=0 : T=0 : End If
      Add A,-2,0 To 359
      X=X1*C(A)+Z1*S(A) : Y=Y1*256 : Z=-X1*S(A)+Z1*C(A) : CZ=Z+256*256
      Blitter Clear 0,0
      XE1=160+(X*256)/CZ : YE1=100+(Y*256)/CZ
      X=X2*C(A)+Z2*S(A) : Y=Y2*256 : Z=-X2*S(A)+Z2*C(A) : CZ=Z+256*256
      XE2=160+(X*256)/CZ : YE2=100+(Y*256)/CZ
      X=X3*C(A)+Z3*S(A) : Y=Y3*256 : Z=-X3*S(A)+Z3*C(A) : CZ=Z+256*256
      XE3=160+(X*256)/CZ : YE3=100+(Y*256)/CZ
      Turbo Draw XE1,YE1 To XE2,YE2,1,-1
      Turbo Draw XE2,YE2 To XE3,YE3,1,-1
      Turbo Draw XE3,YE3 To XE1,YE1,1,-1
      Blitter Fill 0,0
      Screen Swap : Wait Vbl
      Loop

       

      Ciao

      Aghnar

       

    Affichage de 8 réponses de 76 à 83 (sur un total de 83)

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

    • Auteur
      Réponses
    • #206022
      alama
        • Level 3
        • Messages : 60

        Bonjour,

         

        J’ai téléchargé l’adf d’amos pro community 2020 1. J’ai une question sur la configuration de l’éditeur de code. J’ai un fichiers ascii avec du code AMOS qui fait 28ko mais au chargement j’ai cette erreur « out of buffer space ».

        Je n’ai pas trouvé où ça se configure. Il y a un fichier « Editor_config.AMOS » qui contient « Set Buffer 20 » et mis 256ko mais ça n’est pas pris en compte.

        Où peut on augmenter la taille du buffer ?

         

        Merci,

         

        Alama



        #206027
        Alain.Treesong
          • Level 5
          • Messages : 229

          Bonjour,

          Set buffer X concerne l’espace mémoire associée aux variables dans le code.

          Je ne sais pas sans regarder où se configure le buffer pour l’import d’un texte. Ce que je ferai, c’est que je découperai le fichier ascii source en 2 ou 3 fichiers et je ferai l’import par morceau en sauvegardant le code .amos obtenu à chaque fois.

          Aghnar

           

           

          #206028
          DarkN3m0
            • Level 4
            • Messages : 130

            il suffit juste de mettre Set Buffer X au tout debut de ton code

            Amiga coder (AMOS PRO, 68k)

            Cthulhu project WIP : (retro Dungeon crawler )
            https://www.youtube.com/channel/UCDfyk0tscuVFcC7xo6tdhyA

            PATREON : https://www.patreon.com/DarkN3mo

            #206029
            alama
              • Level 3
              • Messages : 60

              Merci pour vos réponse. Découpé en plusieurs fichiers ne marche pas. En fait le problème est ici où je n’ai que 32ko de mémoire dans l’éditeur :

              #206030
              DarkN3m0
                • Level 4
                • Messages : 130

                Merci pour vos réponse. Découpé en plusieurs fichiers ne marche pas. En fait le problème est ici où je n’ai que 32ko de mémoire dans l’éditeur :

                cela depend de la memoire que tu a de dispo sur ton système.

                Amiga coder (AMOS PRO, 68k)

                Cthulhu project WIP : (retro Dungeon crawler )
                https://www.youtube.com/channel/UCDfyk0tscuVFcC7xo6tdhyA

                PATREON : https://www.patreon.com/DarkN3mo

                #206032
                alama
                  • Level 3
                  • Messages : 60

                  C’est là que c’est bizarre. J’ai plein de mémoire sur WinUAE :

                  #206040
                  Alain.Treesong
                    • Level 5
                    • Messages : 229

                    Effectivement dans la version communautaire que j’ai faite, le buffer texte pour l’éditeur n’est que de 32K par défaut, ce qui est trop faible.

                    Je mettrai à jour l’adf.

                    En attendant, dans le menu Config, choisis « Set Interpreter »

                    Une fois l’appli chargée, choisis « Load Default Configuration ». Une fois que c’est fait, dans menu « Set System Configuration, Page 2 », tu peux changer la taille du text buffer. Mets par exemple 150K :

                    Ici j’ai mis 156,

                    Sors, sauve la configuration et redémarre Amos qui aura 156k pour l’éditeur.

                    Comme je te l’ai dit, « set buffer X » sert pour la taille des var dans ton code. C’est un autre buffer.

                    A+

                     

                    #206046
                    alama
                      • Level 3
                      • Messages : 60

                      Merci, super, ça fonctionne.

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