Как перепрошить BIOS видеокарты и не кусать потом свои локти...

Как перепрошить BIOS видеокарты и не кусать потом свои локти... Введение...

Итак, в этой статье мы рассмотрим, как правильно выполнить пугающую для новичков процедуру - перепрошивку BIOS (БИОС) видеокарты. Напомню, что BIOS (от англ. Basic Input-Output System - Базовая Система Ввода-Вывода) - является одной из важнейших "шестеренок" видеокарты, без которой правильное функционирование оной не представляется возможным... Вот почему данная процедура так пугает новичков, ведь "запорОв" БИОС можно надолго остаться без видеоакселератора...

Существует множество различных версий и модификаций БИОСов для видеокарт, начиная от БИОСов, прошиваемых фирмой-изготовителем карты, и заканчивая референсными БИОСами от производителя графических чипов, в нашем случае от nVidia. В большинстве своем, референсные БИОСы, также как и драйверы (детонаторы), можно прошить на любой соответствующий видеоадаптер, неважно, выпущен он фирмой ASUSTeK либо фирмой Creative... Главное здесь - выбрать свой тип БИОСа, именно для собственной видеокарты.

Поясняю - можно ведь попытаться БИОС от GeForce 2 GTS прошить на видеокарту с чипом Vanta... Я, конечно, сомневаюсь, что найдется желающий таким образом увеличить быстродействие карты, но чем черт не шутит... С другой стороны, видеокарты одного ряда (собранные/выпущенные разными производителями на одном и том же чипе, например GeForce256 или TNT2) различаются еще по типу установленной на них видеопамяти - SDRAM или SGRAM. Для SGRAM будет своя версия БИОСа, для SDRAM - соответственно своя... Помните об этом, скачивая БИОСы с сайтов!

Зачем вам это?

Вначале попытаемся сразу же отговорить вас от этой затеи - перепрошивки БИОСа... Подумайте, что вы хотите достигнуть этой операцией? Ответов может быть несколько:

- Хочу БИОС с поддержкой SBA.

Прочитайте вот тут ( http://www.nvidia.h1.ru/docs/sba.html ) статью об SBA и живите без него спокойно - как говорится, "работает, сынок, ну и не тронь!"...

- Хочу разогнать свою карту, изменив частоты прямо в БИОСе, чтобы не загружать каждый раз PowerStrip.

Да, это, конечно, вопрос на злобу дня... Если у вас карта на чипах TNT/TNT 2, то можно воспользоваться TNTClck-ом, а вот если GeForce или GeForce 2... Пока такой распространненной утилиты разгона от стороннего производителя нам не встречалось, однако, можно воспользоваться фирменными разгонялками, встроенными в драйверы (они, правда, не всегда присутствуют - тут в некотором роде выручают референс-драйверы)... Да, и с TNTClck есть некоторые проблемы - он некорректно разгоняет память выше 200 МГц на некоторых не-Asus картах (Diamond, Creative)... Плюс ко всему, все привыкли, что если карту разгоняют, то для достижения большей скорости в играх. Где игры - там ОС Windows 9X. А ведь есть еще и Windows NT, в которой не работают ни TNTClck, ни встроенная в драйверы разгонялка... В общем, здесь вопрос так и остается открытым.

- Хочу уменьшить тайминги памяти и тем самым увеличить скорость...

Еще один миф! Точнее, конечно, быстродействие увеличится, но не настолько, чтобы проводить такую рискованную операцию (опять же, статья для новичков в этом деле - асы могут только улыбнуться при этих словах)... К тому же, зачастую, это ведет к снижению порога разгона либо к понижению стабильности работы платы... Да и наш старый добрый TNTClck может вам подойти для карт не выше Ultra.

- Хочу поменять надписи, выводимые картой при загрузке...

Ну, это уже баловство... Если вы считаете, что это того стоит - вперед!

- Хочу поменять Sub Vendor ID/ Sub Vendor Model.

Вот здесь ничего другого предложить пока нельзя... Если вам это действительно нужно, например, прошить фирменный БИОС от Asus на noname-карту либо сделать из PowerColor-а Creative, чтобы пользоваться фирменными драйверами и утилитами, - дерзайте!

- Хочу поменять БИОС на более свежий - в моем обнаружены глюки...

Вот это, пожалуй, причина, по которой стоит заменить свой БИОС на более новый. Тогда эта статья именно для вас. Здесь только надо упомянуть такой момент: если у вас все работает "ОК" и обнаруженные в вашем БИОСе глюки вас никоим образом не касаются (например, "решена некая проблема, в некой неизвестной вам программе" или "улучшена совместимость с каким-то чипсетом (например, MVP3), а у вас BX"), то успокойтесь - "глюки прошли мимо" и вам совсем незачем беспокоиться и уж тем более перепрошивать БИОС. В этих и подобных случаях риск запороть карту себя не оправдывает.

Ближе к делу

Теперь небольшое введение в практическую часть - случай из нашей практики. На плате Asus 3800 Pro 32M, разогнанной до частот 187/210 (ядро/память соответственно), требовалось прошить БИОС с поддержкой SBA. Прошить фирменным прошивальщиком не удалось... Пришлось извлекать БИОС и прошивать с помощью стандартного прошивальщика от nVidia. В итоге - тайминги в БИОСе с SBA оказались меньше, чем в фирменном БИОСе... Увеличение их не дало ожидаемый результат по стабильной работе платы и пришлось снижать частоты до 180/200... Это к вопросу о необходимости прошивки БИОСа с поддержкой SBA для увеличения производительности карты. Кстати, БИОС от ASUSTeK не является исключением в плане неудачи перепрошивки. БИОСы от Diamond, к примеру, "стандартный прошивальщик" от nVidia "не понимает", точнее он "не понимает" flash-микросхему карты, поэтому здесь выход только один - использовать фирменный прошивальщик.

Итак, если все-таки, прочитав вышесказанное, вы не отказались от своего намерения, если установка самого последнего детонатора является для вас делом чести, а прохожие тычут в вас пальцем из-за того, что вы еще ни разу (подумать только!) не перепрошивали БИОС видеокарты, если так - то переходим к практической части...

Для начала составим небольшой алгоритм действий по перепрошивке (поверьте, стоит потратить лишние 5-10 минут на подготовку своих тылов):

1. Документируем все свои действия на бумаге, на случай провала операции... Этим вы обеспечите себя/восстанавливающего необходимой информацией.

2. Создаем backup (резервную копию) БИОСа. В случае неудачи вы можете попытаться восстановить БИОС самостоятельно или принести свой БИОС для перепрошивки на фирму, в которой покупали плату... Обычно, резервная копия - это небольшой (~ 50Кб) файл, который можно создать прошивальщиком либо какой-либо другой утилитой. Рекомендуем для простоты давать файлу простое имя, к примеру, "my.bin".

3. Создаем все условия для восстановления. Данный пункт подразумевает создание загрузочного диска, на котором будет находиться ваша резервная копия, которая будет грузиться по умолчанию. Рассмотрим чуть подробней...

- В Setup установите порядок загрузки с диска "А".

- Сделайте загрузочную дискету средствами вашей ОС.

- Проверьте, загружается ли с нее машина, если да, то двигаемся дальше.

- Скопируем на дискету "автономный набор прошивальщика" - то, что нужно для прошивки БИОСа + сам файл БИОСа. К примеру, для прошивки референсного БИОСа на TNT/TNT 2 это будет "dos4gw.exe", "nvXXflash", "my.bin", где "my.bin" - наш оригинальный БИОС.

Тогда системные файлы будут выглядеть примерно так:

autoexec.bat:
CLS
PROMPT $p$g
GOTO %CONFIG%
:success
GOTO end
:failed
nvXXflash my.bin
GOTO End
:end

config.sys:
[Menu]
MENUITEM = success, Bios successfully changed
MENUITEM = failed, Bios change is FAILED!
MENUDEFAULT = failed, 10
[success]
[failed]

При таком построении системных команд по истечении 10 секунд, если с консоли оператором не будет предпринято никаких действий, будет выполняться автоматическая перепрошивка БИОСа-оригинала.

4. Еще раз внимательно проверяем выполнение пунктов 1-3. Без комментариев - вот уж где воистину "семь раз проверь, один - прошей!"...

5. Перепрошиваем БИОС. Здесь возможны две сюжетные линии - успех и неудача. Понятно, при успехе можно поздравить себя и пожать правой рукой левую! При неудаче - внимательно читаем дальше...

6. Итак, случилось страшное... Здесь тоже необходимо придерживаться нескольких правил:

- Не паниковать. Это не конец света... Соберитесь!

- Не нужно судорожно жать на кнопку "Power" в надежде, что "еще не поздно" и может "оно еще не прошило". Лучше спокойно попробуйте повторить процедуру перепрошивки. Если не получилось - попробуйте восстановить резервный БИОС (можно и второй раз, после загрузки со сделанной системной дискеты).

- Компьютер все равно не грузится - карта не оживает... Тогда нужно взять старую ISA- или PCI-карту (только неперепрограммируемую - nonFlashable) и вставить в машину. Далее повторяем процедуру прошивки заново; дело в том, что первой в машине включается именно видеокарта, а ISA-видеокарта - более "старое" устройство и включается независимо, не требуя БИОСа (в компьютерах с БИОСом Award на материнской плате есть boot-block, инициализирующий ISA-карту).

- Если в результате манипуляций видеокарта не ожила... Что ж, вам нужно обратиться к специалисту либо в фирму, продавшую вам видеокарту, - здесь два пути: честно им рассказать, что случилось - вам почти точно помогут (за n-ную сумму) и наверняка лишат гарантии; сыграть простофилю, у которого "перестала работать видеокарта" - может быть, вам поверят.

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

Общие положения: обычно процедура перепрошивки выполняется из "чистого DOS-а" (в Win 9X по нажатию "Shift + F5"), что и рекомендуется, однако торопыги могут выполнять и из окна MS-DOS из Windows... Для NT и Windows 2000, вероятнее всего, лучше загрузиться с DOS-дискеты - здесь у нас нет личного опыта, поэтому мы только предполагаем... Директории и имена файлов, где они будут храниться, лучше всего давать максимально простые - для удобства, если придется оперировать с командной строкой... Дальше - желательно наличие блока бесперебойного питания (на случай появления экскаватора для починки магистрали или дяди Васи-электрика) или хотя бы сетевого фильтра для помехозащищенности. Если у вас наличествует разгон какого-либо компонента или их совокупности (процессор, видеокарта...), то лучше перевести все в штатный режим функционирования, хотя возможна спокойная прошивка при системной шине 83 МГц и прилично разогнанной видеокарте... Но это из области "как делать не надо".

Рабочие инструменты

TNT BIOS Edit & NVFlash

Практическая часть нашего занятия будет заключаться в рассмотрении референсного набора для перепрошивки от nVidia, замечательной программы "TNT BIOS Edit", работающей с БИОСами для карт на чипах TNT/TNT 2 и их модификаций (Vanta, M64, Pro, Ultra). Грубо говоря, для прошивки референс-биоса на карты с чипом TNT 2 вам необходимо опять же три файла: файл биоса, "dos4gw.exe" и "nv5flash" ("nv4flash" для карт на базе TNT). Процедура прошивки проста - запуск из командной строки:

с:\nv5flash change.bin
где "change.bin" - файл прошиваемого БИОСа.

Для работы "TNT BIOS Edit" требуется предварительная установка run-time библиотеки "LabWindows/CVI Run-Time Engine", который можно взять там же, где вы взяли основную программу... Программа представляет из себя редактор-загрузчик БИОСа. С помощью нее можно загрузить текущий БИОС, отредактировать его и сохранить в файл, который потом прошивается с помощью "nvХХflash". Сама программа БИОС не прошивает! Кроме этого, у нее есть ряд других полезный функций, но об этом ниже...

Основное рабочее окно программы:

Рассмотрим наиболее интересные параметры, доступные для редактирования.
- BIOS Info - строки, выводимые при загрузки машины (можно написать что угодно, вплоть до "Hi! How are you?").*
- SubVendorID, SubVendor Model - ID фирмы производителя карты и модели.*
- NVidia Model - идентификатор чипсета (модель чипа, установленного на видеокарте).
- Core Clock/Memory Clock - частоты ядра/памяти соответственно.
- 9 параметров для установки таймингов памяти (расположены практически в центре окна).
- блок кнопок "Common" - обеспечивает получение текущего БИОСа, открытие и сохранение файлов с БИОСом.
- блок кнопок "Asus winFLASH" - обеспечивает извлечение и вставку БИОСов в файл "winFLASH", где содержатся БИОСы от фирмы ASUSTeK.

Символ "*" указывает на нередактируемые поля. Для редактирования сохраните БИОС в файл и отредактируйте в любом шестнадцатеричном редакторе. Сохраните изменения, после этого перешейте данный файл в БИОС. Необходимое условие - корректность контрольной суммы.

Здесь хотелось бы сделать некоторые пояснения. Фирменные БИОСы от ASUSTeK поставляются в виде ".exe"-файла, который на самом деле представляет собой самораспаковывающийся zip-архив (в этом легко убедиться, поменяв расширение на ".zip" и вручную распаковав файл). После распаковки мы получаем набор файлов с фирменным прошивальщиком, однако прошить им не всегда удается по причине "EEPROM not found". Здесь и приходит на помощь данный блок. Открываем файл "winFLASH", извлекаем необходимый нам БИОС и сохраняем его в файл на диске (первый блок управления - "Common"). Затем, по вышеописанной процедуре, прошиваем его как обычный референс-БИОС.

Еще раз напомню, что после редактирования этой программой (либо шестнадцатеричным редактором) и сохранения на диске файла БИОСа его надо еще перепрошить.

VGABios

Кроме того, хотелось бы упомянуть о существовании программы "VGABios". Она может помочь вам, если вы не смогли по каким-то причинам перепрошить БИОС, либо при нахождении оптимальных значений изменяемого вами БИОСа (при отладке).

Эта программа представляет из собой динамически загружаемый драйвер, который позволяет динамически подгружать БИОС. VGABios перезаписывает ту область системного ОЗУ, где кэшируется БИОС видеокарты (в БИОСе материнской платы предварительно должно быть включено кэширование в системное ОЗУ БИОСа видеокарты).

При этом содержимое ПЗУ видеокарты не изменяется. Для постоянного использования необходимо прописать загрузку программы в "autoexec.bat" (сама программа и файл БИОСа должны быть в одной папке диска, лучше в корне, чтобы не запутаться с путями):

c:\vgabios -fROMFile -tM
где "ROMFile" - файл видео-БИОСа, "M" - TV-режим (значения от 0 до 5)

Тем же VGABios-ом проверяется работоспособность прошиваемого БИОСа - загрузили, проверили, если все ОК - то шьем. То есть, в случае неудачной загрузке вам следует просто загрузиться с обычной системной дискеты и отменить вызов VGABios-а в "autoexec.bat".

Интересности

Смена SubVendorID

Поменяв SubVendorID, вы можете сделать из своей noname-карты карту от Asus или поменять производителя, для того чтобы ОС находила "фирменность" вашей карты, а фирменные драйверы и утилиты (например, от Creative) работали и у вас...

- ASUSTeK: SubVendorID = 1043

- Creative: SubVendorID = 1102

Только не забудьте указать модель карты - они различаются у разных производителей. Посмотреть их можно у соседа либо узнать в Интернете, задав вопрос в соответствующем форуме.

Не думайте, что, изменив надписи и ID в БИОСе, вы сможете обмануть систему. Если у вас чип Vanta, то вы не сможете сделать из нее Ultra. Хотя драйверы и будут ставиться под Ультру и надписи кое-где в системе будут гордо гласить "Ultra", система все равно будет знать, какой у вас чип, и сообщит вам это в настройках дисплея.

Эта информация "зашита" на уровне железа в видеокарту и изменить ее можно, поменяв напряжение на соответствующих выводах flash ROM-микросхемы видеокарты. К примеру, различия между TNT 2 и TNT 2 Ultra показаны на рис.1.

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

Плюс память, которую ставят производители - вряд ли на Ванте будет качественная 5.5нс. С другой стороны, выдача TNT 2 за Ультру (с соответствующими изменениями нужных ID, строк загрузки и прочего) вполне реальна - ее вовсю практикуют наши китайские братья...

Получается, что на сегодняшний момент точно подделать нельзя разве что скорость работы видеокарты. Если это Ванта, то, как бы мы ни старались, называя ее хоть "Super Ultra Plus", результаты тестов будут говорить за себя. Так что, если вы все-таки покупаете китайские поделки (что очень не рекомендуется нами), договоритесь о манибэке и погоняйте карту в тяжелых режимах... Результат не заставит себя долго ждать...

Тайминги и БИОС

Мы уже писали выше про изменение таймингов в сторону уменьшения их значений для увеличения быстродействия и говорили о потере стабильности в связи с этим, однако было бы несправедливо умолчать о том, что таймингами можно и повысить стабильность работы видеоплаты.

Например, можно попытаться убрать "снег" изменением "Wait State between read and precharge" с "0" на "1", но, безусловно, если есть возможность, лучше делать это с помощью TNTClсk.

Если же такой возможности нет, а стабильность вас не удовлетворяет - что ж, попробуйте...

Обозначения БИОСа


БИОСы различных производителей отличаются своими обозначениями (кодом). Например, nVidia обозначает свои БИОСы набором "CC.cc.mm.ee.oo", где "oo" - OEM-версия, а Creative - "CC.cc.oo.mm.ee". То есть,
- в транскрипции от nVidia - 2.10.01.04.1
- в транскрипции от Creative - 2.10.1.01.04

Будьте внимательны перед обновлениями!

Программы и ссылки

Программы, описанные в статье, можно взять тут ( http://www.nvidia.h1.ru/docs/bios_utils.html ), кроме того, в Интернете можно обратить внимание на следующие ссылки:

Последняя версия nVidia Flash: http://zoiah.m3dzone.com/ .

Dos4GW: http://www.fastgraphics.com/zip/dos4gw.zip .

Набор для перепрошивки TNT/TNT 2 (в том числе редактор "TNTEdit" и некоторые БИОСы): http://www.chat.ru/~vicovico .

БИОСы и прошивалки на любой вкус: http://zoiah.m3dzone.com/ .

И напоследок я скажу...

Напоследок - помните, что, изменяя/перепрошивая БИОС видеокарты, вы тем самым производите несанкционированное вмешательство в "устройство прибора".

Тем самым вы автоматически лишаетесь гарантии продавца на товар, даже если все прошло удачно.

Здесь уместно указать следующее: если карта перестала нормально функционировать по какой-либо причине, не связанной с вашей перепрошивкой БИОСа, то никто не мешает вам перепрошить "родной" БИОС и "поменьше трепать языком в гарантийной мастерской", как сказал один из консультантов.

В случае неудачи вы можете лишь пенять на свои кривые руки и надеяться на помощь друзей либо просто хороших людей, которые, кстати, и среди продавцов встречаются...

Удачи! Игорь Шевченко aka Bishop ( weevil@mail.ru )
По материалам "МИР NVidia" ( http://www.nvidia.h1.ru/ )
подготовил SilentMan ( Silent_Man@mail.ru )


(c) компьютерная газета


Компьютерная газета. Статья была опубликована в номере 41 за 2000 год в рубрике разное :: страна советов

©1997-2024 Компьютерная газета