Udev

如何阻止我的控制器移動我的(滑鼠)指針?

  • July 16, 2020

我正在使用基於 Debian 的 antix17。我將 lightdm 與 kde greeter、IceWM 用於視窗管理器和 x 顯示伺服器一起使用。我的控制器是 PS2 仿製品,我用 USB 適配器將它連接到 PC。適配器有兩個埠用於兩個控制器,因此,電腦始終認為有兩個控制器連接,而不管電腦實際連接了多少控制器。

現在,談問題。我的控制器可以直接與我的滑鼠互動。我可以用操縱桿移動它,我可以按一些按鈕來模擬點擊。這是不受歡迎的行為,因為它會在我真正想玩遊戲時引起問題。在嘗試了一段時間後,我設法讓 RetroArch 在這台舊 PC 上執行,但它存在控制器問題。在菜單上,我似乎得到了雙重輸入。當我進入一個菜單時,我看到我認為是我輸入的子菜單的快速閃現,然後我回到我開始選擇第一個選項的地方。這使得 RetroArch 上的控制器導航變得不可能,因為我無法進入子菜單。此外,移動滑鼠的搖桿使我可以到達螢幕底部並將工作列呈現在遊戲頂部,使其失去焦點。迄今為止最大的問題是使用兩個玩家模式時。這兩個控制器似乎以某種方式聯繫在一起。例如,在一個平台遊戲中,我按下了跳躍按鈕,這使得兩個角色都跳躍,當我在另一個控制器上按下跳躍時發生了同樣的事情。我嘗試了另一個遊戲,這次只有第二個控制器讓兩個角色都跳了起來。D-pad 似乎是獨立的。

我不知道這是如何工作的,我正在失去理智。順便說一句,RetroArch 上的驅動程序設置為 udev,我嘗試了更多,但沒有解決任何問題。不管那是什麼,我似乎都在使用eudev。

有人可以幫我解決這個問題嗎?*nix 環境中的控制器是我真正應該學習如何配置的東西。

來自Archlinux 維基

如果您想使用控制器玩遊戲,您可能需要禁用滑鼠游標上的操縱桿控制。為此,請編輯 /etc/X11/xorg.conf.d/51-joystick.conf(如果不存在則創建),使其如下所示:

> /etc/X11/xorg.conf.d/51-joystick.conf

Section "InputClass"
        Identifier "joystick catchall"
        MatchIsJoystick "on"
        MatchDevicePath "/dev/input/event*"
        Driver "joystick"
        Option "StartKeysEnabled" "False"       #Disable mouse
        Option "StartMouseEnabled" "False"      #support
EndSection

引用自:https://unix.stackexchange.com/questions/598752