From: pls123 on 18 Apr 2010 18:59 Hello !! i need to make a little change to the normal behavior of the mouse.... the normal relation between mouse movement and pointer is linear.. but i neeed it to be with a little exponential correction: pointermovement = mousemovement ^1,1 (value at editable user's choice) this is to have a kind of continuous acceleration, necessary to have more precision for the pointer at low speed of mouse, and also more response when making a fast spin ... what should i do..? tx paolo ita
From: Doron Holan [MSFT] on 19 Apr 2010 13:21 windows already does something similar. while the raw data from the hw is linear, windows computes mouse movement in a non linear fashion. if you really think you want to do this, write a mouse upper filter driver and alter the raw hardware information. remember that there is no floating point math libraries available to you in the kenrel. d -- This posting is provided "AS IS" with no warranties, and confers no rights. "pls123" <pls123(a)discussions.microsoft.com> wrote in message news:3C0D9BF4-EEBF-4F6C-A680-019074642303(a)microsoft.com... > > > Hello !! > > i need to make a little change to the normal behavior of the mouse.... > > the normal relation between mouse movement and pointer is linear.. > but i neeed it to be with a little exponential correction: > > pointermovement = mousemovement ^1,1 (value at editable user's choice) > > this is to have a kind of continuous acceleration, > necessary to have more precision for the pointer at low speed of mouse, > and also more response when making a fast spin ... > > what should i do..? > > tx paolo ita >
From: m on 20 Apr 2010 20:37 IIRC a similar algorithm has been implemented by Microsoft and the parameters are adjustable via control panel -> mouse / registry settings. "Doron Holan [MSFT]" <doron.holan(a)online.microsoft.com> wrote in message news:ecr0UT#3KHA.5324(a)TK2MSFTNGP05.phx.gbl... > windows already does something similar. while the raw data from the hw is > linear, windows computes mouse movement in a non linear fashion. if you > really think you want to do this, write a mouse upper filter driver and > alter the raw hardware information. remember that there is no floating > point math libraries available to you in the kenrel. > > d > > -- > > This posting is provided "AS IS" with no warranties, and confers no > rights. > > > "pls123" <pls123(a)discussions.microsoft.com> wrote in message > news:3C0D9BF4-EEBF-4F6C-A680-019074642303(a)microsoft.com... >> >> >> Hello !! >> >> i need to make a little change to the normal behavior of the mouse.... >> >> the normal relation between mouse movement and pointer is linear.. >> but i neeed it to be with a little exponential correction: >> >> pointermovement = mousemovement ^1,1 (value at editable user's choice) >> >> this is to have a kind of continuous acceleration, >> necessary to have more precision for the pointer at low speed of mouse, >> and also more response when making a fast spin ... >> >> what should i do..? >> >> tx paolo ita >>
From: USH on 14 May 2010 17:30 Hi sorry for the delay.. there was a problem with EMail notification... tx Doron for help but i don't have any idea about how to procede in that way !! i could follow the way suggested by m , but i have no link to the registry in my vista control panel / mouse ... perhaps because i have intellipoint panel installed, but it should add things and not hide others !! i heard by a friend about making a mouse hook.. should i study for it ?? tx for any suggestion !! "pls123" wrote: > > > Hello !! > > i need to make a little change to the normal behavior of the mouse.... > > the normal relation between mouse movement and pointer is linear.. > but i neeed it to be with a little exponential correction: > > pointermovement = mousemovement ^1,1 (value at editable user's choice) > > this is to have a kind of continuous acceleration, > necessary to have more precision for the pointer at low speed of mouse, > and also more response when making a fast spin ... > > what should i do..? > > tx paolo ita >
From: Ray Trent on 21 May 2010 14:18 On 4/19/2010 10:21 AM, Doron Holan [MSFT] wrote: > you really think you want to do this, write a mouse upper filter driver > and alter the raw hardware information. remember that there is no > floating point math libraries available to you in the kenrel. Unfortunately, this advice isn't entirely possible to actually implement. The function Windows uses is non-reversible, optimized for mice only, and has some really quirky and subtle bugs/"features" that I've tried to get fixed in the past with little success. Perhaps the most obvious of the difficulties is that you can only send integer amounts of motion in X and Y, and that quantization is amplified by the Windows transfer functions in non-reversible ways. You also can't just send a whole bunch of single mickey movements because of some bugs in the way Windows tries to compensate for mouse report rates (I suspect, though of course that's very hard to prove without looking at the source), and due to at least one bug I suspect to be a simple rounding or overflow error involving small motions specifically in the up & left directions. The only way to *really* "do what you want" (assuming that's actually a desirable goal here) is to have your filter suppress *all* reports, send its packets up to a usermode service that can query the position of the pointer, and update it itself to the absolute position on the screen where it calculates it wants it. Even that doesn't work perfectly, because there's no atomic way to relatively move the cursor other than through the Windows ballistics. Also, you can't use the absolute mode interface in the kernel because people can hork the pointer around the screen under software control and there's no way to query the position from the kernel. I've always found it easier to just live with the Windows mouse ballistics, even though there are several cases where I feel I could improve on them when using non-mouse devices (like pointing sticks and touchpads) having different usage models and constraints. -- Ray
|
Pages: 1 Prev: Why no "disable" option in device manager? Next: Change icon for USB storage disk |