Hardware/LPC/NCT677X.cs
changeset 356 e471b1c2b1a6
parent 355 17dbf781401e
child 413 362c5e77197d
     1.1 --- a/Hardware/LPC/NCT677X.cs	Sun Jul 01 21:44:07 2012 +0000
     1.2 +++ b/Hardware/LPC/NCT677X.cs	Mon Jul 02 12:50:03 2012 +0000
     1.3 @@ -46,7 +46,7 @@
     1.4        Ring0.WriteIoPort(port + DATA_REGISTER_OFFSET, bank);
     1.5        Ring0.WriteIoPort(port + ADDRESS_REGISTER_OFFSET, register);
     1.6        Ring0.WriteIoPort(port + DATA_REGISTER_OFFSET, value);
     1.7 -    } 
     1.8 +    }
     1.9  
    1.10      // Consts 
    1.11      private const ushort NUVOTON_VENDOR_ID = 0x5CA3;
    1.12 @@ -215,6 +215,7 @@
    1.13            alternateTemperatureRegister = new ushort?[] 
    1.14              { null, null, null, null };
    1.15            break;
    1.16 +
    1.17          case Chip.NCT6779D:
    1.18            fans = new float?[5];
    1.19            fanRpmBaseRegister = 0x4C0;
    1.20 @@ -354,7 +355,13 @@
    1.21          if ((temperatureSourceMask & (1 << temperaturesSource[i])) > 0)
    1.22            continue;
    1.23  
    1.24 -        temperatures[i] = ReadByte(alternateTemperatureRegister[i].Value);
    1.25 +        float? temperature = (sbyte)
    1.26 +          ReadByte(alternateTemperatureRegister[i].Value);
    1.27 +
    1.28 +        if (temperature > 125 || temperature < -55)
    1.29 +          temperature = null;
    1.30 +
    1.31 +        temperatures[i] = temperature;
    1.32        }
    1.33  
    1.34        for (int i = 0; i < fans.Length; i++) {