trust already work Прошивка "китайцев" » Портал инженера

Прошивка "китайцев"

Всем доброго дня!
Для начала, у вас, естественно, возникает вопрос: а зачем это нужно? Телефон-то работает (надеюсь!)… Ответ номер раз: а разве не интересно? Ну, а во вторых – я уже писал, что больше половины "китайцев”, которые мне приносят на ремонт "болеют” именно прошивкой. Телефон не включается вообще, включается только без СИМки, не включается совсем если вставлена флешка, не регистрируется в сети, постоянно "подмигивает” подсветкой экрана… Ну и ещё много чего – это всё симптомы слетевшей прошивки. Ну и, кроме того, 99% телефонов русифицированы так, что… уж лучше бы не русифицировали вообще, было бы понятнее. Бывает, что телефон долгое время работает нормально, а потом вдруг начинает капризничать… Все эти неприятности лечатся прошивкой, которую вполне можно сделать самостоятельно. Скажу более: на некоторых сайтах даже выложены инструкции, как именно это сделать. Но дело в том, что люди, писавшие эти инструкции, сами никогда и не пытались сделать того, о чём пишут. Это я говорю с полной ответственностью! И чтобы уберечь вас от подводных камней, поджидающих под гладью подобных статей, я и решился написать это творение. Напугал? Не передумали? Нет? Тогда –
приступим! 
Что нам понадобится? Ну, во первых – софт. Я умышленно не стану говорить про специализированные аппаратно-программные комплексы, так называемые "боксы”: естественно, это будет самым простым, правильным и надёжным решением. Только вот стоят эти "боксы” от 200 натуральных американских рублей. За эти деньги можно купить три новых китайских аппарата… Так что – остановимся на бесплатном софте. Предлагаю программу FLASH TOOL 4.10; в Интернете её можно найти без проблем. Почему именно она? Да просто так; просто нужно с чего-то начинать, так почему бы – не с неё?! Кроме того – я сам начал освоение "китайцев” при помощи именно этой программы. Она, правда, "заточена” только под процессоры MTK, но с другой стороны, 95% китайских телефонов собраны на базе именно этих "камней”. Впрочем, для желающих продолжить "обучение”: у этой программы есть масса аналогов.

Ещё нам понадобится небольшой паяльник, ватт на 25…40, несколько тоненьких многожильных проводков в ПВХ - изоляции, тестер, кабель и… желание. Вернее, так: при помощи желания и не слишком кривых рук мы изготовим кабель.

Кабель.
Идём в магазин, торгующий аксессуарами для сотовых телефонов; по дороге запасаемся БААЛЬШОЙ шоколадкой. Мило улыбаемся продавцу и просим показать несколько кабелей для старых телефонов, всё равно каких: типа Siemens C55, Samsung C100, Эриксонов каких-нибудь древних… Не обращая внимания на удивлённые взгляды продавца из предложенной кучи выбираем те, у которых на середине кабеля болтается небольшая квадратная коробочка. Примерно как на фото: 

А вот дальше – понадобится та самая большая шоколадка и море улыбок: берём маленький ножик и… пытаемся открыть коробочку! Обычно она держится просто на защёлках, никаких болтиков нет. Не открывается? Берём следующую; очень нервничает продавец – идём к другому. Цель – найти коробочку, внутри которой будет маленькая печатная плата с припаянной микросхемой PL-2303. Вот как на фото: 
Некоторые мне возразят, что мол, есть и аналогичные микросхемы (ну, например, CP2101). Не спорю, есть. Но и мои наблюдения, и многих моих коллег сводятся к тому, что с процессорами MTK наиболее стабильно коннектится именно эта микросхема. А стоимость кабелей абсолютно одинаковая, так зачем лишние проблемы? Впрочем, опять же: желающие могут попробовать. 
Ну да ладно, как бы то ни было, а кабель мы добыли. Надеюсь. Кстати, обычно в комплекте с кабелем идёт диск с драйверами, он нам тоже понадобится. 
Приносим домой всё это добро, вновь открываем таинственную коробочку на кабеле и аккуратно достаём плату. Вооружаемся увеличительным стеклом и ищем на корпусе микросхемы ключ: выдавленную точку (как на фото) или любой иной знак. На надпись внимания не обращаем! Она может быть и кверху ногами, и как угодно. Главное – найти ключ. Нашли? Поворачиваем всю плату таким образом, чтобы ключ был слева внизу (как на фото). Тот вывод микросхемы, который оказался так же слева внизу – вывод номер один. Далее отсчитываем против часовой стрелки выводы 5 и 7. Нашли? Теперь очень внимательно следим за дорожками, идущими от этих выводов: они (дорожки) обязательно закончатся где-нибудь на краю платы и к ним будут припаяны проводки, идущие к тому разъёму, который вставляется в телефон. Дальнейшие действия зависят от того, собираетесь ли вы когда-нибудь использовать кабель по прямому его назначению. Если шнурок был куплен только для прошивки "китайцев”, то аккуратно (АККУРАТНО!!!) выпаиваем все проводки с той стороны кабеля, которая идёт к телефону. Затем, на найденные нами контакты – те, которые идут от 1, 5 и 7 выводов микросхемы, припаиваем по новому проводку сантиметров эдак по 30-40, желательно - разноцветных; они в аккурат должны подойти вместо выпаянных "родных”. Если же вы не хотите бесповоротно ломать кабель – можно проводки припаять вместе с родными (я именно так и поступил). Хуже не будет, но паять сложнее. Итогом наших действий должно стать чудо техники, с одной стороны которого – стандартный USB-разъём, а с другой – три проводка. Кстати, их неплохо бы пометить. На тот проводок, который идёт к 1 выводу микросхемы вещаем бирочку с загадочной надписью "TxD”, 5 вывод обзываем "RxD”, а 7 – "GND”. Что означает эта аббревиатура – расскажу в другой статье (если вам это будет интересно), а пока же – могу вас обрадовать: мы изготовили прошивочный кабель! Закрываем коробочку а проводки выводим наружу. Должно получиться что-то такое вот: 
Устанавливаем для нашего девайса драйвера (с диска, или находим в Интернете), затем вставляем USB-разъём в компьютер, через пару секунд в списке оборудования должен появиться виртуальный COM-порт номер … Запоминаем этот номер (обычно 2 или 3) и приступаем к следующему шагу. 
Аккуратно вскрываем подопытный телефон. И сразу знатоки начинают со мной спорить: зачем мол, для прошивки телефон разбирать?! Не спорю: для прошивки обычного телефона – ни к чему (и даже вредно!), но вот "китайцы” – это особая песня! Я уже писал, что в 95% случаев в китайских телефонах почему-то на гнёзда не выводятся прошивочные сигналы (те самые TxD и RxD), а в остальных 5% хоть сигнал и есть, но подобрать разъем, который бы соответствовал гнезду китайского телефона – почти нереально! Так что – вскрываем телефон… Открыли? Снова вооружаемся увеличительным стеклом и ищем на плате контакты с всё теми же надписями: TxD, RxD и GND. Ищем внимательно, контакты могут быть где угодно: под наклейкой с IMEI, под клавиатурой, за батарейкой… На фото внизу я показал, как это может выглядеть. Но – не обязательно именно так, вариантов – много. 
Вот так: 
Или – так: 
Если же, несмотря на все поиски таких контактов не обнаружено, или нашлись контакты, чем-то похожие на те, которые на фото, но не подписанные – не беда, ещё ничего не потеряно! Берём тестер (он же – мультиметр), включаем его в режим измерения напряжения. Далее, любым способом подключаем к плате телефона ПОЛНОСТЬЮ ЗАРЯЖЕННУЮ!!! батарейку (удобнее всего это делать при помощи канцелярской резинки). Телефон не включаем!!! Теперь нам понадобится ловкость рук и никакого обмана: один щуп тестера (чёрный) аккуратно ставим на минусовой контакт батарейки (но так, чтобы батарея оставалась надёжно прижатой к соответствующим контактам телефона), а красным щупом поочерёдно касаемся всех контактов всех разъёмов. Не исключая и гнездо для наушников, и гнездо для зарядного устройства… всех, одним словом! Задача – найти контакт, на котором будет присутствовать напряжение около 2,5 вольт. Меньше 1 вольта – не считается, больше 3,5 – тоже. Именно 2,5. Запоминаем этот контакт. Затем, проверяем все соседние контакты на этом же гнезде, но на которых меньше одного вольта. Но не просто касаемся их щупом; делаем следующий фокус: ставим щуп на дорожку (тестер показывает 0…1 вольт), затем коротко нажимаем кнопку включения телефона. Задача – найти контакт, на котором в момент нажатия кнопки включения напряжение поднимается от 0…1 до2…3 вольт, а после отпускания кнопки снова падает до 0…1 вольта. Нашли? Поздравляю! Второй шаг к самостоятельной прошивке сделан! Найденные контакты и есть искомые TxD и RxD. Отсоединяем батарейку и к выбранным дорожкам аккуратно припаиваем проводки, третий проводок, тот, который GND – это масса; его можно припаять к минусовому контакту батарейки, дорожке с надписью GND или к любому экрану на плате телефона. Всё просто. Просто, да не совсем! Это очередной из обещанных мной подводных камней. Дело в том, что найденные дорожки идут прямо к "сердцу” телефона – к процессору; а процессоры MTK из серии 62хх никак не защищены от статики и при пайке обыкновенным паяльником вы, скорее всего, убьёте свой телефон. Как быть? Ну… использовать специализированную паяльную станцию с активной защитой от статики, антистатический браслет… Что? Нет таких? Тогда предлагаю следующий выход из положения. Возьмите свой паяльник (холодный!), кусок гибкого провода примерно метр длинной, зачистите с одного края сантиметров 15…20 и очень плотно обмотайте вокруг жала паяльника, так, чтобы получилось несколько витков (как на фото). 
Затем включаем паяльник и другой конец провода припаиваем к любому "экрану” на плате телефона. Ждём, когда паяльник хорошо нагреется, выключаем его из розетки и пока он не остыл – припаиваем проводки TxD и RxD. GND (землю) можно паять и включенным в розетку паяльником, главное – не отсоединять провод между жалом паяльника и "землёй” телефона! Когда всё готово - сначала отпаиваем провод от "массы” телефона и только потом – его можно снимать с паяльника. Думаю, не нужно говорить, что отпаивать обратно проводки надо с теми же мерами предосторожности! После пайки обязательно чистым спиртом и кисточкой протираем контакты, чтобы на них не оставалась канифоль (или чем там вы паяли). Должно получиться примерно вот что: 
 

Вуаля! Всё "железо” готово для прошивки!

Теперь программная часть.Скачиваем вышеназванную программу FLASH TOOL 4.10 и запускаем её. Та версия, которая у меня не требует инсталляции (может, появилась ещё какая-то, не интересовался), сразу щёлкаем по файлу "HungHa.exe” и видим: 

Самое наипервейшее, что мы сделаем – это создадим файл с резервной копией прошивки. В случае, если что-то пойдёт не так, при наличии этого файла всегда можно вернуться в исходное состояние. Кстати, очень полезно делать бекап именно нового, полностью рабочего телефона: очень часто "китайцы” начинают глючить после некоторого времени нормальной эксплуатации. В этом случае проще всего залить в телефон исходную, неповреждённую прошивку и телефон – как новый! Можно, конечно, поискать по Интернету подходящую прошивку, но шансов найти её – не много… 
Итак – делаем бекап телефона. 
В меню "Options” выставляем номер виртуального COM-порта, там, где Baseband Chip Type ставим галочку напротив процессора, установленного в телефоне (можно прочитать на самом процессоре на телефонной плате), скорость (Bayd Rate) больше 460800 выбирать не стоит (быстрее процесс прошивки вряд ли пойдёт, а вот различных глюков только прибавится). На вкладке "Download” нажимаем на кнопочку "Download agent” и выбираем "MTK_AllInOne_DA”, кнопочка "Scatter Loading” – "scat26.27.28.29”. Что означют все эти надписи – могу рассказать в следующей статье, пока же – просто выберите соответствующие пункты и пользуйтесь! Переходим на вкладку Readback. Нажимаем на "Add” и ниже появляется поле с названием вроде "NA 0x00000000 0x00000000 ROM_x”. Два раза нажимаем чуть правее NA и появляется окошко, в котором желательно как-то вразумительно назвать файл бекапа. В принципе, всё готово для снятия бекапа. Берём наш чудо-кабель с торчащими проводочками, телефон с такими же проводками, соединяем проводки (можно просто скрутить и изолировать место скруток). Как соединяем? А вот и не угадали!!! Не попарно с одинаковыми метками, как вы подумали! GND соединяем с GND, это правильно. TxD телефона скручиваем с (внимание!) с RxD кабеля и наоборот: RxD телефона соединяем с TxD на кабеле. То бишь, как бы крест накрест. Впрочем, если ошибётесь, то этим телефон точно не убьёшь; он просто не законнектится с компьютером. Итак, проводки скручены и заизолированы. Вставляем кабель в USB-гнездо на компьютере, затем – при помощи всё той же канцелярской резинки подключаем батарейку к телефону (именно в такой последовательности, иначе телефон может определиться как составное USB-устройство и ни о какой прошивке речи не будет). Нажимаем кнопочку "Readback” и затем коротко – кнопку включения телефона. С длительностью нажатия на красную кнопку в телефоне нужно поэкспериментировать; иногда достаточно нажать и сразу отпустить кнопку, а некоторые телефоны требуют почти двух секунд удержания. Главное – не допускать включения телефона. Результатом всего вышенаписанного должна быть сначала бегущая красная полоска внизу окна программы, потом в правом нижнем углу появится тип и размер флешки, установленной в телефоне и начнётся считывание прошивки. Кстати, советую записать и сохранить на будущее этот самый тип и размер флеш-памяти, потом пригодится! Правда, и тут китайцы пооригинальничали со своей странной логикой: надпись "128Mb+32Mb” у них почему-то соответствует 16 Мб. флеш, 64 Mb – это 8Мб, а 32Mb на поверку оказываются четырёхмегабайтной флешкой. Ну да ладно, это всё мелочи. Если процесс не пошёл – скорее всего, вы перепутали проводки, проверьте, правильно ли они соединены, поменяйте местами RxD и TxD. Ещё можно попробовать убрать галочку в пункте "check baseband chip eco version ". Ещё можно поставить поменьше скорость. Всё должно работать! Но вот он, наконец-то настал тот миг, когда чтение прошивки закончилось и файл сохранился в указанном нами месте! Ура! Теперь никакие глюки, багги и вирусы вам не страшны! Делаем не меньше десятка копий этого файла и сохраняем их в разных местах. И идём пить пиво! В следующей статье я расскажу, как заливать в телефон прошивки, форматировать его, русифицировать и т.д. Всё равно за один раз столько информации не усвоится! 
Кстати, попутно предложение к администратору этого сайта: было бы здорово начать собирать коллекцию прошивок "китайцев” на случай "повис, а бекап не сделал” или "хочу нормальный русский язык”, да и вообще – было бы полезно всем.

В первой части статьи я рассказывал, как сделать резервную копию прошивки с ещё рабочего телефона с процессором MTK при помощи программы "Flash tool 4.10”. Надеюсь, у вас всё получилось, потому, как эту статью я хотел бы начать с того, как резервную копию заливать обратно в вашего "китайца” при помощи той же программы (уж простите, уважаемые НЕлюбители Flash tool!). 
Имеем: 1 - телефон, убитый программно (не включается, постоянно перезагружается, мигает табло…); 2 – файл бекапа; 3 – соответствующий софт. Как думаете, с чего начать? Правильно, ищем волшебные контакты RxD, TxD и Gnd и подключаем к ним прошивочный кабель. Подробнее – в первой части статьи. Для любопытных: я обещал рассказать, что означает эта аббревиатура, в смысле - RxD, TxD и Gnd . Так вот: T – это от английского "Trancieve” – отправление; R – "Recieve”, получение, Gnd – это сокращённое "Graund” – почва, земля. D – наверное, от "Data”, то бишь, данные. Соответственно, RxD – шина получения данных, TxD – шина передачи данных, Gnd – земля, то относительно чего меряются уровни напряжений этих самых данных. Кстати, ещё небольшое лирическое отступление для тех, кому интересно. Для прошивки телефона, как вы уже поняли, нужны два провода: RxD и TxD. Но многие знают, что эти сигналы уже есть в компьютере, на стандартном COM – разъёме, так зачем же тогда паять различные переходники, кабели и прочую химию? Ведь, казалось бы, чего проще: подключил три проводка от одного гнезда до другого и прошивай чего хочешь! Ан нет, не тут то было! На компьютере напряжение "логической единицы” колеблется где-то между "+5…+12” вольт, а уровень "логического нуля” – "-5…-12” вольт. Это так называемый стандарт RS-232. А вот в 99% телефонов (и не только китайских) принят другой стандарт: "единица” – это "0…+0.7” вольт, а "логический ноль” – "+2…+3.5” вольта. Несоответствие стандартов налицо. Кроме того, стандартный компьютерный COM-порт ну просто ооочень медленный: 9400 килобит в секунду – это его максимальная скорость, обычно же он работает со скоростью 4700 килобит. С такой скоростью телефон прошивался бы сутки… Вот чтобы решить все эти проблемы и существует волшебная коробочка, через которую мы и подключаем телефон к компьютеру; она согласует уровни и обеспечивает скорость до 115000 килобит (и даже быстрее). 
Ну да ладно, вернёмся к нашим баранам, то бишь, к "китайцам”. Провода подключены, батарейка полностью заряжена. Запускаем Flash tool. Выставляем номер виртуального Com-порта, скорость, тип процессора, Download agent … короче, всё, как и в прошлый раз. Если всё выбрано правильно – появится строчка типа "ROM 0x08000000…”
Два раза щёлкаем по ней и в появившемся окне показываем путь к файлу бекапа. Далее нажимаем кнопочку Download, затем – кнопку включения телефона (коротко, как и при снятии бекапа, чтобы телефон не включился!), внизу побежит красная, затем зелёная полоса… Нервно курим и ждём финала. Если фулл родной – то процесс просто обязан завершиться зелёной надписью "OK” и последующим удачным включением телефона. Эта операция – наипервейшее, что нужно научиться делать, если вы решились самостоятельно прошивать/русифицировать/насиловать свой телефон, поэтому я уделяю ей такое внимание. Повторюсь: что бы вы ни делали, как бы ни издевались над своим "китайцем”, при помощи этой операции всегда можно вернуть телефон в ИСХОДНОЕ состояние. Я специально сказал "исходное”, а не "рабочее”: ведь чаще всего телефон начинают ковырять только тогда, когда он уже "не очень” рабочий или даже "очень не” рабочий. Что же в таком случае делать? 
А делать вот что: для начала – сделать полный бекап! С этого нужно начинать всегда! А вот второй шаг… я бы посоветовал следующее. Если у вас нет чистого родного бекапа, а телефон не включается, то очень часто можно благополучно избежать поиска подходящей прошивки, немного зная "устройство” процессоров, сделанных в "Поднебесной”, я имею в виду процессоры MTK. Дело в том, что логи об ошибках, несовпадение контрольной суммы и прочую гадость процессор, повинуясь какой-то непонятной логике, записывает в определённые ячейки памяти, а при следующем включении проверяет содержимое этих ячеек. И если там что-то не так, то и процессор начинает вести себя, мягко говоря, неадекватно. И часто достаточно просто обнулить содержимое этих ячеек (естественно, зная их адреса), чтобы телефон ожил! И полностью прошивать не нужно! А вот что нужно – так это знать тип процессора и размер флешки, которая стоит в вашем телефоне. Нет, не та флешка, которая карточка для музыки и фотографий; помните, в первой части статьи я говорил, чтобы запомнили/записали цифры в правом нижнем углу "Flash tool 4.10”? Так вот, для работы процессору нужно что-то типа винчестера, в качестве которого выступает микросхема флеш-памяти, а объём этой памяти и есть те самые цифры. 128Mb китайских соответствуют 16 Мб, 64 Mb – это 8Мб, а 32Mb у китайцев почему-то соответствуют флешке объёмом 4 Мб. У вас что было написано? Замечательно! Снова открываем "Flash tool 4.10”, выставляем скорость, порт… И на вкладке "Download” нажимаем кнопку "Format”. 
 

Жутко пугаемся страшных красных надписей, потом выбираем "Manual Format FAT” и в полях "Begin address” и "Format Length” выставляем соответственно:
для 16 мегабайт 0x00E50000 и 0x001A0000;
для 8 мегабайт: 0x00700000 0x00100000;
для 4 мегабайт: 0x003F0000 0x00010000.
Нажимаем "OK” и через минуту получаем оживший телефон! Иногда, правда, телефон всё равно не включается и приходится форматировать ещё и область "0x00E00000 - 0x00200000”. Обычно процесс реанимации на этом и заканчивается. Но то – обычно, а хотелось бы поменьше кирпичей в спину, а по сему – предупреждаю: у меня при такой операции однажды "слетела” так называемая зона безопасности телефона; это такой кусочек прошивки, в котором спрятаны уникальные настройки конкретного телефонного аппарата. В принципе, тут ничего нет страшного, но при условии, что есть бекап телефона, слитый ДО НАЧАЛА всех манипуляций с прошивкой, форматированием и т.д. А по этому в сотый раз повторю: при работе с китайскими телефонами сначала всегда делайте бекап!!!
Но допустим, что этот самый бекап сделан. Тогда нам понадобится какая-нибудь программка-компаратор, например "CMP v2.20”; но если есть желание – сгодится любой компаратор, работающий с 16-ричным кодом. Коротко процесс восстановления выглядит так:
1) Заливаем в телефон наш сохранённый файл бекапа (назовём его Бекап1.bin).
2) Считываем обратно и сохраняем файл уже "второго” бекапа (обзовем его, к примеру, Бекап2.bin).
3) Запускаем программку-компаратор и в качестве "файла А" открываем Бекап1.bin, а в качестве "файла В" - Бекап2.bin.
4) В левом поле программа скажет, что у нас 112-116 несовпадений и под значком дискеты покажет адрес первого несовпадения.
5) Нажимаем на кнопочку "переход по адресу..." и вводим адрес первого из несовпадений. И увидим мы кусочек 16-ричного кода (для любопытных - сразу и видно, почему несовпадений 112-116, а не, к примеру, 116 ровно; несколько байт из зоны безопасности могут совпадать!).
6) Выделяем фрагмент с несовпадениями в "файле А” и нажимаем на кнопку "Сохранить выделенный фрагмент". Имейте в виду, что компаратор выделяет только прямоугольные фрагменты, которые и благополучно сохраняет, а нам нужно получить файл с размером не больше 116 байт, так что выделяем только зону несовпадений, лишнего не захватываем! И сохраняем получившийся фрагмент под каким-нибудь вразумительным именем, например, "Секьюрити.bin".
7) Создаем обычный текстовый файл с любым симпатичным названием (ну и расширением, понятное дело, "txt”), к примеру, "scat-experiment.txt” (помните, в Flash tool-е есть такая кнопочка: "Scatter-Loading”? А внутри файла - такое содержание (С ТОЧЧНОСТЬЮ ДО БУКВЫ!!!):

ROM 0x08хххххх
{
}

где хххххх - это адрес нашего первого несовпадения из компаратора.
8) Итог наших танцев с барабаном - родной бекап относительно рабочего телефона "Бекап1.bin ", зона безопасности "Секьюрити.bin" и текстовый файл – "скат”: "scat-experiment.txt”.
9) Заливаем "Бекап1.bin” со стандартным скатом scat26.27.28.29 (вы ведь уже умеете это делать?!).
10) Затем снова повторяем ту же процедуру заливки, но в качестве файла прошивки уже указываем путь к нашему "Секьюрити.bin" и заливаем его, указав в "Scatter-Loading” вместо стандартного ската путь к "scat-experiment.txt”
Получаем полностью рабочий телефон! Ура!!! Способ проверен много раз на китайцах с процессорами MTK, всё работает без проблем! Кстати, есть ещё одна приятность: полученная зона безопасности прекрасно подходит не только к родной прошивке, но и к самостоятельно русифицированной; так что настоятельно рекомендую проделать всю вышеуказанную процедуру не только в качестве любопытства, но и чтобы избежать лишних проблем при русификации.
Ну а теперь – об обещанных аналогичных бесплатных программах. Можете бить меня, обвинять в предвзятости, но, на мой взгляд, действительно заслуживает внимания только одна программа, аналогичная "Flash tool” – это "Spiderman”. Я пользуюсь версией "Spiderman 2.60”, но кажется, уже есть более новые версии (Яндекс вам в руки!!!). На самом деле, "Spiderman” – это такой программатор для телефонов, так называемый Бокс; а "Spiderman 2.60” – это отвязанная от этого программатора программная часть, которая благодаря неизвестным (мне) программистам прекрасно работает и самостоятельно, стоит лишь в настройках вместо COM-порта, к которому должен быть подключен программатор, указать номер виртуального порта, на котором "висит” наш прошивочный кабель. Выглядит эта программка так: 

Как и в Flash tool - не рекомендую выставлять скорость выше 460800; при большей скорости у меня иногда выскакивают ошибки. Программа, как видно из приведённого скриншота, рассчитана не только на процессоры MTK, но и на много других, преимущественно китайских (вкладки справа вверху). Ещё эта программка умеет "корректировать” IMEI, если вдруг кому это нужно… И ещё у неё есть самый главный плюс: зону безопасности телефона Spiderman восстанавливает автоматически!!! На сколько сразу упрощается жизнь: даже если попытаться залить в телефон абсолютно неродную прошивку – убить безвозвратно ничего не получится! Ну и ещё, контрольный выстрел: программу практически не нужно настраивать! В Flash Tool-е, как вы помните, нужно выставить целую кучу параметров: тип процессора, Download agent, Scatter-Loading… Радуйтесь: в "Spiderman 2.60” выставить нужно только номер виртуального Com-порта и скорость! Очень редко бывает необходимо переставить галочку с "NAND FLASH” на "NOR FLASH”. 
Итак, краткое руководство по пользованию этим чудом техники. 
Запускаем файл SpiderMan.exe. Нажимаем "Connect", выставляем номер COM-порта (если поле не активно – нужно поставить галочку "Set New Port”), скорость 460800 или 115200. Подключаем телефон и нажимаем кнопочку "Boot"; всё готово к чтению прошивки телефона. 
Должна появиться строка "Press ON/OFF key. Please..." и в телефоне жмем красную кнопку. Если ничего не перепутали - пойдет процесс чтения прошивки, снизу побегут полоски и через несколько секунд Spiderman выдаст информацию о типе процессора, памяти. Если этого не произошло – нужно попробовать понажимать красную кнопку на телефоне чуть дольше или наоборот: чуть короче; иногда полезно вынимать батарею и ставить назад (передергивать), т.е. - перезагружать процессор. 
Дальше – всё интуитивно понятно, как говорится – "английский со словарём”: 
Boot - загрузка, получение информации из телефона; 
Read - чтение прошивки из телефона (Бекап) и сохранение в виде текстового 16-ричного файла на компьютере. 
Flash - заливка прошивки в телефон. 
Format - форматирование памяти, сброс настроек на заводские. 
Unlock - Снятие кода оператора. 
Direct IMEI – без комментариев. Пользуйтесь осторожно, закон этого не одобряет! Кстати, в программе два поля для IMEI – во многих китайцах не только две СИМки, но и на самом деле два радиотракта, и как следствие, два IMEI. Удобно. 
В общем, хорошая программка, удобная. Рекомендую. Но прошивать не всю прошивку, а только часть, начиная с какого-либо адреса – она не умеет! Увы, идеала не бывает… 

Для самых стойких, у кого ещё не пропало желание (да не о том вы! ) научиться прошивать китайские телефоны – предлагаю очередную часть своего творения. Нет, увы! – это ещё не русификация; статья про русификацию китайских телефонов практически готова и, надеюсь, в течение недели выложу и её. Сейчас же вашему вниманию предлагается обобщённый вариант ответов на наиболее часто задаваемые вопросы в личку. Суть их сводится к двум основным: 1) После прошивки телефон не включается. Что делать? 2) Существует ли какая-либо методика поиска подходящих прошивок? 
Частично наш уважаемый админ сам пытался ответить; например, в форуме. Но - не люблю, когда за меня мою работу делают; совесть потом мучает… Да и – моя ведь вина: в предыдущих частях нужно было эти вопросы хотя бы вкратце рассмотреть. Так что – вашему вниманию предлагается «работа над ошибками»! 

Прежде всего, хотелось бы спросить: зачем Вы решили прошивать своего «кита»? И спрашиваю я это не из праздного любопытства: однажды ко мне в мастерскую пришёл клиент и попросил русифицировать какую-то очередную «типа Nokia». Телефон, естественно, был китайский, а было это года два назад, прошивок с нормальным русским в Интернете было… значительно меньше, чем сейчас, да и навыков русификации «китов» тоже поменьше... короче, я попытался «отмазаться». Спрашиваю: что, мол, русского нет совсем? Мужик хмуро кивает. Я беру телефон и, что называется, «на дурачка» набираю «*#0007#» (для тех, кто не в курсе – стандартный код переключения «кита» на русский язык). Телефон мигнул и… правильно, сначала офигел я, а потом – мужик. Тело переключилось на русский! Корявый правда, «звоните език», но худо-бедно разобрать можно! По какой-то непонятной логике разработчики ПО для телефона русский ленгпак предусмотрели, но переключиться на него посредством пользовательского меню действительно было невозможно!!! Возможно, это можно было сделать через инженерное меню, но я не любитель лазанья туда… Так я это всё к чему рассказываю-то: если вы просто хотите русифицировать своего «китёнка» - сначала попробуйте стандартные коды, чем чёрт не шутит – вдруг получится?! Несколько кодов я, на всякий случай приведу, остальные - Яндекс пока никто не отменял… 
*#0007# - Переключение телефона на русский язык; 
*#0044# - Переключение телефона на английский язык; 
*#0000# - Язык по умолчанию (обычно английский; иногда – китайский); 
*#66*# - Версия прошивки в телефоне; иногда вместо этого кода работают *#800# ; *#900# ; #*888# ; #*878# ; может, есть ещё что – не знаю. 
*#369# - Регулировка контраста телефона, часто бывает полезна после «общего сброса»; 
*#77218114# ; *#881188# ; *#94267357# ; *#9426*357# ; *#19912006# ; *#118811# ; *#3646633# - это всё те самые коды общего сброса «китайцев». Иногда бывает нужен пользовательский код телефона, он же – защитный код. Кроме стандартных 0000 и 1234 можно попробовать следующие: 1122, 1111, 00000, 12345, 00000000, 01020304, 10203040. 
Кстати: если интересно – постараюсь как-нибудь выложить все коды, что знаю; только – их много, а по сему – это будет отдельная страничка. Знаю, не спортивно это – пользоваться кодами, но иногда помогает.
Для успешного поиска подходящей прошивки следующим шагом должен стать максимально полный сбор информации о подопытном телефоне. Зачем? Дело в том, что китайские «тела» страдают забавной болезнью: аппараты с абсолютно одинаковой внешностью, названием, продающиеся под одной и той же торговой маркой очень часто имеют совершенно разную электронную начинку! А по сему, для успешного поиска подходящей прошивки неплохо бы знать о телефоне что-нибудь ещё кроме названия; а фразы типа: «ищу прошивку для китайской Nokia E71», часто встречающиеся на форумах и в личных сообщениях - звучат, ну скажем, немного нелепо. Я видел не меньше десятка вариантов той же самой «Е71»! Интересует нас, прежде всего, два параметра: полное название процессора и объём установленной микросхемы флеш-памяти. Попутно неплохо бы выяснить реальное разрешение камеры (камер) и размер (разрешение) экрана, а так же сенсорный экран или нет; но процессор и обьём флешки – знать обязательно! Тип процессора можно просто прочитать на самом процессоре (процессор – это такой чёрный квадратик на плате с размерами примерно 1,5х1,5 см. и надписью вроде МТК-6226ВА), а обьём флешки посмотреть при помощи «Flash tool» (мы уже делали эту процедуру). Очень желательно также посмотреть версию уже залитой в телефон прошивки. Иногда это можно сделать, набрав код *#66*# или какой-либо другой (Яндекс в помощь!). Но часто ни один код не подходит, а иногда – телефон вообще не включается. Как тут быть? А быть тут программке «WChinaTool», в частности – «WChinaTool_v0.4», которой я сам пользуюсь (может, есть и более новая – не знаю, поищите). Эта программа анализирует бекап фулла, слитого с телефона, и выдаёт массу интересной информации. Запускаем программку, «показываем» ей, где лежит наш фулл, программа немного подумает и выдаст примерно такую картинку: 
Как видим, в моём случае в аппарате установлен процессор МТ6226, размер микросхемы флеш-памяти – 16Мб, версия ПО – это синяя строчка вверху: T6226_05C_PCB01_GPRS_MT6226_S01.B10_EFATRIS_V0915A. 
Для любителей всё потрогать и пощупать ручками: то же самое, в принципе, можно увидеть и без программы – всего лишь при помощи любого HEX-редактора: нужно посмотреть слитый файл прошивки начиная с адреса 000003E5 ну и дальше по смыслу. 
Вот такую штуковину и нужно набирать в Яндексе, если вы хотите залить в аппарат ту же самую прошивку, которая и была. Но нужно учитывать и строчку BUILD: в ней закодирована версия печатной платы, установленная в вашем аппарате. Очень часто бывает так, что строчка ROM одинакова для всех телефонов одной серии, а BUILD различается; и в результате при попытке залить неродную прошивку наблюдаются различные глюки (не работает камера, тихий звук, картинка не на весь экран…) или телефон не работает вовсе. В идеале должны совпадать и ROM, и BUILD; но то ведь в идеале… А нам-то интересно как раз «не идеальное»! Зачем менять прошивку с корявым русским, без Явы и читалки на прошивку… с корявым русским и без Явы и читалки?  Какой-то определённой методики поиска и подбора подходящей прошивки нет (да и откуда ей взяться?); технология одна: скачиваем, заливаем, включаем… Не включается? Пытаемся восстановить зону безопасности. Не получается? Скачиваем другую прошивку и всё повторяем сначала. Вопреки расхожему мнению могу с полной уверенностью заявить: каких-либо ограничений на количество попыток заливки/чтения фулла нет: и после тысячного цикла перепрошивки телефон будет работать точно так же, как и после первой прошивки, сделанной на заводе! Так что – не бойтесь экспериментировать: что-то повредить или исчерпать число попыток попросту невозможно! Разумеется, это верно лишь в том случае, если вы делаете всё «как надо». А что касается поиска подходящего фулла - могу посоветовать только одно: ориентируйтесь на вышеназванные показатели: процессор, размер памяти, камера, экран. Если вместе с фуллом будет лежать и фото телефона – можно обратить внимание и на него; но это – не стопроцентный показатель! Однажды я залил фулл от N95 слайдера в N95 моноблок (или наоборот; давно было дело, не помню) и телефон благополучно заработал! Не работала только одна камера, но зато появилась поддержка Ява-приложений. Клиент остался доволен! Да, и ещё один момент: если размер флеш-памяти, установленной в вашем аппарате, ну скажем, 4Мб, а вы нашли прошивку, которая «весит» 16Мб – можете даже не пытаться её скачивать, не тратьте попусту трафик и время! Размер файла прошивки должен АБСОЛЮТНО, с точностью до бита совпадать с объёмом флешки. Просто для контроля – можно посмотреть размер бекапа родного фулла и при поиске обращать внимание только на прошивки такого же размера. Скачанную прошивку неплохо бы сразу же посмотреть при помощи всё той же «WChinaTool»: программа, помимо всего прочего, показывает также языки и шрифты, «заложенные» в прошивку. Возможно, эта информация сэкономит лишний час жизни: прошивка вообще без русского языка как-то… скучна, что ли…;) Вот чтобы лишний раз не прошивать телефон наличие русского языка можно и проверить.

Немного о самом процессе прошивки. Немного – потому, что в предидущих частях я подробнейшим образом рассказал о чтении фулла из телефона, а помещение его обратно – практически тот же самый процесс. Подключаем кабель, настраиваем программу (порт, битрейд,...), только теперь нужно нажимать кнопочку «Download» для Flashtool или Flash для Spiderman. Не забывайте про начальный и конечный адреса для Flashtool-а и про выбор правильного лоадера (для него же). В этом плане я бы посоветовал пользоваться «Человеком-пауком», Spiderman-ом то бишь. Но! Как всегда встревает это самое «но». Спидерман теоретически сам в автоматическом режиме восстанавливает зону безопасности телефона; так что «моргалик» или труп получить сложнее… но то – теоретически! Не люблю я слов «в автоматическом режиме». Пару раз было так, что прошивка по всем параметрам должна работать, Spidrrman её честно заливает, не менее честно чего-то там восстанавливает; а в итоге – мирно спящий труп! Вот здесь-то и вспоминается народная мудрость, что самая короткая дорога не всегда оказывается самой лёгкой! Если тело не подаёт признаков жизни – можно попытаться пропатчить прошивку при помощи программы «MTK_Repair6226». Тут нам понадобится сама эта программа, ну и наша старая знакомая FlashTool. Порядок действий примерно такой: 
1) Скачиваем и запускаем MTK_Repair6226BA. Запускаем, запускаем… Нет, это не побитые шрифты, это шрифты, по видимому, китайские! После запуска файла MTKDecryte.exe взору является такая вот картинка: 
Ещё раз повторю: не нужно лезть в настройку шрифтов в вашем компьютере: пробовал, не помогает! Как в том анекдоте про лягушку: придётся есть так. 
2) Нажимаем верхнюю левую кнопочку, обозначенную «???» и показываем путь к файлу прошивки, которая не заработала (а должна была!). Причём, программа видит только файлы с расширением *.bin, а фулл, сливаемый тем же самым ФлешТулом сохраняется вообще без расширения; так что, возможно, придётся поменять имя файла (к имени файла добавить .bin). Если всё сделано правильно, то адрес и имя файла прошивки появятся в верхней светлой строчке, а в нижней – адрес пока что несуществующего файла с именем, отличающимся от исходного только на три символа: «_jm». 
3) Нажимаем на правую нижнюю кнопку – программа чего-то там заругается (не глядя соглашаемся!) и создаст тот самый файл, про который она писала в нижней строчке. Файл появится в той же папке, где лежал исходный, но в принципе, путь для него можно указать, нажав кнопочку, обозначенную как «????». Не знаю, правда, зачем это нужно… 
4) Запускаем программу FlashTool, устанавливаем битрейд, порт, стандартный лоадер… и в качестве файла прошивки указываем полученный файл – тот, который …_jm.bin. Заливаем его в телефон и радуемся! Спидерман такого не умеет. 
5) Небольшое дополнение: если размер полученного файла равен 0 байт – такой файл, разумеется, прошивать не стоит. Не за чем. Ноль байт означает, что либо прошивка исправна, но всё же совершенно не подходит к аппарату, либо (чаще) – что программа просто не знает, что с такой прошивкой делать… Для нас оба варианта равнозначны: тело не ожило и это главное. И ещё: как нетрудно догадаться, программа работает только с процессорами MTK6226BA. Жаль. Для всех остальных процессоров есть ещё один способ, ещё более запутанный, но зато – универсальный! Расскажу о нём. 
Понадобится нам какая-нибудь программа-компаратор, которая умеет работать с шестнадцатеричными файлами. Для определённости пусть будет CMP_v2_20 (все почему-то советуют именно её – пускай, согласимся; хотя это не принципиально). Внимание: смысл следующего действия – получение файла зоны безопасности ОТДЕЛЬНО ОТ ВСЕГО ФАЙЛА ПРОШИВКИ!!! Прочитайте эту фразу ещё раз и осознайте: это важно! Предыдущий способ «работал» только с конкретным типом процессора, только с файлом прошивки… и далеко не всегда корректно. Тот кусочек файла, который мы получим в результате дальнейших действий вполне можно «наложить» на любую из выбранных прошивок, на русифицированную прошивку, на прошивку, слитую с другого телефона… И этот файлик содержит уникальные настройки, «прошитые» на заводе-изготовителе только для вашего аппарата! Так что – с этим файлом вероятность нахождения «правильной» прошивки для вашего аппарата резко возрастает! Можно как угодно извращаться, заливая практически любые подходящие прошивки от аналогичных аппаратов, затем поверх «накладывать» свою родную «зону безопасности» и с вероятностью 90% получится рабочий аппарат! Заинтересовал? Тогда продолжим. 
Как я уже говорил, нам понадобится 16тиричный компаратор (CMP_v2_20), бекап РОДНОГО фулла: не скачанного с Интернета, а именно РОДНОГО, слитого с ещё работающего аппарата; ну и флешер, всё та же FlashTool. 
1) Заливаем в телефон родной фулл (для определённости назовём его FF_01). 
2) Считываем его обратно из телефона и сохраняем в файл (пусть будет FF_02). 
3) Запускаем компаратор. В поле «Файл А» указываем путь к FF_01; в поле «Файл В», соответственно, путь к FF_02 (не перепутайте!). 
4) Если всё сделано правильно – программа в столбиках слева покажет примерно 100…116 несовпадений. Откуда они взялись? Ну… если не очень точно, но хоть немного понятно, то есть в флеш-памяти телефона несколько ячеек, в которых хранятся уникальные для вашего аппарата настройки и при заливке родного фулла телефон их не перезаписывает (или восстанавливает). Нетрудно догадаться, что если залить в телефон прошивку от какого-нибудь другого тела с другой зоной безопасности, то возможен такой вариант, когда новые настройки «загоняют» телефон в такой режим, в котором он просто не сможет включиться по всем законам физики! Хотя казалось бы: вся прошивка совпадает, не совпадают лишь несколько байт настройки… Вот эти-то несовпадающие байты нас и интересуют! Сохраняем их. Для особо любопытных: некоторые байты зоны безопасности могут совпадать, а потому число «несовпадений» в зависимости от аппарата может меняться. 
5) Дважды щёлкаем по первому несовпадению (столбец слева), в правом поле программа подсветит синим значение ячейки выбранного адреса. Не перепутайте! Нас интересует именно левый столбец, тот, где «Файл А»! В правом поле, всё в том же файле А выделяем часть файла, содержащую все несовпадения. Для этого щёлкаем по первой подсвеченной ячейке, зажимаем клавишу и щёлкаем по последнему несовпадению. Лишнего не выделяйте! Нас интересует только зона безопасности размером 116 байт, не больше! Для выделения можно так же использовать клавиши курсора + клавиша . Учитывайте так же, что программа позволяет выделять либо одну ячейку, либо сразу слово (или несколько слов); половинку строчки выделить не удастся.
6) При помощи кнопочки «Сохранить выделенный фрагмент» сохраняем интересующий нас кусочек файла, ну например, в файл «Bezopasnost.bin». Советую для этого файла создать папку и в неё же положить файлик *.doc или *.txt с названием телефона и – главное – АДРЕСОМ ПЕРВОГО НЕСОВПАДЕНИЯ! Это важно!
7) Создаём любой файл с расширением *.txt, например, «my_new_scat.txt» и в него записываем следующее содержание (с точностью до символа!):
ROM 0x08хххххх
{
}
где хххххх - это адрес того самого первого несовпадения. Сохраняем изменения.
8) В общем-то всё! Файл «Bezopasnost.bin» - это и есть ваша зона безопасности, а «my_new_scat.txt» - это файл-лоадер с адресом первой ячейки, начиная с которой нужно заливать «Bezopasnost.bin». Дальше догадаетесь, что делать?
9) При помощи программы FlashTool заливаем файл FF_01 (ну, или какой-нибудь другой, из Интернета скачанный: интересно же!  ), при этом используем стандартный лоадер (scat26.27.28.29). Затем поверх, уже при помощи нашего «самодельного» лоадера «my_new_scat.txt» в телефон заливаем «Bezopasnost.bin».
10) Радуемся и идём за Клинским!
Ко всему вышесказанному добавить могу следующее. На форумах народ волнуется по поводу: «А что, если нет родного фулла? Тогда зоны безопасности не видать?». Отвечаю. По хорошему – ничего тут уже не поделаешь. К сожалению. Не, можно и поделать ?: покупаем GSM-тестер стоимомтью несколько тысяч зелёных рублей… Но можно и по плохому. Ищем в Е-Нете фулл уж хоть с каким-нибудь китайско-русским, пусть без Явы, пусть с некрасивыми картинками… короче – любой, лишь бы подошёл к телу и он нормально включился. Заливаем его в аппарат. Заряжаем батарейку и ходим с телефоном несколько дней, проверяя его на предмет «глюков», беспричинной потери сети, быстрого умирания батарейки… ну и так далее. Если глюки достают уж очень сильно – начинаем всё сначала: ищем прошивку, заливаем… Ну, а ежели, паче чаянья, телефон хоть приблизительно работает – делаем ему общий сброс, формат (средствами самого телефона!); затем вышеописанным способом «добываем» из него зону безопасности и приступаем к поиску уже нормальной прошивки с русским языком и Явой или к русификации и «доводке до ума» уже существующей. И не нужно меня бить по лицу за такой совет: знаю, вероятность глюков вполне себе сохраняется, а способ, мягко говоря, не идеальный… Зато – работает!

И ещё один момент хочется озвучить в завершение темы прошивки. Китайские тела после прошивки периодически возмущаются: мол, «не мой IMEI и работать не буду!». Это не часто, но всё же бывает. Логично предположить, что в прошивку надо бы вернуть родной IMEI – тот, который на этикетке под батарейкой. И даже программку специально для этого придумали, тоже бесплатную между прочим: «MTK IMEI changer» называется. Но, да простят меня разработчики этой программы – работает она… нечасто… и немного. Зато – через стандартный шнурок, идущий в комплекте с аппаратом, прошивочный шнур не нужен! Но как-то у меня не срослось с этой программкой; Spiderman делает то же самое, но стабильно и просто! Есть возможность записать в тело сразу два IMEI-кода (если в телефоне реально два трансивера!). В общем, рекомендую Spiderman: сам проверял, работает.
Несколько слов о кабеле. Sorry, если ещё раз в чём-то повторюсь, но… Для прошивки ОБЯЗАТЕЛЬНО именно прошивочный кабель! Да, правильно заметили наиболее любопытные и наблюдательные: на выходе микросхемы PL2303 и ей подобных формируются сигналы Rx и Tx; но ведь точно такие же сигналы присутствуют и на стандартном COM и LPT – портах! Правильно, такие. Согласен. Но всё же – не совсем такие. И СОМ, и LPT порты работают с протоколами передачи данных RS-232 и иногда – RS-485 (говорят, сам не видел). Так вот, согласно протоколу RS-232 «физическое» напряжение, соответствующее логической «единице» равно +12 Вольт, а логический «ноль» равняется -12В. физических. Протокол передачи данных, применяемый в китайских телефонах – это логическая «единица», равная 0…+0,7В и логический «ноль», соответствующий напряжению 2,5…3В. Ну и что тут общего? Мало того, что телефон просто «не поймёт», не сможет обработать сигналы такого уровня, так ещё и запросто сгореть может! Три и двенадцать вольт – всё-таки разница в четыре раза… Много однако! И ещё: даже если каким-то чудом и получится подключить «китайца» к СОМ-порту – так не забывайте и ещё одну «мелочь»: СОМ-порт работает на скорости 4700 кБит/сек; а виртуальный СОМ-порт можно «разогнать» до 115200 кБит/сек. Как, ощутимо? А теперь – представьте: файл прошивки «весит» 32Мб. Сколько времени займёт процесс прошивки телефона на скорости 4700? А если ещё и несколько раз прошивать придётся? Ну, за месяц управитесь!

Вот и подходит к концу моя сага о самостоятельной прошивке китайских телефонов. Думал, управлюсь за пару месяцев, а получилось вон как… Ну да ладно, что сделано, то сделано. Вашему вниманию представляется заключительная часть из этой серии статей, и называется она – «русификация и ковыряние в прошивке». Самое интересное, так сказать. Приступим!

Прежде всего, что касается бесплатной русификации. В процессе подготовки этой статьи я перепробовал практически весь фришный софт, доступный на данный момент в РуНете. Перепробовал и пришёл к печальному выводу: бесплатный сыр бывает только сами знаете, где. Увы! (Философом становлюсь, однако!). И хоть я и стараюсь не рассказывать о платных аппаратно-программных решениях, но справедливости ради вынужден всё же заметить: лучше и удобнее  Infinity Box + Russian Language Pack Editor увы, не нашёл. Infinity Box – это такое устройство для прошивки телефонов, а Russian Language Pack Editor – программа к этому боксу. И всё бы хорошо, но на момент написания этой статьи бокс стоит порядка 10’000 рублей, а программа к нему – ещё три тысячи… Так что – будем изыскивать что-нибудь попроще да подешевле.

В принципе, на просторах Интернета валяются и бесплатные программки; только – многие из них работают либо плохо, либо никак. Один-два аппарата русифицировать с их помощью ещё можно, но в коммерческих масштабах… Тоскливо! К тому же, беда большинства бесплатных русификаторов в том, что они делают русификацию только для одного тела, в другое исправленная прошивка запросто может не подойти, хотя по всем параметрам телефоны - близнецы! Вот по этому поиск русифицированных фуллов в Е-Нете сильно затрудняется. Хотя, в процессе подготовки этой статьи я ради эксперимента попытался русифицировать фулл, слитый с китайского iPhone при помощи Infinity Box + Russian Language Pack Editor. И исправленный фулл подошёл как минимум, к двум телефонам: к тому, с которого, собственно, он и был слит, и ещё к одному точно такому же.

Ну да ладно, вернёмся к бесплатным (или условно-бесплатным) программным продуктам.

Наиболее известная программа из условно-бесплатных – это «RusLang». Почему я её назвал условно-бесплатной? Дело в том, что, вообще-то, это изначально не самостоятельная программа, а часть аппаратно-программного комплекса (бокса) GStar. Но, благодаря усилиям отечественных хакеров все могут оценить возможности этой программки, не покупая сам бокс. На момент написания этой статьи я в Сети нашёл версию «RusLang_2.2», вот о ней и пойдёт речь. Ищем (сначала – компромисс с собственной совестью, а потом – программу), скачиваем, устанавливаем. Вернее – устанавливать её, как раз не нужно: в моём случае оказалось достаточно просто запустить файл «RusLang for GStar_un.exe»; а вот антивирусником архив с программой проверить – лишним не будет: у меня вместе с архивом в компьютер попытался прорваться какой-то Троянец с нецензурным именем! Едва отбился!

Запустили программку – и видим такую вот картину:

 

Программа сама не умеет читать фулл из телефона (жаль, полезная была бы функция), а по сему – ей нужен фулл, слитый с телефона любым удобным способом (FlashTool, SpiderMan…). Уточнение: программа работает только с файлами с расширением *.bin, так что, возможно, придётся файл переименовать. Показываем путь к фуллу: кнопочка «Открыть», дальше – по смыслу…

Программа может просмотреть и сохранить как весь файл, так и отдельно языковой пакет; может осуществлять поиск подлежащих русификации слов, как по какому-то заданному слову, так и в автоматическом режиме, ориентируясь на интегрированные или подгружаемые словари (или ещё какую непонятную логику). Я бы порекомендовал начать с автоматического режима (галочка «новый режим») и с просмотра сразу всего фулла (галочка «Всю прошивку»). Шансы, что фокус получится – невелики, но если всё же сработает именно этот способ – жить будет немного проще. Но, скорее всего, программа ругнётся что, мол, «Русский язык не найден». Тогда можно попытаться задать ей какое-то ключевое слово, которое точно присутствует в прошивке (вспомните хоть одно полное название любого пункта меню или название любого файла, помещённого в память телефона и записанного русскими буквами…). Убираем галочку «Новый режим» и в поле «Слово для поиска» вписываем это самое слово. В моём случае, как видите, это слово «Ок» (оригинал, блин!).

 

В этом режиме программа «задумается» на несколько минут: это нормально, не надо её дёргать или прерывать. Такая вот она: задумчивая! По окончании процесса вам будет предложено «Если охота – прокомментируйте то, что получилось» и результат своей работы программа сохранит в файл с именем, отличающимся от исходного на * .Rus. Если интересно – произведённые программой замены можно посмотреть в файле «Zam_log.txt». Обратите внимание на цифры «Исходная длинна слов» и «Текущая длинна слов». В инструкции к программе сказано, что «Необходимо, чтобы исходная длинна слов была больше, чем текущая», только вот как это сделать – там не сказано. Интуитивно это понятно: если после перевода слова получатся длиннее и больше исходных – то они просто не поместятся на место старых, непереведённых слов; все адреса сдвинутся, размер файла прошивки получится больше исходного. Понятно-то оно, конечно, понятно… непонятно только, как этого добиться, если получится наоборот. Единственный вразумительный совет могу дать только такой: попробуйте предварительно откорректировать используемый словарь – внимательно проверить его на предмет длинны фраз исходных и фраз, полученных после перевода.

Да, и самое интересное: программа, разумеется, постарается перевести не только заданное вами слово, но и вообще все слова, какие она посчитает нужным: слово для поиска ей нужно всего лишь для локализации части прошивки, подлежащей русификации… только вот логика работы этой программки, мягко говоря, оставляет желать лучшего. Некоторые слова программа не признаёт словами вообще (и, соответственно, напрочь отказывается русифицировать), некоторые – даже приблизительно не соответствуют исходным… Ну и словарь, понятное дело, просто не может подходить сразу ко всем телефонам и ко всем прошивкам. Часто возникает необходимость вручную исправить словарь или добавить в него новые слова, выражения. А для этого есть кнопочка «Редактор».

 

Нажимаем её и снова ждём несколько минут: Причём, лучше всё делать именно в такой последовательности, как я описал: сначала русифицировать прошивку, а уже потом, не закрывая программу открыть словарь для редактирования. Так экономится время, нервы… ну, и просто нагляднее результат работы! Программа подгружает все слова, которые (по её мнению) есть в телефоне, и предлагает свой вариант их перевода. Думаю, что делать в этом окошке – догадаетесь сами. Менять всё, что не понравится. Добавлять все слова, которые программа «забыла» или не посчитала нужным переводить. Удалять повторы. Словом, приводить словарь в «приличный» вид. Уже изменённые слова будут подсвечиваться, программа сама будет пытаться откуда-то подгружать какие-то гипотетические  словари (на которые всё равно особо не стоит рассчитывать)… Названия кнопочек тоже в комментариях не нуждаются; не забудьте только после окончания работы нажать волшебную кнопочку «Сохранить». Кнопочка «Загрузить» служит для того, чтобы можно было подгрузить ранее созданный словарь. После этой процедуры желательно проверить всё на предмет наличия дублей и, соответственно, удалить всё лишнее (кнопка «Удалить дубли»).

Да, и последнее. После редактирования исправленный языковой пакет, разумеется, надо бы поместить обратно в телефон. Программа умеет и это. Переходим на вкладку «Флешер», выставляем номер СОМ-порта, скорость… Дальше – по смыслу. Там всего две кнопки и обе – на русском языке. Внимание: Программа почему-то отказывается заливать в телефон весь фулл целиком, но отдельно языковой пакет заливает нормально! Во всяком случае, так было с моей версией RusLang.

Ещё одна условно бесплатная программа для редактирования ленгпаов в китайских телефонах – это «MTK Resource Edit».

Софтинку эту корсары цифровых морей «отломали» от аппаратно-программного комплекса «Spiderman box». На момент написания статьи самая свежая версия программы была «MTK Resource Edit V 1.3». Ищем, скачиваем, устанавливаем… Выглядит она вот так:

 

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

Запускаем программу,  жмём кнопочку «Open», показываем путь к файлу прошивки… Эта программка работает гораздо резвее предыдущей, и уже через несколько секунд нашим глазам явится полный список языковых пакетов, присутствующих в телефоне. Причём, любое слово в любом из пакетов можно исправить! Но – не всё так просто (а иначе – было бы скучно!). Пункт номер раз: после исправления слова (или фразы) должны иметь длину равную или меньше, чем исходная фраза (причины я уже говорил выше). Пункт номер два; по моему – очень неприятный. Дело в том, что очень часто слова из разных столбиков, расположенные в одной строчке – не совпадают друг с другом! И приходится долго и мучительно думать: какая фраза к чему относится… Если «лечить» единственный аппарат, то ещё куда ни шло; ну а если заняться этим серьёзно – то на редактирование прошивки подобным образом ушло почти два часа, думайте сами! Ну и пункт номер три: программа почему-то (у меня) нашла не все слова, подлежащие русификации…

Иногда бывает нужно сохранить языковой пакет отдельно, без всей остальной прошивки. MTK Resource Edit поможет вам и в этом. Щёлкните мышой по первому слову – в окошке справа появится адрес первого символа этого слова. Запоминаем (записываем) эту цифру. Затем так же узнаём адрес последнего слова. А всё то, что между этими адресами – и есть языковой пакет! Можно его вырезать (любым HEX-редактором) и сохранить. Заливать только часть файла прошивки мы уже умеем (смотри предыдущие статьи!). Это полезно бывает, когда русифицируешь сразу несколько одинаковых телефонов, а заморачиваться с зоной безопасности у каждого по отдельности – не хочется. Внимание: адреса начала и конца языкового пакета – ПРИБЛИЗИТЕЛЬНЫЕ!!! Чуть позже расскажу, почему так и что с этим делать.

Но программка «MTK Resource Edit» умеет не только редактировать языковой пакет: она же позволяет «подправить» и мелодии, и картинки, которые «зашиты» в прошивку. Алгоритм замены – тот же: открываем соответствующую вкладку (Music или Pictures), выделяем нужный файл из списка; причём музыкальный файл можно сразу же и прослушать, а картинка будет видна в виде превьюшки. Единственное, что нужно сказать – программа почему-то работает только с одной какой-либо выбранной папкой (WorkDir). Неудобно конечно… зато – бесплатно. Советую сначала создать какую-нибудь папочку, положить в неё все музыкальные файлы и картинки, которые планируете «залить» в телефон, а уж потом – нажать в программе кнопочку «WorkDir» и показать путь к этой папке. Кстати, в эту же директорию будут помещаться и файлы, которые вы захотите «достать» из телефона. Да, и ещё одно: как и в случае с языковым пакетом – картинки и мелодии, которые вы планируете поместить в свой аппарат, должны быть меньше или равны по объёму, чем исходные (причины – те же, что и в случае со словами). Физический размер картинок (в пикселях), разумеется, нужно делать точно таким, как и исходная картинка или анимашка. Кстати, для облегчения жизни размер выбранного изображения виден в программе в строчке, расположенной над полем для просмотра.

Теоретически программа умеет редактировать и шрифты, это вкладка «Font». Но то ли у меня руки кривые, то ли файлы прошивок какие-то не такие… короче, на этот раз теория и практика разошлись. Отредактировать или заменить хотя бы один символ у меня так и не получилось. А жаль. Если кто разберётся, как эта вкладка работает – просьба поделиться с народом (и со мной!).

После всех произведённых изменений исправленный файл не забывайте сохранять, для этого наличествует кнопочка «Save», расположенная слева внизу.

Исправленный файл прошивки можно залить в телефон любым флешером, какой вам больше нравится (SpiderMan, FlashTool…). Возможно, что после всех  вышеперечисленных манипуляций с телефоном и заливки в него исправленного фулла аппарат попросту не включится… тогда возвращаемся к предыдущим статьям и восстановлению зоны безопасности. Если вы всё делали так, как я советовал, то файл с зоной безопасности для вашего аппарата уже должен лежать где-нибудь в потаённом архивчике… Распаковываем, заливаем в тело поверх исправленной прошивки… и радуемся! Нет файла – смотрим предыдущую статью, делаем…

Есть ещё две программы для корректировки «Езиков»: это «LangEditor» и «G$tarLpMan». Я точно не знаю, но, по всей видимости, обе эти программы написал один и тот же автор: очень уж похож алгоритм работы этих программных продуктов. Да и интерфейсы тоже чем-то похожи… «G$tarLpMan» в природе существует в двух ипостасях: бесплатная и платная версии; а «LangEditor» - давно бесплатно валяется по Сети. Если позволите – начну с бесплатной версии «G$tarLpMan» (платную бесплатно скачать не удалось… жаль… J).

Программа довольно функциональная, перечислю лишь основные её возможности:

- Собственно, перевод по словарю (с английского или корявого русского);

- Редактирование вручную некорректно переведённых фраз;

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

- Перевод можно делать любого размера, как больше, так и меньше исходных фраз (честно говоря – не пробовал; но если верить автору программы – должно работать);

- Результаты перевода можно сохранять «про запас» в виде библиотеки, а в дальнейшем – использовать. Удобно!

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

- Импорт отдельных слов и целых фраз в словарь (у меня не получилось, но автор уверяет, что можно!).

- Наконец-то реализована функция поиска в ленгпаке! Можно найти слово или часть слова в любом из языковых пакетов! Так же есть поиск непереведенных строк.

- Сохранение результатов корректировки в файлы изменений и scat-файл для загрузки в телефон (создание патча).

Ну и теперь – что с этим всем делать. Ищем/качаем/запускаем программу. Открываем файл с прошивкой. Сразу уточню: программа открывает файл прошивки ЦЕЛИКОМ, а результат работы сохраняет в виде отдельного патча, который нужно залить в аппарат при помощи FlashTool’a. Необходимый для этого scat-файл (scat_rus.txt), а так же файлы-патчи, которые нужно заливать (lp.bin, var.bin, in.bin) – программа формирует. В двух словах: отключаем Check baseband chip ECO version, выбираем scat-файл scat_rus.txt, указываем в регионах одноименные файлы патча, кнопочка «Download».

Итак, открываем файл с прошивкой (*.bin). Выглядеть это будет примерно вот так:

 

 Далее: в полях, обведённых красным – нужно вписать адреса исходного и переведённого языковых пакетов. Как их найти? Чуть ниже расскажу.

Если адреса введены правильно, то в столбцах «Исходный» и «Переводимый» появятся слова или фразы соответствующих пакетов. Столбец «Перевод» заполняется по мере перевода языкового пакета. Причём, этот столбец можно корректировать и вручную; остальные столбики доступны  только для просмотра.

Интерфейс программы интуитивно понятен и сделан полностью на русском языке (респект автору!), так что – в особых пояснениях не нуждается. Прокомментирую лишь отдельные пункты:

Правое поле – таблица словаря. Стоит отметить, что словарь хранится в базе данных (рекомендую почаще делать резервные копии!); в этой же базе данных предусмотрено несколько переводов одного и того же слова (непонятно, зачем…).

Ленгпак/Загрузить – загрузка ленгпака из выбранного фулфлеша в базу. После загрузки можно будет редактировать текущий ленгпак в редакторе. Перед загрузкой установите соответствующие адреса языковых пакетов.

Ленгпак/Из исходного (F4) –  заполняет текущее поле «Перевод» таблицы редактирования значением из поля «Исходный».

Ленгпак/Из переводимого (F5) –  заполняет текущее поле «Перевод» таблицы редактирования значением из поля «Переводимый».

Ленгпак/Создать патч – создает файлы изменений для загрузки в телефон через FlashTool, ради чего собственно и создавалась программа. Перед созданием файлов программа спросит, из какого поля таблицы редактирования брать непереведенные строки. Файлы изменений создаются в каталоге с исходным фулфлешем.

Словарь/Импорт – импорт словаря из каких-то хитрых файлов (у меня не получилось!).

Библиотека/Загрузить/Сохранить - вызывает окно работы с библиотекой.

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

Как видим, программа удобная, я бы даже назвал её лучшей из всех вышеперечисленных программ, если бы не одно «Но»: необходимо вручную найти и вписать адреса языковых пакетов. У меня в процессе подготовки статьи на эту процедуру ушло почти два часа; представляю, сколько времени это займёт у человека, только пробующего свои силы в ремонте телефонов… Впрочем, автор программы предлагает вполне традиционный способ решения этой проблемы: в платной версии программы реализован поиск лэнгпаков в автоматическом режиме. К тому же, автор поддерживает в «живом» состоянии свой сайт, так что для желающих – найти и приобрести платную версию труда не составит.

Ну и несколько слов о программе «LangEditor». Чтобы особо вас не утомлять повторениями – это более бедный и полностью бесплатный клон «G$tarLpMan»-а. Интерфейс, алгоритм работы, структура… В общем, если вы разобрались с «G$tarLpMan»-ом, то  с «LangEditor»-ом проблем не будет. Для ясности скажу лишь, что адреса языковых пакетов там тоже нужно вводить вручную. Программа тоже сама не умеет читать/заливать фулл, но в комплекте «поставляется» словарь на… что-то около 7000 слов.

Ну и теперь – обещанный способ поиска начала и конца языкового пакета (пакетов). Предупреждаю: способ экстремальный и соскучиться не удастся! Без бутылки пива – и не разберёшься, но лучшего (из бесплатного) я пока не знаю.

К этому времени, надеюсь, все уже более или менее уяснили, что файл прошивки представляет из себя не что иное, как текстовый шестнадцатеричный файл; а следовательно, его вполне можно открыть любым Hex-редактором! Это факт номер раз. А факт номер два – многие современные Hex-редакторы могут без проблем показывать символы Юникода. Сопоставим эти два факта и получим… Правильно: получим ещё один способ ковыряния в языковом пакете телефона! Уже известная нам программа WinHex, начиная с версии 14.0 «научилась» понимать Unicode (а некоторые Hex-редакторы – и ещё раньше!). Ищем, скачиваем, устанавливаем. Я нашёл «WinHex 15.2 SR-10», вот об этой версии программы дальше речь и пойдёт. Запускаем программу, далее – кнопочка «Открыть», показываем путь к нашему файлу прошивки… Результатом всех вышеперечисленных действий должна стать вот такая картинка:

 

Первое, что нужно сделать – это переключить программу в режим Unicode. Вкладка «Options» - «Character Set» - «Unicode». Сделали? Теперь – самое интересное: медленно-медленно прокручиваем правый столбик и ищем первое вразумительное слово. А так как файл большой, а просматривать нужно ну очень внимательно, то процедура эта затянется надолго, готовьтесь! А как только найдётся первое слово (вначале было слово…) – запоминаем его адрес (левый столбик) и переходим к… правильно, к поиску последнего русского слова! Его адрес тоже неплохо было бы запомнить или записать. Если вы были ну очень внимательны, терпеливы и всё сделали правильно – то перед первым словом ленгпака в телефоне и сразу после последнего слова будет одна или несколько строчек, состоящих из одних нулей. А всё то, что находится между «нулевых» строк – это и есть языковой пакет прошивки телефона. Обрадовались? А зря: ленгпак-то нашёлся весь, целиком; а нам предстоит найти в нём отдельно русский, отдельно английский (для желающих – можно и китайский) языки. Вернее – не сами языки, а их адреса. Мне в этом повезло: языковые пакеты были чётко разбиты по группам: внимательный просмотр правого столбика и кружка кофе решили проблему. Если нужно – можно сохранить весь языковой пакет отдельно от прошивки. Выделяем блок, сохраняем его в отдельный файл. Всё! Блок можно отредактировать любой программой, а потом – поместить (вставить) на то же место, где он и был. Важно: вставлять отредактированный блок нужно точно на то место, где его и брали! Сместите файл хотя бы на одну строку – телефон не заработает! Ну и – не забывайте о том, что новые слова и фразы должны быть короче или равны старым, заменяемым. Чисто теоретически – прямо в WinHex можно и редактировать прошивку (с последующим сохранением результатов); но это – если в супер-спец и умеете думать шестнадцатеричными мыслями! J J

Немного упростить жизнь может, как я уже ранее говорил, программа «MTK Resource Edit». При выделении ячейки с словом (без разницы: русским или английским) программа покажет его адрес. Но слепо доверять этому, пожалуй, не стоит. Дело в том, что программа берёт реальный адрес слова, а перед ним (ил после) – может быть несколько пустых, «нулевых» ячеек в строке. Так что: может повезти, а может – и нет. Лучше всё же сделать так: посмотреть адрес в «MTK Resource Edit», затем открыть «WinHex» и перейти к указанной ячейке. Если адрес совпадает с началом строки, а предидущая строка заканчивается на несколько нулей – значит, это и есть начало лэнгпака. Если же адрес, предложенный «MTK Resource Edit» указывает на середину строки – то за начало языкового пакета нужно принимать адрес первого символа в строке (при условии, что предидущая строка оканчивается на нули). Конец языкового пакета тоже нужно проверить аналогичным образом.

Какая из перечисленных программ лучше – решать вам; мне показались наиболее удобными «G$tarLpMan» (даже несмотря на необходимость ручного поиска начала языкового пакета) и «MTK Resource Edit» (хоть она и на английском). Что понравится вам – не знаю. Выбирайте!

Ну и напоследок ради справедливости стоит упомянуть и наименее «спортивный», но, тем не менее, имеющий место быть способ русификации «китайцев». На некоторых сайтах, посвящённых ремонту телефонов ребята просто по доброте душевной или за чисто символическую плату соглашаются русифицировать ваш аппарат. Ну, разумеется, не сам аппарат, а его фулл. Вычитываете его любым флешером, договариваетесь, отправляете, забираете уже исправленный, заливаете обратно в аппарат. Всё! Быстро, но не интересно. Сразу внесу ясность: я к числу энтузиастов не отношусь! Пожалуйста, ко мне с подобными просьбами не обращайтесь! Мне на самом деле просто некогда этим заниматься!



Источник: kitayphone.ru


Обсудить на форуме

Комментарии

Добавить комментарий
    • bowtiesmilelaughingblushsmileyrelaxedsmirk
      heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
      winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
      worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
      expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
      disappointedconfoundedfearfulcold_sweatperseverecrysob
      joyastonishedscreamtired_faceangryragetriumph
      sleepyyummasksunglassesdizzy_faceimpsmiling_imp
      neutral_faceno_mouthinnocent

    Слитие прошивки с телефона Sciphone 4G

      Устанавливаем драйвера виртуального COM порта для кабеля USB.Prolific USB-to-Serial Comm Port (установлены на COM5)

    Инструкция по установке TWRP recovery и получении root прав на Cubot X9

      Установить драйвера. Ставить на выключенный телефон! Если их не установить, то прошивка попросту не начнётся т.к. SP Flash Tool не будет видеть телефон.

    Прошивка телефонов Nokia в Phoenix. Dead Mode

      В целом, прошивка мёртвого телефона не сильно отличается от обычной. Прошивка в режиме Dead Mode нужна только тогда, когда ваш телефон совсем не загружается.

    Прошивка Samsung S5230

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

    Прошивка телефонов Samsung через UFS

      После того как архив с прошивкой скачается, распаковываем его в папку с прошивками например D:\_Работа\_Ремонт\_Samsung\Firmwares\E210\

    Восстановление Samsung SCX-3400, SCX-3405 после неудачной прошивки

    Эту статью меня заставило написать большое количество устройств SCX-3400 и SCX-3405, попадающих ко мне в ремонт. Ситуация одна: владельцы устройств обращаются к "народным умельцам" с просьбой прошить МФУ модифицированной прошивкой.