IronMaster
VIP Developer
Регистрация: 16.5.06 Сообщений: 1135 Репутация: 8514 Откуда: Пермь
#1691 [29.01.07, 20:10] Учимся писать патчи
Цель этой темы помочь разобраться начинающим (не только) патчеписателям в этом не легком деле. Задавайте свои вопросы. По возможности будем отвечать. Только не надо лить воду. Задаете конкретный вопрос, получаете конкретный ответ.
Итак немного информации:
1. Ниже прикреплены файлы:
- Формат VKP-патчей
- Краткая инструкция (пример) портирования патча от
Joker_XT - Вся графика телефона, если нужно знать код картинки (файлы
здесь )
- Исходник патча "Мигание фонаря при входящем" с комментариями
- Исходники патчей на управление гарнитурой v.4 для К750 и W800
ida_babeldr.rar - Теперь не нужно конвертировать прошивку в raw, не нужно выбирать вручную тип процессора и задавать адреса.
© den_po 2. Есть тема уже с картинками и обсуждениями (рекомендую для прочтения):
http://www.sony-ericsson.ru/forums2/index.php?showtopic=28929 3. Также есть кратенький пример от
den_po по портированию, он на первой странице этого топика:
https://mobilefree.justdanpo.ru/newbb_plus/viewtopic.php?topic_id=376&forum=8 4.
http://developers.sgh.ru - инфа по патчингу. Портал только открылся, но будет пополнятся. Специализируются на Самсунгах, но есть и общая для всех инфа.
http://binedit.sgh.ru - дизассемблер и не только от
AlexeyK . Также умеет работать с vkp патчами.
5. Русифицированная версия професионального HEX-редактора:
https://mobilefree.justdanpo.ru/mydownloads/showfile.php?lid=167 6. Информация для портеров и патчерописателей
Учет занятого места в прошивке 7. Тема где выкладывают
Исходники патчей 8. Мануал по
созданию исходника © Shadow Player (перевод от HierOS)
9. Мануал по портированию замейновых патчей от d1gger17
здесь 10. Статья "Как самому стать патчером" . Читаем обязательно! и + читаем доки от mnemo Мануал открытия прошивок А2 :
1.Кидаем ИмяПроши.mbn на
readDB3150.exe 2.Из папки ИмяПроши.out берем
phone_app.cxc 3.Открываем любимым хекс-редактором.
4.Отрезаем кусок от 0 до строки,содержащей повторяющуюся последовательность
18 F0 9F Е5 .Например на W760 R3DA026 это смещение
2000 .
5.Сохраняем как raw
6.Открываем уже своим любимым инстурментом
.
Народ! Давайте без флейма, пишем и задаем вопросы, только после того как прочтете все что выше выложено и даны ссылки на материал, и после того как сами уже попробовали и все детально обдумали! НЕ надо задавать вопросов, а с чего мне начать, ферштейн?
K700->W810->W850->W705 & W995 (cid81) ==========WMZ307721639637 WMR675285842893 Спасибо за пожертвования:Resp , ploik , BanditNN , AlexTin , polza , romanchenko , Ryabchik , Ax , [b]Desp
Спасибо сказали: E1kolyan, Va_st, senseless, Ma8ter, Kilo_Hz, MahmudS, Therion, vile, -BourNe-, DimaBV, MasterBoy, HotRabbit, mclaron, nitr, Oganyan-Arthur, bazk7i, -Sanek-, GaS, vodoo999, Danik, TahaSpawn, hossein_ir, LoDark, Alex_E, ELECTRO-NIC, HeMo, Se-MaG, anarkes, hi2all, Happy, CleverUser, KIBER-DEMON, Melodic_Death, plembo, UserX, MaxxxS, Sandre, SummerWood, Phoenix778, MAVER145, Nook, farid, a6b6, Neodzen, lexxx2345
c368511
Patcher
Регистрация: 26.7.09 Сообщений: 117 Репутация: 930 Откуда: Воронежская область
#1692 [25.07.11, 16:09] Re: Учимся писать патчи
Nook пишет:
тип просто решетки не убрал
и все
угу
а еще в замейне loc`ки какие-то и во врезках непонятно что. ну и выравнивание забыл
w 580-R8BE001 aka Dimmu
MAVER145
Patcher
Регистрация: 11.1.09 Сообщений: 309 Репутация: 2066 Откуда: Краснодар
#1693 [25.07.11, 17:44] Re: Учимся писать патчи
Nook , сразу видно, что новый компилятор вы не осилили, и поэтому пользуетесь старым
а для нового обязательно надо указывать CODE16 и CODE32.
K600 R2BB001, J10i2 R7CA064, C905 R1FA035, J108 R7EA011, U10 R7BA084
Спасибо сказали: Nook
a6b6
Patcher
Регистрация: 15.5.10 Сообщений: 150 Репутация: 2580
#1694 [25.07.11, 19:06] Re: Учимся писать патчи
Сделал новый исходник , но проблема как оформить его правильно незнаю?
пробывал сам неполучилось!
Помогите кто можеть
Код:
include "x.inc" org 0x1089e9aa LDR R1, off_1089E9B0 BX R1 DCB 0xFF DCB 0xFF off_1089E9B0 DCD loc_126AA760+1 org 0x10a5e896 BLX R5 org 0x10a5e8e4 ADR R7, unk_10A5EB54 ASRS R2, R5, #9 org 0x126aa760 CODE16 ; --------------------------------------------------------------------------- loc_126AA760 ; CODE XREF: ROM:1089E9ACj ; DATA XREF: ROM:off_1089E9B0o BL sub_126AA784 CMP R0, #1 BEQ loc_126AA76C BL sub_126AA776 ; --------------------------------------------------------------------------- loc_126AA76C ; CODE XREF: ROM:126AA766j MOVS R1, #0 ADDS R0, R6, #0 BL sub_126AA86C B loc_126AA824 ; =============== S U B R O U T I N E ======================================= sub_126AA776 ; CODE XREF: ROM:126AA768j arg_0 = 0 arg_8 = 8 ; FUNCTION CHUNK AT 1089E9B4 SIZE 0000013E BYTES MOVS R1, #0 ADDS R0, R6, #0 BL sub_126AA864 ADDS R4, R6, #0 LDR R1, off_126AA814 BX R1 ; End of function sub_126AA776 ; =============== S U B R O U T I N E ======================================= sub_126AA784 ; CODE XREF: ROM:loc_126AA760p PUSH {R1,R2,LR} LDR R0, off_126AA80C MOVS R2, #0 ADR R1, unk_126AA810 BL sub_126AA83C BMI loc_126AA796 MOVS R0, #1 B locret_126AA798 ; --------------------------------------------------------------------------- loc_126AA796 ; CODE XREF: sub_126AA784+Cj MOVS R0, #0 locret_126AA798 ; CODE XREF: sub_126AA784+10j POP {R1,R2,PC} ; End of function sub_126AA784 ; --------------------------------------------------------------------------- DCB 0xA0 ; DCB 0x69 ; i DCB 0xFF DCB 0xF7 ; ч DCB 0xF2 ; т DCB 0xFF DCB 0 DCB 0x28 ; ( DCB 8 DCB 0xD0 ; Р DCB 0xA0 ; DCB 0x69 ; i DCB 0xE DCB 0xA2 ; ў DCB 1 DCB 0x32 ; 2 DCB 0 DCB 0x21 ; ! DCB 0 DCB 0xF0 ; р DCB 0x3E ; > DCB 0xF8 ; ш DCB 0xA0 ; DCB 0x69 ; i DCB 0x80 ; Ђ DCB 0x22 ; " DCB 7 DCB 0xE0 ; а DCB 0xA0 ; DCB 0x69 ; i DCB 0xD DCB 0xA2 ; ў DCB 1 DCB 0x32 ; 2 DCB 0 DCB 0x21 ; ! DCB 0 DCB 0xF0 ; р DCB 0x35 ; 5 DCB 0xF8 ; ш DCB 0xA0 ; DCB 0x69 ; i DCB 0x81 ; Ѓ DCB 0x22 ; " DCB 0 DCB 0x21 ; ! DCB 0 DCB 0xF0 ; р DCB 0x34 ; 4 DCB 0xF8 ; ш DCB 0xA0 ; DCB 0x69 ; i DCB 1 DCB 0x22 ; " DCB 0 DCB 0x21 ; ! DCB 0 DCB 0xF0 ; р DCB 0x43 ; C DCB 0xF8 ; ш DCB 0xA0 ; DCB 0x69 ; i DCB 0x10 DCB 0x4D ; M DCB 0x11 DCB 0x4A ; J DCB 0xE DCB 0x4B ; K DCB 0x18 DCB 0x47 ; G DCB 0xFF DCB 0xB5 ; µ DCB 0xA DCB 0x48 ; H DCB 0xA DCB 0xA1 ; Ў DCB 0 DCB 0x22 ; " DCB 0 DCB 0xF0 ; р DCB 0x34 ; 4 DCB 0xF8 ; ш DCB 0xFF DCB 0xBD ; Ѕ DCB 0xFF DCB 0xFF DCB 0xFF DCB 0xB5 ; µ DCB 0 DCB 0x20 DCB 1 DCB 0xB4 ; ґ DCB 5 DCB 0x48 ; H DCB 5 DCB 0xA1 ; Ў DCB 4 DCB 0x22 ; " DCB 0xFF DCB 0x23 ; # DCB 0x81 ; Ѓ DCB 0x33 ; 3 DCB 0 DCB 0xF0 ; р DCB 0x20 DCB 0xF8 ; ш DCB 0 DCB 0xF0 ; р DCB 0x22 ; " DCB 0xF8 ; ш DCB 1 DCB 0xB0 ; ° DCB 0xFF DCB 0xBD ; Ѕ off_126AA80C DCD aTpaSystemSetti ; DATA XREF: sub_126AA784+2r ; "/tpa/system/settings" unk_126AA810 DCB 0x62 ; b ; DATA XREF: sub_126AA784+6o DCB 0 DCB 0 DCB 0 off_126AA814 DCD loc_1089E9B4+1 ; DATA XREF: sub_126AA776+Ar DCB 0x99 ; ™ DCB 0xE8 ; и DCB 0xA5 ; Ґ DCB 0x10 DCB 0xAC ; ¬ DCB 0xF DCB 0 DCB 0 DCB 0xE9 ; й DCB 0xE8 ; и DCB 0xA5 ; Ґ DCB 0x10 ; --------------------------------------------------------------------------- loc_126AA824 ; CODE XREF: ROM:126AA774j LDR R0, off_126AA828 BX R0 ; --------------------------------------------------------------------------- off_126AA828 DCD loc_1089EAEC+1 ; DATA XREF: ROM:loc_126AA824r DCB 0 DCB 0x4B ; K DCB 0x18 DCB 0x47 ; G DCB 0xA5 ; Ґ DCB 0xD3 ; У DCB 0x80 ; Ђ DCB 0x10 DCB 0 DCB 0x4B ; K DCB 0x18 DCB 0x47 ; G DCB 0x1D DCB 0xD4 ; Ф DCB 0x80 ; Ђ DCB 0x10 ; =============== S U B R O U T I N E ======================================= sub_126AA83C ; CODE XREF: sub_126AA784+8p LDR R3, off_126AA840 BX R3 ; End of function sub_126AA83C ; --------------------------------------------------------------------------- off_126AA840 DCD sub_109584E0+1 ; DATA XREF: sub_126AA83Cr DCB 0 DCB 0x4D ; M DCB 0x28 ; ( DCB 0x47 ; G DCB 0x7D ; } DCB 0x7B ; { DCB 0x95 ; • DCB 0x10 DCB 0 DCB 0x4D ; M DCB 0x28 ; ( DCB 0x47 ; G DCB 0x81 ; Ѓ DCB 0x92 ; ’ DCB 0x95 ; • DCB 0x10 DCB 0 DCB 0x4D ; M DCB 0x28 ; ( DCB 0x47 ; G DCB 0x71 ; q DCB 0x87 ; ‡ DCB 0x95 ; • DCB 0x10 DCB 0 DCB 0x4B ; K DCB 0x18 DCB 0x47 ; G DCB 0xA1 ; Ў DCB 0xD4 ; Ф DCB 0x80 ; Ђ DCB 0x10 ; =============== S U B R O U T I N E ======================================= sub_126AA864 ; CODE XREF: sub_126AA776+4p LDR R3, off_126AA868 BX R3 ; End of function sub_126AA864 ; --------------------------------------------------------------------------- off_126AA868 DCD sub_1177D3A4+1 ; DATA XREF: sub_126AA864r ; =============== S U B R O U T I N E ======================================= sub_126AA86C ; CODE XREF: ROM:126AA770p LDR R3, off_126AA870 BX R3 ; End of function sub_126AA86C ; --------------------------------------------------------------------------- off_126AA870 DCD sub_1089F16C+1 ; DATA XREF: sub_126AA86Cr
Добавлено 27.7.11 17:30 Здаров всем, обращаюсь к вам Patchmaster и Patcher
Напишите подробный мануал по исходникам для A2 как правильно их оформлять , что удалять, где менять, что добавлять и т.д.
Надеюсь, кто-нибудь напишет
Заранее спасибо
Предупреждение от den_po Нарушение правил: 5.3.8. Большое количество грамматических и пунктуационных ошибок, жаргонных и сленговых слов, кроме общепринятых сокращений и терминов.
andrewsolo
Пользователь
Регистрация: 11.7.11 Сообщений: 71 Репутация: 27
#1695 [29.07.11, 21:35] Re: Учимся писать патчи
Помогите. Не нашел на форуме и в инете
из IDA:
Код:
aTolKo unicode 4, <Только> unicode 0, < > aCtenie unicode 4, <чтение>,0
HEX этого кода:
Код:
22 04 3E 04 3B 04 4C 04 3A 04 3E 04 20 00 47 04 42 04 35 04 3D 04 38 04 35 04 00 00
Как изменить строку для FASMARM?
Код:
aTolKo du 'Только чтение',0
не катит. выдает не тот хекс (кодировки пробовал FARовски OEM и ANSI)
В какой кодировке вставить 'Только чтение', чтобы получилось?
Есть конечно вариант
Код:
aTolKoCtenie DCB 0x22, 4,0x3E, 4,0x3B, 4,0x4C, 4,0x3A, 4 DCB 0x3E, 4,0x20, 0,0x47, 4,0x42, 4,0x35, 4 DCB 0x3D, 4,0x38, 4,0x35, 4, 0, 0
но неправильно это... не по-людски
W850 R1KG001 RED 52
Vov4ик
Patcher
Регистрация: 14.8.10 Сообщений: 826 Репутация: 8576 Откуда: Russia
#1696 [29.07.11, 21:38] Re: Учимся писать патчи
andrewsolo , без спец. макроса правильный win1251 не получишь
andrewsolo
Пользователь
Регистрация: 11.7.11 Сообщений: 71 Репутация: 27
#1697 [29.07.11, 21:45] Re: Учимся писать патчи
Vov4ик , плагин к FASMARM? можешь припомнить название плагина или ссылку дать?
W850 R1KG001 RED 52
MAVER145
Patcher
Регистрация: 11.1.09 Сообщений: 309 Репутация: 2066 Откуда: Краснодар
#1698 [29.07.11, 21:52] Re: Учимся писать патчи
andrewsolo , Код:
aTolKo db "Только чтение",0
K600 R2BB001, J10i2 R7CA064, C905 R1FA035, J108 R7EA011, U10 R7BA084
Vov4ик
Patcher
Регистрация: 14.8.10 Сообщений: 826 Репутация: 8576 Откуда: Russia
#1699 [29.07.11, 21:52] Re: Учимся писать патчи
andrewsolo , это кусок кода на Cи, дать не могу т.к. это супер пупер секретная разработка
Therion
Developer/Admin
Регистрация: 9.2.08 Сообщений: 1748 Репутация: 10884 Откуда: Украина, г. Киев
#1700 [29.07.11, 21:56] Re: Учимся писать патчи
Юзай юникод ldr r2, CID_ANY_LEN mov r1, 0 ldr r0, TEXTID bl TEXTID_Create TEXTID du 'Только чтение',0
Therion
Developer/Admin
Регистрация: 9.2.08 Сообщений: 1748 Репутация: 10884 Откуда: Украина, г. Киев
#1701 [29.07.11, 21:57] Re: Учимся писать патчи
MAVER145 пишет:
andrewsolo , Код:
aTolKo db "Только чтение",0
Дык у тебя ж тут никак норм слова не получатся
Похожие темы
Тема Ответы Автор Просмотры Обновление Как пропатчить файл прошивки с помощью BinEdit? 34 AleXeR 51279 15.06.15, 16:19 Setool2 Lite - Патчим, прошиваем 793 Zormax 629547 15.06.21, 04:11 патчи и редактор far manager 3 den_po 8541 25.04.21, 21:17 Aino и патчи, эльфы 1 khaker 5022 26.02.17, 19:37 Проблема патчинга с w380 (pnx5230) 3 ALexeY38 6359 15.08.15, 20:09 Запросы на платные патчи 586 Zormax 435128 08.08.14, 16:21 SE DB2010 Font Tool (Патчи) 64 TahaSpawn 83114 23.07.14, 10:57 Патчи для db2020 (Общие вопросы) 554 Zormax 418513 07.01.14, 05:16
Вы не можете начинать темы. Вы не можете редактировать свои сообщения. Вы не можете создавать опросы. Вы не можете вкладывать файлы в сообщения. Вы не можете отвечать на сообщения. Вы не можете удалять свои сообщения. Вы не можете голосовать.