Перейти к содержимому


Фотография
- - - - -

Задаем вопросы по теме "Создание патчей, для начинающих"


  • Please log in to reply
1378 ответов в этой теме

#1361 repchic

repchic

    Я тут недавно

  • Стажёр
  • Сообщений: 4
  • Модель телефона: C3322

Отправлено 2013-май-20 - 14:05

пишу патчи,пока времени куча буду писать

#1362 f2065

f2065

    Программист

  • Администраторы ROOT
  • Сообщений: 6 994
  • Город:Russia,Moscow
  • Модель телефона: Samsung B310E, B5722, C3322, C3322i, S5610.

Отправлено 2013-май-20 - 15:05

пишу патчи,пока времени куча буду писать

И что дальше то?

#1363 f2065

f2065

    Программист

  • Администраторы ROOT
  • Сообщений: 6 994
  • Город:Russia,Moscow
  • Модель телефона: Samsung B310E, B5722, C3322, C3322i, S5610.

Отправлено 2013-июн-10 - 17:13

Реализовал идею по новому конфигу мастерпатча

C3322XWKL1…
Там в ОЗУ с t_T_IDI_IMGEDITOR_TITLE_ARROW_PREVIOUSimgeditor_icon_title_arrow_previous по t_T_IDI_IMGEDITOR_TITLE_THUMB_BGimgeditor_icon_title_thumb_bg лежат некие имена картинок. Которые копируются из прошивки при включении. Типа «/a/multimedia/imgeditor/paragon/imgeditor_icon_title_arrow_previous.ifg»
Нашёл таблицы которые ссылались на эти переменные в ОЗУ, переправил их на адреса в прошивку (например 0x91C051A4). И теперь тут целых 0x700 байт свободны… Куда и грузится конфиг при включении в mcc_lk_init_poweron_settings.
Вобщем на C3322 проблем нет.

А вот на S5610 - облом. Хотя всё тоже самое. Такие же имена, в том же месте. Нашёл.
Но, чтение чего-либо из той области прошивки (например 0x216F2E5C) которая копируется в ОЗУ - приводит к срабатыванию защиты ОС, и перезагрузке. Т.е. переправить ссылки с адресов ОЗУ на адреса в прошивке - нельзя…
Конечно, там есть куча "лишних" картинок в читаемых областях прошивки, можно туда пересадить все те строки.

Но хотелось бы наконец разобратся с запретами чтения из некоторых адресов…
Куда вообще копать?
Или в случае S5610 эта часть прошивки вообще не сохраняется а сразу распаковывается в ОЗУ?

#1364 RusEm

RusEm

    Безбашенный Параноик

  • SGH Open Club
  • Сообщений: 1 249
  • Город:Саранск
  • Модель телефона: Galaxy S (T959 Vibrant) + всякий хлам

Отправлено 2013-июн-14 - 23:13

Возможно эта часть прошивки при старте копируется в озу.. и напрямую чтение из флеши организуется по другому

#1365 ariexz

ariexz

    Я тут недавно

  • Стажёр
  • Сообщений: 1
  • Модель телефона: c3322

Отправлено 2013-окт-17 - 06:39

bagaimana cara mengubah .arm jadi .smp

пер: как преобразовать .arm в .smp (индонезийский 8) )

#1366 LotusX

LotusX

    Member

  • Участники
  • PipPip
  • Сообщений: 14
  • Модель телефона: Samsung C3322

Отправлено 2015-апр-27 - 07:03

Как изменить lkres_LoadNandTextData?

и любое устройство, которое
используется для переноса язык,
так что может быть установлен в
C3322XWLG1 Indonesian.qtc.

#1367 C3322i

C3322i

    Младший Пользователь

  • Участники
  • Сообщений: 96
  • Город:Ukraine
  • Модель телефона: C3322 , C3322i, S5610, LG T385

Отправлено 2015-май-01 - 18:01

Indonesian.qtc.


keluarkan tua Indonesian firmware bin folder,mengganti csc file dari daerah kamu, yaitu akan mengganti firmware file dengan Indonesian bahasa...flash telepon

#1368 f2065

f2065

    Программист

  • Администраторы ROOT
  • Сообщений: 6 994
  • Город:Russia,Moscow
  • Модель телефона: Samsung B310E, B5722, C3322, C3322i, S5610.

Отправлено 2015-май-03 - 08:19

Как изменить lkres_LoadNandTextData?

А ты уже сделал новые Indonesian.txt и Indonesian.idx по стандарту прошивок C3322X ?

Прикрепленный файл  binedit_lkres1.png   73,24К   Количество загрузок: 17


Где-то тут. Удалить загрузку .qtc из /a/customer/text/, удалить распаковку Quram, и добавить прямую загрузку своих распакованных Indonesian.txt и Indonesian.idx…

#1369 LotusX

LotusX

    Member

  • Участники
  • PipPip
  • Сообщений: 14
  • Модель телефона: Samsung C3322

Отправлено 2015-май-03 - 09:35

А ты уже сделал новые Indonesian.txt и Indonesian.idx по стандарту прошивок C3322X ?

Прикрепленный файл  binedit_lkres1.png   73,24К   Количество загрузок: 17


Где-то тут. Удалить загрузку .qtc из /a/customer/text/, удалить распаковку Quram, и добавить прямую загрузку своих распакованных Indonesian.txt и Indonesian.idx…



Извините менее очевидно, понятие образа упоминается в деталях

#1370 IqbalJumhari

IqbalJumhari

    Advanced Member

  • Участники
  • PipPipPip
  • Сообщений: 34
  • Город:Asian, Indonesian, Cirebon
  • Модель телефона: Samsung C3322

Отправлено 2015-май-14 - 08:51

А ты уже сделал новые Indonesian.txt и Indonesian.idx по стандарту прошивок C3322X ?

Прикрепленный файл  binedit_lkres1.png   73,24К   Количество загрузок: 17


Где-то тут. Удалить загрузку .qtc из /a/customer/text/, удалить распаковку Quram, и добавить прямую загрузку своих распакованных Indonesian.txt и Indonesian.idx…


неполное путь

#1371 bugbug

bugbug

    Advanced Member

  • Участники
  • PipPipPip
  • Сообщений: 48
  • Город:Санкт-Петербург
  • Модель телефона: J210

Отправлено 2018-ноя-27 - 17:45

Решил поставить пароль на разблокировку клавиатуры, портировав патч для E590.

 

<patchdata firmware="J210XEHG1" mode="C100"  >
  <changes>
 <nord offset="0x138A318" from="446CF520" to="DCC67621" type="CODE" />
 <nord offset="0x176C6DC" from="18022A00" to="170A8D00" type="CODE" />
 <nord offset="0x176C6E4" from="4CD17621" to="00000000" type="CODE" /> 
 <nord offset="0x176C734" from="588B3821" to="000D7E21" type="CODE" /> 
 <nord offset="0x17E0D00" from="0000000000000000" to="170A8D0000000100" type="CODE" /> 
 <nord offset="0x17E0D10" from="00" to="0A" type="CODE" />
 <nord offset="0x17E0D20" from="00000000" to="17021F00" type="CODE" />
 <nord offset="0x17E0D30" from="00000000" to="7A000100" type="CODE" />
 <nord offset="0x1388B68" from="17021F0000000000" to="170A8D0000000100" type="CODE" />

 

При запросе пароля, если нажать красную кнопку, происходит разблокировка. Тогда в чем был смысл патча, если можно разблокировать телефон без пароля? Это устранимая проблема?



#1372 f2065

f2065

    Программист

  • Администраторы ROOT
  • Сообщений: 6 994
  • Город:Russia,Moscow
  • Модель телефона: Samsung B310E, B5722, C3322, C3322i, S5610.

Отправлено 2018-ноя-27 - 22:42

При запросе пароля, если нажать красную кнопку, происходит разблокировка. Тогда в чем был смысл патча, если можно разблокировать телефон без пароля? Это устранимая проблема?

При помощи CGSN-патча надо найти место где стоит MCC-обработчик (запросить в терминале адрес обработки MCC) в моменты ввода этого пароля, и посмотреть куда там выход по сканкоду красной кнопки и что с этим делает данный патч.

Вообще надо патч показывать в виде исходника, эти коды никто не будет компилировать и смотреть что там неполучается

#1373 bugbug

bugbug

    Advanced Member

  • Участники
  • PipPipPip
  • Сообщений: 48
  • Город:Санкт-Петербург
  • Модель телефона: J210

Отправлено 2018-ноя-28 - 15:44

Вообще надо патч показывать в виде исходника, эти коды никто не будет компилировать и смотреть что там неполучается

Хорошо, учту. 



#1374 bugbug

bugbug

    Advanced Member

  • Участники
  • PipPipPip
  • Сообщений: 48
  • Город:Санкт-Петербург
  • Модель телефона: J210

Отправлено 2018-дек-02 - 14:51

Хорошо, учту. 

Все получилось!  Спасибо!



#1375 bugbug

bugbug

    Advanced Member

  • Участники
  • PipPipPip
  • Сообщений: 48
  • Город:Санкт-Петербург
  • Модель телефона: J210

Отправлено 2018-дек-02 - 15:33

В патче Easy_ScreenShot_v21_B5722XXJK3.asm

 

;2197B5FA:    3549    LDR    R1, =vScreenMem    ;R1 = значение по адресу (PC + 212)=[0x2197B6D0]= 0x306BA180
;2197B5FC:    4B22    MOV    R2, #0x4B    ;R2 = 75 "K"
;2197B5FE:    D202    LSL    R2, R2, #11    ;R2 = R2 << 11 = 0x25800 (153600)
;2197B600:    0023    MOV    R3, #0x0    ;R3 = 0
;2197B602:    4118    ADD    R1, R0, R1    ;R1 = R0 + R1 = 0x5244CDE4 (1380240868)
;2197B604:    301C    MOV    R0, R6    ;R0 = R6 = 0x401 (1025)
;2197B606:    EFF62EEC    BL    gfs10_1CrtFile ; p_I_Path,p_I_Data,v_I_Sz,b_I_IsForExt,b_I_ChkCntFull    

.start 0x2197B5FA
LDR    R3, =RAW2BMP+1
BX    R3
.data

 

Не получается определить точку входа .start . С помощью BinEdit (поиск через A c лупой)  вставлял j_mmigfs1_1ReadFile 0x20593338 и vScreenMem 0x302FA620, но похожего кода (тот который выше закомментирован) в ссылке на данные не нашел. Подскажите, пожалуйста, как Вы определяли .start 0x2197B5FA?

 

Мои эквиваленты:

.equ vScreenMem 0x302FA620

.equ __rt_memcpy 0x208B25C8

.equ Rtk50_11GetDynMemory 0x211372C0

.equ RtkReleaseMemory 0x211372A0

.equ j_mmigfs1_0CreateFile 0x20593CF4

.equ j_mmigfs1_1ReadFile 0x20593338

Эти эквиваленты ( j_mmigfs1_0CreateFile и j_mmigfs1_1ReadFile) определил из мастер-патча.

 

И еще вопрос, можно ли закомментирован данный блок, если в моем телефоне и так обновляется TFS?

; регистрация файла в DB (чтобы без RefreshTFS обойтись)
MOV    R1, 1
STR    R1, [SP, 8]
MOV    R3, 0
STR    R3, [SP, 4]
STR    R3, [SP]
MOV    R2, R6 ; регистрируемый путь+файл
MOV    R0, 0
BL    gfs31_DB_6InsData

 

Подскажите, а что значит BLT  ess_error?

Заранее благодарю!



#1376 f2065

f2065

    Программист

  • Администраторы ROOT
  • Сообщений: 6 994
  • Город:Russia,Moscow
  • Модель телефона: Samsung B310E, B5722, C3322, C3322i, S5610.

Отправлено 2018-дек-02 - 17:42

а что значит BLT  ess_error?

Наверно опечатка. Там наверно должно быть BLE - ошибка если возвращён 0 или отрицательное число, или даже BEQ (ошибка если возвращён 0).


Команды условного перехода в режиме Thumb
BEQ метка Переход, если установлен Z (равно)
BNE метка Переход, если сброшен Z (не равно)
BCS метка Переход, если установлен C (выше беззнаковое или равно)
BCC метка Переход, если сброшен C (ниже беззнаковое)
BMI метка Переход, если установлен N (минус, или старший бит установлен)
BPL метка Переход, если сброшен N (плюс или равно, или старший бит сброшен)
BVS метка Переход, если установлен V (переполнение)
BVC метка Переход, если сброшен V (нет переполнения)
BHI метка Переход, если установлен C и сброшен Z (выше беззнаковое)
BLS метка Переход, если сброшен C или установлен Z (ниже беззнаковое или равно)
BGE метка Переход, если установлен N и установлен V или сброшен N и сброшен V (больше со знаком или равно)
BLT метка Переход, если установлен N и сброшен V или сброшен N и установлен V (меньше со знаком)
BGT метка Переход, если сброшен Z и либо установлен N и сброшен V, либо сброшен N и установлен V (больше со знаком)
BLE метка Переход, если установлен Z, или установлен N и сброшен V, или сброшен N и установлен V (меньше со знаком или равно)

 

Подскажите, пожалуйста, как Вы определяли .start 0x2197B5FA?

Для B5722 есть полный sym… Откуда ясно что это врезка в функцию gfs30_24CptScr (0x2197B304). Функция имеет ссылки на трассировку (лежит там текст gfs30_24CptScr). Обычно в таких случаях в другой прошивке ищем аналогичный текст трассировки и идём в обратную сторону.
Но в случае J210 облом - у него нету функции gfs30_24CptScr, и вообще нету даже текста CptScr… Я проверил в более древнем D780 - но у него тоже есть gfs30_24CptScr…

Так что либо скриншоты придётся запускать из терминалки запуском из CGSN-патча, либо надо исследовать есть ли у J210 штатный скриншотер (в инженерном меню включается ли он) и как он работает…

#1377 bugbug

bugbug

    Advanced Member

  • Участники
  • PipPipPip
  • Сообщений: 48
  • Город:Санкт-Петербург
  • Модель телефона: J210

Отправлено 2018-дек-02 - 18:44

Спасибо! В J210 gfs30_24CptScr есть (0x20E19C80). В инженерном меню включается и работает. Мой вопрос был по поводу того, как переделать raw в bmp.

 


 

 

 



#1378 f2065

f2065

    Программист

  • Администраторы ROOT
  • Сообщений: 6 994
  • Город:Russia,Moscow
  • Модель телефона: Samsung B310E, B5722, C3322, C3322i, S5610.

Отправлено 2018-дек-02 - 21:40

В J210 gfs30_24CptScr есть (0x20E19C80).

Это называется mmigfs3_33LCDDump. gfs30_24CptScr там нету

Мой вопрос был по поводу того, как переделать raw в bmp.

Надо исследовать mmigfs3_33LCDDump, где там пишется в файл буфер vScreenMem. Я что-то не вижу там ничего похожего на 0x302FA620
надо имена всех функций которые вызываются из mmigfs3_33LCDDump найти

#1379 bugbug

bugbug

    Advanced Member

  • Участники
  • PipPipPip
  • Сообщений: 48
  • Город:Санкт-Петербург
  • Модель телефона: J210

Отправлено 2018-дек-03 - 06:02

Это называется mmigfs3_33LCDDump. gfs30_24CptScr там нету

Надо исследовать mmigfs3_33LCDDump, где там пишется в файл буфер vScreenMem. Я что-то не вижу там ничего похожего на 0x302FA620
надо имена всех функций которые вызываются из mmigfs3_33LCDDump найти

Спасибо! Значит я ошибся. Буду довольствоваться raw.






13 человек читают эту тему

0 пользователей, 2 гостей, 0 скрытых пользователей


    BrandWatch (11)
Яндекс цитирования