Niestety m64py nie było dla mnie działającym rozwiązaniem, a „próby i błędy” są zbyt kłopotliwe. Oto rozwiązanie, z którego powinien korzystać każdy, kto obecnie korzysta z mupen64plus, z interfejsem GUI lub bez niego.
Będziesz potrzebował narzędzia jscaldo kalibracji joysticka, aby ustalić, który przycisk jest który. Aby uzyskać pomoc na ten temat, zobacz Fora Ubuntu - Gry i rozrywka - HOWTO: Joystick / Gamepady w Ubuntu
Zakładając, że masz skonfigurowaną konfigurację, a joystick jest już prawidłowo skalibrowany, wystarczy uruchomić jstest-gtk /dev/input/js0 &, gdzie js0jest plik kalibracji dla urządzenia, które obecnie testujesz.
Zobaczysz GUI dla ponumerowanych osi i przycisków. Wygląda to mniej więcej tak:

Teraz możesz nacisnąć przycisk na kontrolerze, aby zobaczyć, z którą osią lub przyciskiem odpowiada.
Zastosowanie niestandardowej konfiguracji kontrolera do mupen
ZlokalizujInputAutoCfg.ini
Uruchom locate InputAutoCfg.ini. Dla mnie to jest w katalogu /usr/share/games/mupen64plus/InputAutoCfg.ini.
Otwórz InputAutoCfg.iniw preferowanym edytorze tekstu.
vim /usr/share/games/mupen64plus/InputAutoCfg.ini.
Znajdź swoje urządzenie i edytuj ustawienia.
Możesz dowiedzieć się, które urządzenie jest używane przez mupen, uruchamiając mupen64plusi sprawdzając informacje wejściowe wydrukowane na twoim terminalu.
Mój mówi Input: N64 Controller #1: Using auto-config with SDL joystick 0 ('Generic X-Box pad'). Dla mnie ustawienia znajdują się pod [Generic X-Box pad].
Zapisz / zapisz zmiany w pliku, a zmiany powinny zostać zaimplementowane przy następnym uruchomieniu mupen64plus.
Po kilku zmianach mój wygląda następująco:
[Generic X-Box pad]
plugged = True
plugin = 2
mouse = False
AnalogDeadzone = "4096,4096"
AnalogPeak = "32768,32768"
DPad R = "hat(0 Right)"
DPad L = "hat(0 Left)"
DPad D = "hat(0 Down)"
DPad U = "hat(0 Up)"
Start = "button(7)"
Z Trig = "button(4)"
B Button = "button(2)"
A Button = "button(0)"
C Button R = "axis(3+)"
C Button L = "axis(3-)"
C Button D = "axis(4+)"
C Button U = "axis(4-)"
R Trig = "button(5)"
L Trig = "axis(2+)"
Mempak switch = "axis(5+)"
Rumblepak switch = "button(2)"
X Axis = "axis(0-,0+)"
Y Axis = "axis(1-,1+)"
Używając jstest, powinieneś być w stanie dowiedzieć się, jak chcesz skonfigurować InputAutoCfg.iniustawienia wejściowe za pomocą słów zdarzeń wejściowych .
Czasami pomaga przyjrzeć się układowi kontrolera N64, aby dowiedzieć się, jakie parametry zamierzasz zmapować.
