Cambio preferenza backend DualShock 4/Dualsense per Wine >= 9.1

Il ritrovo della comunità dove confrontarsi e discutere sulle notizie dal mondo dell'informatica, di Ubuntu e di tutto quello che la riguarda, novità, pettegolezzi e quant'altro.
Scrivi risposta
Avatar utente
Ubuntello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 585
Iscrizione: sabato 27 novembre 2010, 19:42

Cambio preferenza backend DualShock 4/Dualsense per Wine >= 9.1

Messaggio da Ubuntello »

Ciao a tutti,

segnalo che a partire da Wine 9.1, per i gamepad DualShock 4 e DualSense, adesso viene preferito il backend “hidraw”. In altre parole, ciò significa che questi controller, per impostazione predefinita, NON funzionano più con i giochi che supportano solo XInput (in quanto Wine non li farà più vedere come se fossero dei gamepad della Xbox 360). Può sembrare un passo indietro, ma è stato fatto per migliorare la compatibilità con alcuni giochi, in quanto permette a questi controller di funzionare esattamente come farebbero su Windows nei titoli che li supportano attraverso DInput (a patto che il vostro utente abbia i permessi necessari per il file "/dev/hidraw-numero" relativo al gamepad).

Come fare quindi se volete usare il vostro DualShock 4 o DualSense in un gioco come “Shantae and the Pirate's Curse” che supporta solo XInput? Vi basterà aggiungere e attivare la chiave di registro “DisableHidraw”:

Codice: Seleziona tutto

WINEPREFIX="/sostituite_con_prefisso-bottiglia_reale" wine reg add "HKLM\\System\\CurrentControlSet\\Services\\winebus" /v DisableHidraw /t REG_DWORD /d 0001 /f
e interrompere l'esecuzione di “wineserver” per quel prefisso, in modo da rendere valida la modifica la prossima volta che questo verrà avviato (ATTENZIONE però, così facendo tutti i programmi che avete attualmente in esecuzione in quel prefisso verranno chiusi):

Codice: Seleziona tutto

WINEPREFIX="/sostituite_con_prefisso-bottiglia_reale" wineserver -k
in questo modo verranno visti nuovamente come controller della Xbox 360, come accadeva nella versioni di Wine precedenti alla 9.1, e la cosa positiva è che, a differenza di Windows, non avrete bisogno di installare un wrapper (ad esempio X360CE).


Se voleste far funzionare nuovamente il vostro controller con DInput:

Codice: Seleziona tutto

WINEPREFIX="/sostituite_con_prefisso-bottiglia_reale" wine reg add "HKLM\\System\\CurrentControlSet\\Services\\winebus" /v DisableHidraw /t REG_DWORD /d 0000 /f
ricordandovi di interrompere l'esecuzione di wineserver come già spiegato, oppure chiudere manualmente tutti i programmi in esecuzione in quel prefisso e aspettare che non sia più in esecuzione prima di riavviarlo.


Chiaramente, se usate un solo prefisso per tutti i vostri giochi, dovrete fare la modifica alla chiave di registro ogni volta che passerete da un gioco che supporta esclusivamente XInput a uno che supporta il DualShock 4/Dualsense tramite DInput e che funziona meglio con quest'ultima API. Da questo punto di vista, tralasciando il possibile svantaggio dello spazio in più occupato, usare un prefisso dedicato per ciascun gioco è sicuramente più conveniente.

Nota: sebbene attualmente questo cambiamento interessi solo i gamepad sopracitati, è possibile e probabile che in versioni future di Wine avvenga lo stesso con altri controller popolari.
mednafen-it - Gruppo di utenti italiani dell'emulatore Mednafen | Retro games: hidden gems - top titles - genre guides | Recommended games | Configurazione giochi Windows: Wine Staging con esync (dalla 4.6), drive_c +F + DXVK + vkd3d-proton + patch force feedback e force-large-address-aware
Scrivi risposta

Ritorna a “Bar Ubuntu”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 4 ospiti