Recalbox Forum

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

    Tuto faire fonctionner Xbox 360 Filaire sous Retroarch (l2 et r2 compris)

    Recalbox Général
    tuto fonctionner xbox 360 retroarch compris
    3
    14
    4323
    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.
    • zool_80
      zool_80 last edited by

      Ensuite lorsque je lance recalbox puis l'emulateur snes puis dans les options de retroarch, toute la manette xbox 360 filaire est reconnue automatiquement et configurée automatiquement. J'ai essayé d'être le plus clair possible et de partager un maximum mais comme je suis une grosse quiche en informatique ça ne correspond peut être pas à vos attentes... Je reste disponible si nécessaire... Amitié à tous et encore merci d'avoir partagé le projet recalbox!

      1 Reply Last reply Reply Quote 0
      • digitaLumberjack
        digitaLumberjack Staff last edited by

        Salut, Dans la 3.29 en l'état les hats devraient marcher :

        input_state_slot_increase_btn = h0up

        type= »trigger »

        Cela ne marche pas avec les buttons ? Emulationstation te met le type trigger ? Tu utilise le mapping snes pour les touches alors ?

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

          Dans la 3.29 en l’état les hats devraient marcher : input_state_slot_increase_btn = h0up

          Je pense que oui, dans la version antérieure qui ne fonctionnait pas, la ligne était initialement celle-ci: input_state_slot_increase_btn = 0 C'est pour cette raison que j'avais rajouté/modifié la condition sur le "hat":

          if [[ ${retroarchspecials[$input]} ]]; then
          if [[ « $type » == « hat » ]];
          then
          echo « input_${retroarchspecials[$input]}_${typetoname[$type]} = h${id}${retroarchhat[$value]} » >> « $configfile »
          else
          echo « input_${retroarchspecials[$input]}_${typetoname[$type]} = $id » >> « $configfile »
          fi
          fi
          
          1 Reply Last reply Reply Quote 0
          • zool_80
            zool_80 last edited by

            Pour le type "trigger" que j'ai du rajouter cela vient de Retroarch/Emustation. Il semblerait que Retroarch classifie le trigger comme un axe mais qui à la différence des axes classiques (joypad par exemple) n'a qu'une valeur (positive ou négative au lieu des deux. Je m'explique cf fichier Microsoft X-Box 360 pad.cfg: Pour le joystick de gauche par exemple on a:

            input_l_x_minus_axis = -0
            input_l_x_plus_axis = +0
            input_l_y_minus_axis = -1
            input_l_y_plus_axis = +1
            

            Alors que pour les gachettes on aura (pour que cela fonctionne c'est à dire pour que l'autoconfiguration fonctionne) uniquement: input_l2_axis = +2 (Il n'y a plus le 'minus_' ou le 'plus_'). Un détail très important: le signe '+' devant le '2' est vital pour que l'autoconfiguration fonctionne. Pour que le script CreateRetroarchConfig.sh fasse la difference j'ai été obligé de créer le type 'trigger' et de rajouter la ligne:

            if [[ ${retroarchjoysticks[$input]} ]] && [[ « $type » == « trigger » ]];then
            echo « input_${retroarchjoysticks[$input]}_axis = +$id » >> « $configfile »
            fi
            

            Dans la ligne ci-dessus le point clef est le '_axis' et surtout pas autre chose d'où la difficulté de faire reconnaître correctement les gachettes. Bien entendu il faut aussi avoir modifié le fichier es_input.cfg de cette manière cf premier post de ce thread.

            <input name="triggerleft" type="trigger" id="2" value="1" />
            <input name="triggerright" type="trigger" id="5" value="1" />
            
            1 Reply Last reply Reply Quote 0
            • zool_80
              zool_80 last edited by

              Tu utilise le mapping snes pour les touches alors ?

              J'ai gardé les conventions que tu as choisi (pour conserver la cohérence) Pour clarifier: le bouton A (pad Xbox 360) qui a un code 0 devient sous Retroarch le bouton B (pad snes) le bouton B (pad Xbox 360) qui a un code 1 devient sous Retroarch le bouton A (pad snes) le bouton X (pad Xbox 360) qui a un code 2 devient sous Retroarch le bouton Y (pad snes) le bouton Y (pad Xbox 360) qui a un code 3 devient sous Retroarch le bouton X (pad snes) Cela se traduit dans le fichier es_input.cfg (le reste du fichier est au début de ce thread) par:

              <input name="a" type="button" id="1" value="1" />
              <input name="b" type="button" id="0" value="1" />
              <input name="x" type="button" id="3" value="1" />
              <input name="y" type="button" id="2" value="1" />
              

              Je suis en déplacement jusqu'a vendredi soir (sans accès au pi mais avec un accès au net). Je reste disponible si une partie n'est pas claire... Je me doute que c'est pas forcément évident! Amitié,

              1 Reply Last reply Reply Quote 0
              • digitaLumberjack
                digitaLumberjack Staff last edited by

                name="triggerleft" type="trigger"

                Je bloque la dessus. type="trigger" c'est toi ou emulationstation ? Faudrait vraiment que je me prenne une manette xbox360

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

                  <input name="triggerleft" type="trigger" id="2" value="1" />
                  <input name="triggerright" type="trigger" id="5" value="1" />
                  <input name="joystickrightleft" type="axis" id="3" value="-1" />
                  <input name="joystickrightup" type="axis" id="4" value="-1" />
                  

                  C'est moi qui ait rajouté à la main ces 4 lignes dans le fichier. Le reste est généré d'office dans recalbox (par l'un de tes scripts ou par emulationstation, je ne saurai dire...). Par contre je n'ai aucune idée de la manière dont est généré initialement le fichier es_input.cfg? Ni comment fonctionne l'interface que tu as développé pour configurer manuellement les manettes dans emulationstation... C'est la raison pour laquelle j'ai rajouté manuellement les 4 lignes dans es_input.cfg. Ps: Lorsque l'on fait un copié coller sans la balise 'code', le site recalbox change les double cotes (touche 3 du clavier au dessus du 'e' en double chevron >>. (cf ton post du dessus) Donc attention à ceux qui voudront faire des copier coller des lignes de codes dans leurs propres fichiers... Amitié,

                  1 Reply Last reply Reply Quote 0
                  • digitaLumberjack
                    digitaLumberjack Staff last edited by

                    <input name="pagedown" type="button" id="2" value="1" />

                    Et avec ca ca passais pas ? J'ai pas eu vent de probleme avec les L1 et R1.

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

                      Le type "button" passera pour L1 et R1 car après le passage par la moulinette CreateRetroarchConfig.sh ils ressortiront en: input_r_btn = 5 input_l_btn = 4 Cette appellation correspond à celle attendue par Retroarch et donc ils seront configuré automatiquement. C'est donc normal que ça fonctionne pour L1 et R1. Par contre le type "button" ne passera 'jamais' pour L2 et R2 car ils apparaitraient alors après passage de la moulinette CreateRetroarchConfig.sh en: input_l2_btn = ??? Alors que Retroarch attend l'entrée suivante: input_l2_axis = +2 C'est le '_axis' qui permet la bonne configuration automatique par Retroarch.

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

                        Bonjour, est-ce qu'il serait possible d'avoir le fichier  CreateRetroarchConfig en attachement pour pouvoir comparer avec le mien?   Merci d'avance!

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

                        Want to support us ?

                        83
                        Online

                        99.6k
                        Users

                        28.1k
                        Topics

                        187.1k
                        Posts

                        Copyright © 2021 recalbox.com