Точнее, купил мамку MSI K9N Platinum... с версией BIOS 1.0, все работает прекрасно с ней. Как только изменяю версию BIOS на любую другую (1.1, 1.2, 1.3, 1.44) термодатчик процессора будет показывать что на процессоре - 48С! Это очень мешает мне, так как я увлекаюсь приличным разгоном и t нужна 90%... *( Обращения по e-mail к представительствам результато не дало...
Возможно ли пересмотреть в прошивке, что именно отличается в 1 версии от 1.44, и переставить эти куски кода от ранней к позней?
Зачем такие сложности ? Если интересует точность температуры (а не правильность показаний биоса), то проще воспользоваться прогами под винду. SpeedFan'ом, например. Но если регистры чипа мониторинга настроены совсем неправильно, то спидфан может врать так же, как и биос.
Так что лучше использовать прожку CoreTemp, которая берет темпу прямо из соответствующих регистров проца (под AMD-шники и Core2). Быть может функциональность этой элементарной прожки можно будет в будущем запихнуть в биос-патчер, как знать. :)
Значит проблему эту сам производитель решать не собирается, придётся самому.
Сразу хочу сказать, что я прекрасно понимаю, что действую на свой страх и риск и гарантий работы биоса не прошу :)
Мне нужно только узнать следующие вещи:
1. чем достать из биоса нужный модуль и потом засунуть обратно?
2. нужен ли специальный компилятор или подойдёт любой ассемблерный?
3. по каким ключам искать в коде нужную процедуру?
AMI bios на asus A8N-E.
Добавлено спустя 1 час 59 минут 23 секунды:
Неужели нет никого, кто этим занимался....
То, что мне достаёт из биоса mmtool мне не дисассемблировать никак, пробую w32dasm, так он просто закрывается молча и всё...
Дермодатчик скорее всего прикручен к микросхеме SuperIO, поэтому смОтрите на мультик, ищете даташит от него. На низком уровне (через LDN - Logical_Device_Number) уровни нуля термодиодов не программируются или программируются, но изменяются потом - смОтрите по даташиту адреса Environment Controller регистров, отвечающих за zero-dergee adjust (уровень нуля) термодиода. Обращение к ним обычно происходит по портам 295h/296h (адрес/данные соответственно). Для примера - у IT8712 за это дело отвечают регистры номер 56h и 57h. (для pdf-ки версии 0.9.1 стр 83 (таблица), стр 92 (расшифровка))
Дело за малым - в прошивке находите обращение к этим регистрам и методом научного тыка находите нужное значение нуля.