Jump to content

Диассемблировал ... нужна помощь


Recommended Posts

Posted

Диассемблировал прошивку и не понял:

 

- где точка входа, первые две команды длинного перехода:

- адрес: 0000h: ljmp 2085h

- адрес: 0003h: ljmp 0798h

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

 

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

Эксперты подскажите я ничего не путаю...а...

 

- да и чуть не забыл в конце кода, диассемблер выдал какието эквиваленты, например:

INTMEM:0000 .equ INTMEM_0,0 ; DATA XREF: seg000:04CBr

INTMEM:0000 ; seg000:0786w ...

Честно говоря не совсем понял что это...

 

-А также ещё вот такая штука:

SFR:0086 .equ SFR_86,0x86 ; DATA XREF: seg000:2092w

SFR:0086 ; seg000:21CBw ...

Тоже не знаю что это...., где квадратики это стрелочки вверх или вниз.

Спасибо всем кто откликнется ...

С уважением Alex (2112)

Posted
Диассемблировал прошивку и не понял:

 

- где точка входа, первые две команды длинного перехода:

- адрес: 0000h: ljmp 2085h

- адрес: 0003h: ljmp 0798h

 

0 - точка входа.

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

скачай на infineon.com мануал на c509lm и кури его в пунктах "векторы прерываний".

- при диассемблировании, диассемблировалась и контрольная сумма с дополнением, есть предположение, что там где находятся калибровки диассемблер их тоже диассемблировал.

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

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

так и есть. Код (управление) потом калибровки. потом снова код (диагностика).

Эксперты подскажите я ничего не путаю...а...

 

- да и чуть не забыл в конце кода, диассемблер выдал какието эквиваленты, например:

INTMEM:0000 .equ INTMEM_0,0 ; DATA XREF: seg000:04CBr

INTMEM:0000 ; seg000:0786w ...

Честно говоря не совсем понял что это...

 

-А также ещё вот такая штука:

SFR:0086 .equ SFR_86,0x86 ; DATA XREF: seg000:2092w

SFR:0086 ; seg000:21CBw ...

Тоже не знаю что это...., где квадратики это стрелочки вверх или вниз.

Спасибо всем кто откликнется ...

С уважением Alex (2112)

 

Если бы ты сказал что за дизассемблер и где ты его взял - возможно это было-бы более понятно.

 

вот лучше посмотри

Posted

IDA - The Interactive Disassembler

Version 4.1.5.520

 

Скачал его с Teamrs

 

З.Ы.: ну неоткуда было больше...

Posted

Для Emmibox, может подскажешь какой лучше диассемблер использовать в моём случае...

 

С уважением Alex (2112)

Posted

Ида в данном случае катит только как средство для начинающих изучение. Там есть нескоторые геморои с загрузкой. Когда будешь серьъезно заниматся - напишешь свой дизасм.

Posted

И еще начинать надо не с дизассемблирования прошивки а с создания логической схемы контроллера. Для этого скачиваются PDF на все без исключения микросхемы находящиеся в контроллере и отрисовываются цепи: порт микропроцессора - драйвер (или cхема) - разъем контроллера -назначение пина... Сделать это надо для каждого порта микропроцессора и для каждого вывода разъема, чтоб потом представлять какой участок программы отвечает за какой драйвер и как связаны сигналы на входах-выходах разъема контроллера с соответствующими портами микропроцессора. Например какие делители стоят в цепях АЦП, за что отвечает каждый канал АЦП...

Posted

Сейчас многочлены ССТ быстренько скачают :D

а потом у себя втихоря начнут раздовать своим,

но ладно бы качали,а то потом будут орать и обвинять всех в воростве :twisted:

Guest letchik
Posted
Да за схемы - большой РЕСПЕКТ! 8) Не знаю как микас а от января реал схема.

 

Ну вот ,а ты ее на коленке рисовал :)

Posted

Ну так надо было - потому и рисовал. отрисованная свое дело сделала, по ней софт писался, присирались датчики и вообще всякие исследования производились. Хотя у меня нарисованно процентов 60 всего.

Posted

АВТОВАЗ нас здесь всех убьет.:twisted:

Схемы для Января-5.1 и МИКАС 7.1 лежат на FTP здесь Тех_документаци/По_модел/ВАЗ/

Качайте оттуда!!!

Posted

ващет авторские права на эту хрень принадлежат АО ЭЛКАР, а с учетом того что блоки сняты с пр-ва думаю всем по большому барабану, к тому-же схема не есть вещь секретная и может быть срисованна с платы при должном усердии :D

Posted

Для emmibox:

 

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

 

Не подскажешь как тарируются датчики, вопрос возник из за того, что меняя один параметр тарировочной кривой, то меняются все значения кривой... Они что по какому то мат закону все связаны...

 

С какой целью в 2001 году прошивку разбирал ... ну просто интересно...

 

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

 

С уважением Alex (2112)

 

P.S.: Считаешь что поставить ДАД дурацкая идея...

Posted

emmibox: а ты после диассемблера что нибудь правил ... или такой крутой алгоритм диассемблирования разработал для своего диассемблера... я так понял.

 

;ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї

;і 80c509 Disassembler v1.10 januar-5 і

;і © 1992-2004 EMMIBOX і

;АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ

 

С уважением Alex (2112)

Posted
Для emmibox:

 

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

Это спецом заточенный под C509 дизассемблер, он классический 2-х проходный, не интерактивный, написан он в своей базе еще в 1992, недавно я написал кусок который по сигнатурам создает файл определений полей данных под софт j5-vs, остальное делается ручками.

 

Не подскажешь как тарируются датчики, вопрос возник из за того, что меняя один параметр тарировочной кривой, то меняются все значения кривой... Они что по какому то мат закону все связаны...

О - это очень отдельная тема, связана она как ты понимаешь с глюкавостью софта от СТТ тим. Впрочем я уже упоминал об этом. Речь идет о тарировке ДМРВ я так понимаю ? :roll:

 

С какой целью в 2001 году прошивку разбирал ... ну просто интересно...

вот и мне просто интересно ;)

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

Да не проблема дизассемблировать несколько. Только вот я никак не допишу кусок который будет автоматические комментарии ставить. А без него туго...

 

С уважением Alex (2112)

 

P.S.: Считаешь что поставить ДАД дурацкая идея...

В массе - да. В одном отдельно взятом случае при наличии навыков знаний и сретств типа j5olt - нет.

Posted

Вот такую структуру я получил:

 

0000h - 00DDh: Таблица прерываний.

00DEh - 3540h: код.

3541h - 354Ch: данные.

354Dh - 4A59h: код.

4A5Ah - 4A61h: данные.

4A62h - 4DCEh: код.

4DCFh - 4E5Dh: данные.

4E5Eh - 4EF5h: код.

4EF6h - 5F4Fh: данные.

5F50h - 5FABh: данные (константы).

5FACh - 6050h: данные (инфа о версии ПО).

6051h - 6103h: данные (константы).

6104h - B1FFh: данные (калибровки).

B200h - B829h: код.

B82Ah - C0FFh: данные (одни нули).

C010h - C39Bh: код.

C39Ch - C5FFh: данные (вкл инфу о контроллере).

C600h - D974h: код.

D975h - D9B4h: данные.

D9B5h - DBECh: код.

DBEDh - DFFFh: данные (сегмент нулей).

E000h - E6A7h: код.

E6A8h - E6C5h: данные.

E6C6h - F24Dh: код.

F24Eh - FFFFh: данные (сегмент нулей и контрольная сумма).

 

Может прокомментируешь немного а ... emmibox

 

З.Ы. Очень хочется ДАД поставить ... но вот лучше кажется мне он чем ДМРВ ... точнее я думаю ... кстати ты говорил о сигнале с ДАД на осциллографе ... что из себя представляет.

Posted

Стоит заметить что в хелпе к ctp3 алгоритм описан более правильно и более полно чем в хелпе к ctp2. но все-же осталось еще немножко тонкостей.

Posted

ПРОСЬБА...

 

emmibox не поделишся диассемблером собственных разработок ... или не подскажешь что получше можно найти ... у меня есть парочка таких... ещё...

  • 2 weeks later...
Posted

Не поделюсь! Это инструмент, ничего сложного в нем нет, когда он тебе действительно будет нужен - ты его напишешь. В виде собственного дизассемблера или как плагин на движке IDA. Пока твои листинги говорят о том что ты не используешь и 1% возможностей IDA -следовательно такой дизассемблер тебе не нужен!

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.


×
×
  • Create New...