mirror of
https://github.com/cemu-project/DS4Windows.git
synced 2024-12-24 15:41:49 +01:00
Added analog stick deadzone, truly added trigger deadzones
This commit is contained in:
parent
ac2498bdf2
commit
268defb6b9
@ -468,56 +468,56 @@ namespace DS4Control
|
||||
case X360Controls.LXNeg:
|
||||
if (LXChanged)
|
||||
{
|
||||
MappedState.LX = getXYAxisMapping(customButton.Key, cState);
|
||||
MappedState.LX = getXYAxisMapping(customButton.Key, cState, device);
|
||||
LX = true;
|
||||
}
|
||||
break;
|
||||
case X360Controls.LYNeg:
|
||||
if (LYChanged)
|
||||
{
|
||||
MappedState.LY = getXYAxisMapping(customButton.Key, cState);
|
||||
MappedState.LY = getXYAxisMapping(customButton.Key, cState, device);
|
||||
LY = true;
|
||||
}
|
||||
break;
|
||||
case X360Controls.RXNeg:
|
||||
if (RXChanged)
|
||||
{
|
||||
MappedState.RX = getXYAxisMapping(customButton.Key, cState);
|
||||
MappedState.RX = getXYAxisMapping(customButton.Key, cState, device);
|
||||
RX = true;
|
||||
}
|
||||
break;
|
||||
case X360Controls.RYNeg:
|
||||
if (RYChanged)
|
||||
{
|
||||
MappedState.RY = getXYAxisMapping(customButton.Key, cState);
|
||||
MappedState.RY = getXYAxisMapping(customButton.Key, cState, device);
|
||||
RY = true;
|
||||
}
|
||||
break;
|
||||
case X360Controls.LXPos:
|
||||
if (LXChanged)
|
||||
{
|
||||
MappedState.LX = getXYAxisMapping(customButton.Key, cState, true);
|
||||
MappedState.LX = getXYAxisMapping(customButton.Key, cState, device, true);
|
||||
LX = true;
|
||||
}
|
||||
break;
|
||||
case X360Controls.LYPos:
|
||||
if (LYChanged)
|
||||
{
|
||||
MappedState.LY = getXYAxisMapping(customButton.Key, cState, true);
|
||||
MappedState.LY = getXYAxisMapping(customButton.Key, cState, device, true);
|
||||
LY = true;
|
||||
}
|
||||
break;
|
||||
case X360Controls.RXPos:
|
||||
if (RXChanged)
|
||||
{
|
||||
MappedState.RX = getXYAxisMapping(customButton.Key, cState, true);
|
||||
MappedState.RX = getXYAxisMapping(customButton.Key, cState, device, true);
|
||||
RX = true;
|
||||
}
|
||||
break;
|
||||
case X360Controls.RYPos:
|
||||
if (RYChanged)
|
||||
{
|
||||
MappedState.RY = getXYAxisMapping(customButton.Key, cState, true);
|
||||
MappedState.RY = getXYAxisMapping(customButton.Key, cState, device, true);
|
||||
RY = true;
|
||||
}
|
||||
break;
|
||||
@ -614,32 +614,32 @@ namespace DS4Control
|
||||
switch (control)
|
||||
{
|
||||
case DS4Controls.LXNeg:
|
||||
axisVal = cState.LX;
|
||||
axisVal = (byte)cState.LX;
|
||||
break;
|
||||
case DS4Controls.LXPos:
|
||||
positive = true;
|
||||
axisVal = cState.LX;
|
||||
axisVal = (byte)cState.LX;
|
||||
break;
|
||||
case DS4Controls.RXNeg:
|
||||
axisVal = cState.RX;
|
||||
axisVal = (byte)cState.RX;
|
||||
break;
|
||||
case DS4Controls.RXPos:
|
||||
positive = true;
|
||||
axisVal = cState.RX;
|
||||
axisVal = (byte)cState.RX;
|
||||
break;
|
||||
case DS4Controls.LYNeg:
|
||||
axisVal = cState.LY;
|
||||
axisVal = (byte)cState.LY;
|
||||
break;
|
||||
case DS4Controls.LYPos:
|
||||
positive = true;
|
||||
axisVal = cState.LY;
|
||||
axisVal = (byte)cState.LY;
|
||||
break;
|
||||
case DS4Controls.RYNeg:
|
||||
axisVal = cState.RY;
|
||||
axisVal = (byte)cState.RY;
|
||||
break;
|
||||
case DS4Controls.RYPos:
|
||||
positive = true;
|
||||
axisVal = cState.RY;
|
||||
axisVal = (byte)cState.RY;
|
||||
break;
|
||||
case DS4Controls.Share: axisVal = (byte)(cState.Share ? -Global.getButtonMouseSensitivity(device) + 117 : -1); break;
|
||||
case DS4Controls.Options: axisVal = (byte)(cState.Options ? -Global.getButtonMouseSensitivity(device) + 117 : -1); break;
|
||||
@ -656,8 +656,8 @@ namespace DS4Control
|
||||
case DS4Controls.Square: axisVal = (byte)(cState.Square ? -Global.getButtonMouseSensitivity(device) + 117 : -1); break;
|
||||
case DS4Controls.Triangle: axisVal = (byte)(cState.Triangle ? -Global.getButtonMouseSensitivity(device) + 117 : -1); break;
|
||||
case DS4Controls.Circle: axisVal = (byte)(cState.Circle ? -Global.getButtonMouseSensitivity(device) + 117 : -1); break;
|
||||
case DS4Controls.L2: positive = true; axisVal = cState.L2; break;
|
||||
case DS4Controls.R2: positive = true; axisVal = cState.R2; break;
|
||||
case DS4Controls.L2: positive = true; axisVal = (byte)cState.L2; break;
|
||||
case DS4Controls.R2: positive = true; axisVal = (byte)cState.R2; break;
|
||||
}
|
||||
axisVal = axisVal - 127;
|
||||
int delta = 0;
|
||||
@ -678,6 +678,7 @@ namespace DS4Control
|
||||
}
|
||||
|
||||
static bool[] touchArea = { true, true, true, true };
|
||||
|
||||
public static byte getByteMapping(DS4Controls control, DS4State cState)
|
||||
{
|
||||
if (!cState.TouchButton)
|
||||
@ -711,16 +712,16 @@ namespace DS4Control
|
||||
case DS4Controls.Square: return (byte)(cState.Square ? 255 : 0);
|
||||
case DS4Controls.Triangle: return (byte)(cState.Triangle ? 255 : 0);
|
||||
case DS4Controls.Circle: return (byte)(cState.Circle ? 255 : 0);
|
||||
case DS4Controls.LXNeg: return cState.LX;
|
||||
case DS4Controls.LYNeg: return cState.LY;
|
||||
case DS4Controls.RXNeg: return cState.RX;
|
||||
case DS4Controls.RYNeg: return cState.RY;
|
||||
case DS4Controls.LXNeg: return (byte)cState.LX;
|
||||
case DS4Controls.LYNeg: return (byte)cState.LY;
|
||||
case DS4Controls.RXNeg: return (byte)cState.RX;
|
||||
case DS4Controls.RYNeg: return (byte)cState.RY;
|
||||
case DS4Controls.LXPos: return (byte)(cState.LX - 127 < 0 ? 0 : (cState.LX - 127));
|
||||
case DS4Controls.LYPos: return (byte)(cState.LY - 123 < 0 ? 0 : (cState.LY - 123));
|
||||
case DS4Controls.RXPos: return (byte)(cState.RX - 125 < 0 ? 0 : (cState.RX - 125));
|
||||
case DS4Controls.RYPos: return (byte)(cState.RY - 127 < 0 ? 0 : (cState.RY - 127));
|
||||
case DS4Controls.L2: return cState.L2;
|
||||
case DS4Controls.R2: return cState.R2;
|
||||
case DS4Controls.RXPos: return (byte)(cState.RX - 129 < 0 ? 0 : (cState.RX - 125));
|
||||
case DS4Controls.RYPos: return (byte)(cState.RY - 125 < 0 ? 0 : (cState.RY - 127));
|
||||
case DS4Controls.L2: return (byte)cState.L2;
|
||||
case DS4Controls.R2: return (byte)cState.R2;
|
||||
}
|
||||
if (cState.TouchButton)
|
||||
{
|
||||
@ -772,14 +773,14 @@ namespace DS4Control
|
||||
case DS4Controls.Square: return cState.Square;
|
||||
case DS4Controls.Triangle: return cState.Triangle;
|
||||
case DS4Controls.Circle: return cState.Circle;
|
||||
case DS4Controls.LXNeg: return cState.LX < 55;
|
||||
case DS4Controls.LYNeg: return cState.LY < 55;
|
||||
case DS4Controls.RXNeg: return cState.RX < 55;
|
||||
case DS4Controls.RYNeg: return cState.RY < 55;
|
||||
case DS4Controls.LXPos: return cState.LX > 200;
|
||||
case DS4Controls.LYPos: return cState.LY > 200;
|
||||
case DS4Controls.RXPos: return cState.RX > 200;
|
||||
case DS4Controls.RYPos: return cState.RY > 200;
|
||||
case DS4Controls.LXNeg: return cState.LX < 127 - 55;
|
||||
case DS4Controls.LYNeg: return cState.LY < 127 - 55;
|
||||
case DS4Controls.RXNeg: return cState.RX < 127 - 55;
|
||||
case DS4Controls.RYNeg: return cState.RY < 127 - 55;
|
||||
case DS4Controls.LXPos: return cState.LX > 127 + 55;
|
||||
case DS4Controls.LYPos: return cState.LY > 127 + 55;
|
||||
case DS4Controls.RXPos: return cState.RX > 127 + 55;
|
||||
case DS4Controls.RYPos: return cState.RY > 127 + 55;
|
||||
case DS4Controls.L2: return cState.L2 > 100;
|
||||
case DS4Controls.R2: return cState.R2 > 100;
|
||||
|
||||
@ -802,7 +803,7 @@ namespace DS4Control
|
||||
return false;
|
||||
}
|
||||
|
||||
public static byte getXYAxisMapping(DS4Controls control, DS4State cState, bool alt = false)
|
||||
public static byte getXYAxisMapping(DS4Controls control, DS4State cState, int ind, bool alt = false)
|
||||
{
|
||||
byte trueVal = 0;
|
||||
byte falseVal = 127;
|
||||
@ -853,9 +854,13 @@ namespace DS4Control
|
||||
case DS4Controls.LYNeg: return cState.LY;
|
||||
case DS4Controls.RXNeg: return cState.RX;
|
||||
case DS4Controls.RYNeg: return cState.RY;
|
||||
//case DS4Controls.LXPos: return (byte)(cState.LX - 127 < Global.getLSDeadzone(ind) ? 0 : (255 - cState.LX));
|
||||
//case DS4Controls.LYPos: return (byte)(cState.LY - 127 < Global.getLSDeadzone(ind) ? 0 : (255 - cState.LY));
|
||||
case DS4Controls.RXPos: return (byte)(cState.RX - 127 < 55 ? 0 : (255 - cState.RX));
|
||||
//case DS4Controls.RYPos: return (byte)(cState.RY - 127 < Global.getRSDeadzone(ind) ? 0 : (255 - cState.RY));
|
||||
case DS4Controls.LXPos: return (byte)(255 - cState.LX);
|
||||
case DS4Controls.LYPos: return (byte)(255 - cState.LY);
|
||||
case DS4Controls.RXPos: return (byte)(255 - cState.RX);
|
||||
//case DS4Controls.RXPos: return (byte)(255 - cState.RX);
|
||||
case DS4Controls.RYPos: return (byte)(255 - cState.RY);
|
||||
}
|
||||
}
|
||||
@ -865,7 +870,7 @@ namespace DS4Control
|
||||
{
|
||||
case DS4Controls.LXNeg: return (byte)(255 - cState.LX);
|
||||
case DS4Controls.LYNeg: return (byte)(255 - cState.LY);
|
||||
case DS4Controls.RXNeg: return (byte)(255 - cState.RX);
|
||||
case DS4Controls.RXNeg: return (byte)(cState.RX > 55 ? 0 : (255 - cState.RX));
|
||||
case DS4Controls.RYNeg: return (byte)(255 - cState.RY);
|
||||
case DS4Controls.LXPos: return cState.LX;
|
||||
case DS4Controls.LYPos: return cState.LY;
|
||||
|
@ -294,19 +294,34 @@ namespace DS4Control
|
||||
{
|
||||
return m_Config.m_LeftTriggerMiddle[device];
|
||||
}
|
||||
public static void setLeftTriggerMiddle(int device, double value)
|
||||
public static void setLeftTriggerMiddle(int device, byte value)
|
||||
{
|
||||
m_Config.m_LeftTriggerMiddle[device] = value;
|
||||
}
|
||||
|
||||
public static double getRightTriggerMiddle(int device)
|
||||
{
|
||||
return m_Config.m_RightTriggerMiddle[device];
|
||||
}
|
||||
public static void setRightTriggerMiddle(int device, double value)
|
||||
public static void setRightTriggerMiddle(int device, byte value)
|
||||
{
|
||||
m_Config.m_RightTriggerMiddle[device] = value;
|
||||
}
|
||||
public static byte getLSDeadzone(int device)
|
||||
{
|
||||
return m_Config.LSDeadzone[device];
|
||||
}
|
||||
public static void setLSDeadzone(int device, byte value)
|
||||
{
|
||||
m_Config.LSDeadzone[device] = value;
|
||||
}
|
||||
public static byte getRSDeadzone(int device)
|
||||
{
|
||||
return m_Config.RSDeadzone[device];
|
||||
}
|
||||
public static void setRSDeadzone(int device, byte value)
|
||||
{
|
||||
m_Config.RSDeadzone[device] = value;
|
||||
}
|
||||
public static void setAProfile(int device, string filepath)
|
||||
{
|
||||
m_Config.profilePath[device] = Global.appdatapath + @"\Profiles\" + filepath + ".xml";
|
||||
@ -400,11 +415,12 @@ namespace DS4Control
|
||||
public Boolean[] lowerRCOn = { false, false, false, false };
|
||||
public Boolean[] ledAsBattery = { false, false, false, false };
|
||||
public Boolean[] flashLedLowBattery = { false, false, false, false };
|
||||
public double[] m_LeftTriggerMiddle = { 0.5, 0.5, 0.5, 0.5 }, m_RightTriggerMiddle = { 0.5, 0.5, 0.5, 0.5 };
|
||||
public Byte[] m_LeftTriggerMiddle = { 0, 0, 0, 0 }, m_RightTriggerMiddle = { 0, 0, 0, 0 };
|
||||
public String[] profilePath = { String.Empty, String.Empty, String.Empty, String.Empty };
|
||||
public Byte[] m_Rumble = { 100, 100, 100, 100 };
|
||||
public Byte[] touchSensitivity = { 100, 100, 100, 100 };
|
||||
public Byte[] tapSensitivity = {0, 0, 0, 0};
|
||||
public Byte[] LSDeadzone = { 0, 0, 0, 0 }, RSDeadzone = { 0, 0, 0, 0 };
|
||||
public Byte[] tapSensitivity = { 0, 0, 0, 0 };
|
||||
public bool[] doubleTap = { false, false, false, false };
|
||||
public int[] scrollSensitivity = { 0, 0, 0, 0 };
|
||||
public double[] rainbow = { 0, 0, 0, 0 };
|
||||
@ -438,11 +454,9 @@ namespace DS4Control
|
||||
{
|
||||
for (int i = 0; i < 4; i++)
|
||||
{
|
||||
{
|
||||
customMapKeyTypes[i] = new Dictionary<DS4Controls, DS4KeyType>();
|
||||
customMapKeys[i] = new Dictionary<DS4Controls, UInt16>();
|
||||
customMapButtons[i] = new Dictionary<DS4Controls, X360Controls>();
|
||||
}
|
||||
customMapKeyTypes[i] = new Dictionary<DS4Controls, DS4KeyType>();
|
||||
customMapKeys[i] = new Dictionary<DS4Controls, UInt16>();
|
||||
customMapButtons[i] = new Dictionary<DS4Controls, X360Controls>();
|
||||
}
|
||||
}
|
||||
|
||||
@ -508,6 +522,8 @@ namespace DS4Control
|
||||
XmlNode xmlRightTriggerMiddle = m_Xdoc.CreateNode(XmlNodeType.Element, "RightTriggerMiddle", null); xmlRightTriggerMiddle.InnerText = m_RightTriggerMiddle[device].ToString(); Node.AppendChild(xmlRightTriggerMiddle);
|
||||
XmlNode xmlButtonMouseSensitivity = m_Xdoc.CreateNode(XmlNodeType.Element, "ButtonMouseSensitivity", null); xmlButtonMouseSensitivity.InnerText = buttonMouseSensitivity[device].ToString(); Node.AppendChild(xmlButtonMouseSensitivity);
|
||||
XmlNode xmlRainbow = m_Xdoc.CreateNode(XmlNodeType.Element, "Rainbow", null); xmlRainbow.InnerText = rainbow[device].ToString(); Node.AppendChild(xmlRainbow);
|
||||
XmlNode xmlLSD = m_Xdoc.CreateNode(XmlNodeType.Element, "LSDeadZone", null); xmlLSD.InnerText = LSDeadzone[device].ToString(); Node.AppendChild(xmlLSD);
|
||||
XmlNode xmlRSD = m_Xdoc.CreateNode(XmlNodeType.Element, "RSDeadZone", null); xmlRSD.InnerText = RSDeadzone[device].ToString(); Node.AppendChild(xmlRSD);
|
||||
|
||||
XmlNode NodeControl = m_Xdoc.CreateNode(XmlNodeType.Element, "Control", null);
|
||||
|
||||
@ -714,14 +730,18 @@ namespace DS4Control
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/scrollSensitivity"); Int32.TryParse(Item.InnerText, out scrollSensitivity[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/LeftTriggerMiddle"); Double.TryParse(Item.InnerText, out m_LeftTriggerMiddle[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/LeftTriggerMiddle"); Byte.TryParse(Item.InnerText, out m_LeftTriggerMiddle[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/RightTriggerMiddle"); Double.TryParse(Item.InnerText, out m_RightTriggerMiddle[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/RightTriggerMiddle"); Byte.TryParse(Item.InnerText, out m_RightTriggerMiddle[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/ButtonMouseSensitivity"); Int32.TryParse(Item.InnerText, out buttonMouseSensitivity[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/Rainbow"); Double.TryParse(Item.InnerText, out rainbow[device]); }
|
||||
catch { rainbow[device] = 0; missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/LSDeadZone"); Byte.TryParse(Item.InnerText, out LSDeadzone[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/RSDeadZone"); Byte.TryParse(Item.InnerText, out RSDeadzone[device]); }
|
||||
catch { missingSetting = true; }
|
||||
|
||||
DS4KeyType keyType;
|
||||
UInt16 wvk;
|
||||
@ -859,14 +879,18 @@ namespace DS4Control
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/scrollSensitivity"); Int32.TryParse(Item.InnerText, out scrollSensitivity[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/LeftTriggerMiddle"); Double.TryParse(Item.InnerText, out m_LeftTriggerMiddle[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/LeftTriggerMiddle"); Byte.TryParse(Item.InnerText, out m_LeftTriggerMiddle[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/RightTriggerMiddle"); Double.TryParse(Item.InnerText, out m_RightTriggerMiddle[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/RightTriggerMiddle"); Byte.TryParse(Item.InnerText, out m_RightTriggerMiddle[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/ButtonMouseSensitivity"); Int32.TryParse(Item.InnerText, out buttonMouseSensitivity[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/Rainbow"); Double.TryParse(Item.InnerText, out rainbow[device]); }
|
||||
catch { rainbow[device] = 0; missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/LSDeadZone"); Byte.TryParse(Item.InnerText, out LSDeadzone[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/RSDeadZone"); Byte.TryParse(Item.InnerText, out RSDeadzone[device]); }
|
||||
catch { missingSetting = true; }
|
||||
|
||||
DS4KeyType keyType;
|
||||
UInt16 wvk;
|
||||
|
@ -129,25 +129,36 @@ namespace DS4Control
|
||||
|
||||
if (state.PS) Output[11] |= (Byte)(1 << 2); // Guide
|
||||
|
||||
Output[12] = state.L2; // Left Trigger
|
||||
Output[13] = state.R2; // Right Trigger
|
||||
if (state.L2 > Global.getLeftTriggerMiddle(device))
|
||||
Output[12] = state.L2; // Left Trigger
|
||||
if (state.R2 > Global.getRightTriggerMiddle(device))
|
||||
Output[13] = state.R2; // Right Trigger
|
||||
|
||||
Int32 ThumbLX = Scale(state.LX, false);
|
||||
Int32 ThumbLY = -Scale(state.LY, false);
|
||||
Int32 ThumbRX = Scale(state.RX, false);
|
||||
Int32 ThumbRY = -Scale(state.RY, false);
|
||||
if (state.LX > 127 + Global.getLSDeadzone(device) || state.LX < 127 - Global.getLSDeadzone(device))
|
||||
{
|
||||
Output[14] = (Byte)((ThumbLX >> 0) & 0xFF); // LX
|
||||
Output[15] = (Byte)((ThumbLX >> 8) & 0xFF);
|
||||
}
|
||||
if (state.LY > 127 + Global.getLSDeadzone(device) || state.LY < 127 - Global.getLSDeadzone(device))
|
||||
{
|
||||
Output[16] = (Byte)((ThumbLY >> 0) & 0xFF); // LY
|
||||
Output[17] = (Byte)((ThumbLY >> 8) & 0xFF);
|
||||
}
|
||||
|
||||
Output[14] = (Byte)((ThumbLX >> 0) & 0xFF); // LX
|
||||
Output[15] = (Byte)((ThumbLX >> 8) & 0xFF);
|
||||
|
||||
Output[16] = (Byte)((ThumbLY >> 0) & 0xFF); // LY
|
||||
Output[17] = (Byte)((ThumbLY >> 8) & 0xFF);
|
||||
|
||||
Output[18] = (Byte)((ThumbRX >> 0) & 0xFF); // RX
|
||||
Output[19] = (Byte)((ThumbRX >> 8) & 0xFF);
|
||||
|
||||
Output[20] = (Byte)((ThumbRY >> 0) & 0xFF); // RY
|
||||
Output[21] = (Byte)((ThumbRY >> 8) & 0xFF);
|
||||
if (state.RX > 127 + Global.getRSDeadzone(device) || state.RX < 127 - Global.getRSDeadzone(device))
|
||||
{
|
||||
Output[18] = (Byte)((ThumbRX >> 0) & 0xFF); // RX
|
||||
Output[19] = (Byte)((ThumbRX >> 8) & 0xFF);
|
||||
}
|
||||
if (state.LY > 127 + Global.getLSDeadzone(device) || state.RY < 127 - Global.getRSDeadzone(device))
|
||||
{
|
||||
Output[20] = (Byte)((ThumbRY >> 0) & 0xFF); // RY
|
||||
Output[21] = (Byte)((ThumbRY >> 8) & 0xFF);
|
||||
}
|
||||
}
|
||||
|
||||
public Boolean Plugin(Int32 Serial)
|
||||
|
146
DS4Tool/Options.Designer.cs
generated
146
DS4Tool/Options.Designer.cs
generated
@ -134,6 +134,10 @@
|
||||
this.tBProfile = new System.Windows.Forms.TextBox();
|
||||
this.btnSaveProfile = new System.Windows.Forms.Button();
|
||||
this.lBSeperator = new System.Windows.Forms.Label();
|
||||
this.numUDLS = new System.Windows.Forms.NumericUpDown();
|
||||
this.lbRS = new System.Windows.Forms.Label();
|
||||
this.lbLS = new System.Windows.Forms.Label();
|
||||
this.numUDRS = new System.Windows.Forms.NumericUpDown();
|
||||
this.advColorDialog = new ScpServer.AdvancedColorDialog();
|
||||
this.MainPanel.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pBController)).BeginInit();
|
||||
@ -167,6 +171,8 @@
|
||||
this.lowBatteryPanel.SuspendLayout();
|
||||
this.LightbarPanel.SuspendLayout();
|
||||
this.SixaxisPanel.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.numUDLS)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.numUDRS)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// bnTouchUpper
|
||||
@ -912,7 +918,7 @@
|
||||
"Right Stick Right :"});
|
||||
this.lBControls.Location = new System.Drawing.Point(258, 42);
|
||||
this.lBControls.Name = "lBControls";
|
||||
this.lBControls.Size = new System.Drawing.Size(169, 173);
|
||||
this.lBControls.Size = new System.Drawing.Size(169, 160);
|
||||
this.lBControls.TabIndex = 180;
|
||||
this.lBControls.DoubleClick += new System.EventHandler(this.Show_ControlsList);
|
||||
this.lBControls.KeyDown += new System.Windows.Forms.KeyEventHandler(this.List_KeyDown);
|
||||
@ -963,7 +969,7 @@
|
||||
this.flashLed.TabIndex = 163;
|
||||
this.flashLed.Text = "Battery Level Flash";
|
||||
this.flashLed.UseVisualStyleBackColor = true;
|
||||
this.flashLed.CheckedChanged += new System.EventHandler(this.flashLed_CheckedChanged);
|
||||
this.flashLed.CheckedChanged += new System.EventHandler(this.flashWhenLowBattery_CheckedChanged);
|
||||
//
|
||||
// blueBar
|
||||
//
|
||||
@ -991,7 +997,6 @@
|
||||
this.greenBar.TickFrequency = 25;
|
||||
this.greenBar.TickStyle = System.Windows.Forms.TickStyle.None;
|
||||
this.greenBar.Value = 255;
|
||||
this.greenBar.Scroll += new System.EventHandler(this.greenBar_Scroll);
|
||||
this.greenBar.ValueChanged += new System.EventHandler(this.greenBar_ValueChanged);
|
||||
//
|
||||
// redBar
|
||||
@ -1086,14 +1091,14 @@
|
||||
//
|
||||
// numUDTap
|
||||
//
|
||||
this.numUDTap.Location = new System.Drawing.Point(322, 346);
|
||||
this.numUDTap.Location = new System.Drawing.Point(328, 345);
|
||||
this.numUDTap.Maximum = new decimal(new int[] {
|
||||
200,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.numUDTap.Name = "numUDTap";
|
||||
this.numUDTap.Size = new System.Drawing.Size(45, 20);
|
||||
this.numUDTap.Size = new System.Drawing.Size(38, 20);
|
||||
this.numUDTap.TabIndex = 227;
|
||||
this.numUDTap.Value = new decimal(new int[] {
|
||||
100,
|
||||
@ -1165,14 +1170,14 @@
|
||||
//
|
||||
// numUDTouch
|
||||
//
|
||||
this.numUDTouch.Location = new System.Drawing.Point(127, 345);
|
||||
this.numUDTouch.Location = new System.Drawing.Point(126, 345);
|
||||
this.numUDTouch.Maximum = new decimal(new int[] {
|
||||
150,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.numUDTouch.Name = "numUDTouch";
|
||||
this.numUDTouch.Size = new System.Drawing.Size(39, 20);
|
||||
this.numUDTouch.Size = new System.Drawing.Size(38, 20);
|
||||
this.numUDTouch.TabIndex = 229;
|
||||
this.numUDTouch.Value = new decimal(new int[] {
|
||||
100,
|
||||
@ -1197,7 +1202,7 @@
|
||||
this.cBlowerRCOn.AutoSize = true;
|
||||
this.cBlowerRCOn.Checked = true;
|
||||
this.cBlowerRCOn.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.cBlowerRCOn.Location = new System.Drawing.Point(312, 288);
|
||||
this.cBlowerRCOn.Location = new System.Drawing.Point(312, 210);
|
||||
this.cBlowerRCOn.Name = "cBlowerRCOn";
|
||||
this.cBlowerRCOn.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
|
||||
this.cBlowerRCOn.Size = new System.Drawing.Size(116, 17);
|
||||
@ -1209,12 +1214,12 @@
|
||||
// touchpadJitterCompensation
|
||||
//
|
||||
this.touchpadJitterCompensation.AutoSize = true;
|
||||
this.touchpadJitterCompensation.Location = new System.Drawing.Point(328, 255);
|
||||
this.touchpadJitterCompensation.Location = new System.Drawing.Point(310, 256);
|
||||
this.touchpadJitterCompensation.Name = "touchpadJitterCompensation";
|
||||
this.touchpadJitterCompensation.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
|
||||
this.touchpadJitterCompensation.Size = new System.Drawing.Size(100, 30);
|
||||
this.touchpadJitterCompensation.Size = new System.Drawing.Size(118, 17);
|
||||
this.touchpadJitterCompensation.TabIndex = 224;
|
||||
this.touchpadJitterCompensation.Text = "Touchpad Jitter\r\nCompensation";
|
||||
this.touchpadJitterCompensation.Text = "Jitter Compensation";
|
||||
this.touchpadJitterCompensation.UseVisualStyleBackColor = true;
|
||||
this.touchpadJitterCompensation.CheckedChanged += new System.EventHandler(this.touchpadJitterCompensation_CheckedChanged);
|
||||
//
|
||||
@ -1224,9 +1229,9 @@
|
||||
this.lbThreshold.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.lbThreshold.Location = new System.Drawing.Point(11, 281);
|
||||
this.lbThreshold.Name = "lbThreshold";
|
||||
this.lbThreshold.Size = new System.Drawing.Size(57, 13);
|
||||
this.lbThreshold.Size = new System.Drawing.Size(59, 13);
|
||||
this.lbThreshold.TabIndex = 195;
|
||||
this.lbThreshold.Text = "Threshold:";
|
||||
this.lbThreshold.Text = "Deadzone:";
|
||||
//
|
||||
// lBL2
|
||||
//
|
||||
@ -1269,52 +1274,52 @@
|
||||
//
|
||||
this.idleDisconnectTimeout.Location = new System.Drawing.Point(114, 247);
|
||||
this.idleDisconnectTimeout.Maximum = new decimal(new int[] {
|
||||
3600,
|
||||
60,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.idleDisconnectTimeout.Name = "idleDisconnectTimeout";
|
||||
this.idleDisconnectTimeout.Size = new System.Drawing.Size(52, 20);
|
||||
this.idleDisconnectTimeout.Size = new System.Drawing.Size(50, 20);
|
||||
this.idleDisconnectTimeout.TabIndex = 201;
|
||||
this.idleDisconnectTimeout.ValueChanged += new System.EventHandler(this.idleDisconnectTimeout_ValueChanged);
|
||||
//
|
||||
// numUDR2
|
||||
//
|
||||
this.numUDR2.DecimalPlaces = 1;
|
||||
this.numUDR2.DecimalPlaces = 2;
|
||||
this.numUDR2.Increment = new decimal(new int[] {
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
65536});
|
||||
this.numUDR2.Location = new System.Drawing.Point(210, 279);
|
||||
this.numUDR2.Maximum = new decimal(new int[] {
|
||||
255,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.numUDR2.Name = "numUDR2";
|
||||
this.numUDR2.Size = new System.Drawing.Size(52, 20);
|
||||
this.numUDR2.Size = new System.Drawing.Size(50, 20);
|
||||
this.numUDR2.TabIndex = 202;
|
||||
this.numUDR2.Value = new decimal(new int[] {
|
||||
5,
|
||||
0,
|
||||
0,
|
||||
65536});
|
||||
this.numUDR2.ValueChanged += new System.EventHandler(this.numUDR2_ValueChanged);
|
||||
//
|
||||
// numUDL2
|
||||
//
|
||||
this.numUDL2.DecimalPlaces = 1;
|
||||
this.numUDL2.DecimalPlaces = 2;
|
||||
this.numUDL2.Increment = new decimal(new int[] {
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
65536});
|
||||
this.numUDL2.Location = new System.Drawing.Point(114, 279);
|
||||
this.numUDL2.Maximum = new decimal(new int[] {
|
||||
255,
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.numUDL2.Name = "numUDL2";
|
||||
this.numUDL2.RightToLeft = System.Windows.Forms.RightToLeft.No;
|
||||
this.numUDL2.Size = new System.Drawing.Size(52, 20);
|
||||
this.numUDL2.Size = new System.Drawing.Size(50, 20);
|
||||
this.numUDL2.TabIndex = 203;
|
||||
this.numUDL2.Value = new decimal(new int[] {
|
||||
5,
|
||||
0,
|
||||
0,
|
||||
65536});
|
||||
this.numUDL2.ValueChanged += new System.EventHandler(this.numUDL2_ValueChanged);
|
||||
//
|
||||
// tBsixaxisAccelZ
|
||||
@ -1344,12 +1349,12 @@
|
||||
this.flushHIDQueue.AccessibleName = "flushHIDQueue";
|
||||
this.flushHIDQueue.AutoSize = true;
|
||||
this.flushHIDQueue.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F);
|
||||
this.flushHIDQueue.Location = new System.Drawing.Point(316, 219);
|
||||
this.flushHIDQueue.Location = new System.Drawing.Point(322, 233);
|
||||
this.flushHIDQueue.Name = "flushHIDQueue";
|
||||
this.flushHIDQueue.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
|
||||
this.flushHIDQueue.Size = new System.Drawing.Size(112, 30);
|
||||
this.flushHIDQueue.Size = new System.Drawing.Size(106, 17);
|
||||
this.flushHIDQueue.TabIndex = 198;
|
||||
this.flushHIDQueue.Text = "Flush HID queue\r\nafter each reading\r\n";
|
||||
this.flushHIDQueue.Text = "Flush HID queue";
|
||||
this.flushHIDQueue.UseVisualStyleBackColor = true;
|
||||
this.flushHIDQueue.CheckedChanged += new System.EventHandler(this.flushHIDQueue_CheckedChanged);
|
||||
//
|
||||
@ -1464,7 +1469,7 @@
|
||||
0,
|
||||
0});
|
||||
this.rumbleBoostBar.Name = "rumbleBoostBar";
|
||||
this.rumbleBoostBar.Size = new System.Drawing.Size(52, 20);
|
||||
this.rumbleBoostBar.Size = new System.Drawing.Size(50, 20);
|
||||
this.rumbleBoostBar.TabIndex = 211;
|
||||
this.rumbleBoostBar.Value = new decimal(new int[] {
|
||||
100,
|
||||
@ -1605,7 +1610,6 @@
|
||||
this.lowGreenBar.TickFrequency = 25;
|
||||
this.lowGreenBar.TickStyle = System.Windows.Forms.TickStyle.None;
|
||||
this.lowGreenBar.Value = 255;
|
||||
this.lowGreenBar.Scroll += new System.EventHandler(this.greenBar_Scroll);
|
||||
this.lowGreenBar.ValueChanged += new System.EventHandler(this.lowGreenBar_ValueChanged);
|
||||
//
|
||||
// lowBlueBar
|
||||
@ -1706,7 +1710,6 @@
|
||||
this.tBProfile.Size = new System.Drawing.Size(269, 20);
|
||||
this.tBProfile.TabIndex = 238;
|
||||
this.tBProfile.Text = "<type profile name here>";
|
||||
this.tBProfile.Click += new System.EventHandler(this.tBProfile_Click);
|
||||
this.tBProfile.TextChanged += new System.EventHandler(this.tBProfile_TextChanged);
|
||||
this.tBProfile.Enter += new System.EventHandler(this.tBProfile_Enter);
|
||||
this.tBProfile.Leave += new System.EventHandler(this.tBProfile_Leave);
|
||||
@ -1732,6 +1735,64 @@
|
||||
this.lBSeperator.TabIndex = 240;
|
||||
this.lBSeperator.Text = "_______________________________________________________________________";
|
||||
//
|
||||
// numUDLS
|
||||
//
|
||||
this.numUDLS.DecimalPlaces = 2;
|
||||
this.numUDLS.Increment = new decimal(new int[] {
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
65536});
|
||||
this.numUDLS.Location = new System.Drawing.Point(297, 279);
|
||||
this.numUDLS.Maximum = new decimal(new int[] {
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.numUDLS.Name = "numUDLS";
|
||||
this.numUDLS.RightToLeft = System.Windows.Forms.RightToLeft.No;
|
||||
this.numUDLS.Size = new System.Drawing.Size(50, 20);
|
||||
this.numUDLS.TabIndex = 203;
|
||||
this.numUDLS.ValueChanged += new System.EventHandler(this.numUDLS_ValueChanged);
|
||||
//
|
||||
// lbRS
|
||||
//
|
||||
this.lbRS.AutoSize = true;
|
||||
this.lbRS.Location = new System.Drawing.Point(349, 281);
|
||||
this.lbRS.Name = "lbRS";
|
||||
this.lbRS.Size = new System.Drawing.Size(22, 13);
|
||||
this.lbRS.TabIndex = 197;
|
||||
this.lbRS.Text = "RS";
|
||||
//
|
||||
// lbLS
|
||||
//
|
||||
this.lbLS.AutoSize = true;
|
||||
this.lbLS.Location = new System.Drawing.Point(271, 281);
|
||||
this.lbLS.Name = "lbLS";
|
||||
this.lbLS.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbLS.TabIndex = 196;
|
||||
this.lbLS.Text = "LS";
|
||||
//
|
||||
// numUDRS
|
||||
//
|
||||
this.numUDRS.DecimalPlaces = 2;
|
||||
this.numUDRS.Increment = new decimal(new int[] {
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
65536});
|
||||
this.numUDRS.Location = new System.Drawing.Point(378, 279);
|
||||
this.numUDRS.Maximum = new decimal(new int[] {
|
||||
1,
|
||||
0,
|
||||
0,
|
||||
0});
|
||||
this.numUDRS.Name = "numUDRS";
|
||||
this.numUDRS.RightToLeft = System.Windows.Forms.RightToLeft.No;
|
||||
this.numUDRS.Size = new System.Drawing.Size(50, 20);
|
||||
this.numUDRS.TabIndex = 203;
|
||||
this.numUDRS.ValueChanged += new System.EventHandler(this.numUDRS_ValueChanged);
|
||||
//
|
||||
// advColorDialog
|
||||
//
|
||||
this.advColorDialog.AnyColor = true;
|
||||
@ -1761,11 +1822,15 @@
|
||||
this.Controls.Add(this.cBlowerRCOn);
|
||||
this.Controls.Add(this.touchpadJitterCompensation);
|
||||
this.Controls.Add(this.lbThreshold);
|
||||
this.Controls.Add(this.lbLS);
|
||||
this.Controls.Add(this.lBL2);
|
||||
this.Controls.Add(this.lbRS);
|
||||
this.Controls.Add(this.lBR2);
|
||||
this.Controls.Add(this.lBControllerOff);
|
||||
this.Controls.Add(this.lBIdleMinutes);
|
||||
this.Controls.Add(this.idleDisconnectTimeout);
|
||||
this.Controls.Add(this.numUDRS);
|
||||
this.Controls.Add(this.numUDLS);
|
||||
this.Controls.Add(this.numUDR2);
|
||||
this.Controls.Add(this.numUDL2);
|
||||
this.Controls.Add(this.lBMouseSens);
|
||||
@ -1793,7 +1858,6 @@
|
||||
this.Name = "Options";
|
||||
this.Text = "Options";
|
||||
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.Options_Closed);
|
||||
this.Resize += new System.EventHandler(this.Options_Resize);
|
||||
this.MainPanel.ResumeLayout(false);
|
||||
this.MainPanel.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pBController)).EndInit();
|
||||
@ -1832,6 +1896,8 @@
|
||||
this.LightbarPanel.PerformLayout();
|
||||
this.SixaxisPanel.ResumeLayout(false);
|
||||
this.SixaxisPanel.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.numUDLS)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.numUDRS)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
@ -1947,6 +2013,10 @@
|
||||
private System.Windows.Forms.Button btnSaveProfile;
|
||||
private System.Windows.Forms.Label lBSeperator;
|
||||
private System.Windows.Forms.Label lBControlTip;
|
||||
private System.Windows.Forms.NumericUpDown numUDLS;
|
||||
private System.Windows.Forms.Label lbRS;
|
||||
private System.Windows.Forms.Label lbLS;
|
||||
private System.Windows.Forms.NumericUpDown numUDRS;
|
||||
}
|
||||
}
|
||||
|
@ -50,8 +50,8 @@ namespace ScpServer
|
||||
numUDTap.Value = Global.getTapSensitivity(device);
|
||||
cBTap.Checked = Global.getTap(device);
|
||||
cBDoubleTap.Checked = Global.getDoubleTap(device);
|
||||
numUDL2.Value = (decimal)Global.getLeftTriggerMiddle(device);
|
||||
numUDL2.Value = (decimal)Global.getRightTriggerMiddle(device);
|
||||
numUDL2.Value = (decimal)Global.getLeftTriggerMiddle(device)/255;
|
||||
numUDR2.Value = (decimal)Global.getRightTriggerMiddle(device)/255;
|
||||
touchpadJitterCompensation.Checked = Global.getTouchpadJitterCompensation(device);
|
||||
cBlowerRCOn.Checked = Global.getLowerRCOn(device);
|
||||
flushHIDQueue.Checked = Global.getFlushHIDQueue(device);
|
||||
@ -79,7 +79,8 @@ namespace ScpServer
|
||||
pBRainbow.Image = colored;
|
||||
ToggleRainbow(true);
|
||||
}
|
||||
|
||||
numUDLS.Value = (decimal)Global.getLSDeadzone(device) / 127;
|
||||
numUDRS.Value = (decimal)Global.getRSDeadzone(device) / 127;
|
||||
}
|
||||
else
|
||||
Set();
|
||||
@ -117,7 +118,8 @@ namespace ScpServer
|
||||
tp.SetToolTip(cBlowerRCOn, "Use lower right Touchpad as right mouse");
|
||||
tp.SetToolTip(cBDoubleTap, "Tap and hold to drag, slight delay with one tap");
|
||||
tp.SetToolTip(btnLightbar, "Click to change color");
|
||||
tp.SetToolTip(lBControlTip, "You can also use your controller to change controls");
|
||||
tp.SetToolTip(lBControlTip, "You can also use your controller to change controls");
|
||||
tp.SetToolTip(touchpadJitterCompensation, "Use Sixaxis to help calulate touchpad movement");
|
||||
advColorDialog.OnUpdateColor += advColorDialog_OnUpdateColor;
|
||||
btnLeftStick.Enter += btnSticks_Enter;
|
||||
btnRightStick.Enter += btnSticks_Enter;
|
||||
@ -214,9 +216,10 @@ namespace ScpServer
|
||||
{
|
||||
Global.saveColor(device, (byte)redBar.Value, (byte)greenBar.Value, (byte)blueBar.Value);
|
||||
Global.saveLowColor(device, (byte)lowRedBar.Value, (byte)lowGreenBar.Value, (byte)lowBlueBar.Value);
|
||||
Global.setLeftTriggerMiddle(device, (double)numUDL2.Value);
|
||||
Global.setRightTriggerMiddle(device, (double)numUDR2.Value);
|
||||
Global.setLeftTriggerMiddle(device, (byte)(numUDL2.Value * 255));
|
||||
Global.setRightTriggerMiddle(device, (byte)(numUDR2.Value * 255));
|
||||
Global.saveRumbleBoost(device, (byte)rumbleBoostBar.Value);
|
||||
Global.setFlashWhenLowBattery(device, flashLed.Checked);
|
||||
Global.setTouchSensitivity(device, (byte)numUDTouch.Value);
|
||||
Global.setTouchpadJitterCompensation(device, touchpadJitterCompensation.Checked);
|
||||
Global.setLowerRCOn(device, cBlowerRCOn.Checked);
|
||||
@ -227,6 +230,8 @@ namespace ScpServer
|
||||
Global.setIdleDisconnectTimeout(device, (int)(idleDisconnectTimeout.Value * 60));
|
||||
Global.setButtonMouseSensitivity(device, tBMouseSens.Value);
|
||||
Global.setRainbow(device, (int)numUDRainbow.Value);
|
||||
Global.setRSDeadzone(device, (byte)(numUDRS.Value * 127));
|
||||
Global.setLSDeadzone(device, (byte)(numUDLS.Value * 127));
|
||||
if (numUDRainbow.Value == 0) pBRainbow.Image = greyscale;
|
||||
else pBRainbow.Image = colored;
|
||||
}
|
||||
@ -763,42 +768,12 @@ namespace ScpServer
|
||||
|
||||
private void numUDL2_ValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
Global.setLeftTriggerMiddle(device, (double)numUDL2.Value);
|
||||
Global.setLeftTriggerMiddle(device, (byte)(numUDL2.Value * 255));
|
||||
}
|
||||
|
||||
private void numUDR2_ValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
Global.setRightTriggerMiddle(device, (double)numUDR2.Value);
|
||||
}
|
||||
|
||||
private void tBProfile_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void leftMotorLabel_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void rightMotorLabel_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void rumbleBoostLabel_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void Options_Resize(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void greenBar_Scroll(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
Global.setRightTriggerMiddle(device, (byte)(numUDR2.Value * 255));
|
||||
}
|
||||
|
||||
private void flashLed_CheckedChanged(object sender, EventArgs e)
|
||||
@ -833,5 +808,15 @@ namespace ScpServer
|
||||
pBController.Image = Properties.Resources.DS4_Controller;
|
||||
}
|
||||
|
||||
private void numUDRS_ValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
Global.setRSDeadzone(device, (byte)(numUDRS.Value * 127));
|
||||
}
|
||||
|
||||
private void numUDLS_ValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
Global.setLSDeadzone(device, (byte)(numUDLS.Value * 127));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -2,7 +2,6 @@
|
||||
using System.Windows.Forms;
|
||||
using System.Runtime.InteropServices;
|
||||
using DS4Control;
|
||||
using System.Threading;
|
||||
using System.IO;
|
||||
using System.Reflection;
|
||||
using System.Collections.Generic;
|
||||
@ -15,7 +14,7 @@ namespace ScpServer
|
||||
{
|
||||
private DS4Control.Control rootHub;
|
||||
delegate void LogDebugDelegate(DateTime Time, String Data);
|
||||
double version = 7.1;
|
||||
double version = 7.3;
|
||||
|
||||
protected Label[] Pads;
|
||||
protected ComboBox[] cbs;
|
||||
@ -42,7 +41,7 @@ namespace ScpServer
|
||||
(ToolStripMenuItem)notifyIcon1.ContextMenuStrip.Items[3] };
|
||||
foreach (ToolStripMenuItem t in shortcuts)
|
||||
t.DropDownItemClicked += Profile_Changed_Menu;
|
||||
CheckDrivers();
|
||||
CheckDrivers();
|
||||
}
|
||||
|
||||
private void CheckDrivers()
|
||||
|
Loading…
Reference in New Issue
Block a user