No CPU Challenge

14 sujets de 1 à 14 (sur un total de 14)

  • Admin

    bigdan

      #387266

      Le lien vidéo de @mikedafunk m’a intéressé

      Techniquement, cela peut être intéressant à faire … Un seul exécutable (alias « runner ») charge en chip ram le fichier de la démo qui s’exécute uniquement avec les custom chips Amiga

      https://github.com/askeksa/NoCpuChallenge

      Ils en parlent aussi sur EAB :

      https://eab.abime.net/showthread.php%3F …

      GothDevil (カスリン)

        #387267

        @bigdan,

        Pour info, ton dernier lien ne fonctionne pas.

        Mod

        Amigars

          #387434

          N’étant pas un expert du côté soft d’un Amiga, comment cela peut-il marcher ?

          Pour moi l’horloge donne le tempo et le CPU doit exécuter du code…mais là pas de code à exécuter et les customs chips se débrouillent ? C’est juste parce qu’on a mis des données dans la RAM que les custom chips vont se servir et dérouler la démo ?

          Merci pour vos lumières…

          Only AMIGA makes it possible !

          Giants

            #387441

            Chouette démo au passage.

            C’est faux en faite, ou du moins c’est jouer sur les mots.
            Peu importe le ‘code executé’ d’ailleurs.
            Pour ‘envoyer’ du ‘code’ au custom-chip t’es obligé de ‘coder’ des instructions CPU (pas de miracle)
            Après, effectivement… une fois le ‘code’ envoyé au custom chip, le cpu ne fait…. rien

            Mais le titre est un non-sens.
            A moins que quelqu’un est une baguette magique pour injecter du code directement dans les custom-chips SANS passer par une commande quelconque de CPU. (abra cadabra)
            ce qui, sur Amiga, n’est juste pas possible (ou alors.. grooooooossse magouille hardware… et encore)

            Après, au niveau émulation, SI l’émulateur le permet (injection de code direct sur un des custom-chips, why not)
            Sur un Amiga500 réel, NIET

            Réparation électronique (Amiga and Co et re-cap.)
            Contact UNIQUEMENT via email (voir ma page web)
            https://sasfepu78.ddns.net/PA/index.html

            Mod

            Amigars

              #387443

              Je commence à comprendre…en fait pour mettre le code dans la RAM il faut au départ utiliser un « runner » qui mettra ensuite le CPU en niveau d’interruption 7 et empêchera tout chip de le relancer par interruption.

              C’est expliqué ici : https://github.com/askeksa/NoCpuChallenge/tree/main/runner

              Only AMIGA makes it possible !

              piark

                #387565

                Hello, petite rectif,

                étant donné que les interruptions sont traitées par le processeur, il suffit juste de jouer des masques pour les bloquer.

                Et de toute façon, au pire il suffit de faire un vecteur qui pointe sur une routine qui ne fait rien.

                Mais dans tous les cas, interruption ou pas, ça ne change pas le fond du problème, c’est plus ou moins inexact.

                De mon point de vue,

                si on veut du full custom chips, il faut au moins une passe de cpu (un loader si vous préferez) qui instruit une copperlist au copper, et à partir de la copperlist on peut en effet piloter les autres customs chips.

                Donc à partir d’une grosse copperlist chargée en chip, une init par le cpu, oui normalement ça fonctionne.

                Mais en gros ça sera une sorte d’anim, une énorme copperlist qui orchestrera la démo, on peut faire du son aussi avec.

                Ce n’est pas une nouveauté mais ça reste un challenge intéressant.

                Créer un exe qui charge tout en chip n’est pas compliqué sur amiga, les sections peuvent être spécialisées en fonction du type de mémoire, donc l’os chargera directement en chip si on place les données et le code dans une section de type chip.

                Mais, il faudra bien quelquechose pour désactiver l’os, initialiser proprement le hardware, et indiquer au copper ou se trouve la copperlist, et ça se fera au cpu.

                En espérant avoir éclairé un peu.

                Giants

                  #387583

                  Titre agicheur 🙂
                  Mais réel perf et chouette ‘démo’.
                  Est ce que du coup on peut parler de ‘démo’ du coup ? (question pour _Sam)

                  Réparation électronique (Amiga and Co et re-cap.)
                  Contact UNIQUEMENT via email (voir ma page web)
                  https://sasfepu78.ddns.net/PA/index.html

                  Admin

                  bigdan

                    #387699

                    Bien sur que c’est aguicheur, c’est pour créer une nouvelle catégorie de démos Amiga dans les démoparty.

                    Et oui le « runner » utilise bien des cycles CPU au démarrage.

                    __sam__

                      #387705

                      Bah ca reste une démo qui montre ce que les custom-chips (a priori avec peu de fonctions de calcul élaborées) peuvent faire à elles-seules.

                      Le runner charge en RAM, protège le système si possible (assez de ram) puis passe la main aux customchip jusqu’à la fin de la démo et restore le système si possible (on est pas des sauvages). Durant la démo il semble que ce soit une coppertlist qui séquentialise le tout, c’est à dire un CPU avec 3 instructions: MOVE, WAIT et SKIP. Donc pas de tests ou d’algos direct avec lui, juste du timing et des écritures de données immédiates à des adresses fixes; sauf que la partie ALU (unité logique-arithmétique) d’un cpu complet peut moralement être effectuée via le blitter qui modifie dynamiquement la copperlist. On peut donc réaliser des algos balèzes en combinant l’utilisation des customchips sur du code auto-modifié, mais il faut être astucieux et bien se creuser là tête.

                      C’est un peu ca le truc bien quand on voit les effets réalisés à l’écran. Ca pose la question : mais comment ont-ils faits ? Et si on se pose cette question, c’est qu’on a affaire non seulement à une démo technique avec de beaux effets, mais aussi à des exploits de programmation sous contraintes, comme dans toutes les bonnes démos oldskool et contrairement aux demos 3D/PC où la solution est dans la puissance du CPU/GPU exclusivement.

                      J’aime bien l’idée.

                      Samuel.

                      Amiga A500 + GVP530 (8Mo/fpu/mmu/scsi) - en panne 🙁
                      A500 (+ 1Mo PPS), A1200 (Blizzard-IV/fpu/64Mo)
                      A500 Vampire V2+ ^8^ 🙂
                      (mais aussi TO8, TO8D, TO9. Groupe PULS.)

                      Giants

                        #387706

                        Merci pour ton retour.

                        Réparation électronique (Amiga and Co et re-cap.)
                        Contact UNIQUEMENT via email (voir ma page web)
                        https://sasfepu78.ddns.net/PA/index.html

                        piark

                          #387711

                          Ben surtout la synchro sur la musique dans la démo en plus du reste !

                          Le codeur à du passer un temps dingue à faire ça, ou alors il à du se faire des outils très intéressants, mais ça laisse dans tous les cas pas indifférent.

                          Et en plus y’a du design et pas mal de graphismes.

                          beau résultat en tout cas c’est sur.

                          JiDeWe

                            #387721

                            j’aime bien les graphismes old school 😉

                            1 A500 2mo, 1 A500 512ko +ACA500+, 1 msx 8235
                            Une guerre se termine, il ne reste que des survivants et ceux qui ont tiré les ficelles qui écrivent ou réécrivent l’histoire et ceux qui auront un prix Nobel

                            Giants

                              #387738

                              Je ne pense pas que ce soit ‘pre-calaculé’ à la main.
                              Des outils simple en python est assez logique.
                              Après je ne sais pas si il existe un post détaillé de comment il a fait, ça serait interressant.

                              Réparation électronique (Amiga and Co et re-cap.)
                              Contact UNIQUEMENT via email (voir ma page web)
                              https://sasfepu78.ddns.net/PA/index.html

                            14 sujets de 1 à 14 (sur un total de 14)

                            • Vous devez être connecté pour répondre à ce sujet.

                            Forums AmigaOS, MorphOS et AROS Développement No CPU Challenge

                            Amiga Impact