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

Адреса в прошивке Simtec — ChipTuner Forum

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



Argutin Motors: VAG Bosch MEDC17   Прошивки Magneti Marelli VAG от Art-Pro   Прошивки Peugeot/Citroen от Art-Pro   Прошивки Renault от А.Юрлова

Адреса в прошивке Simtec


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

    offline

    экология

    Регистрация:
    18.03.2010
    Сообщений:
    2
    Адрес:
    Нижневартовск

  2. Аватар для almi

    offline

    Программист/реверсер

    Регистрация:
    02.06.2002
    Сообщений:
    18,146
    Адрес:
    Ярославль разработчик SMS-Soft

    Это называется реверс-инжиниринг. Чтобы справится с такой задачей, нужно досканально разбираться в программировании микроконтроллеров, знать все основные алгоритмы построения системы впрыска разных производителей, обладать опытом реверс-инжиниринга ассемблерного кода, иметь кучу времени (процесс занимает от месяца до года, в зависимости от опыта и квалификации) и т.д.
    Если научитесь — сможем предложить высокооплачиваемую работу у нас.

    К сожалению, в современных системах, если изменить только указанные вами параметры — ничего хорошего не выйдет. Копать нужно гораздо глубже: динамические поправки УОЗ, фильтры момента, топливная пленка, управление EGAS и так далее.
    Посмотрите на скриншоты: http://almisoft.ru/ctpro_simtec75.htm
    Это в принципе тот минимум, с помощью которого уже можно что-то там калибровать на более-менее хорошем уровне.Добавлено через 8 минут

    WinOLS — это по сути визуализатор, в котором работа сводится к визуальному поиску областей, похожих на что-то. Например, базовый УОЗ выглядит вполне характерно, поэтому, его там теоретически можно найти по внешнему виду. По своей сути такой метод — это тыкание пальцем в небо, так как «похоже на УОЗ» и «УОЗ» — это вещи немного разные. Можно сильно ошибиться, последствия для двигателя могут быть печальными.
    Разумеется, такой способ не позволяет найти константы, понять алгоритмы работы и определить истинное назначение той или иной таблицы.
    Очень часто люди двигают то, что на что-то похоже, но не используется программой управления вообще, при этом заявляют, что «машина поехала намного лучше».
    В общем, тема полна мистики и такое редактирование напоминает шаманство с бубном.

    Последний раз редактировалось almi; 25.07.2012 в 11:11.

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

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

    offline

    экология

    Регистрация:
    18.03.2010
    Сообщений:
    2
    Адрес:
    Нижневартовск

    Понятно, спасибо конечно!
    Ну а кто-то же определил или где-то взял области с адресами конкретных позиций (карт) в том же Simtec75.

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

    offline

    Диагност ЭСУД

    Регистрация:
    02.03.2006
    Сообщений:
    4,721
    Адрес:
    Ставрополь

    Вам автор программы СТР7 и отвечал.


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

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

Эта статья носит скорее познавательный характер, нежели практическую полезность. И направлена, в первую очередь, на повышение вашего скилла, как специалиста по чип-тюнингу, умеющего выкарабкиваться из различных ситуаций. Ведь ситуация необходимости подготовить файл перед записью, выполнив перенос области калибровок, случается не так уж часто. Тем более, что для этого существуют утилиты и программы, а также калибровщики, готовые это сделать за бесплатно, при условии покупки тюна у них. Тем более, что речь в статье пойдёт только про семейство блоков Bosch MEDC17.

И всё же, если указанная тема вам интересна, то предлагаем не останавливаться и читать дальше. Единственное требование к читателю — умение работать в hex-редакторе и знание базовых понятий, связанных с работой в нём.

Для начала представьте, что у вас есть абстрактный блок управления, а также есть 2 прошивки к нему (сток и тюнинг). Спортивного интереса ради, сразу же усложним задачу, заменив абстрактный блок управления на блок Bosch EDC17CP44 от VW Touareg. Усложнение заключается в том, что данный блок является «нечитаемым» по OBD2 и подразумевает «виртуальное чтение» стока. При этом некоторые загрузчики (среди них PCMFlash и CMD) имеют свой собственный «формат» виртуально полученных стоков для VAG Bosch MEDC17, работающих по протоколу UDS. Слово «формат» применимо с большой натяжкой, так как формат там обычный бинарный, а структура прошивки ничем не отличается от считанной в BSL, просто часть областей (исключая область калибровок) в теле стока зашифровано (и должно остаться в том же состоянии при записи тюнинга через указанные загрузчики).

Ещё сильнее усложним задачу, предположив, что файл с тюнинговой прошивкой имеет смещения и является неполным (часть данных не связанных с калибровками заполнено байтами «00» или «FF»), а также, в отличие от стока, не имеет зашифрованных областей.

В итоге, сравнив два таких файла в HEX-редакторе («криптованный сток» и «неполный тюн со смещениями»), есть риск увидеть полную кашу (как на скриншоте ниже). Задача — найти в этой каше области калибровок и корректно перенести модифицированные калибровки из тюна в сток. Без использования сторонних утилит. За исключением HEX-редактора, конечно же.

По факту, всё оказывается гораздо проще чем кажется заранее. Дело в том, что прошивки для ЭБУ серии Bosch MEDC17 имеют характерную блочную структуру, разобраться в которой не составляет труда. Для этого не потребуется заниматься реверс-инжинирингом или изучать какую-либо официальную техническую документацию, ковыряться в A2L-описаниях и т.п.

Если взять и визуально посмотреть в HEX-редакторе на любой файл прошивки от Bosch MEDC17, считанный в BSL (не имеющий зашифрованных или пустых областей, а также смещений), можно разглядеть, что данные всегда хранятся блоками. Причём, каждый блок данных всегда имеет заголовок (в самом начале), в котором всегда указаны идентификатор блока, объём памяти выделенной под этот блок, адрес следующего блока, а также различные указатели и прочая служебная информация.

Разумеется, подобная информация где-то должна быть подробно задокументирована. К сожалению, у нас нет ссылки на такие документы. Впрочем, в рамках поставленного вопроса (как найти и перенести калибровки на Bosch MEDC17), это не столь важно. Важно научиться правильно находить границы блоков с данными, для чего нужно научиться читать информацию из заголовков блоков. Ну а затем, поняв как выглядит «каноничная» скомпилированная прошивка в бинарном виде для Bosch MEDC17, можно без проблем ориентироваться и выполнять манипуляции по переносу данных для менее каноничных файлов прошивок (со смещениями, пустыми областями и криптом).

Учиться будем сразу на примере. А в качестве примера, возьмем и рассмотрим прошивку с идентификаторами 1037517572_7P0907311B_0005 для вышеупомянутого Bosch EDC17CP44, где 1037517572 — это номер проекта Bosch (номер программы в рамках производителя ЭБУ), а 7P0907311B и 0005 — номер ЭБУ и версия ПО, соответственно. Для написания данной статьи был найден полный образ такой прошивки, полученный путём чтения через BSL. По факту, можно взять любую другую прошивку для Bosch MEDC17 (желательно чтобы её образ был полным).

Итак, открываем прошивку в HEX-редакторе и начинаем изучать сверху вниз. С первого же байта идут данные. Вспоминаем, что структура прошивки полностью блочная, а в начале блока всегда идёт заголовок. Следовательно, попытаемся его прочитать и понять. Благо, структура заголовков на Bosch MEDC17 всегда одинаковая (по крайней мере, иного мы не встречали).

Первые четыре байта заголовка — это идентификатор блока. Следующие четыре байта — это объём памяти, выделенной под блок. Далее идут четыре байта, служащие указателем на адрес следующего блока (учитывайте, что блоки идут не последовательно в теле прошивки, то есть их последовательность может быть перемешанной). Следующие четыре байта — указатель на окончание текущего блока. Далее идут указатели на две системные таблицы (к сожалению, мы не знаем их предназначения), а также номер проекта Bosch и прочие данные, которые в рамках поставленной задачи нас не интересуют.

Два важных момента: При задании адресов используется относительная адресация по базе (обычно база 0x80000000, в зависимости от объёма прошивки). А также, следует учитывать, что идентификатор заголовка, размер блока и все указатели на адреса в памяти записаны в порядке Little-Endian (т.е. в обратной последовательности байт). Например, последовательность байт 00 00 34 80 следует интерпретировать как 0x80340000 (или 0x340000, если исключить адресацию по базе).

Вернёмся к нашему примеру и нашему первому блоку данных (первому в порядке следования внутри дампа, а не в плане фактической последовательности). Итак, этот блок имеет идентификатор «C0»; Сегмент памяти, выделенной для хранения блока, занимает 4000h (что есть 16384 в десятеричной системе счисления — т.е. 16384 байт, или 16кб); Адрес следующего блока — 0x340000 (или 0x80340000, так как применяется относительная адресация); Текущий блок имеет окончание по адресу 0x3FFC. К слову, любой блок данных Bosch MEDC17 оканчивается четырьмя байтами «EF BE AD DE». По крайней мере, проверив это на более чем 7000 прошивках для самых разных ЭБУ из семейства Bosch MEDC17, мы ни разу не встретили опровержения сего факта.

Переходим по адресу 0x3FFC и действительно видим там байты «EF BE AD DE», после которых по адресу 0x4000 начинается новый блок. Всё верно, ведь под рассмотренный блок выделено 16384 (4000h) байт памяти, с адреса 0x0 по 0x3FFF включительно.

Единственный вопрос может возникнуть в том, почему следующий блок начинается с адреса 0x4000, а не с 0x340000, как было указано в заголовке. Повторимся, блоки идут не последовательно в теле прошивки. Блок по адресу 0x4000 следующий лишь по расположению в дампе (но не обязательно следующий в плане внутренней логики прошивки). А блок по адресу 0x340000 действительно следующий (в логическом порядке) после блока, что начинался по адресу 0x0, расположение которого, в свою очередь, неизвестно (если рассматривать именно логический порядок), ведь этот блок просто находится в начале тела прошивки.

Обычно входной точкой является блок с идентификатором «10», начинающийся по адресу 0x18000 (возможно на каких-то ЭБУ Bosch MEDC17 бывает иначе, но мы не смогли найти такой пример). Если начать двигаться с этой входной точки, перепрыгивая с блока на блок, записывая границы блоков, вскоре все участки памяти будут подписаны, за исключением небольших участков между блоками, заполненных байтами 00 или FF (разные загрузчики имеют своё мнение на счёт того, чем заполнять пустые области).

В итоге получаем последовательность подобно этой:

1. Block #10: 0x18000-0x1FEFF
2. Block #20: 0x14000-0x17EFF
3. Block #90: 0x10000-0x13FFF
4. Block #30: 0x4000-0xFEFF
5. Block #40: 0x20000-0x1FFFFF
6. Block #C0: 0x0-0x3FFF
7. Block #60: 0x340000-0x3FFFFF
8. Block #80: 0x200000-0x33FEFF

Отлично. Осталось ответить буквально на пару вопросов, самый главный из которых — а что из этого калибровки? Какой из блоков содержит в себе область калибровок?

Проверив порядка 7000 прошивок (в автоматическом режиме, разумеется) для самых разных ЭБУ из семейства Bosch MEDC17, мы пришли к выводу, что калибровки встречаются только в блоках с идентификаторами «60», «70» и «80». И то, судя по всему, калибровки из блока «80» не используются при чип-тюнинге. Остальные блоки хранят в себе управляющую программу, бутлоадер, OTP-области и т.д.

Конкретно на прошивке 1037517572_7P0907311B_0005, которую мы брали в качестве примера, область калибровок находится по адресам 0x340000-0x3FFFFF (блок «60»). Не будет ошибкой причислить сюда еще и адреса 0x200000-0x33FEFF (блок «80»), хотя мы сомневаемся, что в этот сегмент кто-то будет вносить изменения, связанные с чип-тюнингом.

Таким образом, рассмотрев блочную структуру прошивок Bosch MEDC17, можно подытожить, что задача переноса калибровок на Bosch MEDC17 – это задача поиска и переноса блока с идентификатором «60» (иногда также «70» и «80»). Какая бы пара файлов вам не попалась, нужно просто найти этот блок данных в обоих файлах, прочитать из его заголовка информацию, выполнить перенос.

Даже если файл частично зашифрован или обнулен (главное, чтобы не в области калибровок), даже если файл имеет смещения, можно поиском найти блок, начинающийся байтами «60 00 00 00». Далее, по структуре данных определить, что это действительно заголовок блока и узнать его размер. И, предварительно проделав тоже самое во втором файле, выполнить перенос.

Вышеописанный алгоритм работает для любых версий ПО, для любых ЭБУ серии Bosch MEDC17. Корректнее будет сказать, что мы не нашли ни одной прошивки для Bosch MEDC17, где вышеописанный алгоритм не заработал бы. Хотя, кто знает, может мы просто плохо искали =)


P.S. В качестве заключения. А существует ли более простой способ найти и перетащить данные для Bosch MEDC17?

Отвечаем: конечно существует. В частности, модуль BSL Tricore для загрузчика Combiloader имеет в своём функционале кнопку «Импортировать данные Bosch MEDC17» и гарантированно работает с дампами, полученными через BSL или BSM. Также, на нашем сайте есть вспомогательные модули для идентификации и переноса области калибровок для некоторых блоков серии Bosch MEDC17 (не для всех, т.к. помимо простого переноса, мы встраиваем ряд специфических проверок на прошивки разных марок авто).

Перейти к списку статей

Поделиться

Обсуждение

  • 2 Фев 2006

Как найти нужную ячейку в NEX редакторе?
Нужно прочитать содержимое конкретного адреса.Для примера адрес 0025, и его содержимое в десятичном формате.Разжуйте пожалуйста… :cry:

  • 6 Фев 2006

Если в NEX редакторе, то зачем тебе десятичный формат — все цифры шеснадцатеричные (HEX), если надо переведи в десятичные в калькуляторе.
Твоя строка (если в HEX формате) будет выглядеть так:
…….
0020 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
0030 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
…….
…….
0020 — адрес, значения в 16-ти ячейках произвольные, но я поставил в них адреса которым они соответствуют.
Твоя ячейка с адресом 0025 — имеет значение 05 .
Если еще непонятно то:
0020 00
0021 01
0022 02
0023 03
0024 04
0025 05 — она твоя
0026 06
0027 07
0028 08
0029 09
002A 0A
002B 0B
002C 0C
002D 0D
002E 0E
002F 0F
и т.д.
Всего доброго.

  • 6 Фев 2006

Более наглядно :)

1_154.jpg

  • 20 Фев 2006

Спасибо! Поковырялся,разобрался,нашел где » собака зарыта «.

  • 23 Окт 2006

:help: Где можно скачать nex редактор.

  • 23 Окт 2006

Bano, наверно не «nex редактор», а HEX-редактор …
Их в инете полно, найди через поисковик.

  • 29 Окт 2006

А может скажеш где скачать. Сижу 3 дня и не нашёл. :help:

  • 29 Окт 2006

Bano,  ссылка скрыта от публикации 

  • 29 Окт 2006

ИМХО, WinHex один из самых лучших. Или в гугле — «hex editor», к примеру :)

  • 29 Окт 2006

  • 29 Окт 2006

voldemar71, UltraEdit-32 лучше, и весит не очень много

  • 30 Окт 2006

Vasilij, каждому своё. я, вообще юзал windhex32 — простой, маленький, бесплатный и не требует инсталляции, при этом имеет много чего полезного (для своих размеров). В некоторых довольно УЗКИХ кругах он находит достаточно ШИРОКОЕ применение, например, при переводе приставочных игр…

  • 30 Окт 2006

voldemar71, я имел ввиду- больше функций, хотя и WinHex тоже присутствует, смотря для чего. Когда на верстакЕ лежит пара молотков, и они не мешают друг другу, то пусть будут ;)

  • 30 Окт 2006

Vasilij, хорошая штука :) . Пришлось, правда, сходить ссылка скрыта от публикации  (да простят меня модераторы) — платный, зараза :)

  • 30 Окт 2006

понятно :) , я его брал где то в более приличном месте…
Есть еще MultiEdit, проггеры хвалят, но он где то под 30 МВ, и я его на своем мопеде не разыскивал..

  • 31 Окт 2006

  • 31 Окт 2006

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

  • 31 Окт 2006

Vasilij, Напишите конкретную ссылку для скачивания,
Я скачаю и выложу в обменник Программы.

  • 31 Окт 2006

Aliaksandr,
a) я знаю где он лежит(или лежал), и мог(у) взять прямо оттуда;
б) у него размер, если не изменяет память, около 26 МЕГАБАЙТ , это довольно приличный объем
как для обменника, так и для большинства пользователей, которые сидят на модемах.
в)тематика этого софтА не совсем отвечает тематике форума, к тому же, он платный см:
https://monitor.net.ru/forum/threads/44817/
так что спасибо, не нужно :) .

  • #1

Всем ДВС. Я хотел бы постигнуть некоторые тайны чип-тюнинга :). В связи с этим вопрос. А по какому адресу можно увидеть идентификаторы прошивок? Я подробнее поясню. Возьмем например прошивку Симтек 75.5 и увидим что идентификаторы лежат по адресу 00070000. Тут все понятно, при подборе прошивки проверяем совпадение, вес и шьем. А вот например я на опыты на разборке приобрел ЭБУ MEV17.4 предположительно от ситроена С4. Слил с него прошивку при помощи K-TAG и стал в ней искать полученные идентификаторы. И ни хрена их не нашел :).Кроме того в складчине прошивок которые, конечно безусловно предположительно, подходят к этому ЭБУ прошивки имеют обозначение например 0261208491_389025 или 0261201609_392088. И в них тоже не нашел ни идентификаторов который мне отдал ЭБУ MEV17.4 ни обозначений которые указаны в названиях прошивок. Это интересует и например применительно к Форду или Фольксвагену, в общем вопрос универсальный. Может где есть какой-нибудь справочник по этой теме?

  • Симтек 75.5.png

    Симтек 75.5.png

    267 КБ

    · Просмотры: 47

  • 1678891326551.jpg

    1678891326551.jpg

    2,5 МБ

    · Просмотры: 46

  • #2

Добавлю сам файл слитой прошивки

  • MEV 174.rar

    605,3 КБ

    · Просмотры: 13

Андрей301


  • #3

Херовая затея начинать постигать со складок. А иденты есть в файле. У каждого Эбу они лежат по разным адресам.

  • #4

Херовая затея начинать постигать со складок. А иденты есть в файле. У каждого Эбу они лежат по разным адресам.

Я в качестве примера сослался на складки. Ну вот в слитой мной прошивке я идентов не нашёл, хотя может и плохо искал конечно. А вот есть какие-нибудь справочники по этой теме как узнать соответствие прошивки ЭБУ?

  • #5

И вот саму прошивку я выложил. И фото идентов тоже выложил. И где их в самой прошивке искать?

AriDanSon


  • #6

в хексе наберите 1037

  • Снимок экрана (25397).png

    Снимок экрана (25397).png

    53,7 КБ

    · Просмотры: 65

  • #7

Понятно. Благодарю. Это и есть идентификатор? А как он коррелируется с тем что выдал K-Tag (на фото)?

AriDanSon


  • #8

Понятно. Благодарю. Это и есть идентификатор? А как он коррелируется с тем что выдал K-Tag (на фото)?

Многие загрузчики выдают иденты так, как заложил разработчик данного девайса. Как то так. Ваши иденты 1037_393216.

AriDanSon


  • #9

Херовая затея начинать постигать со складок. А иденты есть в файле. У каждого Эбу они лежат по разным адресам.

Согласен. Лучше делать на стоке, и надежнее.

  • #10

Многие загрузчики выдают иденты так, как заложил разработчик данного девайса. Как то так. Ваши иденты 1037_393216.

Благодарю. Ну с этим блоком понятно :). Теперь с другими типами ЭБУ хотелось бы достигнуть понимания :).

AriDanSon


  • #11

Благодарю. Ну с этим блоком понятно :). Теперь с другими типами ЭБУ хотелось бы достигнуть понимания :).

На эту тему есть ролики Филата на ютубе

  • #12

На эту тему есть ролики Филата на ютубе

Я их почти все просмотрел :). Но вот именно по такой теме вроде как ничего не нашел. Своими ответами мне здесь конечно здорово помог уважаемый

AriDanSon.​

AriDanSon


  • #13

Я их почти все просмотрел :). Но вот именно по такой теме вроде как ничего не нашел.

Значит нужно попросить Филата запилить видос на эту тему.

Андрей301


  • #14

Значит нужно попросить Филата запилить видос на эту тему.

Глупая затея. Тем более точно помню был у него видос идентификация прошивок ems3132

Filat Ogorodnikov


  • #15

Просто ищем в прошивке идентификаторы, которые выдал загрузчик. Тем самым определяя адрес где они лежат для последующей сверки с прошивкой из складки.

Filat Ogorodnikov


  • #16

Да вот оно свежее видео по этой теме:

  • #17

Просто ищем в прошивке идентификаторы, которые выдал загрузчик. Тем самым определяя адрес где они лежат для последующей сверки с прошивкой из складки.

В моем случае загрузчик выдал иденты (на фото) которых нет внутри прошивки. Я конечно дилетант :) и возможно задаю глупые вопросы. Поэтому и создал тему в соответствующей ветке :).

Filat Ogorodnikov


  • #18

Дошёл до компа, посмотрел. Действительно не находит. Но в ХЕКСе мы видим лишь декодированный текст. А какая у него кодировка- это как повезёт.
Обычно настройки по умолчанию показывают нам что-то. Но в этом случае нет. И другие тоже не расшифровывают.
По сути прошивка — это двоичный код. 0 и 1 . Мы видим идентификаторы только потому что прошивки более-менее стандартизированы.
Например: Если бы я разрабатывал ЭБУ и писал прошивку, там бы вообще не было никаких идентификаторов)

1678914594088.png

В этом случае вариантов много.
1) ничего не делать — скучно
2) записать наугад — рискованно
3) проверить в более профессиональном редакторе — надо учиться
4) сделать прошивку на заказ — правильно

Filat Ogorodnikov


  • #19

Кажется понял. Это файл MPC — значит от Ктага. Значит должен открываться в фирменной программе.
Скачиваем, открываем, нажимаем info. Видим идентификаторы по стандарту Bosch.
То есть в аналогичной прошивке, которая из складчины, сверяем именно эти идентификаторы.

1678919037016.png

Filat Ogorodnikov


0 / 0 / 0

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

Сообщений: 8

1

07.03.2013, 14:06. Показов 35005. Ответов 14


Студворк — интернет-сервис помощи студентам

Здравствуйте! Я сам по специальности не программист, скорее самоучка)) занимаюсь чип тюнингом автомобилей. Возникла необходимость менять данные в прошивках контролера, в самой прошивке заложены алгоритмы и калибровки. Знаю что их меняют в hex редакторах, но вот как находят нужные данные не могу разобратся. В hiew в отличии от IDA, показывается мнемоники и операнды байтов но чтот сомневаюсь в их достоверности( подскажите хоть куда капать в гугле ничего толком не могу найти



0



Ушел с форума

Автор FAQ

15888 / 7462 / 1012

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

Сообщений: 13,444

07.03.2013, 14:24

2

если есть сомнения в достоверности «hex редакторов» то какие уверенности в правдивости «гугла и тех, кто ответит на этот запрос»? То что ты в этом не можешь разобраться критерием не является…



0



0 / 0 / 0

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

Сообщений: 8

07.03.2013, 14:33

 [ТС]

3

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



0



Ушел с форума

Автор FAQ

15888 / 7462 / 1012

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

Сообщений: 13,444

07.03.2013, 14:41

4

sychyov1991,
просто hiew управляет человек и если этот человек sychyov1991, то тут наступает путаница



0



0 / 0 / 0

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

Сообщений: 8

07.03.2013, 14:49

 [ТС]

5

ну как говорится с опытом ни кто не рождается)) я то разберусь в любом случае. Если подскажешь как правильно им управлять я только За!



0



Ушел с форума

Автор FAQ

15888 / 7462 / 1012

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

Сообщений: 13,444

07.03.2013, 14:50

6

sychyov1991,
разбирайся, я тоже за!



0



0 / 0 / 0

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

Сообщений: 8

07.03.2013, 14:55

 [ТС]

7

так и думал)))



0



608 / 406 / 8

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

Сообщений: 2,065

07.03.2013, 15:12

8

Не по теме:

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

sychyov1991,
разбирайся, я тоже за! :good:

какой-то ты не дружелюбный :jokingly:

sychyov1991, а что Вам собсно не понятно? в компьютере все представляется в виде чисел (точнее в виде двоичных чисел, а еще точнее в виде «высокий уровень напряжения» и «низкий уровень напряжения»), хоть буквы, хоть команды для процессора — все числа. поэтому нет разницы в командах и буквах, процессор запросто проглотит если ему на выполнение подсунуть ‘ABCDEF’, вот только что эти команды будут делать (если вообще что-то будут делать). хиев — это вообще полезная штука. он может по-разному просматривать файлы: в виде хекс-кода, в виде двоичного кода, дизассемблированный листиг. если вы откроете в нем текстовый файл и скажете показать в виде ассемблерных команд, то он будет пытаться представлять текст в виде команд процессора. Вы поконкретнее вопрос задайте, ато не совсем ясно что Вам не ясно а как найти нужные данные в незнакомом файле — задача не из простых… если искать строки — ничего сложного. а вот искать нужный участок кода прошивки — это

жопа

тяжело…



0



0 / 0 / 0

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

Сообщений: 8

07.03.2013, 15:42

 [ТС]

9

хорошо попробую уточнить. Прошивка представляет из себя бинарный файл 64 кб которая вшивается в контроллер управлением двигателя. В прошивке находятся двух, трехмерные таблицы калибровок и алгоритмы( матем формулы) для работы с ними. Понимайте мой вопрос заключается не в том чтобы найти в конкретной прошивке конкретную переменную а в том как «разглядеть” эти таблицы и алгоритмы из всей этой матрицы байтов

Добавлено через 4 минуты
чуть не забыл еще мне известны размеры в байтах нужных мне таблиц



0



1 / 1 / 0

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

Сообщений: 24

07.03.2013, 17:21

10

Я может чего-то не знаю, но как я понял, у вас есть все данные о прошивке? Типа первый байт версия, второй и третий не используются, четвертый-шестьдесят четвертый — первая таблица… и тп?
Если так, то в чем проблема?
одно число в шестнадцатиричной системе — два байта, представляем его в двоичной и видим где 0, а где 1.
Скиньте файлик, интересно=)

заодно скажите что где поменять=)



0



608 / 406 / 8

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

Сообщений: 2,065

07.03.2013, 17:37

11

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



0



Клюг

7673 / 3188 / 382

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

Сообщений: 8,380

07.03.2013, 19:38

12

Есть такой STL/Structure Look — ноне позабытый, он очень полезный просмотрщик структур. Автор — создатель hiew, SEN, В аттаче.



1



0 / 0 / 0

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

Сообщений: 8

07.03.2013, 19:52

 [ТС]

13

_alexey, не все к сожалению( только размеры. а вот и пример виновникА)) J5v03l25.rar



0



1 / 1 / 0

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

Сообщений: 24

07.03.2013, 20:00

14

sychyov1991, а какой контроллер стоит на… самаре?=)
И какие размеры есть?

Добавлено через 5 секунд
sychyov1991, а какой контроллер стоит на… самаре?=)
И какие размеры есть?



0



0 / 0 / 0

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

Сообщений: 8

07.03.2013, 20:04

 [ТС]

15

Январь 5.1 2111 -1411020-61 основная часть это таблицы для каждого параметра по 256 байт



0



Понравилась статья? Поделить с друзьями:
  • Как найти товары по оптовым ценам
  • Внешний угол трапеции как найти
  • Как найти матрицу обратного оператора
  • Как исправить неправильный маникюр
  • Как найти настоящее порно