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

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

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

BinEdit и все о ней


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

Мне показалось что оперативка в этом теле лежит не одним массивом,по поводу ее длины пока затрудняюсь ответить

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

планируется добавить возможность нескольких команд RAM_Area в be файле.

так же возможность заполнения этих областей при помощи CGSN патча и использования этих данных при просмотре кода.

PS. в X100 и потобных тоже 2 региона ОЗУ

0x01400000-0x017FFFFF - основная оперативка (4 Мб) дополнительная микросхема наверное

0x01000000-0x0101FFFF - дополнительная и быстрая (128 кб) память процессора

0xFFFF8000-0xFFFFFFFF - это не оперативка, хотя тоже часто встречается в коде. Это порты, в том числе и управлющие.

PS2. Попадались прошивки с 3 регионами.

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

AlexeyK.gif

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

0x01400000-0x017FFFFF - основная оперативка (8 Мб)

Может, все-таки 4?

А то сейчас опять раздастся хор голосов с просьбой разблокировать "заначку" :bx:

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

Может, все-таки 4?

А то сейчас опять раздастся хор голосов с просьбой разблокировать "заначку" :bx:

конечно 4, плохо считаю :59:.

исправил

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

AlexeyK.gif

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

Работает ли вкладка "Память" в режиме отладчика. И как ей пользоваться?

Мы рождены, чтоб сказку сделать пылью...

 

VishnyaSoft.com - мои программы и мидлеты для телефонов Samsung

 

Классификация телефонов Samsung

 

Угадай название телефона

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

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

диапазоны памяти задаются командами в be файле

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

AlexeyK.gif

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

А если я работаю не с прошивкой, а произвольным кодом, то как мне поступить?

Что должно быть в be-файле?

Мы рождены, чтоб сказку сделать пылью...

 

VishnyaSoft.com - мои программы и мидлеты для телефонов Samsung

 

Классификация телефонов Samsung

 

Угадай название телефона

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

Снег, там кнопка есть на добавления описаний ресурсов, есть Ram_area и Flash_area. Вроде так, если ничего не забыл

 

PS. Обновил программу на сервере. Изменения там же.

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

AlexeyK.gif

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

AlexeyK, это фича такая в версии 2007.9.18 --->по клику по адресу из окна поиска переход происходит на 16 байт выше этого адреса? или где-то настройка есть?

/ Чтобы боялись чужие, не обязательно бить своих.../
Ссылка на комментарий
Поделиться на другие сайты

Mako,

Настройки -> Смещать начало показа кода на...

 

Она всегда была ;)

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

dimastyj,

:bx: Спасибо,не знал.раньше со смещением не сталкивался... :idea:

/ Чтобы боялись чужие, не обязательно бить своих.../
Ссылка на комментарий
Поделиться на другие сайты

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

извинитe чтo нaпpягaю... AlekseyK, сдeлaл cgsn-пaтч,respect! A мoжнa здeлaть тaкoй пo типу пaтч чтoб samsungi мoжнa былo испoльзoвaть кaк вeб кaмepу? Eто нeстaндapт xoтeлкa пoeтому пишу ee здeсь.

Ася-455446295.

ЗЫ: ЫЫ

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

Помогите войти в программу!

При запуске комп выдает: "Run-time error 339:

Component mscomctl.ocx or one of its dependencies not correctly registered: a file is missing or invalid"

Признаюсь, что всю темку не прочитала. Извините, если где-то это уже обсуждалось.

Siemens M35 -> Samsung R200 -> C100 -> X460 -> D900i

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

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

Подскажите кто-нибудь пожалуйста, как в BinEdit правильно открыть прошивки для новых моделей (E200,D900 ...)? А то он столько всего запрашивает, а какие значения вносить -СОРИ- не знаю!!! :Laie_67: Я думаю, что эти значения не меняются (при последующих открытиях) по-этому просьба (если не сложно) напишите пожалуйста эти значения.

В России три способа обмена информацией: воровство, грабеж и обмен награбленным (Б. Гейтс)

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

dimastyj,

Спасибо большое!!! :)

В России три способа обмена информацией: воровство, грабеж и обмен награбленным (Б. Гейтс)

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

dimastyj,

Скажи пожалуйста, как дальше быть, если BinEdit выдаёт сообщение (аналогичная последовательность кода не найдена)?

В России три способа обмена информацией: воровство, грабеж и обмен награбленным (Б. Гейтс)

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

как дальше быть, если BinEdit выдаёт сообщение (аналогичная последовательность кода не найдена)?

Дальше искать... не всегда код может быть одинаковым...

  • Like 1

Пожертвования отправлять сюда R256859050930

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

Алексей, вот открываю файл binedit.ini и вижу строчку:

MCCKey id="MCC_IF" coment="Если x1=%%1% x2=%%2% x3=%%3% то переход на ^^5^"

Чуток ниже:

MCCKey id="MCC_IF090002000A" coment="Если цифровая кнопка ""0"" в то переход на ^^5^"

Или:

MCCKey id="MCC_IF09" coment="Если кнопка ""&K3&"" в состояни %%2% то переход на ^^5^"

Но если я пишу:

MCCKey id="MCC_IF0A0B0001" coment="Если Режим без звука то переход на ^^5^"

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

Сложность программы растет до тех пор, пока не превысит способности программиста!!!
Ссылка на комментарий
Поделиться на другие сайты

В редакторе патчей BinEdit после выбора команды "применить патч" появляется окно с сообщением "данные отмены в блоке не совпадают с оригинальными. Обновить данные отмены". Это нормальный процес? Все делалось на прошивке D900iXEGF2. Как узнать что применение патча прошло успешно, редактор не выдает никаких сообщений.

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

В редакторе патчей BinEdit после выбора команды "применить патч" появляется окно с сообщением "данные отмены в блоке не совпадают с оригинальными. Обновить данные отмены". Это нормальный процес? Все делалось на прошивке D900iXEGF2. Как узнать что применение патча прошло успешно, редактор не выдает никаких сообщений.

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

Сложность программы растет до тех пор, пока не превысит способности программиста!!!
Ссылка на комментарий
Поделиться на другие сайты

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

Спасибо за быстрый ответ!

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

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

Только что поставил новую версию от 24 декабря =)

 

Уже месяц юзал ноябрьскую версию.... Вчера первый раз выскочила гнустная ошибка "Runtime overflow -9".

Проблема в том, что я не помню из-за чего она вылетает.... В ранних версиях очень часто вылетала... В ноябрьской только 1 раз.....

 

Так вот есть пара хотелок на прогу =)

 

1) AlexeyK Можно ли отрубить создание bak файла при проекте патчей?

2) Можно ли сделать, чтобы BinEdit предупреждал о наложении кода.... Текстом будет не понятно, я попробую кодом.....

 

Вот мне надо допустим сделать патч пароль на мои пункты . я делаю допустим пароль на фотки, видео, музыку...... С телефоне этой функции нет, след. я буду использовать свободные адреса... как свободные адреса я буду использовать ненужный язык.... Так вот - я беру три адреса.... Вот код в компиляторе:

 


.equ my_code		 0x10BFB004
.equ my_code2		0x10BFB014
.equ my_code3		0x10BFB024
.equ check_password  0x102af5ec
.equ insert_my_code  0x10C0EC40
.equ insert_my_code2 0x116FEC78
.equ insert_my_code3 0x10651C00

.start insert_my_code
.mcc mcc_transf 0 0 0 0 my_code

.start my_code
.mcc mcc_call 0 0 0 0 check_password
.mcc MCC_TASK 0x21 0x10 0x2B
.mcc mcc_transf 0 0 0 0 insert_my_code+16
;--------------------------------------------------
.start insert_my_code2
.mcc mcc_transf 0 0 0 0 my_code2

.start my_code2
.mcc mcc_call 0 0 0 0 check_password
.mcc MCC_IF 0x2 0x1F 0x4 0x1
.mcc mcc_transf 0 0 0 0 insert_my_code2+16
;--------------------------------------------------
.start insert_my_code3
.mcc mcc_transf 0 0 0 0 my_code3

.start my_code3
.mcc mcc_call 0 0 0 0 check_password
.mcc MCC_IF 0x2 0x1F 0x4 0x1
.mcc mcc_transf 0 0 0 0 insert_my_code3+16

 

Так вот - я не учитывал что на каждый свободный адрес у меня пойдет 48 байт, а взял 16.

то есть с 0x10BFB004 по 0x10BFB014...

В результате компилирования патча -у меня происходит наложение адресов..... то есть ->

10BFB004  1B 00 0000 0000 0000 ECF52A10 0000 0000  Вызов подпрограммы 0x102AF5EC
10BFB014  1B 00 0000 0000 0000 ECF52A10 0000 0000  Вызов подпрограммы 0x102AF5EC
10BFB024  1B 00 0000 0000 0000 ECF52A10 0000 0000  Вызов подпрограммы 0x102AF5EC
10BFB034  18 02 1F00 0400 0100 00000000 0000 0000  Если x1=2 x2=31 x3=4 то переход на 0x0
10BFB044  1C 00 0000 0000 0000 101C6510 0000 0000  Переход на адрес 0x10651C10

То есть будет работать работать только третий пункт.

А если бы я учитывал наложение, получилось бы ->

10BFB004  1B 00 0000 0000 0000 ECF52A10 0000 0000  Вызов подпрограммы 0x102AF5EC
10BFB014  17 21 1000 2B00 0000 00000000 0000 0000  Выполнить 0x21 x2=16 x3=43 x4=0 x5=0 x6=0
10BFB024  1C 00 0000 0000 0000 50ECC010 0000 0000  Переход на адрес 0x10C0EC50
10BFB034  1B 00 0000 0000 0000 ECF52A10 0000 0000  Вызов подпрограммы 0x102AF5EC
10BFB044  18 02 1F00 0400 0100 00000000 0000 0000  Если x1=2 x2=31 x3=4 то переход на 0x0
10BFB054  1C 00 0000 0000 0000 88EC6F11 0000 0000  Переход на адрес 0x116FEC88
10BFB064  1B 00 0000 0000 0000 ECF52A10 0000 0000  Вызов подпрограммы 0x102AF5EC
10BFB074  18 02 1F00 0400 0100 00000000 0000 0000  Если x1=2 x2=31 x3=4 то переход на 0x0
10BFB084  1C 00 0000 0000 0000 101C6510 0000 0000  Переход на адрес 0x10651C10

Плиз, ты не мог бы добавить в компиляторе проверку на наложение адресов? Было бы просто замечательно :67:

 

3) Можно ли сделать, чтобы можно было искать неизвестный код? ща объясню =) Например мне нужно найти, где есть с окно с определенным текстовым индексом....

 

Возьмем допустим фразу - BT деактивирован, его индекс - 0118. переворачиваем - получаем 1801. так вот, если я не знаю типа окна, в котором содержится текстовый индекс мой... то есть мне надо найти любой код, в котором от 9 по 13 символ будет мой перевернутый индекс. а если я просто нажимаю искать 1801 - прога будет искать только те адреса, которые начинаются на 1801....

Так вот можно было бы сделать, чтобы была возможность искать неизвестную строку. -> ?? ?? ???? 1801 .... Тогда прога мне бы выдала и окна вопросов, например 4900 0000 1801 , и простые окна....

Надеюсь объяснил понятно)))) =)

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

[AlaSToR], по поводу ощибки. Опиши подробнее как и когда возникает, чтобы я мог её повторить и локализовать.

потом:

1) могу сделать, чтоб сохранялись опционально.

2) Честно говоря привдён код совсем не корректный. отдельного контроля наложения блоков нет, так как иногда это можно использовать, например для создания опций к пачу. Есть директива .setbyte, она запорняет область до указанного байта и за одно проверяет не пройдн ли байт. В таком варианте:

equ my_code		 0x10BFB004
.equ my_code2		0x10BFB014

.equ check_password  0x102af5ec
.equ insert_my_code  0x10C0EC40
.equ insert_my_code2 0x116FEC78
.equ insert_my_code3 0x10651C00

.start insert_my_code
.mcc mcc_transf 0 0 0 0 my_code

.start my_code
.mcc mcc_call 0 0 0 0 check_password
.mcc MCC_TASK 0x21 0x10 0x2B
.mcc mcc_transf 0 0 0 0 insert_my_code+16

[b].setbute my_code2[/b]

;--------------------------------------------------
.start insert_my_code2
.mcc mcc_transf 0 0 0 0 my_code2


.start my_code2
.mcc mcc_call 0 0 0 0 check_password
.mcc MCC_IF 0x2 0x1F 0x4 0x1
.mcc mcc_transf 0 0 0 0 insert_my_code2+16

будет выдано сообщение об ошибке.

 

3) а кто сказал, что так нельзя :)

сейчас при поиске допустимы любое положение '?' и так - ?73468C7F6A, и так - 87???8C7F6A и почти любые другие варианты. Более того '?' допустимы при поиске адресов и ссылок на них. Ещё для поиска MCC есть специальный вид сигнатур

' получение значения по сигнатуре (возврат адреса или значения)
'
' структура сигнатуры: ключи + hex код для поиска
' ключи: "+" - арифметическое смещение от адреса, задаётся в нех (8 символов)
' "&" - взать значение по адресу
' ":" - взать адрес расположения адреса
' "*" - относительное смещение по операции в адресе (обрабатываются Rx=PC+XX, Rx=[PC+XX], B, BL)
' "@" - определение сигнатуры по имени из списка сигнатур, после ключа идет 4 байта длина в HEX коде и имя
' "M" - символьная МСС сигнатура по типу MCC_TACK,param1,,,,param5;MCC_IF,param1,param2; ... paramX - hex сигнатура 00?? или 00??????
' "S" - пропустить xxxx MCC команд, xxxx задаётся в нех (4 символа)
' "P" - взять в качестве адреса значение параметра 5
'
' пример: +00000020&*+00000002B5FF48??01....
' находится строка B5FF48??01...., к найденному адресу прибавляется 2, по данным инструкции 48?? определяется адрес расположения данных
' потом берутся данные по адресу и к ним прибавляется 32 (0x20). Полученное значение и будет искомым

а именно "M" - символьная МСС сигнатура по типу MCC_TACK,param1,,,,param5;MCC_IF,param1,param2; ... paramX - hex сигнатура 00?? или 00??????

например, M49,,,0118 должна найти 4900 0000 1801

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

AlexeyK.gif

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

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

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

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

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

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

Войти

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

Войти



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