"Сначала было слово"
www.rom.by/forum/Shell_Cbrom
Эта ветка форума посвящена
процессу создания программы
BIOStrip.
Назначение программы:
- прочитать файл с прошивкой
- выбрать плагин для препарирования файла прошивки
- записать отредактированную прошивку в файл
- копировать все упакованные модули в виде отдельных файлов
- копировать текущий (упакованный или распакованный) модуль в файл
- добавить новый модуль в прошивку
- удалить модуль из прошивки
- переставить соседние модули в прошивке
- др.
Другими словами, функционально BIOStrip - это универсальный
cbrom с графическим интерфейсом.
Универсальность реализуется через расширяемый набор плагинов.
PS
"Наши цели ясны, задачи определены. За работу, товарищи!" (Все встают.)
Немного не совсем структурированной информации из разных источников:
Самое структурированное
changeset'ы от LinuxBIOS 1
changeset'ы от LinuxBIOS 2
changeset'ы от LinuxBIOS 3
Плюс к этому куски чьего-то кода
Еще кусок структурированной информации с какого-то китайского форума:
Бегло ознакомился с проектом UniFlash. Авторы выполнили титаническую работу. Из 440кб исходного текста примерно 400кб концептуально выглядит так:
Причем добавление поддержки нового железа требует внесения изменений в текст программы.
"Мы пойдем другим путем" - табличным.
PS
maco, спасибо за информацию
Часть инфы по флэшкам можно почерпнуть из AmiFlash, или из его разновидности AsrFlash с сайта AsRock.
Дрессируем коров
К идее отношусь хорошо, правда, пока не понимаю функциональность, но сие не есть суть вопроса. Для легитимного использования указанной информации можно воспользоваться правилами Notice на страничке icbook.com.ua/about/note.html
Открытая книга: icbook.com.ua
Господа модераторы, в этой ветке форума исчезли несколько последних постов от 23-го и 24-го октября.
"Что делать и кто виноват?"
Как что делать???
Воспользоваться сложившейся ситуацией
И запостить линк на новый, никем еще невиданный BIOStrip. Не выкидывающий 8 окон дебага при запуске. Умеющийй разбирать и собирать прошивки, корректно пр этом пересчитывая CRC, как мы в свое время управлялись с АК.
Шутка
Вы разве этого не видели?
Jazz, Blues & Rock'n'Roll фарева!
Pavel,
что такое АК?
Предлагаю для ознакомления очередную альфа-версию программы BIOStrip.
Закончены плагины:
BsCmos - чтение CMOS
BsPciProbe - чтение Pci-регистров
В стадии завершения - BsReadFlash - чтение прошивки.
В базе данных оболочки появились новые таблицы.
Речь пойдет о плагине BsReadFlash (и не только о нем).
Этот плагин должен обеспечивать чтение содержимого Flash-памяти с образом биоса. Главная проблема - настройка чипсета для обеспечение доступа ко всему диапазону адресов ПЗУ. Эта настройка сильно зависит от конкретного чипсета.
Хотелось бы эту чипсет-зависимую часть вынести во внешний файл (базу данных оболочки). Тогда добавка нового железа не будет требовать изменения и перекомпиляции программы.Осталось выбрать формат хранения этой чипсет-зависимой части. Этот формат, с одной стороны, должен быть достаточно гибким, а с другой - простым для реализации и удобным для пользователя.
Например, для моего компьютера (Host bridge 0x1039:0x0650, LPC bridge 0x1039:0x0008) перед чтением прошивки биоса необходимо записать в устройство LPC Bridge (Class 0x060100) в регистр 0x40 значение 0x03.
На языке C++ с использованием оболочки это выглядит так:
Но в таком виде алгоритм настройки железа для чтения прошивки хранить нельзя.
Поэтому предлагается другой формат - более многословный, но зато простой для интерпретации.
В таком виде чипсет-зависимые настройки можно хранить в базе данных.
Поиск настроек будет осуществляться по Vendor_ID/Device_ID южного моста.
Аналогичный подход можно будет использовать и для плагина BsWriteFlash. Но кое-что придется добавить (чтение-запись в порты и пр.).
Какие будут мнения по поводу такого специального языка для записи настроек в базе данных?
У версии 1.2 есть глюк: если при сборке прошивки начать двигать модули вверх/вниз, то программа без слов, тихо закрывается. Проверено на разных компутерах. Версия 1.1 работает стабильно.
-=Кто сказал что бесполезно биться головой об стену...=- (НП)
Пх’нглуи мглв’нафх Ктулху Р’льех вгах’нагл фхтагн
Хочешь сделать хорошо - сделай это сам
Отправить комментарий