Учимся писать патчи : Патчестроение : Форум |
Страница 172 из 180: « 1 ... 168 169 170 171 [172] 173 174 175 176 ... 180 » |
D3mon: |
30.07.11, 14:57 |
SE-depot, иди читай мануалы!!! это всё, что можно тебе посоветовать! |
andrewsolo: |
30.07.11, 15:04 |
SE-depot, а ты патч то примени сначала (ApplyPatch.idc) |
-Sotik-: |
30.07.11, 16:11 |
SE-depot, чувак - ты же замейн пробуешь портануть !!! его надо не портировать, а выбирать самому из учета замейна своей темы. ты хоть темы по портингу сначала прочти прежде чем портировать!!! |
andrewsolo: |
30.07.11, 22:08 |
Помогите разобраться. Мозг взорван :) 1. имеем врезку: 44FE969C: 0099097807B42B6B069AE96A 0149884701E0FFFF2DABD245 2. дизасмим Код: org 0x44FE969C 01 49 LDR R1, off_44FE96A4 88 47 BLX R1 01 E0 B off_44FE96A4+2 FF DCD 0xFF FF DCD 0xFF 2D AB D2 45 off_44FE96A4 DCD loc_45D2AB2C+1 ; в тело патча DCD 0xFF специально не убрал для наглядности и не заменил на align 4, без паники! 3. B off_44FE96A4+2 осуществит переход на середину DCD loc_45D2AB2C+1 ! Проверил undefin`ом 2D AB D2 45 - IDA поставила 2 метки на 2D AB и на D2 45 справка: B <signed imm_12> R15 := (signed imm_12 * 2) + PC + 4; Безусловный относительный переход на, приблизительно, +/-2048 байт, только на четные адреса. 4. С другой стороны, если посмотреть что за команда скрывается под D2 45, то видим, что это безобидный, в контексте последующего кода, CMP R10, R10 6. Портировав 0x44FE969C на свою прошивку я получаю не кратный 4м 0x44FE70CA, т.е. мне никак нельзя оставить все как есть. Придется в любом случае править условный переход на следующую после врезки команду 5. Напрашивается вопрос. Что это? Хитрость автора патча или я просто не понимаю и это все зачем-то нужно было? Моя задача сделать верный порт и хочется разобраться. забыл сказать, что таких врезок в патче 2, так что это не случайность [ Редактировано andrewsolo в 30.7.11 22:09 ] |
E1kolyan: |
30.07.11, 22:35 |
2D AB D2 45 - это адрес 45D2AB2D и его надо портировать на свою прошивку... |
andrewsolo: |
30.07.11, 22:37 |
E1kolyan, не надо портировать, я же пометил, что это в тело патча. размещу тело, поправлю вопрос то вообще не про это |
E1kolyan: |
30.07.11, 22:40 |
Код: org 0x44FE70CA ldr r1, patch blx r1 b 0x44FE70D4 patch dw 0xадрес на замейн Добавлено 31.7.11 00:43 осуществит переход на середину DCD loc_45D2AB2C+1 ! Проверил undefin`ом 2D AB D2 45 - IDA поставила 2 метки на 2D AB и на D2 45 На какую еще середину, сам понял что написал? Какие еще метки? CMP R10, R10 это еще че за хрень? Вот ты написал непонятно что,без бутылки не разберешься... |
E1kolyan: |
30.07.11, 22:51 |
andrewsolo, Врезки в иде научись применять и не будет у тебя никаких +2...Сам только что прошивку твою открывал, применил и у меня все ок, странно да?! |
andrewsolo: |
30.07.11, 22:52 |
E1kolyan, а зачем ты врезку применил в мою прошивку, а? ты примени её на w660 куда патч был написан я привел дизасм, а не порт! так и написал [ Редактировано andrewsolo в 30.7.11 22:53 ] |
Therion: |
30.07.11, 22:53 |
andrewsolo пишет: Помогите разобраться. Мозг взорван :) 1. имеем врезку: 44FE969C: 0099097807B42B6B069AE96A 0149884701E0FFFF2DABD245 2. дизасмим Код: org 0x44FE969C 01 49 LDR R1, off_44FE96A4 88 47 BLX R1 01 E0 B off_44FE96A4+2 FF DCD 0xFF FF DCD 0xFF 2D AB D2 45 off_44FE96A4 DCD loc_45D2AB2C+1 ; в тело патча DCD 0xFF специально не убрал для наглядности и не заменил на align 4, без паники! 3. B off_44FE96A4+2 осуществит переход на середину DCD loc_45D2AB2C+1 ! Проверил undefin`ом 2D AB D2 45 - IDA поставила 2 метки на 2D AB и на D2 45 справка: B <signed imm_12> R15 := (signed imm_12 * 2) + PC + 4; Безусловный относительный переход на, приблизительно, +/-2048 байт, только на четные адреса. 4. С другой стороны, если посмотреть что за команда скрывается под D2 45, то видим, что это безобидный, в контексте последующего кода, CMP R10, R10 6. Портировав 0x44FE969C на свою прошивку я получаю не кратный 4м 0x44FE70CA, т.е. мне никак нельзя оставить все как есть. Придется в любом случае править условный переход на следующую после врезки команду 5. Напрашивается вопрос. Что это? Хитрость автора патча или я просто не понимаю и это все зачем-то нужно было? Моя задача сделать верный порт и хочется разобраться. забыл сказать, что таких врезок в патче 2, так что это не случайность [ Редактировано andrewsolo в 30.7.11 22:09 ] даже вчитыватся не надо, и прошивку не надо глядеть,чтоб по хексу понять что там в конце org 0x44FE969C ldr r1, dword blx r1 - тут хз,я хекс коды слабо читаю b addr align 4 dword dw 0x45D2AB2C+1 (zamain+1) |
Страница 172 из 180: « 1 ... 168 169 170 171 [172] 173 174 175 176 ... 180 » |
URL этой темы: https://mobilefree.justdanpo.ru/newbb_plus/viewtopic.php?topic_id=965&start=1710 © 2005-2018 supertrubka.org |