| |
|
zapret
Moder
Регистрация: 27.5.07 Сообщений: 1577 Репутация: 1813 Откуда: Königsberg-Калининград
|
#71 [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 ( 3.91 kb; 390 hits) Скачать файл 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
|
Olegastr
Новичок
Регистрация: 29.8.07 Сообщений: 11 Репутация: 0 Откуда: Беларусь. Гродно
|
#72 [14.10.08, 10:22] Re: FAQ. Наиболее легкий способ портирования функций
Скажите как портануть эти функции с W810_031: 0AEC: FFFFFFFF D0F92D4C ;82BB: FONT_DESC *GetFontDesc (void); 0AF0: FFFFFFFF 88FB2D4C ;82BC: int *GetFontCount(); Можно ли этим способом? Хотя бы намек дайте, как найти нужные байты откуда портируешь? Я к этому методу привык. Только не получается с этими двумя. Автору респект за него. Очень удобно и быстро. Для новичка само то.
|
Zormax
Admin
Регистрация: 12.12.05 Сообщений: 5826 Репутация: 5274 Откуда: Nizhniy Novgorod
|
#73 [14.10.08, 10:24] Re: FAQ. Наиболее легкий способ портирования функций
Olegastr, это адреса рамы, читай на предыдущих страницах про адреса рамы
TOOKY T83 (1.3.1-L2), MK808B
|
простойпарень
Новичок
Регистрация: 28.6.08 Сообщений: 5 Репутация: 0
|
#74 [25.10.08, 22:17] Re: FAQ. Наиболее легкий способ портирования функций
zapret007, ты не мог бы портироватьт недостаюшие фнкцыы от w810 на z550 r6ca004?
|
Zart
Пользователь
Регистрация: 30.8.07 Сообщений: 108 Репутация: 33 Откуда: Ставрополь
|
#75 [25.10.08, 22:29] Re: FAQ. Наиболее легкий способ портирования функций
простойпарень, а самому слабо? Неужели все так сложно?
Nokia N79 v30.019 k790i R8BF003 CID52
|
zapret
Moder
Регистрация: 27.5.07 Сообщений: 1577 Репутация: 1813 Откуда: Königsberg-Калининград
|
#76 [25.10.08, 22:35] Re: FAQ. Наиболее легкий способ портирования функций
простойпарень, возможно.. но не сегодня. дел полно. занят проектом.
samsung galaxy S3 4.2.2 W580\K750i\k550
если собрали учет занятого места в прошивке - обращайтесь
|
VanKO15
Пользователь
Регистрация: 26.2.08 Сообщений: 59 Репутация: 0 Откуда: Байконур
|
#77 [30.10.08, 13:56] Re: FAQ. Наиболее легкий способ портирования функций
не знал куда написать, написал сюда, сильно не пинайте) вот функи портировал на ш800 r1bd001: 08DC: FFFFFFFF 559FE844 ; 237: DISP_OBJ_METHOD DISP_OBJ_GetMethod08 (DISP_OBJ *); 0A64: FFFFFFFF 85BAD744 ; 299: int GPRS_GetLastSessionInfo(int,GPRS_SESSION_INFO *); 0A8C: FFFFFFFF AD6ED344 ; 2A3: DISP_OBJ* DispObject_SoftKeys_Get(void); 0AC8: FFFFFFFF 3DB00F45 ; 2B2: void FSX_RemoveIllegalSymbolsName(FILEITEM *); 0AD0: FFFFFFFF 2535E544 ; 2B4: void FILEITEM_Destroy(FILEITEM *); 0B38: FFFFFFFF A9B80E45 ; 2CE: SUB_EXECUTE *DataBrowser_CreateSubExecute(int BookID, FILEITEM *f); 0B3C: FFFFFFFF FDBC0E45 ; 2CF: int DataBrowser_ExecuteSubroutine(SUB_EXECUTE *sub, int action, u16 *unk); 0B90: FFFFFFFF B5A80F45 ; 2E4: FILEITEM *FILEITEM_CreateCopy (FILEITEM *); 0C0C: FFFFFFFF 1D81E444 ; 303: void unixtime2datetime(int, DATETIME * ); 0C10: FFFFFFFF 4973E544 ; 304: void ListElement_Insert(LIST *lst, int i, void *new_item); 0C14: FFFFFFFF 39640E45 ; 305: int FileCopy(wchar_t *src_path, wchar_t *src_name, wchar_t *dest_path, wchar_t *dest_name, int); 0C18: FFFFFFFF A9650E45 ; 306: int FileMove(wchar_t *src_path, wchar_t *src_name, wchar_t *dest_path, wchar_t *dest_name, int);
305: int FileCopy и 306: int FileMove 100% робют проверял.
наконец портировал 2A3: DISP_OBJ* DispObject_SoftKeys_Get вродебы работает (standby и coverart в ребут не уходят и нормально софты убираются)
остальные попрошу проверить и добавить все это на svn
и еще кто может портаните функи (ш800 r1bd001) 2B3, 2D4, 2D5 (SWI) буду очень благодарен)
|
Metalist
Новичок
Регистрация: 11.12.07 Сообщений: 20 Репутация: 22 Откуда: Россия г. Кисловодск
|
#78 [30.10.08, 23:04] Re: FAQ. Наиболее легкий способ портирования функций
У меня вопрос, портировал с к750 на в800 функции 305 и 306 в адресе получилось 4073E544 и A0650E45 соотв. а впосте выше - 4973E544 и A9650E45!!!! и ещё несколько раз такой косяк был!!!!! почему так?
w610i R8BA024 cid53, 6 патчей, ельфы +M2 4Гб
|
zapret
Moder
Регистрация: 27.5.07 Сообщений: 1577 Репутация: 1813 Откуда: Königsberg-Калининград
|
#79 [30.10.08, 23:40] Re: FAQ. Наиболее легкий способ портирования функций
VanKO15, выкладывай в тему Ведем учет занятого места в либе Metalist, либо кто-то из вас неправильно портанул или еще что-то.. по идее такое возможно, что обе рабочие, но не факт.
samsung galaxy S3 4.2.2 W580\K750i\k550
если собрали учет занятого места в прошивке - обращайтесь
|
HierOS
Patcher/Moder
Регистрация: 9.5.07 Сообщений: 1279 Репутация: 761 Откуда: ЖелезЯка
|
#80 [31.10.08, 00:08] Re: FAQ. Наиболее легкий способ портирования функций
хе,такая тема была когда только только делали слипмод эльф)) было для него 2 функи)) работали по разному ток мальца
Хорошо смеется тот, кто админ и модератор.
|
zapret
Moder
Регистрация: 27.5.07 Сообщений: 1577 Репутация: 1813 Откуда: Königsberg-Калининград
|
#81 [31.10.08, 00:21] Re: FAQ. Наиболее легкий способ портирования функций
хотя в принципе и не удивительно ,что так получается этим способом хоть он и простой, но для него нужен опыт
samsung galaxy S3 4.2.2 W580\K750i\k550
если собрали учет занятого места в прошивке - обращайтесь
|
Похожие темы
Вы не можете начинать темы. Вы не можете редактировать свои сообщения. Вы не можете создавать опросы. Вы не можете вкладывать файлы в сообщения. Вы не можете отвечать на сообщения. Вы не можете удалять свои сообщения. Вы не можете голосовать.
|
|
|