AMOS Professional 'améliorations'… C'est possible ?

15 sujets de 1 à 15 (sur un total de 53)

  • AmiDARK

      #339072

      La vidéo est directement sur la page AmosCoding de Facebook.

      (J’ai la flemme de télécharger la vidéo sur youtube).

      Voici le lien : https://www.facebook.com/groups/AmosPro/permalink/1004076299930370/

      Pour ceux qui voudraient voir un WIP intéressant pour l’AMOS Pro, n’hésitez pas à y jeter un oeil et me laisser un petit commentaire ici … ou là bas …

      En tout cas, mettre la main dans le pétrin du code source de l’AmosPRO, ça me dérouille les anciennes connaissances en 680×0 et … et celle sur … Enfin vous verrez avec la vidéo :p

      @+

      lexomil

        #339117

        Salut,

        Si j’ai bien tout suivi c’est du double playfield en 16 couleurs sur chaque playfield, mais tu fais ça sur de l’ECS ou de l’AGA ?

        Treesong

          #339118

          Salut,

          Cela ne peut pas être de l’ECS/OCS à mon avis.

           

          AmiDARK

            #339143

            @Lexomil : Comme le dit Treesong, cela ne peux être qu’AGA.

            En fait je travaille sur le code source de l’Amos Pro (d’après la version sur le git de Marc365 ( ici : https://github.com/marc365/AMOSProfessional ).

            Et du coup j’ai ajouté le support « Natif » avec les commandes d’origines de l’AMOS Professional, pour le mode Dual Playfield en 2 x 16 couleurs. Pour l’instant la précision des couleurs est toujours celles de l’Amiga 500, mais ma prochaine étape sera d’améliorer cela (en plus d’autres fonctionnalités)..

            Voici une nouvelle vidéo directement sur youtube et enregistrée avec ShareX :

            https://youtu.be/aoC9JODHT-Q

             

            Mon repository à jour est ici : https://github.com/AmiDARK/AMOSProfessional-X/tree/Dual-Playfields

            mikedafunk

              #339161

              En voilà une de bonne nouvelle !

              Amos2 sur classic 😉

              AmiDARK

                #339163

                @MikeDaFunk :
                Ce projet part des sources de l’Amos Professional 2.0 et n’est pas un projet « from scratch » comme le fait François Lionet avec son AMOS 2 😉

                Les objectifs des deux projets sont très différents l’un de l’autre 😉

                 

                lexomil

                  #339180

                  Ok, je suis allé faire un tour sur le git mais c’est pas évident de s’y retrouver dans les fichiers, surtout quand tu tapes les 20k+ de lignes 🙂

                  Y’a pas une petite doc d’explication quelque part ? Quand j’aurai le courage je clonerai le repo et je tenterai un build 🙂

                  Bon courage pour ton dev.

                  AmiDARK

                    #339185

                    @lexomil : ton commentaire est très pertinent. J’essayerai d’ajouter une petite doc.

                    Sinon dans le dossier AMOS il y a un build complet et à jour avec mes modifications 😉

                    Anonyme

                      #339215

                      ooooh !

                      j’ai 2 ou 3 petits jeux en cours

                      kamelito

                        #339335

                        @Amidark

                        Sur Amos Factory ils devaient sortir Amos 3 puis 2.1 avant, j’imagine que du travail été apporté par rapport à la version 2 notamment la corrrection de bugs.

                        Ton fork contient t’il ce qui a été fait avant ou repars t’il de la version de François?

                        AmiDARK

                          #339446

                          @Kamelito :
                          J’ai discuté avec l'<<AMOS Factory>> team et j’ai accès à leur travail (et tout ce qu’ils ont fait, c’est à dire beaucoup de choses (et je trouve ce qu’ils ont fait ‘extra’, mais je ne peux pas trop en parler). Ils veulent fournir une version « peanuts » (c’est à dire super bien travaillée et testée).

                          Mon travail sur l’AGA part de la version de marc365 (tu peux voir sur mon GIT : « forked from marc365/AMOSProfessional ». Je pense que c’est une version réorganisée de celle de François Lionet.

                          Cependant, mon travail devrait être présent dans la version de l'<<AMOS Factory>> team si tout va bien, lorsque cette dernière sortira. Enfin, c’est en gros ce qui a été décidé entre eux et moi … Je ne fais pas vraiment partie de leur équipe (car j’Aime bien être un électron libre), mais on partage beaucoup de choses… De mon coté mon objectif c’est le « challenge » que représente l’AGA… De leur côté c’est fournir une versions bien améliorée et au top en espérant pouvoir y inclure l’AGA.
                          Bon j’espère ne pas en avoir trop dit …

                          Voilou 🙂

                          Sodapop

                            #339453

                            Sympa cette inclusion de l’AGA !
                            Je trouvais ta vidéo pas très claire, au début je pensais que tu faisais un changement de palette en cours de balayage, avant de comprendre que c’était les 16 couleurs par playfields…
                            ça fait plaisir de voir qu’on s’interesse encore à améliorer ce beau soft ! Bravo !

                            A500 (1.3 / 2.0 / ACA500+) - A2000 - A1200

                            lexomil

                              #339465

                              Salut,

                              je lisais, au détour de leur forum (AMOS Factory), que le gros souci concernant un support « transparent » de l’AGA était l’incompatibilité des structures de données existantes et qui nécessiterai un gros « rework » du code. Tu le sens comment de ton coté ?

                              kamelito

                                #339468

                                Espérons que cela aboutisse côté AMOS Factory car cela fait longtemps qu’ils sont dessus.

                                AmiDARK

                                  #339475

                                  @Lexomil : C’est ce qui est étrange dans le code source de l’AMOS.
                                  Par exemple le support du 2x16couleurs a été très facile à ajouter sans me prendre la tête.. Juste à gérer le fait que le bit BPU3 qui gère le mode 8 bitplans n’est pas consécutifs des bits BPU0 à BPU2 … Donc faire une condition pour cela :

                                      cmp.w    #8,d2             ; If 8 bitplanes are requested, we directly set byte #4 of d2
                                      blt     sevenOrLowerDPF ; Less than 8 bitplanes, jump to classical way of shifting bytes to set BPU0-2
                                  heightBitPlanesDPF:
                                      move.w #16,d2             ; Set byte 04 ( BPU3 ) to 1 and others (BPU0-2) to 0 to define 8 bitplanes
                                      bra.s continueDPF
                                  sevenOrLowerDPF:            ; if less thab 8 bitplanes are requested, we use the default Amos calculation as it fit
                                      lsl.w    #8,d2           ;  in BPU0-1-2 bytes 12-13-14 in BPLCON0 16 bits register
                                      lsl.w    #4,d2             ; As lsl.w handle max of 8, to shift by 12 AMOS must to 2 Lsl.w calls.
                                  continueDPF:                ; 2019.11.03 End of upgrade to handle BPU3 for 8 Bitplanes mode.
                                  

                                  Puis gérer le mode BplCon3 en plus pour la palette de couleur du 2nd écran …
                                  Ainsi que quelques modifications mineures dans le code source.

                                  L’AMOS utilise des variables qui sont censées d’après leur utilisation et leur nom, permettre d’ajouter plus de bitplans:

                                  EcMaxPlans	equ		6	;	6 Plans pour le moment!
                                  ...
                                  EcLogic:	rs.l 6		* 
                                  EcPhysic	rs.l 6		* 
                                  EcCurrent:	rs.l 6		* 
                                  

                                  Cependant la modification de ces derniers provoque un crash dans l’Editeur…. Je subodore donc que des références « relatives » d’un objet à l’autre (à la suite) sont utilisées à certains endroits du code au lieu d’utiliser les références directes
                                  genre

                                  Move.l D0,#EcLogic(a0,d2)
                                  

                                  où d2 pointe dans EcPhysic par décalage d’adresse au lieu d’utiliser directement #EcPhysic…

                                  Sinon, pour contrecarrer ces biais dans le code source, j’ai en idée une approche originale qui m’évitera de réécrire tout le moteur… Je vous en dirais plus plus tard si ça avance 😉

                                  @+

                                15 sujets de 1 à 15 (sur un total de 53)

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

                                Forums AmigaOS, MorphOS et AROS Développement AMOS Professional 'améliorations'… C'est possible ?

                                Amiga Impact