Jump to content
Old Phone Forum

f2065

Администраторы ROOT
  • Content Count

    7,049
  • Joined

  • Last visited

  • Days Won

    75

f2065 last won the day on July 17

f2065 had the most liked content!

Community Reputation

8,042 Очень хороший

About f2065

  • Rank
    Программист

Дополнительные поля

  • Модель телефона
    Samsung B310E, B5722, C3322, C3322i, S5610.

Информация

  • Пол
    Мужчина
  • Город
    Russia,Moscow

Контакты

  • Сайт
    http://www.f2065.ru
  • ICQ
    35078112

Recent Profile Visitors

478 profile views
  1. Фактически да. С прошивкой шёл x/elf, sym и dwarf извлекаются из elf. Ещё из dwarf извлекается краткое описание функций - https://oldph.one/index.php?showtopic=17767&p=612891 Ну платформа постепенно изменяется, в каждой новой модели часть функций не совпадает. Ещё бывает у функций меняется кол-во и состав аргументов. Плеер на C3322 вообще существенно отличается от D780/D880/B5722.
  2. Идентичных кодов может быть много… Надо сравнивать вызываемые оттуда функции. Имена подключить, для C3322XWKL1 ведь есть полный sym/bsig-файл - BinEdit будет все имена функций писать. Далее, для J210 выявлять вручную имена функций. Например, в случае адресов запуска MCC - часто есть трассировка с названием функции. Например 20E28D50: 8648 LDR R0, =0x206519BC 20E28D52: B1E7 B loc_20E28CB8 206519BC 9F 25 0000 0000 0000 FC196520 0000 0000 MCC_MULTI_TRACKING 206519CC 17 23 2000 0000 0000 00000000 0000 0000 Выполнить 0x23 x2=32 x3=0 x4=0 x5=0 x6=0 206519DC 18 0A 0D00 0100 0100 24992820 0000 0000 Если x1=10 x2=13 x3=1 то переход на 0x20289924 206519EC 1C 00 0000 0000 0000 D4D7A620 0000 0000 Переход на адрес 0x20A6D7D4 206519FC mcc_mplib_T_play_on_quiet_Q Значит, 206519BC = mcc_mplib_T_play_on_quiet_Q, можно на вкладке символов в BinEdit это добавить и он будет потом в листинге сразу писать имя 205FFAF8
  3. А в фоне - плеер интегрирован в глобальный обработчик IDLE-событий десктопа. Там нет MCC-скриптов, там огромный thumb-код со множеством многоуровневых переходов. Автозакрытие на паузе я там удалял, но на более новой платформе. Надо найти места установки таймера бездействия плеера, это где-то в thumb-коде. Надо пробовать с C3322 перетащить патч, но там отличий очень много, напрямую на J210 не получится, надо брать схожую старую модель с sym-файлами (например D880JPHH1) и делать сначала там (сравнивая по sym C3322XWKL1).
  4. В системе есть много фиксированных блоков памяти разного размера, можно командой RtkGetMemory их получать (и потом не забыть командой RtkReleaseMemory их освободить). Причём кол-во блоков тех или иных размеров предусмотрено по оценке разработчиков и бывает что при запросе например 500 байт - памяти нет, а при запросе 1000 байт память есть. В инженерном меню есть монитор памяти, там блоки показаны. Memory Pool. Ещё есть функция Rtk50_11GetDynMemory для запроса больших кусков памяти, она медленнее. Если памяти надо в пределах 1кб - то обычно целесообразнее брать её в текущем стеке (смещать указатель стека вниз, потом перед выходом поднимать обратно). sub sp, sp, 0x80 ; тут с адреса SP получается 0x80 байт памяти add sp, sp, 0x80 ; когда работа с памятью закончена - надо восстановить стек Это пример как делать не следует. Там просто автор полагает что верхняя граница физического ОЗУ не используется. Но, она может использоваться например разными кешами и т.п. Во втором патче вообще надо всего 81 байт - это надо брать в стеке (перечитав соответственно остальные адреса - там есть обращение к старому [sp] - его надо тоже сместить). Глобально память ОЗУ можно брать в каких-нибудь неиспользуемых в данный момент статических путях файлов (например для многих патчей можно брать буфер имени файла видеокамеры).
  5. Да, это не bmp ничуть. Это Samsung-RAW 16bit. Переименовать в raw, открывать в Samsung Raw Viewer (http://oldph.one/index.php?showtopic=12356), цветность 16, заголовок 0, ширина 40, высота 39.
  6. Надо несколько примеров… Может это не bmp, может редакторы неправильные (у самсунгов вообще bmp непростого формата, он соответствует спецификациям bmp, но далеко не все редакторы поддерживают полный набор bmp-форматов), может это raw без заголовка…
  7. Подозреваю что дело не в подсветке, а просто после выключения подсветки система перестаёт перерисовывать экран, и это высвобождает процессорное время для других задач.
  8. Ноль кстати около 3.3V должен быть, 3.7 - среднее напряжение аккумулятора. У части самсунгов того времени секрет в зарядных входах, их в широком разъёме два. Один от фирменной зарядки, другой от USB-кабеля. Если подать питание на вход USB - то зарядка там останавливается если не обнаружены драйвера. Может зарядное устройство не родное, с неправильной распиновкой, и тогда тоже может быть такая проблема. Интересно, а в выключенном состоянии если заряжать - разница есть? Если встроенный монитор зарядки вывести (коды *#0228# ) - что там с напряжениями? Посмотрел на AB474350… «-» и средний - 4.745кОм в обеих полярностях. «+» и средний - там активное напряжение - плавающее отрицательное сопротивление. Напряжение если между «+» и «-» 4.148, то между «+» и средний 4.147
  9. Телефону при этом более 10 лет… Модель 2007г. Кто сейчас будет для него производить аккумуляторы? Вас обманули. АКБ тоже пролежал много лет, на складе у продавца. Потому что умный контроллер заряда понимает что у АКБ какая-то аномалия с зарядным током. Старые АКБ часто себя так ведут - сразу практически заряжаются, но ожидаемой ёмкости по факту нет, сразу и садятся в ноль. Посмотрите напряжения сразу после остановки заряда, если там более 4.0в - это именно такая причина и есть. Я много раз такую проблему наблюдал на различной хорошей но старой технике. Все продаваемые аккумуляторы - оказываются тоже изначально сдохшими. Думаю единственное решение - это разбирать аккумулятор, смотреть габариты, и подпаивать туда бескорпусные литиевые элементы. На eBay бывают в ассортименте…
  10. Поискать в даташитах про PNX5230, может там что-то есть… Или самому сделать цикл из простой команды и посчитать с секундомером. Я не увидел в TFS такой папки с файлами…Вообще в TFS много всяких артефактов от старых или топовых моделей. На C3322/S5610 тоже нет…Вроде раньше у самсунгов был какой-то свой сервис голосовых сообщений, вероятно это оно. Плюс надо учесть что обзор тот писал Муртазин, а он умеет наврать очень много - взяв часть скриншотов от других моделей и просто сочиняя характеристики без проверки (да и телефон у него в обзоре был с нерусской локализацией). Про D780 и B5722 например у него десяток абзацев полнейшего вранья. Ну базовый код задаётся автором мастерпатча, это просто номер свободной ячейки в штатных обработчиках MCC_TASK, MCC_IF и т.п. Там всегда есть несколько пустых ячеек, одна из них и задействуется для мастерпатча. Персональный код функции мастерпатча - это следующий уровень, выбирается автором патча посмотрев на остальные патчи (чтобы не было конфликтов с другими патчами, каждый патч на эту прошивку использующий мастерпатч - должен иметь свой уникальный код). Персональные коды занятые на C3322 например такие: C3322XXNA1 texts 01-03 - Easy_ScreenShot_v22 04-0F - ExtBlackList_v11 10 - ? 11-13 - TXT_Viewer 14-15 - Anti-Thief part1 16 - BackupDB 17 - AutoConf 18-19 - KeyUnlock 1A-22 - Call Record 23-3F - Anti-Thief part2 40-46 - VibOnCall 47-53 - Sheduler 54 - VibOnCall 54-55 - ? 56-63 - MissingCallNotify 64-65 - ? 66-68 - KeypadBacklightControl_v2 69-6C - MainMenuConfig part1 6D-6F - ? 70 - HomeScreenToolbar_Opera_v1 71-83 - Talker_v07 84-85 - ? 86 - VolumeControl_in_RecMode_v1 87-90 - SimChooser 91-9A - ? 9B - Filename_DateTime_v2 9C - AutoKeylock part1 9E-A4 - DesktopConfig_v2 part1 A5-A6 - AutoKeylock part2 A7-AA - MainMenuConfig part2 AB-AF - Explorer_Bluetooth_GlobalAccess_v11 B0-B3 - DesktopConfig_v2 part2 B4-BF - ? B0-B3 - DesktopConfig_v2 part2 C0-E4 - ExtraHotKeys2 E5-FF - ? C3322XXNA1 MPCodes 00 - LoadMEM 01 - Battery 25pos 02 - filename datetime 03 - flashlight 04 - java shadow 05 - call_record 06 - max_backlight 07 - txt view 08 - fast lang 09 - anti thief 0a - reject call 0b - ext black list 0c - Camera Plus 0d - bluetooth hotkey 0e - missing call notify 0f - talker 10 - vib on call 11 - desktopconfig 12 - Java Heap Config 13 - SIM Chooser 14 - key auto lock 16 - Explorer Bluetooth Global Access 17 - autoconference 18 - Info4321 19 - VolCtrl_RecMode 1A - SimpleSearch 1B - Any_Number_Call v2 1D - KbdBacklight 1E - DisableKeypadUnlockedPopup 1F - FilterCallShowNotify 20 - BackupDB 21 - ExtraHotKeys2 22 - FM-mono 23 - InfoHWID C3322XXNA1 MemoryCFG/SettingsCFG +0x00 - Call Record +0x01...0x02 - ExtBlackList +0x03 - SortFiles_Mod +0x04 - HandsFreeTweak +0x05 - Fast_Switching_Language_Input +0x06...0x07 - VibOnCall (7 = time, 6 = mode (b0-b3 - mode1, b4-check1, b5-check2, b6-check3, b7-free)) +0x08...0x0B - Java Heap Config +0x0C - SIM Chooser +0x0D - CallRec +0x0E - MainMenuConfig +0x0F - Explorer Bluetooth Global Access +0x10 - AutoConf +0x11 - Backlight keyboard +0x12 - MissingCallNotify font size +0x15 - Filename_DateTime_v2 +0x20...0x23 - TimerSave +0x24...0x27 - TXT View +0x70...0x8F - DesktopConfig +0x90...0x9F - Talker +0xA0...0xA8 - Missing Call Notify +0xC0...0xDF - ExtraHotkeys
  11. На более новых так-же. Там ограничено кол-во кадров, и лимитированы межкадровые интервалы. Думаю что для экономии ОЗУ у них просто неполноценный плеер GIF для обоев.
  12. Ну потому что программы PNX Downloader - узкоспециализированные и глючные, рассчитаны только на работу в СЦ с официальным оборудованием. Там нет обработок ошибок нормально. Они себя так ведут в процессе ожидания данных от телефона… Помнится даже не все USB-UART работали, из-за того что у софта кривое ожидание таймингов каких-то… Набрать *#1234#… Не очень понял как вы это собираетесь сделать… Перепаковкой TFS-файла с подменой его *.mid файлов?
  13. Ну это слишком узкоспециализированная задача, под каждую серию мобил делать восстановление файлов из дампа… У одних только кнопочных самсунгов 2005-2010гг форматов дампов штук 20… Общедоступные программы профессионального восстановления работают с массовыми HDD. А для случаев дампа мобилы - вот HEX-редакторы и существуют… Кстати блоки FF наверняка не рандомно лежат, а через какие-то равные интервалы. Если это вырезать всё, то вероятно соберётся нормальная FAT, которую можно рассматривать в RunTime's DiskExporer… И вероятно что там не по 16 байт FF, точнее там должны быть заголовки кластеров в которых могут быть контрольные суммы или размеры. Т.е. вероятно вырезать надо не 16 байт, а немного больше… По крайней мере в форматах образов дисков более новых Swift - именно так…
  14. Он скорее всего не зависает, а ждёт реакции от телефона. Вероятно что прошивочный кабель неправильный, или вы последовательность действий (момент подключения кабеля, момент нажатия красной трубки) для ввода телефона в прошивочный режим не знаете. Зачем его прошивать? Какая прошивка установлена сейчас в телефоне?
×
×
  • Create New...