diff -r 9bf70d316cea -r bddc6e01840a Hardware/CPU/IntelCPU.cs --- a/Hardware/CPU/IntelCPU.cs Mon Nov 01 20:44:21 2010 +0000 +++ b/Hardware/CPU/IntelCPU.cs Wed Nov 03 22:07:46 2010 +0000 @@ -118,7 +118,7 @@ tjMax = new float[coreCount]; for (int i = 0; i < coreCount; i++) { if (Ring0.RdmsrTx(IA32_TEMPERATURE_TARGET, out eax, - out edx, (UIntPtr)(1L << cpuid[i][0].Thread))) { + out edx, 1UL << cpuid[i][0].Thread)) { tjMax[i] = (eax >> 16) & 0xFF; } else { tjMax[i] = 100; @@ -217,7 +217,7 @@ uint eax, edx; if (Ring0.RdmsrTx( IA32_THERM_STATUS_MSR, out eax, out edx, - (UIntPtr)(1L << cpuid[i][0].Thread))) { + 1UL << cpuid[i][0].Thread)) { // if reading is valid if ((eax & 0x80000000) != 0) { // get the dist from tjMax from bits 22:16 @@ -237,7 +237,7 @@ for (int i = 0; i < coreClocks.Length; i++) { System.Threading.Thread.Sleep(1); if (Ring0.RdmsrTx(IA32_PERF_STATUS, out eax, out edx, - (UIntPtr)(1L << cpuid[i][0].Thread))) + 1UL << cpuid[i][0].Thread)) { newBusClock = TimeStampCounterFrequency / timeStampCounterMultiplier;