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

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

den_po


Developer/Admin


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




 
  #51 [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

awg


Patcher/Moder


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




 
  #52 [21.04.11, 13:54] Re: ARMPC   

 
iksrman, в бат файле есть такая строка:
"%curpath%\FASMARM.EXE" %1 temp.bin

напиши после нее 2>log.txt, т.е.:
"%curpath%\FASMARM.EXE" %1 temp.bin 2>log.txt

возможно больше будет в лог падать




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

pavelsh


Expert


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




 
  #53 [21.04.11, 13:58] Re: ARMPC   

 
awg, мне кажется, в лог падает все, что выводится в командной строке... Или я неправ?




T700 R3EG004

iksrman


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


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




 
  #54 [23.04.11, 03:34] Re: ARMPC   

 
awg, после того как добавляю 2>log.txt в данную строку, перестают компилиться даже те исходники, которые до этого нормально компилировались. Вот что пишет Код:
target = C510_R1HA035
elf2vkpex by den_po v1.01 (Feb 19 2011)
unable to read 'temp.bin' 

Соответственно с исходниками, которые и ранее не давали результата,компилятор выдает то же самое.
pavelsh, если таргет оставляю пустым и прописываю принудительно полный адрес до проши, ничего не меняется.


Добавлено 23.4.11 08:39

Нужно ли что то менять в этом блоке батника? Код:
if exist %firmwares%\%target%\phone_emp_app.cxc set cmdlineargs=%cmdlineargs% -f%firmwares%\%target%\phone_emp_app.cxc
if exist %firmwares%\%target%\phone_app.cxc set cmdlineargs=%cmdlineargs% -f%firmwares%\%target%\phone_app.cxc
if exist %firmwares%\%target%\phone_acc.cxc set cmdlineargs=%cmdlineargs% -f%firmwares%\%target%\phone_acc.cxc
if exist %firmwares%\%target%\%target%.mbn set cmdlineargs=%cmdlineargs% -f%firmwares%\%target%\%target%.mbn
if exist %firmwares%\%target%.mbn set cmdlineargs=%cmdlineargs% -f%firmwares%\%target%.mbn
if ""=="%cmdlineargs%" set cmdlineargs=-f%firmwares%\%target%.raw



den_po


Developer/Admin


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




 
  #55 [30.07.11, 02:28] Re: ARMPC   

 
экспериментальная фикс для юникода. в конструкции DU нужно отдавать текст в кодировке UTF-8, скомпилится в нормальный UCS2.




promt is better than google translate
Спасибо сказали: MAVER145, pavelsh

den_po


Developer/Admin


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




 
  #56 [31.07.11, 01:05] Re: ARMPC   

 
второй экспериментальный фикс. исправлена работа с эльфами в windows 7.




promt is better than google translate
Спасибо сказали: E1kolyan

den_po


Developer/Admin


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




 
  #57 [31.07.11, 11:13] Re: ARMPC   

 
автор fasmarm добавил фикс для эльфов в компилер, посему в armpc теперь fasmarm 1.23, построенный с fasm 1.69.32.




promt is better than google translate

den_po


Developer/Admin


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




 
  #58 [02.08.11, 15:16] Re: ARMPC   

 
обновил elf2vkpex в пакете




promt is better than google translate
Спасибо сказали: MAVER145

den_po


Developer/Admin


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




 
  #59 [03.08.11, 14:19] Re: ARMPC   

 
что ж вы стесняетесь багрепорты писать? =)
обновление http://mobilefree.justdanpo.ru/newbb_plus/viewtopic.php?topic_id=3183&post_id=204995#204995




promt is better than google translate

E1kolyan


Developer


Регистрация: 8.7.07
Сообщений: 663
Репутация: 11934
Откуда: Челябинск




 
  #60 [03.08.11, 15:20] Re: ARMPC   

 
den_po, видимо только я обновляюсь =)





Sony Ericsson C905 SW-R1FA035
Sony Ericsson K810 SW-R8BF003
Sony Xperia™ S
ZTE Blade X3

bill_kevin


Patcher


Регистрация: 1.11.10
Сообщений: 80
Репутация: 979
Откуда: Guatemala




 
  #61 [17.09.11, 06:30] Re: ARMPC   

 
i can't compile how fix to compile??



C:\armpc>make add_on_for_show_clock.asm W580_R6CA001_MAIN_ORANGE.raw
target = W580_R6CA001_MAIN_ORANGE.raw
flat assembler for ARM version 1.69.32 (1070063 kilobytes memory)
5 passes, 888 bytes.
elf2vkpex by den_po v1.03 (Aug 3 2011)
unable to read 'C:\armpc\W580_R6CA001_MAIN_ORANGE.raw.raw'



[ Редактировано bill_kevin в 16.9.11 21:40 ]




W200->W300->W810->W580
Marielina te amo como a mi Sе W580 SW-R6CA001
Страница 6 из 11: « 1 2 3 4 5 [6] 7 8 9 10 11 »



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

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