Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Disasm 89c5131A
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > MCS51
Nub
Добрый день.
Занимаюсь программным обеспечением, а железку для нашего ПО другая контора
разрабатывала - из исходников тока бин sad.gif надо кое что в самой проге поправить
и соответственно хочется знать как работает прошивочка.

Ребята, подскажите пожалуйста, чем лучше всего дизассемблировать
сабж (имеется бинарник из процика), чтобы в последствии можно было
запустить на каком нибудь симуляторе (если подскажите каком буду
втройне благодарен)?

Открывал бинку ИДой - не очень-то как-то понятно sad.gif хоть и с ассемблером я "на ты"...
Открывал как Intel 51 8051 - AT89S8252 - он единственный с 256рам идет.
Правильно-нет?

Подскажите одним словом


Спасибо.
матроскин
Все правильно, только потом начинается собственно работа по реверсу.
Если с АСМом на ТЫ, то проблнм не должно быть! smile.gif
kolobok0
Цитата(Nub @ Mar 29 2010, 01:02) *
...чем лучше всего дизассемблировать...


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

удачи вам
(круглый)
ЗЫ
Уровень "на ты с азмом" подразумевает проблемы с поиском только софта декодера плюс грамотное описание камня. И то это чисто техническая, временная трабла(гугл рулит). всё остальное - азм он и в африке азм.
ASN
Nub
У Keil очень неплохой симулятор. Попробуйте поискать что-нибудь их старых (типа FD51).
Если в устройстве используется развитая периферия, то без симулятор, IMHO, будет сложно разобраться даже с IDA.
Nub
Спасибо что откликнулись ребята.

Значит в кайле я закрутил этот хекс - настроил передачу данных по юарт (ASSIGN, MODE), и через терминалку закидваю байтики в прошивку - смотрю что и как происходит, но это все есс-но мало что дает sad.gif потому что прога 64 кб и алгоритмы обработки данных очень сложные.

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


Все осложняется еще тем, что приложение работает напрямую с усб, т.е. в иде вижу что для продолжения проги на определенном этапе опрашивается бит в сфре о начале работы усб, а откуда ему там взяться sad.gif Может быть как то можно организовать полноценно работу проги с кайлом напрямую???

Например, вывести прогу на левый vid & pid - прога еще создает виртуальный компорт. и вот этот виртуальный компорт соединить с компортом кайла??? реально?
редактор
На сколько я знаю этот каень (AT89S8252) USB там нет и в помине
Объем 64К программы только если используется внешняя память (свих там не то 8 не 12 К)
А установить бит в Кеqле во время симуляции просто, там есть поддержка командной строки
Достаточно в командной строке набрать что-то вроде
MyBit = 1 (или 0 по желанию)
Сформировать прерывание сложнее поскольку перефирия не всегда поддерживается.
НО если присвоить регистру PC (Programm Counter) то сработает (на 3-м Кейле прокатывало)
С возвратом сложнее, поскольку стек не сохраняется, но это опять таки ручками можно сделать :-)
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.