I hope this doesn' t break anything, but I quickly hacked that in for you:
in fancontrol.cpp, replace
Code: Select all
// read current fan control status and set mode buttons accordingly
if (this->ActiveMode==2) {
this->CurrentMode= 2;
}
else
if (this->ReadEcStatus(&this->State)) {
if (this->State.FanCtrl & 0x80) {
this->CurrentMode= 1;
}
else {
this->CurrentMode= 3;
char buf[16]= "";
sprintf(buf, "%d", this->State.FanCtrl & 0x3f);
::SetDlgItemText(this->hwndDialog, 8310, buf);
}
}
by that:
Code: Select all
switch(this->ActiveMode) {
case 2:
this->CurrentMode = 2;
break;
case 4:
this->CurrentMode = 1;
break;
default:
if (this->ReadEcStatus(&this->State)) {
if (this->State.FanCtrl & 0x80) {
this->CurrentMode= 1;
}
else {
this->CurrentMode= 3;
char buf[16]= "";
sprintf(buf, "%d", this->State.FanCtrl & 0x3f);
::SetDlgItemText(this->hwndDialog, 8310, buf);
}
}
break;
}
After recompiling, you can use a value of "active=4" in fancontrol.ini to start up TPFANCONTROL in BIOS controlled mode.
I don' t get your point why one should want this behaviour, but here it is.
I don' t have the source code for the service binary, so I can' t modify that for you.
X300 (6478-15G) with 3GB of RAM and builtin 3G/UMTS, running Vista Business x86-32