[comp.sys.cbm] M1 Mouse

ugbowen@sunybcs.UUCP (01/04/87)

I got an M-1 mouse for Christmas. It's put out by Contriver Tech, Inc.
I assume it's totally compatible with the 1350 mouse from Commodore so
I thought I might get some help from the CBM engineers. The mouse can
act as a joystick in any situation where the joystick can be used. I
always thought the mouse to be a device that would give two speed: one
in the x direction and one in the y. From this a velocity vector could
be calculated by the system. If I am right, how is this signal converted
by the joystick port to return the simple four bit direction scheme? I
know that the mouse can be used as a velocity vector since one may go
in any direction in the GEOS package. This is all very confusing and I
can't find anything at all about it. Can someone take the time to explain
some of this? Thanks...

                                   Devon Bowen (KA2NRC)
                                   University of Buffalo

********************************************************
csnet:	 ugbowen@buffalo.CSNET
uucp:	 ..!{allegra,decvax,watmath,rocksanne}!sunybcs!ugbowen
BITNET:  ugbowen@sunybcs.BITNET
Voice:   (716) 836-7358
USnail:  67 Lisbon Ave; Buffalo, NY; 14214
********************************************************

wtm@neoucom.UUCP (Bill Mayhew) (01/05/87)

Hi Devon, et al;

	The 1350 mouse for the C64/C128 is the same as the mouse
that plugs into the Amiga.  It has two IR LEDs that sine though a
chopper wheel onto 4 photo transistors (two per axis).  The
transistors are set up in an arragnement such that as one moves the
mouse, they generate sqare waves that are in quadrature phase
relationship.  That is to say that as one moves the mouse forward,
one transistor's squarewave will lead the other by 90 degress.
Reversing the mouse direction will cause the phase to switch to
lagging by 90 degress.  The using one transistor output as a
trigger makes it possible to determine which direction the mouse is
moving depending on whether the other transistor's output is high
or low at the time of the trigger.  The number of triggers per
second is, of course, directly proportional to the speed the mouse
is moving.

	Now, for the neat part.  Since the mouse has four digital
outputs, these go to the same four pins as the joystick contacts.
It is possible to simply plug in the mouse and have it sort of work
like a joystick.  One one rolls the mouse, it is like repeatedly
bumping the joystick lever.  As you might guess, this doesn't work
very well.  It is possible for software to look at what is
happening and figure out what sort of input device is there by the
type of pulses coming in, but it is really easier to just have the
user indicate whether the mouse or joystick is in use.

	The new Commodore mouse is model 1351.  This one is
especially for the C64/128 and comes with a GEOS update disk (so
wait before you download all that stuff from Quantum Link).
Reportedly the 1351 has some electronic goodies inside or something
that makes it quite different.  My parents just got a 1351 for
their C64 yesterday and I haven't gotten a chance to go over to
their place and disect it yet.

  --Bill

Bill Mayhew
Division of Basic Medical Sciences
Northeastern Ohio Universities' College of Medicine
Rootstown, OH  44227  USA    phone:  216-325-2511
(wtm@neoucom.UUCP    ...!cbatt!neoucom!wtm)

grr@cbmvax.cbm.UUCP (George Robbins) (01/06/87)

In article <352@neoucom.UUCP> wtm@neoucom.UUCP (Bill Mayhew) writes:
>
>Hi Devon, et al;
>
>	The 1350 mouse for the C64/C128 is the same as the mouse
>that plugs into the Amiga.

	** THIS IS NOT CORRECT **

>                            It has two IR LEDs that sine though a
>chopper wheel onto 4 photo transistors (two per axis).  The
>transistors are set up in an arragnement such that as one moves the
>mouse, they generate sqare waves...

	* TRUE IN THEORY *

Anyway, the 1350 contains a clever 4-bit process that translates
the quatrature signals into joystick pulses.  This provides good
software transparency.

The new mouse, the 1351, contains an even more clever gate array
that provides the same joystick emulator *AND* analog joystick
game paddle emulation.   This works much better, as long as the
software is prepared to play along...
-- 
George Robbins - now working for,	uucp: {ihnp4|seismo|rutgers}!cbmvax!grr
but no way officially representing	arpa: cbmvax!grr@seismo.css.GOV
Commodore, Engineering Department	fone: 215-431-9255 (only by moonlite)

wtm@neoucom.UUCP (01/09/87)

Hi,

It seems that I might have goofed on my description of the 1350
mouse.  I was under the impression that it sent quadrature phase
pulses right to the db9 connector.  According to the technical
person at the local dealer, it can be interchanged with the Amiga
mouse.

Subsequently, some of the net people tell me that there is a 4 bit
microprocessor in the mouse that converts the chopper wheel output
quadrature signal into an emulation of pushing the buttons on the
joystick.

I guess I'll have to check with an oscilloscope to be sure.  One
thing I do know is that the 1351 mouse works very well with Geos,
and is worth the extra expense to get the Geos update disk.

Bill