Hi All, великий и ужасный! Особенно программёры.
Что то вот подумалось - почему столько копий ломается при применении CBROM-а? Можно же сделать простую оболочку, в которой указать нужную прошивку, нужный модуль, требуемые параметры - и на выходе получить запуск cbrom из командной строки с последующим просмотром лога. Отчасти это реализовано в Биос-патчере, но и отдельный шелл тоже очень бы пригодился.
BIOScope - понимайте как хотите
Аццкий ромбовод {:€
Я пока не волшебник - я только учусь! :-P
Если уж хочется получить название и красивое и не использующееся другими - в своё время я "прошерстил" данное направление и потому предлагаю под оное, уже не раз упоминавшееся здесь (но так и не реализованное) - BIOS(c)ommander. С учётом предполагаемого использования классов по работе с различными типами BIOS, специально написанными для оного проекта (BIOS(c)ommander) - это было бы максимально правильно.
п.с. Давайте не зацикливаться на мишуре и приступать к главному - переименовать тему форума и название проекта в будущем не слишком сложно.
BIOS(c)ommander - хорошее название, но оно уже используется в одноименном (хотя и пока не завершенном) проекте.
Проект будет называться BIOScope.
Выражаю благодарность Root за предложенный вариант.
Предлагаю вопрос с выбором названия считать закрытым.
bioscope - Найдено примерно : 459 085
bioscommander - Найдено примерно : 2
Это демо-версия программы BIOScope.
Предназначена для обкатки внешнего вида программы-оболочки.
Живых плагинов пока нет, но их присутствие эмулируется для тестовой прошивки.
Главное окно программы состоит из трех окон:
- дерево модулей прошивки
- дамп модуля, выбранного на дереве
- лог-файл, доступный для оболочки и плагинов
В меню и тулбаре есть команды для выполнения полезных операций:
- прочитать файл с прошивкой
- выбрать плагин для препарирования файла прошивки
- записать отредактированную прошивку в файл
- копировать все упакованные модули в виде отдельных файлов
- копировать текущий (упакованный или распакованный) модуль в файл
- добавить новый модуль в прошивку
- удалить модуль из прошивки
- переставить соседние модули в прошивке
Для выполнения этих операций оболочка будет общаться с выбранным плагином,
используя для этого набор стандартных plugin-интерфейсов (набор функций).
Другими словами, плагин - это dll, в которой реализован plugin-интерфейс,
учитывающий особенности прошивок конкретного типа.
В свою очередь, BIOScope.exe - оболочка, которая общается с произвольным плагином
посредством plugin-интерфейса, а с юзером - посредством меню и кнопок.
Плагины при необходимости могут иметь собственные окна для визуализации доп. информации.
------------
Теперь можно приступить к проектированию plugin-интерфейсов и к созданию первых плагинов.
Исходные тексты оболочки из-за их нестабильности пока не выкладываю.
Очередная демо-версия 1.2 от 2007/10/08 программы BIOScope
Предназначена для дальнейшей обкатки внешнего вида программы-оболочки.
Интерфейс оболочки практически завершен.
Живые плагины уже появились, но они пока ничего полезного не делают.
Каждый плагин при старте программы добавляет в оболочке свою кнопку на тулбаре и элемент меню.
Настала пора переходить к проектированию и реализации интерфейсов взаимодействия "оболочка-плагин".
Вариант решения с плагинами имеет многие плюсы, НО.
Повторюсь, сказанное является лишь опытом уже сделанного - зачем же наступать на те же грабли, по которым до этого основательно потоптался ещё автор awdbedit?
...
п.с. хотя, возможно, я путаю нацеленность программы с тем, что пытался реализовать сам - для простой "сборки-разборки" (что, в принципе лишь и делает cbrom, от которого началась эта тема) - подобная конструкция вполне пригодна.
Назначение программы BIOScope - "разборка-замена_модуля-сборка".
Непосредственное изменение модуля в общем случае не относится к компетенции программы, хотя отдельные операции редактирования может делать конкретный плагин (например, правка таблиц или элементов меню).
Другими словами, BIOScope - это универсальный cbrom с графическим интерфейсом.
Универсальность реализуется через расширяемый набор плагинов.
П.С.
Неприятно наступать на грабли, еще неприятнее наступать на детские грабли
Весь мир - набор плагинов. (с)-мой
Автомобили, женщины, пиво - это плагины, реализующие интерфейсы ICar, IWomen, IBeer
Очередная демо-версия 1.3 от 2007/10/09 программы BIOScope
Появился первый плагин BsAwardTest.dll, который самостоятельно разбирает на модули прошивку,прочитанную оболочкой.
Команды добавления-удаления-перестановки модулей пока не реализованы.
Pavel
Справа, в хекс-вьювере, адресация всегда начинается с 0х000h, это так задумано? ИМХО, было бы удобнее (привычнее?) видеть реальные смещения, соответствующие положению модуля в прошивке, для случая когда курсор стоит на сжатом модуле. Ну и адресация с 0х000h, когда мы просматриваем несжатое содержимое модуля.
Это исправление будет в очередной версии.
Baza
А если в окне будет Hex редактор и оно будет корректно считать чексуммы после правки и упаковки.....
то совсем хорошо
Чексуммы после правки и упаковки для конкретного типа прошивки должен считать соответствующий плагин.
Но можно сделать простенький "инструментальный" плагин, который будет считать контрольные суммы для любого диапазона адресов и показывать вычисленное значение в собственном окошке.
Оболочка сама не должна это делать по "религиозным" соображениям
По поводу названия программы.
К сожалению, название BIOScope занято с 1995 г. одной широко известной в узких кругах фирмой.
The Phoenix logo is a registered trademark and PhoenixBIOS(TM), NoteBIOS(TM), PhoenixPICO(TM), PhoenixPICO OAK(TM), BIOScope(TM), BIOSEDIT, PhoenixCard Manager Plus(TM), Phoenix MUSE(TM), and Phoenix Telephony Suite(TM), are trademarks of Phoenix Technologies Ltd.
findarticles.com/p/articles/mi_m0EIN/is_1995_Sept_12/ai_17396313
Поэтому в ближайшее время программа будет переименована в
BIOStrip
Хе-Хемуль - респект!
Отправить комментарий