From 7a134e49be309fe8eabfe336473c60621e829ba6 Mon Sep 17 00:00:00 2001 From: Joshua Ashton Date: Sun, 16 Feb 2020 04:02:00 +0000 Subject: [PATCH] [d3d10] Implement D3D10[Core]GetVersion and D3D10[Core]RegisterLayers --- src/d3d10/d3d10.def | 2 ++ src/d3d10/d3d10.spec | 3 +++ src/d3d10/d3d10_1.def | 2 ++ src/d3d10/d3d10_1.spec | 3 +++ src/d3d10/d3d10_main.cpp | 22 ++++++++++++++++++++++ src/d3d10/d3d10core.def | 2 ++ src/d3d10/d3d10core.spec | 2 ++ 7 files changed, 36 insertions(+) diff --git a/src/d3d10/d3d10.def b/src/d3d10/d3d10.def index cbb548c7..6da63131 100644 --- a/src/d3d10/d3d10.def +++ b/src/d3d10/d3d10.def @@ -25,3 +25,5 @@ EXPORTS D3D10StateBlockMaskGetSetting D3D10StateBlockMaskIntersect D3D10StateBlockMaskUnion + D3D10GetVersion + D3D10RegisterLayers diff --git a/src/d3d10/d3d10.spec b/src/d3d10/d3d10.spec index 6aecd3e2..be224e0b 100644 --- a/src/d3d10/d3d10.spec +++ b/src/d3d10/d3d10.spec @@ -29,3 +29,6 @@ @ stdcall D3D10StateBlockMaskGetSetting(ptr long long) @ stdcall D3D10StateBlockMaskIntersect(ptr ptr ptr) @ stdcall D3D10StateBlockMaskUnion(ptr ptr ptr) + +@ stdcall D3D10GetVersion() +@ stdcall D3D10RegisterLayers() \ No newline at end of file diff --git a/src/d3d10/d3d10_1.def b/src/d3d10/d3d10_1.def index 371a1e96..d32e4e1a 100644 --- a/src/d3d10/d3d10_1.def +++ b/src/d3d10/d3d10_1.def @@ -25,3 +25,5 @@ EXPORTS D3D10StateBlockMaskGetSetting D3D10StateBlockMaskIntersect D3D10StateBlockMaskUnion + D3D10GetVersion + D3D10RegisterLayers \ No newline at end of file diff --git a/src/d3d10/d3d10_1.spec b/src/d3d10/d3d10_1.spec index 34550b26..1f8662ef 100644 --- a/src/d3d10/d3d10_1.spec +++ b/src/d3d10/d3d10_1.spec @@ -29,3 +29,6 @@ @ stdcall D3D10StateBlockMaskGetSetting(ptr long long) @ stdcall D3D10StateBlockMaskIntersect(ptr ptr ptr) @ stdcall D3D10StateBlockMaskUnion(ptr ptr ptr) + +@ stdcall D3D10GetVersion() +@ stdcall D3D10RegisterLayers() \ No newline at end of file diff --git a/src/d3d10/d3d10_main.cpp b/src/d3d10/d3d10_main.cpp index 2f9c8317..6080aed8 100644 --- a/src/d3d10/d3d10_main.cpp +++ b/src/d3d10/d3d10_main.cpp @@ -360,6 +360,28 @@ extern "C" { ppErrorMsgs); } + + UINT64 STDMETHODCALLTYPE D3D10CoreGetVersion() { + // Match the Windows 10 return value, but we + // don't know the exact function signature + return 0xa000100041770ull; + } + + + UINT64 STDMETHODCALLTYPE D3D10GetVersion() { + return 0xa000100041770ull; + } + + + HRESULT STDMETHODCALLTYPE D3D10RegisterLayers() { + return E_NOTIMPL; + } + + + HRESULT STDMETHODCALLTYPE D3D10CoreRegisterLayers() { + return E_NOTIMPL; + } + } diff --git a/src/d3d10/d3d10core.def b/src/d3d10/d3d10core.def index 00a01e38..39c65968 100644 --- a/src/d3d10/d3d10core.def +++ b/src/d3d10/d3d10core.def @@ -1,3 +1,5 @@ LIBRARY D3D10CORE.DLL EXPORTS D3D10CoreCreateDevice + D3D10CoreGetVersion + D3D10CoreRegisterLayers diff --git a/src/d3d10/d3d10core.spec b/src/d3d10/d3d10core.spec index f18297d1..6d40fdf8 100644 --- a/src/d3d10/d3d10core.spec +++ b/src/d3d10/d3d10core.spec @@ -1 +1,3 @@ @ stdcall D3D10CoreCreateDevice(ptr ptr long long ptr) +@ stdcall D3D10CoreGetVersion() +@ stdcall D3D10CoreRegisterLayers() \ No newline at end of file