Перейти к содержанию
Old Phone Forum
  • Вход

    Вы сейчас не залогинены на форуме.

    Для возможности комментариев, загрузки файлов, подписок на ответы - вам надо войти.

Рекомендуемые сообщения

Дорогие патч-мейкеры!

 

Решил тут реализовать одну идею и столкнулся с такой проблемой: почему-то во всех версиях патча для моделей телфонов, начиная с х700 пропали такие мега-полезные функции как выделение/очистка блока памяти и запуск кода по адресу с параметрами (реализованные в первой версии для телефонов X100/X600), что сводит на нет огромный отладочный (и не только) потенциал этого патча?!

 

Впрочем, патч для х100, выложенный когда-то Алексеем (AlexeyK) тоже не работает, о причинах говорить не буду, не разбирался пока.

 

Идея была следующая:

- динамическое выделение памяти в телефоне командой с компьютера

- запись туда нужного кода (возможна в данной реализации)

- запуск кода

- чтение результата (возможно в данной реализации)

- очистка памяти.

 

Варианты применения - безграничны! Но... увы!

 

Кстати, с некоторых пор интерфейс патча переработан, да и набор команд (их номера), существенно отличаются. Это также вызывает проблемы с унификацией интерфейса :28:

X100 → X700 → i9300

Ссылка на комментарий
Поделиться на другие сайты

Решил тут реализовать одну идею и столкнулся с такой проблемой: почему-то во всех версиях патча для моделей телфонов, начиная с х700 пропали такие мега-полезные функции как выделение/очистка блока памяти и запуск кода по адресу с параметрами (реализованные в первой версии для телефонов X100/X600), что сводит на нет огромный отладочный (и не только) потенциал этого патча?!

 

Впрочем, патч для х100, выложенный когда-то Алексеем (AlexeyK) тоже не работает, о причинах говорить не буду, не разбирался пока.

 

странно, именно так и было всё задумано тогда, и вроде работало. в самом патче минимум проверок на адекватность данных, может по этому. для запуска thumb кода надо к адресу прибавлят +1.

 

PS. Привет, давно не было слышно. :28:

Одна из последних версий binedit здесь.

AlexeyK.gif

Ссылка на комментарий
Поделиться на другие сайты

странно, именно так и было всё задумано тогда, и вроде работало. в самом патче минимум проверок на адекватность данных, может по этому. для запуска thumb кода надо к адресу прибавлят +1.

 

PS. Привет, давно не было слышно. :(

привет! Ага, давно не было, тоже рад видеть ) Что-то странное происходит. Залил патч, он на "AT+CGSN" выдает IMEI, на "AT+CGSN=?" отвечает OK, а на всё остальное - "+CME ERROR: 3"... Получается, что патч нифига не установлен или просто не работает ))

 

Извиняюсь, прошил еще раз другой версией флешера, всё работает :28:

 

А что касается новых моделей, так в них эти функции просто не реализованы, в частности: http://OldPh.one/index.php?showtopic=38211?p=...mp;#entry407064

Изменено пользователем stepan_v

X100 → X700 → i9300

Ссылка на комментарий
Поделиться на другие сайты

А что касается новых моделей, так в них эти функции просто не реализованы, в частности: http://OldPh.one/index.php?showtopic=38211?p=...mp;#entry407064

у первых вариантов переноса патча на линейку swift были проблемы с некоторыми функциями патча, вот их и наверное и упразднили :59: . Кстати одно исправление в указанном патче можно было не делать. чтобы не убивались начальные нули надо заключать параметры в кавычки. так было и на X100.

Одна из последних версий binedit здесь.

AlexeyK.gif

Ссылка на комментарий
Поделиться на другие сайты

чтобы не убивались начальные нули надо заключать параметры в кавычки. так было и на X100.

ага, видел.

 

молодые ребята, горячие :ad: Привыкли решать проблемы "в лоб", не пытаясь разобраться в сути явления ) Сорри, никого не хотел обидеть :59:

X100 → X700 → i9300

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Потому что например я предпологал что в примерах патча описание правильное. А потом выясняется, что даже в базовых версиях описание одно, а BinEdit шлёт совсем иначе команды (и они при этом работают). А в терминале зато - ничего не работает, если набирать так как указано в описаниях патчей.

Нужен какой-то патч на C3322i, C3322, C3592, B5722, S5610, E1080, E1081, и прочие Swift/Infineon ? Обращайтесь в ЛС или E.F2065@gmail.com

Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

Смотрю я тут исходники CGSN начальные (которые в архиве с каким-то BinEdit были)…

Про CGSN=4 (запуск кода)

там после запуска используется процедура BinaryToHexString, которая обрабатывает не 4-байтные слова, а массив единичных байт.

 

В результате, такой вот код к примеру делаем:

 

ldr r1, =0x1ABCDEF1

ldr r2, =0x2ABCDEF2

ldr r3, =0x3ABCDEF3

ldr r4, =0x4ABCDEF4

ldr r5, =0x5ABCDEF5

ldr r6, =0x6ABCDEF6

ldr r7, =0x7ABCDEF7

ldr r0, =0x8ABCDEF8

mov r8, r0

ldr r0, =0x9ABCDEF9

mov r9, r0

ldr r0, =0xAABCDEFA

mov r10, r0

ldr r0, =0xBABCDEFB

mov r11, r0

ldr r0, =0xCABCDEFC

mov r12, r0

ldr r0, =0x0ABCDEF0

 

и в ответ нам приходит:

F0DEBC0AF1DEBC1AF2DEBC2AF3DEBC3AF4DEBC4AF5DEBC5AF6DEBC6AF7DEBC7AF8DEBC8AF9DEBC9AFADEBCAAFBDEBCBAFCDEBCCA

 

ну и BinEdit это интерпретирует как:

F0DEBC0A

F1DEBC1A

F2DEBC2A

F3DEBC3A

F4DEBC4A

F5DEBC5A

F6DEBC6A

F7DEBC7A

F8DEBC8A

F9DEBC9A

FADEBCAA

FBDEBCBA

FCDEBCCA

 

Вопрос. Это так и должно быть ? Или там в патче ошибка которую никто не проверял ?

 

А то я сейчас исправлю (вместо BinaryToHexString циклом Long2Hex сделаю выдачу 0ABCDEF01ABCDEF1…СABCDEFС) - а потом опять кто-нибудь скажет что надо было разбиратся в сути отсутстивя документировани…

Нужен какой-то патч на C3322i, C3322, C3592, B5722, S5610, E1080, E1081, и прочие Swift/Infineon ? Обращайтесь в ЛС или E.F2065@gmail.com

Ссылка на комментарий
Поделиться на другие сайты

Вопрос. Это так и должно быть ? Или там в патче ошибка которую никто не проверял ?

 

А то я сейчас исправлю (вместо BinaryToHexString циклом Long2Hex сделаю выдачу 0ABCDEF01ABCDEF1…СABCDEFС) - а потом опять кто-нибудь скажет что надо было разбиратся в сути отсутстивя документировани…

В мониторе байты переворачивались, при запуске нет. Исправил.

Кстати при запуске, байты тоже не правильно попадали в регистры.

 

Патч писался для X100-X600, там BigEndian и такой проблемы не было :) и очень странно что до сих пор этого никто не заметил.

Одна из последних версий binedit здесь.

AlexeyK.gif

Ссылка на комментарий
Поделиться на другие сайты

В мониторе байты переворачивались, при запуске нет. Исправил.

Кстати при запуске, байты тоже не правильно попадали в регистры.

Зря я это написал :o При запуске - верни лучше как было , так нагляднее и единообразнее. Лучше со стороны патча исправить

Нужен какой-то патч на C3322i, C3322, C3592, B5722, S5610, E1080, E1081, и прочие Swift/Infineon ? Обращайтесь в ЛС или E.F2065@gmail.com

Ссылка на комментарий
Поделиться на другие сайты

Зря я это написал :ak: При запуске - верни лучше как было , так нагляднее и единообразнее. Лучше со стороны патча исправить

Ждём исправленную версию 1.3. Я так понял, уже без #

Можешь в определения внести константы для D880XEHJ1:

 

.ifdef D880XEHJ1
.equ a_atp_Result 0x3088E454
.equ s_atp_CurrentCommandInfo 0x3088F4F4
.equ gs_look 0x306048B8
.equ CGSNCommand 0x2062F844
.equ SendDataReq 0x217209E4
.equ memcpy 0x205A2E3C
.equ s_RunMcc 0x217841EC
.equ s_rep01 0x2114A51C
.equ s_rep02 0x2114A524
.equ s_rep03 0x2114EBCC
.equ s_rep04 0x20156FDB
.equ s_rep05 0x2062E2B5
.equ s_patch 0x20861B5E
.endif

Сам ищу, чем скомпилить.... свой кейл пал в неравной борьбе с живностью, новый, с сайта, изуродовали так, что на нём ничего путёвого не напишешь... Народ, на чём вы компилите? Может, у кого завалялся KARM240 или что-то в этом роде?. Кстати, по-моему, первая версия патча писана на Сях....или я не прав?

Изменено пользователем KonstanT
Ссылка на комментарий
Поделиться на другие сайты

Ждём исправленную версию 1.3.
Ждём когда будет BinEdit с исправленным багом CR-LF… В патче будет выдача LittleEndian как и прежде. А пока патч раздаётся только другим патчерам

 

Я так понял, уже без #
Да. Теперь аргументы должны быть в кавычках (binedit кстати так сам и шлёт). Ну и режим запуска кода в памяти мобилы вернулся. Можно разные функции кода быстро исследовать методом тыка не прошивая патчи в мобилу, а запуская их прямо в ОЗУ.

 

Можешь в определения внести константы для D880XEHJ1:
Под D880XEHG2 патч есть. А под HJ1 вроде бы патчи не пишем.

 

Народ, на чём вы компилите?
В BinEdit есть встроенный ARM/Thumb компилятор.

Нужен какой-то патч на C3322i, C3322, C3592, B5722, S5610, E1080, E1081, и прочие Swift/Infineon ? Обращайтесь в ЛС или E.F2065@gmail.com

Ссылка на комментарий
Поделиться на другие сайты

Под D880XEHG2 патч есть. А под HJ1 вроде бы патчи не пишем.

???

Ну да ладно, если это - дело принципа - тогда не включай! :)

В BinEdit есть встроенный ARM/Thumb компилятор.

Действительно, есть. Но я имел в виду профессиональную тулу.

Ссылка на комментарий
Поделиться на другие сайты

Народ, на чём вы компилите? Может, у кого завалялся KARM240 или что-то в этом роде?. Кстати, по-моему, первая версия патча писана на Сях....или я не прав?

Вроде как все компилят в BinEdit... ну может пару патчеров ща перешли на IAR....

Жизнь - пьяный поэт, я - слово.

Я жесток и грустен, когда ему херово.

Жизнь - старый поэт, жизнь - усталый поэт,

А я... Что я? Его инструмент!...

 

Разработка Broadcom: http://www.rk-team.net/

Новости проекта QuB на Twitter

Ссылка на комментарий
Поделиться на другие сайты

Действительно, есть. Но я имел в виду профессиональную тулу.

В чём критерий профессиональности? Может чего доработать надо?

Компилятор в binedit написан с учётом пожелений пользователей и компилирует ARM код GNU ASM и частично Keil. Плюс несколько доработок под Samsung.

Вот описание http://binedit.sgh.ru/readme3.php

  • Like 2

Одна из последних версий binedit здесь.

AlexeyK.gif

Ссылка на комментарий
Поделиться на другие сайты

Люди, а как делать и снимать показания этого патча. С помощу чего! :(

Счастливый обладатель лицензионной Windows 7

Для друзей просто ' Паня '

Ссылка на комментарий
Поделиться на другие сайты

CGSN патча для е200 найти немогу. Помогите найти. Раньше вроде был :(

Счастливый обладатель лицензионной Windows 7

Для друзей просто ' Паня '

Ссылка на комментарий
Поделиться на другие сайты

CGSN патча для е200 найти немогу. Помогите найти. Раньше вроде был :(

Держи на GD6

CGSN.rar

  • Like 1

Ты только пришёл? Тогда: ЧИТАЙ! Если прочитал, то начни от СЮДА!

Ссылка на комментарий
Поделиться на другие сайты

Терменал ругается что отсуствует патч. Что делать? Но пачт применённый к прошивке

Счастливый обладатель лицензионной Windows 7

Для друзей просто ' Паня '

Ссылка на комментарий
Поделиться на другие сайты

Терменал ругается что отсуствует патч. Что делать? Но пачт применённый к прошивке

Не обращать на это внимание и продолжать дальше работать :(

Ты только пришёл? Тогда: ЧИТАЙ! Если прочитал, то начни от СЮДА!

Ссылка на комментарий
Поделиться на другие сайты

ничо не рaботaт. ни оdнa комaнda. опиши пож. кaк исп. комaнdи

Счастливый обладатель лицензионной Windows 7

Для друзей просто ' Паня '

Ссылка на комментарий
Поделиться на другие сайты

Панька,

в настнойках отключи проверку наличия CGSN патча.

Ребята может я чото не то делаю.

Беру "AT+CGSN=5" кидаю в окно терминала ижму "Передать", в нижнем окне пишет "AT+CGSN=5 ОК", жму "Прочитать" ничо не происходит! Помогите пож. :):)

Счастливый обладатель лицензионной Windows 7

Для друзей просто ' Паня '

Ссылка на комментарий
Поделиться на другие сайты

Ребята может я чото не то делаю.

Беру "AT+CGSN=5" кидаю в окно терминала ижму "Передать", в нижнем окне пишет "AT+CGSN=5 ОК", жму "Прочитать" ничо не происходит! Помогите пож. :):)

Не понял, а чего ты вообще ждёшь от CGSN=5 ? Там ещё аргументы надо.

И вообще, есть разные ветки CGSN-патча, где CGSN=5 имеет совсем разные действия.

В принципе, новые BinEdit заточен под версию CGSN v1.3, которая в настоящее время есть только под D780, D880, D980, C5212, M3510. Для всех прочих - при необходимости могу тоже собрать, исходник в принципе универсальный (только см. на базе M3510 v.1.3.1, у более древних - 1.3 - универсальность хромает).

 

и в BinEdit нет надобности вводить CGSN-команды в терминале, там напрямую они работают через интерфейс: поиск, мсс, монитор памяти, запуск кода и т.д.

  • Like 1

Нужен какой-то патч на C3322i, C3322, C3592, B5722, S5610, E1080, E1081, и прочие Swift/Infineon ? Обращайтесь в ЛС или E.F2065@gmail.com

Ссылка на комментарий
Поделиться на другие сайты

сделал CGSN v.1.4

две новые команды:

 

CGSN=6,"AAAAAAAA" - читает 32-битное слово с указанного адреса

CGSN=9,"AAAAAAAA","WWWWWWWW" - пишет 32-битное слово по указанному адресу.

 

Применяются они для работы с портами.

Поскольку через CGSN=4 оказалсь нельзя запустить код обращающийся к портам - мобила виснет, какие-то аппаратные ограничения доступа к памяти исполняемого кода.

 

вообще хочу найти порт управления фмтюнером…

Нужен какой-то патч на C3322i, C3322, C3592, B5722, S5610, E1080, E1081, и прочие Swift/Infineon ? Обращайтесь в ЛС или E.F2065@gmail.com

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


×
×
  • Создать...