Dal momento in cui conoscete il protocollo e l'interfaccia del vostro mouse,siete pronti a partire.
Ora, dovrete conoscere il numero di interrupt che usa il vostro mouse , ed assicurarvi che non entri in conflitto con nessun'altra periferica installata nel sistema . Dovrete assicurarvi che il vostro mouse non tenti di usare un interrupt in uso da un altro devices --- non e` possibile per il mouse di "share" (spartire) un interrupt sotto Linux, anche se dovesse funzionare con altri sistemi operativi . Controllate la documentazione di tutte le periferiche per vedere quali sono gli interrupt in uso. Nella maggior parte dei casi l'IRQ4 viene usato dalla prima porta seriale (/dev/ttyS0
), IRQ3 per la seconda (/dev/ttyS1
) (questo, considerando che voi abbiate i devices --- se non li avete potrete usare gli interrupt allegramente), e l'IRQ5 per alcune schede SCSI . Noterete che per i mouse ATI-XL, Inport e Logitech l'assegnazione di default del kernel e` l' IRQ5, cosi se dovete usare un kernel precompilato (eg, utenti CD-ROM ) dovrete usare quello.
Se aprite lo chassis del vostro computer e controllate la scheda alla quale e` collegato il vostro mouse, dovreste vedere una serie di "jumpers" sulla scheda stessa (speriamo marcati ``INTERRUPT'') con le diverse posizioni per gli interrupt (conosciuti anche come IRQ) numero 2,3,4 e 5. Per cambiare l'interrupt semplicemente spostate il jumper dalla sua posizione al paio di pin di riferimento.
*************************************************** *** ASSICURATEVI CHE IL COMPUTER SIA SPENTO*** *** PRIMA DI LAVORARE ATTORNO AI JUMPERS ***
***************************************************
I mouse ATI-XL hanno la possibilita` di selezionare l'IRQ via software - dovreste avere ricevuto con il mouse il programma MS-DOS (VSETUP.EXE
) per settare gli IRQ. Per fare questo dovrete (temporaneamente) eseguire il boot MS-DOS ed eseguire questo programma. Noterete che il programma VSETUP propone un parametro ``/70'' per aumentare il refresh rate verticale (che causa minor flickering). Il programma VSETUP vi permette inoltre di selezionare sia l'indirizzo, del mouse, primario sia quello secondario - dovrete settarlo a quello primario altrimenti il kernel non trovera` il mouse . Dal momento in cui avrete eseguito VSETUP eseguite un reset a caldo per fare in modo che la nuova configurazione sia effettiva.
Il mouse PS/2 usa sempre l'IRQ12 -- non c'e` modo di cambiarlo(escludendo l'acquisto di un arma.) Nel raro caso che qualche altro device usi l'IRQ12, dovrete settare i jumper di quella periferica su un altro IRQ .
Per permettere al vostro mouse di funzionare correttamente avrete bisogno di ricompilare il kernel aggiungendovi il supporto per il busmouse . Cambia directory posizionandoti nella principale del kernel (dovrebbe essere/usr/src/linux) ed esegui un :
make config Se non sei sicuro del tuo tipo di mouse , la prima volta che ricompilerai il kernel dovrete abilitare tutte le opzioni per il busmouse nella speranza che il kernel trovi automaticamente il vostro mouse . Alcuni hanno avuto successo con questa operazione: non funziona sempre, ma vi salvera` da altre successive ricompilazioni.
Inport, Logitech e ATI-XL mouse.
Rispondi ``y'' alla domanda riguardante l'interfaccia per il busmouse e ``n'' a tutte le altre domande sul busmouse. Per esempio , se avete un mouse Inport dovete rispondere ``y'' a
Microsoft busmouse support
e ``n'' a tutte le altre domande sul busmouse . Rispondete alle domande non attinenti al mouse come avete sempre fatto . Se avete un Logitech o Inport mouse, editate il file /usr/src/linux/include/linux/busmouse.h e cambiate la linea che riporta :
#define MOUSE_IRQ 5
in modo da rispecchiare il numero di interrupt del vostro mouse (vedi la sezione "setting the mouse interrupt" per i dettagli su come trovare il numero di interrupt). Se avete un mouse ATI-XL , editate il file /usr/src/linux/drivers/char/atixlmouse.c e cambiate la linea che riporta:
#define ATIXL_MOUSE_IRQ 5
assegnando l'interrupt esatto. A causa della varieta` di architetture PC , se dovete assegnare al vostro mouse l'interrupt 2, dovrete inserire la linea #define to use interrupt 9. Esempio:
Per un mouse su interrupt 3, la linea diventa
#define MOUSE_IRQ 3
Per un mouse su interrupt 2, la linea diventa
#define MOUSE_IRQ 9
Adesso, compilate il kernel seguendo le istruzioni normali,e reboottate la macchina con il nuovo kernel. Dovreste avere il supporto per il busmouse correttamente compilato.
Per compilare il kernel conil supporto per il mouse PS/2 rispondete ``y'' alla domanda :
PS/2 mouse (aka "auxiliary device") support
Il driver del mouse PS/2 supporta 2 tipi di devices: lo "standard PS/2 Auxiliary Device controller" ed una speciale interfaccia chip per il mouse PS/2 della "Chips & Technologies" che viene montata sui laptops Texas Instruments Travelmate e Gateway Nomad . Per compilare il supporto per la trackballs su quei computers, rispondi ``y'' a :
C&T 82C710 mouse port support (as on TI Travelmate)
Notate che dovete rispondere sempre ``y'' alle domande circa il driver standard PS/2 per avere la possibilita` di rispondere anche a questa domanda , da quando il driver 82C710 e` diventato un add-on e standard al driver del mouse PS/2 . Se configurato sia con lo standard PS/2 ed il device 82C710 , il driver tentera` prima di trovare l' 82C710 al momento del boot. Se fallisce, il driver standard verra` usato al suo posto, quindi usando un kernel configurato per ambo le interfaccie su una macchina con un mouse standard PS/2, funzionera` ugualmente. Al contrario, c'e` stata fatta menzione di un autodetect di un falso chip 82C710 , quindi per mettervi al sicuro non configurate il kernel per il chip 82C710 se non ne avete bisogno. Compilate il kernel come sempre ed eseguite il reboot.
Rispondete ``y'' alla domanda
Selection (cut and paste for virtual consoles)
se volete riuscire ad eseguire il programma "selection" (vedi sezione selectionper maggiori dettagli).
I mouse sotto Linux sono accessibili via devices
nella directory /dev
. La seguente tavola propone una lista dei tipi di interfaccia ed i relativi device da usare.
INTERFACE DEVICE MAJOR MINOR --------------------------------------------- Logitech /dev/logibm 10 0 PS/2 /dev/psaux 10 1 Inport /dev/inportbm 10 2 ATI-XL /dev/atibm 10 3
Table 1. Mouse devices.
Se state usando il mouse ATI-XL con il driver Inport , dovte usare il device /dev/inportbm
, e non il device /dev/atibm
.
Le "major e minor entries" sono i numeri dei device per quel particolare device. Se trovate che non avete quel device , dovrete prima crearlo. Per farlo, eseguite questi comandi come utenti root.
mknod /dev/logibm c 10 0 mknod /dev/psaux c 10 1 mknod /dev/inportbm c 10 2 mknod /dev/atibm c 10 3
Alle volte (sempre meno) nella storia di Linux i nomi dei devices per il busmouse sono cambiati. I seguenti device sono stati rinominati da quelli di cui sopra : bmousems, bmouseps2, bmouseatixl, bmouselogitech
.
Alcune persone preferiscono creare un link simbolico dai loro "mouse device" a /dev/mouse
cosicche` non devono ricordarsi il nome del device di cui hanno bisogno. Se avete una delle versioni correnti delle distribuzioni di Linux dovreste accorgervi che quel link esiste gia`. Se ce l'avete , o ne create uno, assicuratevi che punti al device corretto riferito al vostro mouse.
Prendete il file selection-1.6.tar.gz
dal vostro sito locale ftp di Linux ftp e compilate il programma ``test-mouse'' all'interno del pacchetto, seguendo le istruzioni(dovete scrivere ``make test-mouse''). Eseguite il programma in questa maniera
test-mouse -t <mouse arg> -m <mouse dev>
dove <mouse arg> e` ``bm'' (senza le virgolette) se usate il protocollo BusMouse , o ``ps2'' se usate il protocollo PS/2 , e <mouse dev> e` il nome del device del mouse in base alla tavola 1. Se il mouse funziona correttamente, dovreste riuscire a disegnare sullo schermo schiacciando o il tasto destro o quello sinistro e portando a spasso il mouse per lo schermo. Premete i pulsanti destro/sinistro simultaneamenteper uscire dal programma.