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

FAQ. Наиболее легкий способ портирования функций : Эльфостроение : Эльфы : Форум : Для Sony Ericsson патчи эльфы моддинг прошивка
/  Список форумов
   /  Эльфы
      /  Эльфостроение
   /  FAQ. Наиболее легкий способ портирования функций
На печать 
Правила 
Страница 15 из 16: « 1 ... 11 12 13 14 [15] 16 »

zapret


Moder


Регистрация: 27.5.07
Сообщений: 1577
Репутация: 1813
Откуда: Königsberg-Калининград




 
  #141 [22.09.08, 19:40] FAQ. Наиболее легкий способ портирования функций   

 
Решил значит накактать FAQ по портированию функций библиотеки. как мне кажется уже проще моего - некуда.
В примере будет описано портирование функции 0450: 00000000 B9616744 ; 114: int sprintf(char *buf, const char *fmt, ...);
с W850 SW-R1KG001 для W580 SW-R8BE001
Что значит нам понадобится:
1) фактически единственная прога HxDen (прикрепил) (вместо нее можно использовать другие подобные проги, к примеру бинэдит. просто что в этой нет ничего лишнего).
2) Так же понадобятся уже сконвертированные прошивки w580 и w850 в формат raw.
И так приступим.
1.Открываем программой HxDen обе прошивки.
выбираем для начала w850.
2. теперь рассмотрим функцию "B9616744".
для начала перевернем ее попарно. получаем 446761b9 .
3 теперь открываем виндовский калькулятор. вычитаем из 446761b9 - оффсет(конкретно в моем случае 44140000. чвой оффсет можно узнать с помошью программы babe2raw)
получаем 5361B9 .
4.значит переходим по этому адресу(offset). и вот перед нами участок кода по этому адресу. я беру 7 байт(должно хватить)(в раззных случаях берем по-разному. иногда может хватить и 3 байт, иногда нужно больше)
B4 10 B5 82 B0 04 1C 04 - вот они те самые 7 байт.
5. теперь переходим в прощивку w580.
жмем Ctrl + F
в открывшимся окне в поле Seath for: вводим те самые найденные "B4 10 B5 82 B0 04 1C 04"
в поле Datatypes выбираем Hex-values
ставим галочку на all и жмепм окей.
получаем offset(в левом нижнем углу) 417079.
6.теперь снова открываем калькулятор. вводим получившееся значение "417079" и прибавляем 44140000.
получаем 44557079. теперь попарно переварачиваем и получаем 79705544.
вот впринципе и все.

Этот способ я считаю одним из самых простых. в место м предлагаемой мною проги HxDen можно использовать иду.
Этим способом возможно получится портировать не все функции. Будут вопросы - задавайте.
врятли получится портировать с одной платформы на другую.
(с) zapret007
специально для сайтов mobilefree и se-team


P.S. не бросаемся сразу портировать все недастоющие функции. сначала нужно посмотреть ее описание=)
вот к примеру функция для w580 непортированная.
;0B70: xxxxxxxx yyyyyyyy ; 2DC: void OrangeLED_Control(int _free_val, int or_LED_ID, int level, int fade_time);
думаю дай-ко портану=) ага.. а если в название вчитаться - становится ясно, что ее в телефоне то нету=) нету оранжевого диода=)


прикрепляю программу для более быстрого переворачивания адресов и выитания\прибавления оффсета



Прикрепленный к сообщению файл:

per_v.2.2.zip per_v.2.2.zip (3.91 kb; 390 hits) Скачать файл
HxD.zip HxD.zip (736.83 kb; 209 hits) Скачать файл


samsung galaxy S3 4.2.2
W580\K750i\k550

если собрали учет занятого места в прошивке - обращайтесь
Спасибо сказали: Va_st, Zormax, Joker XT, Man1980, sam22, Den750, VoiD, timos_06, Double_A, Pharaon, Deitro, 68-artem, yr4ik_07, BloodyMessage, ArmageddON, qwert, Zart, Ricollin, TOLIK111, DarkDarin, InDiGo, PUZ, Fanse, RedNaxLex, Dragon94, Frost-by, Krab, ANSARIK, metalist-tula, Rusty, ENSAIER, User_Vetal, NakedGun, TahaSpawn, vodoo999, flips, $lavko, RomaRi, dimony

zapret


Moder


Регистрация: 27.5.07
Сообщений: 1577
Репутация: 1813
Откуда: Königsberg-Калининград




 
  #142 [12.08.09, 17:49] Re: FAQ. Наиболее легкий способ портирования функций   

 
TahaSpawn, гугл юзай.




samsung galaxy S3 4.2.2
W580\K750i\k550

если собрали учет занятого места в прошивке - обращайтесь

MAVER145


Patcher


Регистрация: 11.1.09
Сообщений: 309
Репутация: 2066
Откуда: Краснодар




 
  #143 [13.08.09, 02:10] Re: FAQ. Наиболее легкий способ портирования функций   

 
как на к600 с к750 портировать:
05DC: FFFFFFFF 3474094C ;8177: int get_VBUFFER(void);

это же адрес из рамы. а к600 это же дб2000. Как такие межплатформенно портировать?




K600 R2BB001, J10i2 R7CA064, C905 R1FA035, J108 R7EA011, U10 R7BA084

vodoo999


Пользователь


Регистрация: 16.2.09
Сообщений: 93
Репутация: 83
Откуда: Харьков UA




 
  #144 [28.09.09, 00:10] Re: FAQ. Наиболее легкий способ портирования функций   

 
Вроде все по инструкции сделал. Портировал вот эту функцию (с K810 R8BF003):
0DD4: 00000000 51AA4245 ; 375: BOOK *GUIonMessage_GetBook ( void *msg);


с K810 R8BF003, на K810 R8BA024.

Получил вот:
0DD4: 00000000 192A2E45 ; 375: BOOK *GUIonMessage_GetBook ( void *msg);
- для K810 R8BA024.

Добавил в lib.vkp для K810 R8BA024. Получилось так:
;K810 SW-R8BA024
;Библиотека функций
;v
;(c) Hussein , IronMaster
;(p) Victor_k, Ploik, diezil, MouSeX....

;0DC0: xxxxxxxx yyyyyyyy ; 370: void GUIObject_Softkey_ExecuteAction(void *gui, u16 actionID);
;0DC4: xxxxxxxx yyyyyyyy ; 371: int Request_ICA_ShutdownAllConnections(const int *sync);
0DC8: 00000000 55FD3E45 ; 372: int REQUEST_PROFILE_GETPROFILENAME(const int *SYNC,int unk,NAME *,char *error)
0DCC: 00000000 CDB0FD44 ; 373: int DataBrowserDesc_SetFocusToFILEITEM(void *DataBrowserDesc, FILEITEM *fi);
0DD4: 00000000 192A2E45 ; 375: BOOK *GUIonMessage_GetBook ( void *msg);



;locale=Russian_Russia.1251


Проверил FuncChecker v1.0.4 - пишет, что все пучком, т.е. теоретически портировал функцию правильно (на примере с эльфом Bookman):

до вписывания портированной функции -



после вписывания -



Добавил (заменил старую библиотеку на новую с новой функой) библиотеку на телефон.Но при запуске эльфа Bookmanager v2.98 - белый экран и перезагрузка. Что-то я упустил... Кстати на BookMan_mod вапще нет такой функи (точнее она не используется) и он работает без проблем.

PS: могу попытаться расписать с картинками все что я сделал для портирования функи более подробно.

[ Редактировано vodoo999 в 27.9.09 23:49 ]




"Valetudo est bonum optimum"

K800 => K810 R8BA024 CID 53

GaS


Expert


Регистрация: 18.1.08
Сообщений: 644
Репутация: 2553
Откуда: г.Кимры Россия




 
  #145 [28.09.09, 02:38] Re: FAQ. Наиболее легкий способ портирования функций   

 
vodoo999 писал:
т.е. теоретически портировал функцию правильно

прога всего лишь определяет наличие данной функции в библиотеке, но никак её правильность, и нафига портировать то что уже давно портануто http://supertrubka.org/newbb_plus/viewtopic.php?topic_id=2567&start=680




SONY Xperia GO ,J105 R1HA035
Спасибо сказали: vodoo999

flips


Пользователь


Регистрация: 1.2.08
Сообщений: 61
Репутация: 6





 
  #146 [15.01.10, 23:19] Re: FAQ. Наиболее легкий способ портирования функций   

 
Добрый вечер, Подходит ли этот способ дляпортирования между платформами ,чем можно проверить правильность портирования функций?



ELECTRO-NIC


Patcher


Регистрация: 4.1.08
Сообщений: 141
Репутация: 186
Откуда: Luhans'k Ukraine




 
  #147 [16.01.10, 00:02] Re: FAQ. Наиболее легкий способ портирования функций   

 
flips писал:
Подходит ли этот способ для портирования между платформами ,

Да.
flips писал:
чем можно проверить правильность портирования функций?

Эльфом который использует данную функцию.




LG GT540 2.2

RomaRi


Новичок


Регистрация: 15.9.08
Сообщений: 10
Репутация: 4





 
  #148 [08.03.10, 14:18] Re: FAQ. Наиболее легкий способ портирования функций   

 
Возникла проблема при портирование 790E2A45
;K790 SW-R8BF003
(0D9C: 00000000 790E2A45 ; 367: void REQUEST_SETTING_ALLOWEDCALLERS_GET( const int* sync, int ProfileNum, char* state );)
На ;K770 SW-R8BA024

На К790 по адресу нахожу
B5 13 4F 04 1C 0D 1C 12 49 16 1C 3A 1C 14 20 2C

На К770 есть (последний бит отличается)
B5 13 4F 04 1C 0D 1C 12 49 16 1C 3A 1C 14 20 25
По адресах
12D8DC9, 12D8E71, 12D9039, 12D91B9, 12D9265, 12D930D, 12D9595

Как быть в этой ситуации

Ps: в английском не силен, но походу функция должна быть…



den_po


Developer/Admin


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




 
  #149 [08.03.10, 15:28] Re: FAQ. Наиболее легкий способ портирования функций   

 
MNS81, не знаю, как RomaRi, но я тебя не понял :D




promt is better than google translate

RomaRi


Новичок


Регистрация: 15.9.08
Сообщений: 10
Репутация: 4





 
  #150 [08.03.10, 15:32] Re: FAQ. Наиболее легкий способ портирования функций   

 
Спасибо, я не знал что што эти функции ищутся по другому

PS Я только вчера начал вникать как это делать (нехватает для Standby Mode 2.18 )

Попробовал на известной – не получилось (должно было бить 79 0E 2A 45 а у меня вышло C8 0E 2A 45),

Как найдешь двигай в начало функции
- Наверно здесь лажа? я несовсем понял как это.

[ Редактировано RomaRi в 8.3.10 14:55 ]

[ Редактировано RomaRi в 8.3.10 14:58 ]



MNS81


Patcher


Регистрация: 18.7.07
Сообщений: 556
Репутация: 5564
Откуда: Сертолово Ленинградская обл.




 
  #151 [08.03.10, 17:33] Re: FAQ. Наиболее легкий способ портирования функций   

 
По многочисленным просьбам рассказываю более популярно.
Расскажу на примере того же 790-го и той же функи 367: void REQUEST_SETTING_ALLOWEDCALLERS_GET( const int* sync, int ProfileNum, char* state );

1. Открываем свой любимый гекс редактор
2. Открываем в нем свою прошу(K790 SW-R8BF003.raw)
3. включаем поиск по тексту и вбиваем туда REQUEST_SETTING_ALLOWEDCALLERS_GET
4. Нажимаем поиск
5. Находим все это по адресу 198087C
6. Прибавляем оффсет и переворачиваем 198087C+44140000=45AC087C-->7C08AC45
7. Включаем поиск по гексу и пишем туда 7C08AC45, жмем поиск
8. находим, далее ищем слева от найденного самую первую В5, это и будет начало функции. В проше от к790 самое первое В5 будет по адресу 1160E79
9. Прибавляем к адресу оффсет и переворачиваем 1160E79+44140000=452A0E79-->790E2A45
10. Теперь это самое 790E2A45 смело пишем в либу




C901 SW-R1GA028
Xiaomi RedMi 2
Спасибо сказали: SEVENI, RomaRi
Страница 15 из 16: « 1 ... 11 12 13 14 [15] 16 »



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

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