From 25413bcba88a3f3b7f46a05e6fbae59dde308911 Mon Sep 17 00:00:00 2001 From: Will Xyen Date: Sun, 5 Apr 2020 02:18:24 -0700 Subject: [PATCH] dinput/asio: drop hook suffix --- Module.mk | 4 +-- src/main/{asiohook => asio}/Module.mk | 6 ++-- src/main/{asiohook => asio}/asio-reghook.c | 2 +- src/main/{asiohook => asio}/asio-reghook.h | 0 src/main/{asiohook => asio}/config-asio.c | 2 +- src/main/{asiohook => asio}/config-asio.h | 0 src/main/dinput/Module.mk | 10 +++++++ .../{dinputhook => dinput}/device_dinput8.c | 29 ++++++++++++++++++- .../{dinputhook => dinput}/device_dinput8.h | 0 src/main/{dinputhook => dinput}/dinput.c | 7 +++-- src/main/{dinputhook => dinput}/dinput.h | 0 src/main/dinputhook/Module.mk | 10 ------- 12 files changed, 50 insertions(+), 20 deletions(-) rename src/main/{asiohook => asio}/Module.mk (51%) rename src/main/{asiohook => asio}/asio-reghook.c (99%) rename src/main/{asiohook => asio}/asio-reghook.h (100%) rename src/main/{asiohook => asio}/config-asio.c (98%) rename src/main/{asiohook => asio}/config-asio.h (100%) create mode 100644 src/main/dinput/Module.mk rename src/main/{dinputhook => dinput}/device_dinput8.c (99%) rename src/main/{dinputhook => dinput}/device_dinput8.h (100%) rename src/main/{dinputhook => dinput}/dinput.c (97%) rename src/main/{dinputhook => dinput}/dinput.h (100%) delete mode 100644 src/main/dinputhook/Module.mk diff --git a/Module.mk b/Module.mk index 215fcb6..3714f44 100644 --- a/Module.mk +++ b/Module.mk @@ -77,7 +77,7 @@ imps += avs avs-ea3 include src/main/aciodrv/Module.mk include src/main/acioemu/Module.mk include src/main/aciotest/Module.mk -include src/main/asiohook/Module.mk +include src/main/asio/Module.mk include src/main/bio2emu/Module.mk include src/main/bsthook/Module.mk include src/main/bstio/Module.mk @@ -89,7 +89,7 @@ include src/main/ddrhook/Module.mk include src/main/ddrio/Module.mk include src/main/ddrio-smx/Module.mk include src/main/ddrio-mm/Module.mk -include src/main/dinputhook/Module.mk +include src/main/dinput/Module.mk include src/main/eamio/Module.mk include src/main/eamio-icca/Module.mk include src/main/eamiotest/Module.mk diff --git a/src/main/asiohook/Module.mk b/src/main/asio/Module.mk similarity index 51% rename from src/main/asiohook/Module.mk rename to src/main/asio/Module.mk index 97859e4..74fced5 100644 --- a/src/main/asiohook/Module.mk +++ b/src/main/asio/Module.mk @@ -1,10 +1,10 @@ -libs += asiohook +libs += asio -libs_asiohook := \ +libs_asio := \ hook \ hooklib \ util \ -src_asiohook := \ +src_asio := \ asio-reghook.c \ config-asio.c \ diff --git a/src/main/asiohook/asio-reghook.c b/src/main/asio/asio-reghook.c similarity index 99% rename from src/main/asiohook/asio-reghook.c rename to src/main/asio/asio-reghook.c index f64d5f2..8b5fabf 100644 --- a/src/main/asiohook/asio-reghook.c +++ b/src/main/asio/asio-reghook.c @@ -13,7 +13,7 @@ #include "hook/com-proxy.h" #include "hook/table.h" -#include "asiohook/asio-reghook.h" +#include "asio/asio-reghook.h" #include "util/defs.h" #include "util/log.h" diff --git a/src/main/asiohook/asio-reghook.h b/src/main/asio/asio-reghook.h similarity index 100% rename from src/main/asiohook/asio-reghook.h rename to src/main/asio/asio-reghook.h diff --git a/src/main/asiohook/config-asio.c b/src/main/asio/config-asio.c similarity index 98% rename from src/main/asiohook/config-asio.c rename to src/main/asio/config-asio.c index e440f06..542d70d 100644 --- a/src/main/asiohook/config-asio.c +++ b/src/main/asio/config-asio.c @@ -1,6 +1,6 @@ #include "cconfig/cconfig-util.h" -#include "asiohook/config-asio.h" +#include "asio/config-asio.h" #include "util/log.h" diff --git a/src/main/asiohook/config-asio.h b/src/main/asio/config-asio.h similarity index 100% rename from src/main/asiohook/config-asio.h rename to src/main/asio/config-asio.h diff --git a/src/main/dinput/Module.mk b/src/main/dinput/Module.mk new file mode 100644 index 0000000..b372482 --- /dev/null +++ b/src/main/dinput/Module.mk @@ -0,0 +1,10 @@ +libs += dinput + +libs_dinput := \ + hook \ + hooklib \ + util \ + +src_dinput := \ + dinput.c \ + device_dinput8.c \ diff --git a/src/main/dinputhook/device_dinput8.c b/src/main/dinput/device_dinput8.c similarity index 99% rename from src/main/dinputhook/device_dinput8.c rename to src/main/dinput/device_dinput8.c index d054667..cfec73c 100644 --- a/src/main/dinputhook/device_dinput8.c +++ b/src/main/dinput/device_dinput8.c @@ -1,4 +1,4 @@ -#include "dinputhook/device_dinput8.h" +#include "dinput/device_dinput8.h" static ULONG REF_COUNT = 0; @@ -26,11 +26,13 @@ static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_QueryInterface( return E_NOINTERFACE; } + static ULONG STDMETHODCALLTYPE IDirectInputDevice8W_AddRef(IDirectInputDevice8W FAR *This) { return ++REF_COUNT; } + static ULONG STDMETHODCALLTYPE IDirectInputDevice8W_Release(IDirectInputDevice8W FAR *This) { @@ -42,6 +44,7 @@ static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_GetCapabilities( { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_EnumObjects( IDirectInputDevice8W FAR *This, LPDIENUMDEVICEOBJECTSCALLBACKW lpCallback, @@ -50,31 +53,37 @@ static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_EnumObjects( { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_GetProperty( IDirectInputDevice8W FAR *This, REFGUID rguidProp, LPDIPROPHEADER pdiph) { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_SetProperty( IDirectInputDevice8W FAR *This, REFGUID rguidProp, LPCDIPROPHEADER pdiph) { return DI_OK; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_Acquire(IDirectInputDevice8W FAR *This) { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_Unacquire(IDirectInputDevice8W FAR *This) { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_GetDeviceState( IDirectInputDevice8W FAR *This, DWORD cbData, LPVOID lpvData) { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_GetDeviceData( IDirectInputDevice8W FAR *This, DWORD cbObjectData, @@ -84,21 +93,25 @@ static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_GetDeviceData( { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_SetDataFormat( IDirectInputDevice8W FAR *This, LPCDIDATAFORMAT lpdf) { return DI_OK; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_SetEventNotification( IDirectInputDevice8W FAR *This, HANDLE hEvent) { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_SetCooperativeLevel( IDirectInputDevice8W FAR *This, HWND hWnd, DWORD dwFlags) { return DI_OK; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_GetObjectInfo( IDirectInputDevice8W FAR *This, LPDIDEVICEOBJECTINSTANCEW pdidoi, @@ -107,16 +120,19 @@ static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_GetObjectInfo( { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_GetDeviceInfo( IDirectInputDevice8W FAR *This, LPDIDEVICEINSTANCEW pdidi) { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_RunControlPanel( IDirectInputDevice8W FAR *This, HWND hwndOwner, DWORD dwFlags) { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_Initialize( IDirectInputDevice8W FAR *This, HINSTANCE hinst, @@ -135,6 +151,7 @@ static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_CreateEffect( { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_EnumEffects( IDirectInputDevice8W FAR *This, LPDIENUMEFFECTSCALLBACKW lpCallback, @@ -143,21 +160,25 @@ static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_EnumEffects( { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_GetEffectInfo( IDirectInputDevice8W FAR *This, LPDIEFFECTINFOW pdei, REFGUID rguid) { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_GetForceFeedbackState( IDirectInputDevice8W FAR *This, LPDWORD pdwOut) { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_SendForceFeedbackCommand( IDirectInputDevice8W FAR *This, DWORD dwFlags) { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_EnumCreatedEffectObjects( IDirectInputDevice8W FAR *This, LPDIENUMCREATEDEFFECTOBJECTSCALLBACK lpCallback, @@ -166,16 +187,19 @@ static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_EnumCreatedEffectObjects( { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_Escape(IDirectInputDevice8W FAR *This, LPDIEFFESCAPE pesc) { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_Poll(IDirectInputDevice8W FAR *This) { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_SendDeviceData( IDirectInputDevice8W FAR *This, DWORD cbObjectData, @@ -195,6 +219,7 @@ static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_EnumEffectsInFile( { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_WriteEffectToFile( IDirectInputDevice8W FAR *This, LPCWSTR lpszFileName, @@ -213,6 +238,7 @@ static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_BuildActionMap( { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_SetActionMap( IDirectInputDevice8W FAR *This, LPDIACTIONFORMATW lpdiaf, @@ -221,6 +247,7 @@ static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_SetActionMap( { return DIERR_INVALIDPARAM; } + static HRESULT STDMETHODCALLTYPE IDirectInputDevice8W_GetImageInfo( IDirectInputDevice8W FAR *This, LPDIDEVICEIMAGEINFOHEADERW lpdiDevImageInfoHeader) diff --git a/src/main/dinputhook/device_dinput8.h b/src/main/dinput/device_dinput8.h similarity index 100% rename from src/main/dinputhook/device_dinput8.h rename to src/main/dinput/device_dinput8.h diff --git a/src/main/dinputhook/dinput.c b/src/main/dinput/dinput.c similarity index 97% rename from src/main/dinputhook/dinput.c rename to src/main/dinput/dinput.c index abe8bce..e9d1fcd 100644 --- a/src/main/dinputhook/dinput.c +++ b/src/main/dinput/dinput.c @@ -3,8 +3,8 @@ #define DIRECTINPUT_VERSION 0x0800 #include -#include "dinputhook/device_dinput8.h" -#include "dinputhook/dinput.h" +#include "dinput/device_dinput8.h" +#include "dinput/dinput.h" #include @@ -44,6 +44,7 @@ static HRESULT STDCALL my_CreateDevice( LPUNKNOWN pUnkOuter) { log_misc("IDirectInput8::CreateDevice hook hit"); + if (lplpDirectInputDevice == NULL) { return DIERR_INVALIDPARAM; } @@ -89,9 +90,11 @@ static HRESULT STDCALL my_DirectInput8Create( res = real_DirectInput8Create( hinst, dwVersion, riidltf, (LPVOID *) &api, punkOuter); + if (res != DI_OK) { return res; } + api_proxy = com_proxy_wrap(api, sizeof(*api->lpVtbl)); api_vtbl = api_proxy->vptr; diff --git a/src/main/dinputhook/dinput.h b/src/main/dinput/dinput.h similarity index 100% rename from src/main/dinputhook/dinput.h rename to src/main/dinput/dinput.h diff --git a/src/main/dinputhook/Module.mk b/src/main/dinputhook/Module.mk deleted file mode 100644 index 3893c30..0000000 --- a/src/main/dinputhook/Module.mk +++ /dev/null @@ -1,10 +0,0 @@ -libs += dinputhook - -libs_dinputhook := \ - hook \ - hooklib \ - util \ - -src_dinputhook := \ - dinput.c \ - device_dinput8.c \