From c6f3f734053f9a9b5cea3b8214632b2f02d6ead0 Mon Sep 17 00:00:00 2001
From: Serge <5920850+seerge@users.noreply.github.com>
Date: Fri, 12 Jan 2024 14:32:32 +0100
Subject: [PATCH 01/11] Create bug_report.yml
---
.github/ISSUE_TEMPLATE/bug_report.yml | 83 +++++++++++++++++++++++++++
1 file changed, 83 insertions(+)
create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml
diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
new file mode 100644
index 00000000..0b9f8fbd
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -0,0 +1,83 @@
+name: Bug Report
+description: Something isn't working correctly
+labels: ["bug"]
+body:
+ - type: markdown
+ attributes:
+ value: |
+ Thanks for taking the time to fill out this bug report. The more information you provide, the easier it will be for me to fix it!
+ - type: checkboxes
+ id: rules
+ attributes:
+ label: Rules
+ options:
+ - label: I made myself familiar with the Readme and FAQ.
+ - label: I checked closed issues for similar ones and did not find a similar problem mentioned before.
+ - label: I understand that, if insufficient information was provided, my issue will be closed without an answer.
+ validations:
+ required: true
+ - type: input
+ id: version
+ attributes:
+ label: Version
+ description: G-Helper version?
+ placeholder: e.g. 0.146
+ validations:
+ required: true
+ - type: input
+ id: os
+ attributes:
+ label: OS
+ description: Which operating system do you use?
+ placeholder: e.g. Windows 11 21H2 build 22000
+ validations:
+ required: true
+ - type: input
+ id: device
+ attributes:
+ label: Device Model
+ description: Which laptop do you use?
+ placeholder: e.g. Asus Zephyrus G14 GA404RK
+ validations:
+ required: true
+ - type: textarea
+ id: description
+ attributes:
+ label: What's wrong?
+ description: Provide detailed description of what is wrong or does not work as expected.
+ placeholder: Provide detailed description of what is wrong or does not work as expected.
+ validations:
+ required: true
+ - type: textarea
+ id: reproduce
+ attributes:
+ label: How to reproduce the bug?
+ description: Describe how to reproduce the behavior. Be as specific as possible and provide as many details as possible.
+ placeholder: |
+ 1. Go to '...'
+ 2. Click on '....'
+ 3. Scroll down to '....'
+ 4. See error
+ validations:
+ required: true
+ - type: textarea
+ id: expected-behaviour
+ attributes:
+ label: What is the behavior that you expected?
+ description: Describe what did you expect would happen.
+ placeholder: Describe what did you expect would happen.
+ validations:
+ required: true
+ - type: textarea
+ id: logs
+ attributes:
+ label: Logs
+ placeholder: Please drag and drop complete log file from ``%APPDATA%\GHelper\log.txt``
+ description: Please drag and drop complete log file from ``%APPDATA%\GHelper\log.txt``
+ validations:
+ required: true
+ - type: textarea
+ id: additional
+ attributes:
+ label: Additional information
+ description: If applicable, add screenshots or other relevant information to help explain your problem.
From 9ced493821982090e37d33aa73a837a90d70da0c Mon Sep 17 00:00:00 2001
From: Serge <5920850+seerge@users.noreply.github.com>
Date: Fri, 12 Jan 2024 14:34:24 +0100
Subject: [PATCH 02/11] Delete .github/ISSUE_TEMPLATE/bug_report.md
---
.github/ISSUE_TEMPLATE/bug_report.md | 39 ----------------------------
1 file changed, 39 deletions(-)
delete mode 100644 .github/ISSUE_TEMPLATE/bug_report.md
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
deleted file mode 100644
index c4b8c8fe..00000000
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ /dev/null
@@ -1,39 +0,0 @@
----
-name: Bug report
-about: Create a report to help us improve
-
----
-
-## NOTE
-Bug reports without clear information or scenario to reproduce and logs from ``%AppData%\GHelper`` will be closed without answer. Please respect the time of the developer. Thanks.
-
-**Describe the bug**
-A clear and concise description of what the bug is.
-
-**Clear scenario to Reproduce**
-Steps to reproduce the behavior:
-1. Go to '...'
-2. Click on '....'
-3. Scroll down to '....'
-4. Explanation of an error or a bug
-
-**Expected behavior**
-A clear and concise description of what you expected to happen.
-
-**App Logs**
-Please include and attach log.txt from ``%AppData%\GHelper``
-
-**Screenshots or screencasts**
-If applicable, add screenshots to help explain your problem.
-
-**Desktop (please complete the following information):**
- - OS: [e.g. Windows 11]
- - Laptop model
-
-**Asus software**
-- Armoury Crate (or it's services installed)
-- MyASUS installed
-- Other Asus services running in background
-
-**Additional context**
-Add any other context about the problem here.
From 2a9b9735d58c3094beafde8f1b2e3eba728eb4a1 Mon Sep 17 00:00:00 2001
From: Serge <5920850+seerge@users.noreply.github.com>
Date: Fri, 12 Jan 2024 14:39:53 +0100
Subject: [PATCH 03/11] Update bug_report.yml
---
.github/ISSUE_TEMPLATE/bug_report.yml | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
index 0b9f8fbd..e497392c 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.yml
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -79,5 +79,15 @@ body:
- type: textarea
id: additional
attributes:
- label: Additional information
+ label: Additional information.
description: If applicable, add screenshots or other relevant information to help explain your problem.
+ - type: checkboxes
+ id: asus
+ attributes:
+ label: Armoury Crate or Asus software running
+ description: Please check what Asus/Armoury Services do you have running
+ options:
+ - label: Armoury Crate
+ - label: MyAsus
+ - label: Other Asus Services
+
From aba4ab7742eaa0b1d9a51c4378966b1923d320f7 Mon Sep 17 00:00:00 2001
From: Serge <5920850+seerge@users.noreply.github.com>
Date: Fri, 12 Jan 2024 14:45:04 +0100
Subject: [PATCH 04/11] Update bug_report.yml
---
.github/ISSUE_TEMPLATE/bug_report.yml | 44 ++++++++++++---------------
1 file changed, 20 insertions(+), 24 deletions(-)
diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
index e497392c..c06c6aa7 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.yml
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -16,30 +16,6 @@ body:
- label: I understand that, if insufficient information was provided, my issue will be closed without an answer.
validations:
required: true
- - type: input
- id: version
- attributes:
- label: Version
- description: G-Helper version?
- placeholder: e.g. 0.146
- validations:
- required: true
- - type: input
- id: os
- attributes:
- label: OS
- description: Which operating system do you use?
- placeholder: e.g. Windows 11 21H2 build 22000
- validations:
- required: true
- - type: input
- id: device
- attributes:
- label: Device Model
- description: Which laptop do you use?
- placeholder: e.g. Asus Zephyrus G14 GA404RK
- validations:
- required: true
- type: textarea
id: description
attributes:
@@ -81,6 +57,14 @@ body:
attributes:
label: Additional information.
description: If applicable, add screenshots or other relevant information to help explain your problem.
+ - type: input
+ id: device
+ attributes:
+ label: Device Model
+ description: Which laptop do you use?
+ placeholder: e.g. Asus Zephyrus G14 GA404RK
+ validations:
+ required: true
- type: checkboxes
id: asus
attributes:
@@ -90,4 +74,16 @@ body:
- label: Armoury Crate
- label: MyAsus
- label: Other Asus Services
+ - type: input
+ id: version
+ attributes:
+ label: Version
+ description: G-Helper version?
+ placeholder: e.g. 0.146
+ - type: input
+ id: os
+ attributes:
+ label: OS
+ description: Which operating system do you use?
+ placeholder: e.g. Windows 11 21H2 build 22000
From becb71b69bd3eaad287be101568593e86e11b801 Mon Sep 17 00:00:00 2001
From: Serge <5920850+seerge@users.noreply.github.com>
Date: Fri, 12 Jan 2024 14:49:18 +0100
Subject: [PATCH 05/11] Update bug_report.yml
---
.github/ISSUE_TEMPLATE/bug_report.yml | 33 ++++++++++-----------------
1 file changed, 12 insertions(+), 21 deletions(-)
diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
index c06c6aa7..14c3a9b5 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.yml
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -11,8 +11,7 @@ body:
attributes:
label: Rules
options:
- - label: I made myself familiar with the Readme and FAQ.
- - label: I checked closed issues for similar ones and did not find a similar problem mentioned before.
+ - label: I made myself familiar with the Readme, FAQ and Troubleshooting.
- label: I understand that, if insufficient information was provided, my issue will be closed without an answer.
validations:
required: true
@@ -36,14 +35,6 @@ body:
4. See error
validations:
required: true
- - type: textarea
- id: expected-behaviour
- attributes:
- label: What is the behavior that you expected?
- description: Describe what did you expect would happen.
- placeholder: Describe what did you expect would happen.
- validations:
- required: true
- type: textarea
id: logs
attributes:
@@ -52,24 +43,24 @@ body:
description: Please drag and drop complete log file from ``%APPDATA%\GHelper\log.txt``
validations:
required: true
+ - type: input
+ id: device
+ attributes:
+ label: Device and Model
+ description: Which laptop do you use?
+ placeholder: e.g. Asus Zephyrus G14 GA404RK
+ validations:
+ required: true
- type: textarea
id: additional
attributes:
label: Additional information.
description: If applicable, add screenshots or other relevant information to help explain your problem.
- - type: input
- id: device
- attributes:
- label: Device Model
- description: Which laptop do you use?
- placeholder: e.g. Asus Zephyrus G14 GA404RK
- validations:
- required: true
- type: checkboxes
id: asus
attributes:
- label: Armoury Crate or Asus software running
- description: Please check what Asus/Armoury Services do you have running
+ label: Asus Software
+ description: Please check what Asus/Armoury Services do you have installed and running
options:
- label: Armoury Crate
- label: MyAsus
@@ -85,5 +76,5 @@ body:
attributes:
label: OS
description: Which operating system do you use?
- placeholder: e.g. Windows 11 21H2 build 22000
+ placeholder: e.g. Windows 11 21H2
From df35a576dfa772b3f99e3c669dee1e827cbdeabe Mon Sep 17 00:00:00 2001
From: Serge <5920850+seerge@users.noreply.github.com>
Date: Fri, 12 Jan 2024 14:51:00 +0100
Subject: [PATCH 06/11] Update bug_report.yml
---
.github/ISSUE_TEMPLATE/bug_report.yml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
index 14c3a9b5..37d95fcd 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.yml
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -12,7 +12,9 @@ body:
label: Rules
options:
- label: I made myself familiar with the Readme, FAQ and Troubleshooting.
+ required: true
- label: I understand that, if insufficient information was provided, my issue will be closed without an answer.
+ required: true
validations:
required: true
- type: textarea
From 765c03815ea7e039e431fa7549dd67d0d29d79c7 Mon Sep 17 00:00:00 2001
From: IceStormNG
Date: Fri, 12 Jan 2024 18:55:52 +0100
Subject: [PATCH 07/11] Automatically restart audio capture when device
changes. (#1903)
---
app/AnimeMatrix/AniMatrixControl.cs | 56 +++++++++++++++++++++++++++--
1 file changed, 53 insertions(+), 3 deletions(-)
diff --git a/app/AnimeMatrix/AniMatrixControl.cs b/app/AnimeMatrix/AniMatrixControl.cs
index 025f0f53..d5d4b1b9 100644
--- a/app/AnimeMatrix/AniMatrixControl.cs
+++ b/app/AnimeMatrix/AniMatrixControl.cs
@@ -10,7 +10,7 @@ using System.Timers;
namespace GHelper.AnimeMatrix
{
- public class AniMatrixControl
+ public class AniMatrixControl : NAudio.CoreAudioApi.Interfaces.IMMNotificationClient
{
SettingsForm settings;
@@ -20,6 +20,8 @@ namespace GHelper.AnimeMatrix
double[]? AudioValues;
WasapiCapture? AudioDevice;
+ string? AudioDeviceId;
+ private MMDeviceEnumerator? AudioDeviceEnum;
public bool IsValid => device != null;
@@ -167,6 +169,9 @@ namespace GHelper.AnimeMatrix
Logger.WriteLine(ex.ToString());
}
}
+
+ AudioDeviceId = null;
+ AudioDeviceEnum?.Dispose();
}
void SetMatrixAudio()
@@ -179,10 +184,13 @@ namespace GHelper.AnimeMatrix
try
{
- using (var enumerator = new MMDeviceEnumerator())
- using (MMDevice device = enumerator.GetDefaultAudioEndpoint(DataFlow.Render, Role.Console))
+ AudioDeviceEnum = new MMDeviceEnumerator();
+ AudioDeviceEnum.RegisterEndpointNotificationCallback(this);
+
+ using (MMDevice device = AudioDeviceEnum.GetDefaultAudioEndpoint(DataFlow.Render, Role.Console))
{
AudioDevice = new WasapiLoopbackCapture(device);
+ AudioDeviceId = device.ID;
WaveFormat fmt = AudioDevice.WaveFormat;
AudioValues = new double[fmt.SampleRate / 1000];
@@ -397,6 +405,48 @@ namespace GHelper.AnimeMatrix
}
+ public void OnDeviceStateChanged(string deviceId, DeviceState newState)
+ {
+ }
+
+ public void OnDeviceAdded(string pwstrDeviceId)
+ {
+
+ }
+
+ public void OnDeviceRemoved(string deviceId)
+ {
+
+ }
+
+ public void OnDefaultDeviceChanged(DataFlow flow, Role role, string defaultDeviceId)
+ {
+ if (AudioDeviceId == defaultDeviceId)
+ {
+ //We already caputre this device. No need to re-initialize
+ return;
+ }
+
+ int running = AppConfig.Get("matrix_running");
+ if (flow != DataFlow.Render || role != Role.Console || running != 4)
+ {
+ return;
+ }
+
+ //Restart audio if default audio changed
+ Logger.WriteLine("Matrix Audio: Default Output changed to " + defaultDeviceId);
+
+ //Already set the device here. Otherwise this will be called multiple times in a short succession and causes a crash due to dispose during initalization.
+ AudioDeviceId = defaultDeviceId;
+
+ //Delay is required or it will deadlock on dispose.
+ Task.Delay(50).ContinueWith(t => SetMatrixAudio());
+ }
+
+ public void OnPropertyValueChanged(string pwstrDeviceId, PropertyKey key)
+ {
+
+ }
}
}
From 00dc6a6ca3aa64b23557ae1cfdc29646acb25248 Mon Sep 17 00:00:00 2001
From: Serge <5920850+seerge@users.noreply.github.com>
Date: Fri, 12 Jan 2024 19:35:10 +0100
Subject: [PATCH 08/11] Auto updater tweaks
---
app/AppConfig.cs | 5 +++
app/AsusACPI.cs | 5 +++
app/AutoUpdate/AutoUpdateControl.cs | 4 ++-
app/GHelper.csproj | 2 +-
app/Helpers/OptimizationService.cs | 53 +----------------------------
5 files changed, 15 insertions(+), 54 deletions(-)
diff --git a/app/AppConfig.cs b/app/AppConfig.cs
index 8bd990b4..5a2555f5 100644
--- a/app/AppConfig.cs
+++ b/app/AppConfig.cs
@@ -490,6 +490,11 @@ public static class AppConfig
return ContainsModel("FA507");
}
+ public static bool IsIntelHX()
+ {
+ return ContainsModel("G814") || ContainsModel("G614") || ContainsModel("G834") || ContainsModel("G634");
+ }
+
public static bool IsASUS()
{
return ContainsModel("ROG") || ContainsModel("TUF") || ContainsModel("Vivobook") || ContainsModel("Zenbook");
diff --git a/app/AsusACPI.cs b/app/AsusACPI.cs
index f7ca78dc..effd6c04 100644
--- a/app/AsusACPI.cs
+++ b/app/AsusACPI.cs
@@ -259,6 +259,11 @@ public class AsusACPI
DefaultTotal = 30;
}
+ if (AppConfig.IsIntelHX())
+ {
+ MaxTotal = 175;
+ }
+
if (AppConfig.DynamicBoost5())
{
MaxGPUBoost = 5;
diff --git a/app/AutoUpdate/AutoUpdateControl.cs b/app/AutoUpdate/AutoUpdateControl.cs
index 8c60a0a2..42093c87 100644
--- a/app/AutoUpdate/AutoUpdateControl.cs
+++ b/app/AutoUpdate/AutoUpdateControl.cs
@@ -1,4 +1,5 @@
-using System.Diagnostics;
+using GHelper.Helpers;
+using System.Diagnostics;
using System.Net;
using System.Reflection;
using System.Text.Json;
@@ -130,6 +131,7 @@ namespace GHelper.AutoUpdate
cmd.StartInfo.CreateNoWindow = true;
cmd.StartInfo.FileName = "powershell";
cmd.StartInfo.Arguments = command;
+ if (ProcessHelper.IsUserAdministrator()) cmd.StartInfo.Verb = "runas";
cmd.Start();
}
catch (Exception ex)
diff --git a/app/GHelper.csproj b/app/GHelper.csproj
index baba1abe..716523d1 100644
--- a/app/GHelper.csproj
+++ b/app/GHelper.csproj
@@ -15,7 +15,7 @@
AnyCPU
False
True
- 0.146
+ 0.100
diff --git a/app/Helpers/OptimizationService.cs b/app/Helpers/OptimizationService.cs
index 8ab7b314..18218b1e 100644
--- a/app/Helpers/OptimizationService.cs
+++ b/app/Helpers/OptimizationService.cs
@@ -1,7 +1,4 @@
-using Microsoft.Win32;
-using System.Diagnostics;
-using System.Text;
-using System.Text.RegularExpressions;
+using System.Diagnostics;
namespace GHelper.Helpers
{
@@ -21,35 +18,6 @@ namespace GHelper.Helpers
"AsusCertService"
};
- public static void SetChargeLimit(int newValue)
- {
- // Set the path to the .ini file
- string path = @"C:\ProgramData\ASUS\ASUS System Control Interface\ASUSOptimization\Customization.ini";
-
-
- // Make a backup copy of the INI file
- string backupPath = path + ".bak";
- File.Copy(path, backupPath, true);
-
- string fileContents = File.ReadAllText(path, Encoding.Unicode);
-
- // Find the section [BatteryHealthCharging]
- string sectionPattern = @"\[BatteryHealthCharging\]\s*(version=\d+)?\s+value=(\d+)";
- Match sectionMatch = Regex.Match(fileContents, sectionPattern);
- if (sectionMatch.Success)
- {
- // Replace the value with the new value
- string oldValueString = sectionMatch.Groups[2].Value;
- int oldValue = int.Parse(oldValueString);
- string newSection = sectionMatch.Value.Replace($"value={oldValue}", $"value={newValue}");
-
- // Replace the section in the file contents
- fileContents = fileContents.Replace(sectionMatch.Value, newSection);
-
- File.WriteAllText(path, fileContents, Encoding.Unicode);
- }
- }
-
public static bool IsRunning()
{
return Process.GetProcessesByName("AsusOptimization").Count() > 0;
@@ -72,25 +40,6 @@ namespace GHelper.Helpers
}
- public static void SetBacklightOffDelay(int value = 60)
- {
- try
- {
- RegistryKey myKey = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\ASUS\ASUS System Control Interface\AsusOptimization\ASUS Keyboard Hotkeys", true);
- if (myKey != null)
- {
- myKey.SetValue("TurnOffKeybdLight", value, RegistryValueKind.DWord);
- myKey.Close();
- }
- }
- catch (Exception ex)
- {
- Logger.WriteLine(ex.Message);
- }
- }
-
-
-
public static void StopAsusServices()
{
foreach (string service in services)
From 527769042fc405354e2008fd25987727725a4c83 Mon Sep 17 00:00:00 2001
From: Serge <5920850+seerge@users.noreply.github.com>
Date: Fri, 12 Jan 2024 19:36:18 +0100
Subject: [PATCH 09/11] Version Bump
---
app/GHelper.csproj | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/GHelper.csproj b/app/GHelper.csproj
index 716523d1..8f54d835 100644
--- a/app/GHelper.csproj
+++ b/app/GHelper.csproj
@@ -15,7 +15,7 @@
AnyCPU
False
True
- 0.100
+ 0.147
From c0f88191df9300f79ce19e3baea7e36e48529d1d Mon Sep 17 00:00:00 2001
From: Serge <5920850+seerge@users.noreply.github.com>
Date: Fri, 12 Jan 2024 21:32:10 +0100
Subject: [PATCH 10/11] Per key RGB option for G513QM
https://github.com/seerge/g-helper/discussions/1906
---
app/AppConfig.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/AppConfig.cs b/app/AppConfig.cs
index 5a2555f5..887d305d 100644
--- a/app/AppConfig.cs
+++ b/app/AppConfig.cs
@@ -384,7 +384,7 @@ public static class AppConfig
public static bool IsStrixLimitedRGB()
{
- return ContainsModel("G614JV") || ContainsModel("G614JZ") || ContainsModel("G512LI") || ContainsModel("G513R") || ContainsModel("G713PV") || ContainsModel("G513IE") || ContainsModel("G713RC") || ContainsModel("G513QM");
+ return (ContainsModel("G614JV") || ContainsModel("G614JZ") || ContainsModel("G512LI") || ContainsModel("G513R") || ContainsModel("G713PV") || ContainsModel("G513IE") || ContainsModel("G713RC") || ContainsModel("G513QM")) && !Is("per_key_rgb");
}
public static bool IsNoDirectRGB()
From 556a4ce4eedcfec9a47adf37ffa1542530d4007e Mon Sep 17 00:00:00 2001
From: Serge <5920850+seerge@users.noreply.github.com>
Date: Fri, 12 Jan 2024 22:56:12 +0100
Subject: [PATCH 11/11] Ally Controller Modes
---
app/Ally/AllyControl.cs | 52 ++++++++++
app/Program.cs | 6 ++
app/Properties/Resources.Designer.cs | 10 ++
app/Properties/Resources.resx | 25 ++---
app/Resources/icons8-controller-32.png | Bin 0 -> 396 bytes
app/Settings.Designer.cs | 132 ++++++++++++++++++++++++-
app/Settings.cs | 33 ++++++-
7 files changed, 241 insertions(+), 17 deletions(-)
create mode 100644 app/Ally/AllyControl.cs
create mode 100644 app/Resources/icons8-controller-32.png
diff --git a/app/Ally/AllyControl.cs b/app/Ally/AllyControl.cs
new file mode 100644
index 00000000..ce404457
--- /dev/null
+++ b/app/Ally/AllyControl.cs
@@ -0,0 +1,52 @@
+using GHelper.USB;
+
+namespace GHelper.Ally
+{
+
+ public enum ControllerMode : int
+ {
+ Gamepad = 1,
+ WASD = 2,
+ Mouse = 3,
+ }
+
+ public class AllyControl
+ {
+ SettingsForm settings;
+ ControllerMode mode = ControllerMode.Gamepad;
+ public AllyControl(SettingsForm settingsForm)
+ {
+ settings = settingsForm;
+ }
+
+ public void Init()
+ {
+ if (!AppConfig.IsAlly())
+ {
+ settings.VisualiseAlly(false);
+ return;
+ }
+
+ mode = (ControllerMode)AppConfig.Get("controller_mode", (int)ControllerMode.Gamepad);
+ SetMode(mode);
+ }
+
+ private void SetMode(ControllerMode mode)
+ {
+ AppConfig.Set("controller_mode", (int)mode);
+ AsusHid.WriteInput(new byte[] { AsusHid.INPUT_ID, 0xd1, 1, 1, (byte)mode }, "ControllerMode");
+ settings.VisualiseController(mode);
+ }
+
+ public void ToggleMode()
+ {
+ if (mode == ControllerMode.Mouse)
+ mode = ControllerMode.Gamepad;
+ else
+ mode++;
+
+ SetMode(mode);
+ }
+
+ }
+}
diff --git a/app/Program.cs b/app/Program.cs
index 494abac5..b94b1620 100644
--- a/app/Program.cs
+++ b/app/Program.cs
@@ -1,3 +1,4 @@
+using GHelper.Ally;
using GHelper.Battery;
using GHelper.Display;
using GHelper.Gpu;
@@ -5,6 +6,8 @@ using GHelper.Helpers;
using GHelper.Input;
using GHelper.Mode;
using GHelper.Peripherals;
+using GHelper.USB;
+using Microsoft.VisualBasic.Logging;
using Microsoft.Win32;
using Ryzen;
using System.Diagnostics;
@@ -30,6 +33,7 @@ namespace GHelper
public static ModeControl modeControl = new ModeControl();
public static GPUModeControl gpuControl = new GPUModeControl(settingsForm);
+ public static AllyControl controllerControl = new AllyControl(settingsForm);
public static ScreenControl screenControl = new ScreenControl();
public static ClamshellModeControl clamshellControl = new ClamshellModeControl();
@@ -225,6 +229,8 @@ namespace GHelper
settingsForm.AutoKeyboard();
settingsForm.matrixControl.SetMatrix(true);
+
+ controllerControl.Init();
}
private static void SystemEvents_PowerModeChanged(object sender, PowerModeChangedEventArgs e)
diff --git a/app/Properties/Resources.Designer.cs b/app/Properties/Resources.Designer.cs
index c68924a0..4fe184b7 100644
--- a/app/Properties/Resources.Designer.cs
+++ b/app/Properties/Resources.Designer.cs
@@ -220,6 +220,16 @@ namespace GHelper.Properties {
}
}
+ ///
+ /// Looks up a localized resource of type System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap icons8_controller_32 {
+ get {
+ object obj = ResourceManager.GetObject("icons8-controller-32", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
///
/// Looks up a localized resource of type System.Drawing.Bitmap.
///
diff --git a/app/Properties/Resources.resx b/app/Properties/Resources.resx
index 3242cd04..83108d59 100644
--- a/app/Properties/Resources.resx
+++ b/app/Properties/Resources.resx
@@ -133,6 +133,9 @@
..\Resources\icons8-hibernate-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\Font.otf;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
..\Resources\icons8-quit-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -148,6 +151,9 @@
..\Resources\icons8-project-management-48 (1).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\dot-standard.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
..\Resources\icons8-charging-battery-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -214,6 +220,9 @@
..\Resources\icons8-rocket-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\dot-ultimate.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
..\Resources\icons8-edit-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -277,6 +286,9 @@
..\Resources\icons8-settings-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\dot-eco.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
..\Resources\icons8-processor-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -289,16 +301,7 @@
..\Resources\icons8-rocket-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
- ..\Resources\Font.otf;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- ..\Resources\dot-eco.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\dot-standard.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\dot-ultimate.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+ ..\Resources\icons8-controller-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
\ No newline at end of file
diff --git a/app/Resources/icons8-controller-32.png b/app/Resources/icons8-controller-32.png
new file mode 100644
index 0000000000000000000000000000000000000000..2be3db0e8e4e5b109ea5f1e418f38008bb92e74c
GIT binary patch
literal 396
zcmV;70dxL|P)@K^TRg^aw@lcRp4AxuM024-i|1{+dDdWj0B(T1;uX*Lz_(#ePd0ybfM!&HlEyFs
zR!ln