howto: recover failed p5b flash

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

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

Вчера наконец-то я решился сделать это!


Оказалось, что на материнской плате есть недокументированный разъём SPI, через который можно напрямую писать биос. Более того оказалось, что существует софт, который позволяет использовать параллельный порт (да-да, тот самый рудимент, через который когда-то подключались принтеры) для записи.

В интернетах нашлась вот такая схема:
http://www.yourbrainiacs.com/FILES/ReflashBIOS.doc
(на всякий случай я переложил к себе)

С одной стороны у нас Parallel Connector (DB-25) мы включаем его в “хост”, с другой – кастом на 6 пинов (7й – “ключ”). Также необходимо питание 2.8 – 3.6 вольта для микросхемы биоса.

У меня куда-то пропал припой, но зато нашёлся старый принтерный провод и новый USB коннектор. Жестокое насилие над проводами, которые больше не смогут выполнять своё старое предназначение, несколько часов времени с мультиметром и выяснением – какой провод к какому штырьку подходит и я узнал правильную комбинацию для скрутки проводов. В качестве питания я взял обычную “таблетку”, она выдаёт как раз нужные 3 вольта. Провода от батарейки прикрутил в уже существующую скрутку – “-” к скрутке двух проводов (2<->18), “+” – к свободному проводу.

Получилось вот такое чудо:

Загрузил “хост” компьютер загрузочным диском от win98 и запустил прошивалку – она почему-то выдала unknown manufacturer о производителе чипа, попытался прошить – не получилось.
Как оказалось, у USB разъёма оба чёрных провода (земля) соединены, а я их использовал.. Хорошо, хоть ничего не сгорело. Пришлось полностью отсоединять и заново делать скрутку.

Рекомендую следующий рецепт подключения USB проводов к параллельному кабелю:

SPI штыри:
2 4 6
1 3 5 X

USB штыри:

К Б З Ч
К Б З Ч

1 (Красный, свободен)
3 (Белый, к 7 штырю)
5 (Зелёный, к 10 штырю)
7 (Чёрный, не используется)

2 (Красный, к 18 штырю)
4 (Белый, к 8 штырю)
6 (Зелёный, к 9 штырю)
8 (Чёрный, не используется)

Запускаюсь – ура, чип написало правильно SST 25VF080B id=BF258Eh, прошиваю биос (spipgm2 /p bios.rom), включаю жертву – не работает. Ок, запускаю заново прошивку, но в этот раз уже в медленном режиме (spipgm2 /s bios.rom), проходит время, готово. Запускаю жертву – не работает, чешу репу, отключаю кабель прошивки, запускаю ещё раз – о чудо – она ожила! Сколько усилий не пропало напрасно, ура!

Теперь пошаговая инструкция по прошивке:
Жертва, в моём случае, успешно прошилась, когда к ней был подключён блок питания, но сам компьютер не был включён (т.е. просто светится лампочка на матери, но вентиляторы не крутятся).

1. spipgm2 /i (узнаём, что у нас там за чип)
Тут важно увидеть, что чип обнаружился правильно и его id != 0xFFFFFF, иначе либо жертва включена, либо что-то с кабелем

2. spipgm2 /u (разблокируем чип)
3. spipgm2 /e (удаляем старую прошивку – это обязательно надо сделать)
4. spipgm2 /s bios.rom (пишем новую прошивку под названием bios.rom)

5. spipgm2 /d dump.rom (optional, считываем биос с жертвы, чтобы проверить)
6.1 Желательно иметь программку для сравнения бинарных файлов, я нагуглил cmp16.exe
6.2 cmp16 /r bios.rom dump.rom

Убеждаемся в том, что биосы идентичны, отключаем кабель, включаем жертву и радуемся! 🙂

Уточню – я не включал никакие сопротивления и конденсаторы в схему, о которых писали на англоязычных сайтах – всё отлично прошивалось и без них. Также отлично работала просто скрутка из проводов, без шлейфа и пайки (хотя провод я пропаяю и нормально заизолирую).

В общем шить биос при помощи такого кабеля не намного сложнее, чем пользоваться утилитой биоса, но всё же лучше не доводить до необходимости его применения 🙂

Similar Posts

  • Вирусы и антивирусы

    Попросили меня вчера наведаться в гости, в один знакомый офес. Говорят – у них там лепрозорий, все машины заражены вирусами, работать не получается, всё перегружается итд. В общем-то нормальная ситуация для места, где преобладает женский коллектив, а сисадминов не держат. Машин там около десятка, и ставить на каждую антивирус – можно замахаться. Да ещё и…

  • пятница

    сегодняшняя пятница почему-то меня радует как никогда 🙂 Задолбался я на этой неделе воркать, хачю атдахнуть 🙂 Седня буду пить пиво и играть в старкрафт до умопомрачения, тем более что некто должен мне несколько бутылочек, да и дядя Шад тоже, думаю. Кароче привет алкоголизм 🙂 Share this post: Share on X (Twitter) Share on Facebook…

  • Про евро 2012

    “Із задоволенням повідомляємо, що Вашу заявку на придбання квитків на матчі УЄФА ЄВРО 2012™ було успішно відібрано”. Никогда не ходил на футбольные матчи, но тут подумал, что всё ж не каждый год у нас такое мероприятие проводится и попробовал принять участие в билетной лотерее (желающих посетить матч больше, чем мест на стадионе, поэтому проводится лотерея…

  • Удаление камней

    Сегодня добрый доктор-стоматолог предложила мне милую услугу – удалить камни. Мля, я до сих пор дрожу от этого ацкого ультразвука, которым она их удаляла. Ацкая штука в виде ручки с проводом при контакте с зубом вызывала скрежет в голове и кучу не очень приятных ощущений. Надеюсь я не зря сделал эту ужасную процедуру 🙂 Сказали,…

  • Путешествие в Питер

    Во вторник, 5.06.2007 в Питере выступали Linkin Park, а так как я давненько их люблю послушать, а на 3м курсе вообще был мегафанатом, то решил съездить с друзьями на концерт, и город посмотреть. Поезд в Питер идёт, почему-то целые сутки, хотя по трассе туда всего 1200 км. Но, к счастью, если едешь не один, то…

  • Возвращение

    Я снова вернулся к программингу псп 🙂 Все-таки есть какая-то прелесть в том, что некоторое время ты программишь на “языке высокого уровня”, когда не надо особо задумываться над скоростью выполнения программы и можно поизощряться в применении всяких паттернов и использовании стандартных библиотек. Но и в программинге псп тоже много интересного, например выжимание максимума из аццкого…