1GPM-TYPES(7)           Miscellaneous Information Manual           GPM-TYPES(7)


6       gpm-types - pointer types (mice, tablets, etc.) managed by gpm.
7       The  information below is extracted from the texinfo file, which is the
8       preferred source of information.


11       This manpage describes the various pointer types currently available in
12       gpm.  If you look at the source code, you'll find that pointer-specific
13       code is confined to  mice.c  (while  it  used  to  only  include  mouse
14       decoders, gpm now supports tablets and touchscreens as well).
17       The  mouse  type  is  specified on command line with the -t option. The
18       option takes an argument, which represents the name of  a  mouse  type.
19       Each  type  can  be associated to different names. For old mouse types,
20       one name is the old selection-compatible name, and another is the XFree
21       name.  After  version  1.18.1  of  gpm, the number of synonyms was made
22       arbitrary and the actual name being used is made available to the func‐
23       tion responsible for mouse initialization. Therefore it is possible for
24       a mouse decoder to behave slightly differently according  to  the  name
25       being  used  for  the  device  (if this feature was already present, we
26       wouldn't have for example ms+ and ms+lr as different mouse types).
29       The initialization procedure of each mouse type can also receive  extra
30       option, by means of the -o command line option. Since interpretation of
31       the  option  string  is  decoder-specific,  the  allowed  options   are
32       described  in  association  to  each mouse type. When no description of
33       option strings is provided, that means the option string is unused  for
34       that  mouse  type and specifying one generates an error. When the docu‐
35       ment refer to ``standard serial options'' it means that one of -o  dtr,
36       -o  rts,  -o  both  can be specified to toggle the control lines of the
37       serial port.
40       The following mouse type are currently recognized:
42       bare Microsoft
43              The Microsoft protocol, without any extension. It  only  reports
44              two  buttons.  If  your  device has three, you should either try
45              running the mman decoder or msc. In the latter case, you need to
46              tell  the mouse to talk msc protocol by toggling the DTR and RTS
47              lines (with one of -o drt, -o rts or -o both) or invoking gpm -t
48              msc  while  keeping  the  middle  button pressed. Very annoying,
49              indeed.  This mouse decoder  accepts  standard  serial  options,
50              although they should not be needed.
52       ms     This  is  the  original Microsoft protocol, with a middle-button
53              extension.  Some old two-button devices send some spurious pack‐
54              ets  which can be misunderstood as middle-button events. If this
55              is your case, use the bare  mouse  type.   Some  new  two-button
56              devices  are ``plug and play'', and they don't play fair at all;
57              in this case try -t pnp.  Many (most) three-button devices  that
58              use  the  Microsoft  protocol  fail to report some middle-button
59              events during mouse motion.  Since the protocol does not distin‐
60              guish  between  the middle button going up and the middle button
61              going down it would be liable  to  get  out  of  step,  so  this
62              decoder  declares  the middle button to be up whenever the mouse
63              moves. This prevents dragging with the  middle  button,  so  you
64              should probably use -t ms+lr instead of this decoder, especially
65              if you want to use  X.   This  mouse  decoder  accepts  standard
66              serial options, although they should not be needed.
68       ms+    This  is  the same as -t ms except that the middle button is not
69              reset during mouse motion. So you can drag with the middle  but‐
70              ton.  However,  if your mouse exhibits the usual buggy behaviour
71              the decoder is likely to get out of step with reality,  thinking
72              the  middle  button  is  up  when it's down and vice versa.  You
73              should probably use -t ms+lr  instead  of  this  decoder.   This
74              mouse  decoder  accepts  standard  serial options, although they
75              should not be needed.
77       ms+lr  This is the same as -t ms+ except that there  is  an  additional
78              facility to reset the state of the middle button by pressing the
79              other two buttons together. Do this when the decoder gets into a
80              confused state where it thinks the middle button is up when it's
81              down and vice versa. (If you get sick  of  having  to  do  this,
82              please  don't  blame gpm; blame your buggy mouse! Note that most
83              three-button mice that do the Microsoft protocol can be made  to
84              do  the  MouseSystems  protocol  instead.  The ``3 Button Serial
85              Mouse mini-HOWTO'' has  information  about  this.)   This  mouse
86              decoder  accepts  standard  serial options, although they should
87              not be needed.
90       msc MouseSystems
91              This is the standard protocol for three-button  serial  devices.
92              Some of such devices only enter MouseSystem mode if the RTS, DTR
93              or both lines are pushed low. Thus, you may try -t  msc  associ‐
94              ated with -o rts, -o dtr or -o both.
97       mman Mouseman
98              The  protocol  used  by the new Logitech devices with three but‐
99              tons.  It is backward compatible with the Microsoft protocol, so
100              if  your mouse has three buttons and works with -t ms or similar
101              decoders you may try -t mman instead to use the  middle  button.
102              This  mouse  decoder  accepts  standard serial options, although
103              they should not be needed.
106       sun    The protocol used on Sparc computers and  a  few  others.   This
107              mouse  decoder  accepts  standard  serial options, although they
108              should not be needed.
111       mm MMSeries
112              Title says it all.  This mouse decoder accepts  standard  serial
113              options, although they should not be needed.
116       logi Logitech
117              This is the protocol used by old serial Logitech mice.
120       bm BusMouse
121              Some  bus devices use this protocol, including those produced by
122              Logitech.
125       ps2 PS/2
126              The protocol used by most busmice.
129       ncr    This `type' is able to decode the pointing  pen  found  on  some
130              laptops (the NCR 3125 pen)
133       wacom  The  protocol  used by the Wacom tablet. Since version 1.18.1 we
134              have a new Wacom decoder, as the old one was  not  working  with
135              new  tablets. This decoder was tested with Ultrapad, PenPartner,
136              and Graphire tablets.  Options: -o relative (default) for  rela‐
137              tive mode, -o absolute for absolute mode.
140       genitizer
141              The This mouse decoder accepts standard serial options, although
142              they should not be needed.
145       logim  Used to turn Logitech mice into Mouse-Systems-Compatible.  Obvi‐
146              ously, it only works with some of the Logitech mice.
149       pnp    This  decoder  works  with  the  new mice produces by our friend
150              Bill, and maybe with the old ones as well. The Pnp  protocol  is
151              hardwired at 1200 baud and is upset by normal initialization, so
152              this is a -t bare decoder with no initialization at  all.   This
153              mouse  decoder  accepts  standard  serial options, although they
154              should not be needed.
157       ms3    A decoder for the new serial IntelliMouse devices, the ones with
158              three  buttons  and a protocol incompatible with older ones. The
159              wheel is currently unused.
162       imps2  ``IntelliMouse'' on the ps/2 port. This type can  also  be  used
163              for a generic 2-button ps/2 mouse too, since it will auto-detect
164              the type.
167       netmouse
168              Decodes the ``Genius NetMouse'' type  of  devices  on  the  ps/2
169              port.  For serial ``Netmouse'' devices, use the ``ms3'' decoder.
173       cal    A decoder of the ``Calcomp UltraSlate device.
176       calr   Same as above, but in relative mode.
179       twid   Support  for  the twiddler keyboard. As of gpm-1.14 this decoder
180              includes a char generator for the text console, but doesn't  yet
181              support  X  keycodes.  If  used  with -R, gpm will anyway repeat
182              mouse events to the X server. More  information  about  twiddler
183              support  can  be  found in README.twiddler, in the gpm distribu‐
184              tion.
187       syn synaptics
188              A decoder for the Synaptics TouchPad  connected  to  the  serial
189              port.   This  mouse  decoder  accepts  standard  serial options,
190              although they should not be needed.
193       synps2 synaptics_ps2
194              Same as above, but for the devices attached to the ps2 port.
197       brw    A decoder for the Fellowes Browser, a device with 4 buttons  and
198              a  wheel.   This  mouse decoder accepts standard serial options,
199              although they should not be needed.
202       js Joystick
203              This mouse type uses  the  joystick  device  to  generate  mouse
204              events.  It  is only available if the header linux/joystick.h is
205              found at compile time. The header (and the device as  well)  has
206              been  introduced only during 2.1 development, and is not present
207              in version 2.0 of the kernel.
210       summa  This is a decode for the Symmagraphics of Genius tablet, run  in
211              absolute  mode.  A repeater is associated to this decoder, so it
212              can -R summa can be used to generate X  events  even  for  other
213              absolute-pointing   devices,   like  touchscreens.  To  use  the
214              repeated data from X, you need a modified xf86Summa.o module.
217       mtouch A decoder for the MicroTouch touch screen. Please refer  to  the
218              file  README.microtouch  in  the  source tree of gpm for further
219              information. In the near future, anyways, I plan to fold back to
220              this documentation the content of that file.
223       gunze  A  decoder  for the gunze touch screen. Please refer to the file
224              README.gunze in the source tree of gpm for further  information.
225              In  the  near future, anyways, I plan to fold back to this docu‐
226              mentation the content of that file. The decoder accepts the fol‐
227              lowing options: smooth=, debounce=. An higher smoothness results
228              in slower motion as well;  a  smaller  smoothness  gives  faster
229              motion  but,  obviously, less smooth.  The default smoothness is
230              9. The debounce time is express in milliseconds and is the mini‐
231              mum  duration  of an up-down event to be taken as a tap. Smaller
232              bounces are ignored.
235       acecad The Acecad tablet in absolute mode.
238       wp wizardpad
239              Genius WizardPad tablet


245       src/mice.c           The source file for pointer decoders


249        gpm(8)      The General Purpose Mouse server
251       The info file about `gpm', which gives more  complete  information  and
252       explains how to write a gpm client.
2564th Berkeley Distribution          July 2000                      GPM-TYPES(7)