home *** CD-ROM | disk | FTP | other *** search
- MouseCtrl Module version 1.01 (15-Feb-1992)
- ===========================================
-
- This module provides a flexible mouse speed controller for general use.
- Unlike most similar modules, MouseCtrl uses a rather more complex mechanism
- for determining the current actual mouse speed and when to change the mouse
- step multiplier from the slow to the fast setting and visa versa to get
- round most of the problems associtiated with most mouse speed controllers.
-
- When enabled, the module maintains a record of the average mouse speed over
- the previous 1/5th second or so, based on taking a speed sample every 1/20th
- second and using a system of continous averaging to prevent spurious step
- rate changes due to speed spikes that tend to occure due to uneven mouse mats,
- friction, slipping etc.
-
- As a further aid to preventing spurious step rate changes, two threshold
- levels are used to determin when the step multiplier should be changed. One
- for transitions between slow and fast modes, the other for transitions
- between fast and slow modes.
-
- Normally the slow to fast threshold is set much higher than the fast to slow
- threshold to provide hysterisis, and thus far more predictable speed
- switching from the user's point of view.
-
- Commands
-
- *MouseCtrl_Setup <slow> <fast> <stof> <ftos> [<state>]
- (defaults are 8 2 2 4 0)
- This command is used to set the mouse step multiplers and thresholds used.
- <slow> is the step multiplier used for slow mouse movement.
- <fast> is the step multiplier used for fast mouse movement.
- <stof> is the slow to fast speed switch threshold level. Values in the range
- 8 to 24 are most suitable.
- <ftos> is the fast to slow speed switch threshold level. Values in the range
- 1 to 8 ae most suitable.
- <state> is the MouseCtrl on/off state. 0 for off, 1 for on.
-
- *MouseCtrl_On
- (default is off)
- This command is used to switch the speed controller on.
-
- *MouseCtrl_Off
- This command is used to switch the speed controller off.
-
-
- SWI calls
- As there is a wimp utility to aid setting up MouseCtrl, a number of SWI
- calls have been implemented primarily to provide the wimp utility with a
- control and status interface to MouseCtrl.
-
- MouseCtrl_State (&C1000)
- Switch MouseCtrl on or off.
-
- On entry:
- R0 = 0 to switch MouseCtrl off, 1 to switch it on.
- On exit:
- All registers preserved.
-
-
- MouseCtrl_Setup (&C1001)
- Set step multipliers and threshold levels.
-
- On entry:
- R0 = slow step multiplier.
- R1 = fast step multiplier.
- R2 = slow to fast threshold level.
- R3 = fast to slow threshold level.
- R4 = new state: 0 for off, 1 for on
- On exit:
- All registers preserved.
-
- MouseCtrl_Info (&C1002)
- Read current MouseCtrl setup.
-
- On entry:
- No parameters.
- On exit:
- R0 = slow step multiplier.
- R1 = fast step multiplier.
- R2 = slow to fast threshold level.
- R3 = fast to slow threshold level.
- R4 = Current state: 0 for off, 1 for on.
-
- MouseCtrl_Speed (&C1003)
- Read average mouse speed and speed flag.
-
- On entry:
- No paramters.
- On exit:
- R0 = Average mouse speed
- R1 = Current speed flag value: 0 for slow, 1 for fast
-
- This call is only valid when the MouseCtrl is switched on.
-