motofan logo
       
> 

МегаFAQ по Созданию, Портированию и Применению Патчей ! только в этой теме !, новых тем НЕ создавать - будут удаляться !

Ohotnic
сообщение 6.7.2007, 8:41


Интересующийся
**

Группа: Пользователи
Сообщений: 37
Регистрация: 26.5.2007
Пользователь №: 136 129
Модель телефона: RAZR V3i, Boot 0A.30
Прошивка: R4441D_G_08.03.03R

Рейтинг: 2.5



Почитал мануал AlexKooper, нормально можно понять. Но хотелось бы подробный мануал и для тех ето знает ассемблер (или будет знать), то есть портирование патчей с помощью дизассеблирования.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Osta
сообщение 6.7.2007, 13:34


Freestyler
********

Группа: Легенды MotoFan.Ru
Сообщений: 10 329
Регистрация: 20.7.2004
Пользователь №: 8 235
Модель телефона: Moto
Прошивка: *#9999#


Настроение:
Все невыспавшиеся в следующей жизни будут котами



Рейтинг: 4362



Как создавать патчи с 0-вым знанием и без Иды.
Это фак для начинающих патчеров чтобы на выходных заняться чем было :-)
В коде прошивки большинство чувствует себя как слепые котята: мало что говорит куча
цифробуквенносимвольных данных СG1, открытой в НЕХ-редакторе..
Однако нам на помощь прийдут как не странно наши LangPack и DRM. Да-да, именно они.
Вначале бёрем программу SHXCoDec и в ней Utilites - и выбираем файл вашего Ленга
( ххCG4.smg или ххCG4.bin ) и нажимаем Open LangPack (см. рисунок)
Прикрепленное изображение
в поле Languages появились языки, которые содержит ваш LangPack.
Выбираем Русский (Id 23) и нажимаем Parse Language. В поле Text появились фразы русского
языка с Id строк и их содержанием. Нажимаем SaveString - Russian.txt - Save (см. рисунок)
Прикрепленное изображение
таак.. :-) открываем этот Russian.txt в блокноте и видим примерно такое:
Код

это ID | это фраза телефона
-----------------------------------------  
0001 | Память переполнена
0002 | 0 минут
0003 | за 1 день
0004 | 1 час
0005 | за 1 час

.....и т.д. (фразы и ID вашей прошивки будут другими !)
что же мы получили ? а получили мы указатели на фразы, только в прошивке они идут
в виде 01 00 хх хх где хх хх - это ID строки из ленг пака ! Давайте к примеру поищем
где у нас идёт в прошивке фраза "Прим. как анимац. при вкл." , смотрим по Russian.txt ...ага
"153A | Прим. как анимац. при вкл." тоесть её ID=15 3А открываем CG1 от прошивки в НЕХ-редакторе
и задаём поиск 01 00 15 3А таак.. нашло 2 раза.. :-) и во второй раз интересно так (см. рисунок)
Прикрепленное изображение
что это ? этот указатель окружен другими указателями на фразы из вашего ленгпака !
скопируем эти указатели и поищем-ка соответствия в нашем Russian.txt по ID фразы :
01 00 09 2D - таак ищем значит 092D в Russian.txt - получается 092D | Фон дисплея
01 00 16 85 1685 | Фон при открытии
01 00 16 84 1684 | Фон при закрытии
01 00 08 79 0879 | Заставка дисплея
01 00 0B 0D 0B0D | Стартовая анимация
01 00 15 40 1540 | Запись справочника
01 00 03 56 0356 | Отправить
01 00 15 42 1542 | Отправить в сообщ.
01 00 15 28 1528 | Отправить в Blog
01 00 17 02 1702 |
01 00 14 91 1491 | Просм. альбом
00 00 00 00
01 00 15 44 1544 | Перекл. устр. хран.
01 00 08 7E 087E | Только сохранение
01 00 15 3D 153D | Применить как фон
01 00 16 B8 16B8 | Устан. как открытый фон
01 00 16 B7 16B7 | Устан. как закрытый фон
01 00 15 3C 153C | Применить как заставку
01 00 15 3A 153A | Прим. как анимац. при вкл.
01 00 15 6F 156F | Применить к справочнику
00 00 00 00 00 00 00 00
01 00 14 57 1457 | Съемка с таймером
00 00 00 00 00 00 00 00
01 00 16 A4 16A4 | Уст. контрастности
01 00 16 42 1642 | Стиль картинки
01 00 16 9C 169C | Добавить рамку картинки
01 00 16 A1 16A1 | Изменить рамку картинки
01 00 16 9E 169E | Имя картинки
01 00 03 89 0389 | Масштаб
01 00 15 13 1513 | Изм. разм. картинки
00 00 00 00
01 00 08 75 0875 | Картинка
01 00 14 93 1493 | Альбом картинок
01 00 05 7F 057F | Параметры
01 00 16 A0 16A0 | Параметры изменения
01 00 08 77 0877 | Переименовать
01 00 01 C9 01C9 | Удалить
01 00 01 CF 01CF | Редактировать
01 00 0A 37 0A37 | Упорядочить
01 00 15 26 1526 | Переместить
01 00 01 C4 01C4 | Копировать
01 00 15 24 1524 | Метка
01 00 15 25 1525 | Отметить все
01 00 01 CA 01CA | Удалить всё
01 00 0A C8 0AC8 | Категории
01 00 15 3E 153E | Назначить категории
01 00 15 41 1541 | Настройка камеры

таак .. это у нас значится менюшечки и судя по наборам - это меню из
картинок и камеры, хорошо.. можно что-то поменять, к примеру
вместо 01 00 15 42 ( Отправить в сообщ. ), что идёт первым
в меню сохранения фото из камеры поставить 01 00 08 7E ( Только сохранение ).
Но тогда возникает проблема в меню списка картинок, там тоже поменяется вместо
Отправить в сообщ. будет Только сохранение , что некрасиво и нерабочее, но
методом проб получаем, что если поставить 01 00 08 75 ( Картинка ), то
она будет первой и в сохранении камеры (и при нажатии её фото сохраниться)
и в картинках (при нажатии на неё инициализируется камера) что уже удобнее!
пишем патч: смотрим смещение нашей фразы Только сохранение в НЕХ-формате
Прикрепленное изображение
и ставим его в патче после него двоеточие и указатель на строку Картинка, получается:
Код

[Patch_Code]
2E1C5C: 01000875

у вас и смещение и указатель будут другими ! для вашей прошивки !
сохраняем в kart.fpa и патчим во FlashBackup. Всё, у нас первым идёт не Отправить в сообщ.
Прикрепленное изображение + Прикрепленное изображение
а Картинка :-) , но можно пойти ещё хитрее, у меня например не было Масштаба, тогда я
заменил 01 00 15 25 ( Отметить все ) на 01 00 03 89 ( Масштаб ) и он заработал !
Таким поиском указателей на фразы Ленгпака можно находить некоторые функции,
которые уже становятся не обезличенным набором знаков, а более знакомым кусочком.
Таким образом возможно не только перестроить некоторые менюшки, а и добавить
некоторый отсутствующий функционал в них. Возможно понадобиться правка в seem 0032..
не у всех же есть Изм. разм. картинки или Добавить рамку картинки ?
Hа этом я устал и про DRM расскажу в следующий раз. Faq-и будут становиться сложнее,
так что желательно пробовать Вам сначало с простенького. Программы указанные в посте
Прикрепленный файл SHXCoDec_______editor.rar   ( 1.26 мегабайт ) Кол-во скачиваний: 321

ссылка на тему как работать с программой Shxсodec

Сообщение отредактировал Osta - 13.7.2007, 12:12
Прикрепленный файл SHXCoDec_______editor.rar   ( 1.26 мегабайт ) Кол-во скачиваний: 321
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Osta
сообщение 13.7.2007, 13:03


Freestyler
********

Группа: Легенды MotoFan.Ru
Сообщений: 10 329
Регистрация: 20.7.2004
Пользователь №: 8 235
Модель телефона: Moto
Прошивка: *#9999#


Настроение:
Все невыспавшиеся в следующей жизни будут котами



Рейтинг: 4362



после выхода моего FAQ "Как создавать патчи с 0-вым знанием и без Иды" я получил
много писем в ПМ и в сообщений в асю типа "а как патчить с помощью DRM?"
Тоесть меня неправильно поняли, своими постами я пытаюсь ответить на вопрос
Цитата(Ohotnic @ 6.7.2007, 1:34)

Почитал ассемблер и понял... чушь. Просто знать ассемблер и дизассеблирование прошивки, не помогут. Ведь я же не медиум. Ковыряться в машинном коде можно хоть всю жизнь.
*


Я расписываю указатели, чтобы прошивка и процедуры в ней стали более менее "находимы"
в коде, чтобы прошивка не казалась просто набором цифр и знаков. С помощью указателей
на ленг можно находить функции, где они задействованы. Тоесть слова
"Во время записи голосового комментария, удерживайте клавишу Голос" не будут находиться
около процедур Веб-браузера, а будут около Диктофона. :-)
Также можно находить функции с
помощью указателей на DRM картинки в CG1 и делать мелкий патчинг. Сами процедуры
процентов на 60 начинаются сo значения B5 и найдя указатель на ленг вида 01 00 хх хх
или указатель на DRM можно поиском вверх выражения B5 найти связанные функции.

Указатель на DRM в прошивке прописан в виде 12 00 хх хх где хх хх - это число в НЕХ значении
номера картинки из DRM. Вы, с помощью программы drmport от нашего мотофановца lucrece ,
можете разобрать свою прошивку (File - open) и найти все картинки из DRM в папке программы
по пути диск\drmport\binary1\drmpack\gifs. Там находятся gif файлы и в их имени идёт номер.
Этот номер нужно перевести в НЕХ формат
(в программе drmport пока нет выбора как нумеровать gif в DEC или НЕХ )
возьмем к примеру картинку Будильника под № 496 (на вашей прошивке № будет другой !)
вот она Прикрепленное изображение . Переведём её в НЕХ формат. Включаем Калькулятор Windows
ставим Вид - Инженерный пишем 496 и ставим точку на НЕХ, получается 1F0
подставляем в указатель на DRM = значит нам нужно искать 12 00 01 F0 ... хорошо..

Открываем CG1 от нашей прошивки в НЕХ-редакторе и Seach - Find - HEX String - 12 00 01 F0
найдено 2 совпадения. Возьмём второе. Прикрепленное изображение
чуть ниже видны даже слова типа "Будильник .. напоминание .. формировать контекст.."
значит это наша иконка будильника, которая высвечивается при срабатывании будильника :-)
вот она Прикрепленное изображение может заменим на прикольную и побольше?
в DRM её менять нельзя (помните на неё 2-ва указателя !) первый указатель 100% в списке будильников,
тоесть замена в DRM повлечёт за собой косяк неотображения этого значка в списке будильников.

Что делаем : ищем в Drm неиспользуемую картинку, к примеру под № 148.gif Прикрепленное изображение
вы её когда-то видели ? я - нет. Её то мы и используем. Меняем её в DRM на побольше и прошиваем её.
Как менять картинки в DRM описано в теме поддержки программы В Помощь Drm-мастеру Замена Shxcodec
Заменили картинку и прошили DRM ? Тогда пишем патч - меняем указатель вместо будильника на
картинку № 148. Переводим 148 в НЕХ формат = 94

Код

[Patch_Info]
Firmware=R365_G_0B.D3.08R
Description= new picture AlarmClock
Author=Osta

[Patch_Code]
8DFA4: 12000094

[Patch_Undo]
8DFA4: 120001F0

прошиваем патч в телефон и видим, что у нас в списке будильников осталась иконка старая,
а при срабатывании будильника - Прикрепленное изображение

Вот и так оказывается можно искать нужные функции и мелко патчить нашу прошивку :-)
№ картинок из DRM и Адреса для патчей на вашей прошивке будут другими, отличными от указанных !!

Всем удачного поиска и патчинга !

Сообщение отредактировал Osta - 13.7.2007, 13:09
Прикрепленное изображение Прикрепленное изображение
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
DmT
сообщение 13.7.2007, 13:41


Мото-Портной
******

Группа: Разработчики
Сообщений: 1 175
Регистрация: 31.3.2007
Пользователь №: 129 181
Модель телефона: LG GW620, L7e и др.
Победитель конкурса 2008

Рейтинг: 680



Ой гигабайтный тебе спасибо, Osta. Очень ждал.

Сообщение отредактировал DmT - 13.7.2007, 13:41
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Zakk_Wilde
сообщение 18.7.2007, 14:23


Интересующийся
**

Группа: Пользователи
Сообщений: 32
Регистрация: 15.2.2007
Из: ODESSA
Пользователь №: 122 584
Модель телефона: Motorola E398=>E1&Z3
Прошивка: MpxFinal 373...49R

Рейтинг: 0



Ну и ну, прочитал 2 раза вниматочно smile.gif . Первый FAQ чего-то до меня не дошёл окончательно, особенно
Цитата(Osta @ 6.7.2007, 16:34) *

............................................................................................к примеру
вместо 01 00 15 42 ( Отправить в сообщ. ), что идёт первым
в меню сохранения фото из камеры поставить 01 00 08 7E ( Только сохранение ).
Но тогда возникает проблема в меню списка картинок, там тоже поменяется вместо
Отправить в сообщ. будет Только сохранение , что некрасиво и нерабочее, но
методом проб получаем, что если поставить 01 00 08 75 ( Картинка ), то
она будет первой и в сохранении камеры (и при нажатии её фото сохраниться)
и в картинках (при нажатии на неё инициализируется камера) что уже удобнее!



Со 2-м FAQ вроде всё понятно. Thanks за то что не поленился всё это расписарить. Respect from Odessa!!!
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
~Gangs2er~
сообщение 18.7.2007, 21:26


MotoSkinner
****

Группа: Разработчики
Сообщений: 248
Регистрация: 4.8.2006
Из: Екатеринбург
Пользователь №: 93 787
Модель телефона: (M) E398
Прошивка: У вас такой нету))

Рейтинг: 217.5



Osta! Супер! огромное спасибо. хотелось бы ещё понять, как находить адреса, чтобы например убрать всплывающее окно блокировки.
ну и как удалять пункты меню! ато пробовал нулями забивать, но тогда остаётся пустая строка(:
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
SpyHEX
сообщение 18.7.2007, 22:06


Мастер
****

Группа: Пользователи
Сообщений: 175
Регистрация: 9.7.2007
Из: страны непуганных идиотов
Пользователь №: 140 861
Модель телефона: -=/\/\=-
Прошивка: -=]|[=-

Рейтинг: 48



Цитата
ну и как удалять пункты меню! ато пробовал нулями забивать, но тогда остаётся пустая строка(:


Для удаления пункта меню находим в лэнге пустую строчку например:
Цитата
...
1701 | Спорт
1702 |
1703 | Verizon CDMA
...

Далее, например, у нас по адресу:
Цитата
2E1014: 01000877 ; Переименовать

меняем на
Цитата
2E1014: 01001702

Теперь пункт удален.

З.Ы.: Искать значения пустой строки надо сперва в лэнге. Они различаются. Данное значение 1702 для прошивок 2.2FR/3.08R может и для других 365-ых. Так же где-то видел что на 49R для удаления пункта меню использовали значение 0100116F ; Отправить в blog, но на 2FR это не сработало: Появилось меню Отправить в blog (даже два, т.к. я хотел удалить два пункта), при выборе которого вылетаешь обратно в Мультимедиа.
2. Удаляться могут не все пункты (сам пока не проверял).

Сообщение отредактировал SpyHEX - 18.7.2007, 22:49
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
~Gangs2er~
сообщение 19.7.2007, 16:49


MotoSkinner
****

Группа: Разработчики
Сообщений: 248
Регистрация: 4.8.2006
Из: Екатеринбург
Пользователь №: 93 787
Модель телефона: (M) E398
Прошивка: У вас такой нету))

Рейтинг: 217.5



SpyHEX, спасибо конешно. но так тоже не катит. всё равно остаётся пустая строка.
Two all, ну кто нить хоть, дайте ответы на 21 пост.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Osta
сообщение 20.7.2007, 6:33


Freestyler
********

Группа: Легенды MotoFan.Ru
Сообщений: 10 329
Регистрация: 20.7.2004
Пользователь №: 8 235
Модель телефона: Moto
Прошивка: *#9999#


Настроение:
Все невыспавшиеся в следующей жизни будут котами



Рейтинг: 4362



Цитата(~Gangs2er~ @ 18.7.2007, 23:26)

ну и как удалять пункты меню!
*


или как написал SpyHEX, или переделывай все ненужные пункты
в меню на такой же ненужный типа "Отправть в blog" и отключай
этот blog в seem 0032
SEEM 0032_0001, Смещ-е 73 h/115d, Бит 1 (Абс.бит 921): BLOG_AVAILABLE - вЫкл


Цитата(~Gangs2er~ @ 18.7.2007, 23:26)

бы ещё понять, как находить адреса, чтобы например убрать всплывающее окно блокировки.
*


ну методы нет.. если конкретно убрать окно блокировки,
то возьми патч на 365_08R
Код

[Patch_Info]
Firmware=R365_G_0B.D3.08R
Description=no block info
Author=Osta

[Patch_Code]
00FA5F2: 46C046C0

и CG1 от этой прошивки части CG1 популярных прошивок для портаций патчей
открой эту 08R и перейди на адрес указанный в патче ( 00FA5F2 )
набери в поиске B5, нажми искать вверх, найдёт - жми Mark block,
потом нажми искать вниз, найдёт - жми Mark block. Тоесть ты выделишь
всю эту процедуру, где выплывает окно блокировки.. а может ещё что-то в ней, неважно.
Вот так получиться Прикрепленное изображение
Затем смотришь в своем ленге № фразы "Нажмите Меню, затем * для блок./разбл."
это номер 0291 .
Открываешь CG1 от своей прошивки и в поиске задаёшь указатель на эту фразу
01 00 02 91 у меня на R373_G_0E.30.49R нашло эти байты дважды. Но и на прошивке 08R
этих указателей тоже 2-ва. А патчиться между ними. Маркируем все байты между этими
двумя указателями. Становимся на второй указатель.
Смотрим, что стоит перед байтами, которые патчаться в 08 - это 1С 29 1С 20
Задаём в поиске вверх 1С 29 1С 20. Нашли - Прикрепленное изображение
и потом проверяем своими патчами, подставляя только свои адреса, т.к. в изначальном патче
вносимые изменения ( 46C0 46C0 ) - это 2-ва NOPa, тоесть "пустышки"

Код

[Patch_Info]
Firmware=R373_G_0E.30.49R
Description=no block info
Author=Osta

[Patch_Code]
4592CA: 46C046C0

патчим и смотрим..

Сообщение отредактировал Osta - 20.7.2007, 8:05
Прикрепленный файл 49R_no_block_info.zip   ( 295 байт ) Кол-во скачиваний: 315
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
~Gangs2er~
сообщение 20.7.2007, 8:05


MotoSkinner
****

Группа: Разработчики
Сообщений: 248
Регистрация: 4.8.2006
Из: Екатеринбург
Пользователь №: 93 787
Модель телефона: (M) E398
Прошивка: У вас такой нету))

Рейтинг: 217.5



Osta, спасибо! только вот про первое если я хочу удалить общий сброс и общую очистку, как это сделать?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Osta
сообщение 20.7.2007, 9:20


Freestyler
********

Группа: Легенды MotoFan.Ru
Сообщений: 10 329
Регистрация: 20.7.2004
Пользователь №: 8 235
Модель телефона: Moto
Прошивка: *#9999#


Настроение:
Все невыспавшиеся в следующей жизни будут котами



Рейтинг: 4362



Цитата(~Gangs2er~ @ Сегодня, 10:05)

если я хочу удалить общий сброс и общую очистку, как это сделать?
*


я так понял, что ты хочешь удалить из меню эти пункты ?
я пробовал, не получилось удалить их, а получилось так :
Комната Тестирования Патчей. Нужны быстрые тестеры
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
DmT
сообщение 21.7.2007, 17:27


Мото-Портной
******

Группа: Разработчики
Сообщений: 1 175
Регистрация: 31.3.2007
Пользователь №: 129 181
Модель телефона: LG GW620, L7e и др.
Победитель конкурса 2008

Рейтинг: 680



Я нашёл способ окончательно удалить строчку.
Вот только он немного геморойный biggrin.gif
Нужно перестроить меню так чтобы удаляемый пункт меню оказался последним.
Затем на месте удаляемого пункта вместо 0100xxxx пишем 02000000.
Всё. Пункт не отображается.
Если после удаляемого пункта есть ещё пункты, то они тоже удалятся.
На общей очистке не пробовал. Но это пока.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
~Gangs2er~
сообщение 25.7.2007, 20:50


MotoSkinner
****

Группа: Разработчики
Сообщений: 248
Регистрация: 4.8.2006
Из: Екатеринбург
Пользователь №: 93 787
Модель телефона: (M) E398
Прошивка: У вас такой нету))

Рейтинг: 217.5



Osta, про окно блок, разблок, нужные байты патчаца( закрываются нопами), их находить методом тыка, то есть между указателями лэнга? Или есть др способ, найти где патчить?

Добавлено позже (25.7.2007, 23:56):
И ещё вопрос! Решил тут в яве при нажатие на красную кнопку менюшку местами поменять! Сделал пункт возобновить первым, но при нажатие на него выполняеться ф-я пункта приостановить. Как переписать ф-ю на Возобновить?

Добавлено позже (25.7.2007, 23:57):
И ещё вопрос! Решил тут в яве при нажатие на красную кнопку менюшку местами поменять! Сделал пункт возобновить первым, но при нажатие на него выполняеться ф-я пункта приостановить. Как переписать ф-ю на Возобновить?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
DmT
сообщение 25.7.2007, 20:59


Мото-Портной
******

Группа: Разработчики
Сообщений: 1 175
Регистрация: 31.3.2007
Пользователь №: 129 181
Модель телефона: LG GW620, L7e и др.
Победитель конкурса 2008

Рейтинг: 680



~Gangs2er~,
А разве не достаточно просто поменять указатели на строки ленга местами? ph34r.gif
Мне казалось так и строится все меню.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
~Gangs2er~
сообщение 25.7.2007, 21:56


MotoSkinner
****

Группа: Разработчики
Сообщений: 248
Регистрация: 4.8.2006
Из: Екатеринбург
Пользователь №: 93 787
Модель телефона: (M) E398
Прошивка: У вас такой нету))

Рейтинг: 217.5



DmT, нет. Нет, не везде! Напр в яве при нажатие на красную кнопку.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Osta
сообщение 26.7.2007, 6:54


Freestyler
********

Группа: Легенды MotoFan.Ru
Сообщений: 10 329
Регистрация: 20.7.2004
Пользователь №: 8 235
Модель телефона: Moto
Прошивка: *#9999#


Настроение:
Все невыспавшиеся в следующей жизни будут котами



Рейтинг: 4362



Цитата(~Gangs2er~ @ Вчера, 22:50)

Osta, про окно блок, разблок, нужные байты патчаца( закрываются нопами), их находить методом тыка, то есть между указателями лэнга? Или есть др способ, найти где патчить?
*


я же написал выше :-(
Цитата(Osta @ 20.7.2007, 8:33)

ну методы нет..
*




Цитата(DmT @ Вчера, 22:59)

А разве не достаточно просто поменять указатели на строки ленга местами?
Мне казалось так и строится все меню.
*


о, нет. Прошивку собирают люди со многих стран и с разными (странными) мировозрениями, как писал Vilko :-)
Простая замена Id строк ленга действует только в Картинках, Мелодиях, Видео .. может ещё в Темах и Браузере.

Сообщение отредактировал Osta - 26.7.2007, 6:55
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
DmT
сообщение 26.7.2007, 7:01


Мото-Портной
******

Группа: Разработчики
Сообщений: 1 175
Регистрация: 31.3.2007
Пользователь №: 129 181
Модель телефона: LG GW620, L7e и др.
Победитель конкурса 2008

Рейтинг: 680



Хм, спасибо Osta за пищу для размышления... А вот ты не знаеш как тогда менять местами пункты?
И ещё такой вопрос - вот про ленг и про дрм мы префиксы поняли там (0100xxxx и 1200xxxx), а вот как быть со скинами? ph34r.gif Наверняка там тоже какое нибудь число после него номер картинки... shuffle.gif Подскажи, пожалуйсто.
ЗЫ это для порта патча FullScreenPictureViewer + FullScreenSlideShow






________________ Osta ______________________
увы , со скринами столкнулся только неделю назад,
сам в них чайник , надеюсь пока...

Сообщение отредактировал Osta - 26.7.2007, 8:54
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
DmT
сообщение 5.11.2007, 10:31


Мото-Портной
******

Группа: Разработчики
Сообщений: 1 175
Регистрация: 31.3.2007
Пользователь №: 129 181
Модель телефона: LG GW620, L7e и др.
Победитель конкурса 2008

Рейтинг: 680



Очень хочется узнать:
Как найти программный код(в иде) зная лишь строчку ленга соответсятвующую нужной операции?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
AlexKooper
сообщение 6.11.2007, 8:23


Авторитет
********

Группа: Почётные мотофаны
Сообщений: 2 838
Регистрация: 27.7.2005
Из: Йошкар-Ола
Пользователь №: 47 140
Модель телефона: E398
Прошивка: AlexKooper mod v.47

Рейтинг: 1337



DmT, строчку ленга с номером 0х0ABC ищи по коду 0х01000ABC
Но не все строки явно заданы. Бывает что задана одна, а соседние получаются прибавлением небольшого числа к её коду. также если строка работает в меню вида вкл/выкл, то скорее всего в явном виде не найдешь, там другой тип указателя, не привязанный к номеру строки в ленге... т.е. он привязан, но непонятно (мне) как
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Osta
сообщение 6.11.2007, 8:55


Freestyler
********

Группа: Легенды MotoFan.Ru
Сообщений: 10 329
Регистрация: 20.7.2004
Пользователь №: 8 235
Модель телефона: Moto
Прошивка: *#9999#


Настроение:
Все невыспавшиеся в следующей жизни будут котами



Рейтинг: 4362



Цитата(DmT @ Вчера, 12:31)

Очень хочется узнать:
Как найти программный код
*


вам пора загнать в иду файл от е398 и после его дизамба искать функции. С названием события установки темы помогу.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
AlexKooper
сообщение 18.11.2007, 6:34


Авторитет
********

Группа: Почётные мотофаны
Сообщений: 2 838
Регистрация: 27.7.2005
Из: Йошкар-Ола
Пользователь №: 47 140
Модель телефона: E398
Прошивка: AlexKooper mod v.47

Рейтинг: 1337



Цитата(DmT @ 26.7.2007, 10:01) *

И ещё такой вопрос - вот про ленг и про дрм мы префиксы поняли там (0100xxxx и 1200xxxx)


С разрешения Vilko выкладываю расширенное описание префиксов

Пример применения:
структура пунктов меню аудиоплеера на 373 платформе

это описание состояний счетчика(таймер) - выкл, осталось времени, прошло времении, всего времени... здесь указатель имеет вид 0C00хххх

ROM:103CA5DC DCD 0xC000268 ; RES_ID_CONTENT_MMC_TIMER_OFF
ROM:103CA5E0 DCD 0xC000267 ; RES_ID_CONTENT_MMC_TIMER_REMAINING_TIME
ROM:103CA5E4 DCD 0xC000266 ; RES_ID_CONTENT_MMC_TIMER_ELAPSED_TIME
ROM:103CA5E8 DCD 0xC000269 ; RES_ID_CONTENT_MMC_TIMER_REMAINING_TIME


а вот собственно пункт меню "счетчик"
ROM:103CA5EC DCD 0x33D0711
; некий порядковый номер (2 байта) + оффсет сима 4А (2 байта)
ROM:103CA5F0 DCD 0x100063B
; Таймер (это ид. строки в ленге, но ПОЧЕМУ_ТО смена этого ид. ни на что не влияет)
ROM:103CA5F4 DCD 0xD00020D
; RES_ID_FIELD_DESC_MMC_TIMER - а вот здесь указатель формата 0D00хххх
; Он определяет вывод надписи Таймер: вкл
ROM:103CA5F8 DCD dword_103CA5DC ;
; это адрес вариантов всплывающих окон 0С00хххх (см. выше)

Таким образом, пункт меню описан следующим образом
1) некий счетчик + оффсет сима
2) 0100хххх ид. ленга для названия пункта (не используется?)
3) 0D00xxxx ид. пункта, у которого есть состояния (счетчик)
4) адрес вариантов вспылвающих окон состояний

5) 0C00xxxx вариант состояния 1 (изменено: таймер выкл)
6) 0C00yyyy вариант состояния 2 (изменено: прошло времени)
7) 0C00zzzz вариант состояния 3 (изменено: осталось времени)

Причем соответствие в ленге номера строки "таймер" или "прошло времени" с хххх в указателях вида 0D00xxxx 0C00xxxx мне пока не ясно. Оно нелинейно smile.gif
Если изменить 0С00хххх на джругое, то изменится ТОЛЬКО текст во всплывающем окне, которое появлется после того, как на пункте таймер нажали, вошли в меню вида:
таймер:
выкл
прошло
осталось

и выбрали какой-то пункт.

Если менять пункты не заходя в это меню (просто джойстиком вправо-влево) то всплывающее окно не появляется. и соотв. до указателей 0С00хххх дело не доходит.

Сообщение отредактировал AlexKooper - 18.11.2007, 15:07
Прикрепленный файл drm_resources.zip   ( 144.53 килобайт ) Кол-во скачиваний: 624
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
RADIONMC
сообщение 26.1.2008, 16:33


Интересующийся
**

Группа: Пользователи
Сообщений: 55
Регистрация: 16.7.2007
Из: Кишинёв
Пользователь №: 141 566
Модель телефона: DEFYmb526, XOOM MZ604
Прошивка: 4.5.1-134_DFP-139

Рейтинг: 4.5



Портировал патч с помощью мануала от juicedddd но у меня вопрос: Как конвертировать в формат FPA для приминения через Flash&Backup
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Osta
сообщение 28.1.2008, 7:29


Freestyler
********

Группа: Легенды MotoFan.Ru
Сообщений: 10 329
Регистрация: 20.7.2004
Пользователь №: 8 235
Модель телефона: Moto
Прошивка: *#9999#


Настроение:
Все невыспавшиеся в следующей жизни будут котами



Рейтинг: 4362



Цитата(RADIONMC @ 26.1.2008, 18:33)

Как конвертировать в формат FPA для приминения через Flash&Backup
*


если у тебя файл .smp, открой его в Редакторе Патчей и сохрани в fpa
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
___РЕНАТ__
сообщение 7.2.2008, 5:27


Мастер
****

Группа: Пользователи
Сообщений: 296
Регистрация: 25.11.2006
Из: !KZN CITY!
Пользователь №: 108 142
Модель телефона: L9,К1,c650,L7e,Z3,L7

Рейтинг: 25



по мануалам которые есть в этой теме можно портировать патч с одной модели на другую?например с е398 на L7.



+Osta
только простые патчи , т.н. "некодовые"
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
МегаFAQ по Созданию, Портированию и Применению Патчей ! только в этой теме !, новых тем НЕ создавать - будут удаляться ! · Патчи и всё для них · Forum
 

Ответ в темуСоздание новой темы
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 29.6.2025, 16:26

Форум живёт: