Vincent Pelletier
f1beea4f86
dinput: Effect length can actually be 0.
...
This fixes force feedback devices slamming for 10ms at full strength, as
attack is an absolute value, not a factor of effect level.
2011-03-31 12:38:28 +02:00
Vincent Pelletier
296b67f556
dinput: Ramp from lStart to lEnd, not lStart to lStart.
2011-03-28 17:08:53 +02:00
Austin English
d6d749f4d7
dinput/tests: Make sure to use return value (LLVM/Clang).
2011-02-07 10:06:07 -06:00
Vitaliy Margolen
670d54a637
dinput: Ignore EV_MSC events instead of printing fixme.
2011-02-02 12:24:14 +01:00
Vitaliy Margolen
4979d287b2
dinput: Return correct error code for DIPROP_VIDPID.
2011-02-02 12:24:07 +01:00
Charles Davis
a2e11b452a
dinput: Don't link to/include Carbon on Mac OS X.
2011-01-25 12:45:44 +01:00
Vitaliy Margolen
02be0aee72
dinput: Fix typo. Found by clang.
2011-01-25 12:37:53 +01:00
Vitaliy Margolen
0ac5c60374
dinput: Combine ASCII and Unicode device create callbacks. Add tests.
2011-01-24 14:43:09 +01:00
Vitaliy Margolen
92ac7861f5
dinput: Combine ASCII and Unicode Direct Input Device QueryInterface.
2011-01-19 12:58:29 +01:00
Vitaliy Margolen
9441d898f7
dinput: Make newly created device append itself to Direct Input's list.
2011-01-19 12:58:01 +01:00
Vitaliy Margolen
6b30480021
dinput: COM cleanup - use interfaces instead of vtbl. Combine both Unicode and ASCII interfaces into the same classes.
2011-01-10 12:41:20 +01:00
Vitaliy Margolen
e6a8aa67d0
dinput: Explicitly define ASCII and Unicode methods in joydev joystick.
2011-01-10 11:04:07 +01:00
Vitaliy Margolen
d88cbac1c5
dinput: Explicitly define ASCII and Unicode methods in evdev joystick.
2011-01-10 11:04:01 +01:00
Vitaliy Margolen
6a07885029
dinput: Explicitly define ASCII and Unicode methods in joystick base class. Use new methods in child classes.
2011-01-10 11:03:49 +01:00
Vitaliy Margolen
30ab6c1749
dinput: Explicitly define ASCII and Unicode methods in mouse.
2011-01-10 11:03:40 +01:00
Vitaliy Margolen
9f9e376239
dinput: Explicitly define ASCII and Unicode methods in keyboard.
2011-01-10 11:03:34 +01:00
Vitaliy Margolen
0f24b9e86f
dinput: Explicitly define ASCII and Unicode methods in DirectInputDevice base class. Make ASCII methods call Unicode. Use new methods in child classes.
2011-01-10 11:03:17 +01:00
Vitaliy Margolen
9594be7f79
dinput: Change internal check_dinput_hooks method to take W iface.
2011-01-10 11:02:16 +01:00
Vitaliy Margolen
399be3455a
dinput: COM cleanup - use helper function instead of direct typecast in OS/X joystick.
2011-01-10 11:02:04 +01:00
Vitaliy Margolen
f09ace0d83
dinput: COM cleanup - use helper function instead of direct typecast in linuxinput joystick.
2011-01-10 11:02:00 +01:00
Vitaliy Margolen
a1b08e5d04
dinput: COM cleanup - use helper function instead of direct typecast in Linux joystick.
2011-01-10 11:01:55 +01:00
Vitaliy Margolen
de4a9bb319
dinput: COM cleanup - use helper function instead of direct typecast in base joystick class.
2011-01-10 11:01:51 +01:00
Vitaliy Margolen
31c828ea27
dinput: COM cleanup - use helper function instead of direct typecast in keyboard.
2011-01-10 11:01:46 +01:00
Vitaliy Margolen
625fefca61
dinput: COM cleanup - use helper function instead of direct typecast in mouse.
2011-01-10 11:01:39 +01:00
Vitaliy Margolen
fc023b96d2
dinput: COM cleanup - use helper function instead of direct typecast in base device class.
2011-01-10 10:58:36 +01:00
Vitaliy Margolen
0b99bf3edb
dinput: COM cleanup - use proper interface instead of typecasting This when calling queue_event.
2011-01-10 10:58:26 +01:00
Vitaliy Margolen
b66e00cb09
dinput: COM cleanup - return interface instead of typecasting This.
2011-01-10 10:58:19 +01:00
Vitaliy Margolen
15216098e0
dinput: COM cleanup - use proper DirectInput interface with IUknown calls.
2011-01-10 10:58:14 +01:00
Vitaliy Margolen
7b47282625
dinput: More COM cleanup for IDirectInput - use interfaces instead of typecasts.
2011-01-10 10:58:06 +01:00
Greg Geldorp
62670dc39e
dinput/tests: Skip acquire tests when not running in the foreground.
...
If our window isn't the foreground window, we'll never be able to
successfully Acquire with SetCooperativeLevel DISCL_FOREGROUND in effect.
2011-01-06 18:29:14 +01:00
Vitaliy Margolen
7d650d0b28
dinput: Pass interface instead of this pointer to joystick poll callback.
2011-01-03 16:48:16 +01:00
Vitaliy Margolen
179b862738
dinput: Rename IDirectInputDevice2AImpl into IDirectInputDeviceImpl.
2011-01-03 16:46:41 +01:00
Vitaliy Margolen
0adc470854
dinput: COM cleanup - use interface instead of lpvtbl in joystick effects.
2011-01-03 16:46:25 +01:00
Vitaliy Margolen
2774d40463
dinput: Convert DirectInput to using interface instead of vtbl.
2010-12-29 10:48:32 +01:00
Alexandre Julliard
f4d0d638e8
dinput: Convert dll registration to the IRegistrar mechanism.
2010-12-07 12:54:24 +01:00
Michael Stefaniuc
6d7d1b5850
dinput: Use an iface instead of a vtbl pointer in IClassFactoryImpl.
2010-12-05 16:43:09 +01:00
Zach Smith
fa5f61f59d
dinput: OSX joystick driver separate device for each top level HID collection.
2010-09-21 20:16:16 +02:00
Alexandre Julliard
81b8ee863e
makefiles: Add a standard header for all makefiles to replace the common variable initializations.
2010-09-19 12:36:48 +02:00
Kovács András
cde699b286
dinput: Return an error in IDirectInputDevice2AImpl_GetProperty().
2010-09-16 10:11:08 -05:00
Andrew Talbot
e6649952fa
dinput: Constify some variables.
2010-08-31 14:23:47 +02:00
Alexandre Julliard
b86d515ed6
dlls: Remove explicit imports of kernel32 and ntdll.
2010-07-21 17:38:36 +02:00
Michael Stefaniuc
127733ebda
dinput: Remove explicit cast to long as it happens implicitly.
...
LPDIEFFECT->rglDirection is a LPLONG.
2010-05-18 18:42:09 +02:00
Detlef Riekenberg
5a195bda98
dinput: Add the riid for an unsupported interface to a FIXME.
2010-04-28 09:19:47 -05:00
Alexandre Julliard
bef5645eb1
makefiles: Remove the no longer needed explicit separators for dependencies.
2010-03-16 13:28:19 +01:00
Alexandre Julliard
6164ce2d82
makefiles: Use the standard C_SRCS variable as the list of test files.
...
This enables it to be auto-updated by make_makefiles.
2010-02-22 10:47:11 +01:00
Michael Stefaniuc
2004db1bb1
dinput: Don't use HIWORD to check if a REFGUID is a DIPROP.
2010-02-02 11:47:20 +01:00
Paul Vriens
ff4047a956
dinput: Don't check a parameter twice (Coccinelle).
2010-01-14 09:11:22 -06:00
Reece Dunn
a2c41b72f8
Don't generate FIXME warnings for DllCanUnloadNow.
2010-01-06 10:59:51 +01:00
Francois Gouget
c5b346440f
dsound: Make id_to_offset() static.
2009-12-02 14:19:50 +01:00
Vitaliy Margolen
2665272d6c
dinput: Pass event instance ID to queue_event instead of offset.
2009-11-30 12:49:11 +01:00
Vitaliy Margolen
29561f492e
dinput: Improve dumping of DIACTIONFORMAT.
2009-11-30 12:49:04 +01:00
Vitaliy Margolen
e1d6e3b258
dinput: Fix definitions to match PSDK.
2009-11-30 12:49:00 +01:00
Ričardas Barkauskas
258fd75b39
dinput: Fix counting non mapped axis as pov.
2009-10-21 16:05:56 +02:00
Paul Vriens
5a40c65cfe
dinput/tests: Fix a few intermittent test failures.
2009-10-15 12:06:18 +02:00
Stefan Dösinger
024dcba89a
dinput: Make the creation functions hookable.
2009-10-14 12:21:06 +02:00
Vitaliy Margolen
8c279bb80b
dinput: Fix POV for programs that use buffered events.
2009-09-11 12:14:25 +02:00
Vitaliy Margolen
9d86110327
dinput: Convert axis mapping array to int instead of BYTE. BYTE is unsigned and char isn't enough to store all possible axis values.
2009-09-08 13:07:09 +02:00
Vitaliy Margolen
f6351117f1
dinput: Move axes and buttons queries into initial joystick discovery for joydev driver.
2009-09-08 13:07:01 +02:00
Vitaliy Margolen
83172ecc82
dinput: Fix evdev POV mapping.
2009-08-19 12:26:15 +02:00
Vitaliy Margolen
0932f4a113
dinput: Get default axes configuration from the device for joydev.
2009-08-19 12:26:03 +02:00
Vitaliy Margolen
9a73798af8
dinput: Expand joydev joystick discovery to query joystick name as well.
2009-08-19 12:25:55 +02:00
Vitaliy Margolen
2941cc72e5
dinput: Set default joystick axes mapping for evdev.
2009-08-19 12:25:36 +02:00
Vitaliy Margolen
fa9c11dad3
dinput: Let driver specify default axis mapping.
2009-08-19 12:25:27 +02:00
Vitaliy Margolen
167457efc1
dinput: Evdev joystick driver - add ability to remap axis.
2009-08-19 12:25:18 +02:00
Vitaliy Margolen
3622b2d926
dinput: Rename device axes to direct input axes mapping array to dev_axes_to_di.
2009-08-19 12:25:05 +02:00
Vitaliy Margolen
083d6e8474
dinput: Move setup_dinput_options into common place.
2009-08-19 12:24:52 +02:00
Vitaliy Margolen
1362d15060
dinput: Move axes count into base joystick class.
2009-08-19 12:24:39 +02:00
Vitaliy Margolen
5347ab427a
dinput: Move axes mapping array and default dead-zone into generic joystick class.
2009-08-19 12:24:26 +02:00
Paul TBBle Hampson
98c1c8e741
dinput: Add missing newline to trace message.
2009-04-20 17:20:07 +02:00
Francois Gouget
5ef481922f
Assorted spelling fixes.
2009-04-20 15:25:26 +02:00
Francois Gouget
14e03d770a
dinput: Add a trailing '\n' to ERR() messages.
2009-04-20 15:25:20 +02:00
Vitaliy Margolen
542b17943f
dinput: Use more friendly name for the joystick than its device path.
2009-04-20 14:30:23 +02:00
Vitaliy Margolen
649c762f52
dinput: Convert evdev joystick to new base class.
2009-04-20 14:30:11 +02:00
Vitaliy Margolen
3223798d30
dinput: Make props array a part of the generic joystick struct.
...
It's much easier to free it on release.
2009-04-20 14:30:03 +02:00
Vitaliy Margolen
aee4237798
dinput: Remove redundant stuff.
2009-04-20 14:29:55 +02:00
Vitaliy Margolen
fc4f1607a6
dinput: Make EnumDevices and GetObjectInfo consistent about GUIDs.
...
guidInstance should be the same from both places.
2009-04-20 14:29:49 +02:00
Detlef Riekenberg
5599912e27
dinput/tests: Remove duplicate version dump.
...
We have the version already in the header of the winetest results.
2009-03-30 13:56:54 +02:00
Aric Stewart
79859cb3ac
dinput: OS/X joystick: Sort buttons based on usage as some controllers report the buttons out of order.
...
Makes the xbox 360 controller button mapping more logical.
2009-03-13 13:21:07 +01:00
Francois Gouget
40363a223c
dinput: Add a trailing '\n' to ERR() messages.
...
Also convert a 'smart' quote to a regular quote.
2009-03-12 14:29:56 +01:00
Aric Stewart
6bbec8e660
dinput: OS/X joystick: Check usage page to avoid odd non-button elements found on the 360 controller.
2009-03-12 13:09:53 +01:00
Alexandre Julliard
81f8c03712
configure: Check for IOHIDManagerCreate function that's missing on Tiger.
2009-03-11 16:49:55 +01:00
Aric Stewart
ae16df651f
dinput: Add OS/X sliders.
2009-03-11 13:03:34 +01:00
Aric Stewart
08388a3c9b
dinput: Map OS/X joystick axes so even if they come out of order on the device we recognize them correctly.
2009-03-11 13:03:34 +01:00
Aric Stewart
17daca7648
dinput: OS/X joystick add Rx,Ry,and Rz axes.
2009-03-11 13:03:34 +01:00
Aric Stewart
ffbd6a79a4
dinput: OS/X joystick add GD_X, GD_Y, GD_Z axes.
2009-03-11 13:03:34 +01:00
Aric Stewart
87d61ab21b
dinput: OS/X joystick add POV controls.
2009-03-11 13:03:34 +01:00
Aric Stewart
0e7eba1e3f
dinput: OS/X joystick add axes.
2009-03-11 13:03:34 +01:00
Aric Stewart
225a494d66
dinput: Add Mac OS/X joystick support.
2009-03-11 13:03:33 +01:00
Aric Stewart
5dbe136027
dinput: Create generic joystick Acquire/Unacquire.
2009-03-10 14:40:19 +01:00
Aric Stewart
36f538eb91
dinput: Remove easy redundancy from linuxinput.
2009-03-10 14:40:03 +01:00
Aric Stewart
922b66e354
dinput: Rename Linux-specific joystick functions.
2009-03-10 14:39:49 +01:00
Aric Stewart
e90e7e5b77
dinput: Move joystick mapping functions to the generic part.
2009-03-10 14:39:23 +01:00
Aric Stewart
94a5e0978d
dinput: Move joystick Polling and Device State to the generic part.
2009-03-10 14:39:03 +01:00
Aric Stewart
cbd34748e9
dinput: Move joystick productGuid and Name to the generic part.
2009-03-10 14:38:29 +01:00
Aric Stewart
620839d24e
dinput: Begin joystick separation into a generic module.
2009-03-10 14:38:00 +01:00
Vitaliy Margolen
8dac79d38b
dinput: Add few special cases for key mappings.
2009-03-03 12:35:14 +01:00
Vitaliy Margolen
74f2eccc90
dinput: Let each device decide which hook event to skip.
...
Some programs acquire mouse in exclusive and keyboard in non-exclusive mode.
2009-02-23 12:19:25 +01:00
Vincent Pelletier
7e7970830f
dinput: Fix effect direction conversion from DIEFF_CARTESIAN coordinates.
2009-02-03 12:40:07 +01:00
Vincent Pelletier
befb0a06b1
dinput: Move gain support from effect to device.
2009-02-02 15:21:44 +01:00
Vitaliy Margolen
3743a1a7ca
dinput: Consume mouse & keyboard events in exclusive mode.
2009-02-02 15:21:42 +01:00
Michael Stefaniuc
c0d2a21dd1
dinput: Remove superfluous pointer casts.
2009-01-28 12:30:51 +01:00
Vincent Pelletier
e5abaf9f97
dinput: Clamp lMagnitude to -10000..10000 range.
2009-01-26 14:52:28 +01:00
Vincent Pelletier
15a33ab209
dinput: Fix gain-related bugs.
2009-01-26 14:52:01 +01:00
Vincent Pelletier
5a24b42b30
dinput: Implement auto-center set & get.
2009-01-23 13:44:33 +01:00
Vincent Pelletier
7d0ee98716
dinput: Add test to show that effects are stopped after Unacquire + Acquire and preserved in dinput.
2009-01-22 15:28:23 +01:00
Vincent Pelletier
41be1096c0
dinput: On Unacquire, stop all effects and unload them.
2009-01-22 15:28:23 +01:00
Vincent Pelletier
a0c10c2af2
dinput: Use tested DirectInput version instead of latest.
2009-01-22 15:28:23 +01:00
Vincent Pelletier
ebc2c74f7c
dinput: Test that upload, unacquire, acquire still permits updating uploaded effect.
...
Kudos to Daniel Remenak for his help.
2009-01-21 12:30:20 +01:00
Vincent Pelletier
d2969fef92
dinput: Add effect gain support.
2009-01-20 12:58:14 +01:00
Vincent Pelletier
0ea7dc15f8
dinput: Move WARN where it belongs.
2009-01-19 14:46:24 +01:00
Alexandre Julliard
f6eb03d6c6
dinput: Avoid size_t in traces.
2009-01-08 13:12:08 +01:00
Vitaliy Margolen
f6f52021f8
dinput: Copy device data up to maximum available bytes.
2009-01-08 12:54:54 +01:00
Alexandre Julliard
fffcd23cce
dinput: Fix pointer cast warnings on 64-bit.
2009-01-05 12:39:44 +01:00
Vitaliy Margolen
d2da2d378e
dinput: Allow for holes in device status structure.
2009-01-04 14:59:54 +01:00
Vitaliy Margolen
8b09a8eb9d
dinput: Fix remaining formatting of the find_joydevs().
2008-12-29 11:47:06 +01:00
Vitaliy Margolen
a610cfb64c
dinput: Fix usage of HeapReAlloc.
2008-12-29 11:46:56 +01:00
Vitaliy Margolen
7915569511
dinput: Replace perror with more appropriate ERR and WARN.
2008-12-27 20:24:12 +01:00
Vitaliy Margolen
a179f491fd
dinput: Warn if failed to open device.
2008-12-27 20:23:57 +01:00
Vitaliy Margolen
e0152e85e9
dinput: snprintf zero-terminates string no need to do it explicitly.
2008-12-27 20:23:41 +01:00
Vitaliy Margolen
ae26ca6c28
dinput: Make find_joydevs re-entrant.
2008-12-27 20:23:22 +01:00
Vitaliy Margolen
6e07c7bc14
dinput: Remove DIEnumDevicesCallbackAtoW.
...
It's no longer used.
2008-12-20 11:11:30 +01:00
Hans Leidekker
8bd9a3aa09
janitorial: Don't depend on user32 for the self registration functions.
2008-12-17 11:38:32 +01:00
Vincent Povirk
6ff83ba591
dinput/tests: Fix string format warning.
2008-12-05 12:30:10 +01:00
Alexandre Julliard
9ef1f0fe2e
dinput: Make some functions static.
2008-12-03 12:13:37 +01:00
Vitaliy Margolen
095ba950d6
dinput: Use correct GetObjectInfo for joystick.
2008-12-01 12:45:34 +01:00
Michael Stefaniuc
bb2d8577c3
dinput: Remove superfluous backslashes at end of lines.
2008-10-16 11:28:53 +02:00
Andrew Talbot
c1d5dfe84b
dinput: Sign-compare warnings fix.
2008-09-30 10:57:23 -05:00
Vitaliy Margolen
d939367ac8
dinput: Implement DIPROP_KEYNAME property for keyboard device.
...
Based on patch from Sergey Khodych.
2008-09-15 13:23:13 +02:00
Vitaliy Margolen
5085d4cd35
dinput: Replace strdup with HeapAlloc.
2008-09-15 13:22:28 +02:00
Jim Cameron
f20961d9fa
dinput: Add IID_IUnknown to DICF_CreateInstance(), DirectInputCreateEx().
2008-09-03 14:21:41 +02:00
Vitaliy Margolen
517462cf9a
dinput: Add mouse warp override config option.
2008-08-20 14:05:18 +02:00
Aric Stewart
304ff3c728
dinput: The DIK_ keycode is not the same as the scancode.
...
It is mapped with the keyboard mapping to the resulting character so
the key 'A' is DIK_A nomatter what its scancode or vkey would be. This
is relevant to Japanese keymapping where the '@' key is in the '['
location the scancode for both is 0x22 but dinput generates DIK_AT in
japanese and DIK_LBRACKET in us_qwerty.
2008-08-20 13:58:25 +02:00
Vitaliy Margolen
aa0188cd6f
dinput: Zero the out buffer.
2008-07-28 12:16:34 +02:00
Vitaliy Margolen
a0abf988ac
dinput: Implement saturation property for evdev joystick driver.
2008-07-28 11:32:16 +02:00
Andrew Talbot
0993244b08
dinput: Remove unneeded address-of operators from array names.
2008-07-10 12:19:39 +02:00
Alexandre Julliard
b648dac7e1
dinput: Don't depend on the dxerr8 static library in the tests.
2008-07-08 17:51:46 +02:00
Alexandre Julliard
79c64acc7b
tests: Don't depend on the static uuid libraries in the tests.
...
This avoids trouble with the broken MingW libraries when
cross-compiling the tests.
2008-07-08 17:51:45 +02:00
Vitaliy Margolen
ba1a7ba62a
dinput: Set force feedback actuator flag for X and Y axes.
...
Programs looking for this flag to verify if FF is present. And on which axes.
2008-07-07 12:11:24 +02:00
Vitaliy Margolen
a478c4fe25
dinput: Freed effect should remove itself from the parent's list of effects. Add tests.
2008-07-07 12:11:24 +02:00
Vitaliy Margolen
aa3694d8ac
dinput: Use Wine list for effects list.
2008-07-07 12:11:24 +02:00
Vitaliy Margolen
91036a04a2
dinput: Stop and unload effect when freeing it.
2008-07-07 12:11:24 +02:00
Vitaliy Margolen
85e2aa1d8a
dinput: Add more traces. Prevent some traces from dereferencing NULL pointer.
2008-07-07 12:11:24 +02:00
Vitaliy Margolen
e850b4f13d
dinput: Convert keyboard buffer from internal data format to user data format.
2008-05-28 19:31:59 +02:00
Vitaliy Margolen
f2bdd8d96c
dinput: Clamp joystick position values to min-max range.
2008-05-13 20:25:56 +02:00
Vitaliy Margolen
a37c60b0f7
dinput: Implement GetDeviceStatus.
2008-05-12 11:43:32 +02:00
Vitaliy Margolen
382ed33b7a
dinput: Default value for unassigned POVs should be -1.
2008-05-08 18:14:18 +02:00
Vitaliy Margolen
9227e25660
dinput: Ignore events from extra joystick buttons.
2008-05-07 17:50:50 +02:00
Vitaliy Margolen
bdbc2783a1
dinput: Limit number of axes in a different way - map all extra axes to -1.
...
We can't stop device from sending us extra axes so have to keep axes mapping
around for them.
2008-05-07 17:50:42 +02:00
Vitaliy Margolen
b07ff6ec86
dinput: Remove redundant variable.
2008-05-07 17:49:38 +02:00
Francois Gouget
42a61d7ed7
Assorted spelling fixes.
2008-05-06 16:10:20 +02:00