Jump to content
Old Phone Forum
  • Login

    You are currently not logged in to the forum.

    To comment, upload files, subscribe to answers - you need to login.

Recommended Posts

Мастер-патч, он самый, на прошивку S5620XEJI2. Думал, влегкую его портирую. А с адресами тут не густо - вот с правильной адресацией:

235670-16-02-12)1329396776_thumb.jpg235670-16-02-12)1329396791_thumb.jpg

А как редирект найти/сделать?


С троллями и даунами в полемику не вступаю.

Качественное конвертирование видео для Monte S5620

Share this post


Link to post
Share on other sites

он самый

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

А как редирект найти/сделать?

Тебе это не пригодится скорее всего, это был совет для общего случая :)

Share this post


Link to post
Share on other sites

.byte "Test",0x0A

- получается 54657374000A00

 

Хотя в справке по компилятору ведь написано:

Директивы .byte и .string отличаются добавлением строковых данных в патч, .byte (dcb,dcba,dcbu,db) вставляет данные как есть, .strung (.unicode, .ansi) – завершает данные нуль-символом.

 

Как мне избавится от этого нуля (кроме ручного набора байтов или .hex) ?


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

Share this post


Link to post
Share on other sites

f2065, правкой BinEdit'а...

В исходниках осталась закомментаренной старая функция ANSI_to_UTF8, если ее вернуть, то компилирует правильно.

Что-то Алексей исправлял:

30.07.09

- исправлено преобразование ansi-uTF8

а этот момент упустил.


5073IA3.png

Share this post


Link to post
Share on other sites

BinEdit только у меня не дружит с UAC ?

При обычном запуске - он почему-то инициирует попытку переустановки Office, и этот процесс зацикливается до беспонечности.

Если же запустить его запуск от имени администратора - то после запроса UAC он нормально работает…

Но зачем BinEdit хочет такие полномочия ?!


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

Share this post


Link to post
Share on other sites

f2065, у меня не требует. Может из-аз того, что он на системном диске у тебя хранится (если хранится)?. У меня все нормально, никаких запросов.

Share this post


Link to post
Share on other sites

Не на системном…

Он сам по себе не требует UAC (если в него не встроить манифест requireAdministrator), а пытается переустановить Office 2010! Видимо как-то это связано с VB.

И пытается его переустановить бесконечно, постоянно запускается-выполняется-завершается диалог восстановления Office 2010.

А вот если BinEdit запустить с правами админа через UAC - то всё нормально.

 

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

Где-то там видимо по умолчанию запрашиваются максимальные права на какой-то объект, таких прав винда при активном UAC не даёт, BinEdit неадекватно оценивает ошибку (или вообще не смотрит коды ошибок) и инициирует переустановку VisualBasic…

Edited by f2065

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

Share this post


Link to post
Share on other sites

У меня тоже ничего такого нет. Вот только вчера запускал из-под Win7. Установлен MS Office 2010.

Share this post


Link to post
Share on other sites

У меня тоже ничего такого нет. Вот только вчера запускал из-под Win7. Установлен MS Office 2010.

UAC включён ?

Без UAC тоже всё нормально…


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

Share this post


Link to post
Share on other sites
UAC включён ?

Без UAC тоже всё нормально…

Был выключен. Только что включил на самый верхний уровень. Запустил BE. Загрузил прошивку. Никаких проблем.

Установлена Windows 7 Максимальная SP1, MS Office 2010 Профессиональный плюс. Установлены только Word, Excel, PowerPoint ну и всякие там общие средства офиса.

Share this post


Link to post
Share on other sites

Был выключен. Только что включил на самый верхний уровень. Запустил BE. Загрузил прошивку. Никаких проблем.

Установлена Windows 7 Максимальная SP1, MS Office 2010 Профессиональный плюс. Установлены только Word, Excel, PowerPoint ну и всякие там общие средства офиса.

Вот всё тоже самое… Только BE работать не хочет (причём ни старый ни новый)… А комп то перезагрузил после активации UAC ?


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

Share this post


Link to post
Share on other sites

Вот всё тоже самое… Только BE работать не хочет (причём ни старый ни новый)… А комп то перезагрузил после активации UAC ?

Да, перегружал

А новый - это какой?

Edited by Alex&r

Share this post


Link to post
Share on other sites
А новый - это какой?
Этот

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

Share this post


Link to post
Share on other sites

Добрый день

Спасибо автору за программу

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

Заранее спасибо

зы. а реально получить исходники программы?

Share this post


Link to post
Share on other sites
[ela" post=614104]

подгрузить из другого файла, то есть сделать не замену существующим символам, а добавление новых,

Сигнатуры в формате .sym он так и загружает - объединяет два файла и удаляет повторения.

Т.е. надо сохранить оба файла сигнатур в формате .sym, объединить их, и результат, если надо, сохранить как .bsig


5073IA3.png

Share this post


Link to post
Share on other sites

это я как раз понял, меня интересует как раз bsig. Когда сохраняешь в sym, теряются каменты и к чему адрес (thumb, code и прочая) вот из за этого и вопрос. А еще, забыл добавить к хотелке, если уже формируется шаблон для поиска, то и его сохранять в bsig, а при загрузке под аналогичную прошивку, делать разбор, ведь уже все есть для этого и отмечать несовпадения. Как то так

спс за ответ

а насчет сорцов как? ))), или дайте формат bsig, сам нарисую утиль для склеивания. либо в личку, если здесь нельзя

Share this post


Link to post
Share on other sites
[ela" post=614121]

Когда сохраняешь в sym, теряются каменты и к чему адрес (thumb, code и прочая)

Тип данных не теряется.

 

[ela" post=614121]

а насчет сорцов как? )))

Это к автору.

 

[ela" post=614121]

или дайте формат bsig

Создай файл из одной записи, да глянь в хекс редакторе. Не думаю, что там что-то архисложное.

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


5073IA3.png

Share this post


Link to post
Share on other sites

Тип данных не теряется.

при сохранении в старый тип sym

Создай файл из одной записи, да глянь в хекс редакторе. Не думаю, что там что-то архисложное.

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

посмотрел, разобрался, да, простой файл. 4 байта - адрес, затем тип - 1 байт, затем идут 2 паскалевские строки с длиной строки вначале. Начал пробовать какую длину они держат, по идее должны быть short string, длина 255 байт. Но оказалось - 1 строка (название) при длине больше 255 не записывается длина, а строка полностью записывается, вторая строка честно все отрабатывает, обрезает строку до 255 байт. При повторном открытии этого файла - название обрезается до 244 байт и при сохранении уже записывает длину строки.

Share this post


Link to post
Share on other sites

Здравствуйте.

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

И есть ли у кого ПОЛНОЕ описание диеректив be и binedidt.ini

Share this post


Link to post
Share on other sites

ale][ela,

 

;Файл описания прошивки, что то типа rtx для ResMan, позволит избежать сканирования при каждой загрузке прошивки

;Сканирование запускается, только при отсутствии файла с описанием. имя файла совпадает с идентификатором прошивки.

 

;Перед началом сканирования предлагается ввести адрес по которому загружается прошивка.

 

;Описание текущих ключей и параметров.

 

Bin ID="идентификатор прошивки" adr="адрес размещения идентификатора в прошивке" base="адрес загрузки прошивки" TYPE_ARM="BigEndian/LittleEndian - вид ARM"

 

SaveDataBin Enable="Y" ; необходимость сохранять информацию о прошивке

 

RemapBlok Start="адрес в прошивке" Len="длина блока" Goto="адрес, куда перемещается блок" - информация о перемещении блоков памяти

 

LangNames adr="адрес в памяти где расположена таблица имён языков" steps="количестко байтов на имя"

 

LangCount adr="адрес по которому записано количество языков" Default="количество языков по умолчанию" TableIdAdr="адрес таблицы используемых языков"

 

LangAdrTable adr="адрес таблицы с адресами таблиц языковых блоков" countadr="Адрес по которому записано количество индексов" default="количество индексов"

 

LangAdrTableS adr="адрес таблицы с адресами таблиц языковых блоков для софт клавиш" countadr="Адрес по которому записано количество индексов для софт клавиш" default="количество индексов"

 

MCCTable adr="адрес таблицы адресов функций и адресов имён МСС команд"

 

MCCParam Len="длина в байтах МСС команды" count="количество параметров" adr1="смещение от начала команды" len1="длина в байтах параметра" adr2="...

 

AddFiles Start="адрес загрузки файла" Name="имя файла без пути" (возможно пока не работает) для прошивок из наскольких файлов (например S500)

 

LoadSym Name="полный путь к файлу с описанием адресов (*.bsig,*.sym,*.map,*.sig,*.def,*.out)" question="Y" ; Y - загружать без вопросов, иначе сросить

 

LoadMenu Name="полный путь к файлу с оисанием меню (*.mnu)" question="Y" ; Y - загружать без вопросов, иначе сросить

 

MCCKeys id="номер кноки" name="название кнопки"

 

MCCKey id="MCC_REPORT_MORE" coment="Большой отчет ""$$3$""" index="%%i%+1"

; id - строковый идентификатор

; coment - строка описания может содержать ключи типа &&6&, где && - начальная метка,

; 6 - номер параметра МСС команда или переменная i

; & - завершающая метка

; ключи %% - числовое значение параметра

; ## - тоже самое в Неx формате

; ^^ - тоже самое в Неx формате с приставкой 0x

; && - строка по адресу из параметра

; &K - описание кноки по номеру из MCCKeys

; $$ - текстовый ресурс из прошивки по индексу в параметре

;

; index - опереции над переменной i. понимает ключи с префиксом %, арифметические действия и условный оператор C ?:

; также операция до запятой выполняется до обработки коментария, после соответственно после, например

; %%3% - %%i% ? %%i% + 1 : %%4%, %%i%+2 - будет делать следующее:

; если третий параметр параметр больше i, то i=i+1 до обработки коментария, иначе i= четвёртому параметру до обработки коментария и i=i+2 после

; начиная с версии 2006.03.05 появилась возможность в id указывать не только имя MCC, но и параметры, напримет

; id="MCC_IF09" - для выделения проверки нажатий кнопок в отдельную групу коментариев, проверяется до 4 параметра

 

; - это коментарии (строки игнорируются)

 

;потом будут добавлены и другие команды (таблицы картинок и т.д.), экспорт/импорт параметров из rtx.

 

;PS. формат файла binedit.ini соответствует описанному формату и расматривается как значения по умолчанию. соответственно в be файлах можно переопределять установки binedit.ini

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

  • Like 3

5073IA3.png

Share this post


Link to post
Share on other sites

ещё есть

 

; команды для меню

Command name="Блокнот" path="notepad.exe"

 

; описание пользовательских типов данных

TYPE Name="font china" Maska="byte:4,int:4,long:16"

 

Сохранение описания прошивки можно включить через меню "настройка" или в be файл добавить SaveDataBin Enable="Y"

  • Like 4

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

AlexeyK.gif

Share this post


Link to post
Share on other sites

ещё есть

 

; команды для меню

Command name="Блокнот" path="notepad.exe"

 

; описание пользовательских типов данных

TYPE Name="font china" Maska="byte:4,int:4,long:16"

 

Сохранение описания прошивки можно включить через меню "настройка" или в be файл добавить SaveDataBin Enable="Y"

 

Значит нет ПОЛНОГО описания, уж если и автор не все опции пишет

 

ведь есть и такая

Ничто не мешает добавить их отображение вручную. Для этого надо добавить в be файл команду

 

StringTable adr="0x0" countadr="0x0" default="0x0" name="" Code="UTF8|ANSI|UNICODE|LUNICODE" type="0" mul="0" Offsets="0x0"

и что то еще про AT команды, сча не могу найти

И нельзя ли поправить ошибку разбора .author в компиляторе, там, как мне кажется, в качестве разделителя в поиске стоит пробел.

 

ЗЫ: 2 AlexeyK глянь пожалуйста в личку

Share this post


Link to post
Share on other sites

StringTable всё равно уже давно не нужны - в прошивках уже года 2-3 языковые ресурсы совсем иначе организованы - они лежат в TFS и подгружаются в ОЗУ при работе. В прошивке их нет. Тут надо бы функционал QTC_Util встраивать…


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

Share this post


Link to post
Share on other sites
Bin ID="идентификатор прошивки" adr="адрес размещения идентификатора в прошивке"

Вот оно что...:idea: Действительно, в прошивке брадкомов название прошивки можно найти только в таком виде: S5260+XE+KK1. Видать, отсюда и описанная ранее проблема. Решил ее дописыванием в начало файла прошивки ее версии уже в "нормальном" виде.

Share this post


Link to post
Share on other sites

Ещё баг в компиляторе обнаружился:

 

.equ gv_bug 0xA86ADAC4

.little

.thumb

.start 0x916DFA80

LDR R1, =gv_bug

LDRB R0, [R1]

CMP R0, 1

BEQ metka1

.patchcoment

CMP R0, 2

BEQ metka1

.patchcoment "metka2"

metka1:

ADD SP, SP, 0x100

POP {R4-R7,PC}

.data

 

получается в итоге такое:

 

916DFA80: 0149 LDR R1, =0xA86ADAC4

916DFA82: 0878 LDRB R0, [R1]

916DFA84: 0128 CMP R0, #0x1

916DFA86: 03D0 BEQ loc_916DFA90

916DFA88: C4DA6AA8 DCD 0xA86ADAC4

916DFA8C: 0228 CMP R0, #0x2

916DFA8E: FFD0 BEQ loc_916DFA90

loc_916DFA90:

916DFA90: 40B0 ADD SP, SP, #0x100

916DFA92: F0BD POP {R4-R7,PC}

 

Т.е. patchcoment назначает место для data прямо тут. В оригинальной версии BinEdit такого бага нет.

Приходится вручную писать word для ldr (причём ещё об отсутствии правильного align тоже перестал предупреждать)… Однако же заранее BinEdit ничего не предупреждает.

Edited by f2065

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...