diff options
Diffstat (limited to 'man4/mouse.4')
-rw-r--r-- | man4/mouse.4 | 148 |
1 files changed, 148 insertions, 0 deletions
diff --git a/man4/mouse.4 b/man4/mouse.4 new file mode 100644 index 000000000..8ed5161fe --- /dev/null +++ b/man4/mouse.4 @@ -0,0 +1,148 @@ +'\" t +.\"roff.\" Copyright +.\" This manpage is Copyright (C) 1996 Michael Haardt. +.\" Updates Nov 1998, Andries Brouwer +.\" +.\" Permission is granted to make and distribute verbatim copies of this +.\" manual provided the copyright notice and this permission notice are +.\" preserved on all copies. +.\" +.\" Permission is granted to copy and distribute modified versions of this +.\" manual under the conditions for verbatim copying, provided that the +.\" entire resulting derived work is distributed under the terms of a +.\" permission notice identical to this one. +.\" +.\" Since the Linux kernel and libraries are constantly changing, this +.\" manual page may be incorrect or out-of-date. The author(s) assume no +.\" responsibility for errors or omissions, or for damages resulting from +.\" the use of the information contained herein. The author(s) may not +.\" have taken the same level of care in the production of this manual, +.\" which is licensed free of charge, as they might when working +.\" professionally. +.\" +.\" Formatted or processed versions of this manual, if unaccompanied by +.\" the source, must acknowledge the copyright and authors of this work. +.TH MOUSE 4 1996-02-10 "Special files" "Linux Programmer's Manual" +.SH NAME +mouse \- serial mouse interface +.SH CONFIG +Serial mice are connected to a serial RS232/V24 dialout line, see +.BR ttys (4) +for a description. +.SH DESCRIPTION +.SS Introduction +The pinout of the usual 9 pin plug as used for serial mice is: + +.TS +center; +r c l. +pin name used for +2 RX Data +3 TX -12 V, Imax = 10 mA +4 DTR +12 V, Imax = 10 mA +7 RTS +12 V, Imax = 10 mA +5 GND Ground +.TE + +This is the specification, in fact 9 V suffices with most mice. +.PP +The mouse driver can recognize a mouse by dropping RTS to low and raising +it again. About 14 ms later the mouse will send 0x4D ('M') on the data line. +After a further 63 ms, a Microsoft-compatible 3-button mouse will send +0x33 ('3'). +.PP +The relative mouse movement is sent as \fIdx\fP (positive means right) +and \fIdy\fP (positive means down). Various mice can operate at different +speeds. To select speeds, cycle through the +speeds 9600, 4800, 2400 and 1200 bit/s, each time writing the two characters +from the table below and waiting 0.1 seconds. The following table shows +available speeds and the strings that select them: + +.TS +center; +l l. +bit/s string +9600 *q +4800 *p +2400 *o +1200 *n +.TE + +The first byte of a data packet can be used to synchronisation purposes. +.SS "Microsoft protocol" +The \fBMicrosoft\fP protocol uses 1 start bit, 7 data bits, no parity +and one stop bit at the speed of 1200 bits/sec. Data is sent to RxD in +3-byte packets. The \fIdx\fP and \fIdy\fP movements are sent as +two's-complement, \fIlb\fP (\fIrb\fP) are set when the left (right) +button is pressed: + +.TS +center; +r c c c c c c c. +byte d6 d5 d4 d3 d2 d1 d0 +1 1 lb rb dy7 dy6 dx7 dx6 +2 0 dx5 dx4 dx3 dx2 dx1 dx0 +3 0 dy5 dy4 dy3 dy2 dy1 dy0 +.TE +.SS "3-button Microsoft protocol" +Original Microsoft mice only have two buttons. However, there are some +three button mice which also use the Microsoft protocol. Pressing or +releasing the middle button is reported by sending a packet with zero +movement and no buttons pressed. +(Thus, unlike for the other two buttons, the status of the middle +button is not reported in each packet.) +.SS "Logitech protocol" +Logitech serial 3-button mice use a different extension of the +Microsoft protocol: when the middle button is up, the above 3-byte +packet is sent. When the middle button is down a 4-byte packet is +sent, where the 4th byte has value 0x20 (or at least has the 0x20 +bit set). In particular, a press of the middle button is reported +as 0,0,0,0x20 when no other buttons are down. +.SS "Mousesystems protocol" +The \fBMousesystems\fP protocol uses 1 start bit, 8 data bits, no parity +and two stop bits at the speed of 1200 bits/sec. Data is sent to RxD in +5-byte packets. \fIdx\fP is sent as the sum of the two two's-complement +values, \fIdy\fP is send as negated sum of the two two's-complement +values. \fIlb\fP (\fImb\fP, \fIrb\fP) are cleared when the left (middle, +right) button is pressed: + +.TS +center; +r c c c c c c c c. +byte d7 d6 d5 d4 d3 d2 d1 d0 +1 1 0 0 0 0 lb mb rb +2 0 dxa6 dxa5 dxa4 dxa3 dxa2 dxa1 dxa0 +3 0 dya6 dya5 dya4 dya3 dya2 dya1 dya0 +4 0 dxb6 dxb5 dxb4 dxb3 dxb2 dxb1 dxb0 +5 0 dyb6 dyb5 dyb4 dyb3 dyb2 dyb1 dyb0 +.TE + +Bytes 4 and 5 describe the change that occurred since bytes 2 and 3 +were transmitted. +.SS "Sun protocol" +The \fBSun\fP protocol is the 3-byte version of the above 5-byte +Mousesystems protocol: the last two bytes are not sent. +.SS "MM protocol" +The \fBMM\fP protocol uses 1 start bit, 8 data bits, odd parity and one +stop bit at the speed of 1200 bits/sec. Data is sent to RxD in 3-byte +packets. \fIdx\fP and \fIdy\fP are sent as single signed values, the +sign bit indicating a negative value. \fIlb\fP (\fImb\fP, \fIrb\fP) are +set when the left (middle, right) button is pressed: + +.TS +center; +r c c c c c c c c. +byte d7 d6 d5 d4 d3 d2 d1 d0 +1 1 0 0 dxs dys lb mb rb +2 0 dx6 dx5 dx4 dx3 dx2 dx1 dx0 +3 0 dy6 dy5 dy4 dy3 dy2 dy1 dy0 +.TE + +.SH FILES +.TP +.I /dev/mouse +A commonly used symlink pointing to a mouse device. + +.SH "SEE ALSO" +.BR ttys (4), +.BR gpm (8) |