J'ai le bureau ergonomique Microsoft Sculpt (clavier + souris) et cela crée des problèmes majeurs dans certains jeux avec prise en charge de la manette de jeu car le joystick virtuel inexistant rend l'entrée folle. Si je lance rmmod joydev
le problème est résolu, mais j'ai une vraie manette de jeu et une vraie roue motrice et je veux les utiliser comme contrôleurs d'entrée dans les jeux. Alors, comment puis-je désactiver uniquement le joystick virtuel Sculpt sans tuer le support du contrôleur de jeu?
$ udevadm info --attribute-walk/dev/input/js
http://i.imgur.com/sAiQXAR.png - jstest-gtk screenshot
La solution de contournement est ici: https://forum.manjaro.org/index.php?PHPSESSID=edmjqlp8356fi33uc12ag0hfj0&topic=15275.msg144519#msg144519
Les bugs sont là:
La solution temporaire de force brute consiste simplement à renommer/supprimer les fichiers de l'appareil, à savoir:
rm /dev/input/js0
mv /dev/input/js1 /dev/input/js0
Notez cependant que la plupart des jeux modernes n'utilisent pas le /dev/input/js0
interface du tout, vous devrez donc prendre soin de /dev/input/eventX
fichiers également. Vous pouvez utiliser evtest
pour savoir quel appareil est votre clavier et joystick. Au prochain redémarrage, les appareils seront de retour dans leur ancien ordre.
Une autre méthode légèrement moins brutale est via la variable d'environnement:
SDL_JOYSTICK_DEVICE="/dev/input/js1"
export SDL_JOYSTICK_DEVICE
Cela oblige les jeux basés sur SDL à utiliser js1 au lieu de js0. Je ne pense pas que cela fonctionnera avec les jeux modernes basés sur SDL2 et cela ne fonctionnera que pour un seul joystick/gamepad, donc son utilisation est limitée.
SDL2 offre une option pour configurer un joystick et des boutons de remappage, mais je ne pense pas qu'il dispose d'une fonction pour réorganiser les appareils pour le moment.
Et enfin il y a aussi la méthode "clean" en écrivant une règle udev, cela fera essentiellement la même chose que le hack rm
/mv
, mais en permanence. Ces règles vont à /etc/udev/rules.d/
et des tutoriels pour les écrire peuvent être trouvés éparpillés sur le net, peut-être que cela vous aidera, je ne sais pas si c'est à jour: