95a46c5577
Signed-off-by: Nico Schottelius <nico@ikn.schottelius.org>
197 lines
8.5 KiB
Text
197 lines
8.5 KiB
Text
|
|
This file tries to summarize the questions that I've been responding over
|
|
and over. It is meant to save some time to both you and me :)
|
|
|
|
If your problem with gpm isn't described here, feel free to ask me by
|
|
Email.
|
|
|
|
--
|
|
__ o La forza dei forti sta nel traversare le traversie con occhio sereno
|
|
_`\<, (Paperino)
|
|
__( )/( )__ rubini@prosa.it +39-382-529554
|
|
|
|
|
|
1. Installation / Compiling
|
|
2. Running problems
|
|
3. other questions
|
|
|
|
===========================================================================
|
|
|
|
1. Installation / Compiling
|
|
|
|
===========================================================================
|
|
Q: Compilation fails with
|
|
|
|
yacc gpm-root.y
|
|
make: /usr/bin/make: cannot execute binary file
|
|
make: *** [gpm-root.c] Error 126
|
|
|
|
A: This is a typical error (I've got several of them reported), though
|
|
not related to gpm.
|
|
|
|
It looks like you have an old slackware installation, like mine, or
|
|
another faulty setup. I've been reported that slackware-3 is wrong
|
|
as well.
|
|
|
|
The 'yacc' executable is a shell script that calls bison, and it
|
|
lacks the '#!/bin/sh' line (or has it incorrect, missing the
|
|
'!'). I don't remember the details, but while it runs under your
|
|
shell, it can't be executed under make. I looked in the binfmt
|
|
sources in the kernel, and /bin/sh doesn't appear explicitly, so
|
|
you must fix the first line in the 'yacc' script, and everything
|
|
should go fine.
|
|
|
|
Note however that the server has already been compiles. Only the
|
|
gpm-root client, written with yacc, is affected by this problem.
|
|
|
|
===========================================================================
|
|
|
|
2. Running problems
|
|
|
|
===========================================================================
|
|
|
|
Q: My serial mouse works in X with ms protocol, but behaves erratically
|
|
with gpm on the text console, and I get involuntary pastes.
|
|
|
|
A: Many ms protocol mice equipped with three buttons use an extension
|
|
to the protocol, which consists in repeating events (thus with no
|
|
effect under the normal protocol) to signal a change in the middle
|
|
button. Unfortunately, some old true-ms protocol mice do repeat
|
|
events, thus triggering the middle-button in gpm.
|
|
|
|
If you're running your mouse with ``-t ms'', you'd better try ``-t
|
|
bare'', which is the unadorned ms protocol of the old days. My
|
|
choice to use the third-button extension as the default, was taken
|
|
because a true ms protocol doesn't repeat event notification, and
|
|
because many three button mice feature the extension.
|
|
|
|
---------------------------------------------------------------------------
|
|
Q: I have a serial mouse. It works fine except that when I try to drag
|
|
the mouse with the middle button pressed, gpm assumes that the middle
|
|
button has been released. Dragging with the other buttons works just
|
|
fine.
|
|
|
|
A: You are probably running your mouse with ``-t ms''. In this mode
|
|
dragging with the middle button has been deliberately disabled in
|
|
order to prevent problems with faulty mice that fail to report
|
|
middle-button events during mouse motion.
|
|
|
|
Try using ``-t ms+'' or ``-t ms+lr'' instead.
|
|
|
|
---------------------------------------------------------------------------
|
|
Q: My mouse gets into a state where it thinks the middle button is up
|
|
when it's down and vice versa.
|
|
|
|
A: Your mouse uses an extension to the m$ protocol in order to report
|
|
the middle button. It sends empty events (i.e., no-motion &
|
|
no-button-change) in order to report a change in the status of the
|
|
middle button.
|
|
|
|
Unfortunately many devices that report middle-button events in this
|
|
way often fail miserably to report them correctly during mouse
|
|
motion. Since the protocol does not distinguish between the button
|
|
going up and the button going down it can easily get out of step
|
|
with reality.
|
|
|
|
There are two solutions: either use ``-t ms'', which disallows
|
|
dragging with the middle button, so you can get back to normal
|
|
simply by moving the mouse without any buttons pressed; or (probably
|
|
better) use ``-t ms+lr'', which allows you to reset the state of
|
|
the middle button by pressing the other two buttons together. (If
|
|
you want you can also deliberately get gpm out of step with reality
|
|
by pressing the left and right buttons while holding the middle
|
|
button!)
|
|
|
|
Note that there are many more faulty mice in the world than
|
|
non-faulty ones so you will probably will have to use ``-t ms+lr''
|
|
rather than ``-t ms+''.
|
|
|
|
Note also that most 3-button mice that use the microsoft protocol can
|
|
be made to use the MouseSystems protocol instead. You might want to
|
|
read about this in the ``3 Button Serial Mouse mini-HOWTO''.
|
|
|
|
---------------------------------------------------------------------------
|
|
Q: My mouse doesn't sense the middle button in X, while it works with
|
|
gpm.
|
|
|
|
A: Gpm uses a different decoder (see the previous two answers). You
|
|
can use the ``-R'' option to repeat mouse data to X (look at the man
|
|
page).
|
|
|
|
---------------------------------------------------------------------------
|
|
Q: I have a busmouse, and I have the single-open problem. Is there any
|
|
way around it?
|
|
|
|
A: Try the -R option of gpm (look at the man page)
|
|
|
|
---------------------------------------------------------------------------
|
|
Q: I run "-t ms", and I get double-paste when I press the middle button.
|
|
Is there any workaround?
|
|
|
|
A: Try "-t mman" instead.
|
|
|
|
---------------------------------------------------------------------------
|
|
Q: I have one of the new devices of old dear Bill, and gpm doesn't work any
|
|
more. What can I do?
|
|
|
|
A: Bill chose to use its own Plug-and-Pray specification, which finally
|
|
managed to break what worked painlessly for ages. The decoder for
|
|
any gpm up to 1.12 (and also any X version being used at the time)
|
|
is unable to deal with the new devices, which claim to be designed
|
|
to work with older drivers. Try to use "-t pnp" instead of "-t ms"
|
|
and see if it works with this gpm version. Actually, this version
|
|
might even work with "-t ms" or "-t bare", but I'm not sure about
|
|
it. If the version of X you run has problems, while gpm now works,
|
|
try passing the "-R" option to gpm (see the man page). Note that
|
|
"-t pnp" is strongly discouraged, as any time the serial port is
|
|
opened (for example when switching from X to text mode if "-R" is
|
|
not active) it will take several seconds to be initialized -- a
|
|
design misfeature of pnp. If either "-t ms" or "-t bare" work use
|
|
them instead.
|
|
|
|
If you are in the software field, you can enjoy the inaccuracies of
|
|
the specs and design bugs directly from the originators:
|
|
http://www.microsoft.com/hwdev/download/pnpcom.exe. You'll find the
|
|
following, and more:
|
|
- no support for real multitasking (the mouse driver must be able
|
|
to keep hold of processor time for at least 1 second).
|
|
- no pnp vendor will be able to support three buttons any more (no
|
|
more mouse protocols, all mice must behave the same).
|
|
- similary, only 1200 baud devices (any serial device) are supported,
|
|
because the initialization string of pnp devices only tells
|
|
the vendor and release, with no information about required
|
|
port configuration.
|
|
- people with UPS will have great troubles with ms software
|
|
because the pnp probing sequence plays with DTR, and w95
|
|
probes all serial ports. This funny idea might turn off
|
|
the UPS connected with your computer just after booting w95.
|
|
|
|
Don't despair. They will manage to make worse designs later on.
|
|
|
|
---------------------------------------------------------------------------
|
|
Q: I have an old 386 computer around here and gpm is _really_ slow. Is there
|
|
any way I can make it faster ?
|
|
|
|
A: Go into src/headers/gpmCfg.h and look for DEF_CLUSTER. Change its values from
|
|
0 to 10.
|
|
|
|
---------------------------------------------------------------------------
|
|
Q: gpm.conf is not accepted / does not work, but gpm works from command line.
|
|
|
|
A: gpm.conf is not from gpm itself. Please contact your distrubtion support
|
|
to clearify whats wrong.
|
|
|
|
===========================================================================
|
|
|
|
3. other questions
|
|
|
|
===========================================================================
|
|
|
|
Q: I am gonna buy computer X, do I have any chance getting gpm running on it?
|
|
A:
|
|
a) If it does not work, you could at least try to port it ;)
|
|
|
|
b) As report by a friend, gpm currently runs on Linux on
|
|
- i386 - Alpha - ARM - PA-RISC - ia64 (Itanium) - PPC - m68k - MIPS - SPARC
|
|
|
|
It's possible that you need some patches for some architecture.
|