mirror of
https://github.com/jkocon/g-helper.git
synced 2026-02-23 13:00:52 +01:00
Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ba0bac11b5 | ||
|
|
8241700fe7 | ||
|
|
2ff1a59ff9 | ||
|
|
18d6f694a0 | ||
|
|
9fe283b620 | ||
|
|
b7e4ec50a6 | ||
|
|
927fc382a5 | ||
|
|
ed728de661 | ||
|
|
a1a317d952 | ||
|
|
123fbc414f | ||
|
|
d26d9c46ad | ||
|
|
a58230fdd2 | ||
|
|
00393ef67d | ||
|
|
a687d074ee | ||
|
|
201ef48cd4 | ||
|
|
7b16adf0f5 |
@@ -1,10 +1,13 @@
|
|||||||
using GHelper.Gpu.AMD;
|
using GHelper.Gpu.AMD;
|
||||||
using GHelper.Helpers;
|
using GHelper.Helpers;
|
||||||
using GHelper.Input;
|
using GHelper.Input;
|
||||||
|
using GHelper.Mode;
|
||||||
using GHelper.USB;
|
using GHelper.USB;
|
||||||
using HidSharp;
|
using HidSharp;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
namespace GHelper.Ally
|
namespace GHelper.Ally
|
||||||
{
|
{
|
||||||
|
|
||||||
@@ -32,17 +35,28 @@ namespace GHelper.Ally
|
|||||||
|
|
||||||
public class AllyControl
|
public class AllyControl
|
||||||
{
|
{
|
||||||
System.Timers.Timer timer = default!;
|
static System.Timers.Timer timer = default!;
|
||||||
static AmdGpuControl amdControl = new AmdGpuControl();
|
static AmdGpuControl amdControl = new AmdGpuControl();
|
||||||
|
|
||||||
SettingsForm settings;
|
SettingsForm settings;
|
||||||
|
|
||||||
static ControllerMode _mode = ControllerMode.Auto;
|
static ControllerMode _mode = ControllerMode.Auto;
|
||||||
static ControllerMode _applyMode = ControllerMode.Mouse;
|
static ControllerMode _applyMode = ControllerMode.Mouse;
|
||||||
|
|
||||||
static int _autoCount = 0;
|
static int _autoCount = 0;
|
||||||
|
|
||||||
|
static int _upCount = 0;
|
||||||
|
static int _downCount = 0;
|
||||||
|
|
||||||
|
static int tdpMin = 6;
|
||||||
|
static int tdpStable = tdpMin;
|
||||||
|
static int tdpCurrent = -1;
|
||||||
|
|
||||||
|
static bool autoTDP = false;
|
||||||
|
|
||||||
static int fpsLimit = -1;
|
static int fpsLimit = -1;
|
||||||
|
|
||||||
|
|
||||||
public const string BindA = "01-01";
|
public const string BindA = "01-01";
|
||||||
public const string BindB = "01-02";
|
public const string BindB = "01-02";
|
||||||
public const string BindX = "01-03";
|
public const string BindX = "01-03";
|
||||||
@@ -280,32 +294,116 @@ namespace GHelper.Ally
|
|||||||
public AllyControl(SettingsForm settingsForm)
|
public AllyControl(SettingsForm settingsForm)
|
||||||
{
|
{
|
||||||
if (!AppConfig.IsAlly()) return;
|
if (!AppConfig.IsAlly()) return;
|
||||||
|
|
||||||
settings = settingsForm;
|
settings = settingsForm;
|
||||||
|
|
||||||
timer = new System.Timers.Timer(300);
|
if (timer is null)
|
||||||
timer.Elapsed += Timer_Elapsed;
|
{
|
||||||
|
timer = new System.Timers.Timer(300);
|
||||||
|
timer.Elapsed += Timer_Elapsed;
|
||||||
|
Logger.WriteLine("Ally timer");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private int GetMaxTDP()
|
||||||
|
{
|
||||||
|
int tdp = AppConfig.GetMode("limit_total");
|
||||||
|
if (tdp > 0) return tdp;
|
||||||
|
switch (Modes.GetCurrentBase())
|
||||||
|
{
|
||||||
|
case 1:
|
||||||
|
return 25;
|
||||||
|
case 2:
|
||||||
|
return 10;
|
||||||
|
default:
|
||||||
|
return 15;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private int GetTDP()
|
||||||
|
{
|
||||||
|
if (tdpCurrent < 0) tdpCurrent = GetMaxTDP();
|
||||||
|
return tdpCurrent;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetTDP(int tdp, string log)
|
||||||
|
{
|
||||||
|
if (tdp < tdpStable) tdp = tdpStable;
|
||||||
|
|
||||||
|
int max = GetMaxTDP();
|
||||||
|
if (tdp > max) tdp = max;
|
||||||
|
|
||||||
|
if (tdp == tdpCurrent) return;
|
||||||
|
if (!autoTDP) return;
|
||||||
|
|
||||||
|
Program.acpi.DeviceSet(AsusACPI.PPT_APUA0, tdp, log);
|
||||||
|
Program.acpi.DeviceSet(AsusACPI.PPT_APUA3, tdp, null);
|
||||||
|
Program.acpi.DeviceSet(AsusACPI.PPT_APUC1, tdp, null);
|
||||||
|
|
||||||
|
tdpCurrent = tdp;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Timer_Elapsed(object? sender, System.Timers.ElapsedEventArgs e)
|
private void Timer_Elapsed(object? sender, System.Timers.ElapsedEventArgs e)
|
||||||
{
|
{
|
||||||
|
if (!autoTDP && _mode != ControllerMode.Auto) return;
|
||||||
|
|
||||||
float fps = amdControl.GetFPS();
|
float fps = amdControl.GetFPS();
|
||||||
|
|
||||||
ControllerMode newMode = (fps > 0) ? ControllerMode.Gamepad : ControllerMode.Mouse;
|
if (autoTDP && fpsLimit > 0 && fpsLimit <= 120)
|
||||||
|
|
||||||
if (_applyMode != newMode) _autoCount++;
|
|
||||||
else _autoCount = 0;
|
|
||||||
|
|
||||||
if (_mode != ControllerMode.Auto) return;
|
|
||||||
|
|
||||||
if (_autoCount > 2)
|
|
||||||
{
|
{
|
||||||
_autoCount = 0;
|
int power = (int)amdControl.GetGpuPower();
|
||||||
ApplyMode(newMode);
|
//Debug.WriteLine($"{power}: {fps}");
|
||||||
Logger.WriteLine(fps.ToString());
|
|
||||||
|
if (fps <= fpsLimit * 0.8) _upCount++;
|
||||||
|
else _upCount = 0;
|
||||||
|
|
||||||
|
if (fps >= fpsLimit * 0.90) _downCount++;
|
||||||
|
else _downCount = 0;
|
||||||
|
|
||||||
|
var tdp = GetTDP();
|
||||||
|
if (_upCount >= 1)
|
||||||
|
{
|
||||||
|
_downCount = 0;
|
||||||
|
_upCount = 0;
|
||||||
|
SetTDP(tdp + 1, $"AutoTDP+ [{power}]{fps}");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (_downCount >= 8 && power < tdp)
|
||||||
|
{
|
||||||
|
_upCount = 0;
|
||||||
|
_downCount--;
|
||||||
|
SetTDP(tdp - 1, $"AutoTDP- [{power}]{fps}");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (_mode == ControllerMode.Auto)
|
||||||
|
{
|
||||||
|
ControllerMode newMode = (fps > 0) ? ControllerMode.Gamepad : ControllerMode.Mouse;
|
||||||
|
|
||||||
|
if (_applyMode != newMode) _autoCount++;
|
||||||
|
else _autoCount = 0;
|
||||||
|
|
||||||
|
if (_autoCount == 3)
|
||||||
|
{
|
||||||
|
_autoCount = 0;
|
||||||
|
ApplyMode(newMode);
|
||||||
|
Logger.WriteLine($"Controller Mode {fps}: {newMode}");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void ToggleAutoTDP()
|
||||||
|
{
|
||||||
|
autoTDP = !autoTDP;
|
||||||
|
tdpCurrent = -1;
|
||||||
|
|
||||||
|
if (!autoTDP)
|
||||||
|
{
|
||||||
|
Program.modeControl.SetPerformanceMode();
|
||||||
|
}
|
||||||
|
|
||||||
|
settings.VisualiseAutoTDP(autoTDP);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Init()
|
public void Init()
|
||||||
@@ -319,7 +417,6 @@ namespace GHelper.Ally
|
|||||||
|
|
||||||
fpsLimit = amdControl.GetFPSLimit();
|
fpsLimit = amdControl.GetFPSLimit();
|
||||||
settings.VisualiseFPSLimit(fpsLimit);
|
settings.VisualiseFPSLimit(fpsLimit);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ToggleFPSLimit()
|
public void ToggleFPSLimit()
|
||||||
@@ -479,7 +576,7 @@ namespace GHelper.Ally
|
|||||||
DecodeBinding(KeyR2).CopyTo(bindings, 38);
|
DecodeBinding(KeyR2).CopyTo(bindings, 38);
|
||||||
|
|
||||||
//AsusHid.WriteInput(CommandReady, null);
|
//AsusHid.WriteInput(CommandReady, null);
|
||||||
AsusHid.WriteInput(bindings, $"B{zone}");
|
AsusHid.WriteInput(bindings, null);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -495,19 +592,19 @@ namespace GHelper.Ally
|
|||||||
(byte)AppConfig.Get("ls_max", 100),
|
(byte)AppConfig.Get("ls_max", 100),
|
||||||
(byte)AppConfig.Get("rs_min", 0),
|
(byte)AppConfig.Get("rs_min", 0),
|
||||||
(byte)AppConfig.Get("rs_max", 100)
|
(byte)AppConfig.Get("rs_max", 100)
|
||||||
}, "StickDeadzone");
|
}, null);
|
||||||
|
|
||||||
AsusHid.WriteInput(new byte[] { AsusHid.INPUT_ID, 0xd1, 5, 4,
|
AsusHid.WriteInput(new byte[] { AsusHid.INPUT_ID, 0xd1, 5, 4,
|
||||||
(byte)AppConfig.Get("lt_min", 0),
|
(byte)AppConfig.Get("lt_min", 0),
|
||||||
(byte)AppConfig.Get("lt_max", 100),
|
(byte)AppConfig.Get("lt_max", 100),
|
||||||
(byte)AppConfig.Get("rt_min", 0),
|
(byte)AppConfig.Get("rt_min", 0),
|
||||||
(byte)AppConfig.Get("rt_max", 100)
|
(byte)AppConfig.Get("rt_max", 100)
|
||||||
}, "TriggerDeadzone");
|
}, null);
|
||||||
|
|
||||||
AsusHid.WriteInput(new byte[] { AsusHid.INPUT_ID, 0xd1, 6, 2,
|
AsusHid.WriteInput(new byte[] { AsusHid.INPUT_ID, 0xd1, 6, 2,
|
||||||
(byte)AppConfig.Get("vibra", 100),
|
(byte)AppConfig.Get("vibra", 100),
|
||||||
(byte)AppConfig.Get("vibra", 100)
|
(byte)AppConfig.Get("vibra", 100)
|
||||||
}, "Vibration");
|
}, null);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -572,18 +669,11 @@ namespace GHelper.Ally
|
|||||||
_mode = mode;
|
_mode = mode;
|
||||||
AppConfig.Set("controller_mode", (int)mode);
|
AppConfig.Set("controller_mode", (int)mode);
|
||||||
|
|
||||||
|
amdControl.StopFPS();
|
||||||
ApplyMode(mode, init);
|
ApplyMode(mode, init);
|
||||||
|
|
||||||
if (mode == ControllerMode.Auto)
|
amdControl.StartFPS();
|
||||||
{
|
timer.Start();
|
||||||
amdControl.StartFPS();
|
|
||||||
timer.Start();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
timer.Stop();
|
|
||||||
amdControl.StopFPS();
|
|
||||||
}
|
|
||||||
|
|
||||||
settings.VisualiseController(mode);
|
settings.VisualiseController(mode);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -411,12 +411,12 @@ public static class AppConfig
|
|||||||
|
|
||||||
public static bool IsOLED()
|
public static bool IsOLED()
|
||||||
{
|
{
|
||||||
return ContainsModel("OLED") || IsSlash() || ContainsModel("M7600") || ContainsModel("UX64") || ContainsModel("UX34") || ContainsModel("UX53") || ContainsModel("K360") || ContainsModel("X150") || ContainsModel("M350") || ContainsModel("K650") || ContainsModel("UM53") || ContainsModel("K660") || ContainsModel("UX84") || ContainsModel("M650") || ContainsModel("K340") || ContainsModel("K350") || ContainsModel("M140") || ContainsModel("UM340");
|
return ContainsModel("OLED") || IsSlash() || ContainsModel("M7600") || ContainsModel("UX64") || ContainsModel("UX34") || ContainsModel("UX53") || ContainsModel("K360") || ContainsModel("X150") || ContainsModel("M350") || ContainsModel("K650") || ContainsModel("UM53") || ContainsModel("K660") || ContainsModel("UX84") || ContainsModel("M650") || ContainsModel("K340") || ContainsModel("K350") || ContainsModel("M140") || ContainsModel("UM340") || ContainsModel("S540");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static bool IsNoOverdrive()
|
public static bool IsNoOverdrive()
|
||||||
{
|
{
|
||||||
return Is("no_overdrive") || IsOLED();
|
return Is("no_overdrive");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static bool IsNoSleepEvent()
|
public static bool IsNoSleepEvent()
|
||||||
|
|||||||
@@ -167,6 +167,9 @@ public class AsusACPI
|
|||||||
public const int PCoreMax = 16;
|
public const int PCoreMax = 16;
|
||||||
public const int ECoreMax = 16;
|
public const int ECoreMax = 16;
|
||||||
|
|
||||||
|
private bool? _allAMD = null;
|
||||||
|
private bool? _overdrive = null;
|
||||||
|
|
||||||
|
|
||||||
[DllImport("kernel32.dll", SetLastError = true, CharSet = CharSet.Unicode)]
|
[DllImport("kernel32.dll", SetLastError = true, CharSet = CharSet.Unicode)]
|
||||||
private static extern IntPtr CreateFile(
|
private static extern IntPtr CreateFile(
|
||||||
@@ -636,8 +639,14 @@ public class AsusACPI
|
|||||||
|
|
||||||
public bool IsAllAmdPPT()
|
public bool IsAllAmdPPT()
|
||||||
{
|
{
|
||||||
//return false;
|
if (_allAMD is null) _allAMD = DeviceGet(PPT_CPUB0) >= 0 && DeviceGet(PPT_GPUC0) < 0;
|
||||||
return DeviceGet(PPT_CPUB0) >= 0 && DeviceGet(PPT_GPUC0) < 0;
|
return (bool)_allAMD;
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool IsOverdriveSupported()
|
||||||
|
{
|
||||||
|
if (_overdrive is null) _overdrive = DeviceGet(ScreenOverdrive) >= 0;
|
||||||
|
return (bool)_overdrive;
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsNVidiaGPU()
|
public bool IsNVidiaGPU()
|
||||||
|
|||||||
@@ -51,10 +51,10 @@ namespace GHelper.Display
|
|||||||
ScreenNative.SetRefreshRate(laptopScreen, frequency);
|
ScreenNative.SetRefreshRate(laptopScreen, frequency);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (overdrive >= 0)
|
if (Program.acpi.IsOverdriveSupported() && overdrive >= 0)
|
||||||
{
|
{
|
||||||
if (AppConfig.IsNoOverdrive()) overdrive = 0;
|
if (AppConfig.IsNoOverdrive()) overdrive = 0;
|
||||||
if (!AppConfig.IsOLED() && overdrive != Program.acpi.DeviceGet(AsusACPI.ScreenOverdrive))
|
if (overdrive != Program.acpi.DeviceGet(AsusACPI.ScreenOverdrive))
|
||||||
{
|
{
|
||||||
Program.acpi.DeviceSet(AsusACPI.ScreenOverdrive, overdrive, "ScreenOverdrive");
|
Program.acpi.DeviceSet(AsusACPI.ScreenOverdrive, overdrive, "ScreenOverdrive");
|
||||||
}
|
}
|
||||||
@@ -65,7 +65,10 @@ namespace GHelper.Display
|
|||||||
if (Program.acpi.DeviceGet(AsusACPI.ScreenMiniled1) >= 0)
|
if (Program.acpi.DeviceGet(AsusACPI.ScreenMiniled1) >= 0)
|
||||||
Program.acpi.DeviceSet(AsusACPI.ScreenMiniled1, miniled, "Miniled1");
|
Program.acpi.DeviceSet(AsusACPI.ScreenMiniled1, miniled, "Miniled1");
|
||||||
else
|
else
|
||||||
|
{
|
||||||
Program.acpi.DeviceSet(AsusACPI.ScreenMiniled2, miniled, "Miniled2");
|
Program.acpi.DeviceSet(AsusACPI.ScreenMiniled2, miniled, "Miniled2");
|
||||||
|
Thread.Sleep(100);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
InitScreen();
|
InitScreen();
|
||||||
@@ -84,7 +87,7 @@ namespace GHelper.Display
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public int ToogleMiniled()
|
public string ToogleMiniled()
|
||||||
{
|
{
|
||||||
int miniled1 = Program.acpi.DeviceGet(AsusACPI.ScreenMiniled1);
|
int miniled1 = Program.acpi.DeviceGet(AsusACPI.ScreenMiniled1);
|
||||||
int miniled2 = Program.acpi.DeviceGet(AsusACPI.ScreenMiniled2);
|
int miniled2 = Program.acpi.DeviceGet(AsusACPI.ScreenMiniled2);
|
||||||
@@ -92,24 +95,45 @@ namespace GHelper.Display
|
|||||||
Logger.WriteLine($"MiniledToggle: {miniled1} {miniled2}");
|
Logger.WriteLine($"MiniledToggle: {miniled1} {miniled2}");
|
||||||
|
|
||||||
int miniled;
|
int miniled;
|
||||||
|
string name;
|
||||||
|
|
||||||
if (miniled1 >= 0)
|
if (miniled1 >= 0)
|
||||||
{
|
{
|
||||||
miniled = (miniled1 == 1) ? 0 : 1;
|
switch (miniled1)
|
||||||
|
{
|
||||||
|
case 1:
|
||||||
|
miniled = 0;
|
||||||
|
name = Properties.Strings.OneZone;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
miniled = 1;
|
||||||
|
name = Properties.Strings.Multizone;
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
switch (miniled2)
|
switch (miniled2)
|
||||||
{
|
{
|
||||||
case 1: miniled = 2; break;
|
case 1:
|
||||||
case 2: miniled = 0; break;
|
miniled = 2;
|
||||||
default: miniled = 1; break;
|
name = Properties.Strings.OneZone;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
miniled = 0;
|
||||||
|
name = Properties.Strings.Multizone;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
miniled = 1;
|
||||||
|
name = Properties.Strings.MultizoneStrong;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
AppConfig.Set("miniled", miniled);
|
AppConfig.Set("miniled", miniled);
|
||||||
SetScreen(miniled: miniled);
|
SetScreen(miniled: miniled);
|
||||||
return miniled;
|
|
||||||
|
return name;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void InitScreen()
|
public void InitScreen()
|
||||||
@@ -119,7 +143,7 @@ namespace GHelper.Display
|
|||||||
int maxFrequency = ScreenNative.GetMaxRefreshRate(laptopScreen);
|
int maxFrequency = ScreenNative.GetMaxRefreshRate(laptopScreen);
|
||||||
|
|
||||||
bool screenAuto = AppConfig.Is("screen_auto");
|
bool screenAuto = AppConfig.Is("screen_auto");
|
||||||
bool overdriveSetting = !AppConfig.IsNoOverdrive();
|
bool overdriveSetting = Program.acpi.IsOverdriveSupported() && !AppConfig.IsNoOverdrive();
|
||||||
|
|
||||||
int overdrive = AppConfig.IsNoOverdrive() ? 0 : Program.acpi.DeviceGet(AsusACPI.ScreenOverdrive);
|
int overdrive = AppConfig.IsNoOverdrive() ? 0 : Program.acpi.DeviceGet(AsusACPI.ScreenOverdrive);
|
||||||
|
|
||||||
|
|||||||
@@ -166,7 +166,8 @@ namespace GHelper.Display
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var devices = GetAllDevices().ToArray();
|
var devicesList = GetAllDevices();
|
||||||
|
var devices = devicesList.ToArray();
|
||||||
string internalName = AppConfig.GetString("internal_display");
|
string internalName = AppConfig.GetString("internal_display");
|
||||||
|
|
||||||
foreach (var device in devices)
|
foreach (var device in devices)
|
||||||
|
|||||||
@@ -223,10 +223,7 @@ namespace GHelper
|
|||||||
checkUSBC.Visible = false;
|
checkUSBC.Visible = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (AppConfig.IsOLED())
|
checkNoOverdrive.Visible = Program.acpi.IsOverdriveSupported();
|
||||||
{
|
|
||||||
checkNoOverdrive.Visible = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Change text and hide irrelevant options on the ROG Ally,
|
// Change text and hide irrelevant options on the ROG Ally,
|
||||||
// which is a bit of a special case piece of hardware.
|
// which is a bit of a special case piece of hardware.
|
||||||
@@ -256,7 +253,6 @@ namespace GHelper
|
|||||||
checkGpuApps.Visible = false;
|
checkGpuApps.Visible = false;
|
||||||
checkUSBC.Visible = false;
|
checkUSBC.Visible = false;
|
||||||
checkAutoToggleClamshellMode.Visible = false;
|
checkAutoToggleClamshellMode.Visible = false;
|
||||||
checkNoOverdrive.Visible = false;
|
|
||||||
|
|
||||||
int apuMem = Program.acpi.GetAPUMem();
|
int apuMem = Program.acpi.GetAPUMem();
|
||||||
if (apuMem >= 0)
|
if (apuMem >= 0)
|
||||||
|
|||||||
@@ -674,7 +674,7 @@ namespace GHelper
|
|||||||
private void trackGPUClockLimit_Scroll(object? sender, EventArgs e)
|
private void trackGPUClockLimit_Scroll(object? sender, EventArgs e)
|
||||||
{
|
{
|
||||||
|
|
||||||
int maxClock = (int)Math.Round((float)trackGPUClockLimit.Value / 50) * 50;
|
int maxClock = (int)Math.Round((float)trackGPUClockLimit.Value / 5) * 5;
|
||||||
|
|
||||||
trackGPUClockLimit.Value = maxClock;
|
trackGPUClockLimit.Value = maxClock;
|
||||||
AppConfig.SetMode("gpu_clock_limit", maxClock);
|
AppConfig.SetMode("gpu_clock_limit", maxClock);
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
<ProduceReferenceAssembly>False</ProduceReferenceAssembly>
|
<ProduceReferenceAssembly>False</ProduceReferenceAssembly>
|
||||||
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
|
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
|
||||||
<AssemblyVersion>0.168</AssemblyVersion>
|
<AssemblyVersion>0.170</AssemblyVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
||||||
|
|||||||
@@ -119,6 +119,18 @@ public class AmdGpuControl : IGpuControl
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int? GetGpuPower()
|
||||||
|
{
|
||||||
|
if (_adlContextHandle == nint.Zero || _iGPU == null) return null;
|
||||||
|
if (ADL2_New_QueryPMLogData_Get(_adlContextHandle, ((ADLAdapterInfo)_iGPU).AdapterIndex, out ADLPMLogDataOutput adlpmLogDataOutput) != Adl2.ADL_SUCCESS) return null;
|
||||||
|
|
||||||
|
ADLSingleSensorData gpuUsage = adlpmLogDataOutput.Sensors[(int)ADLSensorType.PMLOG_ASIC_POWER];
|
||||||
|
if (gpuUsage.Supported == 0) return null;
|
||||||
|
|
||||||
|
return gpuUsage.Value;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public bool SetVariBright(int enabled)
|
public bool SetVariBright(int enabled)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ public class NvidiaGpuControl : IGpuControl
|
|||||||
public static int MinCoreOffset = AppConfig.Get("min_gpu_core", -250);
|
public static int MinCoreOffset = AppConfig.Get("min_gpu_core", -250);
|
||||||
public static int MinMemoryOffset = AppConfig.Get("min_gpu_memory", -500);
|
public static int MinMemoryOffset = AppConfig.Get("min_gpu_memory", -500);
|
||||||
|
|
||||||
public const int MinClockLimit = 400;
|
public static int MinClockLimit = AppConfig.Get("min_gpu_clock", 400);
|
||||||
public const int MaxClockLimit = 3000;
|
public const int MaxClockLimit = 3000;
|
||||||
|
|
||||||
private static PhysicalGPU? _internalGpu;
|
private static PhysicalGPU? _internalGpu;
|
||||||
|
|||||||
@@ -15,22 +15,29 @@ namespace GHelper.Helpers
|
|||||||
|
|
||||||
public bool IsExternalDisplayConnected()
|
public bool IsExternalDisplayConnected()
|
||||||
{
|
{
|
||||||
var devices = ScreenInterrogatory.GetAllDevices().ToArray();
|
try
|
||||||
|
|
||||||
string internalName = AppConfig.GetString("internal_display");
|
|
||||||
|
|
||||||
foreach (var device in devices)
|
|
||||||
{
|
{
|
||||||
if (device.outputTechnology != ScreenInterrogatory.DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.DISPLAYCONFIG_OUTPUT_TECHNOLOGY_INTERNAL &&
|
var devicesList = ScreenInterrogatory.GetAllDevices();
|
||||||
device.outputTechnology != ScreenInterrogatory.DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.DISPLAYCONFIG_OUTPUT_TECHNOLOGY_DISPLAYPORT_EMBEDDED
|
var devices = devicesList.ToArray();
|
||||||
&& device.monitorFriendlyDeviceName != internalName)
|
|
||||||
|
string internalName = AppConfig.GetString("internal_display");
|
||||||
|
|
||||||
|
foreach (var device in devices)
|
||||||
{
|
{
|
||||||
Logger.WriteLine("Found external screen: " + device.monitorFriendlyDeviceName + ":" + device.outputTechnology.ToString());
|
if (device.outputTechnology != ScreenInterrogatory.DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.DISPLAYCONFIG_OUTPUT_TECHNOLOGY_INTERNAL &&
|
||||||
|
device.outputTechnology != ScreenInterrogatory.DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.DISPLAYCONFIG_OUTPUT_TECHNOLOGY_DISPLAYPORT_EMBEDDED
|
||||||
|
&& device.monitorFriendlyDeviceName != internalName)
|
||||||
|
{
|
||||||
|
Logger.WriteLine("Found external screen: " + device.monitorFriendlyDeviceName + ":" + device.outputTechnology.ToString());
|
||||||
|
|
||||||
|
//Already found one, we do not have to check whether there are more
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
//Already found one, we do not have to check whether there are more
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
} catch (Exception ex)
|
||||||
|
{
|
||||||
|
Logger.WriteLine(ex.ToString());
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -490,8 +490,8 @@ namespace GHelper.Input
|
|||||||
break;
|
break;
|
||||||
case "miniled":
|
case "miniled":
|
||||||
if (ScreenCCD.GetHDRStatus()) return;
|
if (ScreenCCD.GetHDRStatus()) return;
|
||||||
int miniled = screenControl.ToogleMiniled();
|
string miniledName = screenControl.ToogleMiniled();
|
||||||
Program.toast.RunToast(miniled == 1 ? "Multi-Zone" : "Single-Zone", miniled == 1 ? ToastIcon.BrightnessUp : ToastIcon.BrightnessDown);
|
Program.toast.RunToast(miniledName, miniledName == Properties.Strings.OneZone ? ToastIcon.BrightnessDown : ToastIcon.BrightnessUp);
|
||||||
break;
|
break;
|
||||||
case "aura":
|
case "aura":
|
||||||
Program.settingsForm.BeginInvoke(Program.settingsForm.CycleAuraMode);
|
Program.settingsForm.BeginInvoke(Program.settingsForm.CycleAuraMode);
|
||||||
|
|||||||
@@ -159,6 +159,18 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class ROGKerisWirelessWiredC : ROGKerisWireless
|
||||||
|
{
|
||||||
|
public ROGKerisWirelessWiredC() : base(0x195C, false)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public override string GetDisplayName()
|
||||||
|
{
|
||||||
|
return "ROG Keris (Wired)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public class ROGKerisWirelessWired : ROGKerisWireless
|
public class ROGKerisWirelessWired : ROGKerisWireless
|
||||||
{
|
{
|
||||||
public ROGKerisWirelessWired() : base(0x195E, false)
|
public ROGKerisWirelessWired() : base(0x195E, false)
|
||||||
|
|||||||
@@ -191,6 +191,7 @@ namespace GHelper.Peripherals
|
|||||||
DetectMouse(new GladiusII());
|
DetectMouse(new GladiusII());
|
||||||
DetectMouse(new ROGKerisWireless());
|
DetectMouse(new ROGKerisWireless());
|
||||||
DetectMouse(new ROGKerisWirelessWired());
|
DetectMouse(new ROGKerisWirelessWired());
|
||||||
|
DetectMouse(new ROGKerisWirelessWiredC());
|
||||||
DetectMouse(new ROGKerisWirelessEvaEdition());
|
DetectMouse(new ROGKerisWirelessEvaEdition());
|
||||||
DetectMouse(new ROGKerisWirelessEvaEditionWired());
|
DetectMouse(new ROGKerisWirelessEvaEditionWired());
|
||||||
DetectMouse(new TUFM4Wirelss());
|
DetectMouse(new TUFM4Wirelss());
|
||||||
|
|||||||
@@ -154,7 +154,7 @@
|
|||||||
<value>Anime Matrix</value>
|
<value>Anime Matrix</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="AppAlreadyRunning" xml:space="preserve">
|
<data name="AppAlreadyRunning" xml:space="preserve">
|
||||||
<value>Appen kører allerede</value>
|
<value>App'en kører allerede</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="AppAlreadyRunningText" xml:space="preserve">
|
<data name="AppAlreadyRunningText" xml:space="preserve">
|
||||||
<value>G-Helper kører allerede. Tjek systembakken for et ikon.</value>
|
<value>G-Helper kører allerede. Tjek systembakken for et ikon.</value>
|
||||||
@@ -175,7 +175,7 @@
|
|||||||
<value>Hukommelse tildelt til GPU</value>
|
<value>Hukommelse tildelt til GPU</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="AsusServicesRunning" xml:space="preserve">
|
<data name="AsusServicesRunning" xml:space="preserve">
|
||||||
<value>Kørende Asus-tjenester</value>
|
<value>Kørende ASUS-tjenester</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="AuraBatteryState" xml:space="preserve">
|
<data name="AuraBatteryState" xml:space="preserve">
|
||||||
<value>Batteritilstand</value>
|
<value>Batteritilstand</value>
|
||||||
@@ -301,7 +301,7 @@
|
|||||||
<value>Boot</value>
|
<value>Boot</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="BootSound" xml:space="preserve">
|
<data name="BootSound" xml:space="preserve">
|
||||||
<value>Boot-lyd</value>
|
<value>Opstarts-lyd</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Brightness" xml:space="preserve">
|
<data name="Brightness" xml:space="preserve">
|
||||||
<value>Lysstyrke</value>
|
<value>Lysstyrke</value>
|
||||||
@@ -313,7 +313,7 @@
|
|||||||
<value>Lysstyrke op</value>
|
<value>Lysstyrke op</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="BWTrayIcon" xml:space="preserve">
|
<data name="BWTrayIcon" xml:space="preserve">
|
||||||
<value>Sort og hvid bakkeikon</value>
|
<value>Sort/hvid bakkeikon</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Calibrate" xml:space="preserve">
|
<data name="Calibrate" xml:space="preserve">
|
||||||
<value>Kalibrer</value>
|
<value>Kalibrer</value>
|
||||||
@@ -349,7 +349,7 @@
|
|||||||
<value>Deaktiver ved lukning af låg</value>
|
<value>Deaktiver ved lukning af låg</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="DisableOverdrive" xml:space="preserve">
|
<data name="DisableOverdrive" xml:space="preserve">
|
||||||
<value>Deaktiver overdrive på skærmen</value>
|
<value>Deaktiver Overdrive på skærmen</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Discharging" xml:space="preserve">
|
<data name="Discharging" xml:space="preserve">
|
||||||
<value>Aflader</value>
|
<value>Aflader</value>
|
||||||
@@ -393,7 +393,7 @@ Vil du stadig fortsætte?</value>
|
|||||||
<value>Ekstra indstillinger</value>
|
<value>Ekstra indstillinger</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="FactoryDefaults" xml:space="preserve">
|
<data name="FactoryDefaults" xml:space="preserve">
|
||||||
<value>Standard fabriksindstillinger</value>
|
<value>Gendan standarder</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="FanCurves" xml:space="preserve">
|
<data name="FanCurves" xml:space="preserve">
|
||||||
<value>Blæserkurver</value>
|
<value>Blæserkurver</value>
|
||||||
@@ -411,13 +411,13 @@ Vil du stadig fortsætte?</value>
|
|||||||
<value>Blæserprofiler</value>
|
<value>Blæserprofiler</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="FansAndPower" xml:space="preserve">
|
<data name="FansAndPower" xml:space="preserve">
|
||||||
<value>Blæsere og kraft</value>
|
<value>Blæsere og strøm</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="FanSpeed" xml:space="preserve">
|
<data name="FanSpeed" xml:space="preserve">
|
||||||
<value>Blæser</value>
|
<value>Blæser</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="FansPower" xml:space="preserve">
|
<data name="FansPower" xml:space="preserve">
|
||||||
<value>Blæser + Kraft</value>
|
<value>Blæser + Strøm</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="FlickerFreeDimming" xml:space="preserve">
|
<data name="FlickerFreeDimming" xml:space="preserve">
|
||||||
<value>Flimmerfri dæmpning</value>
|
<value>Flimmerfri dæmpning</value>
|
||||||
@@ -426,10 +426,10 @@ Vil du stadig fortsætte?</value>
|
|||||||
<value>Aktiver Fn + F genvejstaster uden Fn</value>
|
<value>Aktiver Fn + F genvejstaster uden Fn</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="FnLockOff" xml:space="preserve">
|
<data name="FnLockOff" xml:space="preserve">
|
||||||
<value>FN-lås fra</value>
|
<value>Fn-lås fra</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="FnLockOn" xml:space="preserve">
|
<data name="FnLockOn" xml:space="preserve">
|
||||||
<value>FN-lås til</value>
|
<value>Fn-lås til</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GPUBoost" xml:space="preserve">
|
<data name="GPUBoost" xml:space="preserve">
|
||||||
<value>Dynamisk boost</value>
|
<value>Dynamisk boost</value>
|
||||||
@@ -438,13 +438,13 @@ Vil du stadig fortsætte?</value>
|
|||||||
<value>Skifter</value>
|
<value>Skifter</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GPUCoreClockOffset" xml:space="preserve">
|
<data name="GPUCoreClockOffset" xml:space="preserve">
|
||||||
<value>Core Clock forskydning</value>
|
<value>Core Clock offset</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GPUMemoryClockOffset" xml:space="preserve">
|
<data name="GPUMemoryClockOffset" xml:space="preserve">
|
||||||
<value>Memory Clock forskydning</value>
|
<value>Memory Clock offset</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GPUMode" xml:space="preserve">
|
<data name="GPUMode" xml:space="preserve">
|
||||||
<value>GPU- tilstand</value>
|
<value>GPU-tilstand</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GPUModeEco" xml:space="preserve">
|
<data name="GPUModeEco" xml:space="preserve">
|
||||||
<value>Kun iGPU</value>
|
<value>Kun iGPU</value>
|
||||||
@@ -456,7 +456,7 @@ Vil du stadig fortsætte?</value>
|
|||||||
<value>dGPU eksklusivt</value>
|
<value>dGPU eksklusivt</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GPUPower" xml:space="preserve">
|
<data name="GPUPower" xml:space="preserve">
|
||||||
<value>GPU- strøm</value>
|
<value>GPU-strøm</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GPUSettings" xml:space="preserve">
|
<data name="GPUSettings" xml:space="preserve">
|
||||||
<value>GPU-indstillinger</value>
|
<value>GPU-indstillinger</value>
|
||||||
@@ -486,13 +486,13 @@ Vil du stadig fortsætte?</value>
|
|||||||
<value>Stop alle apps der bruger GPU når du skifter til Øko</value>
|
<value>Stop alle apps der bruger GPU når du skifter til Øko</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="LaptopBacklight" xml:space="preserve">
|
<data name="LaptopBacklight" xml:space="preserve">
|
||||||
<value>Bærbar baggrundsbelysning</value>
|
<value>Laptop baggrundsbelysning</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="LaptopKeyboard" xml:space="preserve">
|
<data name="LaptopKeyboard" xml:space="preserve">
|
||||||
<value>Bærbar tastatur</value>
|
<value>Laptop-tastatur</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="LaptopScreen" xml:space="preserve">
|
<data name="LaptopScreen" xml:space="preserve">
|
||||||
<value>Bærbar skærm</value>
|
<value>Laptop-skærm</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="LEDStatusIndicators" xml:space="preserve">
|
<data name="LEDStatusIndicators" xml:space="preserve">
|
||||||
<value>LED statusindikatorer</value>
|
<value>LED statusindikatorer</value>
|
||||||
@@ -561,7 +561,7 @@ Vil du stadig fortsætte?</value>
|
|||||||
<value>minutter</value>
|
<value>minutter</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="MouseAngleSnapping" xml:space="preserve">
|
<data name="MouseAngleSnapping" xml:space="preserve">
|
||||||
<value>Vinkel snapping</value>
|
<value>Vinkel-snapping</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="MouseAutoPowerOff" xml:space="preserve">
|
<data name="MouseAutoPowerOff" xml:space="preserve">
|
||||||
<value>Automatisk slukning efter</value>
|
<value>Automatisk slukning efter</value>
|
||||||
@@ -627,7 +627,7 @@ Vil du stadig fortsætte?</value>
|
|||||||
<value>Skift til Øko på batteri og til Standard, når tilsluttet strøm</value>
|
<value>Skift til Øko på batteri og til Standard, når tilsluttet strøm</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="OptimizedUSBC" xml:space="preserve">
|
<data name="OptimizedUSBC" xml:space="preserve">
|
||||||
<value>Hold GPU deaktiveret på USB-C-oplader i optimeret tilstand</value>
|
<value>Hold GPU deaktiveret på USB-C oplader i optimeret tilstand</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Other" xml:space="preserve">
|
<data name="Other" xml:space="preserve">
|
||||||
<value>Andet</value>
|
<value>Andet</value>
|
||||||
@@ -651,10 +651,10 @@ Vil du stadig fortsætte?</value>
|
|||||||
<value>Polling Rate</value>
|
<value>Polling Rate</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="PowerLimits" xml:space="preserve">
|
<data name="PowerLimits" xml:space="preserve">
|
||||||
<value>Kraftgrænser</value>
|
<value>Strømgrænser</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="PPTExperimental" xml:space="preserve">
|
<data name="PPTExperimental" xml:space="preserve">
|
||||||
<value>Kraftgrænser er en eksperimentel funktion. Brug omhyggeligt og på egen risiko!</value>
|
<value>Strømgrænser er en eksperimentel funktion. Brug omhyggeligt og på egen risiko!</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="PrintScreen" xml:space="preserve">
|
<data name="PrintScreen" xml:space="preserve">
|
||||||
<value>PrintScreen</value>
|
<value>PrintScreen</value>
|
||||||
@@ -729,10 +729,10 @@ Vil du stadig fortsætte?</value>
|
|||||||
<value>Slå Aura til/fra</value>
|
<value>Slå Aura til/fra</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="ToggleClamshellMode" xml:space="preserve">
|
<data name="ToggleClamshellMode" xml:space="preserve">
|
||||||
<value>Automatisk slå Clamshell tilstand til/fra</value>
|
<value>Slå automatisk Clamshell-tilstand til/fra</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="ToggleFnLock" xml:space="preserve">
|
<data name="ToggleFnLock" xml:space="preserve">
|
||||||
<value>Slå Fn-Lock til/fra</value>
|
<value>Slå Fn-lås til/fra</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="ToggleMiniled" xml:space="preserve">
|
<data name="ToggleMiniled" xml:space="preserve">
|
||||||
<value>Slå MiniLED til/fra (hvis understøttet)</value>
|
<value>Slå MiniLED til/fra (hvis understøttet)</value>
|
||||||
@@ -750,7 +750,7 @@ Vil du stadig fortsætte?</value>
|
|||||||
<value>Deaktiver på batteri</value>
|
<value>Deaktiver på batteri</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="UltimateGPUTooltip" xml:space="preserve">
|
<data name="UltimateGPUTooltip" xml:space="preserve">
|
||||||
<value>Kobler bærbar skærm direkte til dGPU, hvilket maksimerer FPS</value>
|
<value>Kobler laptop-skærmen direkte til dGPU, hvilket maksimerer FPS</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="UltimateMode" xml:space="preserve">
|
<data name="UltimateMode" xml:space="preserve">
|
||||||
<value>Ultimativ</value>
|
<value>Ultimativ</value>
|
||||||
@@ -759,7 +759,7 @@ Vil du stadig fortsætte?</value>
|
|||||||
<value>Undervolting er en eksperimentel og risikabel funktion. Hvis de anvendte værdier er for lave for din hardware, kan det blive ustabilt, lukke ned eller forårsage datakorruption. Hvis du ønsker at prøve - start fra små værdier først, klik på Anvend og test hvad der virker for dig.</value>
|
<value>Undervolting er en eksperimentel og risikabel funktion. Hvis de anvendte værdier er for lave for din hardware, kan det blive ustabilt, lukke ned eller forårsage datakorruption. Hvis du ønsker at prøve - start fra små værdier først, klik på Anvend og test hvad der virker for dig.</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Unmuted" xml:space="preserve">
|
<data name="Unmuted" xml:space="preserve">
|
||||||
<value>Ikke muted</value>
|
<value>Ikke lydløs</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Updates" xml:space="preserve">
|
<data name="Updates" xml:space="preserve">
|
||||||
<value>Opdateringer</value>
|
<value>Opdateringer</value>
|
||||||
|
|||||||
@@ -118,16 +118,16 @@
|
|||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
</resheader>
|
</resheader>
|
||||||
<data name="Acceleration" xml:space="preserve">
|
<data name="Acceleration" xml:space="preserve">
|
||||||
<value>Acceleration</value>
|
<value>가속</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="ACPIError" xml:space="preserve">
|
<data name="ACPIError" xml:space="preserve">
|
||||||
<value>ASUS ACPI에 연결할 수 없어 응용 프로그램이 작동하지 않습니다. Asus System Control Interface를 먼저 설치하십시오.</value>
|
<value>ASUS ACPI에 연결할 수 없어 응용 프로그램이 작동하지 않습니다. Asus System Control Interface를 먼저 설치하십시오.</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="AlertAPUMemoryRestart" xml:space="preserve">
|
<data name="AlertAPUMemoryRestart" xml:space="preserve">
|
||||||
<value>Restart your device to apply changes</value>
|
<value>변경사항을 적용하려면 기기를 다시 시작하십시오.</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="AlertAPUMemoryRestartTitle" xml:space="preserve">
|
<data name="AlertAPUMemoryRestartTitle" xml:space="preserve">
|
||||||
<value>Restart now?</value>
|
<value>지금 다시 시작하시겠습니까?</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="AlertDGPU" xml:space="preserve">
|
<data name="AlertDGPU" xml:space="preserve">
|
||||||
<value>GPU 사용량이 높습니다. 비활성화 하시겠습니까?</value>
|
<value>GPU 사용량이 높습니다. 비활성화 하시겠습니까?</value>
|
||||||
@@ -142,10 +142,10 @@
|
|||||||
<value>Ultimate 모드를 켜기 위해서는 다시 시작해야 합니다.</value>
|
<value>Ultimate 모드를 켜기 위해서는 다시 시작해야 합니다.</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="AlertUltimateTitle" xml:space="preserve">
|
<data name="AlertUltimateTitle" xml:space="preserve">
|
||||||
<value>다시 시작하시겠습니까?</value>
|
<value>지금 다시 시작하시겠습니까?</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="AllyController" xml:space="preserve">
|
<data name="AllyController" xml:space="preserve">
|
||||||
<value>Ally Controller</value>
|
<value>Ally 컨트롤러</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="AnimationSpeed" xml:space="preserve">
|
<data name="AnimationSpeed" xml:space="preserve">
|
||||||
<value>애니메이션 속도</value>
|
<value>애니메이션 속도</value>
|
||||||
@@ -250,25 +250,25 @@
|
|||||||
<value>절전 모드 해제</value>
|
<value>절전 모드 해제</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="BacklightLow" xml:space="preserve">
|
<data name="BacklightLow" xml:space="preserve">
|
||||||
<value>Low</value>
|
<value>낮음</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="BacklightMax" xml:space="preserve">
|
<data name="BacklightMax" xml:space="preserve">
|
||||||
<value>Max</value>
|
<value>최대</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="BacklightMid" xml:space="preserve">
|
<data name="BacklightMid" xml:space="preserve">
|
||||||
<value>Mid</value>
|
<value>중간</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="BacklightOff" xml:space="preserve">
|
<data name="BacklightOff" xml:space="preserve">
|
||||||
<value>Off</value>
|
<value>꺼짐</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="BacklightTimeout" xml:space="preserve">
|
<data name="BacklightTimeout" xml:space="preserve">
|
||||||
<value>전원 / 배터리 사용 중 자동 꺼짐 시간 (0 - 항상 켜짐)</value>
|
<value>전원 / 배터리 사용 중 자동 꺼짐 시간 (0 - 항상 켜짐)</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="BacklightTimeoutBattery" xml:space="preserve">
|
<data name="BacklightTimeoutBattery" xml:space="preserve">
|
||||||
<value>Backlight Timeout when on battery</value>
|
<value>배터리 사용 중 백라이트 자동 꺼짐</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="BacklightTimeoutPlugged" xml:space="preserve">
|
<data name="BacklightTimeoutPlugged" xml:space="preserve">
|
||||||
<value>Backlight Timeout when plugged</value>
|
<value>전원 사용 중 백라이트 자동 꺼짐</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Balanced" xml:space="preserve">
|
<data name="Balanced" xml:space="preserve">
|
||||||
<value>균형</value>
|
<value>균형</value>
|
||||||
@@ -283,7 +283,7 @@
|
|||||||
<value>배터리 수명</value>
|
<value>배터리 수명</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="BatteryLimitFull" xml:space="preserve">
|
<data name="BatteryLimitFull" xml:space="preserve">
|
||||||
<value>One time charge to 100%</value>
|
<value>이번만 100%까지 충전</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Binding" xml:space="preserve">
|
<data name="Binding" xml:space="preserve">
|
||||||
<value>Binding</value>
|
<value>Binding</value>
|
||||||
@@ -301,7 +301,7 @@
|
|||||||
<value>부팅</value>
|
<value>부팅</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="BootSound" xml:space="preserve">
|
<data name="BootSound" xml:space="preserve">
|
||||||
<value>Boot Sound</value>
|
<value>부팅 사운드</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Brightness" xml:space="preserve">
|
<data name="Brightness" xml:space="preserve">
|
||||||
<value>밝기</value>
|
<value>밝기</value>
|
||||||
@@ -313,10 +313,10 @@
|
|||||||
<value>밝기 증가</value>
|
<value>밝기 증가</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="BWTrayIcon" xml:space="preserve">
|
<data name="BWTrayIcon" xml:space="preserve">
|
||||||
<value>Black and white tray icon</value>
|
<value>흑백 트레이 아이콘</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Calibrate" xml:space="preserve">
|
<data name="Calibrate" xml:space="preserve">
|
||||||
<value>Calibrate</value>
|
<value>보정</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Charging" xml:space="preserve">
|
<data name="Charging" xml:space="preserve">
|
||||||
<value>충전 중</value>
|
<value>충전 중</value>
|
||||||
@@ -325,10 +325,10 @@
|
|||||||
<value>색상</value>
|
<value>색상</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Contrast" xml:space="preserve">
|
<data name="Contrast" xml:space="preserve">
|
||||||
<value>Contrast</value>
|
<value>대비</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Controller" xml:space="preserve">
|
<data name="Controller" xml:space="preserve">
|
||||||
<value>Controller</value>
|
<value>컨트롤러</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="CPUBoost" xml:space="preserve">
|
<data name="CPUBoost" xml:space="preserve">
|
||||||
<value>CPU 부스트</value>
|
<value>CPU 부스트</value>
|
||||||
@@ -337,16 +337,16 @@
|
|||||||
<value>사용자 설정</value>
|
<value>사용자 설정</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Deceleration" xml:space="preserve">
|
<data name="Deceleration" xml:space="preserve">
|
||||||
<value>Deceleration</value>
|
<value>감속</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Default" xml:space="preserve">
|
<data name="Default" xml:space="preserve">
|
||||||
<value>기본</value>
|
<value>기본</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="DisableController" xml:space="preserve">
|
<data name="DisableController" xml:space="preserve">
|
||||||
<value>Disable Controller</value>
|
<value>컨트롤러 비활성화</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="DisableOnLidClose" xml:space="preserve">
|
<data name="DisableOnLidClose" xml:space="preserve">
|
||||||
<value>Disable on lid close</value>
|
<value>덮개를 닫을 시 비활성화</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="DisableOverdrive" xml:space="preserve">
|
<data name="DisableOverdrive" xml:space="preserve">
|
||||||
<value>화면 OD 끄기</value>
|
<value>화면 OD 끄기</value>
|
||||||
@@ -355,7 +355,7 @@
|
|||||||
<value>방전 중</value>
|
<value>방전 중</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="DownloadColorProfiles" xml:space="preserve">
|
<data name="DownloadColorProfiles" xml:space="preserve">
|
||||||
<value>Download Color Profiles</value>
|
<value>색 프로필 다운로드</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="DownloadUpdate" xml:space="preserve">
|
<data name="DownloadUpdate" xml:space="preserve">
|
||||||
<value>다운로드</value>
|
<value>다운로드</value>
|
||||||
@@ -384,7 +384,7 @@
|
|||||||
<value>Energy Settings</value>
|
<value>Energy Settings</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Export" xml:space="preserve">
|
<data name="Export" xml:space="preserve">
|
||||||
<value>Export Profile</value>
|
<value>프로필 내보내기</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Extra" xml:space="preserve">
|
<data name="Extra" xml:space="preserve">
|
||||||
<value>추가 설정</value>
|
<value>추가 설정</value>
|
||||||
@@ -426,16 +426,16 @@
|
|||||||
<value>Fn 키를 누르지 않고 Fn+F 핫키 작동</value>
|
<value>Fn 키를 누르지 않고 Fn+F 핫키 작동</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="FnLockOff" xml:space="preserve">
|
<data name="FnLockOff" xml:space="preserve">
|
||||||
<value>FN-Lock Off</value>
|
<value>FN-Lock 꺼짐</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="FnLockOn" xml:space="preserve">
|
<data name="FnLockOn" xml:space="preserve">
|
||||||
<value>FN-Lock On</value>
|
<value>FN-Lock 켜짐</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GPUBoost" xml:space="preserve">
|
<data name="GPUBoost" xml:space="preserve">
|
||||||
<value>다이나믹 부스트</value>
|
<value>다이나믹 부스트</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GPUChanging" xml:space="preserve">
|
<data name="GPUChanging" xml:space="preserve">
|
||||||
<value>충전 중</value>
|
<value>바꾸는 중</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="GPUCoreClockOffset" xml:space="preserve">
|
<data name="GPUCoreClockOffset" xml:space="preserve">
|
||||||
<value>코어 클럭 오프셋</value>
|
<value>코어 클럭 오프셋</value>
|
||||||
@@ -471,10 +471,10 @@
|
|||||||
<value>높게</value>
|
<value>높게</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="ImageRotation" xml:space="preserve">
|
<data name="ImageRotation" xml:space="preserve">
|
||||||
<value>Image Rotation</value>
|
<value>이미지 방향</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Import" xml:space="preserve">
|
<data name="Import" xml:space="preserve">
|
||||||
<value>Import Profile</value>
|
<value>프로필 가져오기</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="KeyBindings" xml:space="preserve">
|
<data name="KeyBindings" xml:space="preserve">
|
||||||
<value>키 설정</value>
|
<value>키 설정</value>
|
||||||
@@ -495,7 +495,7 @@
|
|||||||
<value>화면</value>
|
<value>화면</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="LEDStatusIndicators" xml:space="preserve">
|
<data name="LEDStatusIndicators" xml:space="preserve">
|
||||||
<value>LED Status Indicators</value>
|
<value>LED 상태 표시등</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Lid" xml:space="preserve">
|
<data name="Lid" xml:space="preserve">
|
||||||
<value>덮개</value>
|
<value>덮개</value>
|
||||||
@@ -507,7 +507,7 @@
|
|||||||
<value>조명</value>
|
<value>조명</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="LockScreen" xml:space="preserve">
|
<data name="LockScreen" xml:space="preserve">
|
||||||
<value>Lock Screen</value>
|
<value>잠금화면</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Logo" xml:space="preserve">
|
<data name="Logo" xml:space="preserve">
|
||||||
<value>로고</value>
|
<value>로고</value>
|
||||||
@@ -516,10 +516,10 @@
|
|||||||
<value>낮게</value>
|
<value>낮게</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="LSDeadzones" xml:space="preserve">
|
<data name="LSDeadzones" xml:space="preserve">
|
||||||
<value>Left Stick Deadzones</value>
|
<value>왼쪽 스틱 데드존</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="LTDeadzones" xml:space="preserve">
|
<data name="LTDeadzones" xml:space="preserve">
|
||||||
<value>Left Trigger Deadzones</value>
|
<value>왼쪽 트리거 데드존</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="MatrixAudio" xml:space="preserve">
|
<data name="MatrixAudio" xml:space="preserve">
|
||||||
<value>오디오 비주얼라이저</value>
|
<value>오디오 비주얼라이저</value>
|
||||||
@@ -591,7 +591,7 @@
|
|||||||
<value>Multi Zone Strong</value>
|
<value>Multi Zone Strong</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Muted" xml:space="preserve">
|
<data name="Muted" xml:space="preserve">
|
||||||
<value>Muted</value>
|
<value>음소거</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="MuteMic" xml:space="preserve">
|
<data name="MuteMic" xml:space="preserve">
|
||||||
<value>마이크 음소거</value>
|
<value>마이크 음소거</value>
|
||||||
@@ -609,10 +609,10 @@
|
|||||||
<value>연결되지 않음</value>
|
<value>연결되지 않음</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Off" xml:space="preserve">
|
<data name="Off" xml:space="preserve">
|
||||||
<value>Off</value>
|
<value>꺼짐</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="On" xml:space="preserve">
|
<data name="On" xml:space="preserve">
|
||||||
<value>On</value>
|
<value>켜짐</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="OneZone" xml:space="preserve">
|
<data name="OneZone" xml:space="preserve">
|
||||||
<value>One Zone</value>
|
<value>One Zone</value>
|
||||||
@@ -666,7 +666,7 @@
|
|||||||
<value>종료</value>
|
<value>종료</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Reset" xml:space="preserve">
|
<data name="Reset" xml:space="preserve">
|
||||||
<value>Reset</value>
|
<value>초기화</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="RestartGPU" xml:space="preserve">
|
<data name="RestartGPU" xml:space="preserve">
|
||||||
<value>dGPU가 사용중이기 때문에 Eco 모드로 전환할 수 없습니다. 장치 관리자에서 dGPU를 재시작하시겠습니까?</value>
|
<value>dGPU가 사용중이기 때문에 Eco 모드로 전환할 수 없습니다. 장치 관리자에서 dGPU를 재시작하시겠습니까?</value>
|
||||||
@@ -675,10 +675,10 @@
|
|||||||
<value>RPM</value>
|
<value>RPM</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="RSDeadzones" xml:space="preserve">
|
<data name="RSDeadzones" xml:space="preserve">
|
||||||
<value>Right Stick Deadzones</value>
|
<value>오른쪽 스틱 데드존</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="RTDeadzones" xml:space="preserve">
|
<data name="RTDeadzones" xml:space="preserve">
|
||||||
<value>Right Trigger Deadzones</value>
|
<value>오른쪽 트리거 데드존</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="RunOnStartup" xml:space="preserve">
|
<data name="RunOnStartup" xml:space="preserve">
|
||||||
<value>시스템 시작 시 실행</value>
|
<value>시스템 시작 시 실행</value>
|
||||||
@@ -759,7 +759,7 @@
|
|||||||
<value>언더볼팅은 실험적이며 위험한 기능입니다. 적용 값이 너무 낮은 경우 시스템이 불안정해지고, 강제 종료되거나 데이터 손상을 유발할 수 있습니다. 낮은 값부터 적용하여 잘 작동하는지 확인해 보십시오.</value>
|
<value>언더볼팅은 실험적이며 위험한 기능입니다. 적용 값이 너무 낮은 경우 시스템이 불안정해지고, 강제 종료되거나 데이터 손상을 유발할 수 있습니다. 낮은 값부터 적용하여 잘 작동하는지 확인해 보십시오.</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Unmuted" xml:space="preserve">
|
<data name="Unmuted" xml:space="preserve">
|
||||||
<value>Unmuted</value>
|
<value>음소거 해제</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Updates" xml:space="preserve">
|
<data name="Updates" xml:space="preserve">
|
||||||
<value>업데이트</value>
|
<value>업데이트</value>
|
||||||
@@ -768,16 +768,16 @@
|
|||||||
<value>버전</value>
|
<value>버전</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="VibrationStrength" xml:space="preserve">
|
<data name="VibrationStrength" xml:space="preserve">
|
||||||
<value>Vibration Strength</value>
|
<value>진동 세기</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="VisualMode" xml:space="preserve">
|
<data name="VisualMode" xml:space="preserve">
|
||||||
<value>Visual Mode</value>
|
<value>비주얼 모드</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="VisualModesHDR" xml:space="preserve">
|
<data name="VisualModesHDR" xml:space="preserve">
|
||||||
<value>Visual Modes are not available when HDR is active</value>
|
<value>HDR이 켜져 있을 때에는 비주얼 모드를 사용할 수 없습니다.</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="VisualModesScreen" xml:space="preserve">
|
<data name="VisualModesScreen" xml:space="preserve">
|
||||||
<value>Visual Modes are not available when laptop screen is off</value>
|
<value>노트북의 화면이 꺼져 있을 때에는 비주얼 모드를 사용할 수 없습니다.</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="VolumeDown" xml:space="preserve">
|
<data name="VolumeDown" xml:space="preserve">
|
||||||
<value>볼륨 작게</value>
|
<value>볼륨 작게</value>
|
||||||
@@ -792,6 +792,6 @@
|
|||||||
<value>창을 항상 맨 위로 유지</value>
|
<value>창을 항상 맨 위로 유지</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Zoom" xml:space="preserve">
|
<data name="Zoom" xml:space="preserve">
|
||||||
<value>Zoom</value>
|
<value>확대/축소</value>
|
||||||
</data>
|
</data>
|
||||||
</root>
|
</root>
|
||||||
@@ -729,7 +729,7 @@ Yine de devam etmek istiyor musunuz?</value>
|
|||||||
<value>Aura'yı Kullan</value>
|
<value>Aura'yı Kullan</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="ToggleClamshellMode" xml:space="preserve">
|
<data name="ToggleClamshellMode" xml:space="preserve">
|
||||||
<value>Kapaklı modu otmatik değiştir</value>
|
<value>Otomatik Clamshell Modunu Aç</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="ToggleFnLock" xml:space="preserve">
|
<data name="ToggleFnLock" xml:space="preserve">
|
||||||
<value>Fn-Lock'u Aç</value>
|
<value>Fn-Lock'u Aç</value>
|
||||||
|
|||||||
25
app/Settings.Designer.cs
generated
25
app/Settings.Designer.cs
generated
@@ -135,6 +135,7 @@ namespace GHelper
|
|||||||
labelGamma = new Label();
|
labelGamma = new Label();
|
||||||
pictureGamma = new PictureBox();
|
pictureGamma = new PictureBox();
|
||||||
labelGammaTitle = new Label();
|
labelGammaTitle = new Label();
|
||||||
|
buttonAutoTDP = new RButton();
|
||||||
panelMatrix.SuspendLayout();
|
panelMatrix.SuspendLayout();
|
||||||
panelMatrixAuto.SuspendLayout();
|
panelMatrixAuto.SuspendLayout();
|
||||||
tableLayoutMatrix.SuspendLayout();
|
tableLayoutMatrix.SuspendLayout();
|
||||||
@@ -766,6 +767,7 @@ namespace GHelper
|
|||||||
tableAMD.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
|
tableAMD.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
|
||||||
tableAMD.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
|
tableAMD.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
|
||||||
tableAMD.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
|
tableAMD.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
|
||||||
|
tableAMD.Controls.Add(buttonAutoTDP, 0, 0);
|
||||||
tableAMD.Controls.Add(buttonOverlay, 0, 0);
|
tableAMD.Controls.Add(buttonOverlay, 0, 0);
|
||||||
tableAMD.Controls.Add(buttonFPS, 0, 0);
|
tableAMD.Controls.Add(buttonFPS, 0, 0);
|
||||||
tableAMD.Dock = DockStyle.Top;
|
tableAMD.Dock = DockStyle.Top;
|
||||||
@@ -1893,6 +1895,28 @@ namespace GHelper
|
|||||||
labelGammaTitle.TabIndex = 37;
|
labelGammaTitle.TabIndex = 37;
|
||||||
labelGammaTitle.Text = "Flicker-free Dimming";
|
labelGammaTitle.Text = "Flicker-free Dimming";
|
||||||
//
|
//
|
||||||
|
// buttonAutoTDP
|
||||||
|
//
|
||||||
|
buttonAutoTDP.Activated = false;
|
||||||
|
buttonAutoTDP.BackColor = SystemColors.ControlLightLight;
|
||||||
|
buttonAutoTDP.BorderColor = Color.Transparent;
|
||||||
|
buttonAutoTDP.BorderRadius = 5;
|
||||||
|
buttonAutoTDP.Dock = DockStyle.Fill;
|
||||||
|
buttonAutoTDP.FlatAppearance.BorderSize = 0;
|
||||||
|
buttonAutoTDP.FlatStyle = FlatStyle.Flat;
|
||||||
|
buttonAutoTDP.ForeColor = SystemColors.ControlText;
|
||||||
|
buttonAutoTDP.Image = Properties.Resources.icons8_gauge_32;
|
||||||
|
buttonAutoTDP.ImageAlign = ContentAlignment.MiddleRight;
|
||||||
|
buttonAutoTDP.Location = new Point(528, 4);
|
||||||
|
buttonAutoTDP.Margin = new Padding(4);
|
||||||
|
buttonAutoTDP.Name = "buttonAutoTDP";
|
||||||
|
buttonAutoTDP.Secondary = false;
|
||||||
|
buttonAutoTDP.Size = new Size(255, 72);
|
||||||
|
buttonAutoTDP.TabIndex = 13;
|
||||||
|
buttonAutoTDP.Text = "AutoTDP";
|
||||||
|
buttonAutoTDP.TextImageRelation = TextImageRelation.ImageBeforeText;
|
||||||
|
buttonAutoTDP.UseVisualStyleBackColor = false;
|
||||||
|
//
|
||||||
// SettingsForm
|
// SettingsForm
|
||||||
//
|
//
|
||||||
AutoScaleDimensions = new SizeF(192F, 192F);
|
AutoScaleDimensions = new SizeF(192F, 192F);
|
||||||
@@ -2095,5 +2119,6 @@ namespace GHelper
|
|||||||
private RButton buttonInstallColor;
|
private RButton buttonInstallColor;
|
||||||
private Label labelVisual;
|
private Label labelVisual;
|
||||||
private RButton buttonFHD;
|
private RButton buttonFHD;
|
||||||
|
private RButton buttonAutoTDP;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -222,7 +222,9 @@ namespace GHelper
|
|||||||
|
|
||||||
buttonUpdates.Click += ButtonUpdates_Click;
|
buttonUpdates.Click += ButtonUpdates_Click;
|
||||||
|
|
||||||
sliderBattery.ValueChanged += SliderBattery_ValueChanged;
|
sliderBattery.MouseUp += SliderBattery_MouseUp;
|
||||||
|
sliderBattery.KeyUp += SliderBattery_KeyUp;
|
||||||
|
|
||||||
Program.trayIcon.MouseMove += TrayIcon_MouseMove;
|
Program.trayIcon.MouseMove += TrayIcon_MouseMove;
|
||||||
|
|
||||||
sensorTimer = new System.Timers.Timer(AppConfig.Get("sensor_timer", 1000));
|
sensorTimer = new System.Timers.Timer(AppConfig.Get("sensor_timer", 1000));
|
||||||
@@ -249,6 +251,9 @@ namespace GHelper
|
|||||||
|
|
||||||
buttonFPS.Click += ButtonFPS_Click;
|
buttonFPS.Click += ButtonFPS_Click;
|
||||||
buttonOverlay.Click += ButtonOverlay_Click;
|
buttonOverlay.Click += ButtonOverlay_Click;
|
||||||
|
|
||||||
|
buttonAutoTDP.Click += ButtonAutoTDP_Click;
|
||||||
|
buttonAutoTDP.BorderColor = colorTurbo;
|
||||||
|
|
||||||
Text = "G-Helper " + (ProcessHelper.IsUserAdministrator() ? "—" : "-") + " " + AppConfig.GetModelShort();
|
Text = "G-Helper " + (ProcessHelper.IsUserAdministrator() ? "—" : "-") + " " + AppConfig.GetModelShort();
|
||||||
TopMost = AppConfig.Is("topmost");
|
TopMost = AppConfig.Is("topmost");
|
||||||
@@ -272,6 +277,21 @@ namespace GHelper
|
|||||||
screenControl.ToogleFHD();
|
screenControl.ToogleFHD();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void SliderBattery_KeyUp(object? sender, KeyEventArgs e)
|
||||||
|
{
|
||||||
|
BatteryControl.SetBatteryChargeLimit(sliderBattery.Value);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SliderBattery_MouseUp(object? sender, MouseEventArgs e)
|
||||||
|
{
|
||||||
|
BatteryControl.SetBatteryChargeLimit(sliderBattery.Value);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonAutoTDP_Click(object? sender, EventArgs e)
|
||||||
|
{
|
||||||
|
allyControl.ToggleAutoTDP();
|
||||||
|
}
|
||||||
|
|
||||||
private void LabelCharge_Click(object? sender, EventArgs e)
|
private void LabelCharge_Click(object? sender, EventArgs e)
|
||||||
{
|
{
|
||||||
BatteryControl.BatteryReport();
|
BatteryControl.BatteryReport();
|
||||||
@@ -496,6 +516,12 @@ namespace GHelper
|
|||||||
buttonFPS.Text = "FPS Limit " + ((limit > 0 && limit <= 120) ? limit : "OFF");
|
buttonFPS.Text = "FPS Limit " + ((limit > 0 && limit <= 120) ? limit : "OFF");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void VisualiseAutoTDP(bool status)
|
||||||
|
{
|
||||||
|
Logger.WriteLine($"Auto TDP: {status}");
|
||||||
|
buttonAutoTDP.Activated = status;
|
||||||
|
}
|
||||||
|
|
||||||
private void SettingsForm_LostFocus(object? sender, EventArgs e)
|
private void SettingsForm_LostFocus(object? sender, EventArgs e)
|
||||||
{
|
{
|
||||||
lastLostFocus = DateTimeOffset.Now.ToUnixTimeMilliseconds();
|
lastLostFocus = DateTimeOffset.Now.ToUnixTimeMilliseconds();
|
||||||
@@ -736,11 +762,6 @@ namespace GHelper
|
|||||||
gpuControl.ToggleXGM();
|
gpuControl.ToggleXGM();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SliderBattery_ValueChanged(object? sender, EventArgs e)
|
|
||||||
{
|
|
||||||
BatteryControl.SetBatteryChargeLimit(sliderBattery.Value);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public void SetVersionLabel(string label, bool update = false)
|
public void SetVersionLabel(string label, bool update = false)
|
||||||
{
|
{
|
||||||
@@ -1210,6 +1231,7 @@ namespace GHelper
|
|||||||
else if (miniled2 >= 0)
|
else if (miniled2 >= 0)
|
||||||
{
|
{
|
||||||
buttonMiniled.Enabled = !hdr;
|
buttonMiniled.Enabled = !hdr;
|
||||||
|
if (hdr) miniled2 = 1; // Show HDR as Multizone Strong
|
||||||
|
|
||||||
switch (miniled2)
|
switch (miniled2)
|
||||||
{
|
{
|
||||||
@@ -1227,9 +1249,9 @@ namespace GHelper
|
|||||||
break;
|
break;
|
||||||
// Multizone Off
|
// Multizone Off
|
||||||
case 2:
|
case 2:
|
||||||
buttonMiniled.Text = hdr ? Properties.Strings.Multizone : Properties.Strings.OneZone;
|
buttonMiniled.Text = Properties.Strings.OneZone;
|
||||||
buttonMiniled.BorderColor = colorStandard;
|
buttonMiniled.BorderColor = colorStandard;
|
||||||
buttonMiniled.Activated = hdr;
|
buttonMiniled.Activated = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user