Сейчас на форуме: Rio, -Sanchez-, artyavmu (+6 невидимых)

 eXeL@B —› Софт, инструменты —› Вопросы по процессорным модулям в IDA
Посл.ответ Сообщение

Ранг: 4.6 (гость), 2thx
Активность: 0.010
Статус: Участник

Создано: 05 мая 2012 08:47 · Поправил: infini
· Личное сообщение · #1

Добрый день!
Возникла необходимость поковырять прошивку для проца Motorola Coldfire (MCF5475VR266). Проблема в том, что ИДА не все инструкции распознает. Проверял на 6.1, 5.1, 4.8. Поэтому вопросы:
1. В аттаче первые 4000 байт прошивки. Код начинается по адресу 0400h. Не распознаются инструкции по адресам, например, 0586h, 05A0h, 0756h, 0C2Eh, ... У кого есть лицензия, проверьте, так ли это, или я что-то делаю не так.

Code:
  1. ROM:00000572                 move.l  #$31010000,d0
  2. ROM:00000578                 move.l  d0,($38000524).l
  3. ROM:0000057E                 moveq   #$18,d0
  4. ROM:00000580                 move.l  d0,($3800052C).l
  5. ROM:00000580 ; ---------------------------------------------------------------------------
  6. ROM:00000586                 dc.$A3 ; г
  7. ROM:00000587                 dc.$79 ; y
  8. ROM:00000588 ; ---------------------------------------------------------------------------
  9. ROM:00000588                 move.w  d0,d4
  10. ROM:0000058A                 btst    d2,$203C(a0)
  11. ROM:0000058E                 move.w  d0,-(a0)
  12. ROM:00000590                 ori.b   #$C0,d0
  13. ROM:00000594                 move.w  d0,d4
  14. ROM:00000596                 btst    d2,$40(a0,d7.w)
  15. ROM:0000059A                 move.l  d0,($38000538).l
  16. ROM:0000059A ; ---------------------------------------------------------------------------
  17. ROM:000005A0                 dc.$A3 ; г
  18. ROM:000005A1                 dc.$79 ; y
  19. ROM:000005A2 ; ---------------------------------------------------------------------------
  20. ROM:000005A2                 move.w  d0,d4
  21. ROM:000005A4                 btst    d2,-$47(a4,d4.w*2)
  22. ROM:000005A8                 move.w  d0,d4
  23. ROM:000005A8 ; ---------------------------------------------------------------------------
  24. ROM:000005AA                 dc.b   5
  25. ROM:000005AB                 dc.$3C ; <
  26. ROM:000005AC                 dc.$42 ; B
  27. ROM:000005AD                 dc.$B9 ; ¦
  28. ROM:000005AE                 dc.$38 ; 8
  29. ROM:000005AF                 dc.b   0
  30. ROM:000005B0                 dc.b   5


2. Если думать о покупке Иды, получу ли я все чтоб из коробки работало, или надо будет руками допиливать? Как там с этим сейчас дела обстоят?
3. Нет ли у кого-нибудь исходников для модуля Motorola Coldfire под СДК 6.1, а то видимо придется руками писать и не дадите ли толковых ссылок, где про это почитать можно. Или может готовый модуль у кого есть.

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

1344_05.05.2012_EXELAB.rU.tgz - mcf5475_1000h.rom




Ранг: 199.6 (ветеран), 12thx
Активность: 0.10
Статус: Участник
www.uinc.ru

Создано: 05 мая 2012 19:37
· Личное сообщение · #2

6.2 - картина аналогичная. может быть модуль под предыдущие ревизии coldfier'ов



Ранг: 4.6 (гость), 2thx
Активность: 0.010
Статус: Участник

Создано: 05 мая 2012 22:44
· Личное сообщение · #3

Спасибо. Видимо да, но ColdFire® Family Programmer’s Reference Manual с сайта за 03/2005, а MCF547x Reference Manual за 04/2009... То есть модуль не менялся лет семь. А исходники модуля этого для СДК Ильфак хоть дает, или проще вообще забить на это?




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 05 мая 2012 23:21
· Личное сообщение · #4

говорят работает такая схема
1) вы покупаете оффициально IDA
2) пишите баг репорт по этому модулю
3) ильфак за какие то 500 евро фиксит его для вас
4) в дальнейшем модуль попадает в релиз или оффициал апдейт



Ранг: 72.1 (постоянный), 30thx
Активность: 0.050
Статус: Участник

Создано: 05 мая 2012 23:52
· Личное сообщение · #5

Вывод - проще написать самому, ведь даташит есть. А жадному ИльФАКу показать... ну вы в курсе. В сети были примеры модуля под NEC V20/V30
Как вариант - разобрать имеющийся и запатчить его, дополнив нужными инструкциями. Так надежнее, по-моему.



Ранг: 4.6 (гость), 2thx
Активность: 0.010
Статус: Участник

Создано: 06 мая 2012 00:11 · Поправил: infini
· Личное сообщение · #6

reversecode, я уже был обладателем лицензионной Иды, и багрепорт писал. Мне предложили на выбор:
- купить план поддержки за 10000 уе и специалисты все напишут сами,
- написать самому для себя плагин, который исправляет дефект,
- ждать, когда Ильфак его пофиксит.

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

Вопрос по существу: за какое время ильфак сейчас фиксит баги и есть ли какая-нибудь гарантия, что это вообще произойдет (пусть даже за 500 уе), а не будет отложено как низкоприоритетное до хрензнаеткогдарукидойдут релиза?

yagello
Про запатчить идея хорошая, только по даташиту пока не очень понятно, что же там нового



Ранг: 58.0 (постоянный), 13thx
Активность: 0.020.01
Статус: Участник

Создано: 06 мая 2012 05:24
· Личное сообщение · #7

Похоже там всего пары инструкций не хватает:
Code:
  1.      572:         203c 3101 0000   movel #822149120,%d0
  2.      578:         23c0 3800 0524   movel %d0,0x38000524
  3.      57e:         7018             moveq #24,%d0
  4.      580:         23c0 3800 052c   movel %d0,0x3800052c
  5.      586:         a379 3800 0528   mov3ql #1,0x38000528
  6.      58c:         203c 3100 0000   movel #822083584,%d0
  7.      592:         23c0 3800 0530   movel %d0,0x38000530
  8.      598:         7040             moveq #64,%d0
  9.      59a:         23c0 3800 0538   movel %d0,0x38000538
  10.      5a0:         a379 3800 0534   mov3ql #1,0x38000534
  11.      5a6:         42b9 3800 053c   clrl 0x3800053c
  12.      5ac:         42b9 3800 0544   clrl 0x38000544
  13.      5b2:         42b9 3800 0540   clrl 0x38000540
  14.      5b8:         7801             moveq #1,%d4
  15.      5ba:         4239 3800 8f08   clrb 0x38008f08
  16.      5c0:         701f             moveq #31,%d0
  17. ...
  18.      746:         71ae ffef        mvzb %fp@(-17),%d0
  19.      74a:         2d40 fff0        movel %d0,%fp@(-16)
  20.      74e:         700d             moveq #13,%d0
  21.      750:         b02e ffd3        cmpb %fp@(-45),%d0
  22.      754:         6606             bnes 0x75c
  23.      756:         a36e fff8        mov3ql #1,%fp@(-8)
  24.      75a:         6004             bras 0x760
  25.      75c:         42ae fff8        clrl %fp@(-8)
  26.      760:         4a84             tstl %d4
  27.      762:         6704             beqs 0x768
  28.      764:         79ae ffd5        mvzb %fp@(-43),%d4

6.1 не распознаёт mov3ql и mvzb.


 eXeL@B —› Софт, инструменты —› Вопросы по процессорным модулям в IDA
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати