Commit 61e217c4 authored by Rémi Bernon's avatar Rémi Bernon Committed by Alexandre Julliard

winexinput.sys: Introduce a new winexinput.sys driver.

Currently only acting as a pass-through driver, matching any device with a WINEBUS\WINE_COMP_XINPUT compatible id. This creates new WINEXINPUT\ bus and the gamepad PDO on it, adding the &IG_ device id suffix to the original device id (replacing an eventual &MI_ suffix), and removes the need to set it on winebus.sys side. Signed-off-by: 's avatarRémi Bernon <rbernon@codeweavers.com> Signed-off-by: 's avatarZebediah Figura <zfigura@codeweavers.com> Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
parent 7b4b48a7
...@@ -1704,6 +1704,7 @@ enable_wineqtdecoder ...@@ -1704,6 +1704,7 @@ enable_wineqtdecoder
enable_wineusb_sys enable_wineusb_sys
enable_winevulkan enable_winevulkan
enable_winex11_drv enable_winex11_drv
enable_winexinput_sys
enable_wing32 enable_wing32
enable_winhttp enable_winhttp
enable_wininet enable_wininet
...@@ -21101,6 +21102,7 @@ wine_fn_config_makefile dlls/wineqtdecoder enable_wineqtdecoder ...@@ -21101,6 +21102,7 @@ wine_fn_config_makefile dlls/wineqtdecoder enable_wineqtdecoder
wine_fn_config_makefile dlls/wineusb.sys enable_wineusb_sys wine_fn_config_makefile dlls/wineusb.sys enable_wineusb_sys
wine_fn_config_makefile dlls/winevulkan enable_winevulkan wine_fn_config_makefile dlls/winevulkan enable_winevulkan
wine_fn_config_makefile dlls/winex11.drv enable_winex11_drv wine_fn_config_makefile dlls/winex11.drv enable_winex11_drv
wine_fn_config_makefile dlls/winexinput.sys enable_winexinput_sys
wine_fn_config_makefile dlls/wing.dll16 enable_win16 wine_fn_config_makefile dlls/wing.dll16 enable_win16
wine_fn_config_makefile dlls/wing32 enable_wing32 wine_fn_config_makefile dlls/wing32 enable_wing32
wine_fn_config_makefile dlls/winhttp enable_winhttp wine_fn_config_makefile dlls/winhttp enable_winhttp
......
...@@ -3800,6 +3800,7 @@ WINE_CONFIG_MAKEFILE(dlls/wineqtdecoder) ...@@ -3800,6 +3800,7 @@ WINE_CONFIG_MAKEFILE(dlls/wineqtdecoder)
WINE_CONFIG_MAKEFILE(dlls/wineusb.sys) WINE_CONFIG_MAKEFILE(dlls/wineusb.sys)
WINE_CONFIG_MAKEFILE(dlls/winevulkan) WINE_CONFIG_MAKEFILE(dlls/winevulkan)
WINE_CONFIG_MAKEFILE(dlls/winex11.drv) WINE_CONFIG_MAKEFILE(dlls/winex11.drv)
WINE_CONFIG_MAKEFILE(dlls/winexinput.sys)
WINE_CONFIG_MAKEFILE(dlls/wing.dll16,enable_win16) WINE_CONFIG_MAKEFILE(dlls/wing.dll16,enable_win16)
WINE_CONFIG_MAKEFILE(dlls/wing32) WINE_CONFIG_MAKEFILE(dlls/wing32)
WINE_CONFIG_MAKEFILE(dlls/winhttp) WINE_CONFIG_MAKEFILE(dlls/winhttp)
......
MODULE = winexinput.sys
IMPORTS = ntoskrnl
EXTRADLLFLAGS = -mno-cygwin -Wl,--subsystem,native
C_SRCS = \
main.c
RC_SRCS = winexinput.rc
[Version]
Signature="$CHICAGO$"
ClassGuid={4d36e97d-e325-11ce-bfc1-08002be10318}
Class=System
[Manufacturer]
Wine=mfg_section
[mfg_section]
Wine XInput compatible device=device_section,WINEBUS\WINE_COMP_XINPUT
[device_section.Services]
AddService = xinput,0x2,svc_section
[svc_section]
Description="Wine XInput device driver"
DisplayName="Wine XInput"
ServiceBinary="%12%\winexinput.sys"
LoadOrderGroup="WinePlugPlay"
ServiceType=1
StartType=3
ErrorControl=1
/*
* Copyright 2021 Rémi Bernon 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
*/
/* @makedep: winexinput.inf */
1 WINE_DATA_FILE winexinput.inf
...@@ -4060,6 +4060,7 @@ services,"@%11%\ws2_32.dll,-4" ...@@ -4060,6 +4060,7 @@ services,"@%11%\ws2_32.dll,-4"
winebus.inf,"@%12%\winebus.sys,-1" winebus.inf,"@%12%\winebus.sys,-1"
winehid.inf,"@%12%\winehid.sys,-1" winehid.inf,"@%12%\winehid.sys,-1"
wineusb.inf,"@%12%\wineusb.sys,-1" wineusb.inf,"@%12%\wineusb.sys,-1"
winexinput.inf,"@%12%\winexinput.sys,-1"
[NlsFiles] [NlsFiles]
c_037.nls c_037.nls
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment