thefiddler
397bdda076
[Linux] Implemented evdev joystick device discovery
2014-09-18 01:20:21 +02:00
thefiddler
41f1f92cdf
Merge pull request #161 from thefiddler/win_xinput
...
[Win] HID-based IJoystickDriver2; improve XInput2 IGamePadDriver
2014-09-18 01:14:50 +02:00
thefiddler
10dd7e8227
[Input] Special-case pre-SDL2.0.4 xinput bindings
...
Starting with SDL 2.0.4, its xinput bindings are working correctly.
Previous versions would return an invalid zero guid and use incorrect
mapping - this has now been fixed.
2014-09-17 23:48:08 +02:00
thefiddler
4337288d74
[Win] Removed unused code
2014-09-17 18:43:29 +02:00
thefiddler
8237b889c9
[Win] Fixed XInput y-axis and trigger range
2014-09-17 18:42:47 +02:00
thefiddler
ea66a828bf
[Win] Suppressed spurious warning
2014-09-17 18:42:27 +02:00
thefiddler
c29509838d
Merge pull request #176 from Robmaister/develop
...
Added Matrix3[d].Add and Matrix4[d].CreateFromRotationMatrix
2014-09-16 14:17:58 +02:00
thefiddler
73f255ed14
[Input] Fixed bitwise test for GamePadAxes
2014-09-12 10:23:54 +02:00
thefiddler
2df0496c44
[SDL] Correctly byteswap Guid
...
Fixes an issue where GamePad Guids would fail to be matched with the
Guids in the configuration database.
2014-09-12 08:43:20 +02:00
thefiddler
71e5a4f4f3
[Input] Add GamePadCapabilities.IsMapped
2014-09-12 08:42:26 +02:00
Robert Rouhani
7a4dfcf40d
Changed Matrix4[d].CreateFromRotationMatrix to a new constructor.
2014-09-11 12:33:34 -04:00
thefiddler
742149412e
[Input] Fixed button/hat->trigger mapping scale
2014-09-11 12:51:50 +02:00
thefiddler
0735700d50
[Input] Added P880 win32 gamepad configuration
2014-09-11 12:51:50 +02:00
thefiddler
bf9f7c9479
[Input] Fixed trigger ToString()
2014-09-11 12:51:50 +02:00
thefiddler
6c2a6336b5
[Input] Added missing Back button in ToString()
2014-09-11 12:51:50 +02:00
thefiddler
0d4fddd9b4
[Win] Skip devices with too many axes
...
These are likely not joysticks / gamepads, but multitouch-capable HID
devices.
2014-09-11 12:51:50 +02:00
thefiddler
388acee32a
[Win] Correct joystick GUID generation
...
Joystick GUIDs now match SDL2/DirectInput for USB devices. (Bluetooth
devices still need to be tested.)
2014-09-11 12:51:49 +02:00
thefiddler
ec37a9a16d
[Input] Do not throw exception on too many axes
...
A joystick device with more axes/buttons/hats than supported will now
register a warning message instead of throwing an exception.
Fixes an issue with the VMware touch driver, which registers 25 distinct
axes.
2014-09-11 12:51:49 +02:00
thefiddler
f829b3d732
[Win] Fix compilation in Release
2014-09-11 12:51:49 +02:00
thefiddler
8c762e56e3
[Win] Added collection id to dictionary keys
2014-09-11 12:51:49 +02:00
thefiddler
a2d6f1801c
[Win] Improved joystick debugging information
2014-09-11 12:51:49 +02:00
thefiddler
1e5b2e57cd
[Win] Correct XInput axes/button/hat mapping
2014-09-11 12:51:49 +02:00
thefiddler
f81046f27d
[Win] Corrected GUID for xinput devices
2014-09-11 12:51:49 +02:00
thefiddler
0bd6854a65
[Win] Detect xinput devices and use xinput driver
2014-09-11 12:51:49 +02:00
thefiddler
be575d4475
[Win] Refactored UpdateAxes
2014-09-11 12:51:49 +02:00
thefiddler
354fc04614
[Win] Do not change device index when replugging
2014-09-11 12:51:49 +02:00
thefiddler
9efa75179f
[Platform] DeviceCollection hardware id is long
2014-09-11 12:51:49 +02:00
thefiddler
4c411b0b6e
[Win] Retrieve joystick input even on background
2014-09-11 12:51:48 +02:00
thefiddler
dd0f622670
[Win] Do not re-query caps in ProcessEvents
...
We just do that once when a device is opened.
2014-09-11 12:51:48 +02:00
thefiddler
15a79e5213
[Input] Improved GamePadButtons.ToString()
2014-09-11 12:51:48 +02:00
thefiddler
5c0923004a
[Win] Fixed axis, button and hat value updates
2014-09-11 12:51:48 +02:00
thefiddler
e3875527eb
[Win] Fixed axis range calculation
...
Values are now correctly scaled between [min, max]
2014-09-11 12:51:48 +02:00
thefiddler
f010e32570
[Win] Added HidP status codes
2014-09-11 12:51:48 +02:00
thefiddler
cbb2807959
[Win] Implemented joystick button updates
...
Due to the way we segregate axes from buttons, the easiest approach is
to retrieve the current button state via HidP_GetUsages().
Axes, buttons and hats are now allocated sequentially based on their
order of appearance in the device capability reports.
2014-09-11 12:51:48 +02:00
thefiddler
3fee0bd8d0
[Win] Raw input parsing moved to input drivers
2014-09-11 12:51:48 +02:00
thefiddler
a51a85c517
[Win] Added helper raw input methods
2014-09-11 12:51:48 +02:00
thefiddler
6d54edc389
[Win] Use DeviceCollection. Fix GUID detection
2014-09-11 12:51:48 +02:00
thefiddler
db01cac895
[Common] Use long for device keys
2014-09-11 12:51:48 +02:00
thefiddler
a8aabbf02c
[Win] Made internal struct non-public
2014-09-11 12:51:47 +02:00
thefiddler
8fddf8b669
[Win] Fixed axis/button detection
...
We can now discover button range collections.
2014-09-11 12:51:47 +02:00
thefiddler
f3b3b8860e
[Win] Improved HidP bindings
...
Marked arrays with [In] and [Out] as required. Fixes issues with
axis/button capabilities returning empty results.
Added bindings for link collection node transversal.
2014-09-11 12:51:47 +02:00
thefiddler
131de67459
Fixed minor compilation issues
2014-09-11 12:51:47 +02:00
Stefanos A
30d09a4300
[Win] Cleaned up public region
2014-09-11 12:51:47 +02:00
Stefanos A
9a25ddc14d
[Win] Corrected GetRawInputData invocation
2014-09-11 12:51:47 +02:00
Stefanos A
97b0275aa4
[Win] Removed WinMM joystick driver
2014-09-11 12:51:47 +02:00
Stefanos A
cec48ab20a
[Win] Completed raw input IJoystickDriver2
...
For improved safety, we are now using managed memory buffers instead of
stack allocations and pointers.
2014-09-11 12:51:47 +02:00
Stefanos A
f6b382c929
[Win] Reduce duplication in device enumeration
2014-09-11 12:51:47 +02:00
Stefanos A
e38fc0dff7
[Input] Added JoystickCapabilities.SetIsConnected
2014-09-11 12:51:47 +02:00
Stefanos A
27e80fcc9e
[Win] Completed WinRawJoystick implementation
2014-09-11 12:51:46 +02:00
Stefanos A
956691de31
[Win] Fixed RawHID struct definition
2014-09-11 12:51:46 +02:00