Giocare con wsmoused(8)

Da Wiki di NetBSD Italia.

(Differenze fra le revisioni)
m (Rendere permanente l'utilizzo di {{man|moused|8}}: concludo questa sotto-sezione, concludero' l'intero tutorial domani, buonanotte a tutti! :-))
(in arrivo la parte interessante...)
Riga 29: Riga 29:
-
== Configurazione del mouse ==  
+
== Configurazione ==  
=== {{man|moused|8}} ===
=== {{man|moused|8}} ===
Per gestire il mouse seriale abbiamo bisogno di utilizzare {{man|moused|8}}.
Per gestire il mouse seriale abbiamo bisogno di utilizzare {{man|moused|8}}.
Riga 66: Riga 66:
  [...]
  [...]
 +
== Utilizzo ==
 +
A questo punto ad ogni avvio possiamo utilizzare il mouse come un qualsiasi
 +
mouse, volendo anche contemporaneamente ad altri mouse.
 +
Ma questo non è quello che vogliamo.
 +
 +
=== Che cosa vogliamo farci? ===
 +
Noi vogliamo mappare ai due tasti del mouse diverse azioni. Come esempio
 +
vogliamo che alla pressione del tasto sinistro si spegne il monitor e con la
 +
pressione del tasto destro si riaccenda. Per raggiungere questo scopo
 +
utilizzeremo {{pkg|sysutils|vbetool}}.
 +
 +
=== Rendere il mouse un non-mouse ===
 +
Vogliamo utilizzare solo i due tasti del mouse, perciò dobbiamo assegnare al
 +
nostro mouse un altro {{man|wsmux|4}}. Spulciando la man page
 +
{{man|wsmux|4}} che ''/dev/wsmux0'' è dedicato
 +
ai mouse e ''/dev/msmux1'' alle tastiere possiamo assegnare ''/dev/wsmux2'' ai
 +
non-mouse, quindi utilizziamo l'opzione ''-W'' di {{man|moused|8}} editando
 +
''rc.conf'':
 +
 +
[...]
 +
moused=YES      moused_flags="-p /dev/tty00 -t microsoft -W /dev/wsmuxctl2 -3"
 +
[...]
 +
 +
Abbiamo aggiunto anche l'opzione ''-3'' in modo tale da simulare il terzo
 +
tasto quando premiamo contemporaneamente due tasti.
 +
 +
Ora riavviamo moused:
 +
 +
# /etc/rc.d/moused restart
 +
 +
Se le nostre configurazioni sono giuste ora il puntatore del mouse '''non'''
 +
dovrebbe muoversi più (come abbiamo detto sopra infatti i mouse devono avere
 +
come multiplexor ''/dev/wsmux0'' mentre noi utilizziamo ''/dev/wsmux2'').
 +
 +
=== Assegnare le azioni ===
[[Categoria:Tutorial]]
[[Categoria:Tutorial]]

Versione delle 06:49, 1 giu 2008

Questo articolo è solo un abbozzo, contribuisci a migliorarlo secondo le convenzioni di NetBSD-it mettendo a disposizione le tue conoscenze. La comunità te ne sarà grata!

In questo breve articolo impareremo come grazie a NetBSD è possibile recuperare hardware inutilizzato e considerato da certi sistemi operativi obsoleto, in particolare un vecchio mouse seriale.

Il mouse seriale però verrà utilizzato in una maniera non convenzionale, cioè non lo utilizzeremo come un mouse ma come una specie di telecomando, tutto grazie a wsmoused(8)!


Indice

La nostra situazione

L'hardware dimenticato

Che con NetBSD possiamo recuperare vecchio hardware dimenticato in soffitta non è di certo una novità.

Un altro mouse?

Nel nostro caso recupereremo un mouse seriale. Nella macchina in cui aggiungeremo il mouse però è presente già un altro mouse. Due mouse nella stessa macchina sono inutili perciò utilizzeremo il mouse mappando ai tasti diverse azioni.

Requisiti

Tutto ciò di cui avremmo bisogno è già presente nel sistema base e anche nel kernel GENERIC (assiguratevi di avere abilitato com*).

Riguardo all'hardware utilizzeremo un mouse seriale, e utilizzeremo soltanto i due tasti (perciò la pallina sarà anch'essa un optional).


Configurazione

moused(8)

Per gestire il mouse seriale abbiamo bisogno di utilizzare moused(8). moused(8) si occuperà di virtualizzare il mouse seriale in modo da essere trattato come un qualsiasi wsmouse(4).

Senza perderci in discorsi, iniziamo subito con un esempio concreto!

Dove è il mio mouse?

Per utilizzare moused(8) abbiamo bisogno di specificare la porta a cui è collegato il nostro mouse seriale. La porta dovrebbe essere una tty*, aiutandoci con un po' di shell scripting proviamo a localizzare il mouse, l'opzione -p serve per specificare la porta, mentre l'opzione -i serve per ottenere informazioni riguardanti quel mouse:

# for p in $(seq 0 3); do moused -p /dev/tty0${p} -i all; done
/dev/tty00 serial microsoft generic
moused: cannot determine mouse type on /dev/tty01
/dev/tty01 serial unknown generic
moused: unable to open /dev/tty02: Device not configured
moused: unable to open /dev/tty03: Device not configured

Utilizziamo il mouse nella maniera classica

Esaminando l'output prodotto possiamo notare che il mouse è il device /dev/tty00 ed è un mouse microsoft, proviamo perciò se tutto funziona, utilizzandolo ora (temporaneamente) come un qualsiasi altro mouse:

# moused -p /dev/tty00 -t microsoft

Rendere permanente l'utilizzo di moused(8)

Tramite rc.conf(5) possiamo rendere permanenti le operazioni fatte poco fa:

[...]
moused=YES      moused_flags="-p /dev/tty00 -t microsoft"
[...]

Utilizzo

A questo punto ad ogni avvio possiamo utilizzare il mouse come un qualsiasi mouse, volendo anche contemporaneamente ad altri mouse. Ma questo non è quello che vogliamo.

Che cosa vogliamo farci?

Noi vogliamo mappare ai due tasti del mouse diverse azioni. Come esempio vogliamo che alla pressione del tasto sinistro si spegne il monitor e con la pressione del tasto destro si riaccenda. Per raggiungere questo scopo utilizzeremo Template:Pkg.

Rendere il mouse un non-mouse

Vogliamo utilizzare solo i due tasti del mouse, perciò dobbiamo assegnare al nostro mouse un altro wsmux(4). Spulciando la man page wsmux(4) che /dev/wsmux0 è dedicato ai mouse e /dev/msmux1 alle tastiere possiamo assegnare /dev/wsmux2 ai non-mouse, quindi utilizziamo l'opzione -W di moused(8) editando rc.conf:

[...]
moused=YES      moused_flags="-p /dev/tty00 -t microsoft -W /dev/wsmuxctl2 -3"
[...]

Abbiamo aggiunto anche l'opzione -3 in modo tale da simulare il terzo tasto quando premiamo contemporaneamente due tasti.

Ora riavviamo moused:

# /etc/rc.d/moused restart

Se le nostre configurazioni sono giuste ora il puntatore del mouse non dovrebbe muoversi più (come abbiamo detto sopra infatti i mouse devono avere come multiplexor /dev/wsmux0 mentre noi utilizziamo /dev/wsmux2).

Assegnare le azioni

Strumenti personali