Все для Sony Ericsson, патчи, эльфы, моддинг, прошивка
  
Логин: Пароль: Запомнить: Привет гость! Зарегистрируйся или авторизируйся для получения доп. возможностей!
Разделы
PDA версия сайта
TrackIDentify
Новости
Статьи
Файлы
Патчи
Патчи A2
Патчи db2020
Эльфы
Исходники эльфов
Wiki
Форум
Опросы
Обратная связь
Развернуть/Свернуть
 
Развернуть/Свернуть

ARMPC : Патчестроение : Патчи : Форум : Для Sony Ericsson патчи эльфы моддинг прошивка
/  Список форумов
   /  Патчи
      /  Патчестроение
   /  ARMPC
На печать 
Правила 
Страница 5 из 11: « 1 2 3 4 [5] 6 7 8 9 ... 11 »

den_po


Developer/Admin


Регистрация: 27.3.06
Сообщений: 3278
Репутация: 10763
Откуда: Чебоксары




 
  #41 [08.11.09, 19:13] ARMPC   

 
Так уж сложилось, что отдельной темы для armpc на форуме нет. А пакет время от времени обновляется, и обновления остаются многими незамеченными.

ARM Patch Compiler - набор для компиляции патчей. Делал я его для себя, делал так, как удобно работать мне.
В качестве компилятора в пакете используется FASMARM. Обновления и исходники можно взять на http://arm.flatassembler.net/ (следует учесть, что компилятор в armpc может отличаться от того, что на официальном сайте).

Дальше пойдёт набор бессвязных фактов =)

- Многие не знают, но fasmarm вполне можно использовать и вне armpc, он даёт на выходе бинарник.

- make.bat с давних пор нужно передавать максимум два параметра - имя исходника и имя raw/cxc файла. Базовый адрес передавать не нужно, он определяется автоматически. Если внутри make.bat указать полное имя наиболее часто используемого raw/cxc файла, при запуске make.bat достаточно указать только имя исходника.

- Файл x.inc содержит описания макросов. ADR и MOVL - это не команды, это макросы. Некоторые ключевые слова в x.inc заменяются на макросы (code16, code32, ldr, org), поэтому комплияция со включением x.inc и без него даёт разный результат.

- Макросы в fasmarm, в отличие от команд, регистрозависимы. Макросы ldr/code16/code32/movl продублированы и в верхнем регистре, а вот org нет. Поэтому если вы собираете патч, используйте org, а если вы хотите получить простой бинарник, вам нужен ORG.

- В исходниках можно использовать переменные системного окружения (свойства системы, дополнительно, переменные среды). Для себя я добавил переменную FASMINC, в значении которой указал полный путь к каталогу, где лежит armpc (помните, для вступления действия в силу иногда может потребоваться перезагрузка). Так можно компилировать исходники, лежащие в любых папках, без указания полного пути к x.inc.
Код:
include "%fasminc%\x.inc"


FAR+ARMPC
Мало кто использует FAR Manager в повседневности, а вот я в нём постоянно. И компиляцию запускаю из FAR так, как мне удобно. А конкретней - простое нажатие enter на исходнике собирает патч для z610, нажатие ctrl+pgdn выдаёт меню со списком прошивок, для которых будет собираться патч. Делается оно легко:

f9 -> commands -> file associatoins -> ins -> маска файла *.asm -> описание какое вам нужно -> нужная команда на выполнение для enter и ctrl+pgdn.

У меня команды выглядят примерно так:
Код:
make.bat "!.!" C702_R3EF001

или для ручного ввода имени таргета:
Код:
make.bat "!.!" !?$armpc$target?Z610_R6DA001!

Нужно учесть, что если для типа файла есть только одно действие (как у меня на enter), то оно выполняется молча, а если несколько разных (ассоциация с *.asm добавлена несколько раз, команды на выполнение для ctrl+pgdn отличаются), то показывается меню.

В последней версии armpc компилятор чуть поправлен:
- теперь он понимает movs/cmps/adds и прочие "s" в thumb безо всяких макросов (arm режим в патчах используется нечасто, но кто-то мог допустить ошибку, убирая s у арм-команд);
- ldr и adr работают с адресами без скобок, макрос для этого больше не нужен;
- du в качестве аргумента должны подаваться строки в utf8 (т.е. сам исходник при этом должен быть сохранен в utf8 без BOM).

BOM - специальный маркер, позволяющий другим приложениям однозначно идентифицировать этот файл. В частности сохранить файл с BOM или без BOM можно во встроенном редакторе FAR и в notepad.

Скачать текущую версию


Про использование ещё раз: 
маска файла *.asm -

[ Редактировано den_po в 28.5.15 13:50 ]




promt is better than google translate
Спасибо сказали: UltraShot, -DeJaVu-, 273308715, MNS81, MahmudS, DuXeN0N, Olegat0r, ipod, Se-MaG, Slawwan, Ax, JohnNorth, Zormax, SEVENI, Alex1992, MAVER145, PRO100light, vodoo999, Blend, Alex_E, Oganyan-Arthur, TahaSpawn, BigHercules, Therion, Pixel, russ123, H0sseiN, KIBER-DEMON, Melodic_Death, clisto, Vov4ик, farid, LiNkMaN, a6b6

pavelsh


Expert


Регистрация: 1.3.09
Сообщений: 195
Репутация: 542
Откуда: Ижевск




 
  #42 [16.04.11, 14:29] Re: ARMPC   

 
MiFa, Umieść w Код:
if %firmwares%a==a set firmwares=*folderze z firmware*
set target=*pozostaw puste*




T700 R3EG004
Спасибо сказали: MiFa

den_po


Developer/Admin


Регистрация: 27.3.06
Сообщений: 3278
Репутация: 10763
Откуда: Чебоксары




 
  #43 [16.04.11, 16:55] Re: ARMPC   

 
MiFa пишет:
i still can't use last version.
Now i have
Код:
D:\armpc>make patchw902.asm w902.cxc
target = w902.cxc
flat assembler for ARM version 1.69.25 (1711227 kilobytes
5 passes, 1232 bytes.
elf2vkpex by den_po v1.01 (Feb 19 2011)
unable to read 'D:\svn\auto\nightbuilds\data\w902.cxc.raw'

Can someone explain me, what i do wrong?

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




promt is better than google translate

iksrman


Пользователь


Регистрация: 25.10.09
Сообщений: 88
Репутация: 915
Откуда: Братск




 
  #44 [19.04.11, 05:14] Re: ARMPC   

 
Че то совсем не въезжаю... Лог:
Код:
target = C510_R1HA035_MAIN_GENERIC_KT_RED53 ;(имя папки с файлами прошивки)
flat assembler for ARM  version 1.69.25  (886480 kilobytes memory)
5 passes, 1072 bytes.
elf2vkpex by den_po v1.01 (Feb 19 2011)
unable to read 'D:\target\C510_R1HA035_MAIN_GENERIC_KT_RED53.raw'

В папке с компилятором появляется только temp.bin



awg


Patcher/Moder


Регистрация: 10.1.08
Сообщений: 604
Репутация: 2795
Откуда: г.Владимир




 
  #45 [19.04.11, 08:02] Re: ARMPC   

 
а чо непонятного, не может прочитать этот файл D:\target\C510_R1HA035_MAIN_GENERIC_KT_RED53.raw




К550->W610->K700->C901->Xperia Sola->Meizu MX2->Meizu M3 Note->Xiaomi Redmi Note 4x (Mido)->Redmi Note 7Pro (Violet)

iksrman


Пользователь


Регистрация: 25.10.09
Сообщений: 88
Репутация: 915
Откуда: Братск




 
  #46 [19.04.11, 08:36] Re: ARMPC   

 
А почему не может? Извлекал из mbn с помощью read3150_0.7. Phone_app.cxc к примеру получился рабочий... Причем в логе компилятор по очереди пишет что не может прочитать то raw то mbn то phone_emp_app.cxc. Все файлы в соответствующей папке присутствуют.



awg


Patcher/Moder


Регистрация: 10.1.08
Сообщений: 604
Репутация: 2795
Откуда: г.Владимир




 
  #47 [19.04.11, 09:21] Re: ARMPC   

 
мдя. Ты лучше расскажи мне че ты пытаешься компилировать патч? Тем что здесь выложено?
Если да, то читай пока не дойдет




К550->W610->K700->C901->Xperia Sola->Meizu MX2->Meizu M3 Note->Xiaomi Redmi Note 4x (Mido)->Redmi Note 7Pro (Violet)

iksrman


Пользователь


Регистрация: 25.10.09
Сообщений: 88
Репутация: 915
Откуда: Братск




 
  #48 [19.04.11, 11:18] Re: ARMPC   

 
Тем что выложено. Уже каждую букву изучил. Судя по всему решение в посте #24... В make.bat вписал Код:
 if %firmwares%a==a set firmwares=D:\target
set target=C510_R1HA035_MAIN_GENERIC_KT_RED53

Видимо еще что то нужно. А что - не пойму.



den_po


Developer/Admin


Регистрация: 27.3.06
Сообщений: 3278
Репутация: 10763
Откуда: Чебоксары




 
  #49 [19.04.11, 11:23] Re: ARMPC   

 
24 пост содержит всю необходимую инфу. единственное, что можно добавить — mbn от а2 пакет не хавает. но и это я вроде упоминал в топике.




promt is better than google translate

iksrman


Пользователь


Регистрация: 25.10.09
Сообщений: 88
Репутация: 915
Откуда: Братск




 
  #50 [19.04.11, 11:46] Re: ARMPC   

 
Спасибо.Все решил. Нужно было всего лишь то удалить из таргета mbn и raw файлы.


Добавлено 19.4.11 19:33

Правда теперь почему то исходники через один компилятся. Хотя скачал их из соответствующей ветки, просто чтоб потренироваться. В логе никаких ошибок, а патч не появляется. В чем может быть проблема? Видимо в самих исходниках?


Добавлено 20.4.11 22:36

Код:
target = C510_R1HA035
flat assembler for ARM  version 1.69.25  (922581 kilobytes memory)

это в логе. А патч то почему не появляется?

[ Редактировано iksrman в 20.4.11 22:39 ]



pavelsh


Expert


Регистрация: 1.3.09
Сообщений: 195
Репутация: 542
Откуда: Ижевск




 
  #51 [21.04.11, 13:41] Re: ARMPC   

 
iksrman, в исходнике была бы проблема, компилятор бы тоже об этом сообщил. Копайся в make.bat и его адресах еще. И лучше не подстраиваться на то, что там есть, а менять путь на свой. Да и target лучше пустым оставить, в firmwares поставить путь до папки, где лежит файл проши.




T700 R3EG004
Страница 5 из 11: « 1 2 3 4 [5] 6 7 8 9 ... 11 »



  • Поиск
  • Права
Вы не можете начинать темы.
Вы не можете редактировать свои сообщения.
Вы не можете создавать опросы.
Вы не можете вкладывать файлы в сообщения.
Вы не можете отвечать на сообщения.
Вы не можете удалять свои сообщения.
Вы не можете голосовать.

Главная Новости Статьи Файлы Патчи Форум Опросы PDA
- Генерация страницы: 0.17 секунд | 11 Запросов | HTML: 47.14 КБ -