configurer reicast suite à remapping GPIO
-
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 !
-
Je pense que ce sontnles valeurs données par evtest
Utilise evtest pour verifier
@Substring -
@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 ? -
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
-
@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'axisLes 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
-
@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" ? -
@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
-
@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 ? -
@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
-
@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
!
-
@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 ...
-
@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"....
-
@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 RC'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.