Recalbox Forum

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • recalbox.com
    • Gitlab repository
    • Documentation
    • Discord

    configurer reicast suite à remapping GPIO

    Manettes/GPIO/Encodeurs
    reicast remapping gpio
    3
    13
    5254
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • babastorm
      babastorm last edited by babastorm

      Bonjour à tous !

      Suite à un remapping des gpio de mon bartop (heu, oui...encore 😉 ) je cherche à re-configurer l'émulateur Reicast (si j'ai bien pigé, vu qu'il n'est pas issu de Retroarch, il ne prend pas en compte la config de mes boutons et doit donc être fait "à la main".

      Je pense avoir trouvé le bon fichier, soit "share/system/configs/reicast/controllerP1 ( etP2).cfg.

      on trouve dedans ceci :
      #########
      [compat]

      [emulator]
      mapping_name = GPIO Controller 1
      btn_escape = 314

      [dreamcast]
      btn_b = 307
      btn_a = 310
      btn_x = 305
      axis_trigger_left = 0
      btn_dpad1_up = 315
      btn_dpad1_down = 311
      btn_start = 304
      axis_trigger_right = 1
      btn_y = 308
      axis_x = 0
      #########

      quelqu'un sait'il à quoi correspondent les valeurs genre "314, 307, 310..." ?
      Existe t'il un tableau de concordance genre "Pin X == nombre Y" ?
      Dernier point, je vois que certains boutons sont déclarés en boutons "btn_" et d'autre en axe "axis_trigger_", peut-on changer un axe en boutons (genre "btn_right = xxx" au lieu de "axis_trigger_right = x" comme il à déjà été fait pour "btn_dpad1_down = 311" qui n'est pas déclarer en axis alors que c'en est un) ?

      Merci d'avance pour vos réponses, et bon week-end à tous !

      Substring 1 Reply Last reply Reply Quote 0
      • acris
        acris last edited by

        Je pense que ce sontnles valeurs données par evtest
        Utilise evtest pour verifier
        @Substring

        1 Reply Last reply Reply Quote 0
        • Substring
          Substring @babastorm last edited by

          @babastorm Yo

          Ma réponse va être d"sagréable, mais si tu te penches sur ce sujet, il faudrait d'abord que tu comprennes ce qu'est un bouton, un axe et un hat. Alors oui, cf evtest. Tu reproches quoi au mapping par défaut ?

          Former dev - Please reply with @substring so that i am notified when you answer me
          Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

          1 Reply Last reply Reply Quote 0
          • babastorm
            babastorm last edited by

            Salut @acris et @Substring , merci pour vos réponses !
            Tout me semblais (presque) limpide, mais tu débarque avec un hat...et du coup, j'en perd mon axe et mon boutons 😉 !

            Du coup, peut tu m'en dire plus sur ces trois termes ?

            J'ai fait un evtest, qui me ressort effectivement les "codes" des boutons enfoncé, à l’exception de ceux qu'il considère comme étant des axes, ou la je n'ai droit qu'à des valeurs positives ou négatives. ces valeurs sont-elles ""inscrites en dur " ainsi ou masquent t'elle" le code d'origine des axes ? (en gros, et en français que même moi je comprend, y a t'il quelques part dans un fichier un truc du style "300 = axis_y_1 , 301 = axis_y_0..."

            Pour le mapping par défaut, j'utilise une nappe genre IDE 40pin, et mes fils partent un à gauche, un à droite, puis re-un à gauche...bref, c'est pas super propre (oui, je sait, c'est au fond de ma borne et ça se vois pas...je me soigne pour ça 😄 ! ) et puis j'ai dans l'espoir de monter un truc prochainement en utilisant certains pin, du coup, ben faut que je comprenne le truc 🙂

            Substring 1 Reply Last reply Reply Quote 0
            • Substring
              Substring @babastorm last edited by

              @babastorm tu n'as pas à comprendre vu que recalbox cétautomatix ... Ca configure tes émulateurs en fonction de tes pads !

              Hat axis et button sont les 3 types d'événements pour un pad
              Hat = croix
              Axis = axe analogique
              Button = self explanatory
              Sauf que ... Ce n'est pas thrs aussi simple. Sur certains pad, la croix = 4 boutons, et sur certains sticks arcade (genre gpio), le stick qui n'a rien d'analogique renvoie de l'axis

              Les codes sont definis dans le kernel de linux. Mais c'est le.pad qui decide ce qu'il renvoie. Donc niveau harmonisation entre tous les pads existants, c'edt vraiment la foire du slip

              Former dev - Please reply with @substring so that i am notified when you answer me
              Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

              1 Reply Last reply Reply Quote 0
              • babastorm
                babastorm last edited by

                @substring said in configurer reicast suite à remapping GPIO:

                tu n'as pas à comprendre vu que recalbox cétautomatix ... Ca configure tes émulateurs en fonction de tes pads !...//.....Mais c'est le.pad qui decide ce qu'il renvoie. Donc niveau harmonisation entre tous les pads existants, c'edt vraiment la foire du slip

                Dis comme ça, on se demande si l’automatisation étais une bonne idée !
                ce qui me surprend dans ta réponse, c'est qu'un joystick n'est rien d'autre que 4 boutons. Du coup, pourquoi ne pas avoir crée une config du type "btn_left = xxx , btn_up = xxx" "au lieu d'intégrer des axes positif et négatif qui sème un peu la pagaille ?
                Y a t'il un code sous "axis_x 1" genre "300 ou 301..." ?
                Existe t'il un tableau de concordance genre "Pin X == nombre Y" ?

                Substring 1 Reply Last reply Reply Quote 0
                • Substring
                  Substring @babastorm last edited by

                  @babastorm s'ils sont là c'est parce que c'est nécessaire hein. Je t'invite à creuser un peu plus le sujet par toi-même avec https://www.kernel.org/doc/html/latest/input/gamepad.html pour commencer

                  Former dev - Please reply with @substring so that i am notified when you answer me
                  Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                  1 Reply Last reply Reply Quote 0
                  • babastorm
                    babastorm last edited by

                    @substring , je critique pas, j'essaie juste de comprendre au moins suffisamment pour me sortir de ce mauvais pas.
                    Merci pour le lien, j'y vois (un tout petit peu, on va pas se mentir) plus clair.
                    Si je suis bien, la gestion primaire des GPIO, et la conversion GPIO=>événement gamepad sont fournis par le kernel Donc, les GPIO renvoie un code (310, 307...) qui est converti ensuite soit en btn_, soit en axis_.
                    Il doit donc exister un genre de table de concordance du style GPIO xx = code xxx ?

                    Substring 1 Reply Last reply Reply Quote 0
                    • Substring
                      Substring @babastorm last edited by

                      @babastorm si tu disais clairement où tu veux en venir, parce que tu poses beaucoup de questions sans expliquer ce que tu veux faire au final. Et je suis convaincu que tu abordes ton problème sous le mauvais angle

                      Former dev - Please reply with @substring so that i am notified when you answer me
                      Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                      1 Reply Last reply Reply Quote 0
                      • babastorm
                        babastorm last edited by

                        @substring said in configurer reicast suite à remapping GPIO:

                        si tu disais clairement où tu veux en venir, parce que tu poses beaucoup de questions sans expliquer ce que tu veux faire au final.

                        En fait, c'est toujours là même question un peu reformulé, à laquelle je n'ai d'ailleurs toujours pas ma réponse 😄

                        Je pense que je vais lâcher l'affaire et retourné à la config initial. Dommage que la gestion des GPIO soit si restreinte, mais cela n'enlève rien à la splendeur de cet OS merveilleux 😉 !

                        Substring 1 Reply Last reply Reply Quote 0
                        • Substring
                          Substring @babastorm last edited by

                          @babastorm j'insiste : tu ne formules jamais le problème, mais uniquement la solution ue tu veux appliquer ... Donc à part savoir cimment s'écrivent les fichiers de mapping de reicast,tu ne detailles pas du tout pourquoi tu veux faire ça ...

                          Former dev - Please reply with @substring so that i am notified when you answer me
                          Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                          1 Reply Last reply Reply Quote 0
                          • babastorm
                            babastorm last edited by

                            @Substring , de mon coté, je pige pas bien le ton accusateur, vu que mon problème est décris dans mon premier post "Suite à un remapping des gpio de mon bartop (heu, oui...encore 😉 ) je cherche à re-configurer l'émulateur Reicast"....

                            Substring 1 Reply Last reply Reply Quote 0
                            • Substring
                              Substring @babastorm last edited by

                              @babastorm ce n'est pas accusateur, mes excuses si le ton en donne l'air

                              On donne une consigne sur le mapping et la position des boutons en arcade :
                              Y X L
                              B A R

                              C'est qu'il y a une raison 😉 ce schéma est l'essence même de toute configuration dans Recalbox, il vaut mieux que tu rentres dedans sinon tu t'exposes a de gros sushis pour le remapping ou pour la position "attendue" des boutons pour les émulateurs.

                              En général on procède inversement pour changer le mapping. Puisque retroarch représente 95% des émulateurs et offre diverses fonctions de remapping (dont le core remap quand le core le permet), c'est lui qu'on reconfigure prioritairement.

                              C'est pour ca que tu devrais présenter pleinement ta situation actuelle. Si tu veux par exemple remapper la PSP comme tu veux le faire avec la dreamcast, là c'est encore bien pire parce que PPSSPP a sa propre coiche d'abstraction, et depend de 2 fichiers de config dobt les valeurs sont extrêmement changeantes selon le type de pad.

                              A nouveau, si tu veux modifier le mapping de dreamcast, expose plus en détail le pk (ex : tu ne respectes pas l'ordre des boutons que j'ai donné, tu n'as mappé que 4 GPIO etc ...), tin explication est trop vague et ne permet pas de te proposer la meilleure solution pour ton cas.

                              Former dev - Please reply with @substring so that i am notified when you answer me
                              Ex dev - Merci de me répondre en utilisant @substring pour que je sois notifé

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              Want to support us ?

                              71
                              Online

                              99.6k
                              Users

                              28.1k
                              Topics

                              187.1k
                              Posts

                              Copyright © 2021 recalbox.com