History log of /freebsd-current/usr.sbin/moused/moused.c
Revision Date Author Comments
# 83409a93 07-Nov-2023 Elyes Haouas <ehaouas@noos.fr>

moused: Use nitems(foo) instead of sizeof(foo)/sizeof(foo[0])

Pull Request: https://github.com/freebsd/freebsd-src/pull/888
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>


# 4d65a7c6 24-Nov-2023 Warner Losh <imp@FreeBSD.org>

usr.sbin: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/
Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/
Remove /\n+#if.*\n#endif.*\n+/
Remove /^#if.*\n#endif.*\n/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/

Sponsored by: Netflix


# 1d386b48 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

Remove $FreeBSD$: one-line .c pattern

Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/


# de1a17db 23-Feb-2023 Elyes Haouas <ehaouas@noos.fr>

moused: Fix typos

Signed-off-by: Elyes Haouas <ehaouas@noos.fr>


# 64b3bcc6 06-Feb-2022 Gordon Bergling <gbe@FreeBSD.org>

moused(8): Fix a common typo in source code comments

- s/comatible/compatible/

Obtained from: NetBSD
MFC after: 3 days


# c1cdf6a4 21-Oct-2018 Warner Losh <imp@FreeBSD.org>

Remove mse(4) from tree

Remove mse and all support for bus and inport devices from the tree.
Data from nycbug's dmesg database shows the last sighting of this
driver was in 4.10 on only one machine.

Relnotes: yes
Differential Revision: https://reviews.freebsd.org/D17628


# 1de7b4b8 27-Nov-2017 Pedro F. Giffuni <pfg@FreeBSD.org>

various: general adoption of SPDX licensing ID tags.

Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.

No functional change intended.


# 4f57f07e 26-Sep-2016 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

Add Elantech trackpad to the list of known models

PR: 205690
Submitted by: Vladimir Kondratyev <wulf@cicgroup.ru>
MFC after: 1 week


# 5d6026c2 21-Apr-2016 Marcelo Araujo <araujo@FreeBSD.org>

Use macro MAX() from sys/param.h.

MFC after: 2 weeks.


# 569d8f7e 18-Mar-2013 Jung-uk Kim <jkim@FreeBSD.org>

Add preliminary support for IBM/Lenovo TrackPoint.

PR: kern/147237 (based on the initial patch for 8.x)
Tested by: glebius (device detection and suspend/resume)
MFC after: 1 month


# 08f950a3 24-Sep-2012 Hans Petter Selasky <hselasky@FreeBSD.org>

Make sure moused is exiting as quick as possible after that the
umsX character device returns a read error. Update devd.conf rules
to use "DEVFS" events which are generated after that the umsX
character device node has been created/destroyed, and then there
should be no need for moused to wait up to 10 seconds for umsX to
be ready. Opening umsX should not fail except if the kernel is low
on memory. In that case the user can replug the USB mouse or use
"usbconfig" to reset the device. In case of USB mouse devices,
moused should neither retry to open its character device,
once the first read error has happened. This is an indication
of device detach.

MFC after: 1 week


# 9764cfdd 17-Mar-2012 Hans Petter Selasky <hselasky@FreeBSD.org>

The UMS module is now loaded by rules in /etc/devd/usb.conf which
are executed by devd. Remove duplicate kldload.

Reported by: joel @
MFC after: 1 week


# 6240691a 19-Jan-2012 Eitan Adler <eadler@FreeBSD.org>

Fix warning when compiling with gcc46:
error: variable 'now' set but not used

Approved by: dim, cperciva (mentor, blanket for pre-mentorship already-approved commits)
MFC after: 3 days


# 3df5ecac 30-Dec-2011 Ulrich Spörlein <uqs@FreeBSD.org>

Spelling fixes for usr.sbin/


# 7a106fe4 06-Nov-2011 Ed Schouten <ed@FreeBSD.org>

Mark global functions and/or variables in moused(8) static where possible.

This allows compilers and static analyzers to do more thorough analysis.


# 6bccea7c 21-Feb-2011 Rebecca Cran <brucec@FreeBSD.org>

Fix typos - remove duplicate "the".

PR: bin/154928
Submitted by: Eitan Adler <lists at eitanadler.com>
MFC after: 3 days


# a7d5f7eb 19-Oct-2010 Jamie Gritton <jamie@FreeBSD.org>

A new jail(8) with a configuration file, to replace the work currently done
by /etc/rc.d/jail.


# ce304e08 15-Jun-2010 Alexander Motin <mav@FreeBSD.org>

When Emulate3Button is active, do not set select() timeout in states when
it is not needed. No need to kick CPU every 20ms without a purpose.

Reviewed by: philip@


# fe0506d7 09-Mar-2010 Marcel Moolenaar <marcel@FreeBSD.org>

Create the altix project branch. The altix project will add support
for the SGI Altix 350 to FreeBSD/ia64. The hardware used for porting
is a two-module system, consisting of a base compute module and a
CPU expansion module. SGI's NUMAFlex architecture can be an excellent
platform to test CPU affinity and NUMA-aware features in FreeBSD.


# d7f03759 19-Oct-2008 Ulf Lilleengen <lulf@FreeBSD.org>

- Import the HEAD csup code which is the basis for the cvsmode work.


# 3e95467c 15-May-2008 Philip Paeps <philip@FreeBSD.org>

Improve the virtual scrolling mechanism to make middle clicking less
difficult. Add a -L option (yet another option, indeed!) which changes the
speed of scrolling and change -U to only affect the scroll threshold.

This should make middle-clicking a much more pleasant experience.

PR: bin/120186
Submitted by: Aragon Gouveia <aragon -at- phat.za.net>
MFC after: 3 days


# f2559616 06-Mar-2008 Jung-uk Kim <jkim@FreeBSD.org>

Use intmax_t instead of long when casting time_t.

Suggested by: mlaier
Tested with: make universe


# d7aa5242 05-Mar-2008 Jung-uk Kim <jkim@FreeBSD.org>

Cast time_t to long to mute tinderbox build failure.


# 2657f6e9 05-Mar-2008 Jung-uk Kim <jkim@FreeBSD.org>

Fix compiler warnings and style(9) bugs.


# 13f1c59b 05-Mar-2008 Jung-uk Kim <jkim@FreeBSD.org>

Prefer clock_gettime(2) over gettimeofday(2) and use CLOCK_MONOTONIC_FAST.
It is only used to track elapsed time and it does not have to be precise.


# d9338247 17-Jun-2007 Philip Paeps <philip@FreeBSD.org>

Fix a (very) longstanding bug in moused(8) affecting high-resolution rodents
when linear acceleration (-a) was enabled with a <1 value to slow them down.

Previously, rounding errors would eat small movements so the mouse had to be
moved a certain distance to get any movement at all. We now calculate the
rounding errors and take them into account when reporting movement.

PR: bin/113749
Submitted by: Oliver Fromme <olli -at- secnetix.de>
MFC after: 3 days


# 86b3ea36 11-Mar-2007 Philip Paeps <philip@FreeBSD.org>

Add dynamic acceleration to moused(8). This introduces a '-A' flag to control
the acceleration algorithm. It can be used together with the '-a' flag for
regular acceleration.

PR: bin/110003
Submitted by: Oliver Fromme <olli -at- lurza.secnetix.de>
MFC after: 1 week


# a68654e6 20-Jul-2006 Stefan Farfeleder <stefanf@FreeBSD.org>

Convert macros to use C99's syntax for macros with a variable number of
arguments.


# c134d8cc 18-Feb-2006 Dag-Erling Smørgrav <des@FreeBSD.org>

Replace the guts of usbmodule() with calls to the new kld(3) functions.


# 9eac5bb9 03-Dec-2005 Philip Paeps <philip@FreeBSD.org>

Add "yet another" moused(8) hack: suspend handling mouse events when SIGUSR1
is caught. Can be assigned to a window manager shortcut to prevent accidents
with touchpads.

PR: bin/89357
Submitted by: Nick Hibma <nick -at- van-laarhoven.org>
MFC after: 1 week


# d5f2946a 19-Sep-2005 Philip Paeps <philip@FreeBSD.org>

Add an option to stop 'mouse drift' in some defective/cheap mice. This stops
the pointer slowly wandering away on its own in an annoying way when the mouse
isn't physically moved.

PR: bin/83970
Submitted by: Lena -at- lena.kiev.ua
X-MFC after: 6.0-RELEASE


# 8b28aef2 16-Sep-2005 Pawel Jakub Dawidek <pjd@FreeBSD.org>

Pidfiles should be created with permission preventing users from opening
them for reading. When user can open file for reading, he can also
flock(2) it, which can lead to confusions.

Pointed out by: green


# a80d5fc2 24-Aug-2005 Pawel Jakub Dawidek <pjd@FreeBSD.org>

Use pidfile(3) in moused(8).


# 2c9b9132 19-Jul-2005 Philip Paeps <philip@FreeBSD.org>

Add a -H option to enable horizontal virtual scrolling, much like -V for
vertical virtual scrolling. This also respects -U for the distance.

PR: bin/82762
Submitted by: Eric Kjeldergaard <kjelderg -at- gmail.com>
MFC after: 1 month


# ce99e877 13-Apr-2005 Matthew N. Dodd <mdodd@FreeBSD.org>

Support for the GTCO Digipad.


# 45efbba5 06-Jan-2005 Philip Paeps <philip@FreeBSD.org>

Document the -V and -U options in usage().

Submitted by: Jordan Sissel <psionic@csh.rit.edu>


# 2a669c47 11-Oct-2004 Philip Paeps <philip@FreeBSD.org>

Add 'virtual scrolling' support to moused(8). When holding down the middle
mouse button, motions are interpreted as scrolling.

Submitted by: Jordan Sissel <psionic-AT-csh.rit.edu>
Approved by: njl


# 33282bf4 03-Aug-2004 Philip Paeps <philip@FreeBSD.org>

Teach moused about Synaptics touchpads.

While I'm here, document the existence of the '-l' option, which allows
one to use moused to use psm in some more interesting ways.

Approved by: njl (mentor)


# 358f61ce 03-Jul-2004 Stefan Farfeleder <stefanf@FreeBSD.org>

Use C99 conforming designated initialisers rather than the obsolete GCC syntax.


# dd8fb388 10-Jan-2004 Maxim Sobolev <sobomax@FreeBSD.org>

Fix serious ugliness introduced in 1.61, which leads to long delay in boot
sequence when machine is started without attached USB mouse. Only do
repeated attempts to re-open device if the usb module has been actually
loaded. Also fix broken logic in doing delays between open attempts - do
delays between attempts, not after each attempt.

Due to previous behaviour being very annoying for notebook owners this
is a good 5.2 MFC candidate.

MFC after: 2 days


# b2183f97 17-Nov-2003 Dag-Erling Smørgrav <des@FreeBSD.org>

__FBSDID; remove duplicate <ctype.h>; try to reduce style inconsistencies.


# 038ec830 17-Nov-2003 Dag-Erling Smørgrav <des@FreeBSD.org>

Sort includes, and remove superfluous <sys/types.h>


# 3bdc98d7 17-Nov-2003 Dag-Erling Smørgrav <des@FreeBSD.org>

Instead of blindly loading the ums module and bailing out if that fails,
check if it's already loaded or compiled into the kernel, and only try to
load it if it isn't.

PR: bin/59368
Submitted by: Jens Rehsack <rehsack@liwing.de>


# 49271db4 13-Nov-2003 Dag-Erling Smørgrav <des@FreeBSD.org>

If the name of the mouse device starts with "/dev/ums", try to load the
ums module, and allow for up to five attempts to open the device, with
two-second pauses in between, to allow time for USB controllers and
devices to probe and attach. My Gigabyte P4 Titan 848P motherboard has
a total of 15 ports on four hubs hanging off four controllers, and needs
at least half of that ten-second allowance to get ready.

MFC after: 7 days


# b70d5d25 13-Nov-2003 Dag-Erling Smørgrav <des@FreeBSD.org>

Whitespace cleanup.


# 9d5abbdd 01-Jan-2003 Jens Schweikhardt <schweikh@FreeBSD.org>

Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup,
especially in troff files.


# d64ada50 30-Dec-2002 Jens Schweikhardt <schweikh@FreeBSD.org>

Fix typos, mostly s/ an / a / where appropriate and a few s/an/and/
Add FreeBSD Id tag where missing.


# f0067240 25-Aug-2002 Philippe Charnier <charnier@FreeBSD.org>

Replace various spelling with FALLTHROUGH which is lint()able


# 8f810e50 19-May-2002 Akinori MUSHA <knu@FreeBSD.org>

Work around a code generation bug of GCC 3.1 by replacing
`/2' with `>>1'. In the context `>>1' is more appropriate
because it looks like the division is used to restore a
shifted value.

GCC GNATS PR: c/6677

This fixes a problem where wheel-up movement is taken as wheel-down
in the sysmouse protocol.

Do not assume the plain char's are signed; use `signed char' where
char's need to be signed.

Discussed on: audit
Pointed out by: bde


# 62e621e8 28-Apr-2002 Ian Dowse <iedowse@FreeBSD.org>

Fix a number of warnings. A gcc preprocessor bug relating to macros
with variable numbers of arguments made this slightly harder than
it should be. Avoid the bug by not doing string concatenation within
the macros, and instead add a new function to syslog or print the
error messages.


# 05f92020 23-Mar-2002 Will Andrews <will@FreeBSD.org>

Minor changes:
[1] Support the Sony VAIO Jogdial in moused(8).
[2] Modify spic(4) to support additional Sony VAIO models.

Submitted by: [1] Juriy Goloveshkin <j@gu.ru>,
[2] Akira Funahashi <funa@funa.org>
Tested by: cjh, jim, Jerry A! <jerry@thehutt.org>
Approved by: nsayer
MFC after: 2 weeks


# 040eea4c 09-Aug-2001 Doug Barton <dougb@FreeBSD.org>

Expand the usage info to include the possible options for -i,
and fix the printf so that the line actually gets printed.


# a9b238fa 08-Jul-2001 Ian Dowse <iedowse@FreeBSD.org>

Oops, remove a `mouse_move_delayed++' that shouldn't have been
added in the previous commit; this variable is already incremented
in the previous `if' condition.


# 70ccc8d8 08-Jul-2001 Ian Dowse <iedowse@FreeBSD.org>

The state machine for 3-button emulation defers some button events
until a 20ms select(2) timeout occurs, but if there is a continuous
stream of movement events, button events can be delayed indefinitely
because the select never has to wait long enough for a timeout.
The delay and mouse event reordering that result are very noticable
and sometimes quite frustrating when dragging windows etc. in X.

Add a simple mechanism that avoids this re-ordering. While a button
event is deferred, we discard up to 3 movement events to allow for
mouse jitter. If more movement events occur, then we immediately
timeout the deferred button event and let the movement proceed.
This change only affects the 3-button emulation case.


# efe4cd6a 25-Jun-2001 George C A Reid <greid@FreeBSD.org>

Add an acceleration option to moused

PR: 28369
Submitted by: Daniel O'Connor <darius@dons.net.au>
manpage reviewed by: ru
MFC after: 10 days


# 7309915e 24-Jun-2001 Dima Dorfman <dd@FreeBSD.org>

Nuke unused variables.


# d7d97eb0 18-Feb-2001 Jeroen Ruigrok van der Werven <asmodai@FreeBSD.org>

Preceed/preceeding are not english words. Use precede and preceding.


# f6b5c74c 09-Oct-2000 Poul-Henning Kamp <phk@FreeBSD.org>

Initiate deorbit burn sequence for <machine/mouse.h>.

Replace all in-tree uses with <sys/mouse.h> which repo-copied a few
moments ago from src/sys/i386/include/mouse.h by peter.
This is also the appropriate fix for exo-tree sources.

Put warnings in <machine/mouse.h> to discourage use.
November 15th 2000 the warnings will be converted to errors.
January 15th 2001 the <machine/mouse.h> files will be removed.


# 00d25f51 08-Oct-2000 Poul-Henning Kamp <phk@FreeBSD.org>

Initiate deorbit burn sequence for <machine/console.h>.

Replace all in-tree uses with necessary subset of <sys/{fb,kb,cons}io.h>.
This is also the appropriate fix for exo-tree sources.

Put warnings in <machine/console.h> to discourage use.
November 15th 2000 the warnings will be converted to errors.
January 15th 2001 the <machine/console.h> files will be removed.


# 9c9d9993 21-Apr-2000 Kazutaka YOKOTA <yokota@FreeBSD.org>

Reduce the default timeout for the three button emulation
from 200 msec to 100 msec.


# 59d38e11 11-Apr-2000 Ollivier Robert <roberto@FreeBSD.org>

Set the right default timeout to 200ms as per the manpage.

PR: bin/17879
Submitted by: Samuel Tardieu <sam@ada.eu.org>


# 127d54ba 07-Apr-2000 Kazutaka YOKOTA <yokota@FreeBSD.org>

Follow up to the 3 button emulation update in rev 1.41:
- Fix the -z option which I broke in rev 1.41. It didn't work
correctly when used in conjunction with the -m option.
- Tweak the 3 button state machine so that 'Up' events of the buttons
1 and 3 are reported immediately as soon as the buttons are up.


# 4e008b7f 30-Mar-2000 Kazutaka YOKOTA <yokota@FreeBSD.org>

Remove unwanted debug output.

PR: bin/17617
Submitted by: Allan Saddi <asaddi@philosophysw.com>


# 44bdcfa6 20-Mar-2000 Kazutaka YOKOTA <yokota@FreeBSD.org>

- This is the second attempt to fix the `-3' option for moused :-)
It also adds a new option, `-E', to set the timeout value for
the three button emulation.


# d65ffe4a 20-Mar-2000 Kazutaka YOKOTA <yokota@FreeBSD.org>

Add Mitsumi Wireless Scroll Mouse PnP ID.


# fb966343 18-Mar-2000 Kazutaka YOKOTA <yokota@FreeBSD.org>

- Add support for IntelliMouse Explorer, NetScroll Optical, SmartScroll,
Scroll Point, and 4D/4D+ mice.
- Add a couple of serial mouse PnP IDs.
- Extend the `-z' option so that the second wheel (or the horizontal
movement of the `scroll' device) can be mapped to buttons.


# 6555de48 15-Mar-2000 Andrey A. Chernov <ache@FreeBSD.org>

Add Tremon Wheel PNP mouse


# 17441011 24-Jan-2000 Kazutaka YOKOTA <yokota@FreeBSD.org>

Added the PnP ID for MouseSystems SmartScroll Mouse (serial mouse).
This mouse may be a OEM version of Genius EasyScroll Mouse.

(The mouse has three buttons on top, one side button and a wheel which
also acts as a button. However, I know no way to activate the wheel,
and it can only be used as an ordinary 3-buttons mouse :-)


# 27d63c19 20-Jan-2000 Kazutaka YOKOTA <yokota@FreeBSD.org>

Add the PnP ID for the Logitech Cordless MouseMan Wheel (serial
version).


# ab51fa72 17-Dec-1999 Sheldon Hearn <sheldonh@FreeBSD.org>

Back out previous commit, which broke mouse wheel support in moused.

Requested by: yokota


# e3b00983 14-Dec-1999 Kazutaka YOKOTA <yokota@FreeBSD.org>

- Improve the three button emulation by introdusing a small state
machine. The three-button emulation of moused has been somewhat
difficult to use for many people. I hope this update fixes it.
- Add a new option, -E, to set timeout value to detect two buttons
are pressed down simulteneously. The default value for this timeout
is 200msec.


# 93563ade 30-Nov-1999 Nick Hibma <n_hibma@FreeBSD.org>

Remove a stray ';' which made moused fail on read()s in all cases.

Prodded-By: Andrey A. Chernov <ache@FreeBSD.org>
Prodded-By: Soren Schmidt <sos@freebsd.dk>
Prodded-By: Louis A. Mamakos <louie@TransSys.COM>


# d009bdae 29-Nov-1999 Nick Hibma <n_hibma@FreeBSD.org>

Bail out on failing the read(). This happens when a USB mouse is
disconnected. We retry the open in the parent subroutine.

Remove an ifdef _i386_ . MOUSE_IF_USB is now defined for alpha as well.

Reviewed-By: yokota


# e46b89dc 14-Sep-1999 Peter Wemm <peter@FreeBSD.org>

Fix warning: return type of `main' is not `int'


# 97d92980 27-Aug-1999 Peter Wemm <peter@FreeBSD.org>

$Id$ -> $FreeBSD$


# 2e09fb67 16-Aug-1999 Kazutaka YOKOTA <yokota@FreeBSD.org>

Add support for the serial version of Interlink VersaPad.


# 01533d85 12-Jul-1999 Kazutaka YOKOTA <yokota@FreeBSD.org>

Improve Logitech MouseMan+ protocol support.


# 2b9e6c75 02-Jun-1999 Kazutaka YOKOTA <yokota@FreeBSD.org>

Fix PS/2 MouseMan+ protocol. We have been looking at a wrong place
for the sign bit for roller movement!


# 12c89890 28-Feb-1999 Gary Palmer <gpalmer@FreeBSD.org>

USB is only on PC's at the minute, don't try and use the MOUSE_IF_USB
define on the AXP, 'cos it breaks.


# 5419aa3e 28-Feb-1999 Kazutaka YOKOTA <yokota@FreeBSD.org>

Print "usb" for MOUSE_IF_USB, rather than "unknown".


# 5e6338f6 13-Dec-1998 Steve Price <steve@FreeBSD.org>

Cleanup usage string: -i takes an argument.

PR: 8315
Submitted by: Amakawa Shuhei <amakawa@sf.t.u-tokyo.ac.jp>


# 1b11ca6c 20-Nov-1998 Kazutaka YOKOTA <yokota@FreeBSD.org>

- Added support for Genius Kidspad tablet.

# `moused' is getting too over-loaded now. If we want something
# more than simple mouse emulation for tablets or remote devices,
# we should start writing a separate daemon...

Submitted by: luigi


# 9fb1d70c 20-Nov-1998 Kazutaka YOKOTA <yokota@FreeBSD.org>

- Added a new option: -w N. The option makes the button N as the `wheel
mode' button. Mouse movement will be treated as wheel movement while
this button is held down. Useful for mice with many buttons but
without a wheel.

PR: bin/8001
Submitted by: Hideyuki Suzuki


# c49f79b7 20-Nov-1998 Kazutaka YOKOTA <yokota@FreeBSD.org>

- Reorganized a `if-else' close a bit for clarity. Purely cosmetic
change. No functional difference.


# f41621f9 12-Oct-1998 Kazutaka YOKOTA <yokota@FreeBSD.org>

Fix PnP mouse detection routine so that:
- it has longer timeout as per the PnP COM Device Specificaiton 1.0,
- and it tries to obtain the PnP ID string by strictly following the
specification and if it fails, by deploying slightly simplified
steps. (moused has used the simplified method because early PnP mice
do not exactly follow the specification. But now, recent mice
do not supply the ID string unless the strict procedure is used...)

Jointly developed by luigi and yokota.


# 67978692 14-Jun-1998 Amancio Hasty <ahasty@FreeBSD.org>

Reviewed by: Amancio
Submitted by: Randall Hopper <rhh@ct.picker.com>
The patch supports using the X10 Mouse Remote in both stand-alone and
pass-through configurations, so you can plug your mouse and remote into the
same serial port, use the mouse for X, and use the remote for other apps
like Fxtv. For instance, we can now control fxtv via the remote control
just like a TV : change channels, mute, increase volume, zoom video,
freeze frame 8)

The mouse events are channeled through the syscons/sysmouse I/F like
normal, and the remote buttons are "syphoned off" to a UNIX-domain stream
socket (defined as _PATH_MOUSEREMOTE in <machine/mouse.h>) for a
remote-aware app to grab and use.

For further info on the X10 Mouse Remote see:
http://www.x10.com/products/x10_mk19a.htm


# f82812a2 12-Mar-1998 Kazutaka YOKOTA <yokota@FreeBSD.org>

- Describe the -I option in the man page.
- Add the -I option in the usage line.


# 7b60e552 07-Mar-1998 Jordan K. Hubbard <jkh@FreeBSD.org>

Add -I flag.
Submitted by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>


# 36b1e17d 05-Mar-1998 Kazutaka YOKOTA <yokota@FreeBSD.org>

Add 4th button support for the "MouseMan" protocol. The latest
trackball model from Logitech has four buttons.


# 4b6860cf 03-Feb-1998 Andrey A. Chernov <ache@FreeBSD.org>

Add Genius PnP Mouse (simple one)


# f17c0039 19-Jan-1998 Kazutaka YOKOTA <yokota@FreeBSD.org>

Add the PnP string for a Logitech serial mouse model.


# 30ee7535 23-Dec-1997 Kazutaka YOKOTA <yokota@FreeBSD.org>

- Added support for a new MouseMan model (4 buttons, no wheel).
Based on the report from Dave Bodenstab.
- Turn off PnP COM device enumeration procedure if the user explicitly
specifies a protocol type with the "-t" option.
- Accept "-t auto". Now the user may entirely omit the "-t" option
in the command line, or specify "-t auto" in order to make moused
detect an appropriate protocol type automatically. In the
previous version, moused did so only if the "-t" option is absent
in the command line. ("-t auto" won't disable PnP COM device
enumeration.)
- Updated the man page.


# 5d6618fa 14-Dec-1997 Kazutaka YOKOTA <yokota@FreeBSD.org>

Oops, I forgot to set `cflag' in some cases when initializing the
mouse port.


# 5f436cfb 07-Dec-1997 Kazutaka YOKOTA <yokota@FreeBSD.org>

The `moused' daemon is made to support various serial mouse
protocols to recognized extra buttons and wheel/roller. It now has
PnP COM device support code, thus, some recent mouse products are
automatically detected and an appropriate protocol is selected.
The `-i' option will print the result of auto-detection.

- Added support for the following SERIAL mice:
ALPS GlidePoint, MS IntelliMouse, Kensington Thinking Mouse
(Genius NetMouse, NetMouse Pro, ASCII MieMouse, Logitech MouseMan+,
FirstMouse+ are compatible with MS IntelliMouse, when connected
to a serial port, thus requires no explicit support)
- Added PnP serial mouse identification capability as defined
by Microsoft and Hayes in "Plug and Play External COM Device
Specification, rev 1.00". This support will enable us to identify
the correct protocol to use, or choose a compatible protocol for the
given mouse.
- Utilize new ioctls defined in `mouse.h' to get hardware and protocol
information on PS/2 and bus mouse devices. Try to guess the correct
protocol and port combination based on the obtained info.
- Use MOUSE_SETLEVEL ioctl.
- Use constants defined in `mouse.h' rather than using own definitions.
- A New command line option. The -i option prints the information
collected though the PnP code and psm/mse ioctls mentioned above,
and just quits. This is to test `moused's ability, or inability, to
detect the correct protocol for the given mouse automatically.
- A new command line option. The -m option maps a physical button
to a logical button.
- A new command line option. The -z option maps the Z axis movement to
another axis or a pair of buttons.
- Add other options: -3, -C -F -P.
- Added a handler for SIGHUP. This has been suggested by somebody in the
past (I don't remember who). He wanted this because he wants to attach
or detach a mouse while his laptop is suspended. Now `moused' will
reopens and reinitialize the specified port whenever a SIGHUP is
received. I don't know how useful this can be...


# 07e1d533 25-Sep-1997 Philippe Charnier <charnier@FreeBSD.org>

Remove unused variables. Lowercase err() strings.


# 6c3f552a 30-Mar-1997 Warner Losh <imp@FreeBSD.org>

compare return value from getopt against -1 rather than EOF, per the final
posix standard on the topic.


# 63599332 28-Mar-1997 Peter Wemm <peter@FreeBSD.org>

Allow the samplerate (in DPI) to be set on the command line, the rest of
the code appears to support it.


# 476602a9 22-Feb-1997 Peter Wemm <peter@FreeBSD.org>

Revert $FreeBSD$ to $Id$


# 20a2630b 20-Jan-1997 Søren Schmidt <sos@FreeBSD.org>

Modified moused to use select rather than read. This fixes using
the PS/2 mouse (psm device).
Submitted by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>


# 1130b656 14-Jan-1997 Jordan K. Hubbard <jkh@FreeBSD.org>

Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.


# 13379e47 10-Sep-1996 Peter Wemm <peter@FreeBSD.org>

gut and overhaul moused, it was simply not working for me on any mouse
I could find. This change does the following:
- s/usage()/break;/ in handling the -s switch.
- use err/warn instead of fprintf(stderr, ... strerror()); exit(1);
- implement Hitachi PUMA HitTablet support from the XFree86 code,
whatever the hell that is. :-)
- correctly implement baud rate setting, too much was cut from the
XFree86 code, the critical parts were a sweep over all likely
mouse powerup baud rates to switch it to the reqested rate.
- logitech support was busted (at least on mine, which is autosensing
and runs in either mmseries or logitech mode depending on the handshake
code at startup. Among other things, you talk to it at 1200, then
switch to the target baud later.

Some remaining problems.. samplerate setting is missing, but I've not
found where this is meant to be set yet. I presume this is resolution
setting of some kind.


# a41cbc45 09-Sep-1996 Søren Schmidt <sos@FreeBSD.org>

Fix for the problem that moused hangs if it is started from /etc/rc
Introduces the /dev/consolectl device for controlling various
console related things (given syscons is used).


# ad0c0c78 25-Jun-1996 Søren Schmidt <sos@FreeBSD.org>

Change the way moused talk to syscons, now its only delivering mouseevents
via an ioctl (MOUSE_ACTION).
Fixed a couple of bugs (destructive cursor, uncut, jitter).
Now applications can use the mouse via the MOUSE_MODE ioctl, its
possible to have a signal sent on mouseevents, makeing an event loop
in the application take over mouseevents.


# ad771aa1 21-Jun-1996 Søren Schmidt <sos@FreeBSD.org>

Moused is the daemon that provides the connection between the cut&paste
functionality in syscons and the real mouse hardware. If moused is
run one can switch on/off the mousepointer with vidcontrol -m on/off.
There is no manpage yet, but a fairly descriptive usage message....

Reviewed by:sos
Submitted by: Michael Smith
Obtained from:Some of the mouselogic comes from XFree86