Avanti Indietro Indice

3. Fare funzionare il vostro mouse .

Dal momento in cui conoscete il protocollo e l'interfaccia del vostro mouse,siete pronti a partire.

3.1 Settare gli interrupt del mouse .

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.

3.2 Inport e Logitech mouse.

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 ***

***************************************************

3.3 ATI-XL mouse.

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.

3.4 PS/2 mouse.

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 .

3.5 Compilazione del kernel.

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.

3.6 PS/2 mouse.

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.

Selection.

Rispondete ``y'' alla domanda

Selection (cut and paste for virtual consoles)

se volete riuscire ad eseguire il programma "selection" (vedi sezione selectionper maggiori dettagli).

3.7 I mouse "devices".

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.

Nota:

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

Nota:

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.

3.8 Proviamo il 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.


Avanti Indietro Indice