Shell for Cbrom

Hi All, великий и ужасный! Особенно программёры.
Что то вот подумалось - почему столько копий ломается при применении CBROM-а? Можно же сделать простую оболочку, в которой указать нужную прошивку, нужный модуль, требуемые параметры - и на выходе получить запуск cbrom из командной строки с последующим просмотром лога. Отчасти это реализовано в Биос-патчере, но и отдельный шелл тоже очень бы пригодился.

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

BIOScope - понимайте как хотите :)

Аццкий ромбовод {:€
Я пока не волшебник - я только учусь! :-P

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

Если уж хочется получить название и красивое и не использующееся другими - в своё время я "прошерстил" данное направление и потому предлагаю под оное, уже не раз упоминавшееся здесь (но так и не реализованное) - 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

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

Настала пора переходить к проектированию и реализации интерфейсов взаимодействия "оболочка-плагин".

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

Вариант решения с плагинами имеет многие плюсы, НО.


  • усложнит конструкцию, в то время, как нацеленность на то, что "кто-то теоретически" вздумает после писать плагины - утопично по определению.

  • ограничит возможности программы, т.к. выходящие за пределы заурядности функции требуют тесной интеграции между отдельными модулями и прослойка в виде постоянной работы через интерфейс потребует дублирования в каждом из модулей одних и тех же вещей, что в конце концов усложнит последующую отладку.

Повторюсь, сказанное является лишь опытом уже сделанного - зачем же наступать на те же грабли, по которым до этого основательно потоптался ещё автор 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
Хе-Хемуль - респект! 

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

Содержание этого поля является приватным и не предназначено к показу.
  • Разрешённые 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.

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

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