mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-01-28 22:04:43 -08:00
Rebase against 08c6114fbbdabe1873731356c51716e513a26348.
This commit is contained in:
parent
39f66ddd9f
commit
27fae2dc15
@ -1,18 +1,18 @@
|
||||
From d6805cde0e8f01e672f17fb03af947e7d2f83dde Mon Sep 17 00:00:00 2001
|
||||
From cf45f6b66c0babf760c2a27ff7aa6842696fb22f Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Sun, 1 Oct 2017 04:43:22 +0200
|
||||
Subject: [PATCH] d3d11: Implement restoring of state after executing a command
|
||||
list.
|
||||
|
||||
---
|
||||
dlls/d3d11/device.c | 233 +++++++++++++++++++++++++++++++++++++++++++++++++++-
|
||||
dlls/d3d11/device.c | 233 +++++++++++++++++++++++++++++++++++++++++++-
|
||||
1 file changed, 229 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
|
||||
index 4f3700d..e214202 100644
|
||||
index 639727e4af4..c2c63d97351 100644
|
||||
--- a/dlls/d3d11/device.c
|
||||
+++ b/dlls/d3d11/device.c
|
||||
@@ -367,6 +367,62 @@ struct deferred_call
|
||||
@@ -391,6 +391,62 @@ struct deferred_call
|
||||
};
|
||||
};
|
||||
|
||||
@ -75,7 +75,7 @@ index 4f3700d..e214202 100644
|
||||
/* ID3D11CommandList - command list */
|
||||
struct d3d11_command_list
|
||||
{
|
||||
@@ -2513,22 +2569,191 @@ static void STDMETHODCALLTYPE d3d11_immediate_context_ResolveSubresource(ID3D11D
|
||||
@@ -2730,22 +2786,191 @@ static void STDMETHODCALLTYPE d3d11_immediate_context_ResolveSubresource(ID3D11D
|
||||
wined3d_mutex_unlock();
|
||||
}
|
||||
|
||||
@ -130,7 +130,7 @@ index 4f3700d..e214202 100644
|
||||
+ ID3D11DeviceContext1_SOGetTargets(context, D3D11_SO_BUFFER_SLOT_COUNT, stateblock->so_buffers);
|
||||
+ /* For some reason the d3d11 get function is missing the offset parameter */
|
||||
+ for (i = 0; i < D3D11_SO_BUFFER_SLOT_COUNT; i++)
|
||||
+ wined3d_device_get_stream_output(device->wined3d_device, i, &stateblock->so_offsets[i]);
|
||||
+ wined3d_device_context_get_stream_output(device->immediate_context.wined3d_context, i, &stateblock->so_offsets[i]);
|
||||
+
|
||||
+ ID3D11DeviceContext1_GetPredication(context, &stateblock->predicate, &stateblock->predicate_value);
|
||||
+
|
||||
@ -272,5 +272,5 @@ index 4f3700d..e214202 100644
|
||||
}
|
||||
|
||||
--
|
||||
1.9.1
|
||||
2.30.2
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 5bfa95c3058d8c869e7555514b05dc877a842e42 Mon Sep 17 00:00:00 2001
|
||||
From f72b878cf5dcf8f20d485f7b3e75d86e303393e7 Mon Sep 17 00:00:00 2001
|
||||
From: Zebediah Figura <z.figura12@gmail.com>
|
||||
Date: Fri, 8 Jun 2018 22:04:29 -0500
|
||||
Subject: [PATCH] server: Create eventfd file descriptors for thread objects.
|
||||
@ -9,7 +9,7 @@ Subject: [PATCH] server: Create eventfd file descriptors for thread objects.
|
||||
2 files changed, 17 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/server/thread.c b/server/thread.c
|
||||
index 8432d0aa8ed..d4b88be3897 100644
|
||||
index e7795c21136..ef5b3fbf313 100644
|
||||
--- a/server/thread.c
|
||||
+++ b/server/thread.c
|
||||
@@ -186,6 +186,7 @@ struct type_descr thread_type =
|
||||
@ -37,8 +37,8 @@ index 8432d0aa8ed..d4b88be3897 100644
|
||||
thread->system_regs = 0;
|
||||
thread->queue = NULL;
|
||||
thread->wait = NULL;
|
||||
@@ -374,6 +376,9 @@ struct thread *create_thread( int fd, struct process *process, const struct secu
|
||||
return NULL;
|
||||
@@ -385,6 +387,9 @@ struct thread *create_thread( int fd, struct process *process, const struct secu
|
||||
}
|
||||
}
|
||||
|
||||
+ if (do_esync())
|
||||
@ -47,7 +47,7 @@ index 8432d0aa8ed..d4b88be3897 100644
|
||||
set_fd_events( thread->request_fd, POLLIN ); /* start listening to events */
|
||||
add_process_thread( thread->process, thread );
|
||||
return thread;
|
||||
@@ -453,6 +458,9 @@ static void destroy_thread( struct object *obj )
|
||||
@@ -464,6 +469,9 @@ static void destroy_thread( struct object *obj )
|
||||
if (thread->exit_poll) remove_timeout_user( thread->exit_poll );
|
||||
if (thread->id) free_ptid( thread->id );
|
||||
if (thread->token) release_object( thread->token );
|
||||
@ -57,7 +57,7 @@ index 8432d0aa8ed..d4b88be3897 100644
|
||||
}
|
||||
|
||||
/* dump a thread on stdout for debugging purposes */
|
||||
@@ -471,6 +479,13 @@ static int thread_signaled( struct object *obj, struct wait_queue_entry *entry )
|
||||
@@ -482,6 +490,13 @@ static int thread_signaled( struct object *obj, struct wait_queue_entry *entry )
|
||||
return mythread->state == TERMINATED && !mythread->exit_poll;
|
||||
}
|
||||
|
||||
@ -84,5 +84,5 @@ index 077ab0929ba..99904557d44 100644
|
||||
struct msg_queue *queue; /* message queue */
|
||||
struct thread_wait *wait; /* current wait condition if sleeping */
|
||||
--
|
||||
2.20.1
|
||||
2.30.2
|
||||
|
||||
|
@ -51,7 +51,7 @@ usage()
|
||||
# Get the upstream commit sha
|
||||
upstream_commit()
|
||||
{
|
||||
echo "788fd4ee44fc9877b01888fdd3cd72b9ac88228e"
|
||||
echo "08c6114fbbdabe1873731356c51716e513a26348"
|
||||
}
|
||||
|
||||
# Show version information
|
||||
|
@ -1,160 +0,0 @@
|
||||
From fb2f51e8cacba6adcc47f61ae937323b2de76388 Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 12:56:33 +0200
|
||||
Subject: [PATCH 03/23] xactengine2_10: Add new dll.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
configure.ac | 1 +
|
||||
dlls/xactengine2_10/Makefile.in | 8 ++++
|
||||
dlls/xactengine2_10/xact2_classes.idl | 27 +++++++++++
|
||||
dlls/xactengine2_10/xact2_dll.c | 64 +++++++++++++++++++++++++
|
||||
dlls/xactengine2_10/xactengine2_10.spec | 4 ++
|
||||
5 files changed, 104 insertions(+)
|
||||
create mode 100644 dlls/xactengine2_10/Makefile.in
|
||||
create mode 100644 dlls/xactengine2_10/xact2_classes.idl
|
||||
create mode 100644 dlls/xactengine2_10/xact2_dll.c
|
||||
create mode 100644 dlls/xactengine2_10/xactengine2_10.spec
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 110f50d762a..aa1d315da41 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3983,6 +3983,7 @@ WINE_CONFIG_MAKEFILE(dlls/x3daudio1_4)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_5)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_6)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_7)
|
||||
+WINE_CONFIG_MAKEFILE(dlls/xactengine2_10)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine3_0)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine3_1)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine3_2)
|
||||
diff --git a/dlls/xactengine2_10/Makefile.in b/dlls/xactengine2_10/Makefile.in
|
||||
new file mode 100644
|
||||
index 00000000000..b1c131ddfd9
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_10/Makefile.in
|
||||
@@ -0,0 +1,8 @@
|
||||
+MODULE = xactengine2_10.dll
|
||||
+IMPORTS = ole32 uuid
|
||||
+EXTRADEFS = -DXACT3_VER=0x0210
|
||||
+
|
||||
+C_SRCS = \
|
||||
+ xact2_dll.c
|
||||
+
|
||||
+IDL_SRCS = xact2_classes.idl
|
||||
diff --git a/dlls/xactengine2_10/xact2_classes.idl b/dlls/xactengine2_10/xact2_classes.idl
|
||||
new file mode 100644
|
||||
index 00000000000..1a248327bb7
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_10/xact2_classes.idl
|
||||
@@ -0,0 +1,27 @@
|
||||
+/*
|
||||
+ * COM Classes for xactengine
|
||||
+ *
|
||||
+ * Copyright 2018 Ethan Lee for CodeWeavers
|
||||
+ *
|
||||
+ * This library is free software; you can redistribute it and/or
|
||||
+ * modify it under the terms of the GNU Lesser General Public
|
||||
+ * License as published by the Free Software Foundation; either
|
||||
+ * version 2.1 of the License, or (at your option) any later version.
|
||||
+ *
|
||||
+ * This library is distributed in the hope that it will be useful,
|
||||
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
+ * Lesser General Public License for more details.
|
||||
+ *
|
||||
+ * You should have received a copy of the GNU Lesser General Public
|
||||
+ * License along with this library; if not, write to the Free Software
|
||||
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
+ */
|
||||
+
|
||||
+#pragma makedep register
|
||||
+
|
||||
+[
|
||||
+ threading(both),
|
||||
+ uuid(65d822a4-4799-42c6-9b18-d26cf66dd320)
|
||||
+]
|
||||
+coclass XACTEngine {}
|
||||
diff --git a/dlls/xactengine2_10/xact2_dll.c b/dlls/xactengine2_10/xact2_dll.c
|
||||
new file mode 100644
|
||||
index 00000000000..743f17c0691
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_10/xact2_dll.c
|
||||
@@ -0,0 +1,64 @@
|
||||
+/*
|
||||
+ * Copyright (c) 2018 Ethan Lee for CodeWeavers
|
||||
+ *
|
||||
+ * This library is free software; you can redistribute it and/or
|
||||
+ * modify it under the terms of the GNU Lesser General Public
|
||||
+ * License as published by the Free Software Foundation; either
|
||||
+ * version 2.1 of the License, or (at your option) any later version.
|
||||
+ *
|
||||
+ * This library is distributed in the hope that it will be useful,
|
||||
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
+ * Lesser General Public License for more details.
|
||||
+ *
|
||||
+ * You should have received a copy of the GNU Lesser General Public
|
||||
+ * License along with this library; if not, write to the Free Software
|
||||
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA+ */
|
||||
+
|
||||
+#include "config.h"
|
||||
+
|
||||
+#include <stdarg.h>
|
||||
+
|
||||
+#include "initguid.h"
|
||||
+#include "xact.h"
|
||||
+#include "rpcproxy.h"
|
||||
+#include "wine/debug.h"
|
||||
+
|
||||
+WINE_DEFAULT_DEBUG_CHANNEL(xact3);
|
||||
+
|
||||
+static HINSTANCE instance;
|
||||
+
|
||||
+BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD reason, void *pReserved)
|
||||
+{
|
||||
+ TRACE("(%p, %d, %p)\n", hinstDLL, reason, pReserved);
|
||||
+
|
||||
+ switch (reason)
|
||||
+ {
|
||||
+ case DLL_PROCESS_ATTACH:
|
||||
+ instance = hinstDLL;
|
||||
+ DisableThreadLibraryCalls( hinstDLL );
|
||||
+ break;
|
||||
+ }
|
||||
+ return TRUE;
|
||||
+}
|
||||
+
|
||||
+HRESULT WINAPI DllCanUnloadNow(void)
|
||||
+{
|
||||
+ return S_FALSE;
|
||||
+}
|
||||
+
|
||||
+HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, void **ppv)
|
||||
+{
|
||||
+ FIXME("Unknown class %s\n", debugstr_guid(rclsid));
|
||||
+ return CLASS_E_CLASSNOTAVAILABLE;
|
||||
+}
|
||||
+
|
||||
+HRESULT WINAPI DllRegisterServer(void)
|
||||
+{
|
||||
+ return __wine_register_resources(instance);
|
||||
+}
|
||||
+
|
||||
+HRESULT WINAPI DllUnregisterServer(void)
|
||||
+{
|
||||
+ return __wine_unregister_resources(instance);
|
||||
+}
|
||||
diff --git a/dlls/xactengine2_10/xactengine2_10.spec b/dlls/xactengine2_10/xactengine2_10.spec
|
||||
new file mode 100644
|
||||
index 00000000000..b16365d0c9f
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_10/xactengine2_10.spec
|
||||
@@ -0,0 +1,4 @@
|
||||
+@ stdcall -private DllCanUnloadNow()
|
||||
+@ stdcall -private DllGetClassObject(ptr ptr ptr)
|
||||
+@ stdcall -private DllRegisterServer()
|
||||
+@ stdcall -private DllUnregisterServer()
|
||||
--
|
||||
2.28.0
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,178 +0,0 @@
|
||||
From 31d429746d85fbfa60cab01f4cb7ad2981e57d7e Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 13:36:05 +0200
|
||||
Subject: [PATCH 05/23] xactengine2_10: Implement IXACTSoundBank interface.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
dlls/xactengine2_10/xact2_dll.c | 139 +++++++++++++++++++++++++++++++-
|
||||
1 file changed, 136 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/dlls/xactengine2_10/xact2_dll.c b/dlls/xactengine2_10/xact2_dll.c
|
||||
index 08275a19f5c..98193498e49 100644
|
||||
--- a/dlls/xactengine2_10/xact2_dll.c
|
||||
+++ b/dlls/xactengine2_10/xact2_dll.c
|
||||
@@ -32,6 +32,112 @@ WINE_DEFAULT_DEBUG_CHANNEL(xact3);
|
||||
|
||||
static HINSTANCE instance;
|
||||
|
||||
+typedef struct _XACTSoundBankImpl {
|
||||
+ IXACTSoundBank IXACTSoundBank_iface;
|
||||
+
|
||||
+ FACTSoundBank *fact_soundbank;
|
||||
+} XACTSoundBankImpl;
|
||||
+
|
||||
+static inline XACTSoundBankImpl *impl_from_IXACTSoundBank(IXACTSoundBank *iface)
|
||||
+{
|
||||
+ return CONTAINING_RECORD(iface, XACTSoundBankImpl, IXACTSoundBank_iface);
|
||||
+}
|
||||
+
|
||||
+static XACTINDEX WINAPI IXACTSoundBankImpl_GetCueIndex(IXACTSoundBank *iface,
|
||||
+ PCSTR szFriendlyName)
|
||||
+{
|
||||
+ XACTSoundBankImpl *This = impl_from_IXACTSoundBank(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%s)\n", This, szFriendlyName);
|
||||
+
|
||||
+ return FACTSoundBank_GetCueIndex(This->fact_soundbank, szFriendlyName);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTSoundBankImpl_GetNumCues(IXACTSoundBank *iface,
|
||||
+ XACTINDEX *pnNumCues)
|
||||
+{
|
||||
+ XACTSoundBankImpl *This = impl_from_IXACTSoundBank(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p)\n", This, pnNumCues);
|
||||
+
|
||||
+ return FACTSoundBank_GetNumCues(This->fact_soundbank, pnNumCues);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTSoundBankImpl_GetCueProperties(IXACTSoundBank *iface,
|
||||
+ XACTINDEX nCueIndex, XACT_CUE_PROPERTIES *pProperties)
|
||||
+{
|
||||
+ XACTSoundBankImpl *This = impl_from_IXACTSoundBank(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%u, %p)\n", This, nCueIndex, pProperties);
|
||||
+
|
||||
+ return FACTSoundBank_GetCueProperties(This->fact_soundbank, nCueIndex,
|
||||
+ (FACTCueProperties*) pProperties);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTSoundBankImpl_Prepare(IXACTSoundBank *iface,
|
||||
+ XACTINDEX nCueIndex, DWORD dwFlags, XACTTIME timeOffset,
|
||||
+ IXACTCue** ppCue)
|
||||
+{
|
||||
+ XACTSoundBankImpl *This = impl_from_IXACTSoundBank(iface);
|
||||
+ FIXME("(%p)->(%u, 0x%x, %u, %p): stub!\n", This, nCueIndex, dwFlags, timeOffset,
|
||||
+ ppCue);
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTSoundBankImpl_Play(IXACTSoundBank *iface,
|
||||
+ XACTINDEX nCueIndex, DWORD dwFlags, XACTTIME timeOffset,
|
||||
+ IXACTCue** ppCue)
|
||||
+{
|
||||
+ XACTSoundBankImpl *This = impl_from_IXACTSoundBank(iface);
|
||||
+ FIXME("(%p)->(%u, 0x%x, %u, %p): stub!\n", This, nCueIndex, dwFlags, timeOffset,
|
||||
+ ppCue);
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTSoundBankImpl_Stop(IXACTSoundBank *iface,
|
||||
+ XACTINDEX nCueIndex, DWORD dwFlags)
|
||||
+{
|
||||
+ XACTSoundBankImpl *This = impl_from_IXACTSoundBank(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%u)\n", This, dwFlags);
|
||||
+
|
||||
+ return FACTSoundBank_Stop(This->fact_soundbank, nCueIndex, dwFlags);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTSoundBankImpl_Destroy(IXACTSoundBank *iface)
|
||||
+{
|
||||
+ XACTSoundBankImpl *This = impl_from_IXACTSoundBank(iface);
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ TRACE("(%p)\n", This);
|
||||
+
|
||||
+ hr = FACTSoundBank_Destroy(This->fact_soundbank);
|
||||
+ HeapFree(GetProcessHeap(), 0, This);
|
||||
+ return hr;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTSoundBankImpl_GetState(IXACTSoundBank *iface,
|
||||
+ DWORD *pdwState)
|
||||
+{
|
||||
+ XACTSoundBankImpl *This = impl_from_IXACTSoundBank(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p)\n", This, pdwState);
|
||||
+
|
||||
+ return FACTSoundBank_GetState(This->fact_soundbank, pdwState);
|
||||
+}
|
||||
+
|
||||
+static const IXACTSoundBankVtbl XACTSoundBank_Vtbl =
|
||||
+{
|
||||
+ IXACTSoundBankImpl_GetCueIndex,
|
||||
+ IXACTSoundBankImpl_GetNumCues,
|
||||
+ IXACTSoundBankImpl_GetCueProperties,
|
||||
+ IXACTSoundBankImpl_Prepare,
|
||||
+ IXACTSoundBankImpl_Play,
|
||||
+ IXACTSoundBankImpl_Stop,
|
||||
+ IXACTSoundBankImpl_Destroy,
|
||||
+ IXACTSoundBankImpl_GetState
|
||||
+};
|
||||
+
|
||||
typedef struct _XACTEngineImpl {
|
||||
IXACTEngine IXACTEngine_iface;
|
||||
|
||||
@@ -184,7 +290,7 @@ static HRESULT WINAPI IXACTEngineImpl_Initialize(IXACTEngine *iface,
|
||||
params.globalSettingsBufferSize = pParams->globalSettingsBufferSize;
|
||||
params.globalSettingsFlags = pParams->globalSettingsFlags;
|
||||
params.globalSettingsAllocAttributes = pParams->globalSettingsAllocAttributes;
|
||||
- params.pRendererID = pParams->pRendererID;
|
||||
+ params.pRendererID = (INT16 *) pParams->pRendererID;
|
||||
params.pXAudio2 = NULL;
|
||||
params.pMasteringVoice = NULL;
|
||||
|
||||
@@ -234,9 +340,36 @@ static HRESULT WINAPI IXACTEngineImpl_CreateSoundBank(IXACTEngine *iface,
|
||||
DWORD dwAllocAttributes, IXACTSoundBank **ppSoundBank)
|
||||
{
|
||||
XACTEngineImpl *This = impl_from_IXACTEngine(iface);
|
||||
- FIXME("(%p)->(%p, %u, 0x%x, 0x%x, %p): stub!\n", This, pvBuffer, dwSize, dwFlags,
|
||||
+ XACTSoundBankImpl *sb;
|
||||
+ FACTSoundBank *fsb;
|
||||
+ UINT ret;
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u, 0x%x, 0x%x, %p)\n", This, pvBuffer, dwSize, dwFlags,
|
||||
dwAllocAttributes, ppSoundBank);
|
||||
- return E_NOTIMPL;
|
||||
+
|
||||
+ ret = FACTAudioEngine_CreateSoundBank(This->fact_engine, pvBuffer, dwSize,
|
||||
+ dwFlags, dwAllocAttributes, &fsb);
|
||||
+ if(ret != 0)
|
||||
+ {
|
||||
+ ERR("Failed to CreateSoundBank: %d\n", ret);
|
||||
+ return E_FAIL;
|
||||
+ }
|
||||
+
|
||||
+ sb = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*sb));
|
||||
+ if (!sb)
|
||||
+ {
|
||||
+ FACTSoundBank_Destroy(fsb);
|
||||
+ ERR("Failed to allocate XACTSoundBankImpl!");
|
||||
+ return E_OUTOFMEMORY;
|
||||
+ }
|
||||
+
|
||||
+ sb->IXACTSoundBank_iface.lpVtbl = &XACTSoundBank_Vtbl;
|
||||
+ sb->fact_soundbank = fsb;
|
||||
+ *ppSoundBank = &sb->IXACTSoundBank_iface;
|
||||
+
|
||||
+ TRACE("Created SoundBank: %p\n", sb);
|
||||
+
|
||||
+ return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IXACTEngineImpl_CreateInMemoryWaveBank(IXACTEngine *iface,
|
||||
--
|
||||
2.28.0
|
||||
|
@ -1,233 +0,0 @@
|
||||
From 3920774c38e83f14cc550de078b7601017099181 Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 16:46:31 +0200
|
||||
Subject: [PATCH 06/23] xactengine2_10: Implement IXACTCue Interface.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
dlls/xactengine2_10/xact2_dll.c | 201 +++++++++++++++++++++++++++++++-
|
||||
1 file changed, 199 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/xactengine2_10/xact2_dll.c b/dlls/xactengine2_10/xact2_dll.c
|
||||
index 98193498e49..c425fe091db 100644
|
||||
--- a/dlls/xactengine2_10/xact2_dll.c
|
||||
+++ b/dlls/xactengine2_10/xact2_dll.c
|
||||
@@ -32,6 +32,176 @@ WINE_DEFAULT_DEBUG_CHANNEL(xact3);
|
||||
|
||||
static HINSTANCE instance;
|
||||
|
||||
+typedef struct _XACTCueImpl {
|
||||
+ IXACTCue IXACTCue_iface;
|
||||
+ FACTCue *fact_cue;
|
||||
+} XACTCueImpl;
|
||||
+
|
||||
+static inline XACTCueImpl *impl_from_IXACTCue(IXACTCue *iface)
|
||||
+{
|
||||
+ return CONTAINING_RECORD(iface, XACTCueImpl, IXACTCue_iface);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTCueImpl_Play(IXACTCue *iface)
|
||||
+{
|
||||
+ XACTCueImpl *This = impl_from_IXACTCue(iface);
|
||||
+
|
||||
+ TRACE("(%p)\n", iface);
|
||||
+
|
||||
+ return FACTCue_Play(This->fact_cue);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTCueImpl_Stop(IXACTCue *iface, DWORD dwFlags)
|
||||
+{
|
||||
+ XACTCueImpl *This = impl_from_IXACTCue(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%u)\n", iface, dwFlags);
|
||||
+
|
||||
+ return FACTCue_Stop(This->fact_cue, dwFlags);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTCueImpl_GetState(IXACTCue *iface, DWORD *pdwState)
|
||||
+{
|
||||
+ XACTCueImpl *This = impl_from_IXACTCue(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p)\n", iface, pdwState);
|
||||
+
|
||||
+ return FACTCue_GetState(This->fact_cue, pdwState);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTCueImpl_Destroy(IXACTCue *iface)
|
||||
+{
|
||||
+ XACTCueImpl *This = impl_from_IXACTCue(iface);
|
||||
+ UINT ret;
|
||||
+
|
||||
+ TRACE("(%p)\n", iface);
|
||||
+
|
||||
+ ret = FACTCue_Destroy(This->fact_cue);
|
||||
+ if (ret != 0)
|
||||
+ WARN("FACTCue_Destroy returned %d\n", ret);
|
||||
+ HeapFree(GetProcessHeap(), 0, This);
|
||||
+ return S_OK;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTCueImpl_GetChannelMap(IXACTCue *iface,
|
||||
+ LPXACTCHANNELMAP pChannelMap, DWORD BufferSize, LPDWORD pRequiredSize)
|
||||
+{
|
||||
+ XACTCueImpl *This = impl_from_IXACTCue(iface);
|
||||
+ FIXME("(%p)->(%p %d %p): stub!\n", This, pChannelMap, BufferSize, pRequiredSize);
|
||||
+ return S_OK;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTCueImpl_SetChannelMap(IXACTCue *iface,
|
||||
+ LPXACTCHANNELMAP pChannelMap)
|
||||
+{
|
||||
+ XACTCueImpl *This = impl_from_IXACTCue(iface);
|
||||
+ FIXME("(%p)->(%p): stub!\n", This, pChannelMap);
|
||||
+ return S_OK;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTCueImpl_GetChannelVolume(IXACTCue *iface,
|
||||
+ LPXACTCHANNELVOLUME pVolume)
|
||||
+{
|
||||
+ XACTCueImpl *This = impl_from_IXACTCue(iface);
|
||||
+ FIXME("(%p)->(%p): stub!\n", This, pVolume);
|
||||
+ return S_OK;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTCueImpl_SetChannelVolume(IXACTCue *iface,
|
||||
+ LPXACTCHANNELVOLUME pVolume)
|
||||
+{
|
||||
+ XACTCueImpl *This = impl_from_IXACTCue(iface);
|
||||
+ FIXME("(%p)->(%p): stub!\n", This, pVolume);
|
||||
+ return S_OK;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTCueImpl_SetMatrixCoefficients(IXACTCue *iface,
|
||||
+ UINT32 uSrcChannelCount, UINT32 uDstChannelCount,
|
||||
+ float *pMatrixCoefficients)
|
||||
+{
|
||||
+ XACTCueImpl *This = impl_from_IXACTCue(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%u, %u, %p)\n", iface, uSrcChannelCount, uDstChannelCount,
|
||||
+ pMatrixCoefficients);
|
||||
+
|
||||
+ return FACTCue_SetMatrixCoefficients(This->fact_cue, uSrcChannelCount,
|
||||
+ uDstChannelCount, pMatrixCoefficients);
|
||||
+}
|
||||
+
|
||||
+static XACTVARIABLEINDEX WINAPI IXACTCueImpl_GetVariableIndex(IXACTCue *iface,
|
||||
+ PCSTR szFriendlyName)
|
||||
+{
|
||||
+ XACTCueImpl *This = impl_from_IXACTCue(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%s)\n", iface, szFriendlyName);
|
||||
+
|
||||
+ return FACTCue_GetVariableIndex(This->fact_cue, szFriendlyName);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTCueImpl_SetVariable(IXACTCue *iface,
|
||||
+ XACTVARIABLEINDEX nIndex, XACTVARIABLEVALUE nValue)
|
||||
+{
|
||||
+ XACTCueImpl *This = impl_from_IXACTCue(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%u, %f)\n", iface, nIndex, nValue);
|
||||
+
|
||||
+ return FACTCue_SetVariable(This->fact_cue, nIndex, nValue);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTCueImpl_GetVariable(IXACTCue *iface,
|
||||
+ XACTVARIABLEINDEX nIndex, XACTVARIABLEVALUE *nValue)
|
||||
+{
|
||||
+ XACTCueImpl *This = impl_from_IXACTCue(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%u, %p)\n", iface, nIndex, nValue);
|
||||
+
|
||||
+ return FACTCue_GetVariable(This->fact_cue, nIndex, nValue);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTCueImpl_Pause(IXACTCue *iface, BOOL fPause)
|
||||
+{
|
||||
+ XACTCueImpl *This = impl_from_IXACTCue(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%u)\n", iface, fPause);
|
||||
+
|
||||
+ return FACTCue_Pause(This->fact_cue, fPause);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTCueImpl_GetProperties(IXACTCue *iface,
|
||||
+ XACT_CUE_INSTANCE_PROPERTIES **ppProperties)
|
||||
+{
|
||||
+ XACTCueImpl *This = impl_from_IXACTCue(iface);
|
||||
+ FACTCueInstanceProperties *fProps;
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ TRACE("(%p)->(%p)\n", iface, ppProperties);
|
||||
+
|
||||
+ hr = FACTCue_GetProperties(This->fact_cue, &fProps);
|
||||
+ if(FAILED(hr))
|
||||
+ return hr;
|
||||
+
|
||||
+ *ppProperties = (XACT_CUE_INSTANCE_PROPERTIES*) fProps;
|
||||
+ return hr;
|
||||
+}
|
||||
+
|
||||
+static const IXACTCueVtbl XACTCue_Vtbl =
|
||||
+{
|
||||
+ IXACTCueImpl_Play,
|
||||
+ IXACTCueImpl_Stop,
|
||||
+ IXACTCueImpl_GetState,
|
||||
+ IXACTCueImpl_Destroy,
|
||||
+ IXACTCueImpl_GetChannelMap,
|
||||
+ IXACTCueImpl_SetChannelMap,
|
||||
+ IXACTCueImpl_GetChannelVolume,
|
||||
+ IXACTCueImpl_SetChannelVolume,
|
||||
+ IXACTCueImpl_SetMatrixCoefficients,
|
||||
+ IXACTCueImpl_GetVariableIndex,
|
||||
+ IXACTCueImpl_SetVariable,
|
||||
+ IXACTCueImpl_GetVariable,
|
||||
+ IXACTCueImpl_Pause,
|
||||
+ IXACTCueImpl_GetProperties
|
||||
+};
|
||||
+
|
||||
typedef struct _XACTSoundBankImpl {
|
||||
IXACTSoundBank IXACTSoundBank_iface;
|
||||
|
||||
@@ -79,9 +249,36 @@ static HRESULT WINAPI IXACTSoundBankImpl_Prepare(IXACTSoundBank *iface,
|
||||
IXACTCue** ppCue)
|
||||
{
|
||||
XACTSoundBankImpl *This = impl_from_IXACTSoundBank(iface);
|
||||
- FIXME("(%p)->(%u, 0x%x, %u, %p): stub!\n", This, nCueIndex, dwFlags, timeOffset,
|
||||
+ XACTCueImpl *cue;
|
||||
+ FACTCue *fcue;
|
||||
+ UINT ret;
|
||||
+
|
||||
+ TRACE("(%p)->(%u, 0x%x, %u, %p)\n", This, nCueIndex, dwFlags, timeOffset,
|
||||
ppCue);
|
||||
- return E_NOTIMPL;
|
||||
+
|
||||
+ ret = FACTSoundBank_Prepare(This->fact_soundbank, nCueIndex, dwFlags,
|
||||
+ timeOffset, &fcue);
|
||||
+ if(ret != 0)
|
||||
+ {
|
||||
+ ERR("Failed to CreateCue: %d\n", ret);
|
||||
+ return E_FAIL;
|
||||
+ }
|
||||
+
|
||||
+ cue = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*cue));
|
||||
+ if (!cue)
|
||||
+ {
|
||||
+ FACTCue_Destroy(fcue);
|
||||
+ ERR("Failed to allocate XACTCueImpl!");
|
||||
+ return E_OUTOFMEMORY;
|
||||
+ }
|
||||
+
|
||||
+ cue->IXACTCue_iface.lpVtbl = &XACTCue_Vtbl;
|
||||
+ cue->fact_cue = fcue;
|
||||
+ *ppCue = &cue->IXACTCue_iface;
|
||||
+
|
||||
+ TRACE("Created Cue: %p\n", cue);
|
||||
+
|
||||
+ return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IXACTSoundBankImpl_Play(IXACTSoundBank *iface,
|
||||
--
|
||||
2.28.0
|
||||
|
@ -1,169 +0,0 @@
|
||||
From 5bdc9c6d0eb143392490fcbebc7f25e70e7a7a26 Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 17:05:56 +0200
|
||||
Subject: [PATCH 07/23] xactengine2_10: Implement IXACTWaveBank interface.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
dlls/xactengine2_10/xact2_dll.c | 137 +++++++++++++++++++++++++++++++-
|
||||
1 file changed, 135 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/xactengine2_10/xact2_dll.c b/dlls/xactengine2_10/xact2_dll.c
|
||||
index c425fe091db..426e37083d1 100644
|
||||
--- a/dlls/xactengine2_10/xact2_dll.c
|
||||
+++ b/dlls/xactengine2_10/xact2_dll.c
|
||||
@@ -335,6 +335,112 @@ static const IXACTSoundBankVtbl XACTSoundBank_Vtbl =
|
||||
IXACTSoundBankImpl_GetState
|
||||
};
|
||||
|
||||
+typedef struct _XACTWaveBankImpl {
|
||||
+ IXACTWaveBank IXACTWaveBank_iface;
|
||||
+
|
||||
+ FACTWaveBank *fact_wavebank;
|
||||
+} XACTWaveBankImpl;
|
||||
+
|
||||
+static inline XACTWaveBankImpl *impl_from_IXACTWaveBank(IXACTWaveBank *iface)
|
||||
+{
|
||||
+ return CONTAINING_RECORD(iface, XACTWaveBankImpl, IXACTWaveBank_iface);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveBankImpl_Destroy(IXACTWaveBank *iface)
|
||||
+{
|
||||
+ XACTWaveBankImpl *This = impl_from_IXACTWaveBank(iface);
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ TRACE("(%p)\n", This);
|
||||
+
|
||||
+ hr = FACTWaveBank_Destroy(This->fact_wavebank);
|
||||
+ HeapFree(GetProcessHeap(), 0, This);
|
||||
+ return hr;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveBankImpl_GetNumWaves(IXACTWaveBank *iface,
|
||||
+ XACTINDEX *pnNumWaves)
|
||||
+{
|
||||
+ XACTWaveBankImpl *This = impl_from_IXACTWaveBank(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p)\n", This, pnNumWaves);
|
||||
+
|
||||
+ return FACTWaveBank_GetNumWaves(This->fact_wavebank, pnNumWaves);
|
||||
+}
|
||||
+
|
||||
+static XACTINDEX WINAPI IXACTWaveBankImpl_GetWaveIndex(IXACTWaveBank *iface,
|
||||
+ PCSTR szFriendlyName)
|
||||
+{
|
||||
+ XACTWaveBankImpl *This = impl_from_IXACTWaveBank(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%s)\n", This, szFriendlyName);
|
||||
+
|
||||
+ return FACTWaveBank_GetWaveIndex(This->fact_wavebank, szFriendlyName);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveBankImpl_GetWaveProperties(IXACTWaveBank *iface,
|
||||
+ XACTINDEX nWaveIndex, XACT_WAVE_PROPERTIES *pWaveProperties)
|
||||
+{
|
||||
+ XACTWaveBankImpl *This = impl_from_IXACTWaveBank(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%u, %p)\n", This, nWaveIndex, pWaveProperties);
|
||||
+
|
||||
+ return FACTWaveBank_GetWaveProperties(This->fact_wavebank, nWaveIndex,
|
||||
+ (FACTWaveProperties*) pWaveProperties);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveBankImpl_Prepare(IXACTWaveBank *iface,
|
||||
+ XACTINDEX nWaveIndex, DWORD dwFlags, DWORD dwPlayOffset,
|
||||
+ XACTLOOPCOUNT nLoopCount, IXACTWave** ppWave)
|
||||
+{
|
||||
+ XACTWaveBankImpl *This = impl_from_IXACTWaveBank(iface);
|
||||
+ FIXME("(%p)->(0x%x, %u, 0x%x, %u, %p): stub!\n", This, nWaveIndex, dwFlags,
|
||||
+ dwPlayOffset, nLoopCount, ppWave);
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveBankImpl_Play(IXACTWaveBank *iface,
|
||||
+ XACTINDEX nWaveIndex, DWORD dwFlags, DWORD dwPlayOffset,
|
||||
+ XACTLOOPCOUNT nLoopCount, IXACTWave** ppWave)
|
||||
+{
|
||||
+ XACTWaveBankImpl *This = impl_from_IXACTWaveBank(iface);
|
||||
+ FIXME("(%p)->(0x%x, %u, 0x%x, %u, %p): stub!\n", This, nWaveIndex, dwFlags, dwPlayOffset,
|
||||
+ nLoopCount, ppWave);
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveBankImpl_Stop(IXACTWaveBank *iface,
|
||||
+ XACTINDEX nWaveIndex, DWORD dwFlags)
|
||||
+{
|
||||
+ XACTWaveBankImpl *This = impl_from_IXACTWaveBank(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%u, %u)\n", This, nWaveIndex, dwFlags);
|
||||
+
|
||||
+ return FACTWaveBank_Stop(This->fact_wavebank, nWaveIndex, dwFlags);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveBankImpl_GetState(IXACTWaveBank *iface,
|
||||
+ DWORD *pdwState)
|
||||
+{
|
||||
+ XACTWaveBankImpl *This = impl_from_IXACTWaveBank(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p)\n", This, pdwState);
|
||||
+
|
||||
+ return FACTWaveBank_GetState(This->fact_wavebank, pdwState);
|
||||
+}
|
||||
+
|
||||
+static const IXACTWaveBankVtbl XACTWaveBank_Vtbl =
|
||||
+{
|
||||
+ IXACTWaveBankImpl_Destroy,
|
||||
+ IXACTWaveBankImpl_GetNumWaves,
|
||||
+ IXACTWaveBankImpl_GetWaveIndex,
|
||||
+ IXACTWaveBankImpl_GetWaveProperties,
|
||||
+ IXACTWaveBankImpl_Prepare,
|
||||
+ IXACTWaveBankImpl_Play,
|
||||
+ IXACTWaveBankImpl_Stop,
|
||||
+ IXACTWaveBankImpl_GetState
|
||||
+};
|
||||
+
|
||||
typedef struct _XACTEngineImpl {
|
||||
IXACTEngine IXACTEngine_iface;
|
||||
|
||||
@@ -574,9 +680,36 @@ static HRESULT WINAPI IXACTEngineImpl_CreateInMemoryWaveBank(IXACTEngine *iface,
|
||||
DWORD dwAllocAttributes, IXACTWaveBank **ppWaveBank)
|
||||
{
|
||||
XACTEngineImpl *This = impl_from_IXACTEngine(iface);
|
||||
- FIXME("(%p)->(%p, %u, 0x%x, 0x%x, %p): stub!\n", This, pvBuffer, dwSize, dwFlags,
|
||||
+ XACTWaveBankImpl *wb;
|
||||
+ FACTWaveBank *fwb;
|
||||
+ UINT ret;
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %u, 0x%x, 0x%x, %p)!\n", This, pvBuffer, dwSize, dwFlags,
|
||||
dwAllocAttributes, ppWaveBank);
|
||||
- return E_NOTIMPL;
|
||||
+
|
||||
+ ret = FACTAudioEngine_CreateInMemoryWaveBank(This->fact_engine, pvBuffer,
|
||||
+ dwSize, dwFlags, dwAllocAttributes, &fwb);
|
||||
+ if(ret != 0)
|
||||
+ {
|
||||
+ ERR("Failed to CreateWaveBank: %d\n", ret);
|
||||
+ return E_FAIL;
|
||||
+ }
|
||||
+
|
||||
+ wb = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*wb));
|
||||
+ if (!wb)
|
||||
+ {
|
||||
+ FACTWaveBank_Destroy(fwb);
|
||||
+ ERR("Failed to allocate XACTWaveBankImpl!");
|
||||
+ return E_OUTOFMEMORY;
|
||||
+ }
|
||||
+
|
||||
+ wb->IXACTWaveBank_iface.lpVtbl = &XACTWaveBank_Vtbl;
|
||||
+ wb->fact_wavebank = fwb;
|
||||
+ *ppWaveBank = &wb->IXACTWaveBank_iface;
|
||||
+
|
||||
+ TRACE("Created in-memory WaveBank: %p\n", wb);
|
||||
+
|
||||
+ return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IXACTEngineImpl_CreateStreamingWaveBank(IXACTEngine *iface,
|
||||
--
|
||||
2.28.0
|
||||
|
@ -1,68 +0,0 @@
|
||||
From 9a5dea2f6d073fa9edb1075e1437451cbb28e099 Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 17:10:06 +0200
|
||||
Subject: [PATCH 08/23] xactengine2_10: Implement
|
||||
IXACTEngine::CreateStreamingWaveBank.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
dlls/xactengine2_10/xact2_dll.c | 43 +++++++++++++++++++++++++++++++--
|
||||
1 file changed, 41 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/xactengine2_10/xact2_dll.c b/dlls/xactengine2_10/xact2_dll.c
|
||||
index 426e37083d1..ec7a97dd5f8 100644
|
||||
--- a/dlls/xactengine2_10/xact2_dll.c
|
||||
+++ b/dlls/xactengine2_10/xact2_dll.c
|
||||
@@ -717,8 +717,47 @@ static HRESULT WINAPI IXACTEngineImpl_CreateStreamingWaveBank(IXACTEngine *iface
|
||||
IXACTWaveBank **ppWaveBank)
|
||||
{
|
||||
XACTEngineImpl *This = impl_from_IXACTEngine(iface);
|
||||
- FIXME("(%p)->(%p, %p): stub!\n", This, pParms, ppWaveBank);
|
||||
- return E_NOTIMPL;
|
||||
+ FACTStreamingParameters fakeParms;
|
||||
+ wrap_readfile_struct *fake;
|
||||
+ XACTWaveBankImpl *wb;
|
||||
+ FACTWaveBank *fwb;
|
||||
+ UINT ret;
|
||||
+
|
||||
+ TRACE("(%p)->(%p, %p)\n", This, pParms, ppWaveBank);
|
||||
+
|
||||
+ /* We have to wrap the file to fix up the callbacks! */
|
||||
+ fake = (wrap_readfile_struct*) CoTaskMemAlloc(
|
||||
+ sizeof(wrap_readfile_struct));
|
||||
+ fake->engine = This;
|
||||
+ fake->file = pParms->file;
|
||||
+ fakeParms.file = fake;
|
||||
+ fakeParms.flags = pParms->flags;
|
||||
+ fakeParms.offset = pParms->offset;
|
||||
+ fakeParms.packetSize = pParms->packetSize;
|
||||
+
|
||||
+ ret = FACTAudioEngine_CreateStreamingWaveBank(This->fact_engine, &fakeParms,
|
||||
+ &fwb);
|
||||
+ if(ret != 0)
|
||||
+ {
|
||||
+ ERR("Failed to CreateWaveBank: %d\n", ret);
|
||||
+ return E_FAIL;
|
||||
+ }
|
||||
+
|
||||
+ wb = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*wb));
|
||||
+ if (!wb)
|
||||
+ {
|
||||
+ FACTWaveBank_Destroy(fwb);
|
||||
+ ERR("Failed to allocate XACT3WaveBankImpl!");
|
||||
+ return E_OUTOFMEMORY;
|
||||
+ }
|
||||
+
|
||||
+ wb->IXACTWaveBank_iface.lpVtbl = &XACTWaveBank_Vtbl;
|
||||
+ wb->fact_wavebank = fwb;
|
||||
+ *ppWaveBank = &wb->IXACTWaveBank_iface;
|
||||
+
|
||||
+ TRACE("Created streaming WaveBank: %p\n", wb);
|
||||
+
|
||||
+ return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IXACTEngineImpl_PrepareInMemoryWave(IXACTEngine *iface,
|
||||
--
|
||||
2.28.0
|
||||
|
@ -1,186 +0,0 @@
|
||||
From 920705457c0ab3e3e4bbe08193b5fef3dfaf92ab Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 17:20:37 +0200
|
||||
Subject: [PATCH 09/23] xactengine2_10: Implement IXACTWave interface.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
dlls/xactengine2_10/xact2_dll.c | 147 +++++++++++++++++++++++++++++++-
|
||||
1 file changed, 144 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/dlls/xactengine2_10/xact2_dll.c b/dlls/xactengine2_10/xact2_dll.c
|
||||
index ec7a97dd5f8..793cfc62afb 100644
|
||||
--- a/dlls/xactengine2_10/xact2_dll.c
|
||||
+++ b/dlls/xactengine2_10/xact2_dll.c
|
||||
@@ -335,6 +335,120 @@ static const IXACTSoundBankVtbl XACTSoundBank_Vtbl =
|
||||
IXACTSoundBankImpl_GetState
|
||||
};
|
||||
|
||||
+typedef struct _XACTWaveImpl {
|
||||
+ IXACTWave IXACTWave_iface;
|
||||
+
|
||||
+ FACTWave *fact_wave;
|
||||
+} XACTWaveImpl;
|
||||
+
|
||||
+static inline XACTWaveImpl *impl_from_IXACTWave(IXACTWave *iface)
|
||||
+{
|
||||
+ return CONTAINING_RECORD(iface, XACTWaveImpl, IXACTWave_iface);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveImpl_Destroy(IXACTWave *iface)
|
||||
+{
|
||||
+ XACTWaveImpl *This = impl_from_IXACTWave(iface);
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ TRACE("(%p)\n", This);
|
||||
+
|
||||
+ hr = FACTWave_Destroy(This->fact_wave);
|
||||
+ HeapFree(GetProcessHeap(), 0, This);
|
||||
+ return hr;
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveImpl_Play(IXACTWave *iface)
|
||||
+{
|
||||
+ XACTWaveImpl *This = impl_from_IXACTWave(iface);
|
||||
+
|
||||
+ TRACE("(%p)\n", This);
|
||||
+
|
||||
+ return FACTWave_Play(This->fact_wave);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveImpl_Stop(IXACTWave *iface, DWORD dwFlags)
|
||||
+{
|
||||
+ XACTWaveImpl *This = impl_from_IXACTWave(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(0x%x)\n", This, dwFlags);
|
||||
+
|
||||
+ return FACTWave_Stop(This->fact_wave, dwFlags);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveImpl_Pause(IXACTWave *iface, BOOL fPause)
|
||||
+{
|
||||
+ XACTWaveImpl *This = impl_from_IXACTWave(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%u)\n", This, fPause);
|
||||
+
|
||||
+ return FACTWave_Pause(This->fact_wave, fPause);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveImpl_GetState(IXACTWave *iface, DWORD *pdwState)
|
||||
+{
|
||||
+ XACTWaveImpl *This = impl_from_IXACTWave(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p)\n", This, pdwState);
|
||||
+
|
||||
+ return FACTWave_GetState(This->fact_wave, pdwState);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveImpl_SetPitch(IXACTWave *iface, XACTPITCH pitch)
|
||||
+{
|
||||
+ XACTWaveImpl *This = impl_from_IXACTWave(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%d)\n", This, pitch);
|
||||
+
|
||||
+ return FACTWave_SetPitch(This->fact_wave, pitch);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveImpl_SetVolume(IXACTWave *iface, XACTVOLUME volume)
|
||||
+{
|
||||
+ XACTWaveImpl *This = impl_from_IXACTWave(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%f)\n", This, volume);
|
||||
+
|
||||
+ return FACTWave_SetVolume(This->fact_wave, volume);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveImpl_SetMatrixCoefficients(IXACTWave *iface,
|
||||
+ UINT32 uSrcChannelCount, UINT32 uDstChannelCount,
|
||||
+ float *pMatrixCoefficients)
|
||||
+{
|
||||
+ XACTWaveImpl *This = impl_from_IXACTWave(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%u, %u, %p)\n", This, uSrcChannelCount, uDstChannelCount,
|
||||
+ pMatrixCoefficients);
|
||||
+
|
||||
+ return FACTWave_SetMatrixCoefficients(This->fact_wave, uSrcChannelCount,
|
||||
+ uDstChannelCount, pMatrixCoefficients);
|
||||
+}
|
||||
+
|
||||
+static HRESULT WINAPI IXACTWaveImpl_GetProperties(IXACTWave *iface,
|
||||
+ XACT_WAVE_INSTANCE_PROPERTIES *pProperties)
|
||||
+{
|
||||
+ XACTWaveImpl *This = impl_from_IXACTWave(iface);
|
||||
+
|
||||
+ TRACE("(%p)->(%p)\n", This, pProperties);
|
||||
+
|
||||
+ return FACTWave_GetProperties(This->fact_wave,
|
||||
+ (FACTWaveInstanceProperties*) pProperties);
|
||||
+}
|
||||
+
|
||||
+static const IXACTWaveVtbl XACTWave_Vtbl =
|
||||
+{
|
||||
+ IXACTWaveImpl_Destroy,
|
||||
+ IXACTWaveImpl_Play,
|
||||
+ IXACTWaveImpl_Stop,
|
||||
+ IXACTWaveImpl_Pause,
|
||||
+ IXACTWaveImpl_GetState,
|
||||
+ IXACTWaveImpl_SetPitch,
|
||||
+ IXACTWaveImpl_SetVolume,
|
||||
+ IXACTWaveImpl_SetMatrixCoefficients,
|
||||
+ IXACTWaveImpl_GetProperties
|
||||
+};
|
||||
+
|
||||
typedef struct _XACTWaveBankImpl {
|
||||
IXACTWaveBank IXACTWaveBank_iface;
|
||||
|
||||
@@ -394,9 +508,36 @@ static HRESULT WINAPI IXACTWaveBankImpl_Prepare(IXACTWaveBank *iface,
|
||||
XACTLOOPCOUNT nLoopCount, IXACTWave** ppWave)
|
||||
{
|
||||
XACTWaveBankImpl *This = impl_from_IXACTWaveBank(iface);
|
||||
- FIXME("(%p)->(0x%x, %u, 0x%x, %u, %p): stub!\n", This, nWaveIndex, dwFlags,
|
||||
+ XACTWaveImpl *wave;
|
||||
+ FACTWave *fwave;
|
||||
+ UINT ret;
|
||||
+
|
||||
+ TRACE("(%p)->(0x%x, %u, 0x%x, %u, %p)\n", This, nWaveIndex, dwFlags,
|
||||
dwPlayOffset, nLoopCount, ppWave);
|
||||
- return E_NOTIMPL;
|
||||
+
|
||||
+ ret = FACTWaveBank_Prepare(This->fact_wavebank, nWaveIndex, dwFlags,
|
||||
+ dwPlayOffset, nLoopCount, &fwave);
|
||||
+ if(ret != 0)
|
||||
+ {
|
||||
+ ERR("Failed to CreateWave: %d\n", ret);
|
||||
+ return E_FAIL;
|
||||
+ }
|
||||
+
|
||||
+ wave = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*wave));
|
||||
+ if (!wave)
|
||||
+ {
|
||||
+ FACTWave_Destroy(fwave);
|
||||
+ ERR("Failed to allocate XACTWaveImpl!");
|
||||
+ return E_OUTOFMEMORY;
|
||||
+ }
|
||||
+
|
||||
+ wave->IXACTWave_iface.lpVtbl = &XACTWave_Vtbl;
|
||||
+ wave->fact_wave = fwave;
|
||||
+ *ppWave = &wave->IXACTWave_iface;
|
||||
+
|
||||
+ TRACE("Created Wave: %p\n", wave);
|
||||
+
|
||||
+ return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IXACTWaveBankImpl_Play(IXACTWaveBank *iface,
|
||||
@@ -747,7 +888,7 @@ static HRESULT WINAPI IXACTEngineImpl_CreateStreamingWaveBank(IXACTEngine *iface
|
||||
if (!wb)
|
||||
{
|
||||
FACTWaveBank_Destroy(fwb);
|
||||
- ERR("Failed to allocate XACT3WaveBankImpl!");
|
||||
+ ERR("Failed to allocate XACTWaveBankImpl!");
|
||||
return E_OUTOFMEMORY;
|
||||
}
|
||||
|
||||
--
|
||||
2.28.0
|
||||
|
@ -1,65 +0,0 @@
|
||||
From 4b7491ba661e9e787926feebf461412bf31f3aa4 Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 17:28:01 +0200
|
||||
Subject: [PATCH 10/23] xactengine2_10: Implement IXACTSoundBank::Play
|
||||
function.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
dlls/xactengine2_10/xact2_dll.c | 39 +++++++++++++++++++++++++++++++--
|
||||
1 file changed, 37 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/xactengine2_10/xact2_dll.c b/dlls/xactengine2_10/xact2_dll.c
|
||||
index 793cfc62afb..7bb8134fd81 100644
|
||||
--- a/dlls/xactengine2_10/xact2_dll.c
|
||||
+++ b/dlls/xactengine2_10/xact2_dll.c
|
||||
@@ -286,9 +286,44 @@ static HRESULT WINAPI IXACTSoundBankImpl_Play(IXACTSoundBank *iface,
|
||||
IXACTCue** ppCue)
|
||||
{
|
||||
XACTSoundBankImpl *This = impl_from_IXACTSoundBank(iface);
|
||||
- FIXME("(%p)->(%u, 0x%x, %u, %p): stub!\n", This, nCueIndex, dwFlags, timeOffset,
|
||||
+ XACTCueImpl *cue;
|
||||
+ FACTCue *fcue;
|
||||
+ UINT ret;
|
||||
+
|
||||
+ TRACE("(%p)->(%u, 0x%x, %u, %p)\n", This, nCueIndex, dwFlags, timeOffset,
|
||||
ppCue);
|
||||
- return E_NOTIMPL;
|
||||
+
|
||||
+ /* If the application doesn't want a handle, don't generate one at all.
|
||||
+ * Let the engine handle that memory instead.
|
||||
+ * -flibit
|
||||
+ */
|
||||
+ if (ppCue == NULL){
|
||||
+ ret = FACTSoundBank_Play(This->fact_soundbank, nCueIndex, dwFlags,
|
||||
+ timeOffset, NULL);
|
||||
+ }else{
|
||||
+ ret = FACTSoundBank_Play(This->fact_soundbank, nCueIndex, dwFlags,
|
||||
+ timeOffset, &fcue);
|
||||
+ if(ret != 0)
|
||||
+ goto done;
|
||||
+
|
||||
+ cue = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*cue));
|
||||
+ if (!cue)
|
||||
+ {
|
||||
+ FACTCue_Destroy(fcue);
|
||||
+ ERR("Failed to allocate XACTCueImpl!");
|
||||
+ return E_OUTOFMEMORY;
|
||||
+ }
|
||||
+
|
||||
+ cue->IXACTCue_iface.lpVtbl = &XACTCue_Vtbl;
|
||||
+ cue->fact_cue = fcue;
|
||||
+ *ppCue = &cue->IXACTCue_iface;
|
||||
+ }
|
||||
+
|
||||
+done:
|
||||
+ if(ret != 0)
|
||||
+ WARN("FACTSoundBank_Play returned %d\n", ret);
|
||||
+
|
||||
+ return !ret ? S_OK : E_FAIL;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IXACTSoundBankImpl_Stop(IXACTSoundBank *iface,
|
||||
--
|
||||
2.28.0
|
||||
|
@ -1,60 +0,0 @@
|
||||
From 5df655b72d55c2c4071fd7b84d2705f922bcc1a8 Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 17:31:59 +0200
|
||||
Subject: [PATCH 11/23] xactengine2_10: Implement IXACTWaveBank::Play function.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
dlls/xactengine2_10/xact2_dll.c | 35 +++++++++++++++++++++++++++++++--
|
||||
1 file changed, 33 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/xactengine2_10/xact2_dll.c b/dlls/xactengine2_10/xact2_dll.c
|
||||
index 7bb8134fd81..2e06341b5e9 100644
|
||||
--- a/dlls/xactengine2_10/xact2_dll.c
|
||||
+++ b/dlls/xactengine2_10/xact2_dll.c
|
||||
@@ -580,9 +580,40 @@ static HRESULT WINAPI IXACTWaveBankImpl_Play(IXACTWaveBank *iface,
|
||||
XACTLOOPCOUNT nLoopCount, IXACTWave** ppWave)
|
||||
{
|
||||
XACTWaveBankImpl *This = impl_from_IXACTWaveBank(iface);
|
||||
- FIXME("(%p)->(0x%x, %u, 0x%x, %u, %p): stub!\n", This, nWaveIndex, dwFlags, dwPlayOffset,
|
||||
+ XACTWaveImpl *wave;
|
||||
+ FACTWave *fwave;
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ TRACE("(%p)->(0x%x, %u, 0x%x, %u, %p)!\n", This, nWaveIndex, dwFlags, dwPlayOffset,
|
||||
nLoopCount, ppWave);
|
||||
- return E_NOTIMPL;
|
||||
+
|
||||
+ /* If the application doesn't want a handle, don't generate one at all.
|
||||
+ * Let the engine handle that memory instead.
|
||||
+ * -flibit
|
||||
+ */
|
||||
+ if (ppWave == NULL){
|
||||
+ hr = FACTWaveBank_Play(This->fact_wavebank, nWaveIndex, dwFlags,
|
||||
+ dwPlayOffset, nLoopCount, NULL);
|
||||
+ }else{
|
||||
+ hr = FACTWaveBank_Play(This->fact_wavebank, nWaveIndex, dwFlags,
|
||||
+ dwPlayOffset, nLoopCount, &fwave);
|
||||
+ if(FAILED(hr))
|
||||
+ return hr;
|
||||
+
|
||||
+ wave = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*wave));
|
||||
+ if (!wave)
|
||||
+ {
|
||||
+ FACTWave_Destroy(fwave);
|
||||
+ ERR("Failed to allocate XACT3WaveImpl!");
|
||||
+ return E_OUTOFMEMORY;
|
||||
+ }
|
||||
+
|
||||
+ wave->IXACTWave_iface.lpVtbl = &XACTWave_Vtbl;
|
||||
+ wave->fact_wave = fwave;
|
||||
+ *ppWave = &wave->IXACTWave_iface;
|
||||
+ }
|
||||
+
|
||||
+ return hr;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IXACTWaveBankImpl_Stop(IXACTWaveBank *iface,
|
||||
--
|
||||
2.28.0
|
||||
|
@ -1,149 +0,0 @@
|
||||
From 7b7912c5dbd542e87ffc2bc78c0388ef8ad6a219 Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 17:39:44 +0200
|
||||
Subject: [PATCH 12/23] xactengine2_10: Implement
|
||||
IXACTEngine::(Un)RegisterNotification function(s).
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
dlls/xactengine2_10/xact2_dll.c | 107 ++++++++++++++++++++++++++++++--
|
||||
1 file changed, 102 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/dlls/xactengine2_10/xact2_dll.c b/dlls/xactengine2_10/xact2_dll.c
|
||||
index 2e06341b5e9..aada1cf53e9 100644
|
||||
--- a/dlls/xactengine2_10/xact2_dll.c
|
||||
+++ b/dlls/xactengine2_10/xact2_dll.c
|
||||
@@ -604,7 +604,7 @@ static HRESULT WINAPI IXACTWaveBankImpl_Play(IXACTWaveBank *iface,
|
||||
if (!wave)
|
||||
{
|
||||
FACTWave_Destroy(fwave);
|
||||
- ERR("Failed to allocate XACT3WaveImpl!");
|
||||
+ ERR("Failed to allocate XACTWaveImpl!");
|
||||
return E_OUTOFMEMORY;
|
||||
}
|
||||
|
||||
@@ -998,20 +998,117 @@ static HRESULT WINAPI IXACTEngineImpl_PrepareWave(IXACTEngine *iface,
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
+enum {
|
||||
+ NOTIFY_SoundBank = 0x01,
|
||||
+ NOTIFY_WaveBank = 0x02,
|
||||
+ NOTIFY_Cue = 0x04,
|
||||
+ NOTIFY_Wave = 0x08,
|
||||
+ NOTIFY_cueIndex = 0x10,
|
||||
+ NOTIFY_waveIndex = 0x20
|
||||
+};
|
||||
+
|
||||
+static inline void unwrap_notificationdesc(FACTNotificationDescription *fd,
|
||||
+ const XACT_NOTIFICATION_DESCRIPTION *xd)
|
||||
+{
|
||||
+ DWORD flags = 0;
|
||||
+
|
||||
+ TRACE("Type %d\n", xd->type);
|
||||
+
|
||||
+ memset(fd, 0, sizeof(*fd));
|
||||
+
|
||||
+ /* Supports SoundBank, Cue index, Cue instance */
|
||||
+ if (xd->type == XACTNOTIFICATIONTYPE_CUEPREPARED || xd->type == XACTNOTIFICATIONTYPE_CUEPLAY ||
|
||||
+ xd->type == XACTNOTIFICATIONTYPE_CUESTOP || xd->type == XACTNOTIFICATIONTYPE_CUEDESTROYED ||
|
||||
+ xd->type == XACTNOTIFICATIONTYPE_MARKER || xd->type == XACTNOTIFICATIONTYPE_LOCALVARIABLECHANGED)
|
||||
+ {
|
||||
+ flags = NOTIFY_SoundBank | NOTIFY_cueIndex | NOTIFY_Cue;
|
||||
+ }
|
||||
+ /* Supports WaveBank */
|
||||
+ else if (xd->type == XACTNOTIFICATIONTYPE_WAVEBANKDESTROYED || xd->type == XACTNOTIFICATIONTYPE_WAVEBANKPREPARED ||
|
||||
+ xd->type == XACTNOTIFICATIONTYPE_WAVEBANKSTREAMING_INVALIDCONTENT)
|
||||
+ {
|
||||
+ flags = NOTIFY_WaveBank;
|
||||
+ }
|
||||
+ /* Supports NOTIFY_SoundBank */
|
||||
+ else if (xd->type == XACTNOTIFICATIONTYPE_SOUNDBANKDESTROYED)
|
||||
+ {
|
||||
+ flags = NOTIFY_SoundBank;
|
||||
+ }
|
||||
+ /* Supports WaveBank, Wave index, Wave instance */
|
||||
+ else if (xd->type == XACTNOTIFICATIONTYPE_WAVEPREPARED || xd->type == XACTNOTIFICATIONTYPE_WAVEDESTROYED)
|
||||
+ {
|
||||
+ flags = NOTIFY_WaveBank | NOTIFY_waveIndex | NOTIFY_Wave;
|
||||
+ }
|
||||
+ /* Supports SoundBank, SoundBank, Cue index, Cue instance, WaveBank, Wave instance */
|
||||
+ else if (xd->type == XACTNOTIFICATIONTYPE_WAVEPLAY || xd->type == XACTNOTIFICATIONTYPE_WAVESTOP ||
|
||||
+ xd->type == XACTNOTIFICATIONTYPE_WAVELOOPED)
|
||||
+ {
|
||||
+ flags = NOTIFY_SoundBank | NOTIFY_cueIndex | NOTIFY_Cue | NOTIFY_WaveBank | NOTIFY_Wave;
|
||||
+ }
|
||||
+
|
||||
+ /* We have to unwrap the FACT object first! */
|
||||
+ fd->type = xd->type;
|
||||
+ fd->flags = xd->flags;
|
||||
+ fd->pvContext = xd->pvContext;
|
||||
+ if (flags & NOTIFY_cueIndex)
|
||||
+ fd->cueIndex = xd->cueIndex;
|
||||
+ if (flags & NOTIFY_waveIndex)
|
||||
+ fd->waveIndex = xd->waveIndex;
|
||||
+
|
||||
+ if (flags & NOTIFY_Cue && xd->pCue != NULL)
|
||||
+ {
|
||||
+ XACTCueImpl *cue = impl_from_IXACTCue(xd->pCue);
|
||||
+ if (cue)
|
||||
+ fd->pCue = cue->fact_cue;
|
||||
+ }
|
||||
+
|
||||
+ if (flags & NOTIFY_SoundBank && xd->pSoundBank != NULL)
|
||||
+ {
|
||||
+ XACTSoundBankImpl *sound = impl_from_IXACTSoundBank(xd->pSoundBank);
|
||||
+ if (sound)
|
||||
+ fd->pSoundBank = sound->fact_soundbank;
|
||||
+ }
|
||||
+
|
||||
+ if (flags & NOTIFY_WaveBank && xd->pWaveBank != NULL)
|
||||
+ {
|
||||
+ XACTWaveBankImpl *bank = impl_from_IXACTWaveBank(xd->pWaveBank);
|
||||
+ if (bank)
|
||||
+ fd->pWaveBank = bank->fact_wavebank;
|
||||
+ }
|
||||
+
|
||||
+ if (flags & NOTIFY_Wave && xd->pWave != NULL)
|
||||
+ {
|
||||
+ XACTWaveImpl *wave = impl_from_IXACTWave(xd->pWave);
|
||||
+ if (wave)
|
||||
+ fd->pWave = wave->fact_wave;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
static HRESULT WINAPI IXACTEngineImpl_RegisterNotification(IXACTEngine *iface,
|
||||
const XACT_NOTIFICATION_DESCRIPTION *pNotificationDesc)
|
||||
{
|
||||
XACTEngineImpl *This = impl_from_IXACTEngine(iface);
|
||||
- FIXME("(%p)->(%p): stub!\n", This, pNotificationDesc);
|
||||
- return E_NOTIMPL;
|
||||
+ FACTNotificationDescription fdesc;
|
||||
+
|
||||
+ TRACE("(%p)->(%p)\n", This, pNotificationDesc);
|
||||
+
|
||||
+ unwrap_notificationdesc(&fdesc, pNotificationDesc);
|
||||
+ fdesc.pvContext = This;
|
||||
+ return FACTAudioEngine_RegisterNotification(This->fact_engine, &fdesc);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IXACTEngineImpl_UnRegisterNotification(IXACTEngine *iface,
|
||||
const XACT_NOTIFICATION_DESCRIPTION *pNotificationDesc)
|
||||
{
|
||||
XACTEngineImpl *This = impl_from_IXACTEngine(iface);
|
||||
- FIXME("(%p)->(%p): stub!\n", This, pNotificationDesc);
|
||||
- return E_NOTIMPL;
|
||||
+ FACTNotificationDescription fdesc;
|
||||
+
|
||||
+ TRACE("(%p)->(%p)\n", This, pNotificationDesc);
|
||||
+
|
||||
+ unwrap_notificationdesc(&fdesc, pNotificationDesc);
|
||||
+ fdesc.pvContext = This;
|
||||
+ return FACTAudioEngine_UnRegisterNotification(This->fact_engine, &fdesc);
|
||||
+
|
||||
}
|
||||
|
||||
static XACTCATEGORY WINAPI IXACTEngineImpl_GetCategory(IXACTEngine *iface,
|
||||
--
|
||||
2.28.0
|
||||
|
@ -1,80 +0,0 @@
|
||||
From 71d01ed40a2165b55f1df91971ed9a929fbad1c7 Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 18:00:15 +0200
|
||||
Subject: [PATCH 13/23] xactengine2_9: New Dll.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
configure.ac | 2 ++
|
||||
dlls/xactengine2_10/xact2_classes.idl | 4 ++++
|
||||
dlls/xactengine2_9/Makefile.in | 11 +++++++++++
|
||||
dlls/xactengine2_9/xactengine2_9.spec | 4 ++++
|
||||
4 files changed, 21 insertions(+)
|
||||
create mode 100644 dlls/xactengine2_9/Makefile.in
|
||||
create mode 100644 dlls/xactengine2_9/xactengine2_9.spec
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index bcbeb230ed2..348a1ea38c0 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1987,6 +1987,7 @@ then
|
||||
enable_x3daudio1_6=${enable_x3daudio1_6:-no}
|
||||
enable_x3daudio1_7=${enable_x3daudio1_7:-no}
|
||||
enable_xactengine2_10=${enable_xactengine2_10:-no}
|
||||
+ enable_xactengine2_9=${enable_xactengine2_9:-no}
|
||||
enable_xactengine3_0=${enable_xactengine3_0:-no}
|
||||
enable_xactengine3_1=${enable_xactengine3_1:-no}
|
||||
enable_xactengine3_2=${enable_xactengine3_2:-no}
|
||||
@@ -3985,6 +3986,7 @@ WINE_CONFIG_MAKEFILE(dlls/x3daudio1_5)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_6)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_7)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_10)
|
||||
+WINE_CONFIG_MAKEFILE(dlls/xactengine2_9)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine3_0)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine3_1)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine3_2)
|
||||
diff --git a/dlls/xactengine2_10/xact2_classes.idl b/dlls/xactengine2_10/xact2_classes.idl
|
||||
index 1a248327bb7..83926c92a0e 100644
|
||||
--- a/dlls/xactengine2_10/xact2_classes.idl
|
||||
+++ b/dlls/xactengine2_10/xact2_classes.idl
|
||||
@@ -22,6 +22,10 @@
|
||||
|
||||
[
|
||||
threading(both),
|
||||
+#if XACT3_VER == 0x0209
|
||||
+ uuid(343e68e6-8f82-4a8d-a2da-6e9a944b378c)
|
||||
+#else /* XACT3_VER == 0x0209 or not defined */
|
||||
uuid(65d822a4-4799-42c6-9b18-d26cf66dd320)
|
||||
+#endif
|
||||
]
|
||||
coclass XACTEngine {}
|
||||
diff --git a/dlls/xactengine2_9/Makefile.in b/dlls/xactengine2_9/Makefile.in
|
||||
new file mode 100644
|
||||
index 00000000000..c2351aa4f4c
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_9/Makefile.in
|
||||
@@ -0,0 +1,11 @@
|
||||
+MODULE = xactengine2_9.dll
|
||||
+IMPORTS = ole32 uuid
|
||||
+EXTRADEFS = -DXACT3_VER=0x0209
|
||||
+PARENTSRC = ../xactengine2_10
|
||||
+EXTRALIBS = $(FAUDIO_LIBS)
|
||||
+EXTRAINCL = $(FAUDIO_CFLAGS)
|
||||
+
|
||||
+C_SRCS = \
|
||||
+ xact2_dll.c
|
||||
+
|
||||
+IDL_SRCS = xact2_classes.idl
|
||||
diff --git a/dlls/xactengine2_9/xactengine2_9.spec b/dlls/xactengine2_9/xactengine2_9.spec
|
||||
new file mode 100644
|
||||
index 00000000000..b16365d0c9f
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_9/xactengine2_9.spec
|
||||
@@ -0,0 +1,4 @@
|
||||
+@ stdcall -private DllCanUnloadNow()
|
||||
+@ stdcall -private DllGetClassObject(ptr ptr ptr)
|
||||
+@ stdcall -private DllRegisterServer()
|
||||
+@ stdcall -private DllUnregisterServer()
|
||||
--
|
||||
2.28.0
|
||||
|
@ -1,80 +0,0 @@
|
||||
From e0238ca892f10da17ef6ac6b02bcc3bddc29fd9d Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 18:10:31 +0200
|
||||
Subject: [PATCH 14/23] xactengine2_8: New Dll.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
configure.ac | 2 ++
|
||||
dlls/xactengine2_10/xact2_classes.idl | 4 +++-
|
||||
dlls/xactengine2_8/Makefile.in | 11 +++++++++++
|
||||
dlls/xactengine2_8/xactengine2_8.spec | 4 ++++
|
||||
4 files changed, 20 insertions(+), 1 deletion(-)
|
||||
create mode 100644 dlls/xactengine2_8/Makefile.in
|
||||
create mode 100644 dlls/xactengine2_8/xactengine2_8.spec
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 348a1ea38c0..5a99a6edf23 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1987,6 +1987,7 @@ then
|
||||
enable_x3daudio1_6=${enable_x3daudio1_6:-no}
|
||||
enable_x3daudio1_7=${enable_x3daudio1_7:-no}
|
||||
enable_xactengine2_10=${enable_xactengine2_10:-no}
|
||||
+ enable_xactengine2_8=${enable_xactengine2_8:-no}
|
||||
enable_xactengine2_9=${enable_xactengine2_9:-no}
|
||||
enable_xactengine3_0=${enable_xactengine3_0:-no}
|
||||
enable_xactengine3_1=${enable_xactengine3_1:-no}
|
||||
@@ -3986,6 +3987,7 @@ WINE_CONFIG_MAKEFILE(dlls/x3daudio1_5)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_6)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_7)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_10)
|
||||
+WINE_CONFIG_MAKEFILE(dlls/xactengine2_8)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_9)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine3_0)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine3_1)
|
||||
diff --git a/dlls/xactengine2_10/xact2_classes.idl b/dlls/xactengine2_10/xact2_classes.idl
|
||||
index 83926c92a0e..6a228c82db6 100644
|
||||
--- a/dlls/xactengine2_10/xact2_classes.idl
|
||||
+++ b/dlls/xactengine2_10/xact2_classes.idl
|
||||
@@ -22,7 +22,9 @@
|
||||
|
||||
[
|
||||
threading(both),
|
||||
-#if XACT3_VER == 0x0209
|
||||
+#if XACT3_VER == 0x0208
|
||||
+ uuid(77c56bf4-18a1-42b0-88af-5072ce814949)
|
||||
+#elif XACT3_VER == 0x0209
|
||||
uuid(343e68e6-8f82-4a8d-a2da-6e9a944b378c)
|
||||
#else /* XACT3_VER == 0x0209 or not defined */
|
||||
uuid(65d822a4-4799-42c6-9b18-d26cf66dd320)
|
||||
diff --git a/dlls/xactengine2_8/Makefile.in b/dlls/xactengine2_8/Makefile.in
|
||||
new file mode 100644
|
||||
index 00000000000..b88b39ce1ea
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_8/Makefile.in
|
||||
@@ -0,0 +1,11 @@
|
||||
+MODULE = xactengine2_8.dll
|
||||
+IMPORTS = ole32 uuid
|
||||
+EXTRADEFS = -DXACT3_VER=0x0208
|
||||
+PARENTSRC = ../xactengine2_10
|
||||
+EXTRALIBS = $(FAUDIO_LIBS)
|
||||
+EXTRAINCL = $(FAUDIO_CFLAGS)
|
||||
+
|
||||
+C_SRCS = \
|
||||
+ xact2_dll.c
|
||||
+
|
||||
+IDL_SRCS = xact2_classes.idl
|
||||
diff --git a/dlls/xactengine2_8/xactengine2_8.spec b/dlls/xactengine2_8/xactengine2_8.spec
|
||||
new file mode 100644
|
||||
index 00000000000..b16365d0c9f
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_8/xactengine2_8.spec
|
||||
@@ -0,0 +1,4 @@
|
||||
+@ stdcall -private DllCanUnloadNow()
|
||||
+@ stdcall -private DllGetClassObject(ptr ptr ptr)
|
||||
+@ stdcall -private DllRegisterServer()
|
||||
+@ stdcall -private DllUnregisterServer()
|
||||
--
|
||||
2.28.0
|
||||
|
@ -1,80 +0,0 @@
|
||||
From 413a72c90f723cf6481ca2913ad3be1dea4c71ce Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 18:47:07 +0200
|
||||
Subject: [PATCH 15/23] xactengine2_7: New Dll.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
configure.ac | 2 ++
|
||||
dlls/xactengine2_10/xact2_classes.idl | 4 +++-
|
||||
dlls/xactengine2_7/Makefile.in | 11 +++++++++++
|
||||
dlls/xactengine2_7/xactengine2_7.spec | 4 ++++
|
||||
4 files changed, 20 insertions(+), 1 deletion(-)
|
||||
create mode 100644 dlls/xactengine2_7/Makefile.in
|
||||
create mode 100644 dlls/xactengine2_7/xactengine2_7.spec
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 5a99a6edf23..947fbb172cd 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1987,6 +1987,7 @@ then
|
||||
enable_x3daudio1_6=${enable_x3daudio1_6:-no}
|
||||
enable_x3daudio1_7=${enable_x3daudio1_7:-no}
|
||||
enable_xactengine2_10=${enable_xactengine2_10:-no}
|
||||
+ enable_xactengine2_7=${enable_xactengine2_7:-no}
|
||||
enable_xactengine2_8=${enable_xactengine2_8:-no}
|
||||
enable_xactengine2_9=${enable_xactengine2_9:-no}
|
||||
enable_xactengine3_0=${enable_xactengine3_0:-no}
|
||||
@@ -3987,6 +3988,7 @@ WINE_CONFIG_MAKEFILE(dlls/x3daudio1_5)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_6)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_7)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_10)
|
||||
+WINE_CONFIG_MAKEFILE(dlls/xactengine2_7)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_8)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_9)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine3_0)
|
||||
diff --git a/dlls/xactengine2_10/xact2_classes.idl b/dlls/xactengine2_10/xact2_classes.idl
|
||||
index 6a228c82db6..8cb332d109a 100644
|
||||
--- a/dlls/xactengine2_10/xact2_classes.idl
|
||||
+++ b/dlls/xactengine2_10/xact2_classes.idl
|
||||
@@ -22,7 +22,9 @@
|
||||
|
||||
[
|
||||
threading(both),
|
||||
-#if XACT3_VER == 0x0208
|
||||
+#if XACT3_VER == 0x0207
|
||||
+ uuid(cd0d66ec-8057-43f5-acbd-66dfb36fd78c)
|
||||
+#elif XACT3_VER == 0x0208
|
||||
uuid(77c56bf4-18a1-42b0-88af-5072ce814949)
|
||||
#elif XACT3_VER == 0x0209
|
||||
uuid(343e68e6-8f82-4a8d-a2da-6e9a944b378c)
|
||||
diff --git a/dlls/xactengine2_7/Makefile.in b/dlls/xactengine2_7/Makefile.in
|
||||
new file mode 100644
|
||||
index 00000000000..d2253a49590
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_7/Makefile.in
|
||||
@@ -0,0 +1,11 @@
|
||||
+MODULE = xactengine2_7.dll
|
||||
+IMPORTS = ole32 uuid
|
||||
+EXTRADEFS = -DXACT3_VER=0x0207
|
||||
+PARENTSRC = ../xactengine2_10
|
||||
+EXTRALIBS = $(FAUDIO_LIBS)
|
||||
+EXTRAINCL = $(FAUDIO_CFLAGS)
|
||||
+
|
||||
+C_SRCS = \
|
||||
+ xact2_dll.c
|
||||
+
|
||||
+IDL_SRCS = xact2_classes.idl
|
||||
diff --git a/dlls/xactengine2_7/xactengine2_7.spec b/dlls/xactengine2_7/xactengine2_7.spec
|
||||
new file mode 100644
|
||||
index 00000000000..b16365d0c9f
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_7/xactengine2_7.spec
|
||||
@@ -0,0 +1,4 @@
|
||||
+@ stdcall -private DllCanUnloadNow()
|
||||
+@ stdcall -private DllGetClassObject(ptr ptr ptr)
|
||||
+@ stdcall -private DllRegisterServer()
|
||||
+@ stdcall -private DllUnregisterServer()
|
||||
--
|
||||
2.28.0
|
||||
|
@ -1,80 +0,0 @@
|
||||
From af5093be0c67e98e0ef7ca3ddd91d75c4bda4d15 Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 18:52:57 +0200
|
||||
Subject: [PATCH 16/23] xactengine2_6: New Dll.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
configure.ac | 2 ++
|
||||
dlls/xactengine2_10/xact2_classes.idl | 4 +++-
|
||||
dlls/xactengine2_6/Makefile.in | 11 +++++++++++
|
||||
dlls/xactengine2_6/xactengine2_6.spec | 4 ++++
|
||||
4 files changed, 20 insertions(+), 1 deletion(-)
|
||||
create mode 100644 dlls/xactengine2_6/Makefile.in
|
||||
create mode 100644 dlls/xactengine2_6/xactengine2_6.spec
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 947fbb172cd..dd31238b745 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1987,6 +1987,7 @@ then
|
||||
enable_x3daudio1_6=${enable_x3daudio1_6:-no}
|
||||
enable_x3daudio1_7=${enable_x3daudio1_7:-no}
|
||||
enable_xactengine2_10=${enable_xactengine2_10:-no}
|
||||
+ enable_xactengine2_6=${enable_xactengine2_6:-no}
|
||||
enable_xactengine2_7=${enable_xactengine2_7:-no}
|
||||
enable_xactengine2_8=${enable_xactengine2_8:-no}
|
||||
enable_xactengine2_9=${enable_xactengine2_9:-no}
|
||||
@@ -3988,6 +3989,7 @@ WINE_CONFIG_MAKEFILE(dlls/x3daudio1_5)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_6)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_7)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_10)
|
||||
+WINE_CONFIG_MAKEFILE(dlls/xactengine2_6)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_7)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_8)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_9)
|
||||
diff --git a/dlls/xactengine2_10/xact2_classes.idl b/dlls/xactengine2_10/xact2_classes.idl
|
||||
index 8cb332d109a..a9208c0139c 100644
|
||||
--- a/dlls/xactengine2_10/xact2_classes.idl
|
||||
+++ b/dlls/xactengine2_10/xact2_classes.idl
|
||||
@@ -22,7 +22,9 @@
|
||||
|
||||
[
|
||||
threading(both),
|
||||
-#if XACT3_VER == 0x0207
|
||||
+#if XACT3_VER == 0x0206
|
||||
+ uuid(3a2495ce-31d0-435b-8ccf-e9f0843fd960)
|
||||
+#elif XACT3_VER == 0x0207
|
||||
uuid(cd0d66ec-8057-43f5-acbd-66dfb36fd78c)
|
||||
#elif XACT3_VER == 0x0208
|
||||
uuid(77c56bf4-18a1-42b0-88af-5072ce814949)
|
||||
diff --git a/dlls/xactengine2_6/Makefile.in b/dlls/xactengine2_6/Makefile.in
|
||||
new file mode 100644
|
||||
index 00000000000..bfac72a3434
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_6/Makefile.in
|
||||
@@ -0,0 +1,11 @@
|
||||
+MODULE = xactengine2_6.dll
|
||||
+IMPORTS = ole32 uuid
|
||||
+EXTRADEFS = -DXACT3_VER=0x0206
|
||||
+PARENTSRC = ../xactengine2_10
|
||||
+EXTRALIBS = $(FAUDIO_LIBS)
|
||||
+EXTRAINCL = $(FAUDIO_CFLAGS)
|
||||
+
|
||||
+C_SRCS = \
|
||||
+ xact2_dll.c
|
||||
+
|
||||
+IDL_SRCS = xact2_classes.idl
|
||||
diff --git a/dlls/xactengine2_6/xactengine2_6.spec b/dlls/xactengine2_6/xactengine2_6.spec
|
||||
new file mode 100644
|
||||
index 00000000000..b16365d0c9f
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_6/xactengine2_6.spec
|
||||
@@ -0,0 +1,4 @@
|
||||
+@ stdcall -private DllCanUnloadNow()
|
||||
+@ stdcall -private DllGetClassObject(ptr ptr ptr)
|
||||
+@ stdcall -private DllRegisterServer()
|
||||
+@ stdcall -private DllUnregisterServer()
|
||||
--
|
||||
2.28.0
|
||||
|
@ -1,80 +0,0 @@
|
||||
From 81e8492948bb95e295e461011f0fc7e7c0382481 Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 18:56:11 +0200
|
||||
Subject: [PATCH 17/23] xactengine2_5: New Dll.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
configure.ac | 2 ++
|
||||
dlls/xactengine2_10/xact2_classes.idl | 4 +++-
|
||||
dlls/xactengine2_5/Makefile.in | 11 +++++++++++
|
||||
dlls/xactengine2_5/xactengine2_5.spec | 4 ++++
|
||||
4 files changed, 20 insertions(+), 1 deletion(-)
|
||||
create mode 100644 dlls/xactengine2_5/Makefile.in
|
||||
create mode 100644 dlls/xactengine2_5/xactengine2_5.spec
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index dd31238b745..5e2abdb0163 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1987,6 +1987,7 @@ then
|
||||
enable_x3daudio1_6=${enable_x3daudio1_6:-no}
|
||||
enable_x3daudio1_7=${enable_x3daudio1_7:-no}
|
||||
enable_xactengine2_10=${enable_xactengine2_10:-no}
|
||||
+ enable_xactengine2_5=${enable_xactengine2_5:-no}
|
||||
enable_xactengine2_6=${enable_xactengine2_6:-no}
|
||||
enable_xactengine2_7=${enable_xactengine2_7:-no}
|
||||
enable_xactengine2_8=${enable_xactengine2_8:-no}
|
||||
@@ -3989,6 +3990,7 @@ WINE_CONFIG_MAKEFILE(dlls/x3daudio1_5)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_6)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_7)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_10)
|
||||
+WINE_CONFIG_MAKEFILE(dlls/xactengine2_5)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_6)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_7)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_8)
|
||||
diff --git a/dlls/xactengine2_10/xact2_classes.idl b/dlls/xactengine2_10/xact2_classes.idl
|
||||
index a9208c0139c..6801c854031 100644
|
||||
--- a/dlls/xactengine2_10/xact2_classes.idl
|
||||
+++ b/dlls/xactengine2_10/xact2_classes.idl
|
||||
@@ -22,7 +22,9 @@
|
||||
|
||||
[
|
||||
threading(both),
|
||||
-#if XACT3_VER == 0x0206
|
||||
+#if XACT3_VER == 0x0205
|
||||
+ uuid(54b68bc7-3a45-416b-a8c9-19bf19ec1df5)
|
||||
+#elif XACT3_VER == 0x0206
|
||||
uuid(3a2495ce-31d0-435b-8ccf-e9f0843fd960)
|
||||
#elif XACT3_VER == 0x0207
|
||||
uuid(cd0d66ec-8057-43f5-acbd-66dfb36fd78c)
|
||||
diff --git a/dlls/xactengine2_5/Makefile.in b/dlls/xactengine2_5/Makefile.in
|
||||
new file mode 100644
|
||||
index 00000000000..0049d30039d
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_5/Makefile.in
|
||||
@@ -0,0 +1,11 @@
|
||||
+MODULE = xactengine2_5.dll
|
||||
+IMPORTS = ole32 uuid
|
||||
+EXTRADEFS = -DXACT3_VER=0x0205
|
||||
+PARENTSRC = ../xactengine2_10
|
||||
+EXTRALIBS = $(FAUDIO_LIBS)
|
||||
+EXTRAINCL = $(FAUDIO_CFLAGS)
|
||||
+
|
||||
+C_SRCS = \
|
||||
+ xact2_dll.c
|
||||
+
|
||||
+IDL_SRCS = xact2_classes.idl
|
||||
diff --git a/dlls/xactengine2_5/xactengine2_5.spec b/dlls/xactengine2_5/xactengine2_5.spec
|
||||
new file mode 100644
|
||||
index 00000000000..b16365d0c9f
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_5/xactengine2_5.spec
|
||||
@@ -0,0 +1,4 @@
|
||||
+@ stdcall -private DllCanUnloadNow()
|
||||
+@ stdcall -private DllGetClassObject(ptr ptr ptr)
|
||||
+@ stdcall -private DllRegisterServer()
|
||||
+@ stdcall -private DllUnregisterServer()
|
||||
--
|
||||
2.28.0
|
||||
|
@ -1,241 +0,0 @@
|
||||
From 27775b21b4bc2b68e75cb9f3e631b10d2621baff Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 20:11:52 +0200
|
||||
Subject: [PATCH 18/23] xactengine2_4: New Dll.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
configure.ac | 2 ++
|
||||
dlls/xactengine2_10/xact2_classes.idl | 4 +++-
|
||||
dlls/xactengine2_10/xact2_dll.c | 24 ++++++++++++++++++++++++
|
||||
dlls/xactengine2_4/Makefile.in | 11 +++++++++++
|
||||
dlls/xactengine2_4/xactengine2_4.spec | 4 ++++
|
||||
5 files changed, 44 insertions(+), 1 deletion(-)
|
||||
create mode 100644 dlls/xactengine2_4/Makefile.in
|
||||
create mode 100644 dlls/xactengine2_4/xactengine2_4.spec
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 5e2abdb0163..789b1d96e72 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1987,6 +1987,7 @@ then
|
||||
enable_x3daudio1_6=${enable_x3daudio1_6:-no}
|
||||
enable_x3daudio1_7=${enable_x3daudio1_7:-no}
|
||||
enable_xactengine2_10=${enable_xactengine2_10:-no}
|
||||
+ enable_xactengine2_4=${enable_xactengine2_4:-no}
|
||||
enable_xactengine2_5=${enable_xactengine2_5:-no}
|
||||
enable_xactengine2_6=${enable_xactengine2_6:-no}
|
||||
enable_xactengine2_7=${enable_xactengine2_7:-no}
|
||||
@@ -3990,6 +3991,7 @@ WINE_CONFIG_MAKEFILE(dlls/x3daudio1_5)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_6)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_7)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_10)
|
||||
+WINE_CONFIG_MAKEFILE(dlls/xactengine2_4)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_5)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_6)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_7)
|
||||
diff --git a/dlls/xactengine2_10/xact2_classes.idl b/dlls/xactengine2_10/xact2_classes.idl
|
||||
index 6801c854031..8728ea5c873 100644
|
||||
--- a/dlls/xactengine2_10/xact2_classes.idl
|
||||
+++ b/dlls/xactengine2_10/xact2_classes.idl
|
||||
@@ -22,7 +22,9 @@
|
||||
|
||||
[
|
||||
threading(both),
|
||||
-#if XACT3_VER == 0x0205
|
||||
+#if XACT3_VER == 0x0204
|
||||
+ uuid(bc3e0fc6-2e0d-4c45-bc61-d9c328319bd8)
|
||||
+#elif XACT3_VER == 0x0205
|
||||
uuid(54b68bc7-3a45-416b-a8c9-19bf19ec1df5)
|
||||
#elif XACT3_VER == 0x0206
|
||||
uuid(3a2495ce-31d0-435b-8ccf-e9f0843fd960)
|
||||
diff --git a/dlls/xactengine2_10/xact2_dll.c b/dlls/xactengine2_10/xact2_dll.c
|
||||
index aada1cf53e9..be83e0d5b96 100644
|
||||
--- a/dlls/xactengine2_10/xact2_dll.c
|
||||
+++ b/dlls/xactengine2_10/xact2_dll.c
|
||||
@@ -167,6 +167,7 @@ static HRESULT WINAPI IXACTCueImpl_Pause(IXACTCue *iface, BOOL fPause)
|
||||
return FACTCue_Pause(This->fact_cue, fPause);
|
||||
}
|
||||
|
||||
+#if XACT3_VER >= 0x0205
|
||||
static HRESULT WINAPI IXACTCueImpl_GetProperties(IXACTCue *iface,
|
||||
XACT_CUE_INSTANCE_PROPERTIES **ppProperties)
|
||||
{
|
||||
@@ -183,6 +184,7 @@ static HRESULT WINAPI IXACTCueImpl_GetProperties(IXACTCue *iface,
|
||||
*ppProperties = (XACT_CUE_INSTANCE_PROPERTIES*) fProps;
|
||||
return hr;
|
||||
}
|
||||
+#endif
|
||||
|
||||
static const IXACTCueVtbl XACTCue_Vtbl =
|
||||
{
|
||||
@@ -198,8 +200,12 @@ static const IXACTCueVtbl XACTCue_Vtbl =
|
||||
IXACTCueImpl_GetVariableIndex,
|
||||
IXACTCueImpl_SetVariable,
|
||||
IXACTCueImpl_GetVariable,
|
||||
+#if XACT3_VER >= 0x0205
|
||||
IXACTCueImpl_Pause,
|
||||
IXACTCueImpl_GetProperties
|
||||
+#else
|
||||
+ IXACTCueImpl_Pause
|
||||
+#endif
|
||||
};
|
||||
|
||||
typedef struct _XACTSoundBankImpl {
|
||||
@@ -223,6 +229,7 @@ static XACTINDEX WINAPI IXACTSoundBankImpl_GetCueIndex(IXACTSoundBank *iface,
|
||||
return FACTSoundBank_GetCueIndex(This->fact_soundbank, szFriendlyName);
|
||||
}
|
||||
|
||||
+#if XACT3_VER >= 0x0205
|
||||
static HRESULT WINAPI IXACTSoundBankImpl_GetNumCues(IXACTSoundBank *iface,
|
||||
XACTINDEX *pnNumCues)
|
||||
{
|
||||
@@ -243,6 +250,7 @@ static HRESULT WINAPI IXACTSoundBankImpl_GetCueProperties(IXACTSoundBank *iface,
|
||||
return FACTSoundBank_GetCueProperties(This->fact_soundbank, nCueIndex,
|
||||
(FACTCueProperties*) pProperties);
|
||||
}
|
||||
+#endif
|
||||
|
||||
static HRESULT WINAPI IXACTSoundBankImpl_Prepare(IXACTSoundBank *iface,
|
||||
XACTINDEX nCueIndex, DWORD dwFlags, XACTTIME timeOffset,
|
||||
@@ -361,8 +369,10 @@ static HRESULT WINAPI IXACTSoundBankImpl_GetState(IXACTSoundBank *iface,
|
||||
static const IXACTSoundBankVtbl XACTSoundBank_Vtbl =
|
||||
{
|
||||
IXACTSoundBankImpl_GetCueIndex,
|
||||
+#if XACT3_VER >= 0x0205
|
||||
IXACTSoundBankImpl_GetNumCues,
|
||||
IXACTSoundBankImpl_GetCueProperties,
|
||||
+#endif
|
||||
IXACTSoundBankImpl_Prepare,
|
||||
IXACTSoundBankImpl_Play,
|
||||
IXACTSoundBankImpl_Stop,
|
||||
@@ -381,6 +391,7 @@ static inline XACTWaveImpl *impl_from_IXACTWave(IXACTWave *iface)
|
||||
return CONTAINING_RECORD(iface, XACTWaveImpl, IXACTWave_iface);
|
||||
}
|
||||
|
||||
+#if XACT3_VER >= 0x0205
|
||||
static HRESULT WINAPI IXACTWaveImpl_Destroy(IXACTWave *iface)
|
||||
{
|
||||
XACTWaveImpl *This = impl_from_IXACTWave(iface);
|
||||
@@ -483,6 +494,7 @@ static const IXACTWaveVtbl XACTWave_Vtbl =
|
||||
IXACTWaveImpl_SetMatrixCoefficients,
|
||||
IXACTWaveImpl_GetProperties
|
||||
};
|
||||
+#endif
|
||||
|
||||
typedef struct _XACTWaveBankImpl {
|
||||
IXACTWaveBank IXACTWaveBank_iface;
|
||||
@@ -507,6 +519,7 @@ static HRESULT WINAPI IXACTWaveBankImpl_Destroy(IXACTWaveBank *iface)
|
||||
return hr;
|
||||
}
|
||||
|
||||
+#if XACT3_VER >= 0x0205
|
||||
static HRESULT WINAPI IXACTWaveBankImpl_GetNumWaves(IXACTWaveBank *iface,
|
||||
XACTINDEX *pnNumWaves)
|
||||
{
|
||||
@@ -625,6 +638,7 @@ static HRESULT WINAPI IXACTWaveBankImpl_Stop(IXACTWaveBank *iface,
|
||||
|
||||
return FACTWaveBank_Stop(This->fact_wavebank, nWaveIndex, dwFlags);
|
||||
}
|
||||
+#endif
|
||||
|
||||
static HRESULT WINAPI IXACTWaveBankImpl_GetState(IXACTWaveBank *iface,
|
||||
DWORD *pdwState)
|
||||
@@ -639,12 +653,14 @@ static HRESULT WINAPI IXACTWaveBankImpl_GetState(IXACTWaveBank *iface,
|
||||
static const IXACTWaveBankVtbl XACTWaveBank_Vtbl =
|
||||
{
|
||||
IXACTWaveBankImpl_Destroy,
|
||||
+#if XACT3_VER >= 0x0205
|
||||
IXACTWaveBankImpl_GetNumWaves,
|
||||
IXACTWaveBankImpl_GetWaveIndex,
|
||||
IXACTWaveBankImpl_GetWaveProperties,
|
||||
IXACTWaveBankImpl_Prepare,
|
||||
IXACTWaveBankImpl_Play,
|
||||
IXACTWaveBankImpl_Stop,
|
||||
+#endif
|
||||
IXACTWaveBankImpl_GetState
|
||||
};
|
||||
|
||||
@@ -756,6 +772,7 @@ static HRESULT WINAPI IXACTEngineImpl_GetRendererDetails(IXACTEngine *iface,
|
||||
nRendererIndex, (FACTRendererDetails*) pRendererDetails);
|
||||
}
|
||||
|
||||
+#if XACT3_VER >= 0x0205
|
||||
static HRESULT WINAPI IXACTEngineImpl_GetFinalMixFormat(IXACTEngine *iface,
|
||||
WAVEFORMATEXTENSIBLE *pFinalMixFormat)
|
||||
{
|
||||
@@ -766,6 +783,7 @@ static HRESULT WINAPI IXACTEngineImpl_GetFinalMixFormat(IXACTEngine *iface,
|
||||
return FACTAudioEngine_GetFinalMixFormat(This->fact_engine,
|
||||
(FAudioWaveFormatExtensible*) pFinalMixFormat);
|
||||
}
|
||||
+#endif
|
||||
|
||||
static void FACTCALL fact_notification_cb(const FACTNotification *notification)
|
||||
{
|
||||
@@ -967,6 +985,7 @@ static HRESULT WINAPI IXACTEngineImpl_CreateStreamingWaveBank(IXACTEngine *iface
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
+#if XACT3_VER >= 0x0205
|
||||
static HRESULT WINAPI IXACTEngineImpl_PrepareInMemoryWave(IXACTEngine *iface,
|
||||
DWORD dwFlags, WAVEBANKENTRY entry, DWORD *pdwSeekTable,
|
||||
BYTE *pbWaveData, DWORD dwPlayOffset, XACTLOOPCOUNT nLoopCount,
|
||||
@@ -997,6 +1016,7 @@ static HRESULT WINAPI IXACTEngineImpl_PrepareWave(IXACTEngine *iface,
|
||||
FIXME("(%p): stub!\n", This);
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
+#endif
|
||||
|
||||
enum {
|
||||
NOTIFY_SoundBank = 0x01,
|
||||
@@ -1189,16 +1209,20 @@ static const IXACTEngineVtbl XACTEngine_Vtbl =
|
||||
IXACTEngineImpl_Release,
|
||||
IXACTEngineImpl_GetRendererCount,
|
||||
IXACTEngineImpl_GetRendererDetails,
|
||||
+#if XACT3_VER >= 0x0205
|
||||
IXACTEngineImpl_GetFinalMixFormat,
|
||||
+#endif
|
||||
IXACTEngineImpl_Initialize,
|
||||
IXACTEngineImpl_ShutDown,
|
||||
IXACTEngineImpl_DoWork,
|
||||
IXACTEngineImpl_CreateSoundBank,
|
||||
IXACTEngineImpl_CreateInMemoryWaveBank,
|
||||
IXACTEngineImpl_CreateStreamingWaveBank,
|
||||
+#if XACT3_VER >= 0x0205
|
||||
IXACTEngineImpl_PrepareWave,
|
||||
IXACTEngineImpl_PrepareInMemoryWave,
|
||||
IXACTEngineImpl_PrepareStreamingWave,
|
||||
+#endif
|
||||
IXACTEngineImpl_RegisterNotification,
|
||||
IXACTEngineImpl_UnRegisterNotification,
|
||||
IXACTEngineImpl_GetCategory,
|
||||
diff --git a/dlls/xactengine2_4/Makefile.in b/dlls/xactengine2_4/Makefile.in
|
||||
new file mode 100644
|
||||
index 00000000000..ff25486fea5
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_4/Makefile.in
|
||||
@@ -0,0 +1,11 @@
|
||||
+MODULE = xactengine2_4.dll
|
||||
+IMPORTS = ole32 uuid
|
||||
+EXTRADEFS = -DXACT3_VER=0x0204
|
||||
+PARENTSRC = ../xactengine2_10
|
||||
+EXTRALIBS = $(FAUDIO_LIBS)
|
||||
+EXTRAINCL = $(FAUDIO_CFLAGS)
|
||||
+
|
||||
+C_SRCS = \
|
||||
+ xact2_dll.c
|
||||
+
|
||||
+IDL_SRCS = xact2_classes.idl
|
||||
diff --git a/dlls/xactengine2_4/xactengine2_4.spec b/dlls/xactengine2_4/xactengine2_4.spec
|
||||
new file mode 100644
|
||||
index 00000000000..b16365d0c9f
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_4/xactengine2_4.spec
|
||||
@@ -0,0 +1,4 @@
|
||||
+@ stdcall -private DllCanUnloadNow()
|
||||
+@ stdcall -private DllGetClassObject(ptr ptr ptr)
|
||||
+@ stdcall -private DllRegisterServer()
|
||||
+@ stdcall -private DllUnregisterServer()
|
||||
--
|
||||
2.28.0
|
||||
|
@ -1,80 +0,0 @@
|
||||
From 14b0d63034c1fa95d89dc823de6a966aa3a6737d Mon Sep 17 00:00:00 2001
|
||||
From: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
Date: Fri, 18 Sep 2020 20:17:19 +0200
|
||||
Subject: [PATCH 19/23] xactengine2_3: New Dll.
|
||||
|
||||
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
|
||||
---
|
||||
configure.ac | 2 ++
|
||||
dlls/xactengine2_10/xact2_classes.idl | 4 +++-
|
||||
dlls/xactengine2_3/Makefile.in | 11 +++++++++++
|
||||
dlls/xactengine2_3/xactengine2_3.spec | 4 ++++
|
||||
4 files changed, 20 insertions(+), 1 deletion(-)
|
||||
create mode 100644 dlls/xactengine2_3/Makefile.in
|
||||
create mode 100644 dlls/xactengine2_3/xactengine2_3.spec
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 789b1d96e72..561236e4b8d 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1987,6 +1987,7 @@ then
|
||||
enable_x3daudio1_6=${enable_x3daudio1_6:-no}
|
||||
enable_x3daudio1_7=${enable_x3daudio1_7:-no}
|
||||
enable_xactengine2_10=${enable_xactengine2_10:-no}
|
||||
+ enable_xactengine2_3=${enable_xactengine2_3:-no}
|
||||
enable_xactengine2_4=${enable_xactengine2_4:-no}
|
||||
enable_xactengine2_5=${enable_xactengine2_5:-no}
|
||||
enable_xactengine2_6=${enable_xactengine2_6:-no}
|
||||
@@ -3991,6 +3992,7 @@ WINE_CONFIG_MAKEFILE(dlls/x3daudio1_5)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_6)
|
||||
WINE_CONFIG_MAKEFILE(dlls/x3daudio1_7)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_10)
|
||||
+WINE_CONFIG_MAKEFILE(dlls/xactengine2_3)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_4)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_5)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine2_6)
|
||||
diff --git a/dlls/xactengine2_10/xact2_classes.idl b/dlls/xactengine2_10/xact2_classes.idl
|
||||
index 8728ea5c873..3339b1ce1a7 100644
|
||||
--- a/dlls/xactengine2_10/xact2_classes.idl
|
||||
+++ b/dlls/xactengine2_10/xact2_classes.idl
|
||||
@@ -22,7 +22,9 @@
|
||||
|
||||
[
|
||||
threading(both),
|
||||
-#if XACT3_VER == 0x0204
|
||||
+#if XACT3_VER == 0x0203
|
||||
+ uuid(1138472b-d187-44e9-81f2-ae1b0e7785f1)
|
||||
+#elif XACT3_VER == 0x0204
|
||||
uuid(bc3e0fc6-2e0d-4c45-bc61-d9c328319bd8)
|
||||
#elif XACT3_VER == 0x0205
|
||||
uuid(54b68bc7-3a45-416b-a8c9-19bf19ec1df5)
|
||||
diff --git a/dlls/xactengine2_3/Makefile.in b/dlls/xactengine2_3/Makefile.in
|
||||
new file mode 100644
|
||||
index 00000000000..23a27403ef6
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_3/Makefile.in
|
||||
@@ -0,0 +1,11 @@
|
||||
+MODULE = xactengine2_3.dll
|
||||
+IMPORTS = ole32 uuid
|
||||
+EXTRADEFS = -DXACT3_VER=0x0203
|
||||
+PARENTSRC = ../xactengine2_10
|
||||
+EXTRALIBS = $(FAUDIO_LIBS)
|
||||
+EXTRAINCL = $(FAUDIO_CFLAGS)
|
||||
+
|
||||
+C_SRCS = \
|
||||
+ xact2_dll.c
|
||||
+
|
||||
+IDL_SRCS = xact2_classes.idl
|
||||
diff --git a/dlls/xactengine2_3/xactengine2_3.spec b/dlls/xactengine2_3/xactengine2_3.spec
|
||||
new file mode 100644
|
||||
index 00000000000..b16365d0c9f
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine2_3/xactengine2_3.spec
|
||||
@@ -0,0 +1,4 @@
|
||||
+@ stdcall -private DllCanUnloadNow()
|
||||
+@ stdcall -private DllGetClassObject(ptr ptr ptr)
|
||||
+@ stdcall -private DllRegisterServer()
|
||||
+@ stdcall -private DllUnregisterServer()
|
||||
--
|
||||
2.28.0
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user