`setupapi` patch from staging
Donat Enikeev
donat at enikeev.net
Sun Jan 8 08:26:04 CST 2017
Hi Guys,
Number of recent well-known games are based on Starling game engine
(Adobe Air+Stage3D for gpu rendering), such as: The Banner Saga 2,
Samorost 3, The Inner World, Angry Birds. They are are falling into
Software rendering mode on plain Wine and thus barely playable (bug
#41635)
Thanks to Béla Gyebrószki finding @ bug #41653, Wine makes these
games consider d3d9 rendering with the following single patch from
wine-staging
https://github.com/wine-compholio/wine-staging/blob/master/patches/setupapi-Display_Device/0002-setupapi-Handle-the-ase-that-a-full-driver-path-is-.patch
This patch implements support of the case when a full driver path is
passed to SetupDiGetClassDevs (trace successfully reaching
AddDeviceToSet for a game below [1]).
I was unable to find @wine-devel discussion around this patch, I would
be grateful if one could kindly remind why it was staged, probably it
just requires refactoring around the change or additional tests?
I am asking this, because Adobe stopped Linux support for the Air years
ago and we could never see such games ported, and therefore plain
Wine's support of gpu acceleration for such games looks important.
Thanks in advance
Best regards,
Donnie
[1]
0009:trace:setupapi:SetupDiGetClassDevsExW
{4d36e968-e325-11ce-bfc1-08002be10318} L"PCI\\VEN_0000&DEV_0000" (nil)
0x0000000a (nil) (null) (nil)
0009:warn:setupapi:SetupDiGetClassDevsExW unsupported flags 0000000a
0009:trace:setupapi:SetupDiCreateDeviceInfoListExW
{4d36e968-e325-11ce-bfc1-08002be10318} (nil) (null) (nil)
0009:trace:setupapi:SETUPDI_EnumerateDevices 0x464ac90,
{4d36e968-e325-11ce-bfc1-08002be10318}, L"PCI\\VEN_0000&DEV_0000",
0000000a
0009:trace:setupapi:SETUPDI_EnumerateMatchingDeviceInstances L"PCI"
L"VEN_0000&DEV_0000"
0009:trace:setupapi:SETUPDI_AddDeviceToSet 0x464ac90,
{4d36e968-e325-11ce-bfc1-08002be10318}, 0,
L"PCI\\VEN_0000&DEV_0000\\13&12345&0", 0
More information about the wine-devel
mailing list