IronMaster
VIP Developer
Регистрация: 16.5.06 Сообщений: 1135 Репутация: 8544 Откуда: Пермь
#1351 [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
Va_st
Patchmaster
Регистрация: 3.8.08 Сообщений: 440 Репутация: 1142
#1352 [12.12.09, 18:23] Re: Учимся писать патчи
LoDark , Открываем прошивку w660_r8bb001 в IDA Pro Advanced 5.2, переводим в Tumb-режим, ставим 4 в пункте number of opcode bytes и т.д(обьяснять как это делать не буду, не чайники) Применяем патч на прошивку с помошью ApplyPatch.idc (File=>idc file...) тут не понятно???
j10i2 r7ca061
LoDark
Вникающий
Регистрация: 11.12.09 Сообщений: 21 Репутация: 1 Откуда: Украина, Харьков
#1353 [12.12.09, 18:29] Re: Учимся писать патчи
Вот исходник:
Код:
include "x.inc" ; --------------------------------------------------------------------------- addr1= 0x452D8444 ; --------------------------------------------------------------------------- org 0x4538A324 B 0x4538A336 org 0x4538A33A B 0x4538A36A org 0x452BA75C DCD 0x46C046C0 org 0x4538A336 dword_4538A336 DCD 0x4788490D org 0x4538A36C DCD 0x45A9A107 org 0x452BA750 LDR R2, 0x452BA794 BLX R2 org 0x452BA794 off_452BA794 DCD 0x45A9A100+1 org 0x45a9a100 CODE16 ; --------------------------------------------------------------------------- LDR R2, loc_45A9A138 MOV R1, 0 B loc_45A9A10A ; --------------------------------------------------------------------------- LDR R1, loc_45A9A13C LDR R0, [R4,0x28] loc_45A9A10A: PUSH {R0-R7,LR} MOV R0, 0 SUB SP, SP, 4 STR R0, [SP] SUB SP, SP, 0x88 MOV R0, SP LDR R1, loc_45A9A134 BLX R1 MOV R1, 0xFF MOV R2, 0x32 ADD R3, R1, 0 LDR R6, [R0] MOVL R4, 0x168 LDR R6, [R6,R4] BLX R6 ADD SP, SP, 0x8C POP {R0-R7,PC} ; --------------------------------------------------------------------------- DCB 0xFF DCB 0xFF DCB 0xFF DCB 0xFF DCB 0xFF DCB 0xFF ; --------------------------------------------------------------------------- align 4 off_45A9A134 DCD addr1+1 dword_45A9A138 DCD 0xEDA4 dword_45A9A13C DCD 0xED97
Находится всего 2 байта по Красному адресу в проше от К660, это ТЕ байты??
[ Редактировано LoDark в 13.12.09 15:03 ]
K660i R1FA035, W595i R3EG004
Sandre
Вникающий
Регистрация: 1.5.09 Сообщений: 29 Репутация: 29 Откуда: Брянск
#1354 [13.12.09, 16:24] Re: Учимся писать патчи
Joker XT, ясно благодарю. Объясни команду swi - программное прерывание. Че она делает,например. Если не трудно,объясни че такое not регистр и откуда и куда он переносится. И еще не понятна две команды lsl и lsr. Как можно сдвинуть логически что то в электроном мире? У байт мысли есть?
Joker XT
VIP Developer
Регистрация: 5.8.06 Сообщений: 1292 Репутация: 7582
#1355 [13.12.09, 17:14] Re: Учимся писать патчи
Sandre писал:
Объясни команду swi - программное прерывание
ну это тебе не надо)
объясни че такое not регистр
мм, не встречал О.о
И еще не понятна две команды lsl и lsr.
тут почитай, там много ещё что есть
SE C901 [R1GA028]
LoDark
Вникающий
Регистрация: 11.12.09 Сообщений: 21 Репутация: 1 Откуда: Украина, Харьков
#1356 [13.12.09, 17:36] Re: Учимся писать патчи
Joker XT , А мне поможешь?
K660i R1FA035, W595i R3EG004
Joker XT
VIP Developer
Регистрация: 5.8.06 Сообщений: 1292 Репутация: 7582
#1357 [13.12.09, 17:41] Re: Учимся писать патчи
я не понял что ты хочешь
SE C901 [R1GA028]
LoDark
Вникающий
Регистрация: 11.12.09 Сообщений: 21 Репутация: 1 Откуда: Украина, Харьков
#1358 [13.12.09, 17:59] Re: Учимся писать патчи
Joker XT , Находится всего 2 байта по addr1= 0x452D8444
адресу в проше от К660, это ТЕ байты??
Spoiler:
Вот исходник(w610 R6BC002): include "x.inc" ; --------------------------------------------------------------------------- addr1= 0x452D8444 ; --------------------------------------------------------------------------- org 0x4538A324 B 0x4538A336 org 0x4538A33A B 0x4538A36A org 0x452BA75C DCD 0x46C046C0 org 0x4538A336 dword_4538A336 DCD 0x4788490D org 0x4538A36C DCD 0x45A9A107 org 0x452BA750 LDR R2, 0x452BA794 BLX R2 org 0x452BA794 off_452BA794 DCD 0x45A9A100+1 org 0x45a9a100 CODE16 ; --------------------------------------------------------------------------- LDR R2, loc_45A9A138 MOV R1, 0 B loc_45A9A10A ; --------------------------------------------------------------------------- LDR R1, loc_45A9A13C LDR R0, [R4,0x28] loc_45A9A10A: PUSH {R0-R7,LR} MOV R0, 0 SUB SP, SP, 4 STR R0, [SP] SUB SP, SP, 0x88 MOV R0, SP LDR R1, loc_45A9A134 BLX R1 MOV R1, 0xFF MOV R2, 0x32 ADD R3, R1, 0 LDR R6, [R0] MOVL R4, 0x168 LDR R6, [R6,R4] BLX R6 ADD SP, SP, 0x8C POP {R0-R7,PC} ; --------------------------------------------------------------------------- DCB 0xFF DCB 0xFF DCB 0xFF DCB 0xFF DCB 0xFF DCB 0xFF ; --------------------------------------------------------------------------- align 4 off_45A9A134 DCD addr1+1 dword_45A9A138 DCD 0xEDA4 dword_45A9A13C DCD 0xED97
[ Редактировано LoDark в 13.12.09 17:01 ]
[ Редактировано LoDark в 13.12.09 17:03 ]
K660i R1FA035, W595i R3EG004
Joker XT
VIP Developer
Регистрация: 5.8.06 Сообщений: 1292 Репутация: 7582
#1359 [13.12.09, 18:02] Re: Учимся писать патчи
О,о какие ТЕ 2 байт?
SE C901 [R1GA028]
SEVENI
Expert
Регистрация: 10.8.08 Сообщений: 126 Репутация: 1650 Откуда: Ставрополь
#1360 [13.12.09, 18:03] Re: Учимся писать патчи
LoDark , вот исходник этого патча на r790_r8bf003 замени адреса и всё
Код:
include "x.inc" ; --------------------------------------------------------------------------- org 0x4534E98C B 0x4534E99E org 0x4534E9A2 B 0x4534E9D2 org 0x4527F8C8 NOP NOP org 0x4534E99E LDR R1, 0x4534E9D4 BLX R1 org 0x4534E9D4 off_4538A36C DCD 0x45B0DB06+1 org 0x4527F8BC LDR R2, 0x4527F900 BLX R2 org 0x4527F900 off_452BA794 DCD 0x45B0DB00+1 ; --------------------------------------------------------------------------- addr1 = 0x4529D5D9 org 0x45B0DB00 CODE16 LDR R2, dword_45B0DB38 MOV R1, 0 B loc_45B0DB0A ; --------------------------------------------------------------------------- LDR R1, dword_45B0DB3C LDR R0, [R4,0x28] loc_45B0DB0A: ; CODE XREF: ROM:45B0DB04j PUSH {R0-R7,LR} MOV R0, 0 SUB SP, SP, 4 STR R0, [SP] SUB SP, SP, 0x88 MOV R0, SP LDR R1, dword_45B0DB34 BLX R1 MOV R1, 0xFF MOV R2, 0x32 ADD R3, R1, 0 LDR R6, [R0] MOVL R4, 0x168 LDR R6, [R6,R4] BLX R6 ADD SP, SP, 0x8C POP {R0-R7,PC} ; --------------------------------------------------------------------------- DCB 0xFF DCB 0xFF DCB 0xFF DCB 0xFF DCB 0xFF DCB 0xFF dword_45B0DB34 DCD addr1 dword_45B0DB38 DCD 0xEDA4 dword_45B0DB3C DCD 0xED97 ; ROM ends
Samsung GT-I9103 4.0.4 Canon 60D + Sigma 50mm 1.4, canon 17-40 4L
Спасибо сказали: LoDark, Oganyan-Arthur
LoDark
Вникающий
Регистрация: 11.12.09 Сообщений: 21 Репутация: 1 Откуда: Украина, Харьков
#1361 [13.12.09, 18:07] Re: Учимся писать патчи
Joker XT , Ну, я думаю, что по этому адресу должно быть больше байт.
Код:
K660 1120CBCC F0 B5 3C 30 LDRCCSHT R11, [R12],-R0 ROM:1120CBD0 04 1C 00 68 STMVSDA R0, {R2,R10-R12}
K660i R1FA035, W595i R3EG004
Похожие темы
Тема Ответы Автор Просмотры Обновление Патчи для db2020 (Общие вопросы) 558 Zormax 434098 24.03.25, 17:51 Как пропатчить файл прошивки с помощью BinEdit? 34 AleXeR 52434 15.06.15, 16:19 Setool2 Lite - Патчим, прошиваем 793 Zormax 647972 15.06.21, 04:11 патчи и редактор far manager 3 den_po 8741 25.04.21, 21:17 Aino и патчи, эльфы 1 khaker 5166 26.02.17, 19:37 Проблема патчинга с w380 (pnx5230) 3 ALexeY38 6698 15.08.15, 20:09 Запросы на платные патчи 586 Zormax 448003 08.08.14, 16:21 SE DB2010 Font Tool (Патчи) 64 TahaSpawn 84955 23.07.14, 10:57
Вы не можете начинать темы. Вы не можете редактировать свои сообщения. Вы не можете создавать опросы. Вы не можете вкладывать файлы в сообщения. Вы не можете отвечать на сообщения. Вы не можете удалять свои сообщения. Вы не можете голосовать.