Eu notei o problema em d2x (uma porta de descida), que também usa o SDL, então fui pesquisar no SDL. testjoystick
da fonte do SDL também mostrou o problema. Olhando para o driver de joystick SDL linux , o problema é mencionado. Pesquise joydev_pattern
nesse arquivo e você verá o que eles estão fazendo; procure por calibrate
e eles mencionam esse problema. Basicamente, eles usam /dev/input/event6
(ou o que for) em preferência a /dev/input/js0
, a menos que compilado com --disable-input-events
, mesmo sabendo que o dispositivo de evento não pode ser calibrado (isto é, o conjunto de calibragem em js0
será ignorado). p>
Encontrando tudo isso, as pesquisas do Google que envolvem essa opção configure
revelam isso escondido nos comentários de um tutorial do Linux para fs2_open
, alguém já teve esse problema .
Eu tenho relatado este bug para o Ubuntu. Para contornar, escolha qualquer um dos:
- Defina
SDL_JOYSTICK_DEVICE=/dev/input/js0
(você pode colocar isso em/etc/environment
e reinicializar para aplicá-lo em todos os lugares). Editar: O SDL ainda terá o dispositivoevdev
como segundo joystick, portanto, em jogos comod2x
que respondem ao segundo joystick também por padrão, acesse a tela de opções e remova essas ligações extras . - Recompile libSDL com
--disable-input-events
. -
rmmod evdev
(muito provavelmente perderá qualquer dispositivo de entrada incomum que você tenha).