home *** CD-ROM | disk | FTP | other *** search
- * OptMouse.c
- *
- * Serial Port Optical Mouse Driver
- *
- * (c) Copyright 1989,1991 J. Edward Hanway
- * 149 Arborwood Crescent
- * Rochester, NY 14615
- * BIX, GEnie, PLink: jehanway
- * Usenet: uunet!sisd!jeh or jeh@sisd.kodak.com
- *
- * This code may be freely redistributed for non-commercial purposes. There
- * is NO WARRANTY on this program. The author assumes no responsibility for
- * any damages resulting from use of this program. You know the drill.
- *
-
- Usage (from CLI only):
- OptMouse [-a<thresh>,<accel>] [-m[iddle]] [device [unit]]
- OptMouse [-k[ill]]
-
- Examples:
- OptMouse Starts mouse driver (in the background) on
- serial.device, unit 0.
-
- OptMouse foo.device 1 Starts mouse driver using foo.device, unit 1.
- Unit is optional, but if you want a unit other
- than zero, you must specify the device, even
- if it's just serial.device.
-
- OptMouse -a5,2 Accellerate movements larger than 5 counts
- by a factor of 2.
-
- OptMouse -middle Starts mouse driver. Translates middle button
- OptMouse -moo events into shift-left button events.
-
- OptMouse -m foo.dev 1 You get the idea.
-
- OptMouse -kill Stops mouse driver. (Frees serial port.)
- OptMouse -kwack
-
- Background:
- The M3 (or M2) is a serial, optical mouse made by Mouse Systems
- Corp. of Santa Clara, CA. They are very nice, true optical mice (as
- in no-moving parts, not the "opto-mechanical" market-speak like
- the Amiga mouse) and are (were? still?) used by Sun Microsystems
- for their workstations. According to the "Optical Mouse Technical
- Reference Manual" the mice come with a variety of connectors, including
- ones which have DB25 serial connectors and are powered by a separate
- power pack, but the one I got had an RJ11C (modular telephone)
- connector, which I wired to get power from the Amiga 2000 serial port
- as follows:
-
- DB25S RJ11C
- to Amiga to mouse
- 3+------+
- Pin 3 (Data) ----------| |2
- 1| |------------- Pin 4 (Signal)
- Pin 10 (-12V)----------| 1488 |
- 14| |7
- +----| |----------------------------+
- | +------+ |
- | |
- | 1+------+3 |
- Pin 9 (+12V) -----+----| 7805 |----+-------- Pin 3 (+5V) |
- | +---+--+ | |
- .01uF === 2| === .01uF |
- | | | |
- Pin 7 (GND) -----+--------+-------+---+---- Pin 2 (GND) |
- | |
- +-------------------+
-
- I managed to cram this circuit inside a DB25-to-modular adapter.
-
- Caveats:
- As far as I can tell, the events that this program generates are
- identical to genuine mouse events, but Digi-Paint (version 1)
- doesn't like me, and hangs when I use the optical mouse to try to
- load a picture. I know of no other incompatibilies with "normal"
- programs which read the mouse via Intuition. Games which take over
- the machine and/or go straight to the hardware will obviously not
- work.
-
- Gurus, which require you to click the left mouse button to continue,
- apparently go straight to the hardware (what else can they do?) and,
- thus, don't work.
-
- I have not tested this with any add-on serial port.
-
- Apparently these mice can be had for cheap at hamfests, etc. because
- they're not strictly compatible with a PC, I guess. If you do find
- one, make sure you get the reflective mouse pad with it!
-
- Disclaimer:
- Mouse Systems has nothing to do with this and has never heard of me.
-