...
...

Телефон для программиста. Аппараты фирмы Sony серии J. Часть четвертая. Руководство по замене прошивки

Телефон для программиста. Аппараты фирмы Sony серии J. Часть четвертая. Руководство по замене прошивки

В прошлой статье цикла (см. КГ №36 ) я сделал обзор программного обеспечения, необходимого для замены встроенного в телефоны SONY FIRMWARE. Как показали отзывы читателей, многие из них столкнулись с проблемами при его использовании. В этой статье мы с вами пройдем заново и по шагам всю последовательность действий, необходимую для того, чтобы перепрошить сотовый телефон SONY J5(J6) свежей прошивкой. Вы проделаете это на своем аппарате, а я на своей экспериментальной SONY J5. Вы могли ее видеть на иллюстрациях к предыдущей статье.

Последовательность действий для пользователей телефонов SONY J7 (J70) и SONY Z7 останется той же самой, разве что вам следует устанавливать другие версии прошивок и патчей, поэтому названия этих файлов будут немного не совпадать.
Для тех, кто еще не успел обзавестись необходимыми файлами, приведу ссылки на специализированные веб-странички на форуме www.sony-ericsson.ru . Они созданы специально для вновь прибывающих новичков и содержат ссылки на все необходимые вам прошивки и патчи. Для каждой модели телефона создана своя страничка, поэтому вы не рискуете зашить "не то" FIRMWARE в ваш телефон, перепутав его модель.
Для телефонов SONJ J5 (J6) эта страничка расположена по адресу: http://www.sony-ericsson.ru/forum/viewtopic.php?t=9751 .
Пользователи SONJ J7 (J70) могут скачать все необходимые патчи по адресу: http://www.sony-ericsson.ru/forum/viewtopic.php?t=9750 .
Также не забываем про сайт автора программы OOK Nimar'а. Сайт, к слову, недавно переехал и расположен теперь по легко запоминающемуся адресу http://nimar.net . С этого сайта вы можете скачать все упоминающиеся в этой статье программы, предназначенные для работы с firmware названных моделей сотовых телефонов.
Итак, приступим. Заходите на указанные странички, включаете свой менеджер закачек и просите его скачать вам следующие файлы:
Со страничек на форуме www.sony-ericsson.ru :
1) базовая прошивка (под вашу модель телефона);
2) русификация;
3) смена раскладки клавиатуры.

Остальные патчи качаете по своему вкусу. Я, к примеру, отказался от установки в свой телефон патча, увеличивающего яркость подсветки аппарата. Даже, напротив, разобрал телефон и отпаял светодиоды под клавиатурой. На мой взгляд, баловство все это, в придачу ко всему еще и довольно сильно сажающее батарею. Вот у меня полностью заряженного аккумулятора в телефоне хватает больше чем на неделю работы. А у вас? А с патчем "экстраподсветки"?
Теперь отправляемся на сайт Nimar'a http://nimar.net . Щелкаем по ссылке SOFTWARE. Качаем, если вы их не закачали ранее, следующие программы:
1) IPSWIN 2.0;
2) SBSCONVERTOR 2.0;
3) FLASHER 4;
4) OOK3 Manager 1.6;
5) Sony CMD-Jx Flash Reader 1.0.

Затем перемещаемся в раздел сайта, озаглавленный FIRMWARES. На этой странице выкачиваем патч OOK3b2 под вашу прошивку и модель телефона. Ссылки на OOK3 имеют при должном понимании достаточно простые имена. Так, например, "J7/70 3.10/4 Path" означает версию патча для телефонов J7/70, имеющих прошивку версии 3.10/4. "J5/J6 5.4.2/1(6)" означает версию для телефонов J5/J6 с прошивками 5.4.2/1 и 5.4.2/6. Если вы скачали базовую прошивку с указанных мной страниц на форуме, то именно такие патчи вам и нужны.
К слову, раз у нас зашла речь о прошивке номер 6, то сразу поясню, что официально такой прошивки не выпускалось. Она результат творчества одного из посетителей форума. Это обычная прошивка 5.4.2/1 с предустановленным на нее устаревшим патчем русификации от Daemon!. Многие из посетителей форума "со стажем" в силу своей лени до сих пор патчат именно ее. Поэтому ничего общего с прежней русификацией в ней уже давно не осталось, а вот "странный" номер так и торчит как напоминание о днях былых. У меня самого в "основном" телефоне J6 до сих пор установлена именно такая прошивка.

Исходники OOK3 и компилятор ассемблера по ссылкам b2 Source и ARM Compile pack можете не скачивать. Это вам не "Линукс". Ничего дополнительно компилировать не нужно. Разве что вы зададитесь целью портировать OOK3 на какую-либо другую прошивку или подправлять исходники описываемых ниже на странице игрушек и программ.
Теперь перемещаемся по ссылке на страницу Programming.
Отсюда качаем следующие файлы:
1) OOK2 UFIF2 External Library ver. 2.0
2) OOK2 UFIF2 External Library ver. 3.1
3) PRGLoader 3 Library ver. 1.0

Эти файлы являются внешними библиотеками — примерным аналогом DLL в Windows. Они необходимы для того, чтобы программы, изначально написанные под другие версии OOK, корректно работали и на этой версии. Внутри этих библиотек содержатся ссылки на найденные внутри основной прошивки телефона функции. К примеру, отвечающие за включение-выключение подсветки, вывода строки текста на экран и т.д. Как вы понимаете, адреса этих функций уникальны не только для каждой модели телефона, но и для каждой версии прошивки. Помимо этого, народ постоянно находит все новые и новые функции, и для того, чтобы вам не приходилось каждый раз перешивать прошивку в телефоне, и придумана идеология внешних библиотек.
Выбираем из списка библиотеку под свой комплект телефон плюс прошивка и скачиваем ее себе. Названия файлов подчиняются тем же принципам, что и имена патчей OOK.

Ниже по тексту страницы расположены ссылки на различные программы для SONY, написанные Nimar. На прилагаемых скриншотах вы можете оценить их внешний вид. Я вам советую сразу же скачать программу ADESK 1.8. Это менеджер экрана телефона во время его "простоя". Нечто вроде скринсейвера, обладающего достаточно широкими возможностями подстройки под конкретного пользователя. К сожалению, в данный момент на сайте автора присутствует только версия под телефон J7. Связано это с тем, что никто пока не может найти в прошивке для J6 адреса некоторых функций, уже обнаруженных в прошивке для J7. А пока владельцы J6 могут скачать предыдущую версию этой программы, которая работает и на J6. Прямая ссылка на предыдущую версию — http://nimar.net/prog/ADesk_1_6.zip. Новая версия, конечно, куда как покудрявее будет: там появился диктофон на 10 секунд и отключение экрана в режиме ожидания звонка (для экономии батарей). Так что ждем-с версию для J6.
У вас уже наверняка закачались все необходимые нам файлы. Ну что же, соберитесь с духом. Настала пора менять прошивку в вашем телефоне.
Как меня поправили на форуме www.sony-ericsson.ru, программы Flash Read и Flasher замечательно работают и под Windows XP. Поэтому на сей раз будем пользоваться этой, родной для подавляющего большинства пользователей компьютеров, операционной системой. Как я писал в прошлой статье, у пользователей Windows 98 тут вовсе нет никаких проблем. У них все работает гарантированно.
Заводим каталог, в котором и будем заниматься всеми операциями по изменению прошивки. Пусть он находится, скажем, на диске C: и называется SONY.

Переписываем в него выкачанные нами файлы прошивки и выбранные патчи. Заводим подкаталог Flasher и распаковываем в него архив с Flasher 4. Следующим создаем подкаталог SFR и разворачиваем туда Sony CMD-Jx Flash Reader 1.0. Аналогичным образом поступаем с SBSConvertor 2.0, OOK3 Manager 1.6 и .IPSWIN. Строго говоря, создавать отдельные папки для последних трех программ необязательно. Все они, кроме SBSConvertor, состоят из одного файла, поэтому при будущем апгрейде версий вы не запутаетесь. Тем не менее, при предложенной мной системе порядка у вас на диске будет больше.
Когда вы распакуете файл, содержащий патч раскладки клавиатуры, то обнаружите внутри файлы, называющиеся 1.ips, 2.ips, 3.ips, и так по 6.ips. Из этих файлов вам нужно выбрать только один. Какой именно? А это уже зависит от ваших предпочтений. В этих файлах задается порядок расположения русских и английских букв на клавиатуре телефона. Как вы уже наверняка заметили, изначально клавиатура телефона не совсем русифицирована. Эти патчи предназначены для устранения этого досадного недоразумения. Но, как известно, на вкус и цвет товарищей нет, вот и было сделано шесть наиболее популярных разновидностей расположения букв на клавиатуре.

Первый вариант. Используется расположение русских букв по алфавиту. Такой порядок обычен для русифицированных сотовых телефонов других фирм-производителей. Сначала идут русские буквы, потом английские. Замыкает набор цифра. Например, нажатие кнопки [2] приводит к выбору нужной буквы из следующей предлагаемой последовательности: "абвгabc2".
Второй вариант аналогичен первому, за одним исключением. Цифра располагается не в конце последовательности символов, а в середине, отделяя русские буквы от английских. То есть цепочка букв выглядит таким образом: "абвг2abc".
Последующие варианты существенно отличаются от вышеописанных. В них предпринята попытка расположить русские буквы по созвучию в произношении с английскими буквами. То есть, если вы хотите найти на клавиатуре русскую букву "Г", то легко ее обнаружите, нажав на английскую букву "G". По личному опыту могу сказать, что идея оказалась довольно удачной. До появления этого патча я долго мучился, расклеивая бумажки с русскими буквами на корпусе телефона, но за год эксплуатации так и не смог выучить, где какая русская клавиша находится. Обучение же новой системе ввода прошло у меня за два дня, и теперь я легко вслепую без всяких бумажек отыскиваю нужные кнопки. По всей видимости, такое расположение кнопок понравилось не только мне, и поэтому существует аж четыре варианта взаимного расположения русских, английских букв и цифр на клавиатуре телефона. В заключение рассказа об этих патчах привожу небольшую табличку названий файла с патчем и задаваемой этим файлом раскладки.

1.ips абвгabc2
2.ips абвг2abc
3.ips abcабцч2
4.ips абцч2abc
5.ips abc2абцч
6.ips абцчabc2

Выберите тот вариант, который вам больше по душе, а остальные сотрите, дабы не путались под ногами.
Ну вот, теперь настала пора наложить патч на прошивку. Для этого запустите программу SBSConvertor. В выпадающем списке Setting укажите, что хотите преобразовать файл SRE в BIN. В поле Input File Name (*.sre) укажите имя файла с прошивкой, которую вы скачали с указанных мной страничек в Интернет. В моем случае этим файлом оказался J6LG1.SRE (он лежал внутри архива J6_1.zip). В поле Output File Name (*.bin) впишите J6LG1.BIN. После этого нажмите кнопку Convert, и через пару секунд программа закончит свою работу.
Закрываем SBSConvertor и запускаем программу IPSWIN. В поле File to Path выбираете только что сделанный нами файл J6LG1.BIN. Обратите внимание: именно BIN, а не SRE. Для этого щелкаете по иконке с папочкой сбоку от поля ввода или просто вписываете путь и имя файла руками. Теперь щелкаете по иконке папки, расположенной сбоку от поля IPS Path to Use. Выбираете файл патча с русификацией. Для моего телефона J5 таким патчем является файл j6_5.4.2_1_rus.ips. Нажимаете кнопку Patch. Буквально мгновенно появляется сообщение: "File patched successfully".
Следующим на очереди для J6 идет патч, исправляющий "кривости" в переводе. Файл называется translation.ips. Выбираем его во втором поле ввода и опять нажимаем Patch. На этот раз программа думает довольно долго, по экрану бегут разные цифры. ОK!
Загружаем выбранный вами патч, добавляющий русскую клавиатуру. Возьмем для примера файл 6.ips. Выбираете его во втором поле ввода и опять нажимаете пресловутую кнопку Patch.

Теперь настала пора "надевать" на нашу прошивку OOK. Выбираем файл J6_5_4_2_1_OOK3_b2_UFIF.ips и патчим им прошивку.
Последним штрихом надеваем патч, включающий сервисное меню Monitor Mode. Выбираем файл J6[542.6monitor].ips и в очередной раз нажимаем Patch.
Ну вот мы с вами и нафаршировали оригинальную прошивку патчами, каждый по своему вкусу, теперь настала пора залить ее в телефон. Но перед этим необходимо перевести ее обратно в формат SRE.
Снова запускаем SBSConvertor, но на этот раз в выпадающем списке Setting указываем, что хотим закодировать BIN-файл в SRE. Как только вы укажете этот режим в выпадающем списке, станет доступной галочка Ignore original firmware format. Установите ее. В поле Input File Name (*.bin) указываете тот файл J6LG1.BIN, который мы только что патчили…
Да что за напасть! Выскакивает окошко "Incorrect File Format!". По всей видимости, проблема из-за прошивки версии 6. Ладно, это уже пройденный этап. Если вы наткнетесь на такую же проблему, скачайте SBSConvertor версии 0.1b. Ссылку на него я давал в прошлой статье. С ним подобных проблем не возникает, а работает он ничем не хуже. Если же у вас все прошло хорошо, оставайтесь на второй версии.
В поле Output Filename(*.sre) вписываете имя нового файла с модифицированной прошивкой, к примеру, MyFirm.SRE, и нажимаете кнопку Convert. Через некоторое время выскочит окошко, подтверждающее успешность проведенной операции, а в каталоге с прошивками у вас окажется файл myfirm.sre размером около 9 мегабайт.

Ну вот, мы готовы к самой ответственной части операции. Достаете свой соединительный кабель. Переключаете его в сервисный режим. Подключаете кабель к компьютеру и телефону. Выключаете телефон (красной кнопкой).
Запускаете Sony CMD-Jx Flash Reader 1.0. Указываете номер ком-порта, к которому вы подключили телефон. У меня этим портом является COM2, так как на COM1 у меня висит Ericsson R520 со своим GPRS-Интернетом.
Выставляем скорость обмена 38400 Bd — на более высоких скоростях ком-порта программа под XP не работает. Если вы запускаете программу из-под Windows 98, то можете выставить 115200 — процесс пройдет побыстрее. Выбираете в выпадающем списке Full Flash Image и нажимаете кнопку Read. Появится окно, в котором вас попросят указать имя файла. Не мудрствуйте лукаво и назовите файл myfull.bin. После того как вы кликнете по кнопке Сохранить, окошко выбора файла закроется, и в полоске индикатора прогресса программы появится фраза "Power ON phone!" Нажимаете _на телефоне_ красную кнопку включения аппарата. Фраза "Power ON phone" сменится сначала на "Booting…", а потом побегут цифры и ползунок прогресс-бара. После того как считывание области данных закончится, в строке прогресс-бара появится надпись "Done". Повторяете эту операцию для всех остальных пунктов в выпадающем списке, сохраняя разные области данных в _разные_ файлы — например: myboot.bin, myfirm.bin и mydata.bin. Кнопку включения на телефоне теперь жать не нужно — достаточно просто выбрать область и указать файл, в который ее следует сохранить. По окончании сохранения всех файлов вытаскиваете из своего телефона батарейку и засовываете ее обратно. Этим вы дадите команду телефону выйти из сервисного режима.

После того как закончите эту занудную операцию, вы можете быть уверены в двух вещах. Во-первых, вы обладаете рабочим кабелем, а во-вторых — если у вас во время прошивки все пойдет наперекосяк, вы всегда сумеете восстановить работоспособность своего телефона.
Теперь запускаем Flasher4. Нажимаем кнопку Setting. Выставляем там свой ком-порт и скорость обмена 115200. Нажимаем OK. Дабы нам не скучать во время операции прошивки, жмем на кнопку Show Debug. Открывается дополнительное окно, в котором мы можем наблюдать за ходом процесса перепрошивки.
Для проверки функционирования программы нажмите кнопку Backup NVM. Появится фраза "Power on Mobile". Нажимаете красную кнопку включения телефона (на самом телефоне). Появится бегущий прогресс-бар, а в окне отладки начнут сменять друг друга диагностические сообщения. Если у вас все получилось хорошо, то лог операции закончится фразой "Upload NVM complete: xx.x sec". Это означает, что программа корректно взаимодействует с вашим телефоном. Если этого не произошло, а в логе присутствуют ошибки, разберитесь с ними перед тем, как пытаться что-либо заливать в свой телефон.

Раз уж мы с вами все равно сделали копию NVM, давайте сохраним ее в файл. Для этого нажмите кнопку SAVE FILE. В появившемся окне указываете имя файла и нажимаете Сохранить.
Теперь нажимаем кнопку Load. В появившемся окне выбора нового файла указываем на файл MYFIRM.SRE — тот самый, что нам сделал из пропатченной прошивки SBSConvertor. Повторно жмем кнопку включения телефона. Закуриваем: это надолго. На экране горит фраза "Loading Flash, block 0xXXXX", где роль XXX занимают постоянно меняющиеся цифры. Прогресс-бар доходит до своей крайней позиции, невозмутимо через нее перешагивает и продолжает рисоваться прямо по форме приложения, наглядно подтверждая статус Alfa у этой программы.
Через три минуты операция завершается. Если у вас все прошло хорошо, то в последних строчках лога будет написано нечто вроде "Loading complete: xxx.x sec". У меня, по крайней мере, этот так.

Отцепляете телефон от разъема кабеля. Включаете его и начинаете любоваться приобретением. В меню телефона у вас должно появиться два дополнительных шарика. Один называется Monitor Mode, а второй — Nimar's OOK3 b2. Ну и, разумеется, сработают все надетые вами патчи. Волшебным образом телефон обретет способность набирать русские буквы везде, где предполагается ввод символов пользователем, а также исправится исходно корявый русский перевод.
В меню OOK3 у вас пока ничего нет, кроме пункта Preferences. Не удивляйтесь — наполнением его всякими программами и игрушками мы займемся в следующей статье. А самые нетерпеливые могут посетить веб-страничку http://www.sony-ericsson.ru/forum/viewforum.php?f=45 . На ней приводятся описания всех имеющихся на данный момент программ и игр к телефонам SONY. Заглядывайте туда почаще, так как список постоянно расширяется с удивляющей меня самого быстротой. Вот я там два дня не был, и, гляди ты, уже новая игрушка "ралли" появилась.

Послесловие
Ну что же. Мы с вами совместно провели эксперимент и подтвердили правильность комментария одного из модераторов форума www.sony-ericsson.ru по имени NullPointer к моей предыдущей статье:
"Sony Jx Flash Reader 1.0 гарантированно работает под XP (сам в XP живу). У этой программы есть один глюк — не любит высокую скорость. Поэтому, если не хочет качать, то надо ставить скорость 38к (и в телефоне не забыть поставить 38к или автомат). Flash3 100% работает под XP. На любой скорости. Не пугайте юзеров с WinXP! Перепрошить J7\70 с помощью Flash3 можно и через модемный кабель, J5\6 — нет".

[Продолжение следует]

Герман Иванов



© Компьютерная газета

полезные ссылки
Оффшорные банковские счета