coolibin 0 24 декабря, 2007 Опубликовано 24 декабря, 2007 · Жалоба можно ли превратить код записаный в АТмега8 обратно в ASM? и, если да, то как это сделать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 0 24 декабря, 2007 Опубликовано 24 декабря, 2007 · Жалоба можно ли превратить код записаный в АТмега8 обратно в ASM? и, если да, то как это сделать? Если не залочен - считать программатором и загрузить полученный файл в аврстудию или IDA тоже умеет авр дизассемблировать Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
coolibin 0 24 декабря, 2007 Опубликовано 24 декабря, 2007 · Жалоба Я, извиняюсь, залочен это типа запрет на считывание? А счиывать программатором через avreal32? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 0 24 декабря, 2007 Опубликовано 24 декабря, 2007 · Жалоба Я, извиняюсь, залочен это типа запрет на считывание? Да если LOCK bits установлены то флеш не прочитать будет. А счиывать программатором через avreal32? Ну это смотря какой у вас программатор. Обычно тем софтом, которым шьете можно и обратно прочитать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Itch 0 24 декабря, 2007 Опубликовано 24 декабря, 2007 · Жалоба Совсем недавно возникла такая задача. Попробовал IDA - ужаснулся. Обилие совершенно непонятных настроек, нелогичная навигация по коду (ScrollBar работает непонятно как), половина кода вообще не была сконвертирована, а осталась как .dw ... Вобщем, не смог даже сохранить нормально файл ассемблированый. Дальше нашел программу ReAVR - все просто и понятно, так что рекомендую! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
coolibin 0 24 декабря, 2007 Опубликовано 24 декабря, 2007 · Жалоба Спасибо! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
coolibin 0 9 января, 2008 Опубликовано 9 января, 2008 · Жалоба А почему он не заменяет константы на имена портов? и где находится сегмент данных(.dseg)? имхо, если известны данные легче разбиратся с программой))) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
maik-vs 0 9 января, 2008 Опубликовано 9 января, 2008 (изменено) · Жалоба А почему он не заменяет константы на имена портов? и где находится сегмент данных(.dseg)? имхо, если известны данные легче разбиратся с программой))) А откуда он узнает, как Вы привыкли называть 38-ю ячейку памяти? :) В редактор, "найти - заменить все"... Потом дебаггер, точки входа 0-й адрес или другие, в зависимости от fuses "BLB" контроллера. И вперёд. :smile3046: Изменено 9 января, 2008 пользователем Maik-vs Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 0 10 января, 2008 Опубликовано 10 января, 2008 · Жалоба А почему он не заменяет константы на имена портов? и где находится сегмент данных(.dseg)? имхо, если известны данные легче разбиратся с программой))) Так для этого и нужна IDA, там можно все это сделать, и навигация по коду будет очень удобная, перекресные ссылки... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
coolibin 0 10 января, 2008 Опубликовано 10 января, 2008 (изменено) · Жалоба А откуда он узнает, как Вы привыкли называть 38-ю ячейку памяти? :) ... Например, значение PORTD для atmega16 известно, он(ReAVR) мог бы и подставить! Так для этого и нужна IDA, там можно все это сделать, и навигация по коду будет очень удобная, перекресные ссылки... А .dseg? .dseq IDA покажет? Изменено 10 января, 2008 пользователем coolibin Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
coolibin 0 10 января, 2008 Опубликовано 10 января, 2008 · Жалоба а где скачать IDA? а то я скачал, а она для мобилок( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
m16 0 10 января, 2008 Опубликовано 10 января, 2008 · Жалоба http://ida470.narod.ru/ правда старенькая , но для авра выше крыши Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
maik-vs 0 10 января, 2008 Опубликовано 10 января, 2008 · Жалоба Например, значение PORTD для atmega16 известно, он(ReAVR) мог бы и подставить! А .dseg? .dseq IDA покажет? Ну, если будет знать, что это для меги16, то таки да. Вы знаете, замена констант - это 2% от всей работы. Вам же надо понять алгоритм, да? А понятных названий для регистров нет, для ячеек памяти нет; где массив, где переменная? Программа писалась на С или ассемблере или ещё на чём? Всё это нужно сделать головой и руками в процессе копания в коде. И никакая IDA Вам тут не поможет. Так что успехов в труде. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Itch 0 10 января, 2008 Опубликовано 10 января, 2008 · Жалоба Не всегда нужно разобраться в алгоритме, часто просто надо поменять какую-нибудь константу. В моем случае надо было самодельный AVR JTAG заставить работать с нестандартным кварцем. Нашел где записывается регистр UBRR, нашел таблицу значений битрейтов, поменял - и все работает! :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
coolibin 0 11 января, 2008 Опубликовано 11 января, 2008 · Жалоба Ладно, с константами согласен можно и ручками, а вот данные, строки текста, например, ох как помогают в разборе программы, а ReAVR их походу не распознает(((( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться