
У меня очень странная проблема на моей машине Arch Linux. Ну, она у меня уже пару лет, но так как я не очень часто пользуюсь джойпадами, то просто проигнорировал ее в первый раз. Это очень странная проблема, так что читайте внимательно.
Некоторое время назад я пытался использовать свой пад Xbox 360, чтобы играть в некоторые старые игры PSX на эмуляторах (не волнуйтесь, это были оригинальные диски). Когда я пытался настроить пад (используя модуль ядра xpad), эмулятор (PCSX, работающий изначально) продолжал сообщать мне, что правый триггер удерживается нажатым, что делало настройку других клавиш невозможной (поскольку каждая клавиша, которую я пытался настроить, продолжала назначаться на правый триггер).
Я попробовал другой эмулятор, ePSXe, работающий под Wine (а затем ePSXe native), и столкнулся с той же проблемой. В этот момент я уже был крайне подозрителен, я использую оригинальный, отлично работающий проводной контроллер Xbox 360 и xpad, который используют все остальные, почему бы ему не работать? Тем не менее, я не сдался и попробовал альтернативные решения, такие как драйвер пользовательского пространства xboxdrv. Безуспешно. Затем я сдался, так как не хотел терять сон из-за этого.
Недавно я купил USB-адаптер для контроллеров PS2. Я подключил его, попытался настроить на эму и... что? Они все время говорят мне, что кнопка R2 (которая находится в том же положении, что и правый триггер контроллера X360) нажата! Каковы шансы, что два полностью рабочих контроллера дадут одну и ту же проблему при использовании разных драйверов и разного программного обеспечения? По крайней мере, теперь ясно, что это не программное обеспечение падов X360 или xpad или эмулятора.
Исключив всех этих подозреваемых, я могу придумать только одно объяснение: модуль джойпадов ядра испорчен. Но я никогда не трогал файлы конфигурации, касающиеся джойпадов, а мое ядро — это стандартное ядро из репозиториев Arch Linux. Можете ли вы помочь мне с моей проблемой? Я потратил много времени и денег на эту конкретную проблему.
Почему он всегда определяет одну и ту же клавишу (правый триггер/R2), даже если эти клавиши технически разные, поступающие с разных джойпадов с разными драйверами (хотя я думаю, что xpad просто «транслирует» ввод для модуля джойпадов ядра)? Имейте в виду, что другие клавиши работают правильно, мне однажды удалось назначить их вручную, и каждая из них работала, пока я не назначил правый триггер/R2 какой-либо функции.
Почему это не работает у меня, если я не использую модифицированное ядро и никогда не трогал файл конфигурации, относящийся к джойпаду? Кто-нибудь еще сталкивался с этой проблемой? Я даже не знаю, что вводить в поисковике. Большое спасибо за чтение.
решение1
Похоже, проблема связана с модулями xpad, но проблема заключается лишь в том, что они могут не распознать ваш контроллер(ы), из-за чего они перейдут в режим «неизвестного контроллера».
Вы можете изменить работу модуля с помощью трех параметров:
+dpad_to_buttons: Сопоставьте D-PAD с кнопками, а не с осями для неизвестных пэдов
+триггеры_к_кнопкам: Сопоставьте триггеры с кнопками, а не с осями для неизвестных площадок
+sticks_to_null: Не картируйте палки для неизвестных площадок
Добавляя/изменяя строку в файле в/etc/modprobe.d, вы можете установить/сбросить эти параметры.
Создать файл в/etc/modprobe.d, он ДОЛЖЕН заканчиваться на '.conf', в противном случае он не будет распознан как файл конфигурации.
В этом файле поместите следующую строку:
options xpad {option} [{option}...]
Добавьте или удалите опции по желанию. Я бы рекомендовал закомментировать (#) строку, если в списке нет ни одного параметра, или просто удалите файл полностью.
Вам, скорее всего, придетсярммод the xpadмодуль, затеммодпробчтобы перезагрузить его с новыми опциями.
Если параметры не распознаются, вам может потребоваться запуститьdepmod -aдля перестроения таблиц зависимостей модулей.
Вы можете увидеть, какие параметры действительны для модуля с помощьюмодинфокоманда.