Prima di tutto occorre conoscere la scheda audio (e il relativo chip) a disposizione. Apriamo quindi la nostra sessione terminale:
# lspci | grep audio
otterremo l'elenco delle periferiche audio connesse al bus PCI. Nel nostro caso abbiamo un chip C-Media 8738:
02:0d.0 Multimedia audio controller: C-Media Electronics Inc CM8738 (rev 10)
Successivamente dobbiamo capire quale driver il nostro sistema usi per sfruttarla:
$ lsmod | grep snd_
Individuiamo il modulo relativo al chip audio (si chiamerà probabilemnte snd_modello) che nel nostro caso è snd_cmipci (chip CM8738). A questo punto:
# gedit /usr/share/doc/alsa-base/driver/joystick.txt
E individuiamo il nostro chip nell'elenco. Ora occorre installare i tools per il test e la calibrazione del joystick (ossia le joystick testing utilities):
# apt-get install joystick
e, se si desidera un interfaccia grafica per la calibrazione, anche:
# apt-get install jscalibrator
Attivare la porta game
Se abbiamo una scheda audio retail la porta game dovrebbe essere già attivata e si può pertanto passare direttamente alla sezione successiva della guida. Nel caso di chip audio integrato, invece, dobbiamo fare in modo che il driver ALSA possa attivare la gameport.
Leggiamo la riga del file joystick.txt relativa al modulo cmipci (che è quello specifico del chip) CM8738. Per altri chip fate riferimento alla riga del relativo modulo):
cmipci joystick_port 0 = disable (default), 1 = auto-detect,
manual: any address (e.g. 0x200)
significa che per attivare la porta game bisogna passare al modulo cmipci (snd-cmipci) l'opzione joystick_port=1
torniamo al terminale
# gedit /etc/modprobe.d/options
Aggiungiamo la riga
options snd-cmipci joystick_port=1
questo farà sì che al boot il modulo cmipci venga caricato con la gameport attivata.
Salviamo e riavviamo (con il joystick connesso).
Caricare moduli nel kernel
Ora dovremmo avere la porta attiva e non ci resta che caricare nel kernel i moduli necessari. Considerate che il joystick viene rilevato solo quando vengono caricati i moduli e quindi bisogna che a questo punto sia già connesso. Se disconnette e riconnettete il joystick, sappiate che bisognerà scaricare e ricaricare i moduli perchè venga rilevato e venga creato il nodo js0 in /dev/input.
# modprobe joydev
# modprobe analog
per un joystick generico. I moduli specifici per altri joystick li trovate in fondo a questa guida.
Io posseggo un MS Sidewinder e quindi invece del modulo analog caricherò:
# modprobe sidewinder
Se invece abbiamo una scheda retail non serve passare l'pzione, ma dobbiamo caricare il modulo ns558, se non è già presente (controlliamo con lsmod).
# modprobe ns558
A questo punto in \dev\input\ dovrebbe essere comparso un nuovo nodo js0 il che significa che il sistema “sente” il joystick.
Controlliamo:
$ jstest /dev/input/js0
Il comando ritornerà una serie di valori numerici per gli assi e per i bottoni del joystick. Possiamo già verificare come i valori cambino se muoviamo il joystick o i tasti. Il joystick funziona.
ctrl+c per interrompere e tornare al prompt
# gedit /etc/modules
Qui vediamo i moduli che vengo caricati al boot. Aggiungiamo quindi le seguenti due (o tre) righe
ns558 (inserite questa riga solo se avete una scheda retail ed il vostro driver non lo carica di default)
joydev
sidewinder (oppure analog o altro a seconda della periferica)
Salviamo. Un bel riavvio per testare se tutto parte a dovere a questo punto non guasta. Riavvio o no, non resta che calibrare il joystick con
$ jscal /dev/input/js0
oppure con la più comoda GUI
$ jscalibrator
Ricordate di salvare il file di calibrazione.
In /lib/modules/2.6.22-14-generic/kernel/drivers/input/joystick sono presenti tutti i moduli per l'hardware supportato.
Informazioni sui driver
Sintetizzo di seguito le informazioni che ho trovato in giro, senza pretendere che possano essere esaustive.
Driver generico
La maggior parte dei joystick funziona (anche) con il modulo analog. Questo modulo in generale supporta joystick/gamepad
* 2-assi, 4-pulsanti
* 3-assi, 4-pulsanti
* 4-assi, 4-pulsanti
* CH Flightstick Pro, ThrustMaster FCS
Periferica Modulo Note
Microsoft Sidewinder sidewinder anche analog, limite 4 pulsanti
Logitech adi anche analog, limite 4 pulsanti
Gravis grip
FPGaming A3D-MadCatz A3D a3d
ThrustMaster DirectConnect tmdc
Creative Labs Blaster cobra
Genius Digital gf2k
InterAct Digital interact
Link esterni
Atre informazioni su moduli e periferiche compatibili potete trovarle. qui (informazioni in inglese)
Estratto da "
http://linux.p2pforum.it/wiki/Attivare_ ... porta_game"
Visite
* Voce
* Discussione
* Vedi sorgente
* Cronologia
Strumenti personali
* Entra o crea un nuovo accesso
Navigazione
* Home
* Ultime modifiche
* Una pagina a caso
* ToDo
* Aiuto
P2P Forum Italia
* Home Page
* GNU/Linux Forum
* Discussione sul Wiki
* Supporta P2Pforum
Siti amici
* Gnutella@P2PForum
* P2Panonimi
* Torrent Wiki
Ricerca
Strumenti
* Puntano qui
* Modifiche correlate
* Carica un file
* Pagine speciali
* Versione stampabile
* Link permanente
Powered by MediaWiki
the GNU Free Documentation License
* Ultima modifica per la pagina: 12:58, 2 feb 2008.
* Questa pagina è stata letta 1.309 volte.
* Contenuti soggetti a licenza d'uso the GNU Free Documentation License.
* Informazioni sulla privacy
* Credits
* Avvertenze