Commit Graph

556 Commits

Author SHA1 Message Date
Travis Nickles
6190ddff9b Change thread affinity of DS4Device objects
Drastically improves performance. Might be able to remove the
need for the separate input thread later.
2017-08-26 04:25:42 -05:00
Travis Nickles
150476d6aa Using directives matter 2017-08-26 00:49:39 -05:00
Travis Nickles
51ba40541a Version 1.4.90 2017-08-25 19:17:21 -05:00
Travis Nickles
ea858feafa Make sure uiContext is available for invoking events 2017-08-25 16:38:17 -05:00
Travis Nickles
33966389a4 Take out async keyword from hotplug routine. Delegate to different thread.
Further testing should be done to make sure there are no
regressions.
2017-08-25 03:59:32 -05:00
Travis Nickles
644c674a27 Remove async usage in method 2017-08-24 23:08:35 -05:00
Travis Nickles
3e217266c5 Remove unnecessary async call. Run in different thread 2017-08-24 21:50:03 -05:00
Travis Nickles
85479184be Make sure profiles list is not rendered while options form is open 2017-08-24 04:29:08 -05:00
Travis Nickles
1f4464271e Random tweak. Minor change drastically increases GUI performance 2017-08-24 01:34:02 -05:00
Travis Nickles
e4365c6c40 Remove timer usage for program scanning 2017-08-23 05:12:36 -05:00
Travis Nickles
51a18545e2 Only refresh ListView once items are added 2017-08-23 04:34:58 -05:00
Travis Nickles
e3f99fb9e3 Minor tweaks 2017-08-23 02:51:09 -05:00
Travis Nickles
123e6a20c0 Minor tweak 2017-08-22 21:13:01 -05:00
Travis Nickles
2ea4967486 Change input key method to return DS4Controls value instead of string 2017-08-22 19:52:32 -05:00
Travis Nickles
0817da3864 Minor tweaks. Use different timer class for some timers.
Take some routines out of the main thread
2017-08-22 17:37:39 -05:00
Travis Nickles
699436565c Reduce latency queue capacity 2017-08-22 05:20:23 -05:00
Travis Nickles
13103ff7a8 Removed references to some unused assemblies 2017-08-22 05:10:19 -05:00
Travis Nickles
5df34b8378 Trim event handler method. Add name for timeout threads.
Decent performance boost with this change
2017-08-21 05:25:18 -05:00
Travis Nickles
dce5c811f2 Raise timeout interval 2017-08-20 22:02:49 -05:00
Travis Nickles
ece7b25f0c Minor tweaks 2017-08-19 18:48:06 -05:00
Travis Nickles
0571f8b663 Version 1.4.89 2017-08-19 18:54:59 -05:00
Travis Nickles
dd1c2eca62 Change touchpad jitter values 2017-08-19 18:39:03 -05:00
Travis Nickles
c03c173f31 Use EaseOutQuad curve for idle disconnect led color
Linear seems to have the led blank too quickly towards the end
2017-08-18 23:33:37 -05:00
Travis Nickles
f0d967cd63 Minor tweak to touchpad jitter compensation code 2017-08-18 20:52:11 -05:00
Travis Nickles
560777710d Use correct bounds for touchpad invert disabling. Allow PS to be selectable.
Resolves issue #108.
2017-08-18 20:50:38 -05:00
Travis Nickles
55b2de6d67 Change touchpad jitter compensation routine 2017-08-18 02:41:37 -05:00
Travis Nickles
3e39d688d4 Minor tweak. Remove one BeginInvoke call in form method. 2017-08-18 02:40:09 -05:00
Travis Nickles
5618bdb270 Minor tweaks 2017-08-16 18:00:44 -05:00
Travis Nickles
28004dfb22 Version 1.4.88 2017-08-16 16:04:41 -05:00
Travis Nickles
684c8a73b2 Minor tweak 2017-08-15 21:27:11 -05:00
Travis Nickles
b7f5e3fb3c Update TaskScheduler version. Change build target to .NET Framework 4.5.2.
.NET Framework 4.5 has been unsupported for some time
2017-08-15 04:40:43 -05:00
Travis Nickles
8f78d5850e Adding new gyro values
Not sure if I will ever use them
2017-08-10 02:45:11 -05:00
Travis Nickles
bd379e5c7e Add new accel fields 2017-08-09 03:24:24 -05:00
Travis Nickles
2ffc51c8e3 Changed variable name to better show current intent 2017-08-08 22:07:52 -05:00
Travis Nickles
8dca930400 Create separate output accel values 2017-08-08 20:19:17 -05:00
Travis Nickles
a32e80fe61 Add offset for touchpad mouse 2017-08-06 20:31:55 -05:00
Travis Nickles
cb599a984f Make touchpad jitter compensation default to false 2017-08-06 19:50:49 -05:00
Travis Nickles
8ae6e062e3 Add experimental touchpad invert disable routine. Raise mouse stick offset 2017-08-04 22:36:46 -05:00
Travis Nickles
4d31294bfb Change build string in about window 2017-08-04 22:25:03 -05:00
Travis Nickles
acb03500a0 Lower mouse speed factor 2017-08-04 06:11:55 -05:00
Travis Nickles
315797fe53 Minor changes to exclusive mode routine 2017-08-04 06:10:48 -05:00
Travis Nickles
22babe9ded Trim hotplug launching routine to speed up main thread 2017-08-01 02:42:59 -05:00
Travis Nickles
f042120ede Add wait period after device is enabled.
Seems to be needed for exclusive mode to behave better
with recent Windows 10 update
2017-08-01 02:42:16 -05:00
Travis Nickles
4af6404b49 Version 1.4.87 2017-07-27 19:47:38 -05:00
Travis Nickles
7f75565aec Rid another unnecessary state copy call. 2017-07-27 07:32:09 -05:00
Travis Nickles
473958ba1a Correct touchpad X coordinate. Change DS4State. 2017-07-27 05:41:44 -05:00
Travis Nickles
60a21a9fe3 Minor changes 2017-07-26 21:38:34 -05:00
Travis Nickles
436d0ed1ef No longer make unnecessary state object copies 2017-07-26 06:13:18 -05:00
Travis Nickles
8250f9be5c Attempt to use timestamp from ds4. Preserve changes. 2017-07-26 04:30:50 -05:00
Travis Nickles
9d88fda0d2 Tweak gyro mouse 2017-07-24 22:55:28 -05:00
Travis Nickles
aab2bb13f4 Add finger on touchpad back as a shift modifier 2017-07-22 20:48:04 -05:00
Yuki-nyan
86d311b72a Merge pull request #5 from Ryochan7/jay
Update to Version 1.4.86
2017-07-21 19:35:49 +01:00
Travis Nickles
a8442d2772 Version 1.4.86 2017-07-20 13:49:55 -05:00
Travis Nickles
3dcd4d94b9 Added clamping for rotation. Fixed bug with identical dict keys 2017-07-20 04:25:15 -05:00
Travis Nickles
1b0ddfd910 Minor changes 2017-07-20 00:57:14 -05:00
Travis Nickles
5a84f8b2e3 Added sixaxis output curve options 2017-07-19 18:17:11 -05:00
Travis Nickles
fd1479f09f Added output curve options for L2 and R2 2017-07-19 15:15:59 -05:00
Travis Nickles
0e8daf05b0 Make sure sixaxis value ratios do not go above 1.0 2017-07-18 20:18:01 -05:00
Travis Nickles
ec130f6156 Add sixaxis anti-deadzone settings 2017-07-18 19:44:55 -05:00
Travis Nickles
7ddd2c1bf5 Add sixaxis max zone setting 2017-07-18 17:28:16 -05:00
Travis Nickles
8eb9d6391f Some optimizations 2017-07-18 15:37:01 -05:00
Travis Nickles
a335decc90 Move accel dead zone calculations 2017-07-18 14:21:03 -05:00
Travis Nickles
8a6ecb9fe0 Correct default BT poll rate option 2017-07-17 17:50:18 -05:00
Travis Nickles
9972e85e13 More minor gyro changes 2017-07-16 19:42:43 -05:00
Travis Nickles
dba2b1bbb3 Tweaks to how imu data is used 2017-07-16 07:11:58 -05:00
Travis Nickles
887a4fbdbd Make imu data part of the DS4State 2017-07-16 03:30:49 -05:00
Travis Nickles
817505a989 Take poll time into account for gyro mouse 2017-07-16 02:22:21 -05:00
Travis Nickles
6e1b9004de Minor optimizations 2017-07-15 08:50:38 -05:00
Travis Nickles
c5158d66c8 Version 1.4.85 2017-07-14 22:58:52 -05:00
Travis Nickles
10621b8c69 Change trackbar value for gyro 2017-07-14 22:41:00 -05:00
Travis Nickles
53b0de087c Allow gyro roll to control mouse x axis. Related to issue #90. 2017-07-14 07:46:45 -05:00
Travis Nickles
56fff28f65 Try to correct some problems with imu data usage 2017-07-13 08:17:00 -05:00
Travis Nickles
c5dd97ebe5 Preserve minor optimizations before next test 2017-07-13 07:27:25 -05:00
Travis Nickles
c0403fa7ab Add touchpad mouse axis inverting. Related to issue #83. 2017-07-12 22:39:46 -05:00
Travis Nickles
6f069482a2 Minor optimizations 2017-07-12 08:04:37 -05:00
Yuki-nyan
48545207b4 Merge pull request #4 from Ryochan7/jay
Update to Version 1.4.84
2017-07-10 00:15:46 +01:00
Travis Nickles
9da0255529 Version 1.4.84 2017-07-04 12:33:28 -05:00
Travis Nickles
25be090c89 Only pop up confirm window when user explicitly closes application. Related to issue #82. 2017-07-03 17:33:45 -05:00
Travis Nickles
9bf937d7b9 Program init changes 2017-07-03 08:31:58 -07:00
Travis Nickles
001f2e5432 Preserve refactor 2017-07-03 01:24:54 -07:00
Travis Nickles
089383b64e Simple comment update 2017-07-02 16:59:35 -07:00
Travis Nickles
eab3cdeaad Change output report for USB and Sony 2017-07-02 16:58:30 -07:00
Travis Nickles
0cf1956566 Change output report for BT 2017-07-02 10:14:15 -07:00
Travis Nickles
4ae72cfdb2 Removed more property usage 2017-07-02 08:29:55 -07:00
Travis Nickles
ee6a7fafd4 Improve response time for BT connections 2017-07-02 02:11:16 -07:00
Travis Nickles
ea69d69a6f Improve response time when using USB and Sony dongle 2017-07-02 01:52:55 -07:00
Travis Nickles
b62b490ff1 Allow Disconnect BT special action to work with Sony dongle connections
This might be temporary
2017-06-30 21:29:20 -07:00
Travis Nickles
2d198d6446 Version 1.4.83 2017-06-30 18:46:48 -07:00
Travis Nickles
d2d72cda9f FIx tooltip text regarding device battery status. Related to issue #78. 2017-06-30 07:01:54 -07:00
Travis Nickles
dbc33d1986 Tweak routine for runtime 2017-06-30 06:46:54 -07:00
Travis Nickles
625483530a Merge branch 'confirm-on-close' of https://github.com/rafsanjani/DS4Windows into rafsanjani-confirm-on-close 2017-06-30 05:53:24 -07:00
Travis Nickles
d74820dbf5 Add rotation routine for LS and RS 2017-06-30 01:42:19 -07:00
Travis Nickles
2fabd860a2 Enable xinput hotplug from a sync change when using Sony dongle 2017-06-29 19:27:08 -07:00
Travis Nickles
b34c258a59 Fix another version comparison 2017-06-29 18:28:36 -07:00
Travis Nickles
3137801a4b Version 1.4.82 2017-06-29 08:11:39 -07:00
Travis Nickles
6c21572249 Minor changes 2017-06-29 06:16:02 -07:00
Travis Nickles
484337f42f Add gyro mouse smoothing routine 2017-06-28 21:42:16 -07:00
Travis Nickles
86816db41a Lower gyro mouse offset 2017-06-27 08:19:55 -07:00
Travis Nickles
5f907de036 Expose full accel values for future experiments 2017-06-27 03:16:10 -07:00
Travis Nickles
2e74fd67c1 Fixed a couple of urls. Resolves issue #75. 2017-06-27 01:57:38 -07:00
Travis Nickles
49024cddaf Tweak gyro mouse variables 2017-06-26 23:38:01 -07:00
Aziz Rafsanjani
dcd5b74472 If 'Close Minimizes' is unchecked then prompt user for confirmation when Main Form is closed 2017-06-25 18:07:48 +00:00
Travis Nickles
6c0a1a94a9 Version 1.4.81 2017-06-24 19:43:46 -07:00
Travis Nickles
4dfb2cf0db Minor performance tweaks for input thread 2017-06-24 19:10:09 -07:00
Travis Nickles
64693190f0 Fix gyro mouse coefficient. Change base gyro mouse settings. 2017-06-24 19:09:03 -07:00
Travis Nickles
588c2d4385 Add vertical scale for gyro mouse mode 2017-06-24 02:52:39 -07:00
Travis Nickles
a4b540d62c Change variable name 2017-06-22 22:30:22 -07:00
Travis Nickles
19afe15937 Make lastActive field matter for USB connections again. Related to issue #45. 2017-06-22 22:14:58 -07:00
Travis Nickles
9f554cf6c1 Minor optimization 2017-06-22 09:02:51 -07:00
Travis Nickles
35031f5c5f Double check that mouse remainders are reset when gyro mouse is not active 2017-06-22 07:36:40 -07:00
Travis Nickles
6eb618a934 Lower gyro deadzone value 2017-06-22 06:49:02 -07:00
Travis Nickles
44aef8b90d Fixed distinction between one finger touchpad touch and two finger touch
Touch 2 being active does not necessarily mean two fingers
are currently on the touchpad
2017-06-22 03:24:51 -07:00
Travis Nickles
2d58034415 Allow gyro button triggers to disable gyro 2017-06-22 00:43:44 -07:00
Travis Nickles
162092800e Add deadzone routine to Gyro mouse
Not sure if this will stay
2017-06-21 21:18:15 -07:00
Travis Nickles
bf774ba6f7 Correct some variables 2017-06-21 18:11:14 -07:00
Travis Nickles
f4302a752d Initial attempt at fixing gyro support. Related to issue #48.
It will be a mess for the forseeable future
2017-06-21 18:07:21 -07:00
Travis Nickles
d6d6f63073 Change some thread priorities 2017-06-19 21:37:08 -07:00
Travis Nickles
08be7f1060 Improve readability. Make sure to reset recordingMacro flag when closing form. 2017-06-19 21:36:36 -07:00
Travis Nickles
328b2dc14c Attempt to smooth out mouse cursor for analog sticks 2017-06-19 08:50:28 -07:00
Travis Nickles
5678ee6cd5 Version 1.4.80 2017-06-18 23:26:46 -07:00
Travis Nickles
2780dc3ac4 Change thread affinity of x360Bus object 2017-06-18 07:07:48 -07:00
Travis Nickles
1f2f9f16db Minor tweaks to improve responsiveness 2017-06-18 03:20:10 -07:00
Travis Nickles
80d0ef7c9b Version 1.4.79 2017-06-17 15:35:41 -07:00
Travis Nickles
fc929d963e Fix mic device and volume detection 2017-06-17 09:06:33 -07:00
Travis Nickles
39930cf2e8 Small change
Hating the JIT compiler right now
2017-06-17 07:13:39 -07:00
Travis Nickles
cd305dc206 Version 1.4.78 2017-06-17 03:14:00 -07:00
Travis Nickles
a473224293 Fix mouse distance offset for negative stick axes 2017-06-17 03:13:33 -07:00
Travis Nickles
18abb8e7a1 Version 1.4.77 2017-06-17 01:56:18 -07:00
Travis Nickles
712f470b9e Change scope of some variables 2017-06-14 07:42:29 -07:00
Travis Nickles
9fd97ee467 Make sure to perform null check before invoking event handler 2017-06-12 06:14:22 -07:00
Travis Nickles
2cf33e1bba Test hotplug changes. Change mouse remainder cutoff 2017-06-11 08:15:45 -07:00
Travis Nickles
7bf43f93f5 Revert to using temporary variables for now 2017-06-10 19:58:30 -07:00
Travis Nickles
1fc77c5537 Take current stick direction into account for mouse offset 2017-06-10 17:48:34 -07:00
Travis Nickles
ab9c3abe05 Move Quick Charge check to input thread 2017-06-09 23:45:19 -07:00
Travis Nickles
e1efb2bb5b Do not need temp profile index for some properties 2017-06-08 14:38:46 -07:00
Travis Nickles
cbee3dd74c Version 1.4.76 2017-06-08 14:29:55 -07:00
Travis Nickles
1c613139ef Use temp arrays to help cache some data 2017-06-08 14:26:50 -07:00
Travis Nickles
63dddf4373 Changes to fix Quick Charge option 2017-06-08 13:52:47 -07:00
Travis Nickles
7b1d7f243f Version 1.4.75 2017-06-08 11:50:41 -07:00
Travis Nickles
9a4fc0476e Change property access 2017-06-08 11:09:05 -07:00
Travis Nickles
54f0f49680 Change tab page text 2017-06-08 11:07:04 -07:00
Travis Nickles
8f0c5d84ac Define output curve ints in the class instead of using temporary variables 2017-06-08 11:01:14 -07:00
Travis Nickles
751e4f4e7a Add initial output curve options 2017-06-08 00:37:04 -07:00
Travis Nickles
cda84e6499 Keep reference to hidden USB device while using BT and charging
Ensures that DS4 USB HID device is not seen by other applications
2017-06-07 17:52:09 -07:00
Travis Nickles
ce0ac4f04a Make sure multi-action button can work with touchpad area button 2017-06-05 01:31:29 -07:00
Travis Nickles
2583361e46 Notify text refactor
Making into a separate commit for future inspection
2017-06-05 01:29:02 -07:00
Travis Nickles
e207114339 Test using Queue instead of List for Latency stats
The Queue version is faster
2017-06-04 19:14:44 -07:00
Travis Nickles
5c5e983ec1 Make sure to update tray icon text 2017-06-04 19:13:14 -07:00
Travis Nickles
31f1382245 Change when sleep is run for device removal 2017-06-03 15:35:13 -07:00
Travis Nickles
6d4527a4c6 Use SpinWait instead of Sleep for Exclusive mode routine 2017-06-03 15:16:59 -07:00
Travis Nickles
12454b6657 Version 1.4.74 2017-06-02 22:33:48 -07:00
Travis Nickles
95495c7585 Do not launch program with profile twice for auto profiles
Related to issue #50.
2017-06-03 03:20:46 -07:00
Travis Nickles
4b0e3dee62 Corrected some control identifiers 2017-06-01 22:58:01 -07:00
Travis Nickles
f61cd593c5 Add timeout test to allow fallback disconnect method to work 2017-05-31 20:37:53 -07:00
Travis Nickles
f7d3d1bf47 Cut off mouse remainders 2017-05-31 14:09:16 -07:00
Travis Nickles
5062e769ec Add initial offset for mouse actions bound to analog sticks
Use magic constant for now. Maybe this will be exposed as a setting
in the future
2017-05-31 13:06:52 -07:00
Travis Nickles
4a642db6e2 Change mouse actions for LS and RS to take poll time into account
Make sure speed stays consistent no matter which connection
type is used
2017-05-31 00:47:13 -07:00
Travis Nickles
0086b953e3 Move lightbar color change to execute later 2017-05-30 15:00:23 -07:00
Travis Nickles
24689aa701 Calculate lightbar color after interacting with ScpVBus 2017-05-29 19:28:21 -07:00
Travis Nickles
ba4bd72755 Minor updates for lightbar dimming 2017-05-27 07:05:46 -07:00
Travis Nickles
f5f0b8fe93 Version 1.4.73 2017-05-26 20:19:45 -07:00
Travis Nickles
05fd7316cf Keep small snippet for future reference 2017-05-26 20:14:48 -07:00
Travis Nickles
de8f1ae354 Change order of syncchange invoking 2017-05-26 19:03:35 -07:00
Travis Nickles
c781082425 Add DateTime fields to SpecialAction 2017-05-26 18:57:46 -07:00
Travis Nickles
312d3b433e Change variable name and revert 2017-05-25 03:01:07 -07:00
Travis Nickles
c7a840194c Fix check for sync byte 2017-05-25 02:56:36 -07:00
Travis Nickles
5a0fb09291 Update serial for Sony dongle connection upon sync event
Related to issue #44.
2017-05-25 02:51:28 -07:00
Travis Nickles
1c6add01eb Change to allow multiple multi-action button actions to work
Related to issue #34
2017-05-22 08:06:20 -07:00
Travis Nickles
17a9b6c9ac Version 1.4.72 2017-05-20 13:31:30 -07:00
Travis Nickles
f65897a4d6 Add tooltip for use controller for mapping controls 2017-05-20 19:00:23 -07:00
Travis Nickles
aa0e0fce50 Fix index out of bounds error 2017-05-20 18:56:11 -07:00
Travis Nickles
59d30bcf3a Minor code tweaks. Change event handler usage for lVActions. 2017-05-20 03:38:12 -07:00
Travis Nickles
4be1829c91 Code clean up. Reduce property usage for controller readout. 2017-05-19 21:59:47 -07:00
Travis Nickles
c6adcc7d79 Version 1.4.71 2017-05-19 18:03:01 -07:00
Travis Nickles
4c99cfd7cf Update source and donation links 2017-05-19 17:53:57 -07:00
Travis Nickles
f9de32e184 Use proper index for dinput only flag 2017-05-18 18:16:08 -07:00
Travis Nickles
1e2c57a08a Minor optimizations 2017-05-18 17:51:01 -07:00
Travis Nickles
b3bd007219 Use proper xinput index on hotplug. Fix bad copy paste job 2017-05-18 16:33:37 -07:00
Travis Nickles
1ef0b04dbc Fixed bug with code executing with no user input
This should not be happening in the first place
2017-05-17 10:59:49 -07:00
Travis Nickles
84fdb26d18 Reset old backstore profile values before loading new profile values 2017-05-17 06:11:32 -07:00
Travis Nickles
b370d57bc3 Make Import Profile button enabled at all times 2017-05-17 02:10:15 -07:00
Travis Nickles
2b741533bb Minor optimizations 2017-05-17 01:59:09 -07:00
Travis Nickles
1958f082c5 Change battery status change reporting 2017-05-17 00:57:06 -07:00
Travis Nickles
ac23921978 Allow BT poll rate to be specified. Use thread action queue now. Some bug fixes 2017-05-16 23:02:12 -07:00
Travis Nickles
9b78668935 Test new action invocation on input threads.
Only used to transfer idle disconnect time but
it might be more useful in the future.
2017-05-13 19:31:39 -07:00
Travis Nickles
b1c640eaa1 Enforce Launch Program with Profile during a hotplug event 2017-05-13 16:47:54 -07:00
Travis Nickles
d02317b5a4 Minor code clean up 2017-05-13 16:47:04 -07:00
Travis Nickles
bca7850a36 Stop using Async methods for FileStream instance. Reduce CPU usage. Initial thread action queue.
No longer uses an application set timeout but it looks like
a timeout will be handled by the system
2017-05-13 15:01:43 -07:00
Travis Nickles
7a1b382c5a Code clean up 2017-05-12 22:54:29 -07:00
Travis Nickles
959966b15c Version 1.4.70 2017-05-12 20:59:23 -07:00
Yuki-nyan
2c2a7c1f2c Merge pull request #3 from Ryochan7/jay
Update to Version 1.4.70
2017-05-12 23:21:44 +01:00
Travis Nickles
edeaa30b59 Code clean up. Reset xinput mapping for more bound actions. 2017-05-12 07:48:58 -07:00
Yuki-nyan
e3f1d9dc1d Nacon Revolution Pro support 2017-05-12 00:57:02 +01:00
Travis Nickles
f3c9e08398 Minor changes 2017-05-11 08:13:51 -07:00
Travis Nickles
81b54a7dd9 Change plugin and unplug routines with ScpVBus 2017-05-11 06:41:18 -07:00
Travis Nickles
72108184d0 Do not auto launch program when starting DS4Windows 2017-05-10 00:31:12 -07:00
Travis Nickles
298ca21424 Version 1.4.69 2017-05-09 17:27:17 -07:00
Travis Nickles
e620dce4b9 Minor clean up 2017-05-09 17:23:51 -07:00
Travis Nickles
7e61f52dd1 Launch new task for Launch Program with Profile 2017-05-09 16:34:56 -07:00
Travis Nickles
0e6514a072 Fixed reverse 360 button mapping generation
Share and Options were not being mapped properly.
Resolves issue #33.
2017-05-09 07:53:10 -07:00