Искусство перешивки BIOS. Часть первая.

Часть первая. Для тех, кому лень читать, а хочется побыстрей прошить и забыть.

Мифы.

Не буду акцентировать вопрос на том, что такое биос, какие они бывают и зачем. Раз вы это читаете, значит, вам что-то уже известно. Потому начнём с обратного - развеем самые стандартные, почему-то непотопляемые мифы и заблуждения.

  1. Шить биос нужно (лучше) только "своим" прошивальщиком (пример: Award - с помощью AwdFlash, AMI - AMIFlash).

Бред. Однако некоторым сложно это понять и поверить - ведь на сайте производителя платы много всяческих грозных непонятных предупреждений (да ещё и на нерусском). Почему же так? Интересно - тогда дочитайте эту и прочитайте следующую часть.:)

  1. Шить биос "на горячую" (Hot Swap - "хотсвапом") нужно (можно) только на точно такой же матери (таком же чипсете, с точно такой же флэшкой т.п.)

Второе самое распространённое заблуждение. Имеет корни в незнании функционирования различных типов флэшмикросхем, которое, действительно, может накладывать некоторые ограничения на используемую для хотсвапа мать. Хотя если у вас есть другая точно такая же (только рабочая;) мать - это несомненный плюс.

Прошивальщики.

Самыми популярными являются AwdFlash, AMIFlash и UniFlash. Остальные являются специфичными для конкретной фирмы (например, для "родных" матерей от Intel либо Asus - свой, ибо другие могут не сработать).

Я не буду касаться расшифровки ключей - этой информации полно в интернете, я остановлюсь на том, какие из них включать.

ВНИМАНИЕ: запуск флэшера БЕЗ КЛЮЧЕЙ (т.е., соответственно, с оными по умолчанию) может привести к ПОВРЕЖДЕНИЮ биоса, даже если вы не собирались его перешивать, а лишь полюбопытствовали либо хотели сохранить текущую версию. Это крайне редкое явление и в основном касается некоторых версий amiflash, но оно точно имеет место (сам попадался и не раз:).

ДОПОЛНЕНИЕ: запуск различных утилит (например, типа DMICFG), имеющихся на компактах прилагаемых к матплате (для "настройки" биоса) часто приводят к ситуации аналогичной предыдущему абзацу - повреждение биоса, даже если вы не собирались ничего делать, а лишь полюбопытствовали и ничего не перешивали.

AWDFLASH.

Самый популярный, но не самый лучший. Запускать с ключиками:

awdflash имя_прошивки /cd/cp/py/sn/f/r

В этом случае биос перешьётся без лишних вопросов (/py - Program=Y, /sn - Save=No, /f - не проверять от той ли платы это биос и биос ли это вообще:) и после окончания прошивки комп сразу перезагрузится (ключик /r - Reset, ежели не нужно - не писать). Ключи /cd/cp (Clear DMI, Clear PNP) настоятельно рекомендуются к ним можно добавить автоматический сброс CMOS (по умолчанию) - /cc. Если прошиваем не award bios (например ami), используем ещё и ключик nab: Work with not Award BIOS

AMIFLASH.

Не такой популярный как awdflash, но в отличие от оного - самый лучший (даже несмотря на вышеупомянутые проблемы с некоторыми версиями при запуске без ключиков). Запускать с ключиками:

amiflash имя_прошивки /b /n /-o /-c /-d /-r /v /-i /-k /-e /-g

Если нужно сохранить старый биос, запускать с ключиками:

amiflash /b /n /-o /-c /-d /-r /v /-i /-k /-e /-g/sимя_прошивки
После ключика /s - пробела быть не должно!

Чтоб не набирать такую кучу ключей - не поленитесь, сделайте один раз .bat-файлик с содержимым типа:

c:\vc\utils\amf.exe %1 /b /n /-o /-c /-d /-r /v /-i /-k /-e /-g

(или можно скачать его с этого сайта).

Uniflash.

В данной части его рассматривать не буду, т.к. несмотря на его реальную продвинутость, он требует некоторой подготовки/опыта со стороны пользователя. (Однако стоит отметить, что его можно применять не только для программирования BIOS материнских плат, но и BIOS видеокарт, flash микросхем в сетевых картах)

Особенности перешивки биосов на платах от Asus.

Для перешивки асусовских плат не подойдут "стандартные" прошивальщики, т.к. ВСЕ асусовские биосы (начиная с самых древних Pentium1) блокируют обычные способы перешивки. Для перешивки на таких матплатах придётся использовать фирменные_асусовские_утилиты. Для самых старых плат - это pflash, для более современных - aflash (хотя во многих случаях aflash подходит и для очень старых), для совсем новых - придётся использовать утилиты под винду. В случае pflash/aflash выражение "придётся использовать" не совсем корректно, т.к., во-первых, они крайне удобны, понятны, достаточно универсальны и, главное, не пристают с вопросами, прошивая "всё, что шьётся".:) Во-вторых, амифлэш всё-таки можно использовать, хоть он и заканчивает работу с ошибками (точней не он, а dos4gw). В любом случае, всем счастливым обладателям асусовских плат к перешивке нужно подходить с особым вниманием ибо восстановление при ошибке дело непростое, а иногда очень даже сложное. И если вы даже имеете опыт и даже немалый - повторюсь, будьте бдительны, асусовские инженеры используют в своих творениях крайне изощрённые меры для защиты биосов, обратной стороной медали которых являются иногда возникающие серьёзные проблемы с "оживлением" - плата может "прикидываться" дохлой ("00" на POST-карте), флэшка - аналогично (при попытках перешивки на других платах), хотя реально и один и другой будут совершенно живыми, что может подтвердится установкой оных в другие точно такие же, только исправные... Если вы боретесь(-лись) с подобными глюками - внимательно прочтите главу о LPC-интерфейсе (асусовцы его давно применяли, в то время как другие стали его использовать совсем недавно)... п.с. подобное в определённой степени (желательность и/или обязательность использования "родных" фирменных прошивальщиков) касается и некоторых других производителей (как правило - известных). Например, многие платы от Abit также имеют тонкости при программировании - тот же Uniflash, вообще, предупреждает, что не дружит с этой фирмой...

Основные проблемы и сообщения об ошибках.

Объём файла прошивки не сопадает с объёмом флэшки.

Распространённая проблема. Как правило является результатом того, что производитель использовал в разных версиях (матплат) разные флэшки (по объёму). Например, первые платы какой-то модели шли с мегабитными, а все следующие - с двухмегабитными. В некоторых случаях, если производитель не признаётся, что выпускал платы с биосы разных объёмов, это может быть свидетельством того, что плата "левая" (т.е., например, в подделке используется более дешёвая флэшка большего объёма - 4Mbit вместо 2Mbit).

Прошивальщик по каким-либо причинам "не соглашается" прошивать биос, утверждая, что он не от этой платы или вообще не биос.

Ещё более распространённая вещь. Однако с вышеуказанными "секретными" ключиками вас больше не будут посылать… почитать даташиты.:)

Прошивальщик не может определить тип флэшк и потому не прошивает её.

Это тоже частое явление. Причин тому может быть несколько:

  • стоит защита от перезаписи (именно это обычно и предлагают проверить матюгающиеся прошивальщики). На древних платах защита ставилась перемычками, в современных - как правило, выбирается в BIOS Setup (пунктик типа BIOS Flash Protection = En./Dis.).
  • данная версия прошивальщика не знает данный тип флэшки. Редкое явление - обычно возникает при попытке шить древние флэши новыми версиями либо наоборот.
  • всунутая хотсвапом флэшка (тип) не поддерживается самой матерью - см. дальше по FWH/LPC интерфейсам...
  • просто битая флэшка - убедитесь ещё раз, что Вы вставили её правильно...;)
  • флэшка - вовсе и не флэшка, а "однократной записи" либо вообще - с УФ-стиранием (с окошком). Верно, как правило, лишь для самых древних плат (до Pentium1) и можно определить по маркировке - она будет начинасть с цифр 27ххх .

Всё прошло благополучно, без видимых проблем и… тишина.

Для восстанавления вам придётся всё ж почитать подробней - см. дальше.