Страница 9 из 19 ПерваяПервая 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 ... ПоследняяПоследняя
Показано с 97 по 108 из 222

Тема: Разбор прошивки ets6x8 v55D в IDApro

  1. #97
    Member
    Регистрация
    13.01.2006
    Адрес
    минск
    Сообщений
    108
    Спасибо
    4
    Благодарностей: 1 : 1
    Возможно ли переделать HuFlasher так, чтобы патчить по конкретным аресам, а не всю прошивку переливать?
    Я имею ввиду, там config файл есть, если изменения как песню представить...

  2. #98
    Junior Member
    Регистрация
    18.03.2006
    Адрес
    из Жодино
    Сообщений
    38
    Спасибо
    0
    Благодарностей: 0 : 0

    !!!!!!!!!!!!!!!!!!!!!!!

    Цитата Сообщение от dedKalash
    Ну вот и настал тот час когда я нанимаю волонтерев . Принимаются молодые и немолодые люди с знаниями и без

    Не стоит объяснять, что я не несу ответственности если кто либо из волонтеров испортит свой аппарат. Все на наш с вами страх.

    Тесты нумеруются, прошу отчеты размещать в форуме согласно номерам тестов.

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

    !!!Да, кстати, чуть не забыл, прошивка только версии 55Д!!!

    ----------------------------
    как проводить тестирование (это вводная на всякий пожарный):
    0.сделайте копию файла оригинальной (первоначальной не измененной) вашей прошивки
    1/2. изменения в прошивке совершайте редактором поддерживающим изменения бинарных файлов, при этом
    недопускается сдвиг данных (т.е. удаление (не путать с затиранием или занулением) или
    вставка (не путать с изменением или вводом нового значения) байт.
    сдвиг байт приведет к полной неработоспособности.
    одним словом длинна бинарного файла ни в коем случаи не должна меняться.
    1.каждый тест должен выполняться в отдельности от других для чистоты эксперимента
    2.группу изменений нужно совершать сразу на все адреса в группе.
    3.после нахождения изменения прошивайте и проверяйте оригинальную версию чтобы убедиться что изменения были объективны,
    а не основывались на субъективных ощущениях что стало чтото лучше или хуже как часто бывает.
    4.каждое изменение подробно документируйте
    5.надеюсь все умеют переводить дес числа в hex (порядок байт при изменении в прошивке для двубайтных чисел младшый старший)
    5/2. значения таумаутов почти всегда в милисекундах
    6.таймаут который задается одним байтом можно менять в пределах от 0 до 255 (лучше от 5 до 250 от греха подальше)
    7.таймаут который задается двумя и более байтами можно менять в пределах от 0 до 65535 и более (лучше от 100 до 60000)
    8.таймаут который задается двумя раздельными байтами, которые выступают как слагаемые можно задавать в пределах от 0 до 511 (лучше от 5 до 500)
    9.в скобках коментарии

    Тесты на проверку таймеров
    1. группа изменений в разных процедурах для одного таймера, который по предположениям отвечает
    за соединение с сетью, передачу данных или голоса или поиск сети.
    адрес содержимое
    было 0x00092364 -> 0х64 (100 милисекунд)
    было 0х0009348A -> 0x64
    было 0х00093858 -> 0x64
    по всем трем адресам можно пробовать вместо 0х64 числа от 0х01 до 0хf0, причем одно числово все три адреса
    задача: попробовать краевые числа 0x5, 0x19, 0xc8, 0xf0
    подробно описать что происходило, гляда на монитор и совершая звонки и передачу данных.

    2. этот таймер предположительно влияет на поиск сети
    было 0х0009245a -> 0x3c
    задача: пробуем краевые числа 0x5, 0x19, 0xc8, 0xf0
    подробно описать что происходило, гляда на монитор и совершая звонки и передачу данных.

    3. таймер перенабора номера
    3.1 таймер перенабора номера в случае потери звонка, перенаправления или сбоя звонка и еще чего то
    было 0х000с0414 - 0хb8, 0x0b (два байта подряд, в дес форме 3000 милисекунд)
    задача: попробовать любые числа в диапазоне от 500 до 10000 перевести в hex и пропатчить
    проверить что я прав. тест проводить, вызывая случаи автоматического перенабора

    3.2 странный таймер на перенобор через 10000 милисекунд
    было 0x000bd798 -> 0x10, 0x27
    задача: попробовать любые числа в диапазоне от 500 до 30000 перевести в hex и пропатчить
    проверить что это вызывая случаи перенабора

    4. таймер скринсайвера
    4.1. таймер на 15000 милисекунд
    было 0x000c23a4 -> 0x98, 0x3a
    4.2. таймер на 5000 милисекунд
    было 0x000c4068 -> 0x88, 0x13
    задача: попробовать другие числа и найти в каком это режиме используется каждый таймер

    5. невероятное количество вызовов (не меннее 150) одного и тогоэже таймера на некое ожидание чего то
    5.1 группа вызовов таймера который исполоьзуется в режиме редактирования имени для поиска по книге,
    банера и наверное сообщения смс, напоминания, email и memo.
    похож на выход из этого режима через 10 секунд
    было 0x0011b4b0 -> 0x10, 0x27 (10000 ms)
    было 0х0011b878 -> 0x10, 0x27 (10000 ms)
    задача: изменить и проверить что это. можно также попробовать изменить их по отдельности, вдруг влияют на разные режимы

    5.2 таймер который используется в режиме изменения контраста (500мс)
    таймаут задается раздельными двумя байтами как слагаемые
    было 0x00106e36 -> 0xff
    было 0x00106e38 -> 0xf5
    задача: измените эти числа в различных пределах (работает только их сумма) и проверьте что будет


    5.3 таймер который используется при установке времени будильника или всяких напоминаний
    таймаут задается раздельными двумя байтами как слагаемые
    было 0x001059с2 -> 0xff
    было 0x001059с4 -> 0xf5
    задача: измените эти числа в различных пределах (работает только их сумма) и проверьте что будет

    пока патчей для группы пять достатоно, если не поймем что это, дам продолжение по этой группе

    ---- опустим таймер на показ экстренных сообщений на экране ----
    ---- опустим таймер на показ экстренных сообщений в рамке на экране ----


    6. таймер, предполагаю что используется как пауза перед проигрыванием мелодий
    6.1 таймер видимо задающий некую паузу перед проигрыванием мелодии (звонка, смс, будильника - это вопрос)
    может при входящем звонке
    таймаут на 1500 мс
    было 0x000b9914 -> 0xdc, 0x05
    задача:попробовать разные значения, найти что это и где используется

    6.2 еще один, похоже используется при повторах проигрывания (жаль диапазон маловат 0-511)
    два раздельных слагаемых
    было 0x000b67d0 -> 0xff
    было 0x000b67d2 -> 0xf5, 0x30

    патчим так
    0x000b67d2 -> 0x00, 0x01

    таким образом расширяем диапазон изменения таймаута в 16 раз 0-8176.
    по адресу 0x000b67d0 задаем число которе потом будет умножено на 16.
    теперь таймаут задается с шагом 16.

    задача: проверить большие таймауты и определить действительно ли он исп для повторов или нет.

    7. фиг знает что за таймер (вроде на анимацию или для экрана чтото) 3000мс
    7.1.
    было 0x0014afcc -> 0xb8, 0x0b
    задача: попробовать разные значения, найти где он работает
    7.2. такое же чудо в эксплорере видимо при старте 4000 мс
    было 0x001c1ede -> 0x7d (125)
    это число множится потом на 32, так что только с шагом 32
    задача: изменить и проверить

    есть еще ряд загадочных таймеров, но о них потом.

    Думаю работы предостаточно
    Удачи


    Ну, ты и подкинул работенки. Это сколько же времени убью. Ну ладно это, не самая главная проблема. У праблы с тестом 2. Он меня больше всего заинтересовал. Sori, что не по порядку начал. Когда я меняю на кривые числа (0x5, 0x19, 0xc8, 0xf0) у меня почему-то идёт сдвиг на 2 байта, прошива меняет объем на 2 байта. Причём пробовал все. И самое, что интересное: меняю на 0x5, сдвиг на 2 байта, если не поменяю назад, в исходное положение, а сразу же меняю на 0x19, идёт сдвиг ещё на 2 байта, в общей суме уже 4 байта. Не знаю что за фигня. Мне было бы проще просто заливать готовые прошивы, и просто тестить их, и сообщать все результаты.

  3. #99
    Member
    Регистрация
    19.12.2005
    Адрес
    Minsk
    Сообщений
    146
    Спасибо
    0
    Благодарностей: 4 : 2
    Мне не трудно пропатчить самому, но прикиньте что будет с веткой если здесь начнут как грибы после дождя появлятся прошивки по 2.5 мег даже в зжатом состоянии?

    Воттута добрым и умным человеком (спасибо H.Макс) в excel сделан патчер.

    http://www.mobile-files.ru/forum/sho...7&postcount=75

    Во вкладке данные вводим адреса и старые и новые данные
    Во вкладке управление грузим файл и патчим.

    Все должно работать.

  4. #100
    Member
    Регистрация
    19.12.2005
    Адрес
    Minsk
    Сообщений
    146
    Спасибо
    0
    Благодарностей: 4 : 2
    Цитата Сообщение от HlAn
    Возможно ли переделать HuFlasher так, чтобы патчить по конкретным аресам, а не всю прошивку переливать?
    Я имею ввиду, там config файл есть, если изменения как песню представить...
    Врядли имеется возможность шить отдельные адреса. Хотя кто знает...

  5. #101
    Newbie
    Регистрация
    07.02.2005
    Адрес
    Гомель
    Сообщений
    74
    Спасибо
    0
    Благодарностей: 0 : 0
    Цитата Сообщение от dedKalash
    Врядли имеется возможность шить отдельные адреса. Хотя кто знает...
    На сколько я знаю, флешка в ETS6x8 шьется блоками по 64 кБайт. И huEditor (если в нем менять что-либо и потом нажать flash to phone) прошивает только тот блок (блоки) памяти, в котором производились изменения... Вот если бы к Text Editor'у добавить еще и HEX Editor - патчить стало бы очень легко! Попросим авторов программы!..
    huFlasher переписывает блок, содержащий таблицу размещения мелодий, а сами мелодии шьет в свободные блоки.
    Последний раз редактировалось Н. Макс; 21.09.2006 в 13:07.

  6. #102
    Member
    Регистрация
    19.12.2005
    Адрес
    Minsk
    Сообщений
    146
    Спасибо
    0
    Благодарностей: 4 : 2
    Значит было бы не плохо еслиб ктонить сделал софт для патчей по нужному адресу или настроил имеющийся.

    Кстати нашел режим в программе хуавея, он не задействован, но рыщет в папке MIDI файлы и их имена вставляет как меню, не более 10 штук
    ограничение по количеству конечно можно снять, но вот теперь задача его задейстовать. Тогда для мелодий вообще ничего шить не нужно, просто залил в папку MIDI файлы и усе. Да и мелодии отображались бы в соответствии с именами файлов.

    Буду пробовать включить режим. Боюсь только что выйдет как с муз редактором, который просто не включается (по крайней мере пока). Кстати смысл его примерно как телефонах GSM: задаем темп, и играем всякую фигню с клавиатуры и сохранем потом это дело в файл. Круто было бы.

    Вообще глядя на код складывается впечатление, что китайцы чтобы сделать бюджетный телефон просто поотключали кучу фичей. А беларусы наварились на этом, продав 30тыш по не бюджетной цене .

  7. #103
    Member
    Регистрация
    13.01.2006
    Адрес
    минск
    Сообщений
    108
    Спасибо
    4
    Благодарностей: 1 : 1
    Там даже при переводе встречались непонятные выражение типа "внешний дисплей", IMHO эта прошивка не только для 6х8 используется, а фичи, которые поотключали аппаратно может не могут быть реализованы или дорого их "реализовывать" было. На это ведь время надо, а мобильный мир не стоит на месте...

  8. #104
    Member
    Регистрация
    19.12.2005
    Адрес
    Minsk
    Сообщений
    146
    Спасибо
    0
    Благодарностей: 4 : 2
    Цитата Сообщение от HlAn
    Там даже при переводе встречались непонятные выражение типа "внешний дисплей", IMHO эта прошивка не только для 6х8 используется, а фичи, которые поотключали аппаратно может не могут быть реализованы или дорого их "реализовывать" было. На это ведь время надо, а мобильный мир не стоит на месте...
    Да, это прошивка уже рождалась и для ets768 или как там его, с внешним экраном. Видимо в первых версих программы поддержки внешнего экрана не было.

    Могу сказать что в программе есть целый ряд процедур для работы с внешним экраном, вывод времени и т.д.

    Более того в процедурах бровзера есть такие которые отвечают за голосовой вызов, посылку смс, поддержку адресной книги и проигрывание мультимедиа.
    отсюда вывод: бровзер в етс6х8 задействован не полностью.

    Задействовать чтолибо патчами крайне сложно, лучше иметь исходник и толко через перекомпиляцию. Создать полноценный "сырок", как ктото однажды выразился, это моя задача. Цель - это декомпиляция всего кода, т.е. получить исходник на языке Си.

    Глядя на программу, которая занимает 2 метра, можно сделать вывод, что одному ... с нуля ... это не в жизнь не написать... Просто терпения не хватит.

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

    Также глядя на код могу заявить что оптимизатор компилятора просто убогий. Из-за его убогости код трудно читаем это раз, код рыхлый это два (куча повторений инициализаций регистров одним значением вместо использование одного регистра один раз инициализированого, т.е. не сделан Global Register Coloring), я почти никогда не встречал разбиение процедур на подпроцедуры с целью экономии памяти (вот за это спасибо, иначе код ещебы сложнее читался), т.е. память ПЗУ расходовалась не экономно это три.

    ОЗУ задействовано аж 18 метров, трудно представить какой фигней там все забито. У каждого режима своя область данных, конечно благодаря квазимногозадачности.

    Вот и все пока.

  9. #105
    Member
    Регистрация
    04.06.2005
    Адрес
    деревня Москва
    Сообщений
    739
    Спасибо
    2
    Благодарностей: 16 : 16
    Насчет метража...
    Не забывай, что тот же дисплюй программно это ПАМЯТЬ в верхних адресах

  10. #106
    Member
    Регистрация
    13.01.2006
    Адрес
    минск
    Сообщений
    108
    Спасибо
    4
    Благодарностей: 1 : 1
    Цитата Сообщение от dedKalash
    Вывод второй: использовалось много наработанного стороннего кода, типа бровзера, плейера, стеки протоколов и т.д.
    Может есть смысл поискать их исходники?

  11. #107
    Member
    Регистрация
    19.12.2005
    Адрес
    Minsk
    Сообщений
    146
    Спасибо
    0
    Благодарностей: 4 : 2
    Цитата Сообщение от HlAn
    Может есть смысл поискать их исходники?
    Искал, но безрезультатно.

    Нашел только АПИ на Linux CE.

  12. #108
    Member
    Регистрация
    19.12.2005
    Адрес
    Minsk
    Сообщений
    146
    Спасибо
    0
    Благодарностей: 4 : 2
    Цитата Сообщение от probnik
    Насчет метража...
    Не забывай, что тот же дисплюй программно это ПАМЯТЬ в верхних адресах
    Я имел ввиду озу с буферами экрана и т.д., та часть что является адресным пространством экрана, совсем в другой области

Похожие темы

  1. Philips X806 разбор
    от Erebus в разделе Philips для новичков
    Ответов: 5
    Последний ответ: 01.10.2012, 22:02
  2. k550 разбор
    от Ups в разделе SonyEricsson для новичков
    Ответов: 6
    Последний ответ: 20.02.2008, 12:10
  3. 7380 Разбор
    от Юрий1981 в разделе Nokia для новичков
    Ответов: 1
    Последний ответ: 19.12.2007, 17:24
  4. Разбор Е700
    от CaHTexHIK в разделе Agere/Skyworks - Series
    Ответов: 2
    Последний ответ: 09.10.2004, 13:20

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
  Рейтинг@Mail.ru