MyTDT-Mysoft / DllCompat

dll replacement for vista+ compatibility on windows XP
31 stars 8 forks source link

Latest WineD3D requires new functions #20

Open Svyatpro opened 4 years ago

Svyatpro commented 4 years ago

gdi3x.dll D3DKMTCreateDevice D3DKMTDestroyDevice D3DKMTOpenAdapterFromGdiDisplayName D3DKMTSetVidPnSourceOwner

ntdlx: strnlen

Latest Wine repo has those functions in gdi32 and in ntdll

pachuco commented 2 years ago

Added strnlen. I am going to assume these functions are for fdossena wined3d. If so, then you can run wined3d up to v4.18 for now.

Svyatpro commented 2 years ago

I can run latest WineD3D on XP for now. And I compile WineD3D far batter than fdossena's build I even have working DirectWrite for XP. All KMT* stuff can be wrapped like One-Core-API did

pachuco commented 2 years ago

Is it something that is done in userspace, for the rest of these D3DKMT functions?

Svyatpro commented 2 years ago

Yes, and some necessary functions can be just forwarded to DX SDK's d3d11ref.dll =)

For example, D3DKMTCreateDevice D3DKMTOpenAdapterFromGdiDisplayName

these functions are vital for WineD3D but they easily can be forwarded to d3d11ref.dll from DX SDK and WineD3D works again without problems

pachuco commented 2 years ago

Does this reference device have source in the sdk?

pachuco commented 2 years ago

Hmmm, this reference dll depends on CancelIoEx. Never got around to that one.

Svyatpro commented 2 years ago

no, there's no source code but we can use it as a "guest dll"

You can search and download older version of d3d11ref.dll it has less NT6 only dependencies