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

Хацкер

Участники
  • Постов

    277
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные Хацкер

  1. stepan_v, KeyBacklightOff v2.0.2 два индекса

    первый 0443, второй не помню или 0444 или 0442 (просьба владельцев проверить) помню что идут рядом "Основной дисплей" и "Внешний дисплей" меняет на "Продолжительность" и "Клавиатура" соответственно, в дополнении Pimen'a к моему патчу вроде используются тот который соответствует "Клавиатура", но естественно не меняется.

    Добавить текстовые индексы не такая большая проблема
    каким образом это можно сделать? Новую таблицу делать?
  2. Правда, боюсь не хватит даже всего зарезервированного диапазона

    Можно же делать обработку далее следующего параметра (4-го, 5-го и тд.) и дело в шляпе :idea: Также от R7, в которой адрес начала МСС сидит и плясать

  3. ApTEeeM, какое отношение имеет мод Гарема к теме патчей??? :x

    Кто про что... я с энергопотреблением борюсь ;-)

    Garem!, соблюдайте регламент товарисЧи ;-)

    Вот есчё патчик сделал... из той же серии :lol: Этакий эдишн к KeyBacklightOff и Charging Light Off... назвал Dimming Light Off он отключает тусклую подсветку дисплея которая светится целую минуту после основной (выбранной в меню). Теперь будет просто без подсветки... а через минуту как положено - цифр. часики.

    Наподобе х100 и др. :idea:

    Dimming_Light__ff.rar

    Dimming_Light__ff.rar

  4. maxler, в смысле зависает? Автор же писал что ява в трее на работе телефона не сказывается. Или ты имеешь ввиду остановку игры?

    Oleg-V-I-P, Входящие же обрабатываются и так, после разговора вылазит: продолжить игру? Я думаю на этой фишке и был основан этот патч. А вот принятые СМС изначально не обрабатываются... я думаю с этим патчем проблем быть не должно - пришла месага, свернул... ответил и дальше играй.

  5. Глобальные переменные (от 1 до 4-х байт), а как узнать сколько моя байт при портировании патча?
    по командам загрузки или записи

     

    Чтение значения памяти / Запись в память

     

    Load Register

    LDR – Загрузка в регистр т.н. «слова» (word), т.е. значения из 4-х байт, соответственно команда может адресоваться к адресам кратным 4 байтам (берётся 4 байта)

    LDRH – Загрузка в регистр т.н. «полуслова» (half word), т.е. значения из 2-х байт, соответственно команда может адресоваться к адресам кратным 2 байтам (берётся 2 байта)

    LDRB – Загрузка в регистр 1 байта, может адресоваться с точностью до байта (берётся 1 байт).

     

    Store Register

    Соответственно аналогичная группа команд STR, STRH, STRB служит для записи значения из регистра в адрес памяти.

     

    Если командами загрузки грузить можно значение как из кода самой прошивки, так и значение опертивки, то писать можно только в оперативку - иначе перезагруз :?:

  6. Pimen, молодец!... я и забыл что у вас i-menu... и добираться до настроек уже и не сподручно наверное 8) ...

    mazdaec, moiseenko, пока демку постараюсь сделать... только огромная просьба к вам... подождать и набраться терпения, о сроках пока не говорю...

  7. Мне кажется, что это метод для "сегодняшнего дня". Аккум может и лучше будет пахать (не знаю, пока этот метод не пробовал), но, имхо, он просто сдохнет быстрее... Для увеличения работы аккума мне очень патч Хацкера помог (отключение подсветки клавиш, демка где-то в его посте была, не знаю сейчас есть ли...)

    Я тоже придерживаюсь такого мнения... я могу сделать так, чтобы АКБ работал дольше если не в 2, то в полтора раза точно, снизив вольтаж при котором тело дает команду на выключение с 3 х вольт до нуля... но! архитектура литийионных-аккумуляторов предполагает постоянный заряд и полный разряд до 0 просто их убивает... такой разгон будет работать неделю-две... а потом емкость свалится до самого плинтуса!

  8. объясните как засунуть текст в регистр, и как вставить в текстовое поле его из регистра

    В корне неправильная постановка вопроса :(

    Кодировка текста:

    1 байт = 1 буква на наглийском

    2 байта = 1 буква на национальном языке

    (именно поэтому в SMS-ку на русском влазит в 2 раза меньше букв)

     

    Тепереча подумай сколько текста можно загрузить в 32х разрядный регистр, емкость котого 4 байта? ;) маловато - не правда ли... без оперативки не обойтись...

  9. EvgeniyZ, Вполне, главное найти место (адрес) который бы не использовался или же использовался, но вместе с твоим кодом не конфликтовал

    Здесь надо быть осторожным...

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

    На медне ковырял патч на увеличение размера мелодий ММF, мои догадки строятся на том, что там ссылки на стандартный буфер ОП поменяли на другой - большой, т.о. при наличии установленного на телефоне этого патча, можно использовать оперативку от стандартого буфера под мелодии.

     

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

    Т.е. к примеру

    1.Грузится в регистр R0 адрес переменной - командой LDR

    2.Далее грузится значение оперативки по искомому адресу, но уже в регистр R1

    3.Т.к. в R0 уже сидит адрес, то можно загрузить еще переменную, адрес которой недалеко.... для этого используется та же команда LDR, только со смещением...

    Вот в такуой конструкции автопоиск адресов использования BinEdit'a уже бессилен :( имей ввиду

    Если смещения используемого самой командой LDR не хватает, может использоваться арифметика, напр. с адресом в регистре можно сделать любые махинции - как с обычным числом.

    и уж только тогда, когда оптимизатор кода не сможет получить переменную - идет явное указание ее в коде - такая конструкция займет 8 байт (4 - адрес и по 2 на две LDR).

  10. но такого адреса нет, прошивка закончилась давно! Вот я и хочу узнать, как именно найти этот эквивалентный адрес!

    Когда я начинал ... я тоже был обескуражен тем - что прошивка закончилась и как искать не понятно. Это область оперативки, соответственно в прошивке ее не будет. Но логично предположить что к этой глобальной переменной идет обращение из кода самой прошивки - так?! Значит надо найти в прошивке где идет обращение к ней. Т.е. зная адрес этой гл. переменной (gv_InCharge) надо поискать где она еще используется помимо патча... т.е. найти функцию в которой она используется - а потом... правильно! найти такую же функцию и у себя - и уже в своем коде ты увидишь новый свой адрес для той же переменной!

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

  11. Официально выслал всем подписчикам новую версию KeyBacklightOff v2.0.2!!!

     

    Что реализовано:

    1. Добавлено новое меню в котором можно вкл./выкл. подсветку клавиатуры.

    2. Появилась возможность вкл./выкл. подсветку горячими клавишами (по умолч. - удержание "1" )

    3. Подсветка не привязывается ко времени 15 сек. продолжительность - отдельно - клавиатура отдельно

    4. Переключение в отличае от предыдущей версии происходит мгновенно

    ------------

    Что пока не удалось решить:

    1. При выключении телефона выбранный режим подсветки для клавиатуры по умолчанию сбрасывается на выключено

    2. Некорректно отображаются всплывающие подсказки напротив позиции "клавиатура"

  12. Таблица иконок (iconstable)

     

    <iconstable title="Большие (при вызове)" type="bigicons" item="Иконка" ofs="0x8A78D8" reclen="24" count="78" ofsleft="4" ofstop="6" ofswidth="8" ofsheight="10" ofssize="14" bpp="8=0A,16=06" ofsbpp="17" ofsptr="20" lang="3;1-37=386,402;38-41=387,459;42-44=387,464;45-49=387,469;50-58=388,450;59-67=389,393;68-78=390,439">

     

    008A78D8: FFFF0000 0030 0041 001E 001E 0000 0384 03 0A 0000 0079D523

     

    ofs="0x8A78D8" – адрес начала таблицы;

    reclen="24" – число байт в строке;

    count="78" – число строк (общее кол-во картинок);

    ofsleft="4" – по адресу ofs+ofsleft берется 2 байта - левый край картинки (0030);

    ofstop="6" – по адресу ofs+ofstop берется 2 байта – верхний край картинки (0041);

    ofswidth="8" – по адресу ofs+ofswidth берется 2 байта – ширина картинки (001E);

    ofsheight="10" – по адресу ofs+ofsheight берется 2 байта – высота картинки (001E);

    ofssize="14" – по адресу ofs+ofssize берется 2 байта – размер картинки (0384) байт (вычисляется как: ширина*высоту*цветность (цветность: 8 бит = 1, 16 бит=2, а вот 2 бита - наверно = 0,25));

    ofsbpp="17" – по адресу ofs+ofsbpp берется 1 байт указывающий на цветность картинки;

    bpp="8=0A,16=06" – цветность 0A – 8 бит; 06 – 16 бит;

    ofsptr="20" – по адресу ofs+ofsptr берется 4 байта – адрес самой картинки в прошивке;

    lang="3;1-37=386,402 – подписи картинок, сопоставляется с языковыми ресурсами:

    3 – возможно указание на язык (0 - немецкий, 1 - английский, 2 – французский, 3 - русский…) но не уверен,

    1-37=386,402 – группа картинок в таблице начиная с №1 и по №37 сопоставляется с группой иконок «Лица» - о чем указывает индекс 386, далее индекс языковых ресурсов 402 – непосредственное название для картинки №1 («Афро»), далее индексы берутся автоматически по порядку: 403 для №2 и т.д.

     

    А вот в Agere идет такой тэг:

    <pictable title="Картинки" ofs="0x7B5340" count="949" reclen="8" ofswidth="0" ofsheight="2" ofsptr="4" bpp="09">

    img index="0" title=""

    img index="1" title=""

    mg index="2" title=""

    </pictable>

     

    Все вроде тоже самое - такую конструкцию можно "натравить" и на наши прошивки, но вот с цветностью... х.з. не понимает она bpp="16" что ли, у меня черные квадраты повылазили... вручную ставлю 16 бит - работает

  13. Петрович, не только Agere, в них видимо одна таблица на все картинки. А у нас этих таблиц море.... и бывает пустые, т.е. нисколько строк подряд ссылаются на одну и туже облать. А есть еще таблица таблиц!

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

    Есть только один минус - этих таблиц куева хуча

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