• Скачивание файлов платно! Купить Доступ
  • Внимание! Перед любыми операциями с китайскими телефонами не забудьте сделать BACKUP! И не говорите потом, что вас не предупреждали!

FLEI - MTK LangPack Editor/Importer/Exporter

  • Автор темы Автор темы FuntPND
  • Дата начала Дата начала
6/11/09
24
1
0
0
Предлагаю обсудить бесплатную программу FLEI - MTK LangPack Editor/Importer/Exporter для редактирования ленгпаков и импорта языков для MTK.
MTK LangPack Editor (Importer/Exporter) by Funt






 
Последнее редактирование модератором:
За ссылку на свой сайт или что то не пойму свое вам предупреждение!


НАЗВАНИЕ ДРУГОЕ НЕ СМОГЛИ БЫ ВЫБиРАТЬ.LPE принадлежит к инфинити боксу.

LPE не дай бог поддержка инфинити обеспечения пожалуются на LangPack Editor,то я вас вынужден буду блокировать.

Не вводите пользователей в заблуждение с инфинити LangPack Editor
 
Последнее редактирование:
Непонятно, зачем такие трудности с вводом смещений легпака для работы программы, если эту процедуру можно сделать программно. Основная хитрость в нахождении таблицы смещений каждой фразы. Если они найдены - то далее дело техники и программирование процедуры коррекции фраз не составляет труда. (Для 6223 и 6225, 6253 нашел, для 6235 пока нет.)
 
Прошу прощения, ошибочка, вечером добавлю новую версию с автопоиском языков в файле прошивки.
 
Последнее редактирование:
Решусь выложить за автора, да простят меня Все!)
 

Вложения

  • 1,8 МБ Просмотры: 133
После установки Java Runtime 6, вылазиет ошибка...

Вопрос к автору, ЧТО ЭТО? И как это устранить?)

attachment.php
 

Вложения

Прошу прощения, неправильно спаковал, вечером добавлю перепакованный файл. Или нужно вкинуть и прописать в путях Java библиотеку SWT.
 
Последнее редактирование:
Я в яве не силен, потому поясните куда чего вкидывать, и где прописывать?
 
FLEI 1.02

Исправил еще мелкие баги, перепаковал, должно работать.
 

Вложения

И может теперь какую-нибудь хоть "коротенькую" инструкцию по пользованию программы?!)

И ещё прошу добавить ну как минимум резидентный язык для Вашей страны, и разумеется резидентный для форума, т.е. украинский и русский)
 
Для работы с программой понадобится Java Runtime, как я понял, желательно последней версии.

Ниже прилагаю)
 

Вложения


Инструкцию на быструю руку пытался написать, она есть в первом сообщение для первой версии программы.
Если кратко, то:
Для редактирования языка:
1) нажать верхнюю кнопку Open (перед этим убедиться, что стоит галочка на автопоиск языков для BIN1 в меню Settings)
2) Если языки будут найдены выбрать в оффсет на таблицу опорного языка (Reference language) и на таблицу языка, который планируется редактировать (Language to export)
3) Нажать верхнюю кнопку Read и немного подождать
4) Если ошибок не будет, появятся фразы языков. Язык третьей колонки можно редактировать. Синим цветом обозначены фразы, которые используются более чем один раз в прошивке, их можно заменить для всех вхождений, или только для одного (можно настроить в настройках или по умолчанию каждый раз будет спрашивать как поступать). Эту колонку можно сортировать по "алфавиту/фраза используется один раз или несколько раз/по порядку", также можно сортировать оп порядку по колонке 1.
5) После окончания редактирования язык и таблицу оффсетов нужно сохранить через меню Save language -> Exported language. При этом язык и таблица оффсетов будут сохранены в 2 файла. Дальше их в ручную нужно например с помощью WinHex вставить по оффсету языка и смещений (эти оффсеты читаются и отображаются FLEI при чтении языка) в файл прошивки.
В следующей версии будет сохранение сразу в прошивку.

Для импорта языка:
1) пункты 1-3 теже что и для режима редактирования, но по верхним кнопкам выбирается прошивка с языком который нужно выдрать и всунутьв другую прошивку.
Те же 3 пункта, но для нижних кнопок, чтобы выбрать языки для прошивки в которую нужно всунуть новый язык (опорные языки должны совпадать для обоих прошивок).
2)Появится таблица с опорными языками из двух прошивок и результатом импорта, т.е. языком из первой прошивик подогнанным для второй прошивки.
Этот язык можно сортировать по тем же признакам что ив режиме редактирвоания, а также по наличию альтернативного перевода (фраза написана жирным) и по степени достоверности перевода (цвет фона фразы).

Дальше то же что и для режима редкатирования - редактирование и схохранение Save language -> Translation.

Пока вроде все.
При записи в прошивку, нужно следить, чтобы суммарный размер фраз был меньше чем исходный (Corrected lang должен быть зелененьким при первом редактировании).
Это все в планах, просто очень мало времени остается на программку. Сделаю нормальную работу с ресурсами, тогда можно будет легко добавлять любую локализацию.
 

Вложения

Последнее редактирование:
Все равно не работает. И яву обновил, и swt туда кинул, и перепакованый скачал...не работает
 

Вложения

Это уже другая ошибка, то ли в библиотеке SWT незнает о параметре minimumWidth, то ли он не поддерживается некоторыми ОС, какая у вас ОС?
Для последней версии не нужно ложить swt.jar в C:\Program Files\Java\jre6\lib\ext\, возможно вы положили библиотеку, которая не поддерживает поле minimumWidth. Попробуйте удалить swt.jar оттуда.
В след версии уберу использование этого поля.
 
Выкинул swt из папки явы - заработала, только на любом фуле выдает ошибку, что языки не найдены, а потом вот такую ошибку
 

Вложения

Важно, чтобы перед началом поиска был правильно введен scat offset того файла, в котором находятся языки, обычно это third_rom или secondary_rom, соответствующий оффсет и нужно вводить.
Можно открывать и фуллфлеш, а не мастерфулл, но все равно нужно знать scat offset.
Еще нашел баг, из-за которогов некоторых случаях не определяются языки. Ну и есть фуллы, в которых структура ленгпака другая, пока программа работает только с одним типом структуры ленгпака.

Какой файл из какого фулла пытаетесь открыть?
 
На данный момент этот ленгпак не поддерживается. Возможно в след версии будт поддерживаться.
P.S. Точнее не поддерживается автопоиск по этому ленгпаку.
Какой язык вам нужен?
Снимите галочку с автопоиска, введите scat 0x08000000, в Table offset введите 0xB12BC4 - это будет польский язык. Дальше отнимайте от этого числа 24 или добавляйте 24 и получите другие языки.
Т.е. таблицы других языков будут 0хB12BAC, 0хB12B94, 0хB12B7C и так далее, пока не получите ошибку считывания языка.
Русский - 0xB12C24, английский - 0xB12B34.

P.P.S. Кстати, похоже что польский и русский в этом ленгпаке не совсем правильные. Символ нуля в фразах отсутствует. Раньше не сталкивался с 6226, но обычно ленгпаки начинаются с символа "\0" - в этом тоже все языки кроме русского и польского начинаются с "\0". Но в 6235 на "\0" есть ссылка в таблице смещений, а в 6226 похоже ее нету (поэтому FLEI сообщает, что число фраз в телефоне не совпадает с числом фраз в таблице) и наверное все заточено под то, что таблица фраз начинается с фразы "\0". В русском и польском она упущена, соответсвенно, когда телефон захочет взять фразу "\0" он наткнется на фразу "Телефон".
Пробовал сохранять русский из этого ленгпака, FLEI сохраняет ленгпак с "\0".
 
Последнее редактирование:
FuntPND'у за редактор FLEI, как говорится, "респект и уважуха". А то я со своим I9+++ тыркался месяц с WinHex'ом и Notepad'ом и до конца вылизать фразы так и не получилось, трудно вручную перелопачивать таблицу смещений. С Вашим FLEI редактором всё идёт как в сказке.
 
Как для платной программы наверное маловато функций, да и плтить за такие программы будут только люди, которые постоянно занимаються китами, а они купят более мощную програмку где есть все в одном.
А эта программка скорее для любителей/энтузиастов, которые загорелись идеей подправить свой телефон. Им наверное нет смысла покупать мощные утилиты. Решил, что "donate" будет достаточно, если кому-то программа понравится и будет желание поблагодарить :)

P.S. Распознавание для H526_05C_PCB01_GPRS_MT6226_S01.P02_SP_SSD_NB0_1_2_0TMC1_26B уже реализовал, в следующей версии такие файлы будут распознаваться. Единственное, все равно нужно в ручную вводить scat offset, если есть мастер-фулл с разбитым на части ROM, то его легко найти в соответствующем файлике. Если же открывать H526_05C_PCB01_GPRS_MT6226_S01.P02_SP_SSD_NB0_1_2_0TMC1_26B такой как в этом теме, то тогда наверное прийдется перебирать scat смещения на угад. Я не очень много мастерфуллов пересмотрел, но пока мне попадались только 4 - F2000000, F4000000, 08000000, 00000000 и еще в одном языки были в secondary_rom там scat оффсет специфический.
Возможно добавлю в распознавание перебор самых распространенных scat смещений. Пока в планах нет идеи искать его в самом фулле, хотя наверное это не так и сложно...
В первую очередь доделаю сохранение отредактированного/импортированного языка прямо в фулл.

---------- Сообщение добавлено в 09:56 ---------- Предыдущее сообщение было от в 09:51 ----------

Спасибо. Мне как раз важны отзывы и замечания тех, кто попробовал программу в работе.

---------- Сообщение добавлено 21.12.2010 в 10:52 ---------- Предыдущее сообщение было от 20.12.2010 в 09:56 ----------

Поскольу возникают вопросы, хочу пояснить, что отображается в таблице опорного и редактируемого/импортируемого языков.
Номер фразы - это не порядковый номер фразы в массиве фраз. Это порядковый номер в массиве смещений. Соответственно в полях фраз выводится фраза, на которую идет ссылка в массиве смещений.
Фразы синим уветом - это одна фраза (т.е. встречается в массиве фраз только один раз), но на которую есть несколько ссылок в массиве смещений.
Т.е. эта одна и та же фраза используется в разных местах при работе телефона.
Соответственно при переводе текстовых ресурсов на другой язык может сложиться ситуация, когда в этих разных местах уже недостаточно выводить одну и ту же фразу (например Off можно перевести как выключить или выключено). Поэтому нужно в разных местах эту фразу перевести по разному (т.е. в части фраз оставить Выключить, в части Выключено, а еще в какой-то части Выкл.), что и можно сделать при редактировании таких (синих) фраз в FLEI.

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

Scat offset: 0x00000000
0xBA8018 - 1. En
0xBA8078 - 5. Ru

0xBA8030 - 2. Th
0xBA8048 - 3. Ar
0xBA8060 - 4. Fa
0xBA8090 - 6. Fr
0xBA80A8 - 7. Tr
0xBA80C0 - 8. Es
0xBA80D8 - 9. Pt
0xBA80F0 - 10. Ms/Id
0xBA8108 - 11. El
0xBA8000 - 12. Vi

В след версии этот фулл будет распознаваться, но скат прийдется все равно вводить в ручную пока.
 
FLEI 1.04
Исправил некоторые баги.
Добавил распознавание таких ленгпаков, как в прошивках из этой темы.
Добавил запись результатов редактирования/импорта в прошивку.

Просьба отписываться о багах.

P.S. ВСЕГДА делайте бек-ап, перед записью результата редактирования в прошивку.
 

Вложения

Последнее редактирование:
Выкладываю нову версию 1.05.

Исправил ошибку, которая проявлялась, когда фраза используемая несколько раз (синяя) меняется на фразу, которая уже есть в ленгпаке. При этом менялась только редактируемая фраза, остальные дубли при этом начинали указывать на другую фразу.
Добавил возможность не отбрасывать лишние двойные кавычки при чтении ленгпака, возможность убирать дублируюшиеся фразы при чтении языка или в процессе редактирования. А также убирать лишние кавычки в процессе редактирования. Это позволяет уменьшить размер ленгпака.
Ну и мелкие баги исправил.

Просьба отписаться тех, у кого не идет версия 64.
 

Вложения

Скажите пожалуйста а возможно ли в следующих версиях программы редактирование списка языков и списка предпочитаемого ввода ведь очень много ненужных языков в прошивке и при написании смс трудно искать где русский язык и хотелось бы смену БОЛЬШИХ и прописных букв сделать побыстрее а программка очень даже КЛАССНАЯ мне понравилась выйду на работу дам центик за нее спасибо!
 

Это можно будет сделать, когда будет реализован грамотный поиск языков, т.е. поиск не самой таблицы ленгпаков, а поиск таблицы с именами языков и ссылками на сами ленгпаки и виртуальные клавиатуры. Надеюсь в будущем дойдут до этого руки.
 
Здравствуйте, уважаемые форумчане!:icq21:
У меня есть предложение для тех, кто пользуется программой FuntPND - "FLEI".
Программа позволяет импортировать ленгпаки в любую другую прошивку которую способна открыть. А что если выложить в организованной для этого теме одну хорошую :icq20: прошивку и всем, кто пользуется программой, её ленгпак имортировать в свою прошивку, залить в свой телефон:icq13: и начать отлавливать оставшиеся несоответствия и ошибки, и так коллективно её подправлять, выкладывая информацию в виде: <номер строки> <английская фраза> <переведённая фраза> <пояснение, если оно будет>. Похоже что набор фраз не сильно отличается для разных прошивок. А каждый сам себе, если пожелает, подправит и симпортирует в свою прошивку, либо просто подправит в своей прошивке и, когда надо, зальёт. Так постепенно и доведём до совершенства перевод:icq05:. Только надо выработать перечень правил как исправлять, например, желательно чтобы фразы в менюшках были не только понятны но и без автопрокрутки и т.д. Ну и надо чтобы эта прошивка была доступна всем для скачивания.
Что Вы думаете по этому?:icq09:
 
Вряд ли у вас получится,программа сыроватая,нужно доделать до конца ,а потом уж говорить о доводки словарей и тд.тп.
 
Одной прошивки будет мало. Хотя они и похожи, но все таки для некоторых моделей ленгпаки достаточно разные.
А вот если сделать прошивок 5, для разных телефоно в одном стиле, тогда из них всегда можно скомбинировать ленгпак для других прошивок.
Но думаю этим никто заниматься не будет, кропотливая работа очень, а цель у каждого пользователя подправить только свою прошивку.

---------- Сообщение добавлено в 12:46 ---------- Предыдущее сообщение было от в 12:44 ----------

Просьба уточнить, в чем сырость и чего именно не хватает для реализации этой идеи, тогда легче будет исправить эти недостатки.
Мне кажется технически для реализации этой идеи все есть, вот только думаю не найдутся люди, которые возьмутся за ее реализацию.
 
Выскожу свои соображения. Программу посмотрел- конечно сыровата, но даже дело не в этом. Я написал для себя программы для коррекции и Spred... телефонов и для MTK -шных. Анализ многих прошивок показывает, что китайцы, в основном, не стандартизируют прошивки и сделать что-то универсальное очень трудоёмко и делать это не имеет смысла т.к. пока пишешь и корректируешь-появляются новые варианты и этот процесс не сойдётся, потому что китайцы всё равно впереди.. Работать приходится индивидуально с каждой прошивкой
 
Последнее редактирование:
Обновил версию до 1.06.
Изменения:
- исправил ошибку при поиске в случае, если ни одна строка таблицы фраз не выделена
- добавил возможность нечувствительного поиска
- убрал кнопку перестановки местами настроек BIN1 и BIN2
- добавил возможность изменения имени и кодов языка (имя которое отображается в меню, код для выбора языка), пока работает только если смещения найдены автопоиском языков.
 

Вложения


А давайте произведём разведку боем. Я выложу в новой теме прошивку с неплохим русским для
SciPhone I9+++ LN2501M_HW.XLN01M_4050YBQ_ALL_V1_0R--100722.BIN BUILD: GEMINI XLN01M_4050YBQ_ALL_V1.0R LN2501M_HW 2010/07/22
Я согласен, что не всем она сгодится. Здесь не расчёт на универсальность а только для того чтобы заполнить свою
нишу, и кто хочет - оценит перевод, если годится - симпортировать ленгпак в свою прошивку; получилось, - залить,
пользоваться и отписываться о корректировках перевода. Например, для моего другого SciPhone I9+++ с прошивкой
KINGSTAR25_GEMINI_PCB01_GPRS_MT6225_S00.MAUI_GEMIN I_W08_12.BIN BUILD: GEMINI MAUI.GEMINI.W08.12
KINGSTAR25_GEMINI_HW 2009/10/21 ленгпак на 99,9999...% подошёл, только лишь не хватило двух фраз.

Для реализации этого открыта
 
Последнее редактирование:
Назад
Верх Низ