From 68ede59fa5d174336328906049980a9fe28b3d52 Mon Sep 17 00:00:00 2001 From: Andrew Fenn Date: Mon, 10 Nov 2008 16:29:29 +0000 Subject: [PATCH] xinput1_1: Initial implementation. --- configure | 9 ++++++++ configure.ac | 1 + dlls/xinput1_1/Makefile.in | 15 +++++++++++++ dlls/xinput1_1/version.rc | 27 +++++++++++++++++++++++ dlls/xinput1_1/xinput1_1.spec | 5 +++++ dlls/xinput1_1/xinput1_1_main.c | 39 +++++++++++++++++++++++++++++++++ 6 files changed, 96 insertions(+) create mode 100644 dlls/xinput1_1/Makefile.in create mode 100644 dlls/xinput1_1/version.rc create mode 100644 dlls/xinput1_1/xinput1_1.spec create mode 100644 dlls/xinput1_1/xinput1_1_main.c diff --git a/configure b/configure index cd1c461540b..0f74b21c96f 100755 --- a/configure +++ b/configure @@ -26833,6 +26833,14 @@ ALL_MAKEFILE_DEPENDS="$ALL_MAKEFILE_DEPENDS dlls/wtsapi32/Makefile: dlls/wtsapi32/Makefile.in dlls/Makedll.rules" ac_config_files="$ac_config_files dlls/wtsapi32/Makefile" +ALL_MAKEFILES="$ALL_MAKEFILES \\ + dlls/xinput1_1/Makefile" +test "x$enable_xinput1_1" != xno && ALL_DLL_DIRS="$ALL_DLL_DIRS \\ + xinput1_1" +ALL_MAKEFILE_DEPENDS="$ALL_MAKEFILE_DEPENDS +dlls/xinput1_1/Makefile: dlls/xinput1_1/Makefile.in dlls/Makedll.rules" +ac_config_files="$ac_config_files dlls/xinput1_1/Makefile" + ALL_MAKEFILES="$ALL_MAKEFILES \\ dlls/xinput1_3/Makefile" test "x$enable_xinput1_3" != xno && ALL_DLL_DIRS="$ALL_DLL_DIRS \\ @@ -28381,6 +28389,7 @@ do "dlls/ws2_32/tests/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/ws2_32/tests/Makefile" ;; "dlls/wsock32/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/wsock32/Makefile" ;; "dlls/wtsapi32/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/wtsapi32/Makefile" ;; + "dlls/xinput1_1/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/xinput1_1/Makefile" ;; "dlls/xinput1_3/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/xinput1_3/Makefile" ;; "dlls/xinput9_1_0/Makefile") CONFIG_FILES="$CONFIG_FILES dlls/xinput9_1_0/Makefile" ;; "documentation/Makefile") CONFIG_FILES="$CONFIG_FILES documentation/Makefile" ;; diff --git a/configure.ac b/configure.ac index 4756cd19043..45531a335ef 100644 --- a/configure.ac +++ b/configure.ac @@ -2094,6 +2094,7 @@ WINE_CONFIG_MAKEFILE([dlls/ws2_32/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL WINE_CONFIG_MAKEFILE([dlls/ws2_32/tests/Makefile],[dlls/Maketest.rules],[dlls],[ALL_TEST_DIRS]) WINE_CONFIG_MAKEFILE([dlls/wsock32/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS]) WINE_CONFIG_MAKEFILE([dlls/wtsapi32/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS]) +WINE_CONFIG_MAKEFILE([dlls/xinput1_1/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS]) WINE_CONFIG_MAKEFILE([dlls/xinput1_3/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS]) WINE_CONFIG_MAKEFILE([dlls/xinput9_1_0/Makefile],[dlls/Makedll.rules],[dlls],[ALL_DLL_DIRS]) WINE_CONFIG_MAKEFILE([documentation/Makefile],[Make.rules],[],[ALL_TOP_DIRS]) diff --git a/dlls/xinput1_1/Makefile.in b/dlls/xinput1_1/Makefile.in new file mode 100644 index 00000000000..04670f585c2 --- /dev/null +++ b/dlls/xinput1_1/Makefile.in @@ -0,0 +1,15 @@ +TOPSRCDIR = @top_srcdir@ +TOPOBJDIR = ../.. +SRCDIR = @srcdir@ +VPATH = @srcdir@ +MODULE = xinput1_1.dll +IMPORTS = kernel32 + +C_SRCS = \ + xinput1_1_main.c + +RC_SRCS = version.rc + +@MAKE_DLL_RULES@ + +@DEPENDENCIES@ # everything below this line is overwritten by make depend diff --git a/dlls/xinput1_1/version.rc b/dlls/xinput1_1/version.rc new file mode 100644 index 00000000000..e93aa902ecc --- /dev/null +++ b/dlls/xinput1_1/version.rc @@ -0,0 +1,27 @@ +/* + * The Wine project - Xinput Joystick Library + * Copyright 2008 Andrew Fenn + * + * 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 + */ + +#define WINE_FILEDESCRIPTION_STR "Wine Common Controller API" +#define WINE_FILENAME_STR "xinput1_1.dll" +#define WINE_FILEVERSION 9,12,589,0000 +#define WINE_FILEVERSION_STR "9.12.589.0000" +#define WINE_PRODUCTVERSION 9,12,589,0000 +#define WINE_PRODUCTVERSION_STR "9.12" + +#include "wine/wine_common_ver.rc" diff --git a/dlls/xinput1_1/xinput1_1.spec b/dlls/xinput1_1/xinput1_1.spec new file mode 100644 index 00000000000..95759c345ea --- /dev/null +++ b/dlls/xinput1_1/xinput1_1.spec @@ -0,0 +1,5 @@ +@ stdcall XInputEnable(long) xinput1_3.XInputEnable +@ stdcall XInputGetCapabilities(long long ptr) xinput1_3.XInputGetCapabilities +@ stdcall XInputGetDSoundAudioDeviceGuids(long ptr ptr) xinput1_3.XInputGetDSoundAudioDeviceGuids +@ stdcall XInputSetState(long ptr) xinput1_3.XInputSetState +@ stdcall XInputGetState(long ptr) xinput1_3.XInputGetState diff --git a/dlls/xinput1_1/xinput1_1_main.c b/dlls/xinput1_1/xinput1_1_main.c new file mode 100644 index 00000000000..18cde9e6652 --- /dev/null +++ b/dlls/xinput1_1/xinput1_1_main.c @@ -0,0 +1,39 @@ +/* + * The Wine project - Xinput Joystick Library + * Copyright 2008 Andrew Fenn + * + * 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 + +#include "windef.h" +#include "winbase.h" + +BOOL WINAPI DllMain(HINSTANCE inst, DWORD reason, LPVOID reserved) +{ + switch(reason) + { + case DLL_WINE_PREATTACH: + return FALSE; /* prefer native version */ + case DLL_PROCESS_ATTACH: + DisableThreadLibraryCalls(inst); + break; + case DLL_PROCESS_DETACH: + break; + } + return TRUE; +}