Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
6451e221
Commit
6451e221
authored
Mar 15, 2005
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Build a static list of devices instead of relying on ELF
constructors.
parent
16ff109b
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
59 additions
and
66 deletions
+59
-66
dinput_main.c
dlls/dinput/dinput_main.c
+20
-33
dinput_private.h
dlls/dinput/dinput_private.h
+6
-4
joystick_linux.c
dlls/dinput/joystick_linux.c
+15
-7
joystick_linuxinput.c
dlls/dinput/joystick_linuxinput.c
+15
-14
keyboard.c
dlls/dinput/keyboard.c
+1
-4
mouse.c
dlls/dinput/mouse.c
+2
-4
No files found.
dlls/dinput/dinput_main.c
View file @
6451e221
...
@@ -51,10 +51,14 @@ static IDirectInput7WVtbl ddi7wvt;
...
@@ -51,10 +51,14 @@ static IDirectInput7WVtbl ddi7wvt;
static
IDirectInput8AVtbl
ddi8avt
;
static
IDirectInput8AVtbl
ddi8avt
;
static
IDirectInput8WVtbl
ddi8wvt
;
static
IDirectInput8WVtbl
ddi8wvt
;
/* This array will be filled a dinput.so loading */
static
const
struct
dinput_device
*
dinput_devices
[]
=
#define MAX_WINE_DINPUT_DEVICES 4
{
static
dinput_device
*
dinput_devices
[
MAX_WINE_DINPUT_DEVICES
];
&
mouse_device
,
static
int
nrof_dinput_devices
=
0
;
&
keyboard_device
,
&
joystick_linuxinput_device
,
&
joystick_linux_device
};
#define NB_DINPUT_DEVICES (sizeof(dinput_devices)/sizeof(dinput_devices[0]))
HINSTANCE
DINPUT_instance
=
NULL
;
HINSTANCE
DINPUT_instance
=
NULL
;
...
@@ -73,29 +77,6 @@ BOOL WINAPI DllMain( HINSTANCE inst, DWORD reason, LPVOID reserv)
...
@@ -73,29 +77,6 @@ BOOL WINAPI DllMain( HINSTANCE inst, DWORD reason, LPVOID reserv)
}
}
/* register a direct draw driver. We better not use malloc for we are in
* the ELF startup initialisation at this point.
*/
void
dinput_register_device
(
dinput_device
*
device
)
{
int
i
;
/* insert according to priority */
for
(
i
=
0
;
i
<
nrof_dinput_devices
;
i
++
)
{
if
(
dinput_devices
[
i
]
->
pref
<=
device
->
pref
)
{
memcpy
(
dinput_devices
+
i
+
1
,
dinput_devices
+
i
,
sizeof
(
dinput_devices
[
0
])
*
(
nrof_dinput_devices
-
i
));
dinput_devices
[
i
]
=
device
;
break
;
}
}
if
(
i
==
nrof_dinput_devices
)
/* not found, or too low priority */
dinput_devices
[
nrof_dinput_devices
]
=
device
;
nrof_dinput_devices
++
;
/* increase MAX_DDRAW_DRIVERS if the line below triggers */
assert
(
nrof_dinput_devices
<=
MAX_WINE_DINPUT_DEVICES
);
}
/******************************************************************************
/******************************************************************************
* DirectInputCreateEx (DINPUT.@)
* DirectInputCreateEx (DINPUT.@)
*/
*/
...
@@ -247,7 +228,8 @@ static HRESULT WINAPI IDirectInputAImpl_EnumDevices(
...
@@ -247,7 +228,8 @@ static HRESULT WINAPI IDirectInputAImpl_EnumDevices(
lpCallback
,
pvRef
,
dwFlags
);
lpCallback
,
pvRef
,
dwFlags
);
TRACE
(
" flags: "
);
_dump_EnumDevices_dwFlags
(
dwFlags
);
TRACE
(
"
\n
"
);
TRACE
(
" flags: "
);
_dump_EnumDevices_dwFlags
(
dwFlags
);
TRACE
(
"
\n
"
);
for
(
i
=
0
;
i
<
nrof_dinput_devices
;
i
++
)
{
for
(
i
=
0
;
i
<
NB_DINPUT_DEVICES
;
i
++
)
{
if
(
!
dinput_devices
[
i
]
->
enum_deviceA
)
continue
;
for
(
j
=
0
,
r
=
-
1
;
r
!=
0
;
j
++
)
{
for
(
j
=
0
,
r
=
-
1
;
r
!=
0
;
j
++
)
{
devInstance
.
dwSize
=
sizeof
(
devInstance
);
devInstance
.
dwSize
=
sizeof
(
devInstance
);
TRACE
(
" - checking device %d ('%s')
\n
"
,
i
,
dinput_devices
[
i
]
->
name
);
TRACE
(
" - checking device %d ('%s')
\n
"
,
i
,
dinput_devices
[
i
]
->
name
);
...
@@ -276,7 +258,8 @@ static HRESULT WINAPI IDirectInputWImpl_EnumDevices(
...
@@ -276,7 +258,8 @@ static HRESULT WINAPI IDirectInputWImpl_EnumDevices(
lpCallback
,
pvRef
,
dwFlags
);
lpCallback
,
pvRef
,
dwFlags
);
TRACE
(
" flags: "
);
_dump_EnumDevices_dwFlags
(
dwFlags
);
TRACE
(
"
\n
"
);
TRACE
(
" flags: "
);
_dump_EnumDevices_dwFlags
(
dwFlags
);
TRACE
(
"
\n
"
);
for
(
i
=
0
;
i
<
nrof_dinput_devices
;
i
++
)
{
for
(
i
=
0
;
i
<
NB_DINPUT_DEVICES
;
i
++
)
{
if
(
!
dinput_devices
[
i
]
->
enum_deviceW
)
continue
;
for
(
j
=
0
,
r
=
-
1
;
r
!=
0
;
j
++
)
{
for
(
j
=
0
,
r
=
-
1
;
r
!=
0
;
j
++
)
{
devInstance
.
dwSize
=
sizeof
(
devInstance
);
devInstance
.
dwSize
=
sizeof
(
devInstance
);
TRACE
(
" - checking device %d ('%s')
\n
"
,
i
,
dinput_devices
[
i
]
->
name
);
TRACE
(
" - checking device %d ('%s')
\n
"
,
i
,
dinput_devices
[
i
]
->
name
);
...
@@ -349,8 +332,9 @@ static HRESULT WINAPI IDirectInputAImpl_CreateDevice(
...
@@ -349,8 +332,9 @@ static HRESULT WINAPI IDirectInputAImpl_CreateDevice(
TRACE
(
"(this=%p,%s,%p,%p)
\n
"
,
This
,
debugstr_guid
(
rguid
),
pdev
,
punk
);
TRACE
(
"(this=%p,%s,%p,%p)
\n
"
,
This
,
debugstr_guid
(
rguid
),
pdev
,
punk
);
/* Loop on all the devices to see if anyone matches the given GUID */
/* Loop on all the devices to see if anyone matches the given GUID */
for
(
i
=
0
;
i
<
nrof_dinput_devices
;
i
++
)
{
for
(
i
=
0
;
i
<
NB_DINPUT_DEVICES
;
i
++
)
{
HRESULT
ret
;
HRESULT
ret
;
if
(
!
dinput_devices
[
i
]
->
create_deviceA
)
continue
;
if
((
ret
=
dinput_devices
[
i
]
->
create_deviceA
(
This
,
rguid
,
NULL
,
pdev
))
==
DI_OK
)
if
((
ret
=
dinput_devices
[
i
]
->
create_deviceA
(
This
,
rguid
,
NULL
,
pdev
))
==
DI_OK
)
return
DI_OK
;
return
DI_OK
;
...
@@ -370,8 +354,9 @@ static HRESULT WINAPI IDirectInputWImpl_CreateDevice(LPDIRECTINPUT7A iface,
...
@@ -370,8 +354,9 @@ static HRESULT WINAPI IDirectInputWImpl_CreateDevice(LPDIRECTINPUT7A iface,
TRACE
(
"(this=%p,%s,%p,%p)
\n
"
,
This
,
debugstr_guid
(
rguid
),
pdev
,
punk
);
TRACE
(
"(this=%p,%s,%p,%p)
\n
"
,
This
,
debugstr_guid
(
rguid
),
pdev
,
punk
);
/* Loop on all the devices to see if anyone matches the given GUID */
/* Loop on all the devices to see if anyone matches the given GUID */
for
(
i
=
0
;
i
<
nrof_dinput_devices
;
i
++
)
{
for
(
i
=
0
;
i
<
NB_DINPUT_DEVICES
;
i
++
)
{
HRESULT
ret
;
HRESULT
ret
;
if
(
!
dinput_devices
[
i
]
->
create_deviceW
)
continue
;
if
((
ret
=
dinput_devices
[
i
]
->
create_deviceW
(
This
,
rguid
,
NULL
,
pdev
))
==
DI_OK
)
if
((
ret
=
dinput_devices
[
i
]
->
create_deviceW
(
This
,
rguid
,
NULL
,
pdev
))
==
DI_OK
)
return
DI_OK
;
return
DI_OK
;
...
@@ -430,8 +415,9 @@ static HRESULT WINAPI IDirectInput7AImpl_CreateDeviceEx(LPDIRECTINPUT7A iface, R
...
@@ -430,8 +415,9 @@ static HRESULT WINAPI IDirectInput7AImpl_CreateDeviceEx(LPDIRECTINPUT7A iface, R
TRACE
(
"(%p)->(%s, %s, %p, %p)
\n
"
,
This
,
debugstr_guid
(
rguid
),
debugstr_guid
(
riid
),
pvOut
,
lpUnknownOuter
);
TRACE
(
"(%p)->(%s, %s, %p, %p)
\n
"
,
This
,
debugstr_guid
(
rguid
),
debugstr_guid
(
riid
),
pvOut
,
lpUnknownOuter
);
/* Loop on all the devices to see if anyone matches the given GUID */
/* Loop on all the devices to see if anyone matches the given GUID */
for
(
i
=
0
;
i
<
nrof_dinput_devices
;
i
++
)
{
for
(
i
=
0
;
i
<
NB_DINPUT_DEVICES
;
i
++
)
{
HRESULT
ret
;
HRESULT
ret
;
if
(
!
dinput_devices
[
i
]
->
create_deviceA
)
continue
;
if
((
ret
=
dinput_devices
[
i
]
->
create_deviceA
(
This
,
rguid
,
riid
,
(
LPDIRECTINPUTDEVICEA
*
)
pvOut
))
==
DI_OK
)
if
((
ret
=
dinput_devices
[
i
]
->
create_deviceA
(
This
,
rguid
,
riid
,
(
LPDIRECTINPUTDEVICEA
*
)
pvOut
))
==
DI_OK
)
return
DI_OK
;
return
DI_OK
;
...
@@ -452,8 +438,9 @@ static HRESULT WINAPI IDirectInput7WImpl_CreateDeviceEx(LPDIRECTINPUT7W iface, R
...
@@ -452,8 +438,9 @@ static HRESULT WINAPI IDirectInput7WImpl_CreateDeviceEx(LPDIRECTINPUT7W iface, R
TRACE
(
"(%p)->(%s, %s, %p, %p)
\n
"
,
This
,
debugstr_guid
(
rguid
),
debugstr_guid
(
riid
),
pvOut
,
lpUnknownOuter
);
TRACE
(
"(%p)->(%s, %s, %p, %p)
\n
"
,
This
,
debugstr_guid
(
rguid
),
debugstr_guid
(
riid
),
pvOut
,
lpUnknownOuter
);
/* Loop on all the devices to see if anyone matches the given GUID */
/* Loop on all the devices to see if anyone matches the given GUID */
for
(
i
=
0
;
i
<
nrof_dinput_devices
;
i
++
)
{
for
(
i
=
0
;
i
<
NB_DINPUT_DEVICES
;
i
++
)
{
HRESULT
ret
;
HRESULT
ret
;
if
(
!
dinput_devices
[
i
]
->
create_deviceW
)
continue
;
if
((
ret
=
dinput_devices
[
i
]
->
create_deviceW
(
This
,
rguid
,
riid
,
(
LPDIRECTINPUTDEVICEW
*
)
pvOut
))
==
DI_OK
)
if
((
ret
=
dinput_devices
[
i
]
->
create_deviceW
(
This
,
rguid
,
riid
,
(
LPDIRECTINPUTDEVICEW
*
)
pvOut
))
==
DI_OK
)
return
DI_OK
;
return
DI_OK
;
...
...
dlls/dinput/dinput_private.h
View file @
6451e221
...
@@ -39,16 +39,18 @@ struct IDirectInputImpl
...
@@ -39,16 +39,18 @@ struct IDirectInputImpl
};
};
/* Function called by all devices that Wine supports */
/* Function called by all devices that Wine supports */
typedef
struct
dinput_device
{
struct
dinput_device
{
INT
pref
;
const
char
*
name
;
const
char
*
name
;
BOOL
(
*
enum_deviceA
)(
DWORD
dwDevType
,
DWORD
dwFlags
,
LPDIDEVICEINSTANCEA
lpddi
,
int
version
,
int
id
);
BOOL
(
*
enum_deviceA
)(
DWORD
dwDevType
,
DWORD
dwFlags
,
LPDIDEVICEINSTANCEA
lpddi
,
int
version
,
int
id
);
BOOL
(
*
enum_deviceW
)(
DWORD
dwDevType
,
DWORD
dwFlags
,
LPDIDEVICEINSTANCEW
lpddi
,
int
version
,
int
id
);
BOOL
(
*
enum_deviceW
)(
DWORD
dwDevType
,
DWORD
dwFlags
,
LPDIDEVICEINSTANCEW
lpddi
,
int
version
,
int
id
);
HRESULT
(
*
create_deviceA
)(
IDirectInputImpl
*
dinput
,
REFGUID
rguid
,
REFIID
riid
,
LPDIRECTINPUTDEVICEA
*
pdev
);
HRESULT
(
*
create_deviceA
)(
IDirectInputImpl
*
dinput
,
REFGUID
rguid
,
REFIID
riid
,
LPDIRECTINPUTDEVICEA
*
pdev
);
HRESULT
(
*
create_deviceW
)(
IDirectInputImpl
*
dinput
,
REFGUID
rguid
,
REFIID
riid
,
LPDIRECTINPUTDEVICEW
*
pdev
);
HRESULT
(
*
create_deviceW
)(
IDirectInputImpl
*
dinput
,
REFGUID
rguid
,
REFIID
riid
,
LPDIRECTINPUTDEVICEW
*
pdev
);
}
dinput_device
;
};
extern
void
dinput_register_device
(
dinput_device
*
device
);
extern
const
struct
dinput_device
mouse_device
;
extern
const
struct
dinput_device
keyboard_device
;
extern
const
struct
dinput_device
joystick_linux_device
;
extern
const
struct
dinput_device
joystick_linuxinput_device
;
extern
HINSTANCE
DINPUT_instance
;
extern
HINSTANCE
DINPUT_instance
;
...
...
dlls/dinput/joystick_linux.c
View file @
6451e221
...
@@ -28,8 +28,6 @@
...
@@ -28,8 +28,6 @@
#include "config.h"
#include "config.h"
#include "wine/port.h"
#include "wine/port.h"
#ifdef HAVE_LINUX_22_JOYSTICK_API
#include <stdarg.h>
#include <stdarg.h>
#include <stdio.h>
#include <stdio.h>
#include <string.h>
#include <string.h>
...
@@ -55,7 +53,6 @@
...
@@ -55,7 +53,6 @@
#ifdef HAVE_LINUX_JOYSTICK_H
#ifdef HAVE_LINUX_JOYSTICK_H
# include <linux/joystick.h>
# include <linux/joystick.h>
#endif
#endif
#define JOYDEV "/dev/js"
#include "wine/debug.h"
#include "wine/debug.h"
#include "wine/unicode.h"
#include "wine/unicode.h"
...
@@ -70,6 +67,10 @@
...
@@ -70,6 +67,10 @@
WINE_DEFAULT_DEBUG_CHANNEL
(
dinput
);
WINE_DEFAULT_DEBUG_CHANNEL
(
dinput
);
#ifdef HAVE_LINUX_22_JOYSTICK_API
#define JOYDEV "/dev/js"
typedef
struct
{
typedef
struct
{
LONG
lMin
;
LONG
lMin
;
LONG
lMax
;
LONG
lMax
;
...
@@ -646,8 +647,7 @@ static HRESULT joydev_create_deviceW(IDirectInputImpl *dinput, REFGUID rguid, RE
...
@@ -646,8 +647,7 @@ static HRESULT joydev_create_deviceW(IDirectInputImpl *dinput, REFGUID rguid, RE
return
DIERR_DEVICENOTREG
;
return
DIERR_DEVICENOTREG
;
}
}
static
dinput_device
joydev
=
{
const
struct
dinput_device
joystick_linux_device
=
{
10
,
"Wine Linux joystick driver"
,
"Wine Linux joystick driver"
,
joydev_enum_deviceA
,
joydev_enum_deviceA
,
joydev_enum_deviceW
,
joydev_enum_deviceW
,
...
@@ -655,8 +655,6 @@ static dinput_device joydev = {
...
@@ -655,8 +655,6 @@ static dinput_device joydev = {
joydev_create_deviceW
joydev_create_deviceW
};
};
DECL_GLOBAL_CONSTRUCTOR
(
joydev_register
)
{
dinput_register_device
(
&
joydev
);
}
/******************************************************************************
/******************************************************************************
* Joystick
* Joystick
*/
*/
...
@@ -1695,4 +1693,14 @@ static IDirectInputDevice8WVtbl SysJoystickWvt =
...
@@ -1695,4 +1693,14 @@ static IDirectInputDevice8WVtbl SysJoystickWvt =
};
};
#undef XCAST
#undef XCAST
#else
/* HAVE_LINUX_22_JOYSTICK_API */
const
struct
dinput_device
joystick_linux_device
=
{
"Wine Linux joystick driver"
,
NULL
,
NULL
,
NULL
,
NULL
};
#endif
/* HAVE_LINUX_22_JOYSTICK_API */
#endif
/* HAVE_LINUX_22_JOYSTICK_API */
dlls/dinput/joystick_linuxinput.c
View file @
6451e221
...
@@ -22,8 +22,6 @@
...
@@ -22,8 +22,6 @@
#include "config.h"
#include "config.h"
#include "wine/port.h"
#include "wine/port.h"
#ifdef HAVE_LINUX_INPUT_H
#include <assert.h>
#include <assert.h>
#include <stdarg.h>
#include <stdarg.h>
#include <stdio.h>
#include <stdio.h>
...
@@ -43,16 +41,10 @@
...
@@ -43,16 +41,10 @@
#ifdef HAVE_SYS_ERRNO_H
#ifdef HAVE_SYS_ERRNO_H
# include <sys/errno.h>
# include <sys/errno.h>
#endif
#endif
#ifdef HAVE_CORRECT_LINUXINPUT_H
#ifdef HAVE_LINUX_INPUT_H
#ifdef HAVE_LINUX_INPUT_H
# include <linux/input.h>
# include <linux/input.h>
#endif
#endif
#define EVDEVPREFIX "/dev/input/event"
#include "wine/debug.h"
#include "wine/debug.h"
#include "wine/unicode.h"
#include "wine/unicode.h"
#include "windef.h"
#include "windef.h"
...
@@ -65,6 +57,10 @@
...
@@ -65,6 +57,10 @@
WINE_DEFAULT_DEBUG_CHANNEL
(
dinput
);
WINE_DEFAULT_DEBUG_CHANNEL
(
dinput
);
#ifdef HAVE_CORRECT_LINUXINPUT_H
#define EVDEVPREFIX "/dev/input/event"
/* Wine joystick driver object instances */
/* Wine joystick driver object instances */
#define WINE_JOYSTICK_AXIS_BASE 0
#define WINE_JOYSTICK_AXIS_BASE 0
#define WINE_JOYSTICK_BUTTON_BASE 8
#define WINE_JOYSTICK_BUTTON_BASE 8
...
@@ -322,8 +318,7 @@ static HRESULT joydev_create_deviceW(IDirectInputImpl *dinput, REFGUID rguid, RE
...
@@ -322,8 +318,7 @@ static HRESULT joydev_create_deviceW(IDirectInputImpl *dinput, REFGUID rguid, RE
return
DIERR_DEVICENOTREG
;
return
DIERR_DEVICENOTREG
;
}
}
static
dinput_device
joydev
=
{
const
struct
dinput_device
joystick_linuxinput_device
=
{
20
,
"Wine Linux-input joystick driver"
,
"Wine Linux-input joystick driver"
,
joydev_enum_deviceA
,
joydev_enum_deviceA
,
joydev_enum_deviceW
,
joydev_enum_deviceW
,
...
@@ -331,8 +326,6 @@ static dinput_device joydev = {
...
@@ -331,8 +326,6 @@ static dinput_device joydev = {
joydev_create_deviceW
joydev_create_deviceW
};
};
DECL_GLOBAL_CONSTRUCTOR
(
joydev_register
)
{
dinput_register_device
(
&
joydev
);
}
/******************************************************************************
/******************************************************************************
* Joystick
* Joystick
*/
*/
...
@@ -1094,6 +1087,14 @@ static IDirectInputDevice8WVtbl JoystickWvt =
...
@@ -1094,6 +1087,14 @@ static IDirectInputDevice8WVtbl JoystickWvt =
};
};
#undef XCAST
#undef XCAST
#e
ndif
/* HAVE_LINUX_
INPUT_H */
#e
lse
/* HAVE_CORRECT_LINUX
INPUT_H */
#endif
struct
dinput_device
joystick_linuxinput_device
=
{
"Wine Linux-input joystick driver"
,
NULL
,
NULL
,
NULL
,
NULL
};
#endif
/* HAVE_CORRECT_LINUXINPUT_H */
dlls/dinput/keyboard.c
View file @
6451e221
...
@@ -289,8 +289,7 @@ static HRESULT keyboarddev_create_deviceW(IDirectInputImpl *dinput, REFGUID rgui
...
@@ -289,8 +289,7 @@ static HRESULT keyboarddev_create_deviceW(IDirectInputImpl *dinput, REFGUID rgui
return
DIERR_DEVICENOTREG
;
return
DIERR_DEVICENOTREG
;
}
}
static
dinput_device
keyboarddev
=
{
const
struct
dinput_device
keyboard_device
=
{
100
,
"Wine keyboard driver"
,
"Wine keyboard driver"
,
keyboarddev_enum_deviceA
,
keyboarddev_enum_deviceA
,
keyboarddev_enum_deviceW
,
keyboarddev_enum_deviceW
,
...
@@ -298,8 +297,6 @@ static dinput_device keyboarddev = {
...
@@ -298,8 +297,6 @@ static dinput_device keyboarddev = {
keyboarddev_create_deviceW
keyboarddev_create_deviceW
};
};
DECL_GLOBAL_CONSTRUCTOR
(
keyboarddev_register
)
{
dinput_register_device
(
&
keyboarddev
);
}
static
ULONG
WINAPI
SysKeyboardAImpl_Release
(
LPDIRECTINPUTDEVICE8A
iface
)
static
ULONG
WINAPI
SysKeyboardAImpl_Release
(
LPDIRECTINPUTDEVICE8A
iface
)
{
{
SysKeyboardImpl
*
This
=
(
SysKeyboardImpl
*
)
iface
;
SysKeyboardImpl
*
This
=
(
SysKeyboardImpl
*
)
iface
;
...
...
dlls/dinput/mouse.c
View file @
6451e221
...
@@ -305,8 +305,8 @@ static HRESULT mousedev_create_deviceW(IDirectInputImpl *dinput, REFGUID rguid,
...
@@ -305,8 +305,8 @@ static HRESULT mousedev_create_deviceW(IDirectInputImpl *dinput, REFGUID rguid,
return
DIERR_DEVICENOTREG
;
return
DIERR_DEVICENOTREG
;
}
}
static
dinput_device
mousedev
=
{
100
,
const
struct
dinput_device
mouse_device
=
{
"Wine mouse driver"
,
"Wine mouse driver"
,
mousedev_enum_deviceA
,
mousedev_enum_deviceA
,
mousedev_enum_deviceW
,
mousedev_enum_deviceW
,
...
@@ -314,8 +314,6 @@ static dinput_device mousedev = {
...
@@ -314,8 +314,6 @@ static dinput_device mousedev = {
mousedev_create_deviceW
mousedev_create_deviceW
};
};
DECL_GLOBAL_CONSTRUCTOR
(
mousedev_register
)
{
dinput_register_device
(
&
mousedev
);
}
/******************************************************************************
/******************************************************************************
* SysMouseA (DInput Mouse support)
* SysMouseA (DInput Mouse support)
*/
*/
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment