Вход

Просмотр полной версии : Bit-Editor



Doktor
19.03.2012, 16:27
В процессе разработки ПЗУ синхрогенератора столкнулся с проблемой отслеживания/изменения отдельных битов. ПО моего программатора работает только с байтами. Кто может порекомендовать редактор (для РС), который может:

1) отображать в формате: 1-й столбец – адрес, 2-й столбец – содержимое в bin-формате, 3-й столбец – содержимое в hex-формате

2) навигация по таблице и изменение произвольных битов

3) установка/сброс/инверсия битов в заданном диапазоне адресов

Можно также ПО для программатора, если будет работать без сабжа.
Заранее благодарю.

Nuts_
19.03.2012, 23:32
Doktor,
вроде этот моегт
http://www.sweetscape.com/010editor/screenshots.html
то есть вобще это hex-bin редактор который может открыть
.rom (в смысле просто набор байтов) и .hex
а уж сними большинство софта для программаторов работает

Doktor
20.03.2012, 11:15
Nuts_, спасибо!

Почти то что надо. По крайней мере, 1) и 2) имеется. Редактирование группы битов пока не нашёл, но, похоже, не умеет. А так, на первый взгляд, удобный и понятный редактор.

Doktor
21.03.2012, 17:46
Что-то не густо с рекомендациями...

Так как же всё-таки мне проинвертировать один бит в ПЗУ?

Неужели придётся писать программу для Спека и заморачиваться с переносом файлов туда-сюда?

Shadow Maker
21.03.2012, 22:40
В 010 Editor можно свои скрипты же писать. Вот и напиши, хороший вариант по-моему.
Простой язык там, если сам не сможешь, могу на неделе попробовать чего-нибудь сообразить.

Doktor
22.03.2012, 10:29
Shadow Maker, сам я не смогу. Если будете делать, то мне нужно:

при отображении дампа по п. 1) замаркировать произвольный бит в диапазоне адресов от ... до (лучше мышкой) и затем иметь возможность сделать с ними что-нибудь из п. 3).

Заранее спасибо.

Nuts_
22.03.2012, 12:11
Doktor,
010 позволяет реадктировать именно в BINвиде
надо посмотреть в HEX редакторах часенько бывают операции OR AND XOR с заданным диапазоном

---------- Post added at 10:57 ---------- Previous post was at 10:53 ----------

есть еще такой редактор
BIEW
он консольный и под Win7 глючит
выдержка из хелпа
F4 - Режим модификации. ( Не реализован при в текстовом режиме ).
Позволяет модифицировать информацию в бинарном (это не тот бинарный)
шестнадцатиричном и дизассемблерном режимах. Можно также
задать маску [F3] и выполнить логические операции ( OR, XOR,
AND, PUT ) между байтом информации и маской. Текущее значение
маски показывается в правом верхнем углу экрана. [F2] -
сохраняет сделанные изменения в файле. [F9] и [CtrlBkSpace] -
восстанавливают оригинальное значение изменённого байта. В
текстовом режиме осуществляет переключение Wrap/Unwrap.

---------- Post added at 11:00 ---------- Previous post was at 10:57 ----------

он стал http://beye.sourceforge.net/ru/beye.html
------------
вот еще инфа
http://en.wikipedia.org/wiki/Comparison_of_hex_editors

я щас посмотрел некоторые из них

http://www.chmaas.handshake.de/delphi/freeware/xvi32/xvibit.htm
http://www.gero-net.de/avihex/pics.htm
эти биты редактирует этот но массовые операции скриптами
http://bvi.sourceforge.net лучьеш вобещ не смотреть[COLOR="Silver"]
вот этот может вроде все нужно
http://home.gna.org/bless/screenshots.html
но под Nix BSD

Doktor
22.03.2012, 12:58
010 позволяет реадктировать именно в BINвиде
да, позволяет побайтно. А если мне надо исправить 1 бит в 1000 байтов?

Если Вы знаете, как изменять отдельные биты в массиве байтов, разъясните мне, пожалуйста.

Nuts_
22.03.2012, 14:04
Doktor
качаем winhex http://www.x-ways.net
в нем edit -> modify data позволяет делать логические операции с выделенным блоком
OR - установить биты по маске
AND - стереть
надеюсь не надо обьяснять как двоичноей число с заданным битами преобразовать HEX

аналогично в http://beye.sourceforge.net/ru/beye.html
но в нем нет блочных операций но зажав кнопку можно быстро модифицировать строку из 32-64 байтов и перейти на другую

Doktor
22.03.2012, 14:37
Nuts_, спасибо! С winhex вроде получилось. Он хоть и не показывает в бинарном формате, но позволяет логические операции с блоками байтов. Сделав XOR c маской 80, получил инверсию старшего бита, что мне и надо было.


Shadow Maker, можете не тратить время на доработку 010 Editor. Проблема решена.

Shadow Maker
22.03.2012, 15:08
Хорошо.

Doktor
22.03.2012, 16:25
логические операции с блоками байтов

Поизучал ещё немного 010 Editor, он тоже всё это умеет. И удобнее в обращении. Особенно понравилось сравнение 2-х файлов. Очень наглядно. Теперь разберусь с отличиями разных версий ПЗУ для Спека.

Nuts_
23.03.2012, 11:19
Doktor
ну тогда еще http://www.hexworkshop.com/ до кучи