Здравствуйте уважаемые специалисты!
Подскажите пожалуйста, как можно изменить состояние регистров по умолчанию в файле bios-а LS MVP3 v.2.0. Сейчас пользуюсь WPCRSET-ом, но хотелось-бы иметь это в bios-е, т.к. настройки проверены временем и на мой взгляд являются лучшими.
Предвижу вопрос, зачем этим заниматься, но платка нормально работает, на эксперименты с поиском оптимальных настроек было потрачено немало времени, и хочется доделать это дело до конца.
т.к. " ...недоделанное дело, хуже неначатого ..."
LS MVP3 v.2.0 FSB=100 MHz AMD K6-2 + 450 bios au6-3.bin + biospatcher v.4.23 + wpcrset v.1.2
Спасибо за внимание.
Пробовал использовать modbin, но не понял, можно ли им изменить сост. регистров 58h, 68h, 80h, ACh, 66h, в файле au6-3.bin (128 Кб). Или это дело не для modbina, а требует нетривиального подхода.
Просьба к тем, кто делал подобное, прояснить ситуацию, или это очень сложно без спец. знаний. У кого такие mb еще есть в использовании, отзовитесь, ведь это может быть полезным и Вам, ( LS почему-то, по умолчанию, устанавливает различные параметры для двух банков SDRAM, и пр. ).
Готов поделиться своими наблюдениями при использовании разл. биосов ( leb8-0.bin, leb9-1.bin для v4.0 ) на mvp3 v2.0, и почему au6-3.bin + biospatcher для v2.0 лучше.
В общем, кому интересно, давайте сделаем это вместе. Спасибо за внимание.
Для чего предназначены эти регистры?
Что вы можете отредактировать в modbin'е?
Здраствуйте Maco!
Регистры :
58h - уст. DRAM bank 2/3 VCM - enable ( для второго банка, для первого включен по умолчанию, imho заметно, если 2-ой банк DRAM используется ( заметил давно, причина стала ясна при использ. wpcrset-а ).
66h - уст. 4/5 bank interleave - disable ( откл. interleave для Sim-ов, для DRAM откл. по умолч., м.б. и не обязательно, но для работы DRAM точно не хуже, м.б. какой-нибудь буферок освобождается )
68h - уст. bank active page control - any bank
80h - уст. Flush page TLB - enable ( реакция системы imho получше )
ACh- уст. Force Fence (AGP) - enable ( тоже imho реакция получше )
При моей конфигурации, с k6-2-450+, лучше чем по умолчанию, стабильность
норм. Проверял на Win98SE, Win2K, постоянно WinXP_SP2.
Почему au6-3.bin + biospatcher , а не leb8-0.bin или leb9-1.bin?
Отвечу: долго стояли и leb8-0 и leb9-1, в принципе работали, но при уст. WinXP находилось " лишнее" устройство упр. питанием, все-таки эти файлы для LS mvp3 v4.0 и там, очевидно, что-то добавлено/изменено в структуре чипсета по сравнению с v2.0.
Конечно, au6-3.bin необходим biospatcher для поддержки ACPI, k6-2 + процессоров и больших винтов, но определение устройств чипсета для v 2.0 там imho более корректное ( и распределение ресурсов памяти, кстати, тоже отличается).
Есть отличия и в Win98SE.
Возможно, это касается LS mvp3 и более ранних версий. Для v2.0 и более ранних LS mvp3 au6-3.bin был последним родным биосом, хотя и с недостатками, но их устранил biospatcher. Нужен " последний штрих ", чтобы не зависеть от wpcrset-а.
Как это сделать (без ошибок) ? - вот в чем вопрос.
Спасибо за внимание.
В MODBIN-е есть раздел Chipset Regs. Default, но там можно менять значения только ненужных и неинтересных регистров, ито большинство битов заблокировано.
Нашёл интересную статью:
http://www.geocities.com/mamanzip/Articles/Bios_Tricks.html
Благодаря ей стало примерно понятно где в ORIGINAL.TMP найти эти настраевыемые в Chipset Regs. Default регистры.
Я прпробовал в HEX редакторе изменить маску регистров (чтобы разблокировать залоченые биты для модбина)и заменил один регистр (73 на 52 dev0 func0 - host bridge). Отредактированый файл запаковал в LHA и слепил НЕХ редактором биос. Открыл его в Модбине - открылось как обычно без ругани. В разделе Chipset Regs. Default всё честно отображалось как я и редактировал. Изменений в битах регистров не вносил. В заменённом регистре 0052 выставил нынешнее рабочее значение. Сохранил изменения зашил биос - мать не стартует.
Может я собрал криво или может нельзя заменять регистры? Может можно их просто как-то добавить без замены?
Ещё пару вопросов по сборке.
Отредактированый и сжатый мной ORIGINAL.TMP получился немного меньшего обьёма чем оригинальный. Я склеял модули в хексе друг за другом как было, а разницу в размере запакованного ORIGINAL.TMP скомпенсировал добавлением FF-ок перед BOOTBLOCK-ом. Правильно ли я сделал?
Насчёт склеивания. Вырезаный ручками ORIGINAL.TMP по методу Apple_ROM весит 81163байт. Распаковываем - получаем нужные 131072 байт. Без всякого редактирования опять запаковываю в LHA и получается уже 81065 байт, тоесть сжатие больше. Нормально ли это воспримет распаковщик в Bootblock? Или здесь что-то не так?
Что вы можете отредактировать в modbin'е? Т.е. какие регистры?
У меня по host bridge (00) только 0D,70,73,75,71,7f,68,72,74,AC. В большинстве регистров можно менять только 1-3 бита, ито по даташиту на чипсу многие из них ничего не меняют (к примеру always read 0). Этого решительно мало. Посмотрел LEB9-1.bin на LS MVP3 - там получше, но тоже не фонтан. В модбине просто так не натвикаешься.
Заголовки и контрольную сумму правили?
Э-Э, а что есть заголовки. Простите за тупой вопрос. Я в редактировании пока ноль.
По заголовкам можно почитать "Руководство Pinczakko к исследованию принципов работы Award BIOS". Ссылки здесь.
Хотелось бы сравнить заголовки до и после процесса.