Commit Graph

574 Commits

Author SHA1 Message Date
Travis Nickles
28bc7a85b1 Use ref locals to curb array access for KB+M routines
Ref local reassignment is used as well. C# 7.3 is now
the minimum required version of C# that can be used as a
target.
2019-04-16 16:37:11 -05:00
Travis Nickles
480c93be0f Use wrapper method for MapVirtualKey for scan code option
Related to issue #655
2019-04-13 11:58:40 -05:00
Travis Nickles
8cab1f94b2 Tweak sensitivity axis scaling to reach max values
Related to issue #654
2019-04-11 18:01:06 -05:00
mika-n
1e82db0f9e Allow LoadProfile action key to be used without unload trigger in a loadProfile special action definition and without temp profile lockdown. This way loadProfile special actions can be linked to load unlimited number of profiles without unloading (=untrigger) the current temp profile first. 2019-04-07 14:33:42 +03:00
mika-n
746587ebbd Brute force timer fix to the "stuck rumble motor" bug in ViGem virtual gamepad driver. This rumble autostop timer should be removed when a signed ViGem driver has a fix to this issue. Existing autostop timer is 2 secs, so this assumes that game keeps on updating a rumble values at least once in 2 secs. If rumble-0 event is lost or game doesn't send a new rumble value within 2 secs then rumble motor is automagically stopped (=assumed it is stuck). Usually games keep on sending rumble values as long an effect needs it, so this autostop timer works reasonable good in most games. 2019-04-06 15:04:21 +03:00
Travis Nickles
4ec3cd1162 Minor string change 2019-04-03 20:58:32 -05:00
Travis Nickles
cba6a09f68 Disable force feedback for now.
Related to issue #616
2019-04-03 20:39:30 -05:00
Travis Nickles
2e62bad0f6 Revert to older ViGEm client API 2019-04-03 18:12:21 -05:00
Travis Nickles
d9873a7232 Added X360 related enums 2019-04-03 17:35:10 -05:00
Travis Nickles
aff365b28f Updated code to use newer ViGEm.NET client 2019-04-03 16:47:03 -05:00
Travis Nickles
839f03d538 Change to use method rather than property 2019-04-02 01:01:04 -05:00
Travis Nickles
79a90b828c Use runtime option for toggling touchpad.
Related to issue #637.
2019-04-02 00:54:29 -05:00
Travis Nickles
19854a00cf Removed set rumble to zero call for touchpad button up event
Related to issue #615
2019-03-22 16:39:44 -05:00
Travis Nickles
2c4ce7d672 Corrected force feedback motor values on SONYWA sync change 2019-03-22 15:13:18 -05:00
Travis Nickles
36a8382fdd Use SetDevRumble to avoid array checks 2019-03-21 20:56:49 -05:00
Travis Nickles
9614727566 Add feedback received handler before connecting virtual controller 2019-03-21 20:32:17 -05:00
Travis Nickles
d434834d3d Corrected force feedback motor values
Fixes issue #621
2019-03-21 20:25:35 -05:00
Travis Nickles
3e08da9705 Removed old ScpVBus related classes 2019-03-19 02:32:49 -05:00
Travis Nickles
acfd268397 Migrate 360 steering wheel code to use ViGEmBus 2019-03-19 02:18:50 -05:00
Travis Nickles
5a6859556c Removed old xinput ports setting
No longer relevant with ViGEmBus
2019-03-19 01:52:18 -05:00
Travis Nickles
575f157420 Changed method name to specify ViGEmBus 2019-03-19 01:33:41 -05:00
Travis Nickles
1c671e694f Changed branding in some old messages 2019-03-19 01:30:54 -05:00
Travis Nickles
22e212999d Merge branch 'jay' into vigem-udpserver 2019-03-17 21:18:59 -05:00
Travis Nickles
27a68196e4 Deprecate old mouse acceleration option. Make new default value false 2019-03-17 01:28:16 -05:00
Travis Nickles
489a36be00 Merge branch 'jay' into vigem-udpserver 2019-03-12 18:55:35 -05:00
Travis Nickles
a7192d2fbf Force Normal IO and Page Priority
More useful when run as Task but it seems to help normal
runs as well. Related to issue #487.
2019-03-12 16:34:24 -05:00
Travis Nickles
695d9b3e31 Raise SocketAsyncEventArgs buffer for UDP server
Related to issue #602
2019-03-11 12:48:16 -05:00
Travis Nickles
76b31245f8 Default use controller for mapping option to false
This has probably caused issues for other people
2019-03-11 11:54:55 -05:00
Travis Nickles
0ea8cef46e Merge branch 'jay' into vigem-udpserver 2019-03-10 09:33:00 -05:00
Travis Nickles
3bd0e44dc5 Removed unneeded device check 2019-03-08 17:09:36 -06:00
Travis Nickles
f1a10fb5ec Allow flash at to work at 0% battery
Related to issue #599
2019-03-08 14:29:58 -06:00
Travis Nickles
ef01b4d3b3 Altered controller readings to better represent mapped state
Related to issue #587.
2019-03-07 01:06:55 -06:00
Travis Nickles
923f487f39 Added dead check to skip some processes 2019-03-06 02:11:55 -06:00
Travis Nickles
8d4d4b0758 Fixed auto profile use for hotplugging
Related to issue #578
2019-03-05 05:14:39 -06:00
Travis Nickles
1dbf9abb02 Implemented square stick functionality
Related to issue #341.
2019-03-04 17:21:58 -06:00
Travis Nickles
6533585a07 Make sure to stop USB controller while suspending
Related to issue #595
2019-03-03 19:27:57 -06:00
Travis Nickles
425b1dd47a Change haptic changing routine to skip always searching for existing device 2019-03-03 00:35:17 -06:00
Travis Nickles
a4d7372e7b Do not reset custom led setting while switching profiles
Related to issue #596
2019-03-02 05:42:49 -06:00
Travis Nickles
c575b3b525 Merge branch 'jay' into vigem-udpserver
# Conflicts:
#	DS4Windows/DS4Control/ScpUtil.cs
2019-02-28 04:24:03 -06:00
Travis Nickles
231b418d4c Merge branch 'jay' of https://github.com/mika-n/DS4Windows into mika-n-jay 2019-02-27 01:48:27 -06:00
Travis Nickles
d7d593c997 Use implicit extra dead zones for special actions 2019-02-26 04:13:13 -06:00
mika-n
9cbd4d8a42 Updated Finnish resources.fi.resx translation (added missing translations). 2019-02-25 13:35:22 +02:00
mika-n
7026f8b1c4 SASteeringWheelEmulation: Improved deadzone handling (smooth range instead of just dead gap clipping). Fixed a bug in >360 turn range calculations. Small performance improvements. 2019-02-25 13:29:05 +02:00
Travis Nickles
68f8232441 Removed more boxing 2019-02-24 17:11:52 -06:00
Travis Nickles
2497ced5d5 Change main report routine to use custom delegate.
Remove the need to box and unbox data every gamepad poll.
Seems to help with performance.
2019-02-24 15:03:12 -06:00
mika-n
668ecafe6c Check synchronized state of controller before trying to load calibation values (SonyWA connected devices could be in non-sync state without a valid controller MAC address) 2019-02-24 00:27:48 +02:00
Travis Nickles
afea15f38f Output report len is constant
No need to pull from property every poll
2019-02-22 01:51:54 -06:00
mika-n
e70aa452e3 removed unnecessary using System.Draw reference. 2019-02-19 15:29:33 +02:00
mika-n
48bd457d66 merge 2019-02-19 15:19:45 +02:00
mika-n
4b0134faf9 merge 2019-02-19 15:19:10 +02:00
mika-n
7da6b3434a Merge branch 'jay' of https://github.com/Ryochan7/DS4Windows into jay 2019-02-19 15:09:00 +02:00
mika-n
8d087b01ff merge conflicts with base branch 2019-02-19 15:00:17 +02:00
Travis Nickles
a8c722d604 Replace old lock with ReaderWriterLockSlim instance 2019-02-19 04:24:52 -06:00
mika-n
27dbab06c5 Deadzone and anti-deadzone handling (the first rugged version, not perfect yet) and small performance improvements here and there. 2019-02-19 11:10:16 +02:00
Travis Nickles
40278c9d1b Use enumerator for settings iteration 2019-02-16 15:49:36 -06:00
Travis Nickles
a9e7a3cb5b More enumerator usage 2019-02-16 02:50:53 -06:00
Travis Nickles
61a5ab07ea Use enumeartor for KeyCollection as well 2019-02-16 02:25:54 -06:00
Travis Nickles
cd6742cf56 Found faster way to iterate over a ValueCollection 2019-02-16 02:16:56 -06:00
Travis Nickles
50109282f4 Added unchecked region 2019-02-15 21:58:00 -06:00
Travis Nickles
5b19dc76cd Re-added extra default axis mapping pass
Related to issue #579
2019-02-15 18:04:09 -06:00
Travis Nickles
6098c91e29 Use ref for more color struct routines 2019-02-12 01:31:18 -06:00
Travis Nickles
ce0ac67dcd Remove some struct copying from lightbar routine 2019-02-11 23:51:26 -06:00
Travis Nickles
42b75c717a Added unchecked blocks for populating field mapping arrays
Seems to help a lot
2019-02-09 21:33:58 -06:00
Travis Nickles
7631080d87 Add const variables to skip type casting 2019-02-09 11:30:06 -06:00
Travis Nickles
fc40e00846 Only take active binding into account for multiple binds. Fixes ATS profile. 2019-02-09 11:06:31 -06:00
Travis Nickles
49c7ee35cf Make remapping to xinput actions a two pass process again
Related to issue #570
2019-02-08 21:04:08 -06:00
Travis Nickles
e64c7f0455 Fixed double tap interval issue with Multi-Action Button special action
Related to issue #556
2019-02-07 22:56:07 -06:00
Travis Nickles
8c6cfa4c13 Fixed another action getter 2019-02-07 21:00:36 -06:00
Travis Nickles
3dd88e481c Fixed issue with xinput unplug routine on device removal
Related to issue #554
2019-02-07 16:40:24 -06:00
Travis Nickles
ce87d8c212 Added toggle option for Gyro Mouse activation
Not sure about this feature tbh. Related to issue #464.
2019-02-06 21:42:34 -06:00
Travis Nickles
09103dcea8 Use input field mapping instead of output field mapping for refactor 2019-02-01 05:08:53 -06:00
Travis Nickles
dd96beafbe Purged old state mapping code that required dictionary object 2019-01-31 16:19:08 -06:00
Travis Nickles
ff870230a6 Implemented user defined gyro mouse dead zone
Related to issue #338.
2019-01-31 10:59:00 -06:00
Travis Nickles
4a7e233bd1 Fixed bad refactor
Fixes issue #561.
2019-01-31 00:50:37 -06:00
Travis Nickles
7a35ca19cb Fixed sixaxis easeout quad 2019-01-29 22:11:01 -06:00
Travis Nickles
70909bdaa9 Added easeout quad curve option for other axes 2019-01-29 21:50:29 -06:00
Travis Nickles
63f7dcfdce Added easeout quad curves for LS and RS 2019-01-29 21:19:25 -06:00
Travis Nickles
bdea569582 Merge branch 'jay' into vigem-udpserver
# Conflicts:
#	DS4Windows/DS4Control/ScpUtil.cs
2019-01-26 21:34:43 -06:00
Travis Nickles
3fd9c4c612 Merge branch 'jay' into hidguardpropexe 2019-01-25 10:00:53 -06:00
Travis Nickles
0d89170d9c Minor tweaks 2019-01-24 06:20:55 -06:00
Travis Nickles
1a6327ecdc Tweaked a couple of axis midpoint methods. Removed unused method. 2019-01-24 04:54:40 -06:00
Travis Nickles
1f9cf16397 Minor control search optimization 2019-01-24 03:38:21 -06:00
Travis Nickles
719d6a0482 Merge branch 'jay' into vigem-udpserver 2019-01-22 18:05:25 -06:00
Travis Nickles
dc403100f1 Changed another portion to use 128 as stick axis midpoint 2019-01-22 18:04:54 -06:00
Travis Nickles
bf3f10d0ae Apply proposed changes for HG v.1 support 2019-01-18 15:38:13 -06:00
Travis Nickles
f37ac07a22 Merge branch 'jay' into vigem-udpserver 2019-01-13 19:02:22 -06:00
Travis Nickles
5ec6bcb11a Increased mouse stick offset value
Increasing it seems viable now
2019-01-13 15:06:26 -06:00
Travis Nickles
a8a55b46dc Start using 128 as proper axis midpoint. Changed some mapping routines.
Helps with mouse cursor in Civ 4
2019-01-13 13:32:38 -06:00
mika-n
13607ebc7c Merge branch 'jay' of https://github.com/Ryochan7/DS4Windows into jay 2019-01-13 21:26:50 +02:00
mika-n
abadfb137b Fine tuning vJoy output feeder 2019-01-13 21:25:42 +02:00
Travis Nickles
619cbbf53a Merge branch 'jay' into vigem-udpserver 2019-01-11 16:08:19 -06:00
Travis Nickles
2c471e6eff Change how haptic state changes happen 2019-01-10 18:15:14 -06:00
Travis Nickles
9dc23ebfc4 Added log notifications when using Load Profile special action
It now seems doable speed wise. Related to issue #540.
2019-01-07 19:35:30 -06:00
mika-n
853b1ac650 Merge branch 'jay' of https://github.com/Ryochan7/DS4Windows into jay 2019-01-02 21:45:41 +02:00
mika-n
5b49a8ed47 SA steering wheel emulation can now feed VJoy virtual joystick device (analog axies there). This leaves all original X360/DS4 analog axies for other purposes. Useful in games which support mapping controls to more than one controller (for example EurotruckSimulator/AmericalTruckSimulator). 2019-01-02 21:44:15 +02:00
Travis Nickles
23a25bc504 Raised number of ticks possible for analog mouse wheel
Related to issue #518.
2018-12-26 22:27:01 -06:00
Travis Nickles
8ae68ed7cf Use SuppressUnmanagedCodeSecurity attr for InputMethods class 2018-12-23 19:53:52 -06:00
mika-n
4678e14408 merge master branch 2018-12-23 13:14:22 +02:00
Travis Nickles
8be9e66f22 Change priority of bus thread.
Lower priority seems better
2018-12-22 16:41:36 -06:00
Travis Nickles
59dbee7c35 Use current enhanced precision settings for LS 2018-12-15 12:26:52 -06:00