Rescor Опубликовано 2 июня, 2023 Жалоба Поделиться Опубликовано 2 июня, 2023 Для начала качаем исходники: https://github.com/Rescor/SE_ELFS Нам потребуется содержимое папок ElfPack (со всеми вложенными папками), include, C++ с сохранением расположений и названий папок. Т.е. у вас должно получится следущее, в одном месте должны находиться: -папка C++ и всё её содержимое -папка ElfPack и всё её содержимое -папка include и всё её содержимое Дальше качаем компилятор - урезанную версию IAR из вложений.IAR442A.exe Распаковываем. Теперь находим файл ElfPack.eww в папке ElfPack и ассоциируем его для простоты дальнейших действий с IAR. Далее при двойном клике на ElfPack.eww должно открыться окно программы. Переходим в меню Project, выбираем пункт Edit Configurations и в диалоговом окне выбираем ту модель телефона с той прошивкой, которые вам нужны, жмем "ОК". Далее заходим все в то же меню Project и выбираем пункт Rebuild All. Если все хорошо, то внизу в окне с логом будет примерно следующее: Total number of errors: 0 Total number of warnings: 7 Теперь у вас в папке ElfPack появились еще папки: Debug, settings, W610_R6BC002 (у вас свое), и файл ElfPack.dep. Заходим в: W610_R6BC002\Exe\ и видим там файл ElfPack.elf Теперь нам нужно перевести файл ElfPack.elf в формат *.vkp. Переходим в ElfPack\_Utils. Кидаем в нее файл *.raw от нужной вам прошивки, в моем случае w610_R6BC002.raw, и скомпилированный IAR'ом ElfPack.elf из папки W610_R6BC002\Exe\ (см. выше). Теперь редактируем блокнотом файл make.bat (в моем случае так): elf2vkp ElfPack.elf xxx.vkp "C:\Comp\ElfPack\_Utils\w610_R6BC002.raw" 0x44140000 cnv 0x44140000 xxx.vkp out.vkp Сохраняем его (обращаем внимание на выделенный текст, где 0x44140000 начальный адрес вашей прошивки. Его можно узнать с помощью этой софтины). Всё. Теперь, если всё правильно сделали, остаётся только двойным кликом щелкнуть по make.bat, и у вас появятся два файла: out.vkp и xxx.vkp out.vkp - это и есть эльфпак для вашего телефона. После всего проделанного папки Debug, settings, W610_R6BC002 (у вас своё), и файл ElfPack.dep можно удалить. Теперь относительно расположения папок ZBin, Deamons, Config, Ini. Для определённых телефонов это расположение может отличаться друг от друга. Но начиная с папки other расположение одинаковое. Заходим в ElfPack\Target\ и ищем файл с названием вашего телефона и вашей прошивки, в моем случае W610_R6BC002.h. Открываем его блокнотом и видим примерно следующее (показываю только то, что имеет смысл по данному примечанию): .... #define PATH_ELF_ROOT_INT (L"/usb/other") #define PATH_ELF_ROOT_EXT (L"/card/other") #define PATH_ELF_INT (L"/usb/other/ZBin") #define PATH_ELF_EXT (L"/card/other/ZBin") #define PATH_ELF_DAEMONS_INT (L"/usb/other/ZBin/Daemons") #define PATH_ELF_DAEMONS_EXT (L"/card/other/ZBin/Daemons") #define PATH_ELF_CONFIG_INT (L"/usb/other/ZBin/Config") #define PATH_ELF_CONFIG_EXT (L"/card/other/ZBin/Config") #define PATH_INI (L"/usb/other/ini") #define PATH_DEFAULT (L"/usb/other") .... Это и будет правильное расположение ваших папок. Готовые эльфпаки можно найти тут: http://justdanpo.ru/elfpack Для телефонов на платформе DB2010 надо брать *.raw с замейном, иначе при перегонке ElfPack.elf в *.vkp вылетит ошибка. Замейн в прошивку можно добавить с помощью программы Recovery BIN Lite, инструкция и сама прога находятся здесь. Потом полученный файл уже перегнать в *.raw. Также перегнать файл Elfpack.elf в формат *.vkp можно несколько проще, за что говорим спасибо INFerno--: Цитата Для компиляторщиков: сделал elf2vkp специально для SE, никаких махинаций с замейном на DB2010 делать не надо, автоматически добавляется модель телефона и версия прошивки в выходной файл, так же можно добавлять комментарии из файла, прошивка используется BABE, а не RAW, базы тоже вводить не надо. Usage: elf2vkp.exe elfname.elf main.mbn [comment.txt] elfname.elf - Собственно сам эльф main.mbn - Файл прошивки (BABE) comment.txt - Файл с комментариями (можно не указывать) elf2vkp.zip И ещё одна версия конвертатора: elf2vkpex.zip Примеры использования: elf2vkpex -eELFPACK.ELF -fPHONE_EMP_APP.CXC -fPHONE_APP.CXC elf2vkpex -eELFPACK.ELF -fPHONE_APP.CXC elf2vkpex -fFILE.MBN -eELFPACK.ELF elf2vkpex -fFILE.RAW -eELFPACK.ELF -v Порядок следования аргументов неважен. Автор: https://mobilefree.justdanpo.ru/newbb_plus/viewtopic.php?topic_id=3183 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.