Revision 1.0 July/16/199810
GL310MC PS/2 4D Mouse Controller
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
Byte 1 0Remote Enable Scaling 0Left Middle Right
Byte 2 000000 Resolution
Byte 3 Sample rate
Remote: 1= Remote (polled) mode, 0 = Stream mode.
Enable : 1 = Data reporting enabled, 0 =disabled. This bit only has effect in Stream mode.
Scaling: 1 = Scaling is 2:1, 0 = scaling is 1:1.
Left: 1=Left button is currently pressed, 0 = released.
Middle: 1 = Middle button is currently pressed, 0 = released.
Right: 1 = Right button is currently pressed, 0 = released.
Resolution : The current resolution setting, from 0 to 3 as described under Set Resolution ($E8)
below.
The current sample rate sample rate setting, from 10 to 200 as described under Set
Sample Rare ($F3) above.
$E8 Set Resolution. Followed by one argument byte, this command sets the PS/2 " resolution"
parameter. Legal argument values are $00, $01, $02, and $03, corresponding to resolutions
of 1, 2, 4, and 8 counts per mm, respectively.
$E7 Set Scaling 2:1. Sets the PS/2 "scaling" bit, to enable a non-linear motion gain response. The
mouse records this value and will respond properly to a later Status Request ($E9) command.
$E6 Set Scaling 1:1. Clears the PS/2 "scaling" bit, as described above.
other If the device receives an invalid command byte, it replies with a Resend ($FE) byte. If it
immediately receives a second invalid command, it replies with an Error ($FC) byte.
4.5.2 Extended PS/2 commands for Microsoft IntelliMouse
To set the mouse to the extended mode, the driver sends the following command sequence:
Set Sample Rate 200 HZ ($F3 $C8)
Set Sample Rate 100 HZ ($F3 $64)
Set Sample Rate 80 HZ ($F3 $50)
Set Sample Rate 60 HZ ($F3 $3C)
For the mouse to change modes, it must receive these commands exactly as shown with no
other commands interspersed in the sequence. Once the driver sends this sequence, it must
determine whether the mouse supports the extended mode, so it will know to expect the extra
wheel data that is not a typical part of a PS/2-compatible mouse data packet. Once the mouse
changes to the extended mode, its device ID becomes $04.
Typically, a PS/2-compatible mouse has an ID of $00. Immediately after sending the Set
Sample Rate sequence, the driver issues a Read Device Type ($F2) command. If the mouse returns
an ID of $04, then the driver knows a mouse device is attached and expects an extended PS/2-
compatible mouse data packet. If the driver doesn't receive a device ID of $04 in response to the
Read Device Type command, it will issue a Reset ($FF) command and start over, treating the