Hi,
Andrew Eikum asked Christian Costa:
Just to be clear, which "native" do you mean? Does this match Windows 7's dmusic behavior, or something else? I've been trying to target Windows 7's behavior in the new audio design.
A w7 target makes a lot of sense for mmdevapi/WASAPI.
However, isn't DMusic a thing of the past? In that case, I argue that DSound and DMusic should target the "best in class" native OS of the time where apps were written using these APIs, because the app writers "optimized" their apps to the behaviour they could observe. Wouldn't "best in class" mean XP for DSound/DMusic?
For similar reasons, the MCI should mimic w9x(/wxp) behaviour, because that's what was available when apps using the MCI were developed.
I prefer to hear "thank you guys, app X works like a charm in Wine like it worked on my rusty w98 and later xp box, whereas it refuses to run on w7" rather than "you guys do a great job of making my app X worked as badly in Wine as in w7 :-( whereas it used to work fine on my w98/xp machine".
Actually, there are quite a few AppDB comments like the first one. One reason might be that the dlls those app use were added to Wine at a time where the target OS was w9x or xp, whereas if they were written now, targeting w7, the old app would not work in Wine either.
A related topic is: we have no idea what the "set compatibility for wXY" checkbox in w7 does.
Recently, I discovered that "Age of Empires II - Conquerors" only plays videos on a w7 machine when you set w7 to xp compatibility. Why? The rest of the app seems to work (except for the purple grass issue, which requires a particular DirectDraw compatibility registry entry in w7). Did AoE target w7 when it was written? Obviously not.
Regards, Jörg Höhle
On Fri, Mar 30, 2012 at 12:33:51PM +0200, Joerg-Cyril.Hoehle@t-systems.com wrote:
Andrew Eikum asked Christian Costa:
Just to be clear, which "native" do you mean? Does this match Windows 7's dmusic behavior, or something else? I've been trying to target Windows 7's behavior in the new audio design.
A w7 target makes a lot of sense for mmdevapi/WASAPI.
However, isn't DMusic a thing of the past? In that case, I argue that DSound and DMusic should target the "best in class" native OS of the time where apps were written using these APIs, because the app writers "optimized" their apps to the behaviour they could observe. Wouldn't "best in class" mean XP for DSound/DMusic?
For similar reasons, the MCI should mimic w9x(/wxp) behaviour, because that's what was available when apps using the MCI were developed.
I prefer to hear "thank you guys, app X works like a charm in Wine like it worked on my rusty w98 and later xp box, whereas it refuses to run on w7" rather than "you guys do a great job of making my app X worked as badly in Wine as in w7 :-( whereas it used to work fine on my w98/xp machine".
I think about the goal of "targeting Windows 7" as more about revealing how Microsoft chose to implement these APIs on top of MMDevAPI, than about replicating Windows 7's behavior exactly. Targeting Windows 7 is the default choice when implementing these APIs in Wine, and when we find applications that expect older behavior, we can deviate from Windows 7's behavior to fix them specifically.
Andrew