WineHQ
Bug Tracking Database – Bug 34474

 Bugzilla

 

Last modified: 2014-02-07 13:07:13 UTC  

Slow mouse cursor in Age of Empires 1 & 2 with winemac compared to X11

Bug 34474 - Slow mouse cursor in Age of Empires 1 & 2 with winemac compared to X11
Slow mouse cursor in Age of Empires 1 & 2 with winemac compared to X11
Status: CLOSED FIXED
AppDB: Show Apps affected by this bug
Product: Wine
Classification: Unclassified
Component: winemac.drv
1.7.1
x86-64 MacOS
: P2 normal
: ---
Assigned To: Mr. Bugs
: patch
Depends on:
Blocks:
  Show dependency tree
 
Reported: 2013-09-08 12:38 UTC by brymaster
Modified: 2014-02-07 13:07 UTC (History)
1 user (show)

See Also:
Regression SHA1:
Fixed by SHA1: 77f0a63b4fce90e4a35393eb16468f11a922ea3a
Distribution: ---
Staged patchset:


Attachments
Hack to ignore dinput's full-screen clipping (468 bytes, patch)
2013-09-09 14:27 UTC, Ken Thomases
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description brymaster 2013-09-08 12:38:52 UTC
In the games Age of Empires 1 and 2, the mouse cursor movement is slower/choppy with the winemac driver compared to being smooth in X11. I think this has been an issue since the winemac driver was included in Wine.

Running on 10.8.4 with Nvidia 9400M, Wine 1.7.1 winemac enabled.

Using winetricks: ddr=gdi in both games.
Comment 1 Ken Thomases 2013-09-08 14:24:44 UTC
Are you running full-screen or windowed? Does it change if you switch to the other?
Comment 2 brymaster 2013-09-08 14:31:27 UTC
Fullscreen. No change if I run windowed.

I should note that the choppiness occurs in-game and not at the title and menu screens.
Comment 3 Ken Thomases 2013-09-09 14:27:46 UTC
Created attachment 45908 [details]
Hack to ignore dinput's full-screen clipping

Does the attached patch improve things when running full-screen?
Comment 4 brymaster 2013-10-12 13:19:19 UTC
I've applied the patch to 1.7.1 and no change with the cursor movement.

Also, I can't test it on anything after 1.7.1 because it seems a bug was introduced in 1.7.2 that breaks games that need ddr=gdi. I just get a black of gray screen.
Comment 5 Ken Thomases 2013-10-21 16:49:04 UTC
(In reply to comment #4)
> Also, I can't test it on anything after 1.7.1 because it seems a bug was
> introduced in 1.7.2 that breaks games that need ddr=gdi. I just get a black of
> gray screen.

If you haven't already done so, please file a separate bug about this and do a regression test to find the cause.  Thanks.
Comment 6 brymaster 2013-11-08 21:18:39 UTC
I've opened an additional issue for the DirectDraw problem here (http://bugs.winehq.org/show_bug.cgi?id=34878).

For this mouse cursor issue, Microsoft still has a trial version online if you're interested in replicating: http://download.microsoft.com/download/aoe/Trial/1.0/WIN98/EN-US/MSAoE.exe

Otherwise, we may have to wait for the DirectDraw problem to be fixed until we can proceed further.
Comment 7 Ken Thomases 2013-11-12 00:04:00 UTC
There are several issues going on that I can reproduce with the demo you linked.

First, you need to install native DirectPlay (dplay) to work around a problem where an address range that built-in dplay needs for itself has already been used by something else.  I ended up installing all of DirectX 9, so it's possible that it needs more than dplay and I wouldn't have noticed.

With ddr=gdi, I am seeing the black screen (which you filed as bug 34878).  I didn't investigate this.

Without ddr=gdi, you run into bug 34166.  You can work around that for the Mac driver using a patch on that bug.

After I did that, the cursor seemed OK to me with current Wine.  However, I wasn't able to compare it to the X11 driver.  The workaround for bug 34166 only applies to the Mac driver.
Comment 8 Ken Thomases 2013-12-16 19:54:04 UTC
It's possible that this patch <http://source.winehq.org/patches/data/101087> might help with this bug.
Comment 9 brymaster 2014-02-06 20:44:53 UTC
Thanks Ken, I think that patch fixed the problem.

I've tested with both Age of Empires 1 and 2 on Wine 1.7.11 with Henri's hack for #34166 applied (http://bugs.winehq.org/show_bug.cgi?id=34166#c23) so that I could use ddr=opengl instead of the ddr=gdi workaround for the flickering (which only worked up until 1.7.1 but appears to have been fixed in 1.7.9).

So mouse movement is definitely fast and responsive as compared to X11 for these games. I should also note that I tested without directplay installed for Age of Empires 1 so I'm wondering if that's even necessary now. Though before your patch I found that installing directplay as you had suggested seemed to help.

Not sure what the deal is with #34166 but it looks like one of those issues that is never going to be fixed since blame is coming from both Apple and WineDev, so best to keep that hack around. Without that patch there's no way I can actually test these games in the default ddr=opengl.
Comment 10 Ken Thomases 2014-02-06 20:58:42 UTC
Great!  Thanks for testing and reporting it fixed.  For the record, it was this commit that fixed it: http://source.winehq.org/git/wine.git/commit/77f0a63b4fce90e4a35393eb16468f11a922ea3a

Regarding directplay, the need to install native was because of a conflict over an address range.  It's possible that as the code changes, or even is recompiled, that it will change which addresses it takes up.  So, it may be that the Mac driver has changed such that it's loading in a different address and allows built-in dplay to work.  Might break again at random, though.
Comment 11 Alexandre Julliard 2014-02-07 13:07:13 UTC
Closing bugs fixed in 1.7.12.


Privacy Policy
If you have a privacy inquiry regarding this site, please write to [email protected]

Hosted By CodeWeavers