Перейти к содержанию
    

дизассемблер MSP430X простой

MSP430X - MSP430F2618

Есть ли такое, без наворотов. Не для взлома, а для анализа своего кода.

Подобное старому-доброму досовскому debug, команда U.

Если с исходником - совсем хорошо былобы.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

MSP430X - MSP430F2618

Есть ли такое, без наворотов. Не для взлома, а для анализа своего кода.

Подобное старому-доброму досовскому debug, команда U.

Если с исходником - совсем хорошо былобы.

 

В IAR чем листинг (.lst) не устраивает?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

MSP430X - MSP430F2618

Есть ли такое, без наворотов. Не для взлома, а для анализа своего кода.

7 лет назад добавлял поддержку этого ядра в проект mspgcc на sourceforge. Правда при перетаскивании в основную ветку binutils/gcc мое имя в список авторов не попало - бывает. Недавно смотрел - мой код еще там. Утилита objdump позволяет генерить дизассемблер:

msp430-objdump -h -dSC input.elf output.lss

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В IAR чем листинг (.lst) не устраивает?

 

Окно маленькое. А кода достаточно много, за 100к, плюс все это под scmRTOS.

3 потока. В безобидном, на мой взгляд, месте происходит глюк с рестартом процессора.

Вот я и докатился до желания полазить в бинарном коде.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Окно маленькое.

??????????

Листинг - текстовый файл: текстовый редактор - на весь экран!

 

Вот я и докатился до желания полазить в бинарном коде

 

В этом кроме пользы (во всех смыслах) - никакого вреда.

Изменено пользователем Obam

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Когда-то писал поддержку этого ядра в binutils. Недавно смотрел - мой код еще там. Утилита objdump позволяет генерить дизассемблер:

msp430-objdump -h -dSC input.elf output.lss

 

Спасибо, то что надо.

 

??????????

Листинг - текстовый файл: текстовый редактор - на весь экран!

 

 

 

В этом кроме пользы (во всех смыслах) - никакого вреда.

 

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

Листинг есть продукт работы компилятора. Мне надо смотреть уже

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

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

примерно так (этот код не для msp430):

    INLINE void set_prio_tag(volatile TProcessMap & pm, const TProcessMap PrioTag) { pm |=  PrioTag; }
  102a78:    6b62          ldr    r2, [r4, #52]; 0x34
  102a7a:    431a          orrs    r2, r3
  102a7c:    6362          str    r2, [r4, #52]; 0x34
    INLINE void clr_prio_tag(volatile TProcessMap & pm, const TProcessMap PrioTag) { pm &= ~PrioTag; }
  102a7e:    6842          ldr    r2, [r0, #4]
  102a80:    4032          ands    r2, r6
  102a82:    6042          str    r2, [r0, #4]

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для самообразования: binutils - это от gcc? На вход ему .elf. А что в IAR-е надо выбрать?

 

post-83663-1432209465_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для самообразования: binutils - это от gcc? На вход ему .elf. А что в IAR-е надо выбрать?

 

post-83663-1432209465_thumb.png

 

да, я эту утилиту взял из mspgcc-20120406-p20120911.zip

Ест-но она расчитана для работы в среде GCC и с файлами GCC.

Файлы XXX.R43 (Texas) она не поймет.

Опции линкера дают формат выходного бинарного файла (образ флеша). Объектные имеют формат XXX.R43 без вариантов.

Могобыть конвертер есть из XXX.R43 в XXX.obj или xxx.elf

 

 

Изменено пользователем k155la3

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так IAR может сгенерить и .elf (я для того скриншот и привёл). Опция какая подходит чтоб отладочная информация сохранилась (см. скриншот).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так IAR может сгенерить и .elf (я для того скриншот и привёл). Опция какая подходит чтоб отладочная информация сохранилась (см. скриншот).

 

Да, Вы правы. Я недосмотрел.

 

Да, Вы правы. Я недосмотрел.

Родило elf для релиза, с подопцией "No debug information" (Format variant)

 

Изменено пользователем k155la3

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для MSP430? Точно?

RAM:0200;
RAM:0200; +-------------------------------------------------------------------------+
RAM:0200; |   This file has been generated by The Interactive Disassembler (IDA)    |
RAM:0200; |           Copyright (c) 2011 Hex-Rays, <[email protected]>         |
RAM:0200; |              License info:    B3-432E-F558-21                 |
RAM:0200; |                 Ilfak Guilfanov                 |
RAM:0200; +-------------------------------------------------------------------------+
RAM:0200;
RAM:0200; Input MD5   : 498886FC9CC7CE947849639E162E45B0
RAM:0200; Input CRC32 : 6FFD6C67
RAM:0200
RAM:0200
RAM:0200; Processor:         msp430
RAM:0200; Device:         MSP430F1121
RAM:0200; Target assembler: MSP430 IAR    Assembler
RAM:0200
RAM:0200; ===========================================================================
RAM:0200
RAM:0200; Segment type: Pure data
RAM:0200 byte_200:     DS 100h        ; 0; DATA XREF: sub_F980r
RAM:0200                    ; sub_F980+8r    ...
RAM:0200; end of 'RAM'
RAM:0200
INFO:1000; ===========================================================================
INFO:1000
INFO:1000; Segment type: Pure data
INFO:1000 byte_1000:      DS 100h         ; 0;    DATA XREF: sub_F55E:loc_F5CAr
INFO:1000                     ; sub_FB34+44w ...
INFO:1000; end    of 'INFO'
INFO:1000
CODE:E000; ===========================================================================
CODE:E000
CODE:E000; Segment type: Pure code
CODE:E000          DS 10A0h         ; 0
CODE:E000; end    of 'CODE'
CODE:E000
seg003:0000F0A0; ---------------------------------------------------------------------------
seg003:0000F0A0; File Name   :    D:\GasCnt\cgV3108n.hex
seg003:0000F0A0; Format      :    Intel Hex Object Format

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...