Приветствую! Ковыряю файл прошивки, он не собирается после дизесамблирования Код (Text): tmpbin:354: error: mismatch in operand sizes tmpbin:2800: error: mismatch in operand sizes tmpbin:3956: error: mismatch in operand sizes Код (Text): 354: jng word 0xf7d5 2800: jo word 0xfa2b 3956: ds jo word 0xf02 прошу помощи вот исходный файл http://zalil.ru/31627663 вот дизасм http://zalil.ru/31627671 вот дизасм через awk прогнанный http://zalil.ru/31627668 то что ковыряю - это файл прошивки на usb flash Код (Text): Transcend JF V60 4 Gb 058F 6387 AU6982 SAMSUNG K9HBG08U1M пользуюсь nasm, ну и соответственно disasm P.S. просто очень рад бы был если бы кто объяснил как туда запуск своего приложения добавить, или чирканул код(в этом файле как я понимаю описание фс и тд, вот мне бы сразу после инициализации запустить своё приложение) P.S.pt2 конечно же понимаю почему не собирается, но своими силами это исправить не могу
И nasm и disasm предназначены для процессоров семейства x86 от Интела. Прошивка, которую вы ковыряете, по-моему, для процессора AlcorMP - у него совсем другая система команд. Нет там ни файловой системы и никаких приложений. Это вам не модем с прошивкой на 1 Мб и более. Там примитивная посекторная запись с заголовками и каталогом секторов. В заголовке номер реального сектора(чтобы не долбить одно и тоже место сектора "плавают" по флеш-памяти) и контрольная сумма. Есть документ, где это описано - где-то валялся. Файловую систему и почее на флешке делают и поддерживают внешние программы - внутре у нее ничего сложного нет.
Разобрать и собрать можно. На моем сайте как раз такой дизасм лежит. Только в чистом виде, для анализа кода это мало пригодно. Разве что парочку инструкций поправить и не более.