OpCode Maker
Перейти к описанию версии 2.0.0.0

  Работа с программой
подробней
Загрузить программу
загрузить
Обсудить на форуме
обсудить
Работа с программой

Новая версия программы разработана с поддержкой пошагового интерфейса. На каждом этапе необходимо, следуя подсказкам программы, заполнять поля значениями, которые необходимы для расчета opcode.
В версии 3.0.0.0 появилась возможность вычислить opcode одновременно для нескольких seem. Это может оказаться полезным в случае, если для включения функции требуется изменения не одного бита, а нескольких одновременно. Кроме того, существуют функции, которые включаются не определенным значением бита, а значением всего байта! В новой версии существует возможность вычислить opcode и для такого случая.
Результат работы программы теперь стал более информативным. Вычисленный opcode теперь можно не только сохранить на жестком диске, но и распечатать или скопировать весь расчет в буфер обмена.

Принцип работы программы лучше всего рассмотреть на основе примера:
Допустим необходимо включить поддержку собственной мелодии при включении телефона. Находим эту функцию в файле map.txt.
SEEM 0032_0001
offset 24 -bit 3: Custom Startup Sound (004a_0001, offset 22 must be set to 01) (1 on, 0 off)

Сразу разберем эту запись до понятных нам терминов:
Функция включается в seem с номером 0032h, запись (rec) 0001h. Буква h означает что значения указаны в шестнадцатеричной системе счисления. Адрес байта (offset) 24h. Бит, который определяет активность функции - 3. Необходимо присвоить этому биту значение 1 для включения функции, либо 0 - для ее отключения.
Кроме того, для работы этой функции необходимо чтобы байт с адресом (offset) 22h в seem 004a rec 0001 имел значение 01.

Шаг 1 [Имя функции]
На этом этапе необходимо задать имя функции opcode которой мы хотим вычислить. Этот шаг необязателен, он необходим только для того чтобы озаглавить результат расчета.

Шаг 1

Для перехода на следующий шаг жмем кнопку [Далее >>]

Шаг 2 [Ввод данных]
В поле Данные вводим значения для первого seem. Значения seem: 004a, rec: 0001, offs: 22 понятны, осталось только задать значение бита. Здесь можно пойти двумя путями - задать значение всего байта, либо конкретного бита. Для нас более подходит первый вариант. Ставим галочку на поле Byte и вводим значение 01.

Шаг 2.1

Жмем кнопку [Добавить >] для добавления этих значений в список для расчета.

Вводим значение для второго расчета - seem: 0032, rec: 0001, offs: 24. Здесь нам нет необходимости менять весь байт, нужно только поменять один бит. Убираем галку с поля Byte.
В поле BitMap показана побитовая развертка байта. Каждое окошечко пронумеровано и соответствует номеру бита в конкретном байте. В этих окошках и нужно указать значения, которые необходимо установить для битов. Можно поставить 1 или 0. Если оставить окошко пустым, то значение бита при расчете меняться не будет. Нам нужно присвоить 3 биту значение 1, а остальные биты оставить как есть.

Шаг 2.2

Снова жмем кнопку [Добавить >], а затем [Далее >>]

Шаг 3 [Исходные данные]
На этом этапе нам потребуется ввести исходные данные телефона для расчета отката.
Введите те данные, которые будут указаны в окне программы, затем укажите ответ телефона на эти значения. После ввода информации нажмите кнопку [OK].
Если будет рассчитываться несколько opcode, то эту операцию необходимо проделать несколько раз. Количество исходных данных показано полоской прогресс бара. Как только все значения будут введены нажмите кнопку [Вычислить].

Шаг 3

Шаг 4 [Результаты расчета]
Результатом расчета программы является инструкция по вводу opcode для вашей функции.

Шаг 4

Результат расчета программы можно сохранить в текстовом файле, вывести на печать, либо скопировать в буфер обмена.

Список функций для телефонов серии Vxxx можно найти в файле map.txt (скопирован с http://xlr8.us/hofo/map.txt)