Увеличение размера прошивки методом "аппенд"

Иногда случается, что под рукой нет флешки необходимого размера, чаще всего 1-мегабитки. На форуме часто встречал совет дописать прошивку до нужного размера ею же самой. Ради спортивного интереса попробовал, провернул подобный финт в ТоталКоммандере. Вот что получилось:

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

Шить пока нечего, некуда и незачем. Поэтому вопрос пока чисто теоретический. Пока, потому, что вдруг завтра придется.

Если данная информация оказалась полезной/интересной - плюсаните, пожалуйста:

Лично пробовал вливать 1-мегабитную прошивку в 2-мегабитку (название матери не помню - что-то на чипсете MVP3).
1 вариант - залит только 1 Мбит (оригинал) по младшим адресам - мать не стартует.
2 вариант - залито 2 Мбит (оригинал+оригинал) - мать нормально работает.
При желании можно попробовать править на аппаратном уровне (старший адрес на GND), но тут уже надо смотреть по разводке конкрентной матери (лично таким не занимался, меня вполне устроил вариант "append";)).

Аватар пользователя Pavel

Теперь проверил и сам лично. Asus P/I-P55SP4V - дописана до 2-х мегабит и прошита в MX28F2000PPC-12C4. Работает нормально.

Jazz, Blues & Rock'n'Roll фарева!

Аватар пользователя Pavel

Вобщем не все нормально.
Просто дописанная прошивка работает нормально, но... Дрписывать ее приходится в 2-х случаях.
1. Если нет под рукой 1-Мбитной флешки. Тут все понятно. Дописал, прошил и работай.


2. Если в оригинальной прошивке не хватает места под необходимый лично мне модуль. Тут все сложнее.
Для примера взял биос от Atrend ATC-6120 VER:2.0
Вот просто дописанный файл. Работает нормально, но нет места для вставки доплнительных модулей
Вот здесь я переписал нулями все с 0х000000h по 0х01FFFFFh т.к. в 2-мегабитке по смещению 0х20000 должен лежать original.tmp Работает, но при попытке добавить в нее модуль cbrom уж не знаю куда там чего пишет, но при открытии прошивки в хексредакторе модуля там нет в помине.
В этой же версии я взял все, что лежит после original.tmp до бутблока и перенес в начало прошивки. original.tmp у меня соответственно сместился в более старшие адреса. Значит по сигнатуре lh5 находим original.tmp и вырезаем все от него до 0х020000h. Вырезанный фрагмент помещаем между original.tmp и блоком декомпресии. Вообщето там одни нули и делается это, чтоб вернуть original.tmp на его родное смещение 0х020000. Вот теперь в прошивку можно добавлять сколько влезет модулей, прошивка без матюков открывается модбином и Award Bios Editir-ом, но стартует мать с этой прошивкой, даже без доп-модулей только до кода DE

Только не пинайте, мол нафига вообще все это делается. На моем хуторе такие матери еще ого-го как в ходу, да и наконец просто интересно;)

Jazz, Blues & Rock'n'Roll фарева!

Аватар пользователя Baza

У меня почему-то такой фокус не прокатил с авардом6 на MS-6337 я там хотел 2х мегабитку в 4х загнать.

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

Либо нечему гореть, либо нечем поджечь!

Аватар пользователя apple_rom

Цитата:
У меня почему-то такой фокус не прокатил с авардом6 на MS-6337 я там хотел 2х мегабитку в 4х загнать.

что модбин, что сбром открывают нормально, а вот мать не стартует
Возможные (кстати, весьма маловероятные) проблемы связаны не с "методом добавления", а лишь с тем, что плата/биос не поддерживают данную модель флэшки. Потому рекомендуется использовать "распространённые", один из лучших вариантов - SST.

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Разрешённые HTML-теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img>
  • You can use BBCode tags in the text. URLs will automatically be converted to links.

Подробнее о форматировании текста

Антибот - введите цифру.
Ленты новостей