Wednesday, March 3, 2010

The MarkC Windows 10 + 8.1 + 8 + 7 Mouse Acceleration Fix

The 'MarkC Windows 10 + 8.1 + 8 + 7 Mouse Acceleration Fix' is available for download from this link:
DO NOT USE THIS: MarkC_Windows_10+8.x+7_MouseFix.zip @ google drive (version 2.9).
Use this: MarkC_Windows_10+8.x+7_MouseFix.zip @ onedrive.com (version 2.9)
(... then click the OneDrive Download button when it appears. Note this is NOT a direct download link.)

For help for the fix, visit the ESReality MarkC Windows 7 Mouse Acceleration Fix page:
http://www.esreality.com/?a=post&id=1846538

What is it?

It is a registry file that removes Windows 7 or 8 or 8.1 or 10 mouse pointer acceleration.

It is like the CPL Mouse Fix and Cheese Mouse Fix, but gives exactly 1-to-1 mouse to pointer response for Windows 7 or Windows 8.x or Windows 10.

Exactly 1-to-1 means no discarded or delayed mouse input while game playing.

How do you use it?

  • Find the display DPI that you currently use:
    Click Start, click Control Panel, select Appearance and Personalization, select Display.
    See if you have 100% or 125% or 150% selected.
    (On Windows 8.1 or 10, if you see a 'Smaller...Larger' slider, then:
    - the 1st slider position will be 100%,
    - the 2nd slider position will be 125%,
    - the 3rd slider position (might not be shown) will be 150%.)


  • Open the ZIP file at the link above.

  • Select the folder that matches the Windows version you use and Double-click it.

  • Select the REG file that matches the DPI% you use and Double-click it.

  • Answer Yes, OK to the prompts that appear.
    (See below for non-Administrator account use.)

  • Reboot or Log off to apply the fix (you have to reboot or Log off).

  • Enjoy exactly 1-to-1 mouse to pointer response!
    (If you applied one of the Windows 2000 or Windows 98/95 Acceleration fixes, then 'Enhance pointer precision' must be checked ON to enable it.)

Why do you need the fix?

If you don't know you need it, then you don't need it!

Some older games, such as Half-Life 1, Counter-Strike 1.x, Quake, Quake 2, Unreal and others, while they are active and running, call a Windows function intending to disable variable mouse acceleration by forcing ALL movement to be accelerated by the same amount (doubled).
On Windows 2000 and earlier, that removed all variable acceleration.
Pointing and aiming in those games was OK, because the mouse response was then linear (all movement was accelerated by the same amount; it was doubled).

In XP, and later Windows versions, Microsoft changed how mouse pointer acceleration worked.
Now when those games call the function (asking that all movement be accelerated), Windows enables the mouse 'Enhance pointer precision' feature, which adds mouse acceleration using a varying curve to control the mouse response. (It enables it even if you have it turned off in the Control Panel Mouse settings.)

With 'Enhance pointer precision' enabled, slower mouse movements make the pointer go extra slow and faster mouse movements make the pointer go extra fast. It is not linear and not straightline.

This is annoying, because where you are aiming at depends on how far you move your mouse, and also on how fast you moved the mouse to aim.

How does the fix work?

It redefines the curve used by the 'Enhance pointer precision' feature to be a completely straight line. The slope of the line is tuned so that every on-mouse-pad mouse movement is turned into exactly the same amount of on-screen pointer movement.

How do you know the fix is working?

You can test if it is working by temporarily turning on the 'Enhance pointer precision' feature and see how the mouse responds.
(NOTE: Unless you applied one of the Windows 2000 or Windows 98/95 Acceleration fixes, only turn 'Enhance pointer precision' on for testing: it should normally be set OFF.)

If you have 'Enhance pointer precision' OFF, then the fix will not be active (but it will be waiting to be activated when needed).
Just as some games turn it on when you don't want them to, we can turn it on manually to test that the fix is working properly.

  • Go to Control Panel, and select Hardware and Sound, then click Mouse. Select 'Pointer options' and check-ON/enable the 'Enhance pointer precision' option.

  • See how the mouse responds.

  • If you want, you can set the Control Panel 'pointer speed' slider set to the 6th, middle position and run the MouseMovementRecorder.exe program that is included in the ZIP file to see that the mouse and pointer movements are 1-to-1 and always the same.
    (The numbers in the MOUSE MOVEMENT column should be the same as the numbers in the POINTER MOVEMENT column. Any differences will appear in green or red.
    If you do see differences, also test with 'Enhance pointer precision' OFF, in case the problem is with Windows or MouseMovementRecorder.exe rather than a problem with the fix:
    - Press the A key on the keyboard while MouseMovementRecorder is running until EnPtPr Accel is Off. Press A TWICE if EnPtPr is already Off!
    - When EnPtPr Accel is OFF, if there is a lot of red and green, press the '+' key on the keyboard and move the mouse.
    - Repeat '+' and move the mouse until most of the red and green disappears.
    - Press the A key on the keyboard to toggle EnPtPr Accel and move the mouse.
    - If the amount of red and green is roughly the same when EnPtPr Accel is ON as when EnPtPr Accel is Off, then the fix is working.)

    (NOTE: If you use Windows 10, & scaling of items is not 100%, see below.)
    (NOTE: If you use Windows 8.1 and have too much green and red, see below.)
    (NOTE: While running a game, you may see many red and green lines.
    Games that need a fix usually frequently re-position the pointer and this confuses MouseMovementRecorder.exe but DOES NOT mean acceleration.

    See http://www.esreality.com/?a=post&id=1846538#pid1927879 - scroll to 'Comment #271'.)

  • Turn the 'Enhance pointer precision' option OFF when you have finished testing.
    (Unless you applied one of the Windows 2000 or Windows 98/95 Acceleration fixes, then leave 'Enhance pointer precision' checked ON to enable it.)

Does my game need a mouse fix?

You can test your game to see if it turns 'Enhance pointer precision' ON, and needs a mouse fix.

  • Turn the 'Enhance pointer precision' option OFF,
  • Run Mouse Movement Recorder (included in the ZIP file),
  • Run your game (aim at something!) and look at the 'EnPtPr' column footer at the bottom of the Mouse Movement Recorder window.
    If it is displayed with a red background then the game has turned acceleration ON and needs a mouse fix.

Is this fix different from the Cheese Mouse Fix?

The 'Enhance pointer precision' option works slightly differently in Windows 7 than it does in XP and Vista, and slightly differently again in Windows 8.x and 10.

The Cheese Mouse Fix gives exactly 1-to-1 mouse response for Windows XP and Windows Vista.

The MarkC Mouse Fixes give exactly 1-to-1 mouse response for Windows 7 & 8.x & 10.

(Note: Both fixes need the Control Panel 'pointer speed' slider set to the 6th, middle position to give exact 1-to-1.)

But I don't use the middle 6/11 pointer speed setting?

If you want exact 1-to-1 in-game response when the pointer speed slider is not in the 6/11 position, or you have a custom display DPI, see the MarkC Mouse Fix Builder, which works for Windows 10, 8.x, 7, Vista and XP.
For those older games that turn acceleration on, it gives the same response as position 6/11 does (1-to-1), without having to move the pointer speed slider to 6/11.
The MarkC Windows 10 + 8.1 + 8 + 7 + Vista + XP Mouse Acceleration Fix Builder

The MarkC Mouse Fix Builder can also create a fix that emulates Windows 2000 or Windows 98 or Windows 95 acceleration.

How do you remove it?

  • Open the ZIP file at the link above.
  • If you use Windows 7 or Vista or XP:
    Select 'Windows_7+Vista+XP_Default.reg' and Double-click it.
  • If you use Windows 8 or Windows 8.1 or Windows 10:
    Select 'Windows_10+8.x_Default.reg' and Double-click it.
  • Answer Yes, OK to the prompts that appear.
  • Reboot or Log off.

I use Windows 10 and scaling of text, apps and other items is not 100%

In later versions of Windows 10, Microsoft changed how the mouse pointer is moved in response to mouse input, when scaling of text, apps and other items is not 100%, and Enhance pointer precision is OFF.

Mouse pointer movements when Enhance pointer precision is OFF, are now scaled according to the per-monitor scaling of items setting.

When Enhance pointer precision is OFF, and the Control Panel pointer speed slider is set to 6/11, MouseMovementRecorder will not show all-black, exact 1-to-1, but instead Pointer Movement will be multiplied by the same scaling factor applied to text, apps and other items.

Games may also see this difference, or not, depending on their "DPI Awareness".

I use Windows 8.1 and see too much green and red in MouseMovementRecorder

Windows 8.1 introduced changes to mouse input processing to reduce power used and improve battery life:
Windows 8.1 delays and coalesces (merges) mouse input for programs, causing the effective mouse polling rate to be as low as 62 Hz in some cases (even for gaming mice with a higher polling rate).

This new processing can affect some games (games that don't use Raw Input and don't use DirectInput). Microsoft have a December 2013 Windows Update Rollup that includes a fix for those games, which will be automatically installed when you have Windows Update set to install updates automatically.
(See here: KB2908279 Mouse pointer stutters or freezes when you play certain games in Windows 8.1.)

The new processing can also affect MouseMovementRecorder and cause it to show red and green (with the mouse delays, MouseMovementRecorder sees a mouse movement from DirectInput, but doesn't see the pointer move until MUCH MUCH later and can't figure out what's going on and displays red and green).

If the KB2908279 update fix is installed, MouseMovementRecorder will activate it
to give more responsive mouse pointer movement and stop the red and green.

Otherwise, while running MouseMovementRecorder, select it and press the '+' key
on the keyboard a until the red and green stops.

If Control Panel, Appearance and Personalization, Display shows a 'Smaller...Larger' slider, high DPI monitors might need a custom size and/or a fix-builder fix to get exact 1-to-1.
See this blog article:
Windows 8.1 DPI Scaling Enhancements @ Extreme Windows Blog
The new multi-monitor DPI scaling in Windows 8.1 is a good thing if you have multiple monitors with different pixels-per-inch values, BUT it might make it harder to find the correct Item Size percentage when choosing which MarkC fix to use to get exact 1-to-1.
Try clicking the 'Let me choose one scaling level for all my displays' checkbox and then find the percentage needed so that your main (gaming) monitor looks the same as it did when using the 'Smaller...Larger' slider (this may require some reboots).
When you have the right percentage value, click '...one scaling level...' OFF (so that you get the benefit of the new Multi-monitor DPI scaling - if you need it) and use the percentage value to choose which fix you need, or to create a Fix-Builder fix.

Loading the fix with a non-Administrator account

When adding the mouse acceleration fix to the registry, you may get this error message:

"Cannot import (filename).reg: Not all data was successfully written to the registry."

This error happens because part of the fix turns off acceleration for the Welcome screen (the log on screen).
If you use the Welcome screen (or the Windows Log in dialog) and acceleration is NOT turned off for the Welcome screen, then the MarkC fixes have a 1 pixel / 1 mouse count error when the mouse changes direction left/right or up/down.

You can remove this 1 mouse count error by any of these methods:

  • Run Disable_WelcomeScreen+Login_Accel.CMD as Administrator (Right-click > Run as administrator).
  • Add/Merge Disable_WelcomeScreen+Login_Accel.reg to the registry while logged in as an administrator.
  • Run RegEdit.exe and edit 'HKEY_USERS\.DEFAULT\Control Panel\Mouse\MouseSpeed' to 0 (zero), while logged in as an administrator.
  • Not moving or touching the mouse while using the Welcome screen (use arrow keys to select the user and Enter key to log in).
  • Ignoring the 1 mouse count error! It's only a single count: You won't notice it.

780 comments:

«Oldest   ‹Older   201 – 400 of 780   Newer›   Newest»
Anonymous said...

win98 does not have SmoothMouseXCurve / y, then I remove it?

Unknown said...

I am getting a seriously problem...i have been playing CS 1.6 for like 8 yrs now on Xp with 60 hz desktop Freq 1024*768 desktop resol. , 6/11 pointer speed , pointer prescription off ...and ingame resolution is 800*600 game sensi 1.5 mouse filter Zero...But now i bought a new laptop which i wish to play cs on...but cant adjust to it...i cant feel the same when i do on my Pc...win 7 resolution is 1366*768 mouse speed 6/11 dpi is 100% pointer prescription is off...ingame resol. is 640*400. I use razor deathadder acceleration is Zero and 900 dpi setting was done both in 7 and xp.My mouse setting has not been changed! PLEASE Someone help me Configure my laptop so i can feel my Pro game again :D heheh...And also i feel extra mouse acceleration in 7 but in xp a little mouse acceleration feels great!!!PLEASE HELP!

Anonymous said...

linux how to disable acceleration? 100%

badsykes said...

Hello Mark

Sorry for late answer...Windows 2000 tracking felt very natural with accel for my brain to acomodate..
For now i want the Enhance mouse precision to behave like in Windows 2000 profesional stock.I see there were 3 levels of accel in windows 2000 but i didn't know this when used that os so i got acustomed to the stock one..
From what i remeber this were the settings in Windows XP when i was in my glory in Half life 2 Deathmatch were:
- A4 tech 750F at 1200dpi
- 1600x1200 Crt screen resolution 100HZ refresh
- Microsoft intelipoint drivers
- Enhance mouse precision activated and the mouse cursor speed was 2 notches lowered in windows.

Now i have a Zowie EC2 mouse at 1000hz pooling rate and 1000dpi with 1680x1050 screen at 60hz.
22 inch LCD monitor.
The writing is set at 100% smaller...

First i want to get the windows 2000 stock acceleration back..
All new High dpi mices have a big problem.They tend to feel lazy and the cursor is always behind my hand and it feels like i am pulling the cursor with rope...
I had many high dpi mices and all exhibit the behaviour above..If i raise sensitivity in windows they will get way too sensitive..
Logitech Bj58 didn't exhibit this behaviour.
http://www.microsoft.com/hardware/en-us/d/basic-optical-mouse
Also this one don't exhibit the problem..
Seems to me that native low dpi, cheap mices (like the one above) have a real 1-1 movement exactly like i move my hand on mousepad..

My gaming style like this: long mouse movement on pad to translate exactly on screen like a long move of cursor..For suddent turnings i use accel..

Thank you for your time

Mark Cranness said...

> For now i want the Enhance mouse precision to behave like in Windows 2000 profesional stock.I see there were 3 levels of accel in windows 2000 but i didn't know this when used that os so i got acustomed to the stock one..

Do you remember which accel level you used in Windows 2000?
"Slow" can be almost exactly emulated on XP/Vista/7 WHEN using a 125Hz polling rate. See below for polling rate problem.

> First i want to get the windows 2000 stock acceleration back..
All new High dpi mices have a big problem.They tend to feel lazy and the cursor is always behind my hand and it feels like i am pulling the cursor with rope...

This is likely because of the 1000Hz polling. Higher than standard 125Hz polling rates severely reduce Windows XP/Vista/7 control panel 'Enhance pointer precision' acceleration. A modified curve can compensate for that, fairly easily at 250Hz, less so at 500Hz and not very well at 1000Hz.
(At 125Hz, mouse movement might be 8, 12, 16, and have accel for 8,12,16 applied. At 1000Hz, Windows sees 1,1,1,1,1,1,1,1,2,1,2,1,2,1,2,1,2,2,2,2,2,2,2,2 (a larger number of smaller movements), and only applies accel for 1 or 2, which is not very much.)

> Seems to me that native low dpi, cheap mices (like the one above) have a real 1-1 movement

It is likely the polling rate reducing the accel, rather than the DPI.

Anonymous said...

Hi, does the program rinput.exe and your program MarkC fix work together? I see that some ESEA-Invite CS 1.6 players say that they use both of them together.

Mark Cranness said...

> does the program rinput.exe and your program MarkC fix work together? I see that some ESEA-Invite CS 1.6 players say that they use both of them together.

Using them both can't hurt, but as far as I know, using RInput completely bypasses any registry curve (including my fix), and is better than my fix, because it removes negative accel as well (my fix only removes positive, control panel accel).

If RInput works for your game (it works for CS1.6 AFAIK), then it's all you need.

Anonymous said...

Hi, do you have any idea what's going on when Mouse Movement Recorder shows 99% green bars in CS1.6. There are very few reds and blacks both. I run 6/11, 400 dpi, 1.4 ingame sens and no drivers for the logitech mx518.

In Windows(7 professional) everything's fine, 1:1 movement and no accel. I got a recent clean install. Using the 6/11 100% dpi version of your mousefix.

The numbers in-game are kinda insane (feels that way too), like
-23x13 * 3x1 * 125hz * Off
-23x17 * 0x4 * 125hz * Off
-17x15 * 6x-2 * 125hz * Off

Does this mean I got huge negative acceleration?

Mark Cranness said...

While running a game (such as CS 1.6), you will/may see many red and green lines.
Games that need a fix usually frequently re-position the pointer and this confuses MouseMovementRecorder.exe but DOES NOT mean acceleration.
See http://www.esreality.com/?a=post&id=1846538#pid1927879 - scroll to 'Comment #271'.

Anonymous said...

Okay, thanks :) Something was wrong though, since I tried RInput and it's much better now. Like it was with winXP.

Anonymous said...

Didn't fix it for 'Assassin's Creed II'... :(

Anonymous said...

Does Mark C still read this blog or can I contact him elsewhere?

I have been playing cs 1.6 for 12+ years and I just tried the mouse fix yesterday.

I have always used default windows mouse settings.

I have an mx518 mouse, always 800 dpi (middle DPI). CS 1.6 in game sens always been 1.

I entered the fix into registry and restarted. The mouse definitely felt slower. It felt slower in CS as well.

However I did some tests in game with my finger and sliding the mouse. I still think there is some acceleration.

Do I need to turn enhanced pointer precision off or no?

I don't know if Mark C plays CS 1.6 or CSS... But there are also some commands called "noforce" commands. Do I need to use these with the Mousefix or do they conflict. Or is there no point using them if you have the mouse fix.

I also bumped my DPI up to 1600, the max on my mouse. Is it better to adjust my sensitivity or DPI to make up for the slow feeling of the mouse fix?

If Mark C does not post here can someone give me his email?

Thanks!

Mark Cranness said...

> Do I need to turn enhanced pointer precision off or no?

If you have my fix applied (and use 6/11), it doesn't matter.
On or Off are both the same.
I recommend Off.

> ...there are also some commands called "noforce" commands.

You don't need to use any noforce options with my fix but you can if you want to and they don't conflict, UNLESS you use anything other than 6/11 AND are trying to get exact 1-to-1.

If you use my fix there is no point in using the -noforce options.
If you use the noforce options, there is no point in using my fix!

> I also bumped my DPI up to 1600, the max on my mouse. Is it better to adjust my sensitivity or DPI to make up for the slow feeling of the mouse fix?

It's better to adjust your DPI up, and then fine tune your in-game sensitivity to suit.

Anonymous said...

I recently reinstalled my Windows 7 and I'm not quite sure if I was using mousefix in the past.

Anyway I'm having trouble finding my sensitivity (old mouse feeling). After adding the registry file and going back to default I noticed a different feel... Is it possible that both registry files mixed up or anything since it doesn't feel stable to me.

Mark Cranness said...

If you apply WindowsDefault.reg and double check the Control Panel > Mouse > Pointer speed slider and then reboot, your mouse will be back to normal Windows 7.
The fix only tweaks the accel curve and the pointer speed slider setting. WindowsDefault.reg sets the accel curve back to Windows standard.

If you might have had a fix installed already, was it one of the Cheese fixes perhaps? What pointer speed slider setting did you have? Did you have the Enhance pointer precision checkbox on?

Anonymous said...

I'm using standard mouse settings (6/11). I have been using CPL mousefix in the past but I can't remember if it was in Windows 7.

I was using those noforce commands in CS1.6 so I assume I was playing on Default settings then... or do those launch options work with your fix aswell? Anyway I figured out Razer updated their drivers WITH (dc) drift control and WITHOUT (ndc), so not exactly sure which one to use yet.

Thanks for your help so far!

Mark Cranness said...

> I was using those noforce commands in CS1.6 so I assume I was playing on Default settings then... or do those launch options work with your fix aswell?

In CS1.6 with -noforcemspd or -noforcemparms, and EPP OFF, my fix (any fix) is not active and has no effect in CS1.6: There are at leas t 3 ways to remove control panel accel in CS1.6:

A Set EPP Off and use -noforcemspd or -noforcemparms
B Use my fix
C Both of the above.
D RInput

Because we can't be sure what your setup was before you applied my fix (you might have had Cheese), best to:
- Confirm you get 1-to-1 on the desktop with my fix installed and EPP set to ON (the "How do you know the fix is working?" part of my instructions).
- Adjust your in-game sensitivity if needed.

Alexandersw3d said...

Hi Mark, I need your help. I can not disable acceleration, your fix does not work, I use the mouse Razer deathadder, windows sens 6/11, 450dpi and noforce commands, acceleration is sometimes included in cs1.6, please help me!

Peter said...

Hello Mark!
I'm happy for that u have created this mousefix for windows 7, but I have one big problem.. Before I was using 2 sens, epp off and raw input and it was hard to do 180 degree turn , but day after day my mouse speed started to increase without doing anything and now I am able to make a 200+ degree turn with 1.3 sensitivity .. I have tried everything. New windows, reinstalling mouse drivers and all other things, but things are getting worse and worse :( You are my last hope, huh ...
Greetings,
Peter

Anonymous said...

1. sorry for my bad english iam german. i hope you can understand me :)2. when i double-click the WindowsDefault.reg it say: (i hope i can translate the error message)the following file can not open. the programm must be know wich you will open the file. websearch for the right programm. programm from the list of installed programms select. i hope you can help me please.

Mark Cranness said...

Right-click the REG file, and choose:
Open with > Choose default program...
Click 'Browse' button, and navigate to:
C:\Windows\regedit.exe and click OK.
Turn the 'Always use this the selected program to open this kind of file' to ON (checked/ticked).
Click OK.

Anonymous said...

Hey Mark, if I use the Logitech SetPoint software is your fix still required? I currently have it set to use the OS settings, will setting SetPoint to use SetPoint settings totally override Windows accel settings and leave me accel free? I have game mode disabled since I want univeral settings for everything (desktop and gaming). I use the standard Windows cursor settings (6th, EPP off), MMR shows no green or red unless the cursor is dragged offscreen. I play with Vsync disabled, pretty much every option that may affect aiming. No matter what settings I try it still feels like my MX518@800DPI has small amounts of accel everywhere, even with raw input enabled on source games, or is this just inaccurate aiming?

Mark Cranness said...

> If I use the Logitech SetPoint software is your fix still required?
> I currently have it set to use the OS settings, will setting SetPoint to use SetPoint settings totally override Windows accel settings and leave me accel free?

As far as I know, setting SetPoint to use SetPoint will remove Windows accel, and you don't need my fix.
(Also set SetPoint with no SetPoint acceleration, as I'm sure you have already done.)

> No matter what settings I try it still feels like my MX518@800DPI has small amounts of accel everywhere, even with raw input enabled on source games, or is this just inaccurate aiming?

I don't know what might be causing the remaining accel, sorry. If MMR shows only black, then all Windows control panel accel is removed.

Anonymous said...

Is this links mouseregistryfix made by you or is it someone else? http://www.cyborggaming.com/blog/post/2010/06/04/So-what-is-Mouse-Acceleration.aspx If it is made by you it is for 100% dpi or 125/150% and there is no problem with anything like 120hz led monitors?

Anonymous said...

Also does it give 1-1 ration even if the game tries to reposition so that mousemovementrecorder gets confused?

Anonymous said...

That is with a 6/11 in windows slider and EPP off. also noticed someone commenting about ingame sensitivity but with windows at 6/11 (someone recommended setpoint at 5/10) it should be no problem?

Mark Cranness said...

Anonymous said...
> Is this links mouseregistryfix made by you or is it someone else? > http://www.cyborggaming.com/blog/post/2010/06/04/So-what-is-Mouse-Acceleration.aspx

That EXE file does nothing except apply the old CPL mouse fix.

It does not adjust for refresh rate or DPI or OS or anything, just applies CPL.

CPL is never exact 1-to-1.

Instead of that EXE, use a Cheese fix, or one of my fixes.

Anonymous said...

Are you serious right now?

The only reason I'm not getting Windows 8 is because I was under the impression that this mouse fix would come out months after.

But SERIOUSLY..

Windows 8 Mouse Fix already out.
This is just simply fast and amazing. I'm speechless..

The funny thing is, I have the Windows 8 N-Enterprise version (which, for people who are reading this in the future, don't worry about it) and I have to say, I'm actually now excited to go on W8 cause of this mousefix alone.

+1

I would buy you a beer or more but I simply can't.

Here is an eBeer, cheers!

Mark Cranness said...

> But SERIOUSLY.. Windows 8 Mouse Fix already out.

Yep, already out...
Tested on the Release Preview
(I've still to test it on the RTM version, but will do shortly.)

> I would buy you a beer or more

Mine's a (hard) cider, cheers!

(BTW, sorry about my slow comment moderation.)

Harmon said...

Mark, I'm looking for some help creating a similar feeling to a mouse configuration I used to use, but more precise.

"MouseSensitivity"="2"
"MouseSpeed"="1"
"MouseThreshold1"="6"
"MouseThreshold2"="10"
"SmoothMouseXCurve"=hex:00,00,00,00,00,00,00,00,15,6e,00,00,00,00,00,00,00,40,\
01,00,00,00,00,00,29,dc,03,00,00,00,00,00,00,00,28,00,00,00,00,00
"SmoothMouseYCurve"=hex:00,00,00,00,00,00,00,00,b8,5e,01,00,00,00,00,00,cd,4c,\
05,00,00,00,00,00,cd,4c,18,00,00,00,00,00,00,00,38,02,00,00,00,00

This is a configuration I used to use with a Logitech Mx700 on Windows XP.

I liked playing shooters with low sensitivity for precision aiming, while still having one linear acceleration jump for faster turning.

I've tried to reproduce something similar but more precise with your mousefix, but I'm getting acceleration much too quickly.

I've been using slider tick 4/11 recently, where that config was for tick 2/11.

I've tried using just a 1-to-1 with 4/11 through the builder, but I've had a lot of difficulty getting used to it. I can set it up for very low sensitivity for precision but then turning in shooters requires too much mouse movement, where vice versa makes precision aiming too difficult.

I look forward to any help you can give me with setting up something that gives the same feeling with possibly more pixel precision and less loss.

Harmon said...

Forgot to mention that I'm using a Logitech G700 now, so I also have potential DPI and polling changes.

I've been recently using 200 or 700 dpi (buttons to switch) and mouse polling of 1000 while gaming.

Mark Cranness said...

> Harmon said...

There are so many variables!

I'll assume you are still using Windows XP, with the same (in-game) monitor refresh rate you used when you had an MX700.
Also, I'll assume you are selecting "Pointer Speed Acceleration = 1 = Accelerate the pointer speed when the mouse speed is faster than a threshold"
(because you want one linear acceleration jump).

> ...but I'm getting acceleration much too quickly.

To fix that, enter a higher threshold (when asked "Enter the acceleration threshold that you want")

... But before you decide on a threshold, there are some things to know about how your mouse CPI (DPI) & polling rate affect acceleration.
Increasing mouse CPI not only increases the sensitivity (scaling) but ALSO makes the acceleration cut in at slower physical mouse speeds (inches/sec). You might have to increase the threshhold to compensate)
Increasing the mouse polling rate not only improves feel (alledgedly) by ALSO makes the acceleration cut in at faster physical mouse speeds (inches/sec). You might have to decrease the threshold to compensate. Using 1000Hz, you might have to decrease the threshold so much that it becomes stupid.
A low threshold, all other things be equal, means the acceleration jump is less sudden and more smooth, so a higher threshold is preferred, if you want a steep/sudden jump in speed (more predictable?)
Changing the Control Panel pointer speed slider increases or decreases sensitivity but DOES NOT affect when acceleration cuts in, because it is applied after accel is calculated.
Changing the sensitivity in the builder increases or decreases sensitivity but DOES NOT affect when acceleration cuts in, because it is applied after accel is calculated.
Increasing the mouse CPI AND polling rate in step keeps the acceleration threshold the same!
Increasing mouse CPI and DECREASING the the sensitivity in the builder in step keeps the final sensitivity (inches/pixel) the same!

This may all be confusing, so this is my advice:

- Experiment with different speeds and thresholds.
- Increase the G700 CPI to 5700 and decrease the builder sensitivity from "1-to-1" to 0.125. This will give an effective CPI of 712.5, more-or-less the same as 700 and "1-to-1", while also allowing a sharp sudden jump when accel kicks in.
- @ 5700, accel kicks in much sooner, and this compensates for 1000Hz making it kick in later, so use a much higher threshold.

If you have any questions, please make sure to tell me what OS you do currently use, in case it is not XP.

Mark Cranness said...

> Harmon said...

Oh, and use the newer version 2.2 of the fix builder.
Some of the help text that version 2.1 displayed was confusing when building fixes with threshold acceleration.

Unknown said...

Hello mark i have problem with my Mouse fix, I did everyting right but i can get up to 2 x 0 and even 3 x 0 somtimes even if i run the mouse fix, Im sure i did everyting right and its worked before i formated. I got a Zowie ec2 pro mouse , Help will apprich!

//

Creat said...

First of all, thank you for the work you've put into this! It really is appreciated :)

Now to my situation: I'm using a R.A.T. 7 Contagion (usually at 1600 DPI). As far as I can tell from the output of the mouse movement recorder, the driver has a variable polling rate (or the mouse pushes the values, whatever). So new lines only appear when the mouse is moved, but with up to 1000 Hz (but usually around 500 for fast movements). From some screenshots of other peoples output this isn't necessarily the norm (or maybe those were just old).

As for the actual problem: I have applied the fix for my settings (basically default-everything). If I now set 'Enhance pointer precision' to on for testing the behavior of older games (I still play some CS 1.6), I do get some green lines and occasionally red ones every now and again. The peculiar thing is that it is always a change of just 1 that causes it, and in almost all cases it turns a 1 to a 0. This happens much more frequently when the mouse is only moved very slowly. Here is a (slightly formatted) little copy/pase of such a case:
0x1 0x0 ~17Hz
1x0 0x0 ~5Hz
0x1 0x1 ~6Hz
0x1 0x1 ~3Hz
-1x0 0x0 ~1Hz
1x0 0x0 ~12Hz
-1x0 0x0 ~1Hz
1x0 0x0 ~3Hz
-1x0 0x0 ~5Hz
-1x0 -1x0 ~2Hz
-1x0 -1x0 ~17Hz
-1x0 -1x0 ~16Hz
1x0 0x0 ~1Hz
-1x0 0x0 ~3Hz
-1x0 -1x0 ~4Hz
0x-1 0x0 ~77Hz

But I've also seen things like (12x7 11x7) or more commonly (8x1 8x0). This can be quite annoying of you want to get the crosshair slightly to the left but it just won't move onto the head (or whatever). Any idea how this might be caused and/or how I can get rid of it?

PS: Thanks again, this has actually bothered me for quite some time and now I can at least finally see the problem and know I'm not just imagining things ;)

Mark Cranness said...

> The peculiar thing is that it is always a change of just 1 that causes it, and in almost all cases it turns a 1 to a 0.

Try the instructions starting at "Loading the fix with a non-Administrator account" (in my blog post).
Otherwise known as : "•Run RegEdit.exe and edit 'HKEY_USERS\.DEFAULT\Control Panel\Mouse\MouseSpeed' to 0 (zero), while logged in as an administrator." (and then logout or reboot)
Let me know if that was the problem.

Creat said...

>Try the instructions starting at "Loading the fix with a non-Administrator account" (in my blog post).
>Let me know if that was the problem.

Ah, yes indeed it was the problem. My apologies, I have misunderstood your readme it seems. I assumed that this part was just responsible for the log on screen (where I couldn't care less about the precision of mouse movements) so I hadn't applied it.

Now I've noticed that I occasionally do have the basically same problem even with EPP turned off. To be fair, it was right after a reboot (so maybe some stuff was sill loading, but I've played around a bit more and noticed that this does happen from time to time. Here are three blocks from various captures. They are not trimmed, i.e. no lines have been removed in the middle. For the last block "show catchup delay" was on, but for those lines none was recorded.

0x1 -1x1 ~300Hz Off
-6x5 -5x5 ~86Hz Off
-4x3 -4x3 ~162Hz Off
-3x3 -3x3 ~166Hz Off
-5x4 -5x4 ~188Hz Off
-3x3 -3x3 ~170Hz Off
-4x5 -5x5 ~182Hz Off
-6x5 -4x5 ~155Hz Off
-1x2 -4x4 ~247Hz Off
-9x10 -7x8 ~116Hz Off
-------------
-2x2 -3x3 ~282Hz Off
-29x19 -29x19 ~35Hz Off
-14x10 -14x9 ~58Hz Off
-8x4 -7x4 ~130Hz Off
-6x4 -6x4 ~143Hz Off
-1x2 -2x2 ~388Hz Off
-8x5 -9x7 ~119Hz Off
-20x15 -19x14 ~50Hz Off
-7x5 -6x4 ~167Hz Off
-3x2 -4x3 ~404Hz Off
-16x11 -16x11 ~82Hz Off
-4x3 -4x2 ~276Hz Off
-7x5 -8x6 ~176Hz Off
-11x9 -9x8 ~116Hz Off
-12x8 -13x9 ~99Hz Off
-10x6 -9x5 ~146Hz Off
-------------
-4x3 -5x3 ~230Hz Off
-5x3 -6x3 ~195Hz Off
-4x3 -5x3 ~197Hz Off
-4x2 -6x3 ~186Hz Off
-3x1 -4x2 ~217Hz Off
-4x2 -5x3 ~210Hz Off
-3x2 -4x3 ~219Hz Off
-3x1 -4x2 ~213Hz Off
-2x2 -3x2 ~218Hz Off
-1x2 -2x2 ~220Hz Off
-2x1 -2x1 ~209Hz Off

Mark Cranness said...

> (non-Administrator account)... this part was just responsible for the log on screen...

Yes, correct it only applies on the logon screen.
(What follows doesn't help your problem.)
The normal curve accel applies a varying sensitivity based on mouse speed, and that sensitivity usually has a fractional part, e.g. × 0.58, or 1.23 etc.
Windows can't move the pointer a fractional pixel, so it stores the fractional remainder and adds it into the next calculation.
If the mouse is moved on the logon screen without accel being dispabled, there will be a fractional remainder stored.

Then when you are logged in, and the exact 1-to-1 curve applied, the exact 1-to-1 means no more additional remainders calculated, BUT the old login screen remainder stays there, stuffing up the calculation.
Movement of +1 +1 -1 -1, has an internal calculation of:
+1 (rem +0.23), +1 (rem +0.23), 0 (rem -0.77), -1 (rem -0.77), and the first direction reversal gets zeroed out.

> Now I've noticed that I occasionally do have the basically same problem even with EPP turned off.

Now that is strange!
(Not a problem with my fix though, because the fix is disabled while EPP is OFF.)

MMR does not always try and catchup, and even when it is trying, it does not always print the delay.

Try these parameters and see if they show anything interesting:
MouseMovementRecorder -nocatchup
MouseMovementRecorder -alwayscatchup -showcatchupdelay

(I might have to add a new option "-alwaysshowcatchupddelay!)

With EPP OFF (and 6/11) Windows control panel HAS TO BE exact 1-to-1, so MMR MUST BE getting confused by strange timing or something...

Anonymous said...

It does not help with MechWarrior 4 damn mouse accel on Windows 7 :(

Creat said...

Just to follow up on my last posts: I haven't found any negative effects to that, so it seems it really is just confusion on MMRs part.

I have also gotten a new mouse by now, as my old one has repeatedly reported non-existent movement: There were a lot of very small movements when just clicking or holding the mouse completely still, but enough to move the cursor across a few centimeters of the screen, easily enough to annoy you in games. It was a R.A.T. 7 Contagion, and the problem varied somewhat depending on the surface (but being a 100€ laser mouse, that shouldn't be an issue, which was the whole point of the thing). Now I have a comparatively cheap Logitech G500 and am quite happy so far. This is just a thank you for the MMR, which was instrumental in diagnosing the cause (i.e. the mouse itself). I even had it exchanged twice, seems to be a universal problem with those things...

Unknown said...

This fix is helpful and for autocad, sketchup, 3dmax, and similar programs?

Mark Cranness said...

> This fix is helpful and for autocad, sketchup, 3dmax, and similar programs?

For most programs this fix is not needed.
Instead just go into Control Panel > Mouse > Pointer options > and tuirn OFF 'Enhance pointer precision' checkbox.

Some games turn 'Enhance pointer precision' (EPP) ON while they run, and this fixes that.
autocad, sketchup, 3dmax etc. won't turn EPP on, so this fix isn't needed.

Derek said...

Hey Mark,

just wanted to say thanks for all your work on this.

I think the inclusion of MMR really helps determine if the game is using mouse acceleration.

Derek

Jonni said...

Hey got a laptop with a MX510 mouse on a windows 7 64 bit i think its professional.

Ive ran the mouse fix and follow the tutorial but i still do get acceleration when i play games such as CS and occasionally while i windows aswell according to the mouseacceleration.exe

Mark Cranness said...

> according to the mouseacceleration.exe

Can you post a link to a screen-shot?
(Do you mean MouseMovementRecorder.exe, or do you mean something else?)

Harmon said...

Hi Mark. I was looking for some help building Windows 2000 acceleration. Was that 1-1 for the x1 speed and then different once it hit x2?

For years I played First Person Shooters this way, with a low sensitivity for precision aiming and then a doubling of the sensitivity for turning, etc.

I had some kind of fix in both 32 and 64 bit exp that emulated two linear sensitivites, guessing normal and the n double speed. I lost the backup when i moved to windows 7. I've tried to adapt to 1-1 with no mouse acceleration for maybe close to half a year but I just can't seem to play that way.

On my Logitech Mx700 mouse, I believe I used 4/12 sensitivity. I'm currently using a G700 mouse with "OS native drivers for pointer speed and acceleration".

I've been using two profiles, one for gaming and one for general use. The gaming profile also has two dpi levels: one is usually between 200-400 and the other is around 900-1200. I have the polling rate set to 1000.

(The general profile has two levels; 700 and 1800 with a polling rate of 125).

Setting to 4/11 seemed to make the mouse feel very similar to my MX700 between 200-1100 dpi, but without the same doubled acceleration that I've been used to.

I'm not really sure what the exact dpi of the MX700 was, but i'm sure it's probably somewhere within that range. I'm not sure what its polling rate was. Are most non-gaming mice defaulted to 125hz?

I'd like to continue using a polling rate of 1000 while still having the same feel. I can't say I remember how sensitive the threshhold was before the mouse sensitivity doubled or what it should be.

I'm not sure if I've given you enough information or explained it clearly enough, but I look forward to hearing from you.

-Harmon

Mark Cranness said...

Hi Harmon,

> I was looking for some help building Windows 2000 acceleration.

Then you've come to the right place!
A few months ago I enhanced the MarkC Fix Builder so that it can build "curves" that emulate Windows 2000 accel.

The bad news is that getting a curve that feels right can be difficult, because:
- The Windows 2000 mouse might have had a different sensititivy than your current mouse (yours does)
- The Windows 2000 mouse might have had a different polling rate than your current mouse (yours does)
- People forget what the W2K accel felt like, and when they do get it back it feels strange...

To build a W2K accel curve:
- Extract the Fix Builder from my main ZIP file (it is called 'MarkC_Windows_8+7+Vista+XP_MouseFix_Builder_2.2x.zip', or download from my other blog link : they are the same),
- Read file !Threshold_Acceleration_ReadMe.txt,
- Run the fix builder VBS, answering the questions it asks,
- Try the REG file it creates (needs 'Enhanced pointer precision' checkbox ON, and doesn't work for games that use DirectInput or Raw Input),
- Repeat with different numbers until it works as you want, asking here for guidance as needed.

> On my Logitech Mx700 mouse...

My Google-fu says that was 800DPI and 125Hz polling.

The trick is to make the accel kick in at the same physical speed (inches/sec) as before (which assumes you want to keep the same inches/360 sensitivity that you used to have).

Windows 2000 "Low" accel ramps up quickly, starting at a threshold of 7 counts/poll, and accel is completely doubled at a threshold of 8 counts/poll and higher.
For your MX700, accel started at 1.09 inches/sec and was fully doubled at 1.25 inches/sec.
(The calculation is (threshold × polling_rate / DPI) for the accel starting point, and ((threshold+1) × polling_rate / DPI) for when accel is fully in effect)

(To understand the accel ramp-up: at a speed of 7 counts/polls, the mouse sends 7,7,7,7... : the threshold is not exceeded, these are ×1.
At a speed of 8 counts/poll, the mouse sends 8,8,8,8... : the threshold is exceeded, these are doubled ×2 giving 16,16,16,16...
At a speed between these two, the mouse sends 7,8,7,8... : the 7s are ×1, and the 8s are doubled, giving 7,16,7,16 and overall sensitivity is approximately ×1.5.
Speeds in-between 7 and 8 have varying accel applied according to how many 7s and 8s.)

You have 3 numbers to play with (threshold, polling_rate, DPI) and two target speeds to match (1.09375 and 1.25 inches/sec).

Changing the threshold too much will widen or narrow the width of the accel ramp-up too much, so try to stick around 7.
Because of technical reasons, you can probably lower it a little, to 6 or 5 if needed, and still have a broadly similar ramp-up width.

Try these G700 and Fix Builder values:

1) G700: 5700 DPI, 1000 Hz
Fix Builder:
Pointer Speed Acceleration (zones)=1,
Pointer Speed Scaling=0.07 (= old mouse 800 divided by new mouse 5700, times 4/11 scaling factor of 0.5),
Pointer Speed Acceleration (threshold)=6
This gives 1.05 and 1.23 inches/sec.

2) G700: 3200 DPI, 500 Hz
Fix Builder:
Pointer Speed Acceleration (zones)=1,
Pointer Speed Scaling=0.125 (= old mouse 800 divided by new mouse 3200, times 4/11 scaling factor of 0.5),
Pointer Speed Acceleration (threshold)=7
This gives 1.09 and 1.25 inches/sec.

Note: Control Panel > Mouse > 'Enhance pointer precision' checkbox must be ON, and your game must not be using DirectInput or Raw Input to read the mouse.

Let me know how it goes, and if you need more guidance.
Try some values in the fix builder!

Mark Cranness said...

> Was that 1-1 for the x1 speed and then different once it hit x2?

Yes, @ 6/11 and using the "Low" setting it was 1-1 (×1) and then 2-1 (×2) once the threshhold (7) was exceeded.
@ 4/11 it would have been ×0.5 and then ×1 once the threshold was exceeded.

> Are most non-gaming mice defaulted to 125hz?

Yes, 125 Hz is the standard USB mouse polling rate.

> I'd like to continue using a polling rate of 1000...

That does push the threshold and/or DPI about a lot, so try 500 Hz, which is generally recommended anyway (the difference between 1000 Hz and 500 Hz is only 1 millesecond of delay, and a gaming LCD at 120Hz takes 8.33 milliseconds to display a frame...)

Harmon said...

I found that the dpi for the Logitech MX700 (most recent mouse before the Logitech G700) was 800, so I'm going to try it with that dpi.

Does acceleration at 0.5x and 1x on 4/11 feel basically the same as 1x and 2x on 6/11? Should I try 6/11 or will staying at 4/11 be fine?

I might have actually used 2/11 with the Mx700, but I might be thinking of the 2nd to last mouse I used instead.

Harmon said...

Will I need to adjust the threshhold at all from 7 with 500dpi?

Mark Cranness said...

> I found that the dpi for the Logitech MX700 (most recent mouse before the Logitech G700) was 800, so I'm going to try it with that dpi.

Try it, but your high polling rate needs an also high mouse DPI for the accel to work best (see calculations below).

> Does acceleration at 0.5x and 1x on 4/11 feel basically the same as 1x and 2x on 6/11? Should I try 6/11 or will staying at 4/11 be fine?

Hard to say.
The physical mouse speeds at which fix-emulated W2K accel kicks-in are the same regardless for what x/11 setting you use.

But, with a higher x/11 setting (and assuming you don't reduce your in-game sensitivity to adjust), the pointer will move twice as fast, and I expect you would then slow your physical mouse movement speed down to suit, and then there would be less accel, because you would be moving the mouse more slowly.

(And also: when EPP is ON and using my fixes, it is the "Pointer Speed Scaling" you enter that matters: A 4/11 fix with Pointer Speed Scaling=1.0 used @ 4/11 has EXACTLY the same sensitivity (scaling) as a 6/11 fix with Pointer Speed Scaling=1.0 used @ 6/11...)

> I might have actually used 2/11 with the Mx700, but I might be thinking of the 2nd to last mouse I used instead.

2/11 (EPP off) is a rather slow setting : × 0.0625, and would have made your 800 DPI MX700 like a 50 DPI mouse...

> Will I need to adjust the threshhold at all from 7 with 500dpi?

It comes back to the calculation:

- W2K accel ramps up at : (threshold × polling_rate / DPI)
- W2K accel is fully on : ((threshold+1) × polling_rate / DPI)

You want those calculations as close as you can get to your MX700 @ 800 DPI and 125 Hz.

If you try:
3) G700: 800 DPI, 500 Hz
Fix Builder:
Pointer Speed Acceleration (zones)=1,
Pointer Speed Scaling=0.5 (= old mouse 800 divided by new mouse 800, times 4/11 scaling factor of 0.5) (you set 0.5 to match what you had when you used 4/11 on the MX700),
Pointer Speed Acceleration (threshold)=1
This gives 0.625 and 1.25 inches/sec.

Accel starts at 0.625 inches/sec and ramps-up fairly slowly until it is full-on at 1.25 inches/sec which is double the ramp-start speed.

NOTICE how the accel ramp-up happens over a much wider range of speeds?
You originally had 1.09 thru 1.25, and the accel ramp-up happened over a much narrower range of speeds.
That larger range of speed would feel quite different to your original MX700/W2K accel.

Harmon said...

I was used to fairly low sensitivity, which is partly why I really enjoyed the acceleration that I had. The Win2k acceleration was also nice because it had one ramp up and was more predictable.

"NOTICE how the accel ramp-up happens over a much wider range of speeds?
You originally had 1.09 thru 1.25, and the accel ramp-up happened over a much narrower range of speeds.
That larger range of speed would feel quite different to your original MX700/W2K accel"

This part I'm confused on. The paragraph before that seemed like a suggested fix to emulate the MX700 Win2k feel, but that last paragraph quoted above seems to suggest that this isn't the case. I'm a little confused and didn't quite grasp everything you stated.

What settings should I try to get the same feel.

Harmon said...

I was thinking about you talking about acceleration ramp-up and it sounded odd to me. I know that windows xp/vista/7 acceleration ramps up over a curve as the mouse moves faster.

I'm not sure if that's what we were discussing, but I had thought Windows 2000 acceleration had static acceleration until the mouse moved quickly enough; then the acceleration speed would double.

I guess, I assumed WinXP...7 had a non-linear acceleration curve. I assumed that under Windows 2000 acceleration, the mouse speed was linear at x1 until the threshhold for x2 is met. At that speed, it would be linear again because no higher acceleration multiplier than x2 is set.

Did I have the wrong idea about Windows 2000 acceleration?

Mark Cranness said...

> What settings should I try to get the same feel.

Short version: try setting #2 above.

Although that has a mouse DPI of 3200, that setting WILL NOT have a high sensitivity, because:

Effective DPI (final Windows sensitivity) is mouse DPI multiplied by Control Panel sensitivity (pointer speed slider × curve sensitivity).
For your original MX700 @ 4/11 on W2K:
- Mouse DPI=800, Control Panel sensitivity=0.5
Effective DPI = 800×0.5 = 400

(Note: When EPP is ON, and using my fixes, the curve sensitivity is set so that Control Panel sensitivity= exactly the number entered in the fix builder as the "Pointer Speed Scaling" value.
For example, if you build a 4/11 fix and enter Pointer Speed Scaling=0.125, the curve sensitivity is set to ×0.208333.
Pointer speed slider sensitivity for 4/11 with EPP ON is ×0.6, so final EPP=ON Control Panel sensitivity is 0.6×0.208333= 0.125, exactly the number entered into the fix builder.)

With the note above in mind, calculating effective DPI for each of my suggestions:

1) Mouse DPI=5700, Pointer Speed Scaling=0.07, Effective DPI = 5700×0.07 = 399
2) Mouse DPI=3200, Pointer Speed Scaling=0.125, Effective DPI = 3200×0.125 = 400
3) Mouse DPI=800, Pointer Speed Scaling=0.5, Effective DPI = 800×0.5 = 400

Note they all have the SAME (or nearly identical) effective DPI as your original setup.
So you can use a fix with G700 @ 3200 DPI, and don't need to keep the same mouse DPI the MX700 had.

The second thing to understand is that W2K accel is not a sudden immediate doubling of speed.
In fact the doubling happens over a range of mouse speeds, starting at barely any effect and ending with fully doubled. I've called that range of speeds the "ramp-up" above.

> The paragraph before that seemed like a suggested fix to emulate the MX700 Win2k feel...

Yes, my suggestion #3 (800 DPI, 500 Hz, threshold=1) is a suggested fix to emulate W2K, because the accel ramp-up speed is approximately the same, being between 0.625 and 1.25.
Accel is fully doubled at 1.25 inches/sec, same as for the MX700, so similar.

> ...but that last paragraph quoted above seems to suggest that this isn't the case.

Yes, it is sort-of close, but the ramp-up start speed is 0.625 inches/sec for fix #3, but was 1.09 inches/sec for your MX700, which is quite a difference. The earlier accel ramp-up and a more gentle ramp-up and the wider range speeds range will likely feel different than the W2K accel, may be less predictable.

Here are some numeric examples:
MX700 800 DPI @ 125 Hz, W2K threshold=7 @ 6/11, mouse speed versus sensitivity:
(Mouse speed in inches/sec, sensitivity in pixels/mouse count)
0.1 => ×1
0.2 => ×1
0.3 => ×1
0.4 -> ×1
0.5 => ×1
0.6 => ×1
0.7 => ×1
0.8 => ×1
0.9 => ×1
1.0 => ×1
1.1 => ×1.05
1.2 => ×1.7
1.3 => ×2
1.4 => ×2
1.5 => ×2
...Lots of ×1, a rapid ramp-up and then lots of ×2.

Suggestion #3: G700 800 DPI @ 500 Hz, threshold=1 fix builder REG file @ 6/11:
0.1 => ×1
0.2 => ×1
0.3 => ×1
0.4 -> ×1
0.5 => ×1
0.6 => ×1
0.7 => ×1.11
0.8 => ×1.22
0.9 => ×1.31
1.0 => ×1.50
1.1 => ×1.73
1.2 => ×1.92
1.3 => ×2
1.4 => ×2
1.5 => ×2
... Looks the same as MX800 after about 1.2, so similar, BUT look at the wide slow ramp-up from 0.625?
(BTW, numbers calculated with a spreadsheet with magic formulas; don't worry about the details.)

Short story : try suggestion #2

Mark Cranness said...

> ... that under Windows 2000 acceleration, the mouse speed was linear at x1 until the threshhold for x2 is met. At that speed, it would be linear again because no higher acceleration multiplier than x2 is set.
> Did I have the wrong idea about Windows 2000 acceleration?

That is the right idea, but it is a little more subtle. An example (your MX700 @ 800 DPI and 125 Hz, W2K with a threshold of 7):

Move the mouse exactly 7 counts every poll (7×125/800 = 1.09375 inches/sec)
Because movement <=7, W2K applies ×1.
A little faster at 8 counts/poll (8×125/800 = 1.25 inches/sec)
Because movement >7, W2K applies ×2.

Move the mouse at a speed between 7 and 8 counts/poll... Suppose exactly 1.171875 inches/sec.
In one second, 1.171875×800 = 937 or 938 counts. At 125 polls/sec, that's 7.5 counts per poll.
The mouse can't send a fractional number of counts, so it sends : 7,8,7,8,7,8... : half the movements are 7s, half are 8s.
W2K applies ×1 to the 7s and ×2 to the 8s.
Pointer movement is 7,16,7,16,7,16...
Every TWO polls, 15 counts are sent (7+8), and pointer is moved 23 (7+16).
Sensitivity is 23/7 = 1.5333, (mostly) half-way between ×1 and ×2.

At some lower speed, the mouse will send 7,7,7,8,7,7,7,8... which W2K will accelerate to 7,7,7,16... : average sensitivity is 37/29 = ×1.28.
At some higher speed, the mouse will send 7,8,8,8,7,8,8,8... which W2K will accelerate to 7,16,16,16... : average sensitivity is 55/31 = ×1.77.

So at mouse speeds between (threshold) and (threshold+1) counts per poll, the mixture of 7s and 8s causes a mixed average sensitivity, some at ×1 and some at ×2, and the accel ramps-up from ×1 to ×2 over that range.

Harmon said...

The first game I've tried testing this in is APB:Reloaded, an Unreal Engine 3 game. A majority of the First Person Shooters I have are either using UE2.5 or UE3.

I'm unsure how to check if DirectInput is on in these games or to disable it if it is. I've noticed lines in either/both the input files and in-game configuration for hardware mouse but haven't found DirectInput.

I disabled Hardware Mouse in the game and it still feels like 1-1 mouse response.

I'm afraid that I might have been off all along. I'm wondering if I really was using the 2/11 slider position with the doubled acceleration.

Was 6/11 x1 and x2 and 4/11 x0.5 and x1? Would 2/11 then be x0.25 and x0.5?

I looked back at one of your posts and you were discussing the amount of movement. I've been used to moving my mouse around a lot due to being partial to very low sensitivity. I liked the acceleration to compensate for such a low sensitivity, allowing for the turning.

I know I've mentioned that before, but maybe rephrasing it this way might make more sense. 3200dpi with what I assumed were the correct settings (#2 --> win 7, 100%, 4/11, 1, 0.125, 7, 0.25)

I've found a saved mousefix file which might help somewhat. This looks like it could be the one I used with the Mx700:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Mouse]
"ActiveWindowTracking"=dword:00000000
"Beep"="No"
"DoubleClickHeight"="4"
"DoubleClickSpeed"="500"
"DoubleClickWidth"="4"
"ExtendedSounds"="No"
"MouseHoverHeight"="4"
"MouseHoverTime"="400"
"MouseHoverWidth"="4"
"MouseSensitivity"="2"
"MouseSpeed"="1"
"MouseThreshold1"="6"
"MouseThreshold2"="10"
"MouseTrails"="0"
"SmoothMouseXCurve"=hex:00,00,00,00,00,00,00,00,15,6e,00,00,00,00,00,00,00,40,\
01,00,00,00,00,00,29,dc,03,00,00,00,00,00,00,00,28,00,00,00,00,00
"SmoothMouseYCurve"=hex:00,00,00,00,00,00,00,00,b8,5e,01,00,00,00,00,00,cd,4c,\
05,00,00,00,00,00,cd,4c,18,00,00,00,00,00,00,00,38,02,00,00,00,00
"SnapToDefaultButton"="0"
"SwapMouseButtons"="0"

If mousesensitivity=6 is 4/11 then mousesensitivity=2 must be 2/11.

Threshhold 1 is set to 6 instead of 7. Not sure what that means. Threshold 2 is disabled.

I have no clue what that curve means.
If the info on the MX700 is correct, this configuration was used with a 125hz polling rate and 800dpi mouse.

Harmon said...

Even though I might have been looking for 2/11 all along, I still think I set up the wrong fix builder settings to try 3200.

"3200dpi with what I assumed were the correct settings (#2 --> win 7, 100%, 4/11, 1, 0.125, 7, 0.25)"

I think I screwed up somewhere. I might need a little more direction.

Harmon said...

I'm sorry, keep forgetting something until I've already posted.

the .reg file I posted looks at least partially correct, but I'm not sure.

"MouseSensitivity"="2"
"MouseSpeed"="1"
"MouseThreshold1"="6"

This looks familiar, but I'm not sure if the curve is the same. At the moment I'm testing it but I can't be quite sure that it's right.

It feels very close to what I was looking for, possibly identical...I'm testing it with both 400 and 800dpi as well as a 125hz polling rate. I'd like to build something for 500hz.

I can't tell, but either the x and y axis feel different or the diagonals are a bit odd with this setup. If this is correct, I must have been used to it.

Mark Cranness said...

> I'm unsure how to check if DirectInput is on in these games ...

The only way to be sure is to test some curves and try them @ 6/11.
One way of testing:
Set 6/11 in the control panel, and EPP on.
Build a normal MarkC curve (with 'No acceleration' and '1-to-1'), or use the pre-built curve in the ZIP. Apply it, reboot or logout and test in-game @ 6/11 with EPP on.
Build a new 'No acceleration' curve but set Pointer Speed Scaling=0.1. Apply it, reboot or logout and test in-game @ 6/11 with EPP on.

If the curves are active in-game, then the in-game sensitivity with the second curve will be 1/10 of the first curve.
If they feel the same, then the curves are not being used, and my fix can't help, because either the game is using DirectInput or Raw Input, OR it is setting EPP=off while in-game.

To test if the game might be turning EPP off, run MouseMovementRecorder.exe while playing the game.
Aim, fire, whatever then without moving the mouse, Alt+Tab back to MouseMovementRecorder.exe (or without using the mouse, exit the game) and check the 'EnPtPr' column.
If it says OFF anywhere, the game has turned EPP off and it may be possible to undo that somehow...

> ...or to disable it if it is.

I probably can't help with that, sorry.

> I'm wondering if I really was using the 2/11 slider position with the doubled acceleration.

No problem, just build a fix for 2/11 and set Pointer Speed Scaling= (old DPI/new DPI * 0.0625)

> Was 6/11 x1 and x2 and 4/11 x0.5 and x1? Would 2/11 then be x0.25 and x0.5?

Yes, yes and no : 0.0625 and 0.125. Here is a table:
Pointer speed slider MouseSensitivity REG Sens Factor (EPP ON) Sens Factor (EPP off)
1/11 ..... 1 ×0.1 ×0.03125
2/11 ..... 2 ×0.2 ×0.0625
'2.5'/11 . 3 ×0.3 ×0.125
3/11 ..... 4 ×0.4 ×0.25
'3.5'/11 . 5 ×0.5 ×0.375
4/11 ..... 6 ×0.6 ×0.5
'4.5'/11 . 7 ×0.7 ×0.625
5/11 ..... 8 ×0.8 ×0.75
'5.5'/11 . 9 ×0.9 ×0.875
6/11 ..... 10 ×1.0 ×1
'6.5'/11 . 11 ×1.1 ×1.25
7/11 ..... 12 ×1.2 ×1.5
'7.5'/11 . 13 ×1.3 ×1.75
8/11 ..... 14 ×1.4 ×2
'8.5'/11 . 15 ×1.5 ×2.25
9/11 ..... 16 ×1.6 ×2.5
'9.5'/11 . 17 ×1.7 ×2.75
10/11 .... 18 ×1.8 ×3
'10.5'/11 19 ×1.9 ×3.25
11/11 .... 20 ×2.0 ×3.5

EPP off sens factor is the only sensitivity factor. EPP on sens factor is additional to the varying curve sens.

Mark Cranness said...

> 3200dpi with what I assumed were the correct settings (#2 --> win 7, 100%, 4/11, 1, 0.125, 7, 0.25)
(Yes, those look like the correct #2 settings (and yes, the second Pointer Speed Scaling= number should be twice the first, when emulating W2K.)

> I've found a saved mousefix file which might help somewhat.

That would be for XP or Vista or Windows 7, because it has "SmoothMouse?Curve" settings.
(Although it could be used for Windows 2000 if you imported it into W2K from that REG file into W2K...)

> If mousesensitivity=6 is 4/11 then mousesensitivity=2 must be 2/11.

Yes, see table above, that config does mean 2/11.

> Threshhold 1 is set to 6 instead of 7. Not sure what that means. Threshold 2 is disabled.

On XP/Vista/7/8, Control Panel sets the two thresholds to 6,10 when EPP is on, and to 0,0 when EPP if off.
BUT those thresholds are IGNORED by Windows and not used for any calculations at all.
The curve is the standard XP/Vista/7 accel curve, encoded into bytes.

(Note that EPP/T1/T2 = 1/6/10 is NOT a setting allowed by the Windows 2000 Control Panel, and if you had ever gone into the control panel and changed any mouse settings, that would probably have been overwritten with other W2K values.)

> "3200dpi with what I assumed were the correct settings (#2 --> win 7, 100%, 4/11, 1, 0.125, 7, 0.25)"
#2 is correct for emulating MX700 800 DPI, 125 Hz @ 4/11:
G700: 3200 DPI, 500 Hz
Builder: win 7, 100%, 4/11, 1, 0.125, 7, 0.25

For 2/11, you would use:
G700: 3200 DPI, 500 Hz
Builder: win 7, 100%, 2/11, 1, 0.015625, 7, 0.03125

> "MouseSensitivity"="2"
> "MouseSpeed"="1"
> "MouseThreshold1"="6"
> It feels very close to what I was looking for, possibly identical...

"MouseSpeed"="1" is EPP=on, so response depends on what curve you have applied...
If your testing is with the full REG file you gave above, which has the standard Windows accel curve, then EPP=on, 2/11 is 0.2×curve, and curve varies from ×0.6 to ×1.0 (at about the W2K 'low' accel threshold) to 2.6 (at very high speed).
Difficult to say what that says about your old setup.

If you are trying to match your old Windows 2000 setup, set EPP=off and then tune 2/11, 3/11, 4/11 etc to get the same feel. (But only the low speed feel, you won't have any accel with EPP=off, obviously.)

> I can't tell, but either the x and y axis feel different or the diagonals are a bit odd with this setup.

With these W2K fixes applied, diagonals are a bit different, unfortunately...

Harmon said...

For 2/11, you would use:
G700: 3200 DPI, 500 Hz
Builder: win 7, 100%, 2/11, 1, 0.015625, 7, 0.03125

Should this fix feel different with EPP on or off?

Harmon said...

Unfortunately I'd love to use those acceleration settings only for games and have 1-1 for all other computer usage.

With the last comment, it seems like there is a difference but I'm having trouble describing it. It feels like a somewhat small change. Acceleration seems on with or without EPP, but it seems to change a little with EPP on. That's how it feels anyway.

Mark Cranness said...

>> For 2/11, you would use:
>> G700: 3200 DPI, 500 Hz
>> Builder: win 7, 100%, 2/11, 1, 0.015625, 7, 0.03125
> Should this fix feel different with EPP on or off?

With EPP=off, the scaling is 1/16 (×0.0625)
With EPP=on, the scaling is 1/64 (×0.015625) until the accel kicks in and 1/32 (×0.03125) when the accel kicks in.
You should be able to notice that difference, because EPP=on sens is 1/4 or 1/2 of EPP=off sens.
Test it on the desktop.
If you can't feel it in-game, then the game must use DirectInput or Raw Input or set EPP=off.

> Unfortunately I'd love to use those acceleration settings only for games and have 1-1 for all other computer usage.

If your mouse drivers allow on-the-fly (via mouse button or hotkey) changing of the mouse DPI between 3200 and 800, then you could:
- Before playing a game: Use the mouse driver to change DPI to 3200, and run a program I have to set EPP=on (or go into the control panel and set it on)
- After playing a game: Use the mouse driver to change DPI to 800, and run a program I have to set EPP=off (or go into the control panel and set it off)

Don't the Logitech mouse drivers allow different profiles for different games, or have a "Game Mode"?
Perhaps set Game Mode to use "OS native drivers for pointer speed and acceleration", and set normal desktop mode to "SetPoint settings".

Try running MouseMovementRecorder to see what changes between EPP=off and EPP=on.
Test on the desktop (not in-game) and try EPP=on and EPP=off and MouseMovementRecorder should show clear differences.
The ratio between Mouse Movement column and Pointer Movement column should be 1/16, or 1/64 or 1/32 as above.

Harmon said...

"and run a program I have to set..."

Is this program packaged with the mousefix like the movement recorder or with a separate download?

The Logitech drivers do seem to allow me to set one profile with the acceleration off, although looking at the mouse in windows, it seems to default to 6/11 regardless of what position I set it to in setpoint. That's a bit strange. Not a huge deal since I can compensate with a different dpi.

Unfortunately I found myself having to do that in games when using your mousefix for 1-1 and that would pose a problem with this acceleration fix.

In at least a few games I've had to modify the sensitivity below the minimum slider level in-game using cfg/ini/xml files because the mouse was far too sensitive at 2/11 3200dpi (with the fix).

I'm not sure why I'm having issues with needing my sensitivity so low in some games to require input file editing. Maybe the slider ranges in those games are just unfriendly.

I've found some games that don't seem to show a difference (must be Direct/Raw Input) which probably can't be helped. Unreal Engine 2.5 and 3 seem to have some kind of mouse deceleration which is frustrating.

Mark Cranness said...

Sorry for the delay in getting back to you.
I am glad that you are trying to get this to work for you; Not many people take an interest in the Windows 2000 part of that fix.

> "and run a program I have to set..."
> Is this program packaged with the mousefix like the movement recorder or with a separate download?

MouseSpeed is here: MouseSpeed.zip @ gamefront.com [link].

> The Logitech drivers...

The small testing I've done of Logitech drivers showed this:
- They work in two quite separate ways, depending on the "Use SetPoint Implementation", or "Use OS Implementation" option.
- When "Use SetPoint Implementation" is set, the control panel settings are ignored or bypassed, including EPP and including any fix loaded.
- When "Use OS Implementation" is set, the SetPoint mouse speed and accel are ignored.

Does that match up with what you see?

> In at least a few games I've had to modify the sensitivity below the minimum slider level in-game using cfg/ini/xml files because the mouse was far too sensitive at 2/11 3200dpi (with the fix).
> I'm not sure why I'm having issues with needing my sensitivity so low in some games to require input file editing. Maybe the slider ranges in those games are just unfriendly.

Those games I think must use DirectInput or Raw Input, both of which will bypass this fix (and also bypass the pointer speed slider setting), or maybe they force EPP off, which will also affect sensitivity.

3 cases:
1- Game uses DirectInput or Raw Input:
Control Panel 'pointer speed slider' is ignored. Windows 2000 threshold accel fix is ignored.
Sensitivity is × 1.0, giving very very high sensitivity (effective 3200 mouse CPI)
2- Game uses GetPointerPos or WM_MOUSEMOVE, but EPP is OFF:
Control Panel 'pointer speed slider' is used, @ 2/11 sensitivity is × 0.0625 (effective 200 mouse CPI)
Windows 2000 threshold accel fix is ignored.
3- Game uses GetPointerPos or WM_MOUSEMOVE, and EPP is ON:
Control Panel 'pointer speed slider' is used in conjunction with the W2K fix, @ 2/11 sensitivity is × 0.015625 (effective 50 mouse CPI)
Threshold accel when active gives × 0.03125 (effective 100 mouse CPI)

Rhys Jones said...

Hi markc i noticed you did a reg file with semphis to add the default mouse accel from windows xp onto window 7 computers, i currently need the 75 hz reg file, atm he only has a 100 hz reg file. Please can you create this for me would be MASSIVELY appreciated! been trying to contact you for so long

Anonymous said...

The windows 2000 has 3 fixes low, med, and high.. what are the differences?

Anonymous said...

I remember now that windows 2000 had none, low, medium and high. If I want to use none which fix would I use?

Mark Cranness said...

> ... a reg file with semphis to add the default mouse accel from windows xp onto window 7 computers... i currently need the 75 hz reg file

To be sure I understand : You are used to the accel in Windows XP, but on Windows 7 with the same settings the mouse moves a little more slowly, and you would like a curve that is a little faster than normal Windows 7, so is again the same as it was on XP.

The easy workaround is to use Pointer speed slider setting 7/12.
The 'Enhance pointer precision'= ON extra scaling factor for 7/11 is × 1.2

Windows 7 @ Font Size = 100% and 7/11 has an extra curve scaling factor of:
1.2 × 96 / 150 = × 0.768

Windows XP @ Font Size 96DPI ("Normal"), 75Hz and 6/11 has:
1.0 × 75 / 96 = × 0.78125

Less than a 2% difference.

A curve that does the same at 6/11 is:
[HKEY_CURRENT_USER\Control Panel\Mouse]
"MouseSensitivity"="10"
"SmoothMouseXCurve"=hex:\
00,00,00,00,00,00,00,00,\
15,6e,00,00,00,00,00,00,\
00,40,01,00,00,00,00,00,\
29,dc,03,00,00,00,00,00,\
00,00,28,00,00,00,00,00
"SmoothMouseYCurve"=hex:\
00,00,00,00,00,00,00,00,\
20,ac,01,00,00,00,00,00,\
40,78,06,00,00,00,00,00,\
c0,a9,1d,00,00,00,00,00,\
00,5c,b5,02,00,00,00,00

Mark Cranness said...

> If I want to use none which fix would I use?

You would use one of the normal ("No acceleration") fixes.
For example, if you use Windows 7 and Font Size=100%, then use:
Windows_7_MouseFix_TextSize(DPI)=100%_Scale=1-to-1_@6-of-11

Rhys Jones said...

Thanks for your reply dude, much appreciated. So just to get on the same page as you..

On that thread he said the fix was for 100 hz only and it would not be accurate otherwise, im taking it he is talking about monitor hz and not mouse hz?

so this is what i should be using?
A curve that does the same at 6/11 is:
[HKEY_CURRENT_USER\Control Panel\Mouse]
"MouseSensitivity"="10"
"SmoothMouseXCurve"=hex:\
00,00,00,00,00,00,00,00,\
15,6e,00,00,00,00,00,00,\
00,40,01,00,00,00,00,00,\
29,dc,03,00,00,00,00,00,\
00,00,28,00,00,00,00,00
"SmoothMouseYCurve"=hex:\
00,00,00,00,00,00,00,00,\
20,ac,01,00,00,00,00,00,\
40,78,06,00,00,00,00,00,\
c0,a9,1d,00,00,00,00,00,\
00,5c,b5,02,00,00,00,00

thanks btw

Rhys Jones said...

And yes btw i used to shoot so many heads with xp default acceleration :) i really dont like the mouse fix for 1 - 1 exact curve.

and on windows 7 it is just NOT the same :( thanks tho dude. great work

Mark Cranness said...

> On that thread he said the fix was for 100 hz only and it would not be accurate otherwise, im taking it he is talking about monitor hz and not mouse hz?

Yes, he has 2 REG files, designed to work on Windows 7.
Windows7.reg restores the default curve (which is slower)
WindowsXP.reg emulates XP@100Hz (monitor Hz=100) on Windows7, and is the standard curve but scaled up by × 1.63 (and specific to 100Hz).

If IN-GAME is all you care about, then nobody needs a new curve, you can just change the in-game sensitivity using the formula he gave.

> so this is what i should be using?
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Mouse]
"SmoothMouseXCurve"=hex:\
00,00,00,00,00,00,00,00,\
15,6e,00,00,00,00,00,00,\
00,40,01,00,00,00,00,00,\
29,dc,03,00,00,00,00,00,\
00,00,28,00,00,00,00,00
"SmoothMouseYCurve"=hex:\
00,00,00,00,00,00,00,00,\
20,ac,01,00,00,00,00,00,\
40,78,06,00,00,00,00,00,\
c0,a9,1d,00,00,00,00,00,\
00,5c,b5,02,00,00,00,00

(You will need to add the header line as above, and actually the curve works at all pointer speed slider settings, not just 6/11. I put "MouseSensitivity"="10" (which means 6/11) in by reflex, but it didn't need to be there in this case, so I've removed it.)

> and on windows 7 it is just NOT the same :(

All of this assumes you are using the same mouse CPI and the same mouse Hz as you were on XP.
If any of those have changed, then the curve above won't help much at all.

> thanks tho dude. great work

No problem.

Rhys Jones said...

yeah dude i dont have registry editer 5.0 however i did it manually going into regedit.

I have been playing much better recently (only a few games) and believe it taken effect however it may be a placebo can you confirm that this works or would i have to make the reg file and apply it? thanks :)!!!

Rhys Jones said...

Hey mark sorry for the bother but i applied that fix and it feels like i have enhanced pointer precision on, are you sure that this is the default for xp? :) thanks again

Mark Cranness said...

> can you confirm that this works or would i have to make the reg

Entering those numbers using regedit and then rebooting will work as well as using a REG file.

To make a reg file, copy everything between and including the:
Windows Registry Editor Version 5.00
... until and including the last line:
00,5c,b5,02,00,00,00,00

... copy into a file using notepad or similar, save to a REG file or save as TXT and then rename it, then double-click it, then reboot.
Look inside one of my standard fixes to see what it looks like.
(Ask me nicely and I'll create a file for you.)

> it feels like i have enhanced pointer precision on

Well yes, Enhanced pointer precision should be on, to enable any SmoothMouse curve, and you will get accel, which is what you said you wanted?

Rhys Jones said...

thanks for the reply!, Well ill try explain as best as i can, On windows xp i did not use enhanced pointer precision, i just used the default mouse acceleration. But on windows 7 it just does not feel the same its horrible, im trying to get that EXACT feeling from windows xp but onto my windows 7 64 bit pc!

When i entered the numbers into regedit manually it felt ok but when i made the reg file and applied it felt really different and not so good! If your not busy enough to make the reg file for me that would be great but your replies are good enough :) thanks!

Rhys Jones said...

If you could make me the fix for the default windows xp mouse accleration without enhanced pointer precision ticked i would be forever greatful :)

thanks for your time dude

Rhys Jones said...

basically what im looking for is semphis's reg file but for 75hz as thats all my monitor can use :( thanks and sorry for all these replies, trying to give u as much info as poss!

saidjordyy said...

hey markC , i want to tell you that your fix its not worked at all for me . when i use the markC mouse fix my accel its gone (but for a while) i try the mouse fix in game and its sounds crazy , sometimes the accel is gone but sometimes the accel is back . i dont know what i suppose to do . ive been try all of mouse fix and the problem its still there , im looking in google and youtube about my problem but its still not working . so please can you help me for solving my problem ? thanks

im use Windows 7 Ultimate 64bit , ram 8.00 GB , Intel(R) Core(TM) i7-2600K CPU @ 3.40 GHz ,ATI Radeon HD 5700 Series . my mouse Deathadder 3.5G and the driver its up to date .

sorry for my bad english

Mark Cranness said...

> On windows xp i did not use enhanced pointer precision, i just used the default mouse acceleration

There is NO default mouse Windows Control Panel acceleration on Windows XP/Vista/7/8 UNLESS Enhanced pointer precision is turned ON; when Enhanced pointer precision is turned OFF, there is NO Windows Control Panel acceleration.
When Enhanced pointer precision is turned OFF, there is only scaling set by the "Pointer speed" slider, but that scaling is linear and has no accel.

I thought you wanted to change or tune the acceleration that happened when EPP is ON, as that is what Semphis's reg file does : it tunes accel WHEN EPP is on.

Mouse acceleration can come from 3 places:
1) Mouse drivers, like Logitech, Steel Series etc.
2) Windows Control Panel when EPP is ON.
3) A game.

I can help with tuning Window Control Panel accel when EPP=ON, but I can't help much with accel that might come from mouse drivers or a game, sorry.

Mark Cranness said...

> when i use the markC mouse fix my accel its gone (but for a while) ... sometimes the accel is back

What do you see if you test my fix with the MouseMovementRecorder (also in my fix ZIP file) while Enhance pointer precision is ON?

If you almost always black with EPP on, then my fix is working and has removed Control Panel accel.

Rhys Jones said...

thanks for your reply, but im not sure that his reg file is for EPP to be on!

windows xp and 7 have different default acceleration even with EPP = OFF, is there no possible way you can use his reg file and make it compatible for 75 hz?

http://www.hltv.org/forum/150057-windows-7-accel-to-windows-xp

Rhys Jones said...

thats why cpl mouse fix and markc mouse fix was created? to remove that little bit of accel? but i want it! :))))) thanks

saidjordyy said...

yeah its black when the EPP is on but when i slide the arrow into the edge it will be change to green (it only in the edge ) . and play cs with mousemovementrecorder on , im trying to shoot in wall and ive got the cursor its randomly move to left and right . what i must to do ? im applying your mousefix but still got the negative accel :(
FYI : ive been 1 or 2 years for had this problem hmm . give me your best answer markC , help me to solve this problem

thx and sorry again for my bad english

saidjordyy said...

( yeah its black when the EPP is on but when i slide the arrow into the edge it will be change to green (it only in the edge ) ). i try that option when im not in game ( i mean in desktop )

Mark Cranness said...

> im not sure that his reg file is for EPP to be on!

I am 100% sure his reg file is used with EPP ON.
His files modify the SmoothMouseXCurve and SmoothMouseYCurve value, and I know for a fact that Windows only uses those curved when EPP is on. 100% sure.

XP/Vista/7/8 have no Control Panel acceleration when EPP is off.
Some games do turn EPP ON in-game, even if you have EPP turned OFF in the control panel, which is what my main fixes are all about... Could that be why you (presumably) feel accel in-game?

Mark Cranness said...

> its black when the EPP is on but when i slide the arrow into the edge it will be change to green (it only in the edge )

Green at the edge is expected. Black when non in-game with EPP=on means it's working and will remove Control Panel (positive) accel.

> play cs with mousemovementrecorder on , im trying to shoot in wall and ive got the cursor its randomly move to left and right

MouseMovementRecorder displays red and green when in-game, but that is expected. The fix is still working.
See here for an explanation : http://www.esreality.com/?a=post&id=1846538#pid1927879 - scroll to 'Comment #271'.).
Also, red and green in-game does not mean negative acceleration.

My fix does not fix negative acceleration.

To fix negative acceleration in newer Valve Source games (CS:Source), use the new Raw Input option: Source Games now support Raw Input, which should fix all negative acceleration.

To fix negative acceleration in CS 1.6, try RInput.

Mark Cranness said...

> accel? but i want it!

If you do the test described in the "Does my game need a mouse fix?" section of my blog, what does the 'EnPtPr' column and text at the bottom show?

Rhys Jones said...

ah ok maybe epp is on ingame :), but is there anyway you could replicate semphis 100hz fix to a 75 hz fix or can only he do it?. thanks alot!

Rhys Jones said...

also what does merge mean when i apply my reg file? is this something to worry about?

i had the idea that it would apply the fix aswell as the previous ones.. sort of like a mixture?

Mark Cranness said...

> replicate semphis 100hz fix to a 75 hz fix...?

That's what the REG file we've been building above is.
If you have some doubt, here it is as a download (!!)
XP @ 75Hz @ gamefront.com [link].

> also what does merge mean when i apply my reg file?

The registry already contains lots of stuff and double clicking a REG file merges (adds) the extra stuff in the REG file to the registry.
If the REG file doesn't contain (for example) "MouseSpeed", then the current MouseSpeed in the registry will remain unchanged.
If the REG file contains "SmoothMouseXCurve", then the "SmoothMouseXCurve" in the registry will be overwritten and replaced.

Rhys Jones said...

thank you very much

ill stop annoying you now :) but i do appreciate it btw

and have a good xmas!

Anonymous said...

Hey! First of all, thanks! This is a great program, it has totally improved my aim in FPS games. I just have one little problem, seems like the DPI doesn't save. I mean every time I open my PC I have to run the file again and set my DPI again. Not a big problem, just annoying. Any ideas how to fix this? I'm using Windows 7

Mark Cranness said...

> ...I have to run the file again and set my DPI again.

I'm not sure what or which DPI you mean here?
Mouse DPI? Monitor text size DPI?

Perhaps if you explain the steps you take to set it (which programs run, windows opened, buttons clicked), I should be able to help you.

Anonymous said...

I mean the monitor size DPI. I admit I have been little confused with this this DPI and and mouse DPI...

Well, fisrt I open the "Windows 7 Fixes" folder, then there are those reg Files which I use and I feel like I must use them every time again I open my PC to see a difference.

MarkC_Windows_8+7+Vista+XP_MouseFix_Builder <- I have used this for making "custom DPI", but still same problem, settings seem not to get saved (even though I save the file to my desktop, do I have to put it somewhere else?). Thanks for help!

Mark Cranness said...

To be sure, there are 4 different MarkC REG fixes, but you only need to apply ONE of those.

Choose the one that matches your text size, follow the instructions in my blog post if you haven't already done so to find out what that is; it is usually 100% unless you have changed it.

The REG file you choose must then be applied by double-clicking it.
You will get a message about "User Account Control", click : Yes.
You will get a message about 'Are you sure you want to continue?', click : Yes.
You will get a message about 'have been successfully added to the registry.'

Reboot or logout to finish applying it.

Have you tried the test I describe in the section titled : 'How do you know the fix is working?' ?

Anonymous said...

Seems like it works now. I think it was because I had messed things up, all files were on desktop. I just deleted everything and downloaded again and umm.. didn't mess anything up. Thanks for a great program!

Anonymous said...

I have no green bars, enhance pointer precision on or off, but I still have mouse accel

using generic logitech usb with microsoft driver

Mark Cranness said...

> ...but I still have mouse accel

Some games have accel built-in to the game.
What game are you using?

(If MouseMovementRecorder shows the 'EnPtPr' column as red or ON, that does not mean you have accel.)

Anonymous said...

I have accel on the desktop, even though MMR says I have 1:1. (I'm using the physical test to determine that I have accel) No green bars or red bars, so I guess something lower level than the OS is causing it. Do any mice have hardware acceleration? Or is it just a driver thing? Or can my surface or mouse just being old cause it? Cause I'm using paper as a surface.

Anonymous said...

Link seems to be dead...

Mark Cranness said...

> I have accel on the desktop

See the esreality thread, is is positive accel or negative accel?

Mark Cranness said...

> Link seems to be dead...

The main gamefront link does not work for some people (it might depend on what country you are from, or if you are using proxies/VPNs and such).

Please try the alternative mediafire download link (just below the main link).

Anonymous said...

Mark,

I've been following your progress over the years and it appears that you've recently added a feature that might fix a problem I'm haveing with an accelerated game frame rate.

Would you, could you, make a vbs builder that can decelerate at speed thresholds instead of accelerate?

Any help or advice would be greatly appreciated.

Regards
Wasp

Mark Cranness said...

> Would you, could you, make a vbs builder that can decelerate at speed thresholds instead of accelerate?

I won't, but you can!

Open the VBS in a text editor (Right-click > and select 'Edit' should do it), and find the following text:

if CDbl(ScalingAfterThreshold1) > Scaling and CDbl(ScalingAfterThreshold1) <= 16 then _

... (line#384) and replace it with:

if CDbl(ScalingAfterThreshold1) <= 16 then _

Find the following text:

if CDbl(ScalingAfterThreshold2) > ScalingAfterThreshold1 and CDbl(ScalingAfterThreshold2) <= 16 then _

... (line#429) and replace it with:

if CDbl(ScalingAfterThreshold2) <= 16 then _

Save it and then run the edited version.

Anonymous said...

download link not working?

Mark Cranness said...

> download link not working?

The main download link doesn't work for some people.
Please try the alternative download link below the main link.

Anonymous said...

Thanks Mark,

I'll change the vbs code tonight and experiment with it.

As I mentioned earlier, I'm trying to negate an in game speed increase due to increased polling.

I just know that your accel curve fix has my fix in it also. It's just a matter of time before I can get my head around this and understand what needs to be done.

I've tried slopes, various curves, different speed settings....to no avail. I do know for a fact that your fix does indeed influence the controller input therefore, the solution must be here somewhere.

Sorry to be such a pest but I think you're the only one on the planet who understands this concept enough to guide me in the right direction.

Thanks again, I'll let you know my results.

Wasp

Anonymous said...

What do I do since I have a custom dpi in windows of 135%.

Obviously cant use 100% or 125% hack then can I?
Thanks
/maxxy

Mark Cranness said...

> Obviously cant use 100% or 125% hack then can I?

Correct: You can't use them.

> What do I do since I have a custom dpi in windows of 135%.

Use the Fix Builder included in the ZIP file (or look on my blog for the article that has the fix builder, but they are the same).

Inside the ZIP is another ZIP : MarkC_Windows_8+7+Vista+XP_MouseFix_Builder_2.2x.zip

Read instructions in that and run the VBS file. "Follow your nose" and it should create a custom fix for 135%

Frank said...

Hi Mark.
I have a question about directinput. I have been using directinput and I wanted to try playing without it, but my sensitivity is not the same. Is there some way of converting my directinput sensitivity? I use 800dpi and 0.42 sensitivity.

noji said...

Hello, this will be a long shot but here it goes... After some experiments it turned out that either my CPU c6 or c6 REPORT in bios is causing mouse acceleration, originally i thought it was HIGH precision event timer but its not. How is it possible ?

Mark Cranness said...

> I have been using directinput and I wanted to try playing without it, but my sensitivity is not the same.
> Is there some way of converting my directinput sensitivity?

Yes there will be a way:

- What position do you have the Control Panel > Mouse > Pointer speed slider set to?
(Middle 6/11 position?)

- Do you usually have "Enhance pointer precision" (EPP) checked ON or off?

- Do you turn EPP off before playing the game?

- Does your game turn EPP ON while playing?
(See instructions starting "Does my game need a mouse fix?" on how to use MouseMovementRecorder.exe to find that out.)

- Have you applied one of my fixes?

If the game doesn't need a fix, and you don't use 6/11, then a simple adjustment to your in-game sensitivity will do the trick.
Otherwise, we will have to dig deeper.

Mark Cranness said...

> ... CPU c6 or c6 REPORT in bios is causing mouse acceleration ... How is it possible ?

Positive or negative accel?
What mouse polling rate do you have, and do you have "Enhance pointer precision" on?
Which version of Windows do you have?

It's difficult to say why, but Windows might alter the timings of when it reads the mouse when the CPU is in a C6 state (Google "timer coalescing").

Examples fo C6 affecting things:
- Disable C6 => better SSD performance
- Enabled C6 causes keyboard and mouse lag and programs behaving weirdly (post #13)
- Virtual servers rebooting
- Power saving due to C6 are reduced by frequent interrupts
Look at figures 11 and 12 : USB mouse interrupts @ 1000Hz or even 125Hz could prevent power savings.

My recommendation : Turn C6 off in your BIOS if it causes you problems.

noji said...

REPLY:
It is random positive accel. So it randomly shows.
I use windows 7 64, no mousefix, EPP off, polling rate automaticly 500hz(logitech software).

Before, I used your mousefix and polling rate to 500hz with this http://www.ngohq.com/news/15043-how-to-increase-usb-sample-rate-in-windows-vista-7-a.html

But none of these matter, i think. I am fairly positive its caused by C6 or C3(or4) report.
Thanks for your answer and I will just have to leave it disabled, hopefully its not that much neccesary.

also I couldnt open the last link "Power saving due to C6 are reduced by frequent interrupts" for some reason

Frank said...

Yes there will be a way:

- What position do you have the Control Panel > Mouse > Pointer speed slider set to?
(Middle 6/11 position?)

I have it set to 6/11. I'm using your Windows 7 fix. I have EPP turned off, however I believe the game I play automatically forces it on.

Mark Cranness said...

Oops, I broke the link when I posted it. Here is the proper one:
Power saving due to C6 are reduced by frequent interrupts.

Mark Cranness said...

> I have it set to 6/11. I'm using your Windows 7 fix. I have EPP turned off, however I believe the game I play automatically forces it on.

Ah, that's the dig deeper / I don't know what's happening case...

With 6/11 and a fix, the sensitivity *should* be the same using DirectInput as not using DirectInput.
Would you be willing to run a test script that might help you figure out the difference in sensitivity, so an adjustement could be calculated?
(You would have to try different in-game sensitivities until you found one where they matched.)

Frank said...

I'm retarded. I completely forgot I was using cheeses 120hz fix. I was switching back and fourth and I just forgot which one I was using. You are right, when I use your fix and take Directinput off the sensitivity's match. Is there a way to calculate it with cheeses fix?

Mark Cranness said...

> ...I was using cheeses 120hz fix

Aha! that makes sense now.

So to be clear : You are / were using Windows 7 with Cheese's 120Hz fix and that is the sensitivity you want, but you want to now use DirectInput with the same sensitivity?

Cheese's 120 Hz fix has a SmoothMouseCurve sensitivity of ×2.8

On Windows XP and Vista, the final sensitivity @120 Hz is : 2.8 × (120/96) / 3.5 = 1.0
(As Cheese designed it.)

On Windows 7, the final sensitivity is : 2.8 × (96/150) / 3.5 = 0.512
It is this × 0.512 sensitivity that you are used to.

SO...
- Use DirectInput, and
- Set your in-game sensitivity to 0.215
(0.42 × 0.512)

Marius Aronsen said...

Hey, Mark! I'm running Windows 8 and I've installed your Win8 100% 6/11 registry fix. I've double checked those values in control panel, and they are fine. However, I get negative acceleration and MovementRecorder reports with both green and red background while in game.

It also says that Pointer Precision is turned on, however in my control panel it is still unchecked. Do you have any idea what's wrong?

Regards

Mark Cranness said...

> MovementRecorder reports with both green and red background while in game.

Yes, that is expected and normal.
While in-game, the game continually re-centres the (hidden) mouse pointer, and confuses MouseMovementRecorder (MMR) causeing the red and green.

See in my post starting "NOTE: While running a game, you may see many red and green lines."
There are examples of this and a discussion here - scroll to comment#270 [link], here - scroll to comment#799 [link] and here - scroll to comment#800 [link].

> Pointer Precision is turned on

Yes, your game is turning Pointer Precision on, and this is the reason you need a fix.
See my post where it starts : "Does my game need a mouse fix?"

> I get negative acceleration

Unfortunately, my fix only removes Control Panel positive acceleration.
It does not fix negative acceleration.

To fix negative accel, set your game to use DirectInput or Raw Input, if the game has that option, or try using RInput [link].
NOTE: See also can i use rinput 1.31 to play cs 1.6 without getting banned by VAC? [link] : Use RInput at your own risk. I think it's OK and not considered a "cheat".

Marius Aronsen said...

Thanks for your detailed response! I was not aware of the fact that red/greens were expected and also not that the game would turn precision on. It's been a while since I've used your tools, and I remembered that red/greens were not expected, but I got it wrong :)

Frank said...

Hey Mark, that's exactly what I was looking for. Thanks a ton.

noji said...

Hello, i wanna ask about the mousefix builder. My optimal settings are 6/11 win, 800 dpi. But i wanna try 1800 dpi which too much for windows so I need to lower win sensitivity to 3/11 but thats when the 1v1 movement is lost but the sens is ok. When applying mousefix builder 1to1 3/11 and 1800 dpi win sens goes up even thou its on 3/11. How do i fix it ? Or would it be a big problem using NOT 1to1 mouse movent?

Anonymous said...

Great fix, thanks a lot!

Anonymous said...

Hey, Mark C.!

First of all, thanks for your fixes, but it seems that they can't work good for me.


I came here with question:


I was reading the topic about HIDUSBF here:
http://www.ngohq.com/news/15043-how-to-increase-usb-sample-rate-in-windows-vista-7-a-15.html

You wrote that HIDUSBF makes mouse moving slower and reduces mouse acceleration. Some time ago I used HIDUSBF and it worked perfectly, it reduced my acceleration and it made my mouse working slower. IT WAS AMAZING!

!!! I don't know what happened, but when I changed my system(or it was just an update, I don't remember) this "TRICK" with reducing mouse accel and making mouse slower by HIDUSBF !!!DOESN'T WORK!!! :(

The question is:
What should I do, to make that "TRICK" with "slow mouse+less acceleration" by HIDUSBF again?!


Thanks alot!

Anonymous said...

In addition to my post(March 16, 2013 at 1:10 PM) by Anonymous(me)



Ah, I forgot to say:
1) My mouse is A4tech - x710bk.
2) My system is - Windows XP Sp2.
3) Currently I have 500HZ by default, but I can make 125 or 1000 by Oscar Editor.
4) And I used CheeseMouseFix, so my X/Y Curve options are:

SmoothMouseXCurve:
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 3C 00 00 00 00 00

SmoothMouseYCurve:
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 01 50 01 00 00 00 00


Maybe the reason is in wrong X/Y Curve? But I tried HIDUSBF without any fixes when install XP sp2 and it still didn't gave me that "SLOW MUSE+LESS ACCELERATION".


So how to make my system thinking that it's working still at 125 hz to make "2,2,2,2 @ 500Hz" like you said in thread that I posted in my first post above.


Anonymous said...

Link's not working!!!

Anonymous said...

Hi,

I tried this on Windows 8, and it initially worked. Then today, mouse acceleration returned rendering most games impossible to play.

I tried your reg entry again, but it did not work this time. Looks like Microsoft found a way to disable it. Nice while it worked: I don't know how to disable it.

Anonymous said...

Hi,

I tried this on Windows 8, and it initially worked. Then today, mouse acceleration returned rendering most games impossible to play.

I tried your reg entry again, but it did not work this time. Looks like Microsoft found a way to disable it. Nice while it worked: I don't know how to disable it.


PS. The captcha entry is almost never accepted, and the audio version is inaudiable. Just a loud hissing noise, and what sounds like Dutch!

Harmon said...

Hey Mark. I've gone back to 1-1 but am still using 4/11. I was thinking of using 6/11, but wanted to know how to convert all the dpi settings without having to guess by feel.

With 1-1 mouse movement, should I still try to always use set dpi settings and put most of my focus on tuning in-game sensitivity?

harl windwolf said...

MarkC, this Works purrfectly for me. Thanks for those fixes.

Windows 8 x64, Logitech G500
1920x1080, 100% DPI and 6/11 ratio in MS Control Panel
1800 DPI setting via Logitech's driver software
your win8 .reg file for 100% DPI

Effectively, my cursor moves about half as fast as I'd assume from those settings, but it's absolutely fine as it is now and I could always further increase the mouse's DPI value.

Love the level of precision enabled by this fix in contrast to Windows' default settings.
Cheers

nyuu said...
This comment has been removed by the author.
nyuu said...

Your fix is working but not 100 %
none acceleration on windows 98 feels a little bit diferent than your fix
the mouse movement with your fix feels a little bit slower than 98

can u fix it

p.s sry for my bad english ^^

Anonymous said...

Hi Mark, the download link is broken, can you please reupload it? Many thanks

Unknown said...

I tried to remove the mousefix and i cant,

I clicked in Windows 8 default, rebooted and dosent works for me , i run mousemovemnt recorder and the y and x lines showing the same numbers.

How i can remove mousefix from my pc?

Unknown said...

I put the mousefix in my pc and dont liked, i want to remove, i tried to click in Windows 8 default and reboot my pc and dosent works for me , i opened the mousemovement recorder and still the same numbers in x and y lines, how i can completly remove mousefix or put my windows 8 acellaration default?

Anonymous said...

I applied your fix and it worked as advertised, however I have tried to return my acceleration to the default (followed the steps) but it simply hasn't worked.
I would very much like to have my acceleration back.
Can you think of anything that my have gone wrong? Or perhaps point me in the direction of what was changed in the registry.
I have used ccleaner to clean up my registry with no luck.
I'm running windows 8 with an MX 518 logitech mouse, though this should have no impact as I have uninstalled the setpoint software when making the registry changes (it seems to have remembered the previous settings and needed to be uninstalled for the fix to work in the first place).
Any help would be appreciated.
Thanks

Unknown said...

which reg is the default win98 settings mouse speed in the middle aceleration fast

Anonymous said...

Doesn't seem to be working under Windows 8.1 preview.

I have a G700 Logitech with acceleration turned off in the Logitech software.

My slider in control panel is on 6 with enhanced precision off and I choos the right reg file (100%)

Still all greens and reds in the mouse recorder.

Mark Cranness said...

Sorry for the delay in answering questions...

> noji said...
> would it be a big problem using NOT 1to1 mouse movent?

Not having 1-to-1 is only a small problem, you probably would never even feel or notice it.

> ...i wanna try 1800 dpi which too much for windows so I need to lower win sensitivity to 3/11 but thats when the 1v1 movement is lost but the sens is ok. When applying mousefix builder 1to1 3/11 and 1800 dpi win sens goes up even thou its on 3/11.

The fix builder reverses out the 3/11 when EPP is on, to give you back a full 1800 DPI (that's how it's designed to work).

The idea is that you use 1800 and 3/11 with EPP OFF on the desktop, and Windows desktop programs are happy. NOTE: Use EPP OFF on the desktop.

IF your game needs a fix, and turns EPP on, then the fix builder fix is enabled, and it reverses the 3/11 to give you a full 1800, exact 1-to-1 in-game. (But ONLY if your game actually turns EPP ON in-game, not all games do.)

Using EPP = ON on the desktop is the same as 6/11, which is not what you want.

Mark Cranness said...

> What should I do, to make that "TRICK" with "slow mouse+less acceleration" by HIDUSBF again?!

That depends on what you want : *No* acceleration, or *less* acceleration.

Start by making sure that HIDUSBF is working : Run MouseMovementRecorder.exe from my zip file, move the mouse very fast for a little while and look at the FREQUENCY column.
If it approaches approx the rate you set in HIDUSBF, then it is working.

Next, HIDUSBF only has *less* acceleration if you actually have any acceleration to start with.
If you use the Cheese 60Hz fix, then you have *NO* acceleration, because Cheese fixes remove accel.
HIDUSBF will then have NO effect on accel at all, because there is no accel to reduce.

If you had the standard XP curve loaded, ONLY THEN would HIDUSBF reduce that accel to give you less accel.

Note also that HIDUSBF does not actually slow the mouse, it just makes the Window accel calculation think that the mouse is slow.
Without HIDUSBF, @ 125Hz, in an 8ms time period, Windows sees (for example) 8 counts.
With HIDUSBF, @ 500Hz, in that same 8ms time period, Windows sees 2,2,2,2 . NOTE: Total mouse movement is still 8 counts, just spread over 4 times as many polling periods. The mouse still moves as fast (8 counts), BUT Windows thinks it is only moving at 2 (instead of 8), so only applies accel for 2, rather than accel for 8, which is less accel.

Perhaps try loading the standard XP curve (from my ZIP) and see how that feels?

Mark Cranness said...

> Link's not working!!!

Often the main gamefront.com link does not work for people, sorry.

Try the 'alternative download link' just below the main link.

Mark Cranness said...

> I tried your reg entry again, but it did not work this time.

Try running MouseMovementRecorder.exe with EPP ON (press the A key in MMR version 1.9) and see if you get mostly black, if so the fix is working.

My fix only removes Windows Control Panel accel.
It does not remove any in-game accel and does not remove negative accel when the mouse is moved very fast.

Mark Cranness said...

> Harmon said...
> I've gone back to 1-1 but am still using 4/11

Are you using a 4/11 fix created by the mouse fix builder?
If you are using a standard MarkC mouse fix, you don't get 1-to-1 at 4/11.

Best practice for gaming is to use 6/11 and tune the in-game sensitivity, but I'm not sure what you are asking...

Mark Cranness said...

> nyuu said...
> none acceleration on windows 98 feels a little bit diferent than your fix

Their are too many things that could be different ... are you using the same mouse as on W98, could you have used some of the Window 98 mouse accel features?
Do you remember what W98 mouse settings you had/have?

Mark Cranness said...

> Odenir César said...
> I tried to remove the mousefix and i cant,

Apply the Windows 8 default reg file, reboot, then go into Control Panel and make sure the 'Enhance pointer precision' checkbox is like it was before you applied the fix.
Try it ON and off and one of those settings will be like it was before the fix.

Mark Cranness said...

> how i can completly remove mousefix or put my windows 8 acellaration default?

Double click on Windows_8_default.reg or Windows_8.x_default.reg, apply it, reboot.
Then from the Windows start screen, type "mouse", click "Settings" (below) then click "Mouse" to the left.
This should open the Mouse properties window. Click "Pointer options".
Check "Enhance pointer precision" so it has a tick-mark in it.
Click OK.
You mouse should now be like it was before, and MouseMovementRecorder should show accel.

Mark Cranness said...

> Sebastian Gajardo said...
> which reg is the default win98 settings mouse speed in the middle aceleration fast

Do you remember where the Windows 98 mouse speed slider was positioned?
It has 7 positions, Slow through Fast, and the middle position is 4/7
Try one of the fix REG files that has "...Scale=W95+98_4of7..." in the name.

Mark Cranness said...

> Doesn't seem to be working under Windows 8.1 preview.
> Still all greens and reds in the mouse recorder.

Windows 8.1 seems to have a big delay between DirectInput getting sent mouse movement and Windows programs getting sent mouse movement with GetCursorPos.

So MouseMovementRecorder sees a mouse movement from DirectInput, but doesn't see the pointer move until MUCH MUCH later and can't figure out what's going on and displays red and green.

Notice that it will do the same even with EPP OFF, which means it's not a problem with the fix.

I've improved MMR a little in the latest ZIP file (just uploaded August-14) and it can be made to try harder to match up the mouse and pointer movement.

See extra instructions added to the blog entry:
- Run MMR
- Press 'A' until EnPtPr is OFF.
- Press '+' key to make MMR wait longer to match up movement and try moving the mouse.
- Repeat: keep pressing '+' (once) and moving the mouse until you get a lot of black and not so much red and green.
- Press A and move mouse, press A again and move mouse.
If Accel ON looks mostly like Accel OFF, then the fix is working, it is just that Windows 8.1 (Preview) has this delay problem moving the on-screen pointer, and MMR doesn't like it.

Anonymous said...

Mark, do you know if something in the mouse in Windows 8 (not 8.1) changed recently? Everything was fine until a week or so ago then the feeling of my mouse completely changed even after formatting a couple times. I suspect a Windows update perhaps.
I had to go back to 7 because my aiming was greatly reduced in my game (RTCW). Even with your fix applied I could not solve the crap feeling.
Also I have a .reg file of the default mouse values of 8 when it first came out. Unless I am on crack the default values in 8 changed because they are completely different in the SmoothMouseYCurve. SmoothMouseXCurve remained the same however.
Maybe you can shed some light on this issue.

Mark Cranness said...

The Windows 8 I have to hand is a now expired evaluation version, which doesn't Windows update, and I hardly use it, so : I haven't seen a recent change, but one could have happened.
(If I have to, I can reinstall and update to check.)

The definitive test of how my fix is working (or not) is :
What does MouseMovementRecorder.exe show when EPP is ON?
Mostly black 1-to-1 or something else?

The default, out-of-the-box SmoothMouseYCurve values changed between Win7 and Win8/8.1.

Win XP/Vista/7 have:
0000000000000000
b85e010000000000
cd4c050000000000
cd4c180000000000
0000380200000000

Windows 8/8.1 have:
0000000000000000
fd11010000000000
0024040000000000
00fc120000000000
00c0bb0100000000

What are your default values now?

Anonymous said...

I just solved the mouse problem actually. Turned out it was Intel Ethernet Connections 18.5 driver. It was giving me very bad mouse lag and negative accel for some reason. Sorry to waste your time, your fix is working fine.

espen said...

Can you help me out? Im not sure if my Mouse is faulty, or if its Windows 8.1 showing incorrect data.

I get green and red lines on 6/11 100% dpi scaling, no games running.
Been playing around With "+" button on MouseMovement Recorder, and it only goes Black at around 4000-5000 u(?)

http://i.imgur.com/y4H9yzu.jpg

Mark Cranness said...

> Been playing around With "+" button on MouseMovement Recorder, and it only goes Black at around 4000-5000 u(?)

With the 8.1 preview, I found I needed "+" to increase the catchup delay to around 8000 or 16000 before I would reliably get all black, so 4000-5000 is what I would expect.

I don't think there is a problem with your mouse, it is just that in Win 8.1 the mouse movement gets sent via DirectInput & Raw Input far earlier than mouse movement gets sent via Windows moving the mouse pointer, and so MouseMovementRecorder has a hard time matching up the mouse movement and the pointer movement.

On Win7 and prior, there was only a very small delay between the two and MMR could more easily match up the movement.

It will be interesting to see if this delay is still there in the final released Win 8.1...

Gamer101 said...

Hi,

I applied this fix and am running MouseMovementRecorder.

I only see green bars when I have the mouse pointer on all edges of the screen. Other than that I don't see green bars. Is the fix working properly?

I don't really play old games so I'm not sure if I really need this. I tested a few recent games (last few years) and there were no red bars/red background on the EnPtPr column.

Just wondering if the fix is working correctly and if I really need it if I don't play older games.

Thanks for your help.

Mark Cranness said...

> I only see green bars when I have the mouse pointer on all edges of the screen.

Green when on the edges of the screen is normal.
If you otherwise have mostly black with "Enhance pointer position" ON (for testing), then the fix is working.

If none of your games turn "EnPtPr" to a red background, then you don't need this fix.

On the other hand, if you usually run with "Enhance pointer precision OFF, then there is no harm in leaving the fix in-place (and no good either, but it doesn't matter).

Anonymous said...

I get too much green/red lines, pressing + doesn't do anything
It did that on windows 7 and windows 8.
What should I do?

Anonymous said...

Heres an image btw:
http://i.imgur.com/c2GZmKc.png

Anonymous said...

Hey! i got win 8.1 followed the steps in the redme file. when i test it in the movemtrecorder its not matching? how can i fix it?

Mark Cranness said...

> I get too much green/red lines, pressing + doesn't do anything

Please download version 1.10 of MouseMovementRecorder (in the MarkC fix ZIP file).
+ and E key commands and so on only work in version 1.10 or later.

> Hey! i got win 8.1 followed the steps in the redme file. when i test it in the movemtrecorder its not matching?

Windows 8.1 seems to have a big delay between DirectInput getting sent mouse movement and Windows programs getting sent mouse movement with GetCursorPos.

So MouseMovementRecorder sees a mouse movement from DirectInput, but doesn't see the pointer move until MUCH MUCH later and can't figure out what's going on and displays red and green.

Notice that it will do the same even with EPP OFF, which means it's not a problem with the fix.

I've improved MMR a little in the latest ZIP file (just uploaded August-14) and it can be made to try harder to match up the mouse and pointer movement.

See extra instructions added to the blog entry:
- Run MMR
- Press 'A' until EnPtPr is OFF.
- Press '+' key to make MMR wait longer to match up movement and try moving the mouse.
- Repeat: keep pressing '+' (once) and moving the mouse until you get a lot of black and not so much red and green.
- Press A and move mouse, press A again and move mouse.
If Accel ON looks mostly like Accel OFF, then the fix is working, it is just that Windows 8.1 (Preview) has this delay problem moving the on-screen pointer, and MMR doesn't like it.

Unknown said...

Update on the Windows 8.1 bug, I have found out that windows 8.1 will not allow more than a 2ms timer resolution for timeGetTime() in winmm.dll (Multimedia Timer). It does not matter if you force bcdedit /set useplatformclock yes and enable High Performance Event Timer in BIOS/UEFI. It will not allow higher than 2ms. I have confirmed this by hosting Half-Life-based servers and in windows 8.1 it refuses to go past 500 fps, whereas in Windows 7 it can go to 1000 fps and far beyond without sleep timers. This may be one of the reasons why there is mouse lag. If anyone could reply with how to fix the timer problem or mouse lag, let me know

Mark Cranness said...

I've learnt a little about Windows timing and scheduling while fretting about this Windows 8.1 problem.

- timeBeginPeriod might have limitations, so use NTSetTimerResolution instead, which will let me set a minimum timer of 0.5ms on my PC.

- Sleep(0) on Windows 8 and before will do a tight busy loop, yielding to other threads, but also hogging the CPU and returning from the Sleep(0) quickly.
http://randomascii.wordpress.com/2012/06/05/in-praise-of-idleness/

- Sleep(0) on Windows 8.1 will block until the next scheduling timer, (often by default 15.6ms away), but using NTSetTimerResolution can shorten the delay before it returns (by using a quicker scheduling timer).

http://randomascii.wordpress.com/2013/04/02/sleep-variation-investigated/

Tweak timer frequency without writing code to call NTSetTimerResolution:
http://www.lucashale.com/timer-resolution/

A LOT of info:
http://www.windowstimestamp.com/description

Unknown said...

The problem is, this requires source code edit. All applications prior to windows 8.1 will be broken by these new limitations. All hlds and srcds servers prior to 2009 can no longer run > 500 fps. that's just one example though. there are potentially hundreds if not thousands of programs that rely on it. the multimedia timers used to be perfect for being able to get up to 1ms timing accuracy.

Unknown said...

I re-read your response again. There are already external programs available that set the timer resolution higher, but on windows 8.1, the highest the resolution will go is 2ms. no higher than that, period.

Anonymous said...

I'm getting a maximum of 500hz from mouse on Win 8.1 and heaps of red. If I press + a few times to increase the maximum catchup delay to 5000μs it stops showing red, but it also lowers the polling rate to 167hz. Any way to get 500hz and no red? :(

Anonymous said...

^^^^ Win 8.1 final I meant to say. Also, the maximum catchup delay was set to 8000μs, not 5000 (the values shown next to the mouse movement were around 4000-5000 when sent to 8000μs).

Anonymous said...

> I don't think there is a problem with your mouse, it is just that in Win 8.1 the mouse movement gets sent via DirectInput & Raw Input far earlier than mouse movement gets sent via Windows moving the mouse pointer, and so MouseMovementRecorder has a hard time matching up the mouse movement and the pointer movement.

Does this mean that in games that use DirectInput/Raw Input the mouse will work perfectly, just not on the desktop?

Mark Cranness said...

> On windows 8.1, the highest the resolution will go is 2ms.

I will have to test. On Windows 8.1 Preview, it could do 0.5 ms.
I think it may depend on hardware available.

Mark Cranness said...

> I'm getting a maximum of 500hz from mouse on Win 8.1

MouseMovementRecorder measures a few different things, but it sometimes can't show matched-up movement (to avoid red or green) AND also show accurate polling rates at the same time.

To have MMR show accurate polling rates, press C key on keyboard until MMR says : "Catchup mode : NoCatchup".
(No Catchup means you will see red and green.)

PLEASE let me know what polling rate you see then.

> Press + a few times to increase the maximum catchup delay to [8]000μs it stops showing red, but it also lowers the polling rate to 167hz

Catchup mode ON, with a large catchup delay works by adding up a whole bunch of mouse movements and reporting it as a single movement, and adding up a whole bunch of pointer movements and reporting it as a single movement, after finding a bunch of movements where the total matches (and thus no red or green).
The actual polling rate is from the individual movements, but the displayed polling rate is NOT ACCURATE and is from the imaginary single total.
Press 'E' key on the keyboard to see the individual movements that were merged into the total, and you will still see times between mouse movements of 2000ms, which is 500Hz.

MMR can't show an accurate polling rate on 8.1 when + has been used to turn on catchup matching.

> Does this mean that in games that use DirectInput/Raw Input the mouse will work perfectly, just not on the desktop?

YES!

Also, games that don't use DirectInput/Raw Input will have lag.
See here:
WINDOWS 8.1 WARNING FOR GAMERS: ISSUES WITH UNPLAYABLE MOUSE LAG IN MANY GAMES @ reddit.com.

mouse lag in video games since updating to win 8.1 @ Microsoft Community.

Anonymous said...

So what does this all mean ? That installing this fix on Windows 8.1 will get me mouse lags on most of my games ?

Great.

Anonymous said...

Apparently Windows 8.1 seems to be bugged. I'm getting red lines in mouse movement recorder for the first time ever and googling around I found several others reporting the same with their Deathadders.

Apparently doesn't affect games that have a raw input setting though.

Mark Cranness said...

> So what does this all mean ? That installing this fix on Windows 8.1 will get me mouse lags on most of my games ?

No, my fix does not cause the mouse lag.

1) The mouse lag exists on Windows 8.1.
2) My fix removes EPP accel.
The two are unrelated.

Anonymous said...

Hello everyone .


Well, I followed the steps as I have in Windows Past "Windows 7 and 8.0" but this appears not entirely correct .

Have some pictures and detailed as I followed the steps and the result gives me , if anyone knows the solution, I would be very grateful.


1. - I'm mouse options in Windows and turn off " enhance pointer precision " and make sure that the bar is in 6/11 .

http://img22.imageshack.us/img22/7038/hnuc.png

Two . - I then apply . Reg file that removes any residual negative and positive acceleration of the mouse.

http://img29.imageshack.us/img29/7375/oe1v.png

Three . - Reboot , open the "Mouse Movement Recorder" to make sure the numbers in the left column match those on the right " to if you know what we needed "
And get this:

http://img30.imageshack.us/img30/810/41g9.png

I have no idea why so many errors out , I think Windows 8.1 is at fault because I doubt it's my mouse that works properly on other computers.

PD: Moue: SteelSeries Sensei.

A greeting.

Anonymous said...

Fail Capture Nº2: http://img823.imageshack.us/img823/2217/auag.png New Capure

Mark Cranness said...

> I think Windows 8.1 is at fault

Yes, what you are seeing is Windows 8.1 mouse lag.

I'm sure you have applied the fix correctly and acceleration is now gone, but the Windows 8.1 lag will remain.

See this thread :
mouse lag in video games since updating to win 8.1 @ Microsoft Community

Anonymous said...

"While running MouseMovementRecorder, select it and try pressing the '+' key
on the keyboard a few times and see if that fixes it."

Yes. That fixed it. But what does that mean? Does it mean that mouse acc is turned off and the fix is working?

Da_maniaC said...

Hello Mark C,
Kudos to you for all the work you put in your 'mouse fixes'.
I hope the situation in Windows 8/8.1 will be addressed by Microsoft asap to restore original mouse behaviour.

I'm on Windows 8.1 myself and tried your mouse fix, but i seem to be noticing a difference yet also, i do not seem to achieve what i would like.

I use a Logitech G400, without the Logitech Gaming software installed (since this seems to freeze Windows 8.1 up each and everytime).
Maybe this keeps happening because they try to initialize or hook into the same settings that seem to be causing all the W 8.1 issues (namely the DPI settings) or something....

Anyway...I, personally am pretty picky when it comes to mouse sens. and have never really noticed a difference in my mouse behaviour on XP/Vista/7.
I would very much like for the mouse movement in Windows 8.1 to feel like it was on Windows 7.
Does your fix apply to this situation?

I tried your fix. Checked my screen DPI (which was at default 100%) and ran the MouseMovementRecorder to see what was happening.

No matter which settings i try (improve accuracy on/off etc. etc.) i seem to keep noticing a negative acceleration in the games i play (mainly Arma 2: OA at the moment).

The mouse movement recorder doesn't really even out (ie. stop showing red/green) until i add something like 3000 or 3500 us delay and even then the mouse movement feels somewhat weird.

Can you please give me some pointers or elaborate on your fix for my situation?

Marius said...

Hi mark thanks for the fix, just wanted to double check im on DA running at 800DPI, Win 6/11, EPP Off, in Battlefield 3 or 4 when trying the mouse movement recorded im getting green and red lines is this normal? does that mean im getting 1-1? in BF i have Raw Input enabled, but disabling it same problem, also tried EPP ON and Raw Input Off still same

Mark Cranness said...

> I would very much like for the mouse movement in Windows 8.1 to feel like it was on Windows 7.
Does your fix apply to this situation?

What my fix does is make Windows "X" with "Enhance pointer precision" ON the same as Windows "X" with "Enhance pointer precision" OFF.

It won't make Windows 8.1 like Windows 7.

That MMR does even out with enough max catchup delay added means the fix is working.
But "working" means Windows 8.1 with "Enhance pointer precision" ON the same as Windows 8.1 with "Enhance pointer precision" OFF, both of which suffer from the Windows 8.1 lag problem.

Mark Cranness said...

> Battlefield 3 or 4 when trying the mouse movement recorded i'm getting green and red lines is this normal?

Yes, that is normal, see in my post starting : "NOTE: While running a game, you may see many red and green lines."

If the MMR test when run on the desktop shows little red or green, you are getting 1-to-1.

Da_maniaC said...

>That MMR does even out with enough max catchup delay added means the fix is working.
But "working" means Windows 8.1 with "Enhance pointer precision" ON the same as Windows 8.1 with "Enhance pointer precision" OFF, both of which suffer from the Windows 8.1 lag problem.

Thanks for your explenation. Seeing as you are pretty much the pioneer of these sorts of windows mouse related issues. Would you happen yo have any clue if microsoft is currently adressing the 'lag' issue?

Unknown said...

Hi,

first off great work your knowledge an effort is superb, I've just struggling a bit, I've installed the fix for windows 8.1 and run the mmr and I'm getting green and red lines with both eep on or off, I can get them to match if I move the mouse slowly in one direction i'm playing bf4 and have the raw imput enabled, I've got the Pointer set to 6, although I do have a Logitech g5 mouse is this the issue as in game there mostly green & red and not much black?

Regards

Graeme

Unknown said...

Adding to my comment above I just disconnect and reconnected my mouse and it's now all showing all back when I adjust the + in mmr, @ about 166hz how do I assigns this by default do I need to run mmr and just before I start gaming

Mark Cranness said...

> Would you happen to have any clue if microsoft is currently adressing the 'lag' issue?

They are aware of it, see :
mouse lag in video games since updating to win 8.1 @ Microsoft Community.
Mouse lag in video games since upgrading to Windows 8.1 @ Microsoft Community.

I expect they will fix it, because many people have a problem.

Mark Cranness said...

> ... windows 8.1 and run the mmr and I'm getting green and red lines with both eep on or off

Yes, that's the lag problem, see the links in my reply above.

Your Logitech G5 is not the problem.

> ... showing all back when I adjust the + in mmr

Using "+" in MMR does not affect mouse input for other games and doesn't fix or change how the mouse works at all.

All it does is make MMR look at the mouse movement a bit harder, to see if it can match-up the laggy pointer movement, by waiting longer for the corresponding (laggy) pointer movement to happen.

When MMR does have a collection of mouse movements and the laggy pointer movements that go with it, it can add them up and display black.
The black means : Total mouse movement is the same as total pointer movement, and thus the fix is working as expected : exact 1-to-1.
The fix only gives you 1-to-1, same as with EPP OFF. It doesn't fix the lag problem.
The pointer is still laggy, same as before. Also press "e" to show extra detail about the individual mouse movements and pointer movements being analysed.

Jonathan Barka said...

"While running MouseMovementRecorder, select it and try pressing the '+' key
on the keyboard a few times and see if that fixes it."

Yes. That fixed it. But what does that mean? Does it mean that mouse acc is turned off and the fix is working?

Anonymous said...

This worked great for me in Windows 7 and 8. Since updating to Windows 8.1 I get a lot of green and red in the mouse movement recorder.

AS stated above I use the + key and after 4 presses it is fixed. Does this prove that the fix worked? And if so why does it have green and red when it is fixed?

I get green and red just in the desktop. When I launch BF4 it goes green and red even when I have pressed + to correct.

Any help would be appreciated and I know the notes point this out but some clarification would be appreciated

Mark Cranness said...

> "pressing the '+' key" Yes. That fixed it. But what does that mean? Does it mean that mouse acc is turned off and the fix is working?

Yes, if the red and green goes away with enough "+", then the fix is working.

That we need to use "+" is because of the Windows 8.1 lag problem.
The lag happens also with EPP OFF.

"Acceleration fixed" in this case means MMR shows the same when EPP is ON as it does when EPP is OFF.
Press "A" key to toggle EPP and try it out. You may see red and green, BUT if you see similar red and green with EPP OFF as you see with EPP ON, then the fix is working.

Mark Cranness said...

> why does it have green and red when it is fixed?

Because it is the lag problem causing the red and green.
EPP Acceleration will cause red and green.
The lag problem also causes red and green.

If you see red and green, it could be that the lag is causing it, but the acceleration is not causing it and there is no acceleration.
Using "+" helps show that the accel is not causing it.

You will always get red and green in-game for games that need a fix, so ignore that.

3t3rnity said...

Mark, should I use this fix for new games, which have some kind of option in game, like turn raw mouse ON? Or is there no need?

Mark Cranness said...

If a game uses Raw Input or DirectInput, then it won't need a fix.

Raw Input works better than a fix, because Raw Input also solves "negative" acceleration, but a registry fix does not fix that.

(Some people are reporting that CS:GO with Raw Input feels smoothed.)

Unknown said...

Tbh I only play bf3/4 which has the raw Imput feature, am I best to revert back to std? I'm running 8.1?

Mark Cranness said...

> I only play bf3/4 which has the raw Imput feature, am I best to revert back to std?

Enable Raw Input on BF3/4.

If you previously used "Enhance pointer position" ON on the desktop, then I would reverse the fix (apply Windows_8.x_Default.reg and reboot).

If you previously used "Enhance pointer position" OFF, I would keep the fix in place.

Anonymous said...

after instaling the fix mouse acceleration is always on now and i have to switch to off everytime i start my computer. can i get rid of that or its just the right way it works?

Mark Cranness said...

> ... mouse acceleration is always on now and i have to switch to off everytime i start my computer.

I have a program that fixes just this problem.

To see if my program can help you, can you please do this:

1) Reboot so that acceleration gets turned back on.
2) Click Start menu, type regedit.exe in the "Search programs and files" box, click regedit.exe,
3) Navigate in the tree by clicking the small triangles to HKEY_CURRENT_USER\Control Panel\Mouse
4) Note down what the MouseSpeed setting is (0 or 1)
5) Open Mouse in Control Panel, and note if the 'Enhance pointer precision' checkbox is ON or OFF.

If 'Enhance pointer precision' checkbox is ON, but MouseSpeed setting is 0, my program can help.

(If MouseSpeed setting is 1, then I have another program that might help.
If MouseSpeed setting is 0 and 'Enhance pointer precision' checkbox is OFF, then I have mis-understood your problem, and we will have to try again.)

IMPORTANT: My registry fix is not causing a problem with 'Enhance pointer precision' checkbox always ON, something else is.
Perhaps 3rd party mouse drivers.

My fix when run the very first time (and after a reboot) turns 'Enhance pointer precision' OFF, but other programs or drivers can reset that later.

I wrote my program because my Razer Diamondback 3G drivers kept turning EPP OFF during boot, when I wanted it on.

Anonymous said...

u were right mark, i am the guy who posted about epp always on. synapse 2.0 razer turned epp on in every reboot. unistalled and problem solved. actually i was about to test it myself today but i took a look in your site for a chance to take a reply and it worked perfecto! keep good job. greetings from greece :P

Anonymous said...

So what's the final verdict about 8.1 ? What should we do exactly ? Install the patch, wait for a Windows fix ?

Because i'm still stuck at 200hz max on my mouse.

«Oldest ‹Older   201 – 400 of 780   Newer› Newest»