diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000..1ff0c42
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,63 @@
+###############################################################################
+# Set default behavior to automatically normalize line endings.
+###############################################################################
+* text=auto
+
+###############################################################################
+# Set default behavior for command prompt diff.
+#
+# This is need for earlier builds of msysgit that does not have it on by
+# default for csharp files.
+# Note: This is only used by command line
+###############################################################################
+#*.cs diff=csharp
+
+###############################################################################
+# Set the merge driver for project and solution files
+#
+# Merging from the command prompt will add diff markers to the files if there
+# are conflicts (Merging from VS is not affected by the settings below, in VS
+# the diff markers are never inserted). Diff markers may cause the following
+# file extensions to fail to load in VS. An alternative would be to treat
+# these files as binary and thus will always conflict and require user
+# intervention with every merge. To do so, just uncomment the entries below
+###############################################################################
+#*.sln merge=binary
+#*.csproj merge=binary
+#*.vbproj merge=binary
+#*.vcxproj merge=binary
+#*.vcproj merge=binary
+#*.dbproj merge=binary
+#*.fsproj merge=binary
+#*.lsproj merge=binary
+#*.wixproj merge=binary
+#*.modelproj merge=binary
+#*.sqlproj merge=binary
+#*.wwaproj merge=binary
+
+###############################################################################
+# behavior for image files
+#
+# image files are treated as binary by default.
+###############################################################################
+#*.jpg binary
+#*.png binary
+#*.gif binary
+
+###############################################################################
+# diff behavior for common document formats
+#
+# Convert binary document formats to text before diffing them. This feature
+# is only available from the command line. Turn it on by uncommenting the
+# entries below.
+###############################################################################
+#*.doc diff=astextplain
+#*.DOC diff=astextplain
+#*.docx diff=astextplain
+#*.DOCX diff=astextplain
+#*.dot diff=astextplain
+#*.DOT diff=astextplain
+#*.pdf diff=astextplain
+#*.PDF diff=astextplain
+#*.rtf diff=astextplain
+#*.RTF diff=astextplain
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..3c4efe2
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,261 @@
+## Ignore Visual Studio temporary files, build results, and
+## files generated by popular Visual Studio add-ons.
+
+# User-specific files
+*.suo
+*.user
+*.userosscache
+*.sln.docstates
+
+# User-specific files (MonoDevelop/Xamarin Studio)
+*.userprefs
+
+# Build results
+[Dd]ebug/
+[Dd]ebugPublic/
+[Rr]elease/
+[Rr]eleases/
+x64/
+x86/
+bld/
+[Bb]in/
+[Oo]bj/
+[Ll]og/
+
+# Visual Studio 2015 cache/options directory
+.vs/
+# Uncomment if you have tasks that create the project's static files in wwwroot
+#wwwroot/
+
+# MSTest test Results
+[Tt]est[Rr]esult*/
+[Bb]uild[Ll]og.*
+
+# NUNIT
+*.VisualState.xml
+TestResult.xml
+
+# Build Results of an ATL Project
+[Dd]ebugPS/
+[Rr]eleasePS/
+dlldata.c
+
+# DNX
+project.lock.json
+project.fragment.lock.json
+artifacts/
+
+*_i.c
+*_p.c
+*_i.h
+*.ilk
+*.meta
+*.obj
+*.pch
+*.pdb
+*.pgc
+*.pgd
+*.rsp
+*.sbr
+*.tlb
+*.tli
+*.tlh
+*.tmp
+*.tmp_proj
+*.log
+*.vspscc
+*.vssscc
+.builds
+*.pidb
+*.svclog
+*.scc
+
+# Chutzpah Test files
+_Chutzpah*
+
+# Visual C++ cache files
+ipch/
+*.aps
+*.ncb
+*.opendb
+*.opensdf
+*.sdf
+*.cachefile
+*.VC.db
+*.VC.VC.opendb
+
+# Visual Studio profiler
+*.psess
+*.vsp
+*.vspx
+*.sap
+
+# TFS 2012 Local Workspace
+$tf/
+
+# Guidance Automation Toolkit
+*.gpState
+
+# ReSharper is a .NET coding add-in
+_ReSharper*/
+*.[Rr]e[Ss]harper
+*.DotSettings.user
+
+# JustCode is a .NET coding add-in
+.JustCode
+
+# TeamCity is a build add-in
+_TeamCity*
+
+# DotCover is a Code Coverage Tool
+*.dotCover
+
+# NCrunch
+_NCrunch_*
+.*crunch*.local.xml
+nCrunchTemp_*
+
+# MightyMoose
+*.mm.*
+AutoTest.Net/
+
+# Web workbench (sass)
+.sass-cache/
+
+# Installshield output folder
+[Ee]xpress/
+
+# DocProject is a documentation generator add-in
+DocProject/buildhelp/
+DocProject/Help/*.HxT
+DocProject/Help/*.HxC
+DocProject/Help/*.hhc
+DocProject/Help/*.hhk
+DocProject/Help/*.hhp
+DocProject/Help/Html2
+DocProject/Help/html
+
+# Click-Once directory
+publish/
+
+# Publish Web Output
+*.[Pp]ublish.xml
+*.azurePubxml
+# TODO: Comment the next line if you want to checkin your web deploy settings
+# but database connection strings (with potential passwords) will be unencrypted
+#*.pubxml
+*.publishproj
+
+# Microsoft Azure Web App publish settings. Comment the next line if you want to
+# checkin your Azure Web App publish settings, but sensitive information contained
+# in these scripts will be unencrypted
+PublishScripts/
+
+# NuGet Packages
+*.nupkg
+# The packages folder can be ignored because of Package Restore
+**/packages/*
+# except build/, which is used as an MSBuild target.
+!**/packages/build/
+# Uncomment if necessary however generally it will be regenerated when needed
+#!**/packages/repositories.config
+# NuGet v3's project.json files produces more ignoreable files
+*.nuget.props
+*.nuget.targets
+
+# Microsoft Azure Build Output
+csx/
+*.build.csdef
+
+# Microsoft Azure Emulator
+ecf/
+rcf/
+
+# Windows Store app package directories and files
+AppPackages/
+BundleArtifacts/
+Package.StoreAssociation.xml
+_pkginfo.txt
+
+# Visual Studio cache files
+# files ending in .cache can be ignored
+*.[Cc]ache
+# but keep track of directories ending in .cache
+!*.[Cc]ache/
+
+# Others
+ClientBin/
+~$*
+*~
+*.dbmdl
+*.dbproj.schemaview
+*.jfm
+*.pfx
+*.publishsettings
+node_modules/
+orleans.codegen.cs
+
+# Since there are multiple workflows, uncomment next line to ignore bower_components
+# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
+#bower_components/
+
+# RIA/Silverlight projects
+Generated_Code/
+
+# Backup & report files from converting an old project file
+# to a newer Visual Studio version. Backup files are not needed,
+# because we have git ;-)
+_UpgradeReport_Files/
+Backup*/
+UpgradeLog*.XML
+UpgradeLog*.htm
+
+# SQL Server files
+*.mdf
+*.ldf
+
+# Business Intelligence projects
+*.rdl.data
+*.bim.layout
+*.bim_*.settings
+
+# Microsoft Fakes
+FakesAssemblies/
+
+# GhostDoc plugin setting file
+*.GhostDoc.xml
+
+# Node.js Tools for Visual Studio
+.ntvs_analysis.dat
+
+# Visual Studio 6 build log
+*.plg
+
+# Visual Studio 6 workspace options file
+*.opt
+
+# Visual Studio LightSwitch build output
+**/*.HTMLClient/GeneratedArtifacts
+**/*.DesktopClient/GeneratedArtifacts
+**/*.DesktopClient/ModelManifest.xml
+**/*.Server/GeneratedArtifacts
+**/*.Server/ModelManifest.xml
+_Pvt_Extensions
+
+# Paket dependency manager
+.paket/paket.exe
+paket-files/
+
+# FAKE - F# Make
+.fake/
+
+# JetBrains Rider
+.idea/
+*.sln.iml
+
+# CodeRush
+.cr/
+
+# Python Tools for Visual Studio (PTVS)
+__pycache__/
+*.pyc
\ No newline at end of file
diff --git a/fancontrol/fancontrol.sln b/TPFanControl.sln
similarity index 60%
rename from fancontrol/fancontrol.sln
rename to TPFanControl.sln
index 6512690..25144af 100644
--- a/fancontrol/fancontrol.sln
+++ b/TPFanControl.sln
@@ -1,7 +1,9 @@

-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual C++ Express 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fancontrol", "fancontrol.vcproj", "{45F7E4D3-AF42-4594-80E1-099D3FCE3F37}"
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 15
+VisualStudioVersion = 15.0.28307.705
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TPFanControl", "TPFanControl\TPFanControl.vcxproj", "{45F7E4D3-AF42-4594-80E1-099D3FCE3F37}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -17,4 +19,7 @@ Global
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {E06C14E1-7748-4421-A4AB-254D02405EA3}
+ EndGlobalSection
EndGlobal
diff --git a/TPFanControl/TPFanControl.filters b/TPFanControl/TPFanControl.filters
new file mode 100644
index 0000000..e4cf6e1
--- /dev/null
+++ b/TPFanControl/TPFanControl.filters
@@ -0,0 +1,127 @@
+
+
+
+
+ {fa787e5b-1f21-4a2b-a4a3-86fe29d87d9e}
+ cpp;c;cxx;rc;def;r;odl;idl;hpj;bat
+
+
+ {19929464-194b-4363-a52e-e7867d3d02fb}
+ h;hpp;hxx;hm;inl
+
+
+ {186209df-d882-42c4-8dd4-333fb13bf910}
+ ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe
+
+
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+
+
+ Resource Files
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/TPFanControl/TPFanControl.ini b/TPFanControl/TPFanControl.ini
new file mode 100644
index 0000000..d4eadbe
--- /dev/null
+++ b/TPFanControl/TPFanControl.ini
@@ -0,0 +1,239 @@
+#
+# HotKey Integration: HotKey=HotKeyMethod,Key:
+#
+# HotKeyMethod:
+# 0=disabled
+# 1=Alt
+# 2=Ctrl
+# 3=Ctrl+Alt
+# (5=Alt+Shift, used by System to change keyboard pattern)
+# 4=Shift
+# 6=Ctrl+Shift
+# 7=ctrl+Alt+Shift
+#
+# allowed Keys: A-Z (Capitals), 0-1, F1-F12
+#
+# HotKey=HotKeyMethod,Key:
+#
+HK_BIOS=2,F10 #BIOSMode= Crtl+F10
+HK_Manual=1,M #ManualMode= Alt+M
+HK_Smart=2,S #SmartMode= Crtl+S
+HK_SM1=7,1 #SmartMode1= ctrl+Alt+Shift+1
+HK_SM2=7,2 #SmartMode2= ctrl+Alt+Shift+2
+HK_TG_BS=6,B #Toggle:BIOS-Smart= Crtl+Shift+B
+HK_TG_BM=0,M #Toggle:BIOS-Manual= Crtl+Shift+M disabled
+HK_TG_MS=6,F5 #Toggle:Smart-Manual= Crtl+Shift+F5
+HK_TG_12=2,F11 #Toggle:SmartMode1-SmartMode2= Crtl+F11
+#
+UseTWR=0
+#
+# >>>> Celsius / Fahrenheit: temperatures in °C (active) / °F <<<<
+#
+# ATTENTION: example values are for my T61:
+# BluetoothEDR=1, SensorName5=no5, IgnoreSensors=no5,
+# levels 10 degrees centgrade higher than in T4x, R5x,
+# change for your purposes.
+#
+# advice for programmers: TPFanControl must acquire mutex named
+# "Access_Thinkpad_EC" to get access to embedded controller
+# -----------------------------------------------------------------
+# "Active=0" program just reads config.
+# "Active=1" allow program to modify fan.
+# "Active=2" program will come up in smart mode.
+# "Active=3" program will come up in manual mode.
+#
+Active=2
+
+ManFanSpeed=0 # Manual Fan Speed
+
+SlimDialog=0 # Set to 1 for slim widget
+
+StayOnTop=0 # Windows stays on Top if 1, normal behavior =0
+
+BluetoothEDR=0 #set to 1 for bluetooth with enhanced data rate (i.e. T61,
+ #X61 for T4x, R5x set BluetoothEDR=0 )
+
+
+# -----------------------------------------------------------------
+# Windows Priority of Process (0-5, normal=2), increase if fancontrol has
+# big delays in response while other processes consume performance.
+
+ProcessPriority=2
+
+# -----------------------------------------------------------------
+# Show no icon ballons: NoBallons=1
+# Show icon ballons: NoBallons=0
+
+NoBallons=1
+
+# -----------------------------------------------------------------
+# check temperatures every x seconds (default 5)
+
+Cycle=5
+
+# -----------------------------------------------------------------
+# For Thinkpads A2x,T2x,X2x set NoExtSensor=1 to exclude reading
+# of extended sensors to prevent program errors. Attention 570(E)
+# is NOT compatible. Fan speed is not available on all models.
+
+NoExtSensor=1
+
+# -----------------------------------------------------------------
+# Minimize to systray immediately when starting
+
+StartMinimized=0
+
+# -----------------------------------------------------------------
+# check vista icon every x seconds (default 1)
+
+IconCycle=2
+
+# -----------------------------------------------------------------
+# Show new icon with max. temperature / sensor name
+
+ShowTempIcon=1
+
+# -----------------------------------------------------------------
+# Save the icon by a start delay of the service of
+# "SecStartDelay" (sec.) within "SecWinUptime" (sec.) after (re)boot
+
+# SecWinUptime=120
+# SecStartDelay=60
+# ReIcCycle=10 #rebuild TempIcon every xxx secs.
+# NoWaitMessage=0 #set to 1 to avoid sleep message
+
+# -----------------------------------------------------------------
+# Temperature thresholds for turning the taskbar icon
+# yellow orange red (Smart and Manual mode only and
+# only together with MinimizeToTray=1)
+
+IconLevels=65 75 85
+
+# -----------------------------------------------------------------
+# Beep frequency and duration (in ms) for successful
+# fan state changes. (Set either or both to zero to
+# disable)
+
+FanBeep=0 0
+
+# --------------------------------------------------------
+# If this max number of consecutive EC read errors occur
+# program will switch fan back to bios mode and exit
+
+MaxReadErrors= 10
+
+# --------------------------------------------------------
+# Log2File=1 enables, Log2File=0 disables
+# writing to TPFanControl.log
+
+Log2File=0
+
+
+# --------------------------------------------------------
+# Log2csv=1 enables, Log2csv=0 disables
+# writing to TPFanControl_csv.txt renamed to
+# TPFanControl_last_csv.txt after restart of TPFanControl
+# rename to *.csv for use with excel
+
+Log2csv=0
+
+# --------------------------------------------------------
+# List (separated by comma) of sensors to ignore when
+# determining the max. temperature. (Use lower case,
+# e.g "IgnoreSensors=pci,aps")
+
+#IgnoreSensors=no5
+
+SensorName1=cpu
+SensorName2=gpu
+#SensorName3=pcm
+#SensorName4=gpu
+#SensorName5=no5
+#SensorName6=x7d
+#SensorName7=bat
+#SensorName8=x7f
+#SensorName9=bus
+#SensorName10=pci
+#SensorName11=pwr
+#SensorName12=xc3
+
+# ---------------------------------------------------------
+# calculating Highest Temp with:
+# temperature of sensor no. = real temp minus SensorOffsetno.
+# Default SensorOffset1-12=0 , Capital O in SensorOffset,
+# to activate delete slashes,
+# Negative SensorOffsetno. values increase temperature values.
+
+#SensorOffset1=20
+#SensorOffset2=6
+#SensorOffset4=2
+#SensorOffset5=1
+#SensorOffset6=5
+#SensorOffset7=5
+#SensorOffset8=4
+#SensorOffset9=3
+#SensorOffset10=2
+#SensorOffset11=1
+#SensorOffset12=5
+
+ShowBiasedTemps=1 # set to 1 to show calculated temps for sensors
+
+# -----------------------------------------------------------------
+# Show all/active sensors at start up. all=1 only active=0
+
+ShowAll=0
+
+# --------------------------------------------------------
+# Temperature levels with associated fan levels
+# (for the fan to come back, temperature must fall
+# down to previous level). There may be more or
+# less levels in this list. The first one should
+# have a fan speed of zero and is the "turn off"
+# temperature.
+#
+# Fan speed of 64 is extreme and may be an *unsupported*
+# and *damaging* mode. A fan speed of 128 setting is
+# not really a fan speed in itself but will instead switch
+# fan control to BIOS mode (0x80). The idea of this
+# is to let the program get out of the way and let the
+# BIOS handle extremes.(and then switch back to smart if
+# the temperature is okay again)
+
+# Celsius: # Fahrenheit: (Level FAN 0>80 -> Fahrenheit)
+
+# Label for Icon Menu, must be terminated by '/'
+MenuLabelSM1=Smart Mode Very Cool/
+
+Level=50 0
+Level=55 4
+Level=65 7
+Level=75 64
+Level=90 128
+
+
+# optional 2nd profile very special for 'sonny'
+# if you dont use, deactivate following lines with '#'
+
+# Label for Icon Menu, must be terminated by '/'
+MenuLabelSM2=Smart Mode Warmer/
+Level2=22 0 // Level2=70 0
+Level2=33 1 // Level2=90 1
+Level2=38 2 // Level2=100 2
+Level2=44 3 // Level2=110 3
+Level2=55 7 // Level2=130 7
+Level2=66 64 // Level2=150 64
+Level2=77 128 // Level2=170 128
+
+# IconColorFan=1 digital Icon will turn green while fan is running.
+IconColorFan=1
+
+# Lev64Norm=1 : Fan level 64 acts as normal level with hysteresis,
+# fan will run till next lower temp step is reached (no pulsing fan).
+# If set to zero fan level 64 acts as emergency level without hysteresis,
+# fan will run till level64 temp is reached again (pulsing fan can happen).
+Lev64Norm=1
+
+# Program exits manual mode and switches to smart mode with last chosen
+# profile, if this temp (degrees Centigrade or Fahrenheit) is achieved.
+# default= 80 degrees Centigrade / 176 degrees Fahrenheit.
+ManModeExit=87 degrees Centigrade
diff --git a/TPFanControl/TPFanControl.vcxproj b/TPFanControl/TPFanControl.vcxproj
new file mode 100644
index 0000000..6463d53
--- /dev/null
+++ b/TPFanControl/TPFanControl.vcxproj
@@ -0,0 +1,212 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+
+ {45F7E4D3-AF42-4594-80E1-099D3FCE3F37}
+ TPFanControl
+ 10.0.17763.0
+
+
+
+ Application
+ v141
+ false
+ MultiByte
+
+
+ Application
+ v141
+ false
+ MultiByte
+ false
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>15.0.28307.705
+
+
+ $(SolutionDir)bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)bin\intermediates\$(Platform)\$(Configuration)\
+ false
+
+
+ $(SolutionDir)bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)bin\intermediates\$(Platform)\$(Configuration)\
+ true
+
+
+
+ NDEBUG;%(PreprocessorDefinitions)
+ true
+ true
+ Win32
+
+
+ MaxSpeed
+ AnySuitable
+ true
+ WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+ MultiThreaded
+ true
+ /J
+ Use
+ _prec.h
+ Level3
+ true
+ $(ProjectDir)lib\;%(AdditionalIncludeDirectories)
+
+
+ NDEBUG;%(PreprocessorDefinitions)
+ 0x0813
+
+
+ comctl32.lib;%(AdditionalDependencies)
+ true
+ Windows
+ 16384
+ 16384
+ 16384
+ 16384
+ true
+ true
+ UseLinkTimeCodeGeneration
+ MachineX86
+ $(ProjectDir)lib\;%(AdditionalIncludeDirectories)
+ false
+
+
+ xcopy /y "$(ProjectDir)TPFanControl.ini" "$(OutDir)"
+
+
+
+
+ _DEBUG;%(PreprocessorDefinitions)
+ true
+ true
+ Win32
+
+
+ Disabled
+ WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ EnableFastChecks
+ MultiThreadedDebug
+ /J
+ Use
+ _prec.h
+ Level3
+ true
+ EditAndContinue
+ $(ProjectDir)lib\;%(AdditionalIncludeDirectories)
+
+
+ _DEBUG;%(PreprocessorDefinitions)
+ 0x0813
+
+
+ comctl32.lib;%(AdditionalDependencies)
+ true
+ true
+ Windows
+ MachineX86
+ $(ProjectDir)lib\;%(AdditionalIncludeDirectories)
+ false
+
+
+ xcopy /y "$(ProjectDir)TPFanControl.ini" "$(OutDir)"
+
+
+
+
+
+
+ Use
+ Use
+
+
+ Use
+ Use
+
+
+ Use
+
+
+
+
+ Use
+ Use
+
+
+
+
+ Create
+ Create
+ _prec.h
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/TPFanControl/TPFanControl.vcxproj.filters b/TPFanControl/TPFanControl.vcxproj.filters
new file mode 100644
index 0000000..0095d7a
--- /dev/null
+++ b/TPFanControl/TPFanControl.vcxproj.filters
@@ -0,0 +1,129 @@
+
+
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Resource Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+
+
+
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
+
+
+
+
+ Resource Files
+
+
+
+
+ {afda13e9-1c0a-42e0-9267-4e24516771c2}
+
+
+ {28585288-25f1-4535-a95c-c2d62f90df01}
+
+
+ {af7ddb70-2e0c-4ffb-af4d-a271c0412496}
+
+
+
+
+ Resource Files
+
+
+
+
+ Resource Files
+
+
+
\ No newline at end of file
diff --git a/fancontrol/TVicPort.h b/TPFanControl/lib/TVicPort.h
similarity index 100%
rename from fancontrol/TVicPort.h
rename to TPFanControl/lib/TVicPort.h
diff --git a/fancontrol/TVicPort.lib b/TPFanControl/lib/TVicPort.lib
similarity index 100%
rename from fancontrol/TVicPort.lib
rename to TPFanControl/lib/TVicPort.lib
diff --git a/fancontrol/SystemTraySDK.cpp b/TPFanControl/src/SystemTraySDK.cpp
similarity index 100%
rename from fancontrol/SystemTraySDK.cpp
rename to TPFanControl/src/SystemTraySDK.cpp
diff --git a/fancontrol/SystemTraySDK.h b/TPFanControl/src/SystemTraySDK.h
similarity index 100%
rename from fancontrol/SystemTraySDK.h
rename to TPFanControl/src/SystemTraySDK.h
diff --git a/fancontrol/TaskbarTextIcon.h b/TPFanControl/src/TaskbarTextIcon.h
similarity index 100%
rename from fancontrol/TaskbarTextIcon.h
rename to TPFanControl/src/TaskbarTextIcon.h
diff --git a/fancontrol/_prec.cpp b/TPFanControl/src/_prec.cpp
similarity index 100%
rename from fancontrol/_prec.cpp
rename to TPFanControl/src/_prec.cpp
diff --git a/fancontrol/_prec.h b/TPFanControl/src/_prec.h
similarity index 100%
rename from fancontrol/_prec.h
rename to TPFanControl/src/_prec.h
diff --git a/fancontrol/approot.cpp b/TPFanControl/src/approot.cpp
similarity index 100%
rename from fancontrol/approot.cpp
rename to TPFanControl/src/approot.cpp
diff --git a/fancontrol/approot.h b/TPFanControl/src/approot.h
similarity index 100%
rename from fancontrol/approot.h
rename to TPFanControl/src/approot.h
diff --git a/fancontrol/dynamicicon.cpp b/TPFanControl/src/dynamicicon.cpp
similarity index 100%
rename from fancontrol/dynamicicon.cpp
rename to TPFanControl/src/dynamicicon.cpp
diff --git a/fancontrol/dynamicicon.h b/TPFanControl/src/dynamicicon.h
similarity index 100%
rename from fancontrol/dynamicicon.h
rename to TPFanControl/src/dynamicicon.h
diff --git a/fancontrol/fancontrol.cpp b/TPFanControl/src/fancontrol.cpp
similarity index 87%
rename from fancontrol/fancontrol.cpp
rename to TPFanControl/src/fancontrol.cpp
index a2a8032..91ee2a8 100644
--- a/fancontrol/fancontrol.cpp
+++ b/TPFanControl/src/fancontrol.cpp
@@ -168,153 +168,20 @@ FANCONTROL::FANCONTROL(HINSTANCE hinstapp)
this->SmartLevels2[i].temp2= 70; this->SmartLevels2[i].fan2= 128; i++;
this->SmartLevels2[i].temp2= -1; this->SmartLevels2[i].fan2= 0; i++;
-
// code title3
- char bias = 100;
- for (int _i = 0; _i < 111; _i++) {
- switch (_i) {
- case 0 : this->Title3[0]= 32; break; //blank
- case 1 : this->Title3[1]=bias - 2; break; //b
- case 2 : this->Title3[2]=bias + 21; break; //y
- case 3 : this->Title3[3]=32 ; break; //blank
- case 4 : this->Title3[4]=bias + 16; break; //t
- case 5 : this->Title3[5]=bias + 14; break; //r
- case 6 : this->Title3[6]=bias + 11; break; //o
- case 7 : this->Title3[7]=bias + 17; break; //u
- case 8 : this->Title3[8]=bias - 2; break; //b
- case 9 : this->Title3[9]=bias - 3; break; //a
- case 10 : this->Title3[10]=bias; break; //d
- case 11 : this->Title3[11]=bias + 5; break; //i
- case 12 : this->Title3[12]=bias + 20; break; //x
- case 13 : this->Title3[13]=32; break; //blank
-/* case 14 : this->Title3[14]=32; break; //blank
- case 15 : this->Title3[15]=32; break; //blank
- case 16 : this->Title3[16]=32; break; //blank
- case 17 : this->Title3[17]=32; break; //blank
- case 18 : this->Title3[18]=32; break; //blank
- case 19 : this->Title3[19]=bias - 58; break; //*
- case 20 : this->Title3[20]=bias - 58; break; //*
- case 21 : this->Title3[21]=bias + 2; break; //f
- case 22 : this->Title3[22]=bias + 14; break; //r
- case 23 : this->Title3[23]=bias + 1; break; //e
- case 24 : this->Title3[24]=bias + 1; break; //e
- case 25 : this->Title3[25]=bias - 68 ; break; //blank
- case 26 : this->Title3[26]=bias + 2; break; //f
- case 27 : this->Title3[27]=bias + 11; break; //o
- case 28 : this->Title3[28]=bias + 14; break; //r
- case 29 : this->Title3[29]=bias - 68 ; break; //blank
- case 30 : this->Title3[30]=bias + 12; break; //p
- case 31 : this->Title3[31]=bias + 14; break; //r
- case 32 : this->Title3[32]=bias + 5; break; //i
- case 33 : this->Title3[33]=bias + 18; break; //v
- case 34 : this->Title3[34]=bias - 3 ; break; //a
- case 35 : this->Title3[35]=bias + 16; break; //t
- case 36 : this->Title3[36]=bias + 1; break; //e
- case 37 : this->Title3[37]=bias - 68 ; break; //blank
- case 38 : this->Title3[38]=bias + 17; break; //u
- case 39 : this->Title3[39]=bias + 15; break; //s
- case 40 : this->Title3[40]=bias + 1; break; //e
- case 41 : this->Title3[41]=bias - 58; break; //*
- case 42 : this->Title3[42]=bias - 58; break; //*
- // case 14 : this->Title3[14]=115-1; break;
- // case 15 : this->Title3[15]=115-1; break;
-*/
- }
-
- // code Title4 http://www.staff.uni-marburg.de/~schmitzr/donate.html
-
- for (int __i=0; __i < 111; __i++) {
- switch (__i) {
- case 0 : this->Title4[0]=bias + 4; break; //h
- case 1 : this->Title4[1]=bias + 16; break; //t
- case 2 : this->Title4[2]=bias + 16; break; //t
- case 3 : this->Title4[3]=bias + 12; break; //p
- case 4 : this->Title4[4]=bias - 42; break; //:
- case 5 : this->Title4[5]=bias - 8; break; ///
- case 6 : this->Title4[6]=bias - 8; break; ///
- case 7 : this->Title4[7]=bias + 19; break; //w
- case 8 : this->Title4[8]=bias + 19; break; //w
- case 9 : this->Title4[9]=bias + 19; break; //w
- case 10 : this->Title4[10]=bias - 54; break; //.
- case 11 : this->Title4[11]=bias + 15; break; //s
- case 12 : this->Title4[12]=bias + 16; break; //t
- case 13 : this->Title4[13]=bias - 3 ; break; //a
- case 14 : this->Title4[14]=bias + 2; break; //f
- case 15 : this->Title4[15]=bias + 2; break; //f
- case 16 : this->Title4[16]=bias - 54; break; //.
- case 17 : this->Title4[17]=bias + 17; break; //u
- case 18 : this->Title4[18]=bias + 10; break; //n
- case 19 : this->Title4[19]=bias + 5; break; //i
- case 20 : this->Title4[20]=bias - 55; break; //-
- case 21 : this->Title4[21]=bias + 9; break; //m
- case 22 : this->Title4[22]=bias - 3 ; break; //a
- case 23 : this->Title4[23]=bias + 14; break; //r
- case 24 : this->Title4[24]=bias - 2; break; //b
- case 25 : this->Title4[25]=bias + 17; break; //u
- case 26 : this->Title4[26]=bias + 14; break; //r
- case 27 : this->Title4[27]=bias + 3; break; //g
- case 28 : this->Title4[28]=bias - 54; break; //.
- case 29 : this->Title4[29]=bias ; break; //d
- case 30 : this->Title4[30]=bias + 1; break; //e
- case 31 : this->Title4[31]=bias - 8; break; ///
- case 32 : this->Title4[32]=bias + 26; break; //~
- case 33 : this->Title4[33]=bias + 15; break; //s
- case 34 : this->Title4[34]=bias - 1 ; break; //c
- case 35 : this->Title4[35]=bias + 4; break; //h
- case 36 : this->Title4[36]=bias + 9; break; //m
- case 37 : this->Title4[37]=bias + 5; break; //i
- case 38 : this->Title4[38]=bias + 16; break; //t
- case 39 : this->Title4[39]=bias + 22; break; //z
- case 40 : this->Title4[40]=bias + 14; break; //r
- case 41 : this->Title4[41]=bias - 8; break; ///
- case 42 : this->Title4[42]=bias ; break; //d
- case 43 : this->Title4[43]=bias + 11; break; //o
- case 44 : this->Title4[44]=bias + 10; break; //n
- case 45 : this->Title4[45]=bias - 3; break; //a
- case 46 : this->Title4[46]=bias + 16; break; //t
- case 47 : this->Title4[47]=bias + 1; break; //e
- case 48 : this->Title4[48]=bias - 54; break; //.
- case 49 : this->Title4[49]=bias + 4; break; //h
- case 50 : this->Title4[50]=bias + 16; break; //t
- case 51 : this->Title4[51]=bias + 9; break; //m
- case 52 : this->Title4[52]=bias + 8; break; //l
- }
- }
-
- // code Title5 http://tpfancontrol.com
-
- for (int __i=0; __i < 23; __i++) {
- switch (__i) {
- case 0 : this->Title5[0]=bias + 4; break; //h
- case 1 : this->Title5[1]=bias + 16; break; //t
- case 2 : this->Title5[2]=bias + 16; break; //t
- case 3 : this->Title5[3]=bias + 12; break; //p
- case 4 : this->Title5[4]=bias - 42; break; //:
- case 5 : this->Title5[5]=bias - 8; break; ///
- case 6 : this->Title5[6]=bias - 8; break; ///
- case 7 : this->Title5[7]=bias + 16; break; //t
- case 8 : this->Title5[8]=bias + 12; break; //p
- case 9 : this->Title5[9]=bias + 2; break; //f
- case 10 : this->Title5[10]=bias - 3 ; break; //a
- case 11 : this->Title5[11]=bias + 10; break; //n
- case 12 : this->Title5[12]=bias - 1 ; break; //c
- case 13 : this->Title5[13]=bias + 11; break; //o
- case 14 : this->Title5[14]=bias + 10; break; //n
- case 15 : this->Title5[15]=bias + 16; break; //t
- case 16 : this->Title5[16]=bias + 14; break; //r
- case 17 : this->Title5[17]=bias + 11; break; //o
- case 18 : this->Title5[18]=bias + 8; break; //l
- case 19 : this->Title5[19]=bias - 54; break; //.
- case 20 : this->Title5[20]=bias - 1 ; break; //c
- case 21 : this->Title5[21]=bias + 11; break; //o
- case 22 : this->Title5[22]=bias + 9; break; //m
- }
- }
-
-
- }
-
-
+ this->Title3[0] = 32; // blank
+ this->Title3[1] = 98; // b
+ this->Title3[2] = 121; // y
+ this->Title3[3] = 32; // blank
+ this->Title3[4] = 67; // c
+ this->Title3[5] = 97; // a
+ this->Title3[6] = 114; // r
+ this->Title3[7] = 103; // g
+ this->Title3[8] = 104; // h
+ this->Title3[9] = 97; // a
+ this->Title3[10] = 101; // e
+ this->Title3[11] = 122; // z
+ this->Title3[12] = 32; // blank
// read config file
this->ReadConfig("TPFanControl.ini");
diff --git a/fancontrol/fancontrol.h b/TPFanControl/src/fancontrol.h
similarity index 99%
rename from fancontrol/fancontrol.h
rename to TPFanControl/src/fancontrol.h
index 20d4914..a21ca7c 100644
--- a/fancontrol/fancontrol.h
+++ b/TPFanControl/src/fancontrol.h
@@ -28,7 +28,7 @@
-#define FANCONTROLVERSION "0.63 multiHotKey"
+#define FANCONTROLVERSION "0.64 multiHotKey"
#define WM__DISMISSDLG WM_USER+5
#define WM__GETDATA WM_USER+6
diff --git a/fancontrol/fanstuff.cpp b/TPFanControl/src/fanstuff.cpp
similarity index 97%
rename from fancontrol/fanstuff.cpp
rename to TPFanControl/src/fanstuff.cpp
index 02eb67e..f138492 100644
--- a/fancontrol/fanstuff.cpp
+++ b/TPFanControl/src/fanstuff.cpp
@@ -25,6 +25,9 @@
#define TP_ECOFFSET_FANSPEED (char)0x84 // 16 bit word, lo/hi byte
#define TP_ECOFFSET_TEMP0 (char)0x78 // 8 temp sensor bytes from here
#define TP_ECOFFSET_TEMP1 (char)0xC0 // 4 temp sensor bytes from here
+#define TP_ECOFFSET_FAN1 (char)0x0000
+#define TP_ECOFFSET_FAN2 (char)0x0001
+#define TP_ECOFFSET_FAN_SWITCH (char)0x31
@@ -116,7 +119,7 @@ FANCONTROL::HandleData(void)
}
else {
if (!(SlimDialog && StayOnTop))
- sprintf_s(obuf2+strlen(obuf2),sizeof(obuf2)-strlen(obuf2), " Non Bios", fanctrl & 0x3F);
+ sprintf_s(obuf2+strlen(obuf2),sizeof(obuf2)-strlen(obuf2), " Non Bios %d", fanctrl & 0x3F);
sprintf_s(title2+strlen(title2),sizeof(title2)-strlen(title2), " Fan %d (%s)",
fanctrl & 0x3F,
this->CurrentModeFromDialog()==2 ? "Smart" : "Fixed");
@@ -410,10 +413,17 @@ FANCONTROL::SetFan(const char *source, int fanctrl, BOOL final)
for (int i = 0; i < 5; i++)
{
// set new fan level
+ ok = this->WriteByteToEC(TP_ECOFFSET_FAN_SWITCH, TP_ECOFFSET_FAN1);
ok= this->WriteByteToEC(TP_ECOFFSET_FAN, fanctrl);
+ ::Sleep(300);
+ ok = this->WriteByteToEC(TP_ECOFFSET_FAN_SWITCH, TP_ECOFFSET_FAN2);
+ ok = this->WriteByteToEC(TP_ECOFFSET_FAN, fanctrl);
+
// verify completion
ok= this->ReadByteFromEC(TP_ECOFFSET_FAN, &this->State.FanCtrl);
+ ok = this->WriteByteToEC(TP_ECOFFSET_FAN_SWITCH, TP_ECOFFSET_FAN1);
+ ok = this->ReadByteFromEC(TP_ECOFFSET_FAN, &this->State.FanCtrl);
if (this->State.FanCtrl == fanctrl)
break;
diff --git a/fancontrol/misc.cpp b/TPFanControl/src/misc.cpp
similarity index 100%
rename from fancontrol/misc.cpp
rename to TPFanControl/src/misc.cpp
diff --git a/fancontrol/portio.cpp b/TPFanControl/src/portio.cpp
similarity index 100%
rename from fancontrol/portio.cpp
rename to TPFanControl/src/portio.cpp
diff --git a/fancontrol/res/RCa03996 b/TPFanControl/src/res/RCa03996
similarity index 100%
rename from fancontrol/res/RCa03996
rename to TPFanControl/src/res/RCa03996
diff --git a/fancontrol/res/RCb03996 b/TPFanControl/src/res/RCb03996
similarity index 100%
rename from fancontrol/res/RCb03996
rename to TPFanControl/src/res/RCb03996
diff --git a/fancontrol/res/app.bmp b/TPFanControl/src/res/app.bmp
similarity index 100%
rename from fancontrol/res/app.bmp
rename to TPFanControl/src/res/app.bmp
diff --git a/fancontrol/res/app.ico b/TPFanControl/src/res/app.ico
similarity index 100%
rename from fancontrol/res/app.ico
rename to TPFanControl/src/res/app.ico
diff --git a/fancontrol/res/blue.bmp b/TPFanControl/src/res/blue.bmp
similarity index 100%
rename from fancontrol/res/blue.bmp
rename to TPFanControl/src/res/blue.bmp
diff --git a/fancontrol/res/blue.ico b/TPFanControl/src/res/blue.ico
similarity index 100%
rename from fancontrol/res/blue.ico
rename to TPFanControl/src/res/blue.ico
diff --git a/fancontrol/res/bw.bmp b/TPFanControl/src/res/bw.bmp
similarity index 100%
rename from fancontrol/res/bw.bmp
rename to TPFanControl/src/res/bw.bmp
diff --git a/fancontrol/res/bw.ico b/TPFanControl/src/res/bw.ico
similarity index 100%
rename from fancontrol/res/bw.ico
rename to TPFanControl/src/res/bw.ico
diff --git a/fancontrol/res/fancontrol.rc b/TPFanControl/src/res/fancontrol.rc
similarity index 97%
rename from fancontrol/res/fancontrol.rc
rename to TPFanControl/src/res/fancontrol.rc
index 59f4459..258c885 100644
--- a/fancontrol/res/fancontrol.rc
+++ b/TPFanControl/src/res/fancontrol.rc
@@ -195,8 +195,8 @@ END
//
1 VERSIONINFO
- FILEVERSION 1,0,0,63
- PRODUCTVERSION 1,0,0,63
+ FILEVERSION 1,0,0,64
+ PRODUCTVERSION 1,0,0,64
FILEFLAGSMASK 0x8L
#ifdef _DEBUG
FILEFLAGS 0x9L
@@ -212,16 +212,16 @@ BEGIN
BLOCK "040704b0"
BEGIN
VALUE "Comments", "Usage on own risk!"
- VALUE "CompanyName", "troubadix"
+ VALUE "CompanyName", "Carghaez"
VALUE "FileDescription", "Fan Control Software"
- VALUE "FileVersion", "1, 0, 0, 63"
+ VALUE "FileVersion", "1, 0, 0, 64"
VALUE "InternalName", "TPFanControl"
- VALUE "LegalCopyright", "Copyright (C) 2013 by troubadix"
+ VALUE "LegalCopyright", "Copyright (C) 2019 by Carghaez"
VALUE "LegalTrademarks", "TPFanControl"
VALUE "OriginalFilename", "TPFanControl.exe"
VALUE "PrivateBuild", "Fan Control Software"
VALUE "ProductName", "TPFanControl"
- VALUE "ProductVersion", "1, 0, 0, 63"
+ VALUE "ProductVersion", "1, 0, 0, 64"
VALUE "SpecialBuild", "easy easy setup"
END
END
diff --git a/fancontrol/res/ico21.ico b/TPFanControl/src/res/ico21.ico
similarity index 100%
rename from fancontrol/res/ico21.ico
rename to TPFanControl/src/res/ico21.ico
diff --git a/fancontrol/res/ico22.ico b/TPFanControl/src/res/ico22.ico
similarity index 100%
rename from fancontrol/res/ico22.ico
rename to TPFanControl/src/res/ico22.ico
diff --git a/fancontrol/res/ico23.ico b/TPFanControl/src/res/ico23.ico
similarity index 100%
rename from fancontrol/res/ico23.ico
rename to TPFanControl/src/res/ico23.ico
diff --git a/fancontrol/res/ico24.ico b/TPFanControl/src/res/ico24.ico
similarity index 100%
rename from fancontrol/res/ico24.ico
rename to TPFanControl/src/res/ico24.ico
diff --git a/fancontrol/res/ico25.ico b/TPFanControl/src/res/ico25.ico
similarity index 100%
rename from fancontrol/res/ico25.ico
rename to TPFanControl/src/res/ico25.ico
diff --git a/fancontrol/res/orange.bmp b/TPFanControl/src/res/orange.bmp
similarity index 100%
rename from fancontrol/res/orange.bmp
rename to TPFanControl/src/res/orange.bmp
diff --git a/fancontrol/res/orange.ico b/TPFanControl/src/res/orange.ico
similarity index 100%
rename from fancontrol/res/orange.ico
rename to TPFanControl/src/res/orange.ico
diff --git a/fancontrol/res/red.bmp b/TPFanControl/src/res/red.bmp
similarity index 100%
rename from fancontrol/res/red.bmp
rename to TPFanControl/src/res/red.bmp
diff --git a/fancontrol/res/red.ico b/TPFanControl/src/res/red.ico
similarity index 100%
rename from fancontrol/res/red.ico
rename to TPFanControl/src/res/red.ico
diff --git a/fancontrol/res/resource b/TPFanControl/src/res/resource
similarity index 100%
rename from fancontrol/res/resource
rename to TPFanControl/src/res/resource
diff --git a/fancontrol/res/resource.h b/TPFanControl/src/res/resource.h
similarity index 100%
rename from fancontrol/res/resource.h
rename to TPFanControl/src/res/resource.h
diff --git a/fancontrol/res/signatur.txt b/TPFanControl/src/res/signatur.txt
similarity index 66%
rename from fancontrol/res/signatur.txt
rename to TPFanControl/src/res/signatur.txt
index 94dfc15..2c848aa 100644
--- a/fancontrol/res/signatur.txt
+++ b/TPFanControl/src/res/signatur.txt
@@ -4,12 +4,12 @@ NOTE: These instructions assume you have visual studio installed and are using a
- In the command shell, execute the following commands:
- makecert -r -pe -n "CN=TPFanControl by Troubadix" -ss PrivateCertStore tpfccert.cer
-
+ makecert -r -pe -n "CN=TPFanControl by Carghaez" -ss PrivateCertStore tpfccert.cer
+
signtool signwizard
-
+
oder:
- In the command shell, browse to the location of your exe
-SignTool sign /v /s PrivateCertStore /n "TPFanControl by Troubadix" /t http://timestamp.verisign.com/scripts/timestamp.dll fancontrol.exe
+SignTool sign /v /s PrivateCertStore /n "TPFanControl by Carghaez" /t http://timestamp.verisign.com/scripts/timestamp.dll TPFanControl.exe
diff --git a/fancontrol/res/tom.bmp b/TPFanControl/src/res/tom.bmp
similarity index 100%
rename from fancontrol/res/tom.bmp
rename to TPFanControl/src/res/tom.bmp
diff --git a/fancontrol/res/xp-manifest.txt b/TPFanControl/src/res/xp-manifest.txt
similarity index 100%
rename from fancontrol/res/xp-manifest.txt
rename to TPFanControl/src/res/xp-manifest.txt
diff --git a/fancontrol/res/yellow.bmp b/TPFanControl/src/res/yellow.bmp
similarity index 100%
rename from fancontrol/res/yellow.bmp
rename to TPFanControl/src/res/yellow.bmp
diff --git a/fancontrol/res/yellow.ico b/TPFanControl/src/res/yellow.ico
similarity index 100%
rename from fancontrol/res/yellow.ico
rename to TPFanControl/src/res/yellow.ico
diff --git a/fancontrol/tools.h b/TPFanControl/src/tools.h
similarity index 100%
rename from fancontrol/tools.h
rename to TPFanControl/src/tools.h
diff --git a/fancontrol/winstuff.cpp b/TPFanControl/src/winstuff.cpp
similarity index 100%
rename from fancontrol/winstuff.cpp
rename to TPFanControl/src/winstuff.cpp
diff --git a/fancontrol/winstuff.h b/TPFanControl/src/winstuff.h
similarity index 100%
rename from fancontrol/winstuff.h
rename to TPFanControl/src/winstuff.h
diff --git a/fancontrol/Debug/TPFanControl.ini b/fancontrol/Debug/TPFanControl.ini
deleted file mode 100644
index c0382b1..0000000
--- a/fancontrol/Debug/TPFanControl.ini
+++ /dev/null
@@ -1,325 +0,0 @@
-//
-// HotKey Integration: HotKey=HotKeyMethod,Key:
-//
-// HotKeyMethod:
-// 0=disabled
-// 1=Alt
-// 2=Ctrl
-// 3=Ctrl+Alt
-// (5=Alt+Shift, used by System to change keyboard pattern)
-// 4=Shift
-// 6=Ctrl+Shift
-// 7=ctrl+Alt+Shift
-//
-// allowed Keys: A-Z (Capitals), 0-1, F1-F12
-//
-// HotKey=HotKeyMethod,Key:
-//
-HK_BIOS=2,F10 //BIOSMode= Crtl+F10
-HK_Manual=1,M //ManualMode= Alt+M
-HK_Smart=2,S //SmartMode= Crtl+S
-HK_SM1=7,1 //SmartMode1= ctrl+Alt+Shift+1
-HK_SM2=7,2 //SmartMode2= ctrl+Alt+Shift+2
-HK_TG_BS=6,B //Toggle:BIOS-Smart= Crtl+Shift+B
-HK_TG_BM=0,M //Toggle:BIOS-Manual= Crtl+Shift+M disabled
-HK_TG_MS=6,F5 //Toggle:Smart-Manual= Crtl+Shift+F5
-HK_TG_12=2,F11 //Toggle:SmartMode1-SmartMode2= Crtl+F11
-//
-UseTWR=0
-//
-// >>>> Celsius / Fahrenheit: temperatures in °C (active) / °F <<<<
-//
-// ATTENTION: example values are for my T61:
-// BluetoothEDR=1, SensorName5=no5, IgnoreSensors=no5,
-// levels 10 degrees centgrade higher than in T4x, R5x,
-// change for your purposes.
-//
-// advice for programmers: TPFanControl must acquire mutex named
-// "Access_Thinkpad_EC" to get access to embedded controller
-// -----------------------------------------------------------------
-// ENGL:
-// "Active=0" program just reads config.
-// "Active=1" allow program to modify fan.
-// "Active=2" program will come up in smart mode.
-// "Active=3" program will come up in manual mode.
-//
-// DE:
-// bei "Active=0" wird nur die Konfiguration ausgelesen.
-// bei "Active=1" die Veränderung des Lüfterverhaltens ist aktiviert.
-// bei "Active=2" startet das Programm im "Smart"-Modus.
-// bei "Active=3" startet das Programm im "Manual"-Modus.
-
-Active=1
-
-ManFanSpeed=0 // Manual Fan Speed
-
-SlimDialog=0 // Set to 1 for slim widget
-
-StayOnTop=1 //Windows stays on Top if 1, normal behavior =0
-
-BluetoothEDR=0 //set to 1 for bluetooth with enhanced data rate (i.e. T61,
- //X61 for T4x, R5x set BluetoothEDR=0 )
-
-
-// -----------------------------------------------------------------
-// Windows Priority of Process (0-5, normal=2), increase if fancontrol has
-// big delays in response while other processes consume performance.
-// Windows-Priorität des Processes (0-5, normal=2), ggf. erhöhen, falls
-// Reaktion des Programms zu träge wegen Resourcenverbrauch durch andere
-// Anwendungen
-
-ProcessPriority=2
-
-// -----------------------------------------------------------------
-// Show no icon ballons: NoBallons=1
-// Show icon ballons: NoBallons=0
-
-NoBallons=0
-
-// -----------------------------------------------------------------
-// ENGL: check temperatures every x seconds (default 5)
-// DE: Überprüft die Temperaturen alle x Sekunden (Standard ist 5).
-
-Cycle=5
-
-// -----------------------------------------------------------------
-// For Thinkpads A2x,T2x,X2x set NoExtSensor=1 to exclude reading
-// of extended sensors to prevent program errors. Attention 570(E)
-// is NOT compatible. Fan speed is not available on all models.
-// Bei Thinkpads A2x,T2x,X2x NoExtSensor=1 setzen: die Sensoren 9-12
-// werden nicht ausgelesen und dadurch Fehlermeldungen vermieden.
-// Funktioniert NICHT bei 570(E), Fanspeed nicht immer verfügbar.
-
-NoExtSensor=0
-
-// -----------------------------------------------------------------
-// ENGL: Minimize to systray immediately when starting
-// DE: Minimiert das Programm schon beim Start in die Taskleiste.
-
-StartMinimized=0
-
-// -----------------------------------------------------------------
-// ENGL: check vista icon every x seconds (default 1)
-// DE: Überprüft das Vista Icon alle x Sekunden (Standard ist 1).
-
-IconCycle=1
-
-// -----------------------------------------------------------------
-// ENGL: Show new icon with max. temperature / sensor name
-// DE: Zeige neues Icon mit Max. Temperatur / Sensorbezeichnung
-
-ShowTempIcon=1
-
-// -----------------------------------------------------------------
-// ENGL: Save the icon by a start delay of the service of
-// "SecStartDelay" (sec.) within "SecWinUptime" (sec.) after (re)boot
-// DE: Das Problem der nicht erscheinenden Icons wird durch eine
-// Startverzögerung um SecStartDelay (Sekunden) innerhalb einer Zeit von
-// SecWinUptime (Sekunden) verhindert.
-
-// SecWinUptime=120
-// SecStartDelay=60
-// ReIcCycle=10 //rebuild TempIcon every xxx secs.
-// NoWaitMessage=0 //set to 1 to avoid sleep message
-
-// -----------------------------------------------------------------
-// ENGL: Temperature thresholds for turning the taskbar icon
-// yellow orange red (Smart and Manual mode only and
-// only together with MinimizeToTray=1)
-
-// DE: Temperaturgrenzwerte, die das Symbol in der Taskbar gelb,
-// orange bzw. rot färben. (Nur im "Smart"- und "Manual"-Modus
-// in Kombination mit "MinimizeToTray=1" verfügbar.)
-
-IconLevels=131 149 158
-
-// -----------------------------------------------------------------
-// ENGL: Beep frequency and duration (in ms) for successful
-// fan state changes. (Set either or both to zero to
-// disable)
-
-// DE: Frequenz und Dauer des Piep-Signals (in ms), das eine erfolgreiche
-// Änderung des Lüfterzustands ankündigt. (Um den Piepton abzuschalten,
-// setzen Sie entweder einen oder beide Werte auf 0.)
-
-FanBeep=0 0
-
-// --------------------------------------------------------
-// ENGL: If this max number of consecutive EC read errors occur
-// program will switch fan back to bios mode and exit
-
-// DE: Sobald die maximale Anzahl aufeinanderfolgender EC-Lesefehler
-// erreicht ist, schaltet das Programm auf den BIOS-Modus um
-// und wird beendet.
-
-MaxReadErrors= 10
-
-// --------------------------------------------------------
-// ENGL: Log2File=1 enables, Log2File=0 disables
-// writing to TPFanControl.log
-
-// DE: Log2File=1 aktiviert, Log2File=0 deaktiviert
-// Schreiben nach TPFanControl.log
-
-Log2File=1
-
-
-// --------------------------------------------------------
-// ENGL: Log2csv=1 enables, Log2csv=0 disables
-// writing to TPFanControl_csv.txt renamed to
-// TPFanControl_last_csv.txt after restart of TPFanControl
-// rename to *.csv for use with excel
-
-// DE: Log2csv=1 aktiviert, Log2csv=0 deaktiviert
-// Schreiben nach TPFanControl_csv.txt umbenannt in
-// TPFanControl_last_csv.txt nach erneutem Start von TPFanControl
-// nach *.csv umbenennen für Bearbeitung mit excel
-
-Log2csv=1
-
-// --------------------------------------------------------
-// ENGL: list (separated by comma) of sensors to ignore when
-// determining the max. temperature. (Use lower case,
-// e.g "IgnoreSensors=pci,aps")
-
-// DE: Liste der Sensoren, getrennt durch Kommata, die bei der
-// Ermittlung der Maximaltemperatur ignoriert werden. (Verwenden
-// Sie kleine Buchstaben, z.B. "IgnoreSensors=pci,aps".)
-
-IgnoreSensors=no5
-
-// ---------------------------------------------------------
-// ENGL: List of new 3 letter sensor names, delete leading
-// slashes to aktivat. Don't use capital letters for readability
-// of temp icon.
-// DE: Liste von neuen Sensorname (jeweils 3 Buchstaben), zum
-// Aktivieren die Schrägstriche löschen. Kleine Buschstaben
-// wg. der Lesbarkeit im TempIcon gebrauchen.
-
-//SensorName1=cpu
-//SensorName2=aps
-//SensorName3=pcm
-//SensorName4=gpu
-SensorName5=no5
-//SensorName6=x7d
-//SensorName7=bat
-//SensorName8=x7f
-//SensorName9=bus
-//SensorName10=pci
-//SensorName11=pwr
-//SensorName12=xc3
-
-// ---------------------------------------------------------
-// ENGL: calculating Highest Temp with:
-// temperature of sensor no. = real temp minus SensorOffsetno.
-// Default SensorOffset1-12=0 , Capital O in SensorOffset,
-// to activate delete slashes,
-// Negative SensorOffsetno. values increase temperature values.
-
-// DE: Berechnung von Highest Temp mit:
-// Temperatur des Sensor Nr. = reale Temp minus SensorOffsetnr.
-// Default: SensorOffset1-12=0 , Grosses O in SensorOffsetnr.
-// zum Aktivieren Schrägstriche löschen,
-// Negative SensorOffsetnr-Werte erhöhen den Temperaturwert.
-
-
-//SensorOffset1=20
-SensorOffset2=6
-//SensorOffset4=2
-//SensorOffset5=1
-//SensorOffset6=5
-//SensorOffset7=5
-//SensorOffset8=4
-//SensorOffset9=3
-//SensorOffset10=2
-//SensorOffset11=1
-//SensorOffset12=5
-
-ShowBiasedTemps=1 // set to 1 to show calculated temps for sensors
-
-// -----------------------------------------------------------------
-// Show all/active sensors at start up. all=1 only active=0
-
-ShowAll=0
-
-// --------------------------------------------------------
-// ENGL: temperature levels with associated fan levels
-// (for the fan to come back, temperature must fall
-// down to previous level). There may be more or
-// less levels in this list. The first one should
-// have a fan speed of zero and is the "turn off"
-// temperature.
-//
-// Fan speed of 64 is extreme and may be an *unsupported*
-// and *damaging* mode. A fan speed of 128 setting is
-// not really a fan speed in itself but will instead switch
-// fan control to BIOS mode (0x80). The idea of this
-// is to let the program get out of the way and let the
-// BIOS handle extremes.(and then switch back to smart if
-// the temperature is okay again)
-
-// DE: Im Folgenden sind die Temperaturpegel samt den jeweils
-// zugeordeten Lüfterstufen aufgelistet. (Sobald die Temperatur in
-// den Bereich eines niedrigeren bzw. höheren Pegels wechselt, wird
-// die Lüfterstufe automatisch angepasst und folglich verringert bzw.
-// erhöht sich die Geschwindigkeit des Lüfters.) Diese Liste kann
-// weniger oder auch mehr Stufen beinhalten. Sinngemäß sollte die
-// erste Stufe die gewünschte Temperatur definieren, bei der sich
-// der Lüfter ausschaltet (Lüftergeschwindigkeit 0)
-//
-// Die Lüftergeschwindigkeit 64 ist ein Extremwert und könnte somit
-// eine von IBM nicht unterstützte und sogar schädigende Betriebsart
-// darstellen. Die Lüftergeschwindigkeit 128 ist an sich keine eigene
-// Geschwindigkeitsstufe, sondern gibt stattdessen die Kontrolle
-// des Lüfters an das BIOS (BIOS mode, 0x80) zurück. Der Hintergrund
-// dieser Einstellung ist die Möglichkeit, das Programm auszuschließen,
-// um Extemfälle wieder vom BIOS steuern zu lassen. (Sobald sich die
-// Temperatur wieder im Normbereich befindet, wird erneut der Smart
-// Modus aktiviert.)
-
-// Celsius: // Fahrenheit: (Level FAN 0>80 -> Fahrenheit)
-
-MenuLabelSM1=Smart Mode Very Cool/ Label for Icon Menu, must be terminated by '/'
-
-Level=100 0
-Level=120 1
-Level=130 3
-Level=140 7
-
-
-//optional 2nd profile very special for 'sonny'
-//if you dont use, deactivate following lines with '//'
-
-MenuLabelSM2=Smart Mode Warmer/ Label for Icon Menu, must be terminated by '/'
-Level2=150 0
-Level2=160 1
-Level2=170 3
-Level2=180 7
-
-
-// IconColorFan=1 digital Icon will turn green while fan is running.
-// IconColorFan=1 Digitales Icon wird grün während der Lüfter läuft.
-
-IconColorFan=1
-
-// Lev64Norm=1 : Fan level 64 acts as normal level with hysteresis,
-// fan will run till next lower temp step is reached (no pulsing fan).
-// If set to zero fan level 64 acts as emergency level without hysteresis,
-// fan will run till level64 temp is reached again (pulsing fan can happen).
-//
-// DE: Lev64Norm=1 : Fan level 64 arbeitet mit Hysterese, Lüfter läuft,
-// bis nächst tieferer level erreicht wird. Lüfter pulsiert nicht.
-// Falls Lev64Norm=0 gesetzt, arbeitet level 64 als Notfallkühlung oberhalb
-// der Temperatur von level 64. Ein Pulsieren des Lüfters ist möglich.
-
-Lev64Norm=1
-
-// Program exits manual mode and switches to smart mode with last chosen
-// profile, if this temp (degrees Centigrade or Fahrenheit) is achieved.
-// default= 80 degrees Centigrade / 176 degrees Fahrenheit.
-
-// Das Program verlässt den manual mode und schaltet auf smart mode mit
-// letztem gewähltem Profil, wenn diese Temperatur erreicht ist.
-// default= 80 Grad Celsius / 176 Grad Fahrenheit.
-
-ManModeExit=162 Fahrenheit
diff --git a/fancontrol/Release/TPFanControl.ini b/fancontrol/Release/TPFanControl.ini
deleted file mode 100644
index 98df6b9..0000000
--- a/fancontrol/Release/TPFanControl.ini
+++ /dev/null
@@ -1,325 +0,0 @@
-//
-// HotKey Integration: HotKey=HotKeyMethod,Key:
-//
-// HotKeyMethod:
-// 0=disabled
-// 1=Alt
-// 2=Ctrl
-// 3=Ctrl+Alt
-// (5=Alt+Shift, used by System to change keyboard pattern)
-// 4=Shift
-// 6=Ctrl+Shift
-// 7=ctrl+Alt+Shift
-//
-// allowed Keys: A-Z (Capitals), 0-1, F1-F12
-//
-// HotKey=HotKeyMethod,Key:
-//
-HK_BIOS=2,F10 //BIOSMode= Crtl+F10
-HK_Manual=1,M //ManualMode= Alt+M
-HK_Smart=2,S //SmartMode= Crtl+S
-HK_SM1=7,1 //SmartMode1= ctrl+Alt+Shift+1
-HK_SM2=7,2 //SmartMode2= ctrl+Alt+Shift+2
-HK_TG_BS=6,B //Toggle:BIOS-Smart= Crtl+Shift+B
-HK_TG_BM=0,M //Toggle:BIOS-Manual= Crtl+Shift+M disabled
-HK_TG_MS=6,F5 //Toggle:Smart-Manual= Crtl+Shift+F5
-HK_TG_12=2,F11 //Toggle:SmartMode1-SmartMode2= Crtl+F11
-//
-UseTWR=1
-//
-// >>>> Celsius / Fahrenheit: temperatures in °C (active) / °F <<<<
-//
-// ATTENTION: example values are for my T61:
-// BluetoothEDR=1, SensorName5=no5, IgnoreSensors=no5,
-// levels 10 degrees centgrade higher than in T4x, R5x,
-// change for your purposes.
-//
-// advice for programmers: TPFanControl must acquire mutex named
-// "Access_Thinkpad_EC" to get access to embedded controller
-// -----------------------------------------------------------------
-// ENGL:
-// "Active=0" program just reads config.
-// "Active=1" allow program to modify fan.
-// "Active=2" program will come up in smart mode.
-// "Active=3" program will come up in manual mode.
-//
-// DE:
-// bei "Active=0" wird nur die Konfiguration ausgelesen.
-// bei "Active=1" die Veränderung des Lüfterverhaltens ist aktiviert.
-// bei "Active=2" startet das Programm im "Smart"-Modus.
-// bei "Active=3" startet das Programm im "Manual"-Modus.
-
-Active=1
-
-ManFanSpeed=0 // Manual Fan Speed
-
-SlimDialog=0 // Set to 1 for slim widget
-
-StayOnTop=1 //Windows stays on Top if 1, normal behavior =0
-
-BluetoothEDR=0 //set to 1 for bluetooth with enhanced data rate (i.e. T61,
- //X61 for T4x, R5x set BluetoothEDR=0 )
-
-
-// -----------------------------------------------------------------
-// Windows Priority of Process (0-5, normal=2), increase if fancontrol has
-// big delays in response while other processes consume performance.
-// Windows-Priorität des Processes (0-5, normal=2), ggf. erhöhen, falls
-// Reaktion des Programms zu träge wegen Resourcenverbrauch durch andere
-// Anwendungen
-
-ProcessPriority=2
-
-// -----------------------------------------------------------------
-// Show no icon ballons: NoBallons=1
-// Show icon ballons: NoBallons=0
-
-NoBallons=0
-
-// -----------------------------------------------------------------
-// ENGL: check temperatures every x seconds (default 5)
-// DE: Überprüft die Temperaturen alle x Sekunden (Standard ist 5).
-
-Cycle=5
-
-// -----------------------------------------------------------------
-// For Thinkpads A2x,T2x,X2x set NoExtSensor=1 to exclude reading
-// of extended sensors to prevent program errors. Attention 570(E)
-// is NOT compatible. Fan speed is not available on all models.
-// Bei Thinkpads A2x,T2x,X2x NoExtSensor=1 setzen: die Sensoren 9-12
-// werden nicht ausgelesen und dadurch Fehlermeldungen vermieden.
-// Funktioniert NICHT bei 570(E), Fanspeed nicht immer verfügbar.
-
-NoExtSensor=0
-
-// -----------------------------------------------------------------
-// ENGL: Minimize to systray immediately when starting
-// DE: Minimiert das Programm schon beim Start in die Taskleiste.
-
-StartMinimized=0
-
-// -----------------------------------------------------------------
-// ENGL: check vista icon every x seconds (default 1)
-// DE: Überprüft das Vista Icon alle x Sekunden (Standard ist 1).
-
-IconCycle=1
-
-// -----------------------------------------------------------------
-// ENGL: Show new icon with max. temperature / sensor name
-// DE: Zeige neues Icon mit Max. Temperatur / Sensorbezeichnung
-
-ShowTempIcon=1
-
-// -----------------------------------------------------------------
-// ENGL: Save the icon by a start delay of the service of
-// "SecStartDelay" (sec.) within "SecWinUptime" (sec.) after (re)boot
-// DE: Das Problem der nicht erscheinenden Icons wird durch eine
-// Startverzögerung um SecStartDelay (Sekunden) innerhalb einer Zeit von
-// SecWinUptime (Sekunden) verhindert.
-
-// SecWinUptime=120
-// SecStartDelay=60
-// ReIcCycle=10 //rebuild TempIcon every xxx secs.
-// NoWaitMessage=0 //set to 1 to avoid sleep message
-
-// -----------------------------------------------------------------
-// ENGL: Temperature thresholds for turning the taskbar icon
-// yellow orange red (Smart and Manual mode only and
-// only together with MinimizeToTray=1)
-
-// DE: Temperaturgrenzwerte, die das Symbol in der Taskbar gelb,
-// orange bzw. rot färben. (Nur im "Smart"- und "Manual"-Modus
-// in Kombination mit "MinimizeToTray=1" verfügbar.)
-
-IconLevels=131 149 158
-
-// -----------------------------------------------------------------
-// ENGL: Beep frequency and duration (in ms) for successful
-// fan state changes. (Set either or both to zero to
-// disable)
-
-// DE: Frequenz und Dauer des Piep-Signals (in ms), das eine erfolgreiche
-// Änderung des Lüfterzustands ankündigt. (Um den Piepton abzuschalten,
-// setzen Sie entweder einen oder beide Werte auf 0.)
-
-FanBeep=0 0
-
-// --------------------------------------------------------
-// ENGL: If this max number of consecutive EC read errors occur
-// program will switch fan back to bios mode and exit
-
-// DE: Sobald die maximale Anzahl aufeinanderfolgender EC-Lesefehler
-// erreicht ist, schaltet das Programm auf den BIOS-Modus um
-// und wird beendet.
-
-MaxReadErrors= 10
-
-// --------------------------------------------------------
-// ENGL: Log2File=1 enables, Log2File=0 disables
-// writing to TPFanControl.log
-
-// DE: Log2File=1 aktiviert, Log2File=0 deaktiviert
-// Schreiben nach TPFanControl.log
-
-Log2File=1
-
-
-// --------------------------------------------------------
-// ENGL: Log2csv=1 enables, Log2csv=0 disables
-// writing to TPFanControl_csv.txt renamed to
-// TPFanControl_last_csv.txt after restart of TPFanControl
-// rename to *.csv for use with excel
-
-// DE: Log2csv=1 aktiviert, Log2csv=0 deaktiviert
-// Schreiben nach TPFanControl_csv.txt umbenannt in
-// TPFanControl_last_csv.txt nach erneutem Start von TPFanControl
-// nach *.csv umbenennen für Bearbeitung mit excel
-
-Log2csv=1
-
-// --------------------------------------------------------
-// ENGL: list (separated by comma) of sensors to ignore when
-// determining the max. temperature. (Use lower case,
-// e.g "IgnoreSensors=pci,aps")
-
-// DE: Liste der Sensoren, getrennt durch Kommata, die bei der
-// Ermittlung der Maximaltemperatur ignoriert werden. (Verwenden
-// Sie kleine Buchstaben, z.B. "IgnoreSensors=pci,aps".)
-
-IgnoreSensors=no5
-
-// ---------------------------------------------------------
-// ENGL: List of new 3 letter sensor names, delete leading
-// slashes to aktivat. Don't use capital letters for readability
-// of temp icon.
-// DE: Liste von neuen Sensorname (jeweils 3 Buchstaben), zum
-// Aktivieren die Schrägstriche löschen. Kleine Buschstaben
-// wg. der Lesbarkeit im TempIcon gebrauchen.
-
-//SensorName1=cpu
-//SensorName2=aps
-//SensorName3=pcm
-//SensorName4=gpu
-SensorName5=no5
-//SensorName6=x7d
-//SensorName7=bat
-//SensorName8=x7f
-//SensorName9=bus
-//SensorName10=pci
-//SensorName11=pwr
-//SensorName12=xc3
-
-// ---------------------------------------------------------
-// ENGL: calculating Highest Temp with:
-// temperature of sensor no. = real temp minus SensorOffsetno.
-// Default SensorOffset1-12=0 , Capital O in SensorOffset,
-// to activate delete slashes,
-// Negative SensorOffsetno. values increase temperature values.
-
-// DE: Berechnung von Highest Temp mit:
-// Temperatur des Sensor Nr. = reale Temp minus SensorOffsetnr.
-// Default: SensorOffset1-12=0 , Grosses O in SensorOffsetnr.
-// zum Aktivieren Schrägstriche löschen,
-// Negative SensorOffsetnr-Werte erhöhen den Temperaturwert.
-
-
-//SensorOffset1=20
-SensorOffset2=6
-//SensorOffset4=2
-//SensorOffset5=1
-//SensorOffset6=5
-//SensorOffset7=5
-//SensorOffset8=4
-//SensorOffset9=3
-//SensorOffset10=2
-//SensorOffset11=1
-//SensorOffset12=5
-
-ShowBiasedTemps=1 // set to 1 to show calculated temps for sensors
-
-// -----------------------------------------------------------------
-// Show all/active sensors at start up. all=1 only active=0
-
-ShowAll=0
-
-// --------------------------------------------------------
-// ENGL: temperature levels with associated fan levels
-// (for the fan to come back, temperature must fall
-// down to previous level). There may be more or
-// less levels in this list. The first one should
-// have a fan speed of zero and is the "turn off"
-// temperature.
-//
-// Fan speed of 64 is extreme and may be an *unsupported*
-// and *damaging* mode. A fan speed of 128 setting is
-// not really a fan speed in itself but will instead switch
-// fan control to BIOS mode (0x80). The idea of this
-// is to let the program get out of the way and let the
-// BIOS handle extremes.(and then switch back to smart if
-// the temperature is okay again)
-
-// DE: Im Folgenden sind die Temperaturpegel samt den jeweils
-// zugeordeten Lüfterstufen aufgelistet. (Sobald die Temperatur in
-// den Bereich eines niedrigeren bzw. höheren Pegels wechselt, wird
-// die Lüfterstufe automatisch angepasst und folglich verringert bzw.
-// erhöht sich die Geschwindigkeit des Lüfters.) Diese Liste kann
-// weniger oder auch mehr Stufen beinhalten. Sinngemäß sollte die
-// erste Stufe die gewünschte Temperatur definieren, bei der sich
-// der Lüfter ausschaltet (Lüftergeschwindigkeit 0)
-//
-// Die Lüftergeschwindigkeit 64 ist ein Extremwert und könnte somit
-// eine von IBM nicht unterstützte und sogar schädigende Betriebsart
-// darstellen. Die Lüftergeschwindigkeit 128 ist an sich keine eigene
-// Geschwindigkeitsstufe, sondern gibt stattdessen die Kontrolle
-// des Lüfters an das BIOS (BIOS mode, 0x80) zurück. Der Hintergrund
-// dieser Einstellung ist die Möglichkeit, das Programm auszuschließen,
-// um Extemfälle wieder vom BIOS steuern zu lassen. (Sobald sich die
-// Temperatur wieder im Normbereich befindet, wird erneut der Smart
-// Modus aktiviert.)
-
-// Celsius: // Fahrenheit: (Level FAN 0>80 -> Fahrenheit)
-
-MenuLabelSM1=Smart Mode Very Cool/ Label for Icon Menu, must be terminated by '/'
-
-Level=100 0
-Level=120 1
-Level=130 3
-Level=140 7
-
-
-//optional 2nd profile very special for 'sonny'
-//if you dont use, deactivate following lines with '//'
-
-MenuLabelSM2=Smart Mode Warmer/ Label for Icon Menu, must be terminated by '/'
-Level2=150 0
-Level2=160 1
-Level2=170 3
-Level2=180 7
-
-
-// IconColorFan=1 digital Icon will turn green while fan is running.
-// IconColorFan=1 Digitales Icon wird grün während der Lüfter läuft.
-
-IconColorFan=1
-
-// Lev64Norm=1 : Fan level 64 acts as normal level with hysteresis,
-// fan will run till next lower temp step is reached (no pulsing fan).
-// If set to zero fan level 64 acts as emergency level without hysteresis,
-// fan will run till level64 temp is reached again (pulsing fan can happen).
-//
-// DE: Lev64Norm=1 : Fan level 64 arbeitet mit Hysterese, Lüfter läuft,
-// bis nächst tieferer level erreicht wird. Lüfter pulsiert nicht.
-// Falls Lev64Norm=0 gesetzt, arbeitet level 64 als Notfallkühlung oberhalb
-// der Temperatur von level 64. Ein Pulsieren des Lüfters ist möglich.
-
-Lev64Norm=1
-
-// Program exits manual mode and switches to smart mode with last chosen
-// profile, if this temp (degrees Centigrade or Fahrenheit) is achieved.
-// default= 80 degrees Centigrade / 176 degrees Fahrenheit.
-
-// Das Program verlässt den manual mode und schaltet auf smart mode mit
-// letztem gewähltem Profil, wenn diese Temperatur erreicht ist.
-// default= 80 Grad Celsius / 176 Grad Fahrenheit.
-
-ManModeExit=162 Fahrenheit
diff --git a/fancontrol/TPFanControl.ini b/fancontrol/TPFanControl.ini
deleted file mode 100644
index d214746..0000000
--- a/fancontrol/TPFanControl.ini
+++ /dev/null
@@ -1,287 +0,0 @@
-//
-// >>>> Celsius / Fahrenheit: temperatures in °C (active) / °F <<<<
-
-// !!!! "Level" FAN 0 > 80 -> switch to Fahrenheit !!!! see below
-
-// ATTENTION: example values are for my T61 (!!):
-// BluetoothEDR=1, SensorName5=no5, IgnoreSensors=no5,
-// levels 10 degrees centgrade higher than in T4x, R5x,
-// change for your purposes.
-//
-// advice for programmers: TPFanControl must acquire mutex named
-// "Access_Thinkpad_EC" to get access to embedded controller
-// -----------------------------------------------------------------
-// ENGL:
-// "Active=0" program just reads config.
-// "Active=1" allow program to modify fan.
-// "Active=2" program will come up in smart mode.
-
-// DE:
-// bei "Active=0" wird nur die Konfiguration ausgelesen.
-// bei "Active=1" die Veränderung des Lüfterverhaltens ist aktiviert.
-// bei "Active=2" startet das Programm im "Smart"-Modus.
-
-Active=2
-
-BluetoothEDR=0 //set to 1 for bluetooth with enhanced data rate (i.e. T61,
- //X61 for T4x, R5x set BluetoothEDR=0 )
-NoWaitMessage=0 //set to 1 to avoid sleep message
-
-
-// -----------------------------------------------------------------
-// Windows Priority of Process (0-5, normal=2), increase if fancontrol has
-// big delays in response while other processes consume performance.
-// Windows-Priorität des Processes (0-5, normal=2), ggf. erhöhen, falls
-// Reaktion des Programms zu träge wegen Resourcenverbrauch durch andere
-// Anwendungen
-
-ProcessPriority=2
-
-// -----------------------------------------------------------------
-// Show no icon ballons: NoBallons=1
-// Show icon ballons: NoBallons=0
-
-NoBallons=0
-
-// -----------------------------------------------------------------
-// ENGL: check temperatures every x seconds (default 5)
-// DE: Überprüft die Temperaturen alle x Sekunden (Standard ist 5).
-
-Cycle=5
-
-// -----------------------------------------------------------------
-// For Thinkpads A2x,T2x,X2x set NoExtSensor=1 to exclude reading
-// of extended sensors to prevent program errors. Attention 570(E)
-// is NOT compatible. Fan speed is not available on all models.
-// Bei Thinkpads A2x,T2x,X2x NoExtSensor=1 setzen: die Sensoren 9-12
-// werden nicht ausgelesen und dadurch Fehlermeldungen vermieden.
-// Funktioniert NICHT bei 570(E), Fanspeed nicht immer verfügbar.
-
-NoExtSensor=0
-
-// -----------------------------------------------------------------
-// ENGL: Minimize to systray immediately when starting
-// DE: Minimiert das Programm schon beim Start in die Taskleiste.
-
-StartMinimized=1
-
-// -----------------------------------------------------------------
-// ENGL: check vista icon every x seconds (default 1)
-// DE: Überprüft das Vista Icon alle x Sekunden (Standard ist 1).
-
-IconCycle=1
-
-// -----------------------------------------------------------------
-// ENGL: Show new icon with max. temperature / sensor name
-// DE: Zeige neues Icon mit Max. Temperatur / Sensorbezeichnung
-
-ShowTempIcon=1
-
-// -----------------------------------------------------------------
-// ENGL: Save the icon by a start delay of the service of
-// "SecStartDelay" (sec.) within "SecWinUptime" (sec.) after (re)boot
-// DE: Das Problem der nicht erscheinenden Icons wird durch eine
-// Startverzögerung um SecStartDelay (Sekunden) innerhalb einer Zeit von
-// SecWinUptime (Sekunden) verhindert.
-
-//SecWinUptime=120
-//SecStartDelay=60
-
-// -----------------------------------------------------------------
-// ENGL: Temperature thresholds for turning the taskbar icon
-// yellow orange red (Smart and Manual mode only and
-// only together with MinimizeToTray=1)
-
-// DE: Temperaturgrenzwerte, die das Symbol in der Taskbar gelb,
-// orange bzw. rot färben. (Nur im "Smart"- und "Manual"-Modus
-// in Kombination mit "MinimizeToTray=1" verfügbar.)
-
-IconLevels=50 60 70 // Fahrenheit: IconLevels=122 140 158
-
-// -----------------------------------------------------------------
-// ENGL: Beep frequency and duration (in ms) for successful
-// fan state changes. (Set either or both to zero to
-// disable)
-
-// DE: Frequenz und Dauer des Piep-Signals (in ms), das eine erfolgreiche
-// Änderung des Lüfterzustands ankündigt. (Um den Piepton abzuschalten,
-// setzen Sie entweder einen oder beide Werte auf 0.)
-
-FanBeep=0 0
-
-// --------------------------------------------------------
-// ENGL: If this max number of consecutive EC read errors occur
-// program will switch fan back to bios mode and exit
-
-// DE: Sobald die maximale Anzahl aufeinanderfolgender EC-Lesefehler
-// erreicht ist, schaltet das Programm auf den BIOS-Modus um
-// und wird beendet.
-
-MaxReadErrors= 10
-
-// --------------------------------------------------------
-// ENGL: Log2File=1 enables, Log2File=0 disables
-// writing to TPFanControl.log
-
-// DE: Log2File=1 aktiviert, Log2File=0 deaktiviert
-// Schreiben nach TPFanControl.log
-
-Log2File=1
-
-
-// --------------------------------------------------------
-// ENGL: Log2csv=1 enables, Log2csv=0 disables
-// writing to TPFanControl_csv.txt renamed to
-// TPFanControl_last_csv.txt after restart of TPFanControl
-// rename to *.csv for use with excel
-
-// DE: Log2csv=1 aktiviert, Log2csv=0 deaktiviert
-// Schreiben nach TPFanControl_csv.txt umbenannt in
-// TPFanControl_last_csv.txt nach erneutem Start von TPFanControl
-// nach *.csv umbenennen für Bearbeitung mit excel
-
-Log2csv=0
-
-// --------------------------------------------------------
-// ENGL: list (separated by comma) of sensors to ignore when
-// determining the max. temperature. (Use lower case,
-// e.g "IgnoreSensors=pci,aps")
-
-// DE: Liste der Sensoren, getrennt durch Kommata, die bei der
-// Ermittlung der Maximaltemperatur ignoriert werden. (Verwenden
-// Sie kleine Buchstaben, z.B. "IgnoreSensors=pci,aps".)
-
-IgnoreSensors=no5
-
-// ---------------------------------------------------------
-// ENGL: List of new 3 letter sensor names, delete leading
-// slashes to aktivat. Don't use capital letters for readability
-// of temp icon.
-// DE: Liste von neuen Sensorname (jeweils 3 Buchstaben), zum
-// Aktivieren die Schrägstriche löschen. Kleine Buschstaben
-// wg. der Lesbarkeit im TempIcon gebrauchen.
-
-//SensorName1=cpu
-//SensorName2=aps
-//SensorName3=pcm
-//SensorName4=gpu
-SensorName5=no5
-//SensorName6=x7d
-//SensorName7=bat
-//SensorName8=x7f
-//SensorName9=bus
-//SensorName10=pci
-//SensorName11=pwr
-//SensorName12=xc3
-
-// ---------------------------------------------------------
-// ENGL: calculating Highest Temp with:
-// temperature of sensor no. = real temp minus SensorOffsetno.
-// Default SensorOffset1-12=0 , Capital O in SensorOffset,
-// to activate delete slashes,
-// Negative SensorOffsetno. values increase temperature values.
-
-// DE: Berechnung von Highest Temp mit:
-// Temperatur des Sensor Nr. = reale Temp minus SensorOffsetnr.
-// Default: SensorOffset1-12=0 , Grosses O in SensorOffsetnr.
-// zum Aktivieren Schrägstriche löschen,
-// Negative SensorOffsetnr-Werte erhöhen den Temperaturwert.
-
-
-//SensorOffset1=20
-//SensorOffset2=20
-//SensorOffset3=0
-//SensorOffset4=2
-//SensorOffset5=1
-//SensorOffset6=5
-//SensorOffset7=5
-//SensorOffset8=4
-//SensorOffset9=3
-//SensorOffset10=2
-//SensorOffset11=1
-//SensorOffset12=5
-
-ShowBiasedTemps=1 // set to 1 to show calculated temps for sensors
-
-
-// -----------------------------------------------------------------
-// Show all/active sensors at start up. all=1 only active=0
-
-ShowAll=0
-
-
-// --------------------------------------------------------
-// ENGL: temperature levels with associated fan levels
-// (for the fan to come back, temperature must fall
-// down to previous level). There may be more or
-// less levels in this list. The first one should
-// have a fan speed of zero and is the "turn off"
-// temperature.
-//
-// Fan speed of 64 is extreme and may be an *unsupported*
-// and *damaging* mode. A fan speed of 128 setting is
-// not really a fan speed in itself but will instead switch
-// fan control to BIOS mode (0x80). The idea of this
-// is to let the program get out of the way and let the
-// BIOS handle extremes.(and then switch back to smart if
-// the temperature is okay again)
-
-// DE: Im Folgenden sind die Temperaturpegel samt den jeweils
-// zugeordeten Lüfterstufen aufgelistet. (Sobald die Temperatur in
-// den Bereich eines niedrigeren bzw. höheren Pegels wechselt, wird
-// die Lüfterstufe automatisch angepasst und folglich verringert bzw.
-// erhöht sich die Geschwindigkeit des Lüfters.) Diese Liste kann
-// weniger oder auch mehr Stufen beinhalten. Sinngemäß sollte die
-// erste Stufe die gewünschte Temperatur definieren, bei der sich
-// der Lüfter ausschaltet (Lüftergeschwindigkeit 0)
-//
-// Die Lüftergeschwindigkeit 64 ist ein Extremwert und könnte somit
-// eine von IBM nicht unterstützte und sogar schädigende Betriebsart
-// darstellen. Die Lüftergeschwindigkeit 128 ist an sich keine eigene
-// Geschwindigkeitsstufe, sondern gibt stattdessen die Kontrolle
-// des Lüfters an das BIOS (BIOS mode, 0x80) zurück. Der Hintergrund
-// dieser Einstellung ist die Möglichkeit, das Programm auszuschließen,
-// um Extemfälle wieder vom BIOS steuern zu lassen. (Sobald sich die
-// Temperatur wieder im Normbereich befindet, wird erneut der Smart
-// Modus aktiviert.)
-
-// profile "Smart Mode 1"
-// Celsius: // Fahrenheit:
-// change values and number of items for your needs
-// !!!! "Level" FAN 0 > 80 -> switch to Fahrenheit !!!!
-Level=140 0
-Level=150 1
-Level=165 3
-Level=175 7
-Level=195 64
-
-// optional 2nd profile "Smart Mode 2", switched by icon menue
-// change values and number of items for your needs
-// to deactivate, insert leading '//' into following lines
-Level2=70 0
-Level2=90 1
-Level2=100 2
-Level2=110 3
-Level2=130 7
-Level2=150 64
-Level2=170 128
-
-
-// IconColorFan=1 digital Icon will turn green while fan is running.
-// IconColorFan=1 Digitales Icon wird grün während der Lüfter läuft.
-
-IconColorFan=1
-
-
-// Lev64Norm=1 : Fan level 64 acts as normal level with hysteresis,
-// fan will run till next lower temp step is reached (no pulsing fan).
-// If set to zero fan level 64 acts as emergency level without hysteresis,
-// fan will run till level64 temp is reached again (pulsing fan can happen).
-//
-// DE: Lev64Norm=1 : Fan level 64 arbeitet mit Hysterese, Lüfter läuft,
-// bis nächst tieferer level erreicht wird. Lüfter pulsiert nicht.
-// Falls Lev64Norm=0 gesetzt, arbeitet level 64 als Notfallkühlung oberhalb
-// der Temperatur von level 64. Ein Pulsieren des Lüfters ist möglich.
-
-Lev64Norm=1
-ManModeExit=161
\ No newline at end of file
diff --git a/fancontrol/fancontrol.vcproj b/fancontrol/fancontrol.vcproj
deleted file mode 100644
index 67a0912..0000000
--- a/fancontrol/fancontrol.vcproj
+++ /dev/null
@@ -1,455 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-