152 lines
4.5 KiB
Groff
152 lines
4.5 KiB
Groff
.\" $NetBSD: wsmouse.4,v 1.22 2012/05/27 12:05:40 wiz Exp $
|
|
.\"
|
|
.\" Copyright (c) 1999
|
|
.\" Matthias Drochner. All rights reserved.
|
|
.\"
|
|
.\" Copyright (c) 2006
|
|
.\" Julio M. Merino Vidal. All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.Dd May 27, 2012
|
|
.Dt WSMOUSE 4
|
|
.Os
|
|
.Sh NAME
|
|
.Nm wsmouse
|
|
.Nd generic mouse support in wscons
|
|
.Sh SYNOPSIS
|
|
.Cd "wsmouse* at pms? mux 0"
|
|
(PS/2 mouse, including ``IntelliMouse''-compatible wheel mice)
|
|
.Cd "wsmouse* at ums? mux 0"
|
|
(USB mouse)
|
|
.Cd "wsmouse* at uts? mux 0"
|
|
(USB touchscreen)
|
|
.Cd "wsmouse* at lms? mux 0"
|
|
(Logitech bus mouse, i386 only)
|
|
.Cd "wsmouse* at mms? mux 0"
|
|
(Microsoft InPort mouse, i386 only)
|
|
.Cd "wsmouse0 at ams? mux 0"
|
|
(Apple ADB mouse)
|
|
.Cd "wsmouse* at btms? mux 0"
|
|
(Bluetooth mouse)
|
|
.Cd "wsmouse* at lkms? mux 0"
|
|
(DEC VSXXX serial mice)
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Nm
|
|
driver is an abstraction layer for mice within the
|
|
.Xr wscons 4
|
|
framework.
|
|
It is attached to the hardware specific mouse drivers and
|
|
provides a character device interface which returns
|
|
.Fa struct wscons_event
|
|
via
|
|
.Xr read 2 .
|
|
For use with X servers,
|
|
.Dq mouse events
|
|
can be generated.
|
|
.Pp
|
|
The
|
|
.Xr wsconsctl 8
|
|
utility gives access to several configurable details that affect this
|
|
driver.
|
|
.Ss Ioctls
|
|
The following
|
|
.Xr ioctl 2
|
|
calls are provided by the
|
|
.Nm
|
|
driver or by devices which use it.
|
|
Their definitions are found in
|
|
.Pa dev/wscons/wsconsio.h .
|
|
.Bl -tag -width Dv
|
|
.It Dv WSMOUSEIO_GETREPEAT Pq Li "struct wsmouse_repeat"
|
|
Retrieve the current automatic button repeating configuration.
|
|
The structure returned is as follows:
|
|
.Bd -literal -offset indent
|
|
struct wsmouse_repeat {
|
|
unsigned long wr_buttons;
|
|
unsigned int wr_delay_first;
|
|
unsigned int wr_delay_decrement;
|
|
unsigned int wr_delay_minimum;
|
|
};
|
|
.Ed
|
|
.Pp
|
|
The
|
|
.Va wr_buttons
|
|
field is a bit mask that specifies which buttons send press and
|
|
release events periodically while they are physically held down.
|
|
The least significant bit corresponds to button 0.
|
|
.Pp
|
|
The other three fields describe the frequency upon which these
|
|
automatic events are sent.
|
|
.Va wr_delay_first
|
|
specifies the milliseconds before the first repeated event is sent.
|
|
.Va wr_delay_decrement
|
|
is used to calculate the delay between the most recently generated
|
|
event and the forthcoming one: the previous delay is taken and it is
|
|
decreased by the value given in this variable.
|
|
.Va wr_delay_minimum
|
|
specifies the minimum delay, in milliseconds, between two consecutive
|
|
events.
|
|
.Pp
|
|
.It Dv WSMOUSEIO_SETREPEAT Pq Li "struct wsmouse_repeat"
|
|
Set the automatic button repeating configuration.
|
|
See
|
|
.Dv WSMOUSEIO_GETREPEAT
|
|
above for more details.
|
|
.It Dv WSMOUSEIO_SETVERSION Pq Li "int"
|
|
Set the wscons_event protocol version.
|
|
The default is 0 for binary compatibility.
|
|
The latest version is
|
|
always available as
|
|
.Dv WSMOUSE_EVENT_VERSION ,
|
|
and is currently 1.
|
|
All new code should use a call similar to the below to ensure the
|
|
correct version is returned.
|
|
.Bd -literal -offset indent
|
|
int ver = WSMOUSE_EVENT_VERSION;
|
|
if (ioctl(fd, WSMOUSEIO_SETVERSION, &ver) == -1)
|
|
err(EXIT_FAILURE, "cannot set version");
|
|
.Ed
|
|
.El
|
|
.Sh FILES
|
|
.Bl -item
|
|
.It
|
|
.Pa /dev/wsmouse*
|
|
.It
|
|
.Pa /usr/include/dev/wscons/wsconsio.h .
|
|
.El
|
|
.Sh SEE ALSO
|
|
.Xr btms 4 ,
|
|
.Xr lms 4 ,
|
|
.Xr mms 4 ,
|
|
.Xr pms 4 ,
|
|
.Xr uep 4 ,
|
|
.Xr ums 4 ,
|
|
.Xr uts 4 ,
|
|
.Xr wscons 4 ,
|
|
.Xr wsmux 4 ,
|
|
.Xr moused 8 ,
|
|
.Xr wsconsctl 8 ,
|
|
.Xr wsmoused 8 ,
|
|
.Xr wsmouse 9
|