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

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

den_po


Developer/Admin


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




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

den_po


Developer/Admin


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




 
  #102 [26.10.13, 20:54] Re: ARMPC   

 
пересобрал из последних версий fasm и fasmarm
fasm 1.71.14
fasmarm 1.30


Добавлено 26.10.13 22:29

ого, сегодня вышел фасм 1.71.15. опять обновил.




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

Legas


Expert


Регистрация: 30.4.09
Сообщений: 444
Репутация: 1422





 
  #103 [10.12.13, 17:54] Re: ARMPC   

 
при компиляции замейновых патчей:
flat assembler for ARM version 1.71.15 (1048576 kilobytes memory)
error: Fatal: Failure when processing line numbers.

при компиляции патча с movl:
flat assembler for ARM version 1.71.15 (1048576 kilobytes memory)
error: out of memory.




improved make.bat (armpc)
--
Sе C902 SW-R3EG004 AO
Sе w995 SW-R1HA035
k800, k850, c510, c905, w880, w910, w705, w715, j105
j20 cid81

den_po


Developer/Admin


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




 
  #104 [10.12.13, 21:47] Re: ARMPC   

 
не повторяется

позже попробую в семёрке, там уже бывали проблемы с релокейшнами екзешника

[ Редактировано den_po в 10.12.13 21:48 ]


Добавлено 11.12.13 00:25

не, не повторяется




promt is better than google translate

Legas


Expert


Регистрация: 30.4.09
Сообщений: 444
Репутация: 1422





 
  #105 [14.12.13, 01:15] Re: ARMPC   

 
работает, когда в имени асм менее 17 букв...




improved make.bat (armpc)
--
Sе C902 SW-R3EG004 AO
Sе w995 SW-R1HA035
k800, k850, c510, c905, w880, w910, w705, w715, j105
j20 cid81

Legas


Expert


Регистрация: 30.4.09
Сообщений: 444
Репутация: 1422





 
  #106 [19.12.13, 15:06] Re: ARMPC   

 
вернее, если полный путь с именем асм превышает примерно 32 символа, то не пашет....




improved make.bat (armpc)
--
Sе C902 SW-R3EG004 AO
Sе w995 SW-R1HA035
k800, k850, c510, c905, w880, w910, w705, w715, j105
j20 cid81

den_po


Developer/Admin


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




 
  #107 [07.02.14, 00:38] Re: ARMPC   

 
перевыложил. собрано с fasm 1.70.18 и fasmarm 1.31




promt is better than google translate

den_po


Developer/Admin


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




 
  #108 [28.05.15, 10:42] Re: ARMPC   

 
перевыложил. собрано с fasm 1.71.39 и fasmarm 1.33




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

den_po


Developer/Admin


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




 
  #109 [18.06.15, 20:38] Re: ARMPC   

 
fasm 1.71.39, fasmarm 1.34
заодно положил перл-скрипт для скачивания и компиляции последней версии fasmarm.
сам перл под винду - http://strawberryperl.com/




promt is better than google translate

den_po


Developer/Admin


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




 
  #110 [19.11.15, 17:39] Re: ARMPC   

 
fasm 1.71.48
fasmarm v1.37




promt is better than google translate
Спасибо сказали: Therion, sc0rpi0n3
Страница 11 из 11: « 1 ... 7 8 9 10 [11]



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

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