Как изменить hex файл прошивки

Сообщения без ответов | Активные темы

Форум РадиоКот • Просмотр темы — Есть ли возможность изменить .hex файл?

Сообщения без ответов | Активные темы

ПРЯМО СЕЙЧАС:

Автор Сообщение

Не в сети

Заголовок сообщения: Есть ли возможность изменить .hex файл?

СообщениеДобавлено: Ср июл 20, 2011 22:34:52 

Первый раз сказал Мяу!

Зарегистрирован: Чт июл 14, 2011 20:12:32
Сообщений: 24

Рейтинг сообщения: 0

Сразу извиняюсь. Может для кого то этот вопрос покажется глупым, я просто новичок в данном деле, но очень интересует данный вопрос. Возникла такая проблема. Есть прошивка для микроконтроллера в .hex файле, но нету исходника этой прошивки. А меня в этой прошивке кое что не устраивает. Вопрос. Можно ли эту прошивку преобразовать в какой нибудь язык программирования, желательно в ассемблер. Буду очень благодарен за любую информацию.

Вернуться наверх
 

ПрофильПрофиль

 

Реклама

Satyr

Не в сети

Заголовок сообщения: Re: Есть ли возможность изменить .hex файл?

СообщениеДобавлено: Ср июл 20, 2011 22:44:23 

Друг Кота
Аватар пользователя

Карма: 26

Рейтинг сообщений: 108

Зарегистрирован: Чт ноя 04, 2010 01:56:36
Сообщений: 7355
Откуда: г. Москва

Рейтинг сообщения: 0

Arkhangel писал(а):

Сразу извиняюсь. Может для кого то этот вопрос покажется глупым, я просто новичок в данном деле, но очень интересует данный вопрос. Возникла такая проблема. Есть прошивка для микроконтроллера в .hex файле, но нету исходника этой прошивки. А меня в этой прошивке кое что не устраивает. Вопрос. Можно ли эту прошивку преобразовать в какой нибудь язык программирования, желательно в ассемблер. Буду очень благодарен за любую информацию.

Можно в ассемблер.

Вернуться наверх
Реклама

YS

Не в сети

Заголовок сообщения: Re: Есть ли возможность изменить .hex файл?

СообщениеДобавлено: Ср июл 20, 2011 23:07:43 

Друг Кота
Аватар пользователя

Карма: 70

Рейтинг сообщений: 1226

Зарегистрирован: Вс мар 29, 2009 22:09:05
Сообщений: 7491

Рейтинг сообщения: 0

Только в ассемблер, кстати, и можно. По крайней мере, однозначно.

Софтины, выполняющие такую операцию, называются дизассемблерами.

Только листинг будет плохо читаем за счет конструкций типа jmp PC+0x0D, out 0x32,0x04 и т.п. Так что геморроя избежать не удастся. :wink:


_________________
Разница между теорией и практикой на практике гораздо больше, чем в теории.

Вернуться наверх

Jack_A

Не в сети

Заголовок сообщения: Re: Есть ли возможность изменить .hex файл?

СообщениеДобавлено: Чт июл 21, 2011 11:02:10 

Друг Кота
Аватар пользователя

Карма: 61

Рейтинг сообщений: 792

Зарегистрирован: Вт апр 24, 2007 07:45:40
Сообщений: 5169
Откуда: Minsk

Рейтинг сообщения: 0

YS писал(а):

Софтины, выполняющие такую операцию, называются дизассемблерами.

Не обязательно. Обычной Студией с небольшими плясками можно вытащить исходник из HEX, ну а потом, кончно, доработка напильником : вменяемые имена переменных, метки и т.д.

Вернуться наверх
Реклама

Выгодные LED-драйверы для решения любых задач

КОМПЭЛ представляет со склада и под заказ широкий выбор LED-драйверов производства MEAN WELL, MOSO, Snappy, Inventronics, EagleRise. Линейки LED-драйверов этих компаний, выполненные по технологии Tunable White и имеющие возможность непосредственного встраивания в систему умного дома (димминг по шине KNX), перекрывают практически полный спектр применений: от простых световых указателей и декоративной подсветки до диммируемых по различным протоколам светильников внутреннего и наружного освещения.

Подобрать LED-драйвер>>

YS

Не в сети

Заголовок сообщения: Re: Есть ли возможность изменить .hex файл?

СообщениеДобавлено: Чт июл 21, 2011 19:03:01 

Друг Кота
Аватар пользователя

Карма: 70

Рейтинг сообщений: 1226

Зарегистрирован: Вс мар 29, 2009 22:09:05
Сообщений: 7491

Рейтинг сообщения: 0

Цитата:

Не обязательно. Обычной Студией…

Так это, Студия — всего лишь IDE. Она полюбому запускает соответствующий модуль дизассемблера. :wink:


_________________
Разница между теорией и практикой на практике гораздо больше, чем в теории.

Вернуться наверх
Реклама

Реклама

LIMF – источники питания High-End от MORNSUN со стандартным функционалом на DIN-рейку

На склад Компэл поступили ИП MORNSUN (крепление на DIN-рейку) с выходной мощностью 240 и 480 Вт. Данные источники питания обладают 150% перегрузочной способностью, активной схемой коррекции коэффициента мощности (ККМ; PFC), наличием сухого контакта реле для контроля работоспособности (DC OK) и возможностью подстройки выходного напряжения. Источники питания выполнены в металлическом корпусе, ПП с компонентами покрыта лаком с двух сторон, что делает ее устойчивой к соляному туману и пыли. Изделия соответствуют требованиям ANSI/ISA 71.04-2013 G3 на устойчивость к коррозии, а также нормам ATEX для взрывоопасных зон.

Подробнее>>

pyzhman

Не в сети

Заголовок сообщения: Re: Есть ли возможность изменить .hex файл?

СообщениеДобавлено: Чт июл 21, 2011 19:34:32 

Друг Кота
Аватар пользователя

Карма: 49

Рейтинг сообщений: 391

Зарегистрирован: Вс июл 12, 2009 19:15:29
Сообщений: 7007
Откуда: Ижевск

Рейтинг сообщения: 0

А что так скромно «можно ли»? Сюда его!


_________________
Docendo discimus

Вернуться наверх

Arkhangel

Не в сети

Заголовок сообщения: Re: Есть ли возможность изменить .hex файл?

СообщениеДобавлено: Чт июл 21, 2011 21:06:37 

Зарегистрирован: Чт июл 14, 2011 20:12:32
Сообщений: 24

Рейтинг сообщения: 0

А вот это обязательно, только сначала сам попробую допереть и хотя бы частично разобраться, чтобы можно было задавать внятные вопросы и получать на них такие же ответы.

Вернуться наверх

DiGiCat

Не в сети

Заголовок сообщения: Re: Есть ли возможность изменить .hex файл?

СообщениеДобавлено: Пт июл 22, 2011 09:50:31 

Друг Кота
Аватар пользователя

Карма: 3

Рейтинг сообщений: 6

Зарегистрирован: Пт июл 11, 2008 09:42:35
Сообщений: 4794
Откуда: Made in USSR

Рейтинг сообщения: 0

Медали: 1

Получил миской по аватаре (1)

Под какой контроллер hex не указано даж…


_________________
scio me nihil scire…
_____

Изображение <= Жалобная кнопка в правом нижнем углу… )

Вернуться наверх

ploop

Не в сети

Заголовок сообщения: Re: Есть ли возможность изменить .hex файл?

СообщениеДобавлено: Пт июл 22, 2011 10:07:31 

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

Карма: 68

Рейтинг сообщений: 424

Зарегистрирован: Ср ноя 26, 2008 16:34:25
Сообщений: 13492
Откуда: Тамбовская обл.

Рейтинг сообщения: 0

Медали: 1

Получил миской по аватаре (1)

Тут смотря что не устраивает. Если поправить пару условных переходов — дизассемблирование имеет смысл, а если это «кое-что» потребует кардинального изменения алгоритма, то… проще заново написать. Во всяком случае быстрее.

Вернуться наверх

Arkhangel

Не в сети

Заголовок сообщения: Re: Есть ли возможность изменить .hex файл?

СообщениеДобавлено: Пт июл 22, 2011 23:30:02 

Зарегистрирован: Чт июл 14, 2011 20:12:32
Сообщений: 24

Рейтинг сообщения: 0

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

Вернуться наверх

DiGiCat

Не в сети

Заголовок сообщения: Re: Есть ли возможность изменить .hex файл?

СообщениеДобавлено: Пт июл 22, 2011 23:59:23 

Друг Кота
Аватар пользователя

Карма: 3

Рейтинг сообщений: 6

Зарегистрирован: Пт июл 11, 2008 09:42:35
Сообщений: 4794
Откуда: Made in USSR

Рейтинг сообщения: 0

Медали: 1

Получил миской по аватаре (1)

В теме про дисплеи от сотовых полно разного было… и про 3310+12F629


_________________
scio me nihil scire…
_____

Изображение <= Жалобная кнопка в правом нижнем углу… )

Вернуться наверх

Arkhangel

Не в сети

Заголовок сообщения: Re: Есть ли возможность изменить .hex файл?

СообщениеДобавлено: Сб июл 23, 2011 21:59:26 

Зарегистрирован: Чт июл 14, 2011 20:12:32
Сообщений: 24

Рейтинг сообщения: 0

Вернуться наверх

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Наши партнеры и ученики периодически спрашивают: «Какой HEX-редактор посоветуете? Стоит ли платить за WinHEX?».
Давайте сравним четыре различных редактора и определим наиболее подходящий.

Но сначала предлагаю разобраться, какие задачи решает мастер по чип-тюнингу используя редактор HEX:

  1. Сравнение двух прошивок.
    Например вы купили тюн в комплекте со стоковой прошивкой и вы не уверены, что это именно та версия прошивки, что и в автомобиле, с которым вы сейчас работаете. Сравните сток из купленной прошивки со считанной из вашего автомобиля.
  2. Перенос индивидуальных данных (перенос синхронизации).
    Обычно в справке вашего загрузчика написано, какие данные нужно перенести из родной прошивки в тюн. Без HEX-редактора тут не обойтись (либо придется покупать специальные утилиты).
    Некоторые загрузчики умеют самостоятельно переносить такие данные при записи.
    Любой HEX-редактор хорошо справляется с редактированием прошивок, это его основная функция.
  3. Поиск идентификаторов в файле прошивки.
    Бывает необходимо, когда вы не уверены, что у вас сохранились верные данные. Можно заглянуть внутрь файла и найти строки идентификации.
    Все HEX-редакторы умеют делать поиск ASCII-строк.
  4. Подготовка прошивки под загрузчик.
    Загрузчики могут сохранять данные из блока управления немного по- разному. Под конкретный загрузчик может потребоваться удалить лишние данные, либо наоборот, добавить области, заполненные нулями или FF.
  5. HEX-редактор также позволит вам сравнить два файла прошивки и определить, содержится ли в них одна и та же программа, либо это совершенно разные версии софтов. Модификация одной версии ПО будет отличаться незначительно, может быть десятками или сотнями байт.

HxD Hex Editor

Наш первый претендент — программа от немецких разработчиков. Скачать HxD можно совершенно бесплатно по ссылке: https://mh-nexus.de.

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

Из явных недостатков — очень простые функции сравнения прошивок. Нет синхронного просмотра двух прошивок. Нет анализа и карты различий.


FlexHEX

Программа бесплатна для домашнего использования, скачать можно на сайте разработчика по ссылке: http://www.flexhex.com

FlexHEX — это полнофункциональный редактор, сложно сказать, каких функций ему не хватает.

Из особенностей стоит отметить возможность тонкой настройки сравнения файлов, а так же наглядной карты.

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

Из явных недостатков программы удалось выявить только один — приложение иногда неожиданно закрывается без всяких причин.

С учетом бесплатности FlexHEX для частного мастера — рекомендуем как минимум попробовать.

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


010 Editor

Единственный мультиплатформенный редактор, который удалось найти и попробовать. Существуют версии для Windows, Linux и MacOS.

Скачать демо-версию можно по ссылке: https://www.sweetscape.com/
Коммерческая версия обойдется в 129.95$, а для домашнего использования — 49.95$.

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

Никаких явных недостатков программы обнаружено не было — поэтому однозначно наши рекомендации.


WinHEX

Один из самых известных и популярных редакторов. В том числе, благодаря существованию пропатченных версий.

Скачать дистрибутив можно по ссылке: http://www.winhex.com/winhex/

Без регистрации программа проработала около месяца — потом перестала запускаться. Лицензию можно приобрести примерно за 2600 рублей — цена указана в вашей местной валюте, поэтому периодически немного изменяется.

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

Тем не менее, WinHEX — самый дешевый HEX-редактор. В нем есть функция синхронного просмотра двух файлов, в том числе и с отображением отличающихся байт.

Что же в итоге выбрать конкретно вам?

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

Остались вопросы — задавайте их в комментариях.

Напишите, каким редактором пользуетесь вы. Нужно ли выпустить обучающие видео по работе с HEX-редакторами?

Чтобы заказать модификацию вашей прошивки — переходите по ссылке.


Юрий Щёголев | 02.12.2021 | В рубриках: СТАТЬИ

Формат файла hex, сокращённо от «шестнадцатеричный» или «base-16», является структурой необработанных данных, которой следуют все файлы, хранящиеся на вашем компьютере. Хотя буквально каждый документ хранится в этом формате, найти его на ПК практически невозможно. Хотя далеко не все знают, что возможность напрямую изменять необработанные биты и байты на ПК иногда может быть очень полезна.

Чем и как открыть файл HEX

Что обозначает расширение HEX

Система счисления, которую люди используют для подсчёта, называется десятичной (числа от 0 до 9), и была изобретена персами около 6000 лет назад. В 1950-х или 1960-х годах IBM формализовала шестнадцатеричную систему счисления, которая является коротким способом представления двоичных данных. Вместо использования цифр 0-9, шестнадцатеричное число использует цифры от 0 до F. Достигнув конца числовых «цифр», вы просто увеличиваете число влево на единицу, точно так же, как вы делаете это с системой счёта десятичных чисел.

Файлы с расширением HEX имеют те же свойства, что и двоичные. Все байты размещаются один за другим. Информация об адресе или контрольные суммы не добавляются. Единственная разница с двоичным форматом такова, что каждый байт преобразуется в 2 символа ASCII в диапазоне 0-9 и A-F, представляющие 2 шестнадцатеричные цифры. Эти символы сгруппированы по строкам. Номер пары в строке обычно может варьироваться от 1 до 255, где наиболее общей длиной являются 16 или 32 пары. Каждая строка заканчивается парой CR (ASCII-значение $ 0D) или CRLF (ASCII). Для работы с такими документами требуется специальная программа-редактор хекс-файлов. Она в удобном виде выведет всю информацию и позволит достаточно комфортно её воспринимать и изменять.

Что такое HEX-файл

Как открыть файл HEX

Далеко не все являются программистами, и иногда открыть файл с расширением HEX может понадобиться обычному человеку, чтобы посмотреть в нём некую информацию. На самом деле для такой простой задачи вполне достаточно обычного Блокнота – стандартного приложения, которое имеется в любой системе Windows. Ведь этот файл, по сути, является текстовым, просто в нём записана специфическая информация, но обычными символами.

Для этого достаточно кликнуть на файле правой кнопкой мыши, выбрать в меню пункт «Открыть» или «Открыть с помощью», затем «Выбрать из списка установленных программ», а далее просто выбрать стандартный Блокнот. Снимите галочку с пункта «Использовать выбранную программу для всех файлов этого типа» — вдруг вы его потом будете открывать другой программой. Можно просто открыть Блокнот, а файл в него перетащить, и он откроется.

Гораздо удобнее для открытия таких файлов подходит другая версия Блокнота – Notepad++. Скачать можно по этой ссылке. Эта программа также есть у многих, так как более удобна. Но она может к тому же распознавать многие языки программирования и файлы HEX в ней выглядят гораздо удобнее, так как есть выделение цветом. Notepad++ представляет собой как бы примитивный HEX-редактор, и этим можно пользоваться совершенно свободно.

Так выглядит HEX-файл, открытый в Notepad++. В стандартном Блокноте так же, но без цвета.

Так выглядит HEX-файл, открытый в Notepad++. В стандартном Блокноте так же, но без цвета.

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

Взлом игр и файлов

Популярная причина, по которой вы можете использовать шестнадацтеричный редактор, – взлом игр. Вы можете загрузить документ сохранения игры и изменить сумму денег, например, от 1000 до 1000000 долларов. В более поздних играх всё сделано намного сложнее. Многие современные игры используют либо сжатие, либо шифрование, что во много раз затрудняет декомпиляцию состояния сохранения или игры. Тем не менее, некоторые игры по-прежнему позволяют редактировать определённые переменные, например, Sonic Spinball. В дополнение к просмотру файлов игры, из сохранённого файла иногда можно извлечь другую важную информацию, к которой у вас иначе не было бы доступа. Это сильно зависит от типа файла и того, какую информацию вы ищете, но использование шестнадцатеричного редактора полезно для определения того, что именно находится в документе.

Отладка и редактирование

Наконец, еще одна популярная причина, по которой вы можете использовать шестнадцатеричный редактор, – это если вы программист, и вам нужно отладить код. Вместо того, чтобы возвращаться к перекомпиляции кода, для проверки шаблона может потребоваться простое шестнадцатеричное редактирование. Но для начала обязательно убедитесь, что у вас есть резервная копия, прежде чем изменять какие-либо файлы с помощью шестнадцатеричного редактора.

Какие hex-редакторы использовать

Шестнадцатеричный редактор представляет собой софт, используемый для просмотра и редактирования бинарных файлов. Двоичный документ представляет собой документ, который содержит данные в машиночитаемой форме. HEX-редакторы позволяют изменять содержимое необработанных данных файла. Поскольку шестнадцатеричный редактор используется для редактирования двоичных файлов, их иногда называют двоичным редактором или редактором двоичных файлов. Если открыть документ с помощью шестнадцатеричного редактора, появится сообщение о том, что документ редактируется в шестнадцатеричном формате, а процесс использования шестнадцатеричного редактора называется шестнадцатеричным редактированием. Шестнадцатеричные редакторы отличаются от обычных текстовых рядом функций. Основой шестнадцатеричного редактора является то, что они отображают необработанное содержимое файла. Нет кодирования или перевода в текст – только необработанный машинный код. Во-вторых, номера строк вместо того являются адресом смещения от начала файла. Мы подобрали несколько лучших бесплатных программ для просмотра и редактирования документов HEX.

HxD

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

HxD

Преимущества:

  • Действительно большие данные – последняя версия HxD обрабатывает большие наборы данных. Если он помещается на диск, HxD сможет его открыть.
  • Стандартные параметры – HxD содержит множество полезных дополнений, таких как генератор контрольных сумм, поддержка нескольких наборов символов, редактор ОЗУ, уничтожитель файлов, разбиение и объединение, неограниченное количество отмен и портативная версия.
  • Экспорт данных – программа экспортирует данные в исходный код (C, C#, Java, Pascal и VB.NET) или в шестнадцатеричные форматы.

Недостатки:

  • Не для неопытного пользователя, но это не недостаток. Программа ориентирована на продвинутых пользователей.

DeltaHex Editor

Один из лучших hex-редакторов на основе библиотеки deltahex. Используйте действие «Открыть как шестнадцатеричный» в главном меню «Файл» или в контекстном меню файлов проекта.

Характеристики:

  • Отображение данных в виде шестнадцатеричного кода, предварительный просмотр текста.
  • «Вставить» и «Перезаписать» режимы редактирования.
  • Поддержка выбора и буфера обмена.
  • Отмена/повтор.
  • Выбор кодировки.
  • Отображение непечатных символов.
  • Коды также могут быть двоичными, восьмеричными или десятичными.
  • Поиск текстового/шестнадцатеричного кода с соответствующей подсветкой.
  • Дельта-режим – изменения сохраняются только в памяти до сохранения.
  • Поддержка огромных файлов.

DeltaHex Editor

Free Hex Editor Neo

Free Hex Editor Neo – это самый быстрый бесплатный редактор двоичных файлов для платформы Windows. Алгоритмы обработки данных Neo Hex Editor чрезвычайно оптимизированы и тщательно настроены для обработки операций с большими файлами.

Характеристики программы:

  • Неограниченное Undo/Redo.
  • Редактировать, Копировать, Вырезать, Вставить, Удалить, Заполнить, Импорт/Экспорт, Вставить шаблон/файл, Изменить размер файла, Смещение к началу, Изменить биты.
  • Поиск и замена шаблонов.
  • Подсветка.
  • Байты, слова, двойные слова, группировка четырёх слов.
  • Шестнадцатеричное, Десятичное, Восьмеричное, Двоичное и т.д. представление данных.
  • Изменение атрибутов файла.
  • Анализ данных буфера обмена.
  • Создание бинарных патчей, поиск/замена регулярных выражений.
  • Многоязычный интерфейс.

Free Hex Editor Neo

Функции и возможности утилиты:

  • Статистика и шестнадцатеричный анализатор – модуль анализа двоичных данных позволяет анализировать распределение байтов, символов и строк по шестнадцатеричным дампам и текстовым данным. Анализатор двоичных файлов Neo поддерживает шаблоны следующих типов: шаблоны символов и строк ASCII/Unicode, шаблоны данных Hex, Decimal, Octal, Binary, Float, Double и RegEx (Regular Expression).
  • Графическое представление проанализированных данных в пользовательском интерфейсе Neo – софт поддерживает тепловую карту и визуализацию данных гистограммы. Вы также можете анализировать двоичный документ в форме описательной статистики: среднее значение, дисперсия выборки, стандартное отклонение, стандартная ошибка, эксцесс, асимметрия, медиана, диапазон, минимальное, максимальное, сумма и т.д.
  • Сравнение файлов – Neo представляет собой расширенный инструмент сравнения в шестнадцатеричном формате. Встроенный редактор hex позволяет сравнивать 2 шестнадцатеричных файла, используя два разных алгоритма сравнения: простой (от байта к байту) и алгоритм разности (сопоставление блоков).
  • Редактор ОЗУ – модификатор процесса позволяют редактировать память и обрабатывать данные, загруженные в ОЗУ ПК операционной системой. RAM Explorer предоставляет возможность легко просматривать загруженные процессы и переходить к определённым смещениям. Затем вы можете напрямую обращаться к этим блокам данных и редактировать их в окне шестнадцатеричного редактора. Таким образом, Hex Editor Neo предоставляет возможность просматривать и редактировать данные бинарных программ прямо в оперативной памяти.
  • Дизассемблер – программа также позволяет разбирать исполняемые файлы x86, x64 и .NET. Neo Assembler View поддерживает следующие наборы инструкций: x86, x86-64, MMX, SSE, SSE2, 3DNow!, MSIL. Вы можете загружать файлы символов как для 32-битных, так и для 64-битных исполняемых файлов. Neo – просто идеальный редактор dll/exe!
  • Двоичные шаблоны/редактор структуры – программа поддерживает синтаксический анализ внутренней структуры следующих файлов: exe, dll, sys, ocx, bmp, png, avi, rar, icc, vhd, zip, tiff, wav, tga, psd, pic, pcx, pal, emf EPS.
  • Модуль Structure View – позволяет настраивать двоичные шаблоны. Вы можете написать своё собственное определение структуры файла, используя внутренний язык, подобный C/C++, почти для любого двоичного документа. Например, если вы хотите редактировать файлы данных, вам нужно сначала описать файловую структуру, а затем привязать её к конкретному файлу, используя специальное окно редактора.
  • Анализатор структуры файла делает двоичную корректировку намного проще, чем просто редактирование необработанных шестнадцатеричных байтов. Открывайте, просматривайте и редактируйте файлы hex/bin с небывалой лёгкостью!

Hex Editor Neo предоставляет базовые, расширенные и даже инновационные функции. Шестнадцатеричное редактирование теперь доступно каждому начинающему пользователю!

PSPad

Любимый шестнадцатеричный редактор большинства программистов. PSPad, помимо того, что он является отличным редактором текста и кода, предлагает опцию «Открыть в HEX Editor…», которая запускает специальный режим редактирования. Когда вы находитесь в этом режиме, вы можете увидеть местоположение и шестнадцатеричные значения каждого бита файла. У вас есть два варианта корректировки – вы можете редактировать шестнадцатеричные значения по местоположению, или справа у вас есть буквенно-цифровое представление этого значения, которое вы также можете редактировать.

PSPad

XVI32

XVI32 также очень способный шестнадцатеричный редактор. Как и в PSPad, вы можете редактировать шестнадцатеричные значения напрямую или через отображение символов. В нём также есть несколько расширенных инструментов редактирования шестнадцатеричных кодов, таких как калькулятор адресов для проверки смещений и других специфичных для шестнадцатеричных данных параметров, которые могут помочь вам обойти шестнадцатеричный документ. Если вы, конечно, знаете, что делаете.

Знание того, как работает ваш ПК, становится всё более и более важным, поскольку техника становится всё проще и проще в использовании. Если у вас остались вопросы относительно редактирования шестнадцатеричных файлов, оставьте комментарий под этой статьёй.

Конвертирование прошивок

  • — Мой программатор понимает только BIN и HEX , а я скачал прошивку, а она в каком-то формате E2P. Как сделать эту прошивку в HEX или BIN ?

Так, как меня задолбали подобными вопросами по E-mail, обьясняю тут основы, что-бы было куда ткнуть носом. Сперва вкратце, потом, буду дополнять, если будет необходимость.

Не буду вдаваться в подробности, почему родилось много различных форматов для хранения дампов памяти (прошивок), скажу только, что все файлы прошивок, изначально, делятся на текстовые и бинарные.

Текстовые

— файл содержит только печатные символы ASCII (коды от 32h до FFh)

Бинарные

— файл содержит все символы ASCII, включая непечатные (коды от 00h до FFh)

Скажу сразу — не надейтесь на расширение файла.
По причине незнания, могут присвоить любое — EEP, DAT, MEM, NVM, HEX, и тд.

Сперва, определитесь, в каком реально, формате, ваш файл. Для наглядности, будем открывать файл в блокноте, не надеясь на то, что файлу присвоено правильное расширение. Совет — всегда проверяйте размер файла и обзаведитесь нормальным HEX-редактором и используйте его. Простейший редактор я приатачил.

Для примера, один и тот-же файл прошивки, я переконвертировал в четыре различных формата: HEX, BIN, E2P, TXT.
Далее, кратко рассмотрим основные отличия этих форматов.

Краткое описание форматовТекстовые

:

HEX (шестнадцатеричный)
Универсальный формат, понимает большинство программаторов.
Новая строка начинается с двоеточия, далее адрес, ….

eeprom1.png

  • [*:295134b91a]Описание форматов HEX-файлов

    HEX Файл — текстовый файл определённой структуры

    Файл состоит из текстовых строк следущеюго формата. Все числа в HEX
    Hачинается с ‘:’. Далее 2 символа — число байт данных.
    4 символа — начальный адрес данных( адрес первого байта строки ).
    2 символа — если последняя строка здесь ’01’ иначе ’00’
    Далее байты данных по 2 символа на байт. В конце 2 символа — контрольная сумма — дополнение до 2 суммы байтов данных

    Вот пример данных в hex-формате:

    :100AF00022AB12E1C9F5D56FE60F677DE6F01F1F47

    А вот разбивка по полям:

    :LLOOOOSSD0D1D2D3D4D5D6D7D8D9DaDbDcDdDeDfCS

    Здесь (все числа — шестнадцатеричные):

    LL — число байт, упакованных в данной строке
    OOOO — смещение байта D0 в двоичном образе
    SS — тип записи (00 — данные, 01 — конец файла)
    D0-Df — шестнадцатеричное представление очередных LL байт данных.
    СS — контрольная сумма — сумма всех байт в строке должна быть равна 0.

    Так отмечается конец файла:

    :00000001FF

    Интересно, что этим кодом можно передавать двоичные данные даже по телеграфу.

    В HEX-файлах для PIC-ов данные распределены следующим образом:

    0000h — 3FFFh: Program memory — память програм
    4000h — 400Fh: Config memory — область памяти в которой содержится
    4000h — 400Dh: идентификатор пользователя (любая информация)
    400Eh: идентификатор производителя (для каждого чипа свой) — поле «ID»
    4000F: конфигурационное слово (тип генератора, защита от записи и др.) — поле «Config»
    4200h — 43FFh: Data memory — память данных

TXT (текстовый)
Излюбленный формат корейцев для хранения дампа.
Почти что HEX, но без указания адресов.
То есть, просто, шестнадцатеричное представление данных в текстовом виде. Без всяких контрольных сумм, адресов, и тд.

eeprom2.png

Бинарные

:

BIN (бинарный)
Универсальный формат, понимается фактически всеми программаторами.
На мой взгляд, наиболее оптимален для хранения дампов.
Cобственно содержит те-же коды, что и в памяти. Соответственно, размер файла, равен размеру памяти.

eeprom3.png

E2P (бинарный)
Изобретение от Pony, тот-же BIN, но в начало файла, добавлена «шапка» 152 байта.
Всегда есть сигнатура —

E2P!Lanc

eeprom4.png

Теперь по конвертированию:

BIN <-> HEX
Програмки прилагаются. Для конвертирования удобно накидывать файл, мышкой, на программу.

TXT <-> BIN
Оригинальная програмка прилагается. В свое время, долго искал подобную.

E2P -> BIN
В любом шестнадцатеричном редакторе, удаляете первые 152 байта.

Это основные форматы, и для большинства Мастеров, все это известно.
Об «эксклюзивных», и некоторых тонкостях, разьясню позже (если будет время).
Ну, а кому не лень, и есть желание, может продолжить тему …

► HEDIT.rar
► BIN2TXT.rar
► BIN2HEX.rar

Помогите разобратся с HEX редактором — ChipTuner Forum

Чип-тюнинг коммерческой техники Кама3, ГАЗ от SMS-Soft



Прошивки Hyundai SIM2K от Strit   Прошивки Magneti Marelli VAG от Art-Pro   Прошивки Peugeot/Citroen от Art-Pro   Прошивки Kia SIM2K-241 от Strit

Помогите разобратся с HEX редактором


Закрытая тема.
  1. Аватар для sychyov1991

    offline

    машинист автогрейдера

    Регистрация:
    12.08.2011
    Сообщений:
    7
    Адрес:
    Казахстан, Костанай

    Здравствуйте!У меня такой вопрос как научится менять калибровки в HEX редакторе? Понимаю что в рамках форума не научусь, но может кто подскажет где искать… через гугл ничего не могу найти( хотелось бы узнать как именно находить нужные переменные из всей этой матрицы байтов

  2. Аватар для ЗУЙОК

    offline

    Инженер

    Регистрация:
    27.01.2013
    Сообщений:
    63
    Адрес:
    Москва

    Кстати,тоже заинтересовался этим вопросом, пока понял, что это связанно с асемблером, вот только никак не могу найти программку по десемблированию.
    rebe, я здесь конечно новичек, но то что ты предложил это очень опасно, как пример. Взял eeprom и изменил там что нибудь и пока искал что изменил через софт потерял строку, в итоге изменил подачу кокого нибудь напряжения или снял защиту и будет тогда вуаля.

  3. Аватар для leha

    offline

    автоэлектрик

    Регистрация:
    13.03.2009
    Сообщений:
    1,643
    Адрес:
    Гатчина, Ленинградская обл

    ЗУЙОК,Сохранять надо всегда дампы, прежде чем ковырять. Не поможет вам программка.

    sychyov1991,

    Купите редактор калибровок и не мучайтесь.

    Последний раз редактировалось leha; 04.03.2013 в 01:56.

  4. Аватар для pioneer

    offline

    деахност

    Регистрация:
    22.01.2006
    Сообщений:
    5,273
    Адрес:
    Салехард

    Я думаю на этой конференции нет идиотов, которые работают с оригиналом дампа, а не с его дублем.

  5. Аватар для ЗУЙОК

    offline

    Инженер

    Регистрация:
    27.01.2013
    Сообщений:
    63
    Адрес:
    Москва

    Есть уже редактор. Но к примеру нужно скрутить километраж в мозгах?
    Для этого на сколько я знаю необходимо в определенной строке заменить шеснадцатиричные символы.Добавлено через 4 минуты

    Согласен откатить всегда можно. Но если что то изменил и эти изменения вырожаються не сразу?

    Последний раз редактировалось ЗУЙОК; 04.03.2013 в 02:02.

    Причина: Добавлено сообщение

  6. Аватар для leha

    offline

    автоэлектрик

    Регистрация:
    13.03.2009
    Сообщений:
    1,643
    Адрес:
    Гатчина, Ленинградская обл

    ЗУЙОК,дело за малым, найти строку, изменить значения и подсчитать контрольку

  7. Аватар для ЗУЙОК

    offline

    Инженер

    Регистрация:
    27.01.2013
    Сообщений:
    63
    Адрес:
    Москва

    Вы меня конечно извините, я никого не хочу обидеть, просто охото разобраться с НЕХ. Я понимаю что это код записи программы (алгоритма) в соответствии с которым работает ЭБУ. Вот и интересно где в этом коде что?Добавлено через 2 минуты

    Вот я это и имею ввиду, как найти эту строку? К примеру один ЭБУ имеет 10 строк, другой 11 и не факт, что в обоих 5 строка отвечает за километраж.Добавлено через 5 минут

    Мало ли может кто нибудь подскажет где моно найти информацию по строкам в НЕХ редакторе?
    Находил информацию только по одометру.

    Последний раз редактировалось ЗУЙОК; 04.03.2013 в 02:14.

    Причина: Добавлено сообщение

  8. Аватар для Tom

    offline

    Диагност-ремонтник

    Регистрация:
    01.04.2001
    Сообщений:
    5,709
    Адрес:
    Сухум. Абхазия.

    Вот парни, ну вот как вы можете не обидеться на достойные ответы,ну? Задайте нормально вопрос, типа, «я пытаюсь изменить километраж в регистраторе/доске Роллс-Ройса. Подскажите, по какому адресу и в каком виде лежить пробег и контролька».
    Вот тогда вам нормальным языком ответят или подскажут и попытаются помочь.
    А так как в топике задано — ну ниачом ваще, соответственно ниачомные ответы. Какой нех-редактор…винхекс, тоталком или стп или чо там ещё. Любой НЕХ-редактор — это обычная отвёртка. А что будем ей крутить, по топу неясно.
    Как-то-каг-бе так.

  9. Аватар для sychyov1991

    offline

    машинист автогрейдера

    Регистрация:
    12.08.2011
    Сообщений:
    7
    Адрес:
    Казахстан, Костанай

    с дизассемблером как раз проблем нет, от простенького Hiew до IDA Ильфака ГильфановаДобавлено через 49 минут

    Tom, но ведь мы же не будем ради каждого байта тему на форуме создавать) понимайте нам как начинающим интересен не ответ на задачу а сам метод решения

    Последний раз редактировалось sychyov1991; 04.03.2013 в 08:08.

    Причина: Добавлено сообщение

  10. Аватар для sergcr

    offline

    Автодиагностика

    Регистрация:
    12.09.2006
    Сообщений:
    6,875
    Адрес:
    Россия, Крым, г. Бахчисарай

    sychyov1991, так ежели Вы знаете это страшное слово DASM — то где же Вы врете?

  11. Аватар для sychyov1991

    offline

    машинист автогрейдера

    Регистрация:
    12.08.2011
    Сообщений:
    7
    Адрес:
    Казахстан, Костанай

    так с него то все и началось наткнулся на статью в team rs где был упомянут IDA, начал грызть ассемблер, шестнадцатиричное кодирование так и дошел до HEXаДобавлено через 10 минут

    Deniska, с СТпро разобрался на ура) помогли хорошие знания теории двс, вот и открываю для себя новый мир программирования

    Последний раз редактировалось sychyov1991; 04.03.2013 в 14:47.

    Причина: Добавлено сообщение

  12. Аватар для Кубань

    offline

    Авторемонт

    Регистрация:
    04.12.2006
    Сообщений:
    3,922
    Адрес:
    Краснодарский край

    А может не стоит топить себя в этом мире программирования? Тем временем семья может с голоду опухнуть. Все давно придумано — программаторы, кальки к ним и тд и тп.
    Проще заплатить тем кто это уже изобрел и зарабатывать дальше с помощью приобретенных инструментов. Все познать сегодня нереально.

  13. Аватар для Sergey_karb

    offline

    Автомеханик-Диагност

    Регистрация:
    02.12.2008
    Сообщений:
    2,450
    Адрес:
    Донбасс Снежное

    У меня закралось сомнение,что не все программисты полностью в этом разбираются,куда уж нам,простым смертным.

  14. Аватар для sychyov1991

    offline

    машинист автогрейдера

    Регистрация:
    12.08.2011
    Сообщений:
    7
    Адрес:
    Казахстан, Костанай

    Кубань, согласен, слишком углублятся тоже смысла нет, но вот сложилось мнение что профессиональный чиптюнер, коим я и собираюсь стать, должен уметь работать и с хекс редактором и с дизассемблеромДобавлено через 17 минут

    это точно) из программистов сейчас с ассемблером работают только хакеры и крэкеры

    Последний раз редактировалось sychyov1991; 04.03.2013 в 17:56.

    Причина: Добавлено сообщение

  15. Аватар для Кубань

    offline

    Авторемонт

    Регистрация:
    04.12.2006
    Сообщений:
    3,922
    Адрес:
    Краснодарский край

    Лишнее это сейчас, все есть в готовом виде. Спросите здесь у любого коллеги — кому-то мешает незнание тонкостей программирования зарабатывать свой кусок хлеба на ремонте и диагностике авто.
    Мне лично это нисколько не мешает.

    Последний раз редактировалось Кубань; 04.03.2013 в 18:06.

  16. Аватар для ЗУЙОК

    offline

    Инженер

    Регистрация:
    27.01.2013
    Сообщений:
    63
    Адрес:
    Москва

    Кстати разговаривал тут со знакомыми программистами, они сказали что из НЕХ вернуть первоначальный экзешник очень тяжело.

  17. Аватар для АВС

    Сейчас диагностика

    Регистрация:
    05.03.2006
    Сообщений:
    15,743
    Адрес:
    г.Курчатов

    По моему это то же самое, когда есть ручка, бумага, а человек, прежде чем что то написать, решил самостоятельно освоить изготовление бумаги (т.е. вырастить лес, построить завод по переработке древесины в бумагу, также освоить производство чернил, ручек…) и только после этого приступить к написанию того, что он и хотел собственно делать.

  18. Аватар для ЗУЙОК

    offline

    Инженер

    Регистрация:
    27.01.2013
    Сообщений:
    63
    Адрес:
    Москва

    Ну не совсем так, ни что не мешает к примеру менять колибровки и параметры в софте и при этом изучать НЕХ, просто разобравшись с НЕХ значительно расширяются возможности.

  19. Аватар для sychyov1991

    offline

    машинист автогрейдера

    Регистрация:
    12.08.2011
    Сообщений:
    7
    Адрес:
    Казахстан, Костанай

    да в принципе нам как таковой экзешник сам и не нужен.. ну насколько я понял достаточно будет кода дизассемблера и знать где находятся нужные данные. кстати уже научился находить индетификационные данные в прошивке, мелочь а приятно)) пока разбирался много что понял, буду капать дальше! Что нибудь нарою отпишусь Добавлено через 7 часов 19 минут

    Если конечно администрация не против)

    Последний раз редактировалось sychyov1991; 07.03.2013 в 20:35.

    Причина: Добавлено сообщение


Закрытая тема.

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
Текущее время: 14:44. Часовой пояс GMT +4.

Далеко не все файлы можно редактировать в текстовых редакторах. Например, при открытии картинки в Word мы увидим только набор случайных символов. А попытка сохранить его приведёт к потере данных. Всё дело в том, что для изменения двоичных файлов необходимо использование специальных редакторов. Hex Editor Neo предоставляет все необходимые функции для редактирования файла в шестнадцатеричном режиме.

К сожалению, спокойную работу в Hex Editor Neo периодически нарушает всплывающее рекламное сообщение с предложением использования платной версии программы. Появляется оно при попытке выделения нескольких символов. Но также быстро его можно закрыть и продолжать работу.

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

Интерфейс Hex Editor Neo

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

Адреса в Hex Editor Neo

Для редактирования данных в файле просто ставим курсор на байт в шестнадцатеричном блоке или на символ в текстовом блоке Hex Editor Neo и вводим текст. Чтобы изменить шестнадцатеричный код, необходимо знать, какой код соответствует определённому символу. Для этого достаточно найти таблицу ASCII-кодов. Изменённые байты отображаются красным цветом.

Редактирование шестнадцатеричных кодов в Hex Editor Neo

Редактор Hex Editor Neo поддерживает стандартные функции копирования, вставки, вырезания, удаления. Есть в программе режим вставки (Insert Mode), когда при вводе символов все остальные данных отодвигаются относительно текущей позиции. Кнопка [Modify Bits] открывает окно побитного редактирования байта. Здесь можно просто включать/выключать кнопки, соответствующие каждому из восьми битов, присваивая, соответственно, нулевое или единичное значение биту. Кроме того, в битовом редакторе доступны такие операции, как быстрое обнуление или «объединичивание» всех битов, инвертирование битов. Можно изменить байты и вручную, просто введя необходимую последовательность единиц и нулей. А три режима позволяют увидеть шестнадцатеричное, десятичное или восьмеричное представление редактируемого байта.

Редактирование в битовом режиме в Hex Editor Neo

Функция Fill редактора Hex Editor Neo позволяет заполнить выделенные байты указанными данными. Просто выделяем несколько байтов, жмём кнопку [Fill] и вводим символ, который будет автоматически подставлен. Здесь же есть список типов данных, выбираемых в соответствии с вводимой информацией. Например, если мы хотим заменить выбранные байты на символ «а», выбираем тип String.

Замена нескольких байтов в файле

Полезна функция Go to offset, помогающая быстро перейти на указанный адрес (байт) в файле. Отметим также возможность изменения размера файла (Change File Size). Можно указать новый размер файла как в шестнадцатеричном представлении, так и в более привычном десятеричном (байты), а также в Килобайтах, Мегабайтах и Гигабайтах. В поле Resulting file size при этом отображается итоговый размер файла. При уменьшении размера лишние байты просто отбрасываются, а при увеличении заполняются нулями.

Изменение размера файла в Hex Editor Neo

Мы рассмотрели основные функции Hex Editor Neo. Часть команд в этом редакторе не работает и при попытке их использования открывается уже упомянутое рекламное сообщение. Тем не менее, рассмотренных возможностей программы вполне достаточно для редактирования шестнадцатеричных кодов в файлах.

Характеристики:
Язык интерфейса: английский
ОС: Windows XP, Vista
Размер файла: 8,4 Мб
Лицензия: бесплатная

0 / 0 / 0

Регистрация: 29.12.2017

Сообщений: 9

1

Редактирование прошивки

29.12.2017, 17:41. Показов 7789. Ответов 7


Доброго Господа… ОООчень много разделов не знаю в какой написать.. так что направте в нудный раздел или посоветуите..
Иеннтся прошивка для скалера, хотел бы переписать пару слов в меню.. Открываю Hex Editor Neo редактором, нахожу нужный мне текст Ну например 53 49 47 4E 41 4C — SIGNAL . Редактирую под свои сохраняю. но после этого файл не прошивается! длинна слова такая же. Посоветуйте как сохранить. Может какой то загрузочный редактор или компилятор нужен?? исходный

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

29.12.2017, 17:41

7

632 / 143 / 58

Регистрация: 08.04.2015

Сообщений: 367

29.12.2017, 18:09

2

99% прошивок хранят свои контрольные суммы. Для успешного редактирования надо знать место хранения и алгоритм расчёта КС.



0



0 / 0 / 0

Регистрация: 29.12.2017

Сообщений: 9

29.12.2017, 19:04

 [ТС]

3

Спасиб за ответ…. Значит это не легкая процедура ((



0



C++/Delphi/Asm/Py/PHP

6103 / 1858 / 210

Регистрация: 14.12.2014

Сообщений: 3,846

Записей в блоге: 12

29.12.2017, 21:39

4

Цитата
Сообщение от Andei b
Посмотреть сообщение

Спасиб за ответ…. Значит это не легкая процедура ((

Но и не факт, что шибко тяжёлая. В качестве контрольной суммы может быть проверка, что сумма всех байтов = 0. Просто просуммируйте все байты прошивки и проверьте результат. Если получится 0, постарайтесь заменить ещё какой-нибудь байт, малозначащий (может, последний?), чтобы сумма была = 0.



0



0 / 0 / 0

Регистрация: 29.12.2017

Сообщений: 9

30.12.2017, 13:21

 [ТС]

5

Гениальные люди здесь!!! спасибо Евгений!!! к как это проще это можно сделать ?? (просуммировать)



0



0 / 0 / 0

Регистрация: 29.12.2017

Сообщений: 9

30.12.2017, 13:30

 [ТС]

6

просто как пример загрузил похожую прошивку



0



1156 / 635 / 108

Регистрация: 15.05.2012

Сообщений: 3,877

30.12.2017, 16:19

7

Запустите в симуляторе протеус. Он сам скажет где и что надо подрихтовать. Либо лапками. Суммируете по модулю 256 все байты строки прошивки кроме последнего. Вычитаете из 256 получившуюся сумму и вставляете этот байт последним в строку. Усё.



0



0 / 0 / 0

Регистрация: 29.12.2017

Сообщений: 9

30.12.2017, 16:53

 [ТС]

8

Спасиб, никогда не работал в данном симуляторе но слышал, ща качну буду разбираться



0



Понравилась статья? Поделить с друзьями:
  • Как изменить hostname на сервере
  • Как изменить hex прошивку
  • Как изменить hostname windows 10
  • Как изменить hex код
  • Как изменить hostname vmware