diff -r a105b5eee02f -r d32fc5f2e822 Hardware/CPU/IntelCPU.cs --- a/Hardware/CPU/IntelCPU.cs Fri Jan 29 21:58:31 2010 +0000 +++ b/Hardware/CPU/IntelCPU.cs Sun Jan 31 19:30:00 2010 +0000 @@ -161,7 +161,7 @@ for (int i = 0; i < coreTemperatures.Length; i++) { if (WinRing0.RdmsrPx( IA32_THERM_STATUS_MSR, ref eax, ref edx, - (UIntPtr)(logicalProcessorsPerCore << i))) + (UIntPtr)(1 << (int)(logicalProcessorsPerCore * i)))) { // if reading is valid if ((eax & 0x80000000) != 0) {