diff --git a/MiToolz/App.xaml b/MiToolz/App.xaml
index 5e2842d..19318ac 100644
--- a/MiToolz/App.xaml
+++ b/MiToolz/App.xaml
@@ -16,9 +16,9 @@
MiToolz v3.5.2
+ xml:space="preserve"> MiToolz v3.6.0
Build Date : 29-06-2020
+ xml:space="preserve"> Build Date : 16-07-2020
diff --git a/MiToolz/ListManager.cs b/MiToolz/ListManager.cs
index 7d03d2f..14839a2 100644
--- a/MiToolz/ListManager.cs
+++ b/MiToolz/ListManager.cs
@@ -49,7 +49,6 @@ internal IEnumerable ControlsMainTiles
{
_mw.GpuTile,
_mw.PowerPlanTile,
- _mw.AudioTile,
_mw.TimerResolutionTile,
_mw.AudioDeviceSwitchTile
};
diff --git a/MiToolz/MainWindow.xaml b/MiToolz/MainWindow.xaml
index 1b53b7b..827f54c 100644
--- a/MiToolz/MainWindow.xaml
+++ b/MiToolz/MainWindow.xaml
@@ -236,7 +236,7 @@
+ IsTabStop="False"
+ Width="202">
+ IsTabStop="False"
+ Width="223">
-
-
-
-
-
@@ -329,12 +306,11 @@
BadgePlacementMode="Top"
BadgeBackground="DarkGray"
Height="76">
-
+ Width="99"
+ Height="76" />
diff --git a/MiToolz/MainWindow.xaml.cs b/MiToolz/MainWindow.xaml.cs
index 9e0f046..23d31bb 100644
--- a/MiToolz/MainWindow.xaml.cs
+++ b/MiToolz/MainWindow.xaml.cs
@@ -28,7 +28,6 @@ public partial class MainWindow
private static string _powerPlanBalanced;
private static string _powerPlanPerformance;
private static string _sbControlFile;
- private static string _sbControlActiveProfile;
private static string _msiabFile;
private static string _isMonitoringEnabled;
private static string _appTheme;
@@ -62,7 +61,6 @@ public MainWindow()
//run startup checks, read all config settings and set corresponding UI elements
StartupSetup();
SetAppTheme();
- ShowActiveAudioProfile();
ShowActiveGpuProfile();
ShowActivePowerPlan();
ShowDefaultAudioDevice();
@@ -91,12 +89,11 @@ private static void StartupSetup()
//check for ini file, if not found then create new file and write default values to it
var myConfigManager = Properties.Resources.MyConfigManager;
- var sbControlFilePath = Properties.Resources.SBControl_FilePath;
var msiabFilePath = Properties.Resources.MSIAB_FilePath;
var defaultStockProfile = Properties.Resources.DefaultStockProfile;
var defaultOcProfile = Properties.Resources.DefaultOCProfile;
var powerPlanBalanced = Properties.Resources.PowerPlanBalanced;
- var powerPlanPerformance = Properties.Resources.PowerPlanPerformance;
+ var powerPlanPerformance = Properties.Resources.PowerPlanHighPerformance;
var defaultMonitoringEnabled = Properties.Resources.DefaultMonitoringEnabled;
var defaultAppTheme = Properties.Resources.DefaultAppTheme;
var defaultGameModeHotKey = Properties.Resources.DefaultGameModeHotKey;
@@ -112,7 +109,6 @@ private static void StartupSetup()
ConfigManager.IniWrite("OCProfile", defaultOcProfile);
ConfigManager.IniWrite("PowerPlanBalanced", powerPlanBalanced);
ConfigManager.IniWrite("PowerPlanPerformance", powerPlanPerformance);
- ConfigManager.IniWrite("SBControl_File", sbControlFilePath);
ConfigManager.IniWrite("MSIAB_File", msiabFilePath);
ConfigManager.IniWrite("IsMonitoringEnabled", defaultMonitoringEnabled);
ConfigManager.IniWrite("AppTheme", defaultAppTheme);
@@ -147,27 +143,6 @@ private static void ReadSettings()
_audioDevice1 = ConfigManager.IniRead("AudioDeviceNo1");
_audioDevice2 = ConfigManager.IniRead("AudioDeviceNo2");
_defaultAudioDevice = ConfigManager.IniRead("DefaultAudioDevice");
-
- var sbControlProfileFilePath = Properties.Resources.SBControl_ProfileFilePath;
- var sbControlProfileRegPath = Properties.Resources.SBControl_ProfileRegPath;
-
- //full path to profile folder
- var userProfile = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
- var sbPath = userProfile + @"\" + sbControlProfileFilePath;
-
- //get folder name of subfolder/deviceID (HDAUDIO_VEN_10EC_DEV_0899_SUBSYS_11020041 etc)
- var sbGetIdDir = Directory.GetDirectories(sbPath, "HDAUDIO*", SearchOption.TopDirectoryOnly);
- var sbDeviceIdPath = string.Join("", sbGetIdDir);
- var sbDeviceId = sbDeviceIdPath.Substring(sbDeviceIdPath.LastIndexOf(@"\", StringComparison.Ordinal) + 1);
-
- //get registry key value for active profile using deviceID
- var sbRegKeyName = sbControlProfileRegPath + sbDeviceId;
- var sbGetValue = ConfigManager.RegReadKeyValue(sbRegKeyName, "Profile");
- var sbRegKeyValue = sbGetValue.Substring(sbGetValue.LastIndexOf(@"\", StringComparison.Ordinal) + 1);
-
- //read profile xml and extract profile_name value
- var fullXmlFilePath = sbDeviceIdPath + @"\" + sbRegKeyValue;
- _sbControlActiveProfile = ConfigManager.XmlRead(fullXmlFilePath);
}
private void SetAppTheme()
@@ -229,28 +204,16 @@ private void ShowActiveGpuProfile()
if (activePLvalue > defaultPLvalue)
{
- GpuProfileBadge.Badge = " Overclock ";
+ GpuProfileBadge.Badge = " Overclock Profile ";
}
else
{
- GpuProfileBadge.Badge = " Default ";
+ GpuProfileBadge.Badge = " Default Profile ";
}
showProfileProcess.WaitForExit();
}
- //show which Audio profile is active
- private void ShowActiveAudioProfile()
- {
- var soundBlasterActiveProfile = " " + _sbControlActiveProfile + " ";
- var soundBlasterBadge = AudioProfileBadge.Badge.ToString();
-
- if (soundBlasterBadge != soundBlasterActiveProfile)
- {
- AudioProfileBadge.Badge = " " + _sbControlActiveProfile + " ";
- }
- }
-
//show which Power Plan is active
private void ShowActivePowerPlan()
{
@@ -275,11 +238,11 @@ private void ShowActivePowerPlan()
if (activePlan.Contains(_powerPlanBalanced))
{
- _activePowerPlan = " " + "Balanced" + " ";
+ _activePowerPlan = " " + "Balanced Profile" + " ";
}
if (activePlan.Contains(_powerPlanPerformance))
{
- _activePowerPlan = " " + "Performance" + " ";
+ _activePowerPlan = " " + "High Performance Profile" + " ";
}
if (PowerPlanBadge.ToString() != _activePowerPlan)
@@ -584,10 +547,10 @@ private void GpuTile_OnClick(object sender, RoutedEventArgs e)
switch (badgeString)
{
- case " Overclock ":
+ case " Overclock Profile ":
ApplyProfile("SetStock");
break;
- case " Default ":
+ case " Default Profile ":
ApplyProfile("SetOC");
break;
}
@@ -642,10 +605,10 @@ private void PowerPlanTile_OnCLick(object sender, RoutedEventArgs e)
switch (badgeString)
{
- case " Balanced ":
+ case " Balanced Profile ":
ApplyPowerPlan(_powerPlanPerformance);
break;
- case " Performance ":
+ case " High Performance Profile ":
ApplyPowerPlan(_powerPlanBalanced);
break;
}
@@ -1003,10 +966,10 @@ private void HotKeyManager(object sender, KeyEventArgs e)
{
switch (PowerPlanBadge.Badge.ToString())
{
- case " Performance " when GpuProfileBadge.Badge.ToString() == " Default ":
+ case " High Performance Profile " when GpuProfileBadge.Badge.ToString() == " Default Profile ":
GpuTile_OnClick(sender, e);
break;
- case " Balanced " when GpuProfileBadge.Badge.ToString() == " Overclock ":
+ case " Balanced Profile " when GpuProfileBadge.Badge.ToString() == " Overclock Profile ":
PowerPlanTile_OnCLick(sender, e);
break;
default:
@@ -1045,7 +1008,6 @@ private void UninstallServiceButton_OnClick(object sender, RoutedEventArgs e)
private void MainWindow_Activated(object sender, EventArgs e)
{
ReadSettings();
- ShowActiveAudioProfile();
ShowActiveGpuProfile();
ShowActivePowerPlan();
ShowDefaultAudioDevice();
diff --git a/MiToolz/Properties/AssemblyInfo.cs b/MiToolz/Properties/AssemblyInfo.cs
index d7db696..870fd7c 100644
--- a/MiToolz/Properties/AssemblyInfo.cs
+++ b/MiToolz/Properties/AssemblyInfo.cs
@@ -50,4 +50,4 @@
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("3.5.2.0")]
+[assembly: AssemblyFileVersion("3.6.0.0")]
diff --git a/MiToolz/Properties/Resources.Designer.cs b/MiToolz/Properties/Resources.Designer.cs
index 9336fde..3b0403b 100644
--- a/MiToolz/Properties/Resources.Designer.cs
+++ b/MiToolz/Properties/Resources.Designer.cs
@@ -213,36 +213,9 @@ internal static string PowerPlanBalanced {
///
/// Looks up a localized string similar to 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c.
///
- internal static string PowerPlanPerformance {
+ internal static string PowerPlanHighPerformance {
get {
- return ResourceManager.GetString("PowerPlanPerformance", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to C:\Program Files (x86)\Creative\Sound Blaster Audigy Fx\Sound Blaster Audigy Fx Control Panel\SBAdgyFx.exe.
- ///
- internal static string SBControl_FilePath {
- get {
- return ResourceManager.GetString("SBControl_FilePath", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to AppData\Local\Creative\Sound Blaster Audigy Fx Control Panel\profile\.
- ///
- internal static string SBControl_ProfileFilePath {
- get {
- return ResourceManager.GetString("SBControl_ProfileFilePath", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to Software\Creative Tech\Sound Blaster Audigy Fx Control Panel\Settings\.
- ///
- internal static string SBControl_ProfileRegPath {
- get {
- return ResourceManager.GetString("SBControl_ProfileRegPath", resourceCulture);
+ return ResourceManager.GetString("PowerPlanHighPerformance", resourceCulture);
}
}
}
diff --git a/MiToolz/Properties/Resources.resx b/MiToolz/Properties/Resources.resx
index 4844028..5f36ab1 100644
--- a/MiToolz/Properties/Resources.resx
+++ b/MiToolz/Properties/Resources.resx
@@ -166,16 +166,7 @@
381b4222-f694-41f0-9685-ff5bb260df2e
-
+
8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c
-
- C:\Program Files (x86)\Creative\Sound Blaster Audigy Fx\Sound Blaster Audigy Fx Control Panel\SBAdgyFx.exe
-
-
- AppData\Local\Creative\Sound Blaster Audigy Fx Control Panel\profile\
-
-
- Software\Creative Tech\Sound Blaster Audigy Fx Control Panel\Settings\
-
\ No newline at end of file
diff --git a/README.md b/README.md
index 9bbcb59..7922344 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
## About >
-Personal Nvidia GPU & Creative SoundBlaster Audio QuickTool with built-in real-time monitoring
+Personal Nvidia GPU & Audio QuickTool with built-in real-time monitoring
## Framework & library dependencies >
@@ -17,11 +17,20 @@ NirCmd > https://www.nirsoft.net/utils/nircmd.html
(doesn't need to be running. MiToolz will send the selected profile to MSI-Afterburner and then close it immediately)
-## Planned >
-1. ~~Add ability to switch audio output devices from within MiToolz itself~~ >> Completed.
-2. ~~Add option (service) for changing the Windows Timer Resolution setting, ie 1ms or 0.5ms etc~~ >> Completed.
-3. Implement universal audio equalizer to remove reliance of proprietary audio software ie, Creative SoundBlaster control panel etc
-
+## Features >
+1. Ability to change MSI Afterburner Profiles on the fly
+2. Option to change the Windows Power Plan between 'Balanced' and 'High Performance' Profiles
+3. Swap between different Windows Audio Output Devices
+4. Ability to switch between the default Windows Timer Resolution value and 0.5ms Timer Resolution (using new built in service which can be installed/uninstalled at any time within the settings panel)
+5. Realtime System monitoring of the following data ..
+ - GPU Core Speed
+ - GPU Memory Speed
+ - GPU Core Load %
+ - GPU Memory Load %
+ - GPU Total Power Usage watts
+ - GPU Core Temperature
+ - CPU Core Speed
+ - CPU Core Temperature
## Screens >
diff --git a/images/MiToolz_ImageA.png b/images/MiToolz_ImageA.png
index b5c6648..7d648cc 100644
Binary files a/images/MiToolz_ImageA.png and b/images/MiToolz_ImageA.png differ
diff --git a/images/MiToolz_ImageB.png b/images/MiToolz_ImageB.png
index 13481e4..d86a513 100644
Binary files a/images/MiToolz_ImageB.png and b/images/MiToolz_ImageB.png differ