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.
 |