Обычно в замене микропрограммы BIOS’а материнской платы нет никакой необходимости – устройство замечательно работает, а рисковать работоспособностью девайса ради более высокого номера версии прошивки как минимум глупо. Однако случается, что материнская плата поступает на рынок с «сырым» микрокодом (производители спешат обойти конкурентов на повороте), или возникают проблемы с интегрированными устройствами, или выясняется, что мать отказывается работать с некоторыми моделями памяти, или выходит новое, более современное оборудование (например, пополнен список поддерживаемых CPU) и т.д. Тогда новые партии матерей поступают в продажу с обновленным firware, а владельцам более ранних девайсов остается перепрошивать BIOS. Новые версии прошивок появляются на сайтах производителей со списком внесенных исправлений и изменений по сравнению с предыдущей версией. Если с материнской платой возникли какие-то проблемы или имеются недостатки в ее работе, стоит заглянуть на сайт производителя и изучить перечни этих изменений – возможно, ответ найдется там. Существуют также модернизированные умельцами версии прошивок, которые позволяют включить ту или иную функцию, заблокированную производителем в микрокоде для бюджетной модели одного и того же чипсета. Если необходимость замены версии микропрограммы стала очевидной, готовься к перепрошивке, а мы постараемся рассказать, что тебя ждет и как надо действовать.
Как шить?
Для перепрошивки BIOS используются специализированные утилиты от производителя материнской платы или сторонних программистов, которые и записывают образ микропрограммы в микросхему CMOS. CMOS у современных матерей представляет собой flash-память, в которой хранятся сам микрокод и настройки BIOS. Таким образом, для прошивки необходимы, собственно, файл с нужной версией BIOS и программа-флешер. Существуют флешеры как под Windows, так и под DOS. Прошивать из Windows гораздо удобнее, зато DOS традиционно более надежен. Чтобы выявить все аспекты процесса перепрошивки BIOS, мы прошивали как из-под Windows XP, так и из-под DOS.
Для начала при помощи программы-флешера необходимо сделать бэкап установленной версии BIOS на дискету. В случае неудачной перепрошивки эта дискета тебе очень пригодится. Сначала замена макропрограммы проводилась при помощи утилит, поставляемых самим производителем. Такую утилиту ты всегда сможешь найти на диске, который идет в комплекте с материнской платой, или на сайте ее производителя. Сторонними программами без необходимости пользоваться не советуем, так как велик шанс потом отправиться в гарантийную мастерскую. Самую свежую версию firmware сразу ставить также не рекомендуем. Лучше поискать информацию, касающуюся твоей материнской платы, в соответствующих формах и просмотреть отзывы юзеров, поставивших себе ту или иную версию микропрограммы. Поступать так следует потому, что прошивки бывают не отлажены до конца, и в работе матери могут появиться серьезные сбои.
Особенности процесса
Первым делом советуем озаботиться стабильным питанием. Идеальным вариантом является наличие источника бесперебойного питания. Если такого чуда нет, то лучше всего выбрать для перепрошивки время, когда наименее возможны скачки напряжения, то есть ночью (ведь твои соседи не сверлят стены электродрелью по ночам?).
Вторым пунктом стоит выбор операционки, из-под которой будет идти процесс перепрошивки. Если хочется красоты и покоя, то можно смело делать это из-под Windows. Система Widows XP уже достаточно стабильна, поэтому под ней обновление firmware можно осуществлять, особо ничего не опасаясь. На всякий случай рекомендуется закрыть все приложения и отключить антивирус. Под другими версиями Windows (за исключением линейки Widows NT), зная их глючность, лучше не перепрошивать. Безопаснее будет сделать это из-под DOS'а.
Что касается DOS, этим методом могут пользоваться те, кому не лень потратить чуть больше времени на настройку. За это получаем чуть большую надежность. Сама подготовка заключается в создании загрузочной дискеты. Дополнительно надо будет записать на нее программу-прошивальщик (например, для микросхем фирмы Award применяется программа awdflash, для AMI BIOS - amiflash) и саму микропрограмму. Можно создать bat-файл с параметрами запуска прошивальщика, и останется только вставить дискету и загрузиться с нее. Тем, кто когда-либо работал в DOS'е, не составит труда во всем разобраться.
Третий способ обновления firmware встречается нечасто. Обновление микропрограммы осуществляется средствами самого BIOS’а. Достаточно зайти в меню обновления и указать желаемую прошивку, записанную прежде на дискету.
Однако независимо от избранного способа перепрошивки обязательно предварительно делать бэкап старой версии!
Тестирование
Мы взяли две материнские платы: ASUS DualBIOS с микросхемами от Award и Gigabyte с двумя BIOS’ами от фирмы Phoenix. Прошивать было решено двумя путями: в WindowsXP и в DOS'е. Начнем с Gigabyte.
Для прошивки использовалась утилита, поставляемая на диске с материнской платой - @BIOS (в Интернете можно найти как atBIOS). Для начала мы сохранили текущую прошивку в файл. Вторым шагом мы поставили галочку напротив Internet update. Было интересно протестировать обновление BIOS'а через Интернет. Осуществить это не удалось, так как программа просто не знала, откуда скачать обновление, а ввести адрес вручную утилита не позволяет. С официального сайта Gigabyte была скачана 17-я версия прошивки. Заново была запущена @BIOS и произведена процедура обновления. Для этого достаточно было указать путь к файлу на жестком диске. Пару минут индикатор прогресса демонстрировал процесс заливки микропрограммы, после чего было выдано сообщение об успешно произведенном обновлении. Компьютер был выключен, отсоединен блок питания (на его конденсаторах еще довольно длительное время сохраняется заряд) и вытащена батарейка CMOS. В принципе, достаточно замкнуть специальный джампер на материнской плате, но для верности лучше вынуть батарейку на несколько минут. Делать это необходимо после каждой перепрошивки для того, чтобы сбросить все настройки BIOS в исходное состояние. Дело в том, что ранее сделанные настройки хранятся в той же микросхеме и после перепрошивки сохраняются и могут конфликтовать с новой версией микропрограммы.
Спустя какое-то время батарейку вернули на место, подключили блок питания и загрузили систему. Все работало стабильно. Запустив @BIOS для просмотра параметров BIOS’а, мы были несколько удивлены полученными данными: по заверениям программы у нас стояла 15-я версия прошивки, хотя устанавливали мы 17-ю (до проведения теста стояла 6-я).
После этого было решено повторить процесс перепрошивки, но уже из BIOS’а, так как на этой материнской плате такая возможность имелась. Для этого использовался тот же микрокод. На дискету была записана 17-я версия firmware. В меню замены микропрограммы можно было попасть, если, войдя в BIOS (по клавише <Del> ), нажать <F8> . Первым делом сохраняем основной BIOS во вторую (резервную) микросхему командой «save main bios from reserved» (в случае сбоя он будет восстановлен оттуда) и не забываем делать бэкап на дискету. Следующим шагом заменяем установленную прошивку на более новую версию. Делается это командой «update main bios from floppy». Выбираем нужную версию с дискеты и ждем несколько минут. После окончания процедуры выключаем компьютер и снова на несколько минут отсоединяем блок питания и вытаскиваем батарейку CMOS. Загружаемся, включаем @BIOS и в свойствах видим версию прошивки 17. Вывод: несмотря на старания программистов и выпуск хорошей утилиты для апдейта BIOS'а из Windows, недоработки еще есть, и прошивка средствами BIOS является более надежным способом.
Следующей подверглась тестированию материнская плата ASUS с микросхемой фирмы AWARD. Первым делом была установлена и детально изучена утилита, поставляемая на диске с материнской платой - ASUS Flash. Снова мы первым делом сохранили текущую прошивку и приступили к тестированию. Среди прочих функций нашлось обновление через Интернет. Программа перебрала несколько серверов в своей базе и подключилась по одному из адресов. Апдейт благополучно скачался и был сохранен где-то в недрах системы. Автоматическая перепрошивка не удалась – утилита не нашла загруженную микропрограмму. Тогда мы взялись за поиски микрокода на просторах Интернета. Сайт производителя материнской платы оказался очень приветливым и подробно описывал, какие недостатки устранены в очередной версии кода. Мы взяли последнюю версию прошивки и произвели обновление. Загрузка прошла стандартно. После этого компьютер был отключен, и вынута батарейка. Спустя некоторое время машину включили, и она сразу отказалась работать, сославшись на отсутствие или ошибку клавиатуры. В этом случае и понадобилась подготовленная заранее дискета с флешером и старой прошивкой. Предварительно мы решили зайти в BIOS и посмотреть на произошедшие изменения. Они были налицо: В Power managment setup все индикаторы показывали отсутствие питания. А показатели температуры равнялись 49 и 6 градусам Цельсия для материнской платы и процессора соответственно (при 25 градусах в помещении). Вот таким образом выглядят глюки недоработанного кода.
Загрузившись с «аварийной» дискеты и проигнорировав сообщения об ошибках, мы запустили awdflash. Очень не понравилась одна особенность программы: необходимо знать название файла с прошивкой и указать его в строке запроса. Утилита отказалась работать, сославшись на отсутствие новой прошивки. Тогда в сети была найдена программа ASUS ACPI BIOS FLASH MEMORY WRITER и записана на ту же дискету. В ней также необходимо указывать название файла с прошивкой. Процесс прошел без эксцессов, и машина была отключена с последующим сбросом CMOS. Компьютер загрузился без ошибок, только было выдано сообщение о повреждении BIOS’а и выведен запрос о восстановлении из запасной микросхемы. На восстановление был дан положительный ответ, а тест был признан проваленным. Это особенно странно, потому что были использована фирменная утилита, а файл с прошивкой был взят с официального сайта. Возможно, это глюк прошивки. Таким образом, надежнее прошивать из-под DOS и всегда надо иметь бэкап прошивки с программой-флешером на дискете.
Проблемы и методы их устранения
Перепрошивая BIOS, надо помнить, что ошибка в процессе смены микропрограммы может привести к печальным последствиям. Иногда во время перепрошивки происходит отключение питания или зависание системы. В этом случае гарантированно поможет лишь программатор, который в домашних условиях встречается не часто, и есть только в гарантийной мастерской. Именно туда лучше обращаться в случае проблем.
Если BIOS не прошит до конца, и микросхема в системе одна, может помочь такой достаточно рискованный метод: Находится такая же материнская плата, во включенном состоянии, после того как прошла загрузка машины, с нее снимается исправный CMOS и в гнездо укладывается пара ниток, чтобы можно было легко вынуть микросхему, потянув за них. Затем на освободившееся место очень аккуратно ставят поврежденный аналог. После этого можно запускать прошивку firmware, а затем уже в выключенном состоянии менять микросхемы обратно. По статистике, при «горячей» замене CMOS, рабочая материнская плата повреждается в 15% случаев.
Другой метод предполагает наличие на материнской плате двух микросхем (в этом случае в названии платы, обычно, фигурирует приставка Dual BIOS). Тогда при неудачной прошивке BIOS восстанавливается самостоятельно (после извещения об ошибке и запроса на восстановление). Происходит это простым копированием заведомо рабочей микропрограммы из второй микросхемы.
Возможные вопросы
Иногда возникает проблема определения производителя материнской платы и установленного на ней чипсета. Чтобы решить эту задачу, достаточно в самом начале загрузки компьютера записать строку, которую выдает BIOS. Кроме того, с 1998 года все устанавливаемые BIOS’ы при загрузке выводят логотип производителя. Далее, любой поисковик выдаст всю информацию о твоей материнке по этой строчке. Правда, если плата секондхенд и взята на радиорынке, никто не даст гарантии, что логотип и информационная строка не были изменены.
Что делать, если на BIOS стоит пароль? В этом случае есть целых три варианта: 1) сбросить CMOS специальным джампером на материнской плате или просто вынуть батарейку; 2) воспользоваться инженерными паролями, список которых можно посмотреть во врезке (правда, они могут не сработать); 3) взломать пароль к BIOS’у. Для этого существуют специальные программы, для каждого производителя BIOS’а – своя. Для AWARD можно скачать программу по адресу:
* http://ixbt.stack.net/mainboard/download/awardcrack.zip
Для AMI
* http://ixbt.stack.net/mainboard/download/amicrack.zip
Бывает, что к джамперу или батарейке добраться не представляется возможным. В этом случае можно сбросить настройки из DOS (только не в режиме эмуляция DOS в Windows!). Для этого нужно набрать в командной строке следующие команды:
Для Award и AMI BIOS
DEBUG
-O 70 17
-O 71 17
Q
Для Phoenix BIOS
DEBUG
-O 70 FF
-O 71 17
Q
Таким образом, ты напрямую записываешь в 70-й порт значение 17, которое не равно контрольной сумме BIOS при нормальной работе, поэтому CMOS сбрасывается. Однако будь осторожен – в случае ошибки ты можешь нарушить работу компьютера или повредить BIOS!
Автоматизация
Для автоматизации перепрошивки можно создать bat-файл, назвать autoexec.bat и записать его на дискету с флешером и новой прошивкой. Выглядеть этот файл будет так:
AWDFLASH [FileName1] [FileName2], где FileName1- это имя новой прошивки, а FileName2 - имя сохраняемой текущей прошивки. Также программа обладает некоторыми ключами, например /E - выход в DOS после выполнения процедуры обновления микрокода, /R - перезагрузить систему после окончания прошивки. Остальные ключи можно просмотреть, запустив awdflash.exe с параметром /?. Таким образом, наш загрузочный файл принял вид: «AWDFLASH [FileName1] [FileName2] /R». Подготовив такую дискетку, можно перепрошить BIOS даже не включая монитор (бывают случаи, когда графика не работает). Окончание загрузки можно будет определить по окончанию работы дисковода и писку динамика (при перезагрузке).
Бонус
Как дополнительную фишку можно рассмотреть смену логотипа, выводимого BIOS'ом на экран. Для всей операции нам потребуются две программы: cbrom и converta. cbrom нужна для работы с файлом прошивки, а converta - для конвертации изображений в необходимый формат.
Для начала надо скачать прошивку или сохранить существующую. Получится файл с расширением «.bin» или «.awd». Чтобы узнать необходимый формат изображения, запускаем программу с таким ключом: «cbrom mybios.bin /d». Среди компонентов будет «EPA Pattern», именно он и является логотипом. Извлечение осуществляется командой «cbrom mybios.bin /epa extract». При этом надо будет задать имя файла. Чтобы выяснить формат изображения, запусти converta с ключом «converta your.logo /?». Она выдаст формат изображения. Далее готовим свою картинку в соответствии с ограничениями данного формата. Потом сохраняем картинку в BMP (16 цветов, без сжатия) в папку с converta. Теперь нужно преобразовать графический файл в форму, доступную для понимания BIOS’а. Делается это простым запуском программы с ключом, указывающим формат конвертирования: «converta mylogo.bmp /ключ». Форматы есть такие:
* /bmp— преобразование в BMP;
* /mon— преобразование в монохромный формат AWARD;
* /bit— преобразование в битовый формат AWARD;
* /lay— преобразование в сложный формат AWARD;
* /all— преобразование во все перечисленные форматы сразу.
Теперь полученное изображение надо вставить в прошивку и залить ее в CMOS. Для этого надо использовать cbrom: «cbrom mybios.bin /epa mylogo.ext».
Выводы
Итак, замена микропрограммы – дело довольно рискованное, хотя и не такое сложное. Поэтому рекомендуем перешивать BIOS только в случае необходимости. Как показала практика, лучше всего использовать прошивки и утилиты от производителя, а процесс замены микропрограммы осуществлять из BIOS или из-под DOS.
Заводские пароли для AWARD BIOS:
AWARD_SW, TTPTHA, aPAf, HLT, lkwpeter, KDD, j262,
ZBAAACA, j322, ZAAADA, Syxz, % шесть пробелов %, Wodj,
% девять пробелов %, ZJAAADC, 01322222, j256, ?award
Для AMI BIOS таких паролей нет, но если материнская плата только куплена, можно попробовать пароль AMI.