Конференция iXBT.com » Домашний кинотеатр: ТV и проекторы »
Прошивки для DVD-плейеров (Страница 1)

Тема перемещена в форум: Домашний кинотеатр: устройства воспроизведения
Страницы: 1 2 3 4 5 6 41 42 43 · далее
версия для печати
-=CityAceE=-: Прошивки для DVD-плейеров
-=CityAceE=-
Junior Member

Ответов: 75/76
Откуда: Россия, Владивосток
Web-страница
92||
-=CityAceE=- написано 11.05.2004 09:19

Несколько обидно, что за рубежом целые посвящены тому, что люди обсуждают прошивки MT13x9. А у нас же в основном все сводится к тому, что обсуждают баги конкретных плейеров и ругают производителя, который никак на эти багги не реагирует. А между тем прошивки разный плейеров очень похожи между собой. Существуют модели, где производитель не планирует делать обновления. Например, я обладал замечательным с точки зрения железа плейером Arlink MP-560, но после того как я выяснил, что производитель не собирается менять ничего в прошивке, я был вынужден избавиться от него. Если бы я смог залить в плейер более свежий софт, то у меня не возникло бы и мысли избавиться от столь чудесного аппарата. На форуме мне встречались и владельцы каких-то эксклюзивных аппаратов, которые искали свежие прошивки.

Почти все плейеры, за исключением BBK, не поддерживают русские названия файлов. Но прошивка любого плейера состоит из блоков. Наверняка они взаимозаменяемы при небольшой доработке. На сегодня существует достаточно информации и инструментов для изучения этих прошивок. Общими усилиями можно было бы сделать небольшой конструктор, который позволял бы собирать одну общую идеальную прошивку под конкретный аппарат. То есть взять самое лучшее от разных аппаратов и делать прошивку под свой плейер. Например, самый последний софт от самого Медиатека 02.08 стоит в аппартах Xoro, бесспорно лучная и единственная локализация есть у BBK, существуют прошивки с поддержкой субтитров в AVI файлах и т.д. Остается эти блоки грамотно скрестить между собой, добавить поддержку родного пульта, кнопок и DVD привода из своей родной прошивки, а также при желании поменять заставку и, вуаля, вот она прошивка, которую все ждут. Прошивка – всего лишь программа, которую можно и нужно изменить! От производителя ждать милости не приходится.

Для экспериментов можно воспользоваться вот таким несложным устройством, которое не даст угробить ваш аппарат, а также вытащить родную прошивку, если таковой не лежит в Интернете.

Ведь российские программисты лучшие программисты в мире!

Ну, кто что скажет?

Digital
unregistered
Digital написано 11.05.2004 09:51

А что? Отлично руссифицированная прошивка от ББК есть, последний софт МТК в прошивке ксоровской есть. Кто сумеет? Кто рискнет? Ведь можно слепить свежую прошивку для ББК и руссифицированную прошивку для ксоро.

-=CityAceE=-
Junior Member

Ответов: 77/78
Откуда: Россия, Владивосток
Web-страница
92||
-=CityAceE=- написано 11.05.2004 09:54

Digital
Да надо не искать того гения, кто сможет это сделать, а всем вместе копаться, делиться находками и в итоге всем миром сделать полезное дело!

horilka
unregistered
horilka написано 11.05.2004 10:52

-=CityAceE=-
Хе, ну я спекртум на ассемблере программил и софтину всякую ломал, дизассемблируя ее можно покопаться и в бобике. вот со временем у меня конечно совсем туго. А вообще-то начать надо с собирания материалов по процессору. Спецификации, назначение регистров... Тогда дизассемблирование прошивки будет иметь смысл.
В принципе все реально. Если наберется достаточное количество шарящих в этих делах программеров, купивших бобик, то все получится.

Gennadyi
Member

Ответов: 54/54
Gennadyi написано 11.05.2004 11:47

цитата:
horilka:
-=CityAceE=-
Хе, ну я спекртум на ассемблере программил и софтину всякую ломал, дизассемблируя ее можно покопаться и в бобике. вот со временем у меня конечно совсем туго. А вообще-то начать надо с собирания материалов по процессору. Спецификации, назначение регистров... Тогда дизассемблирование прошивки будет иметь смысл.
В принципе все реально. Если наберется достаточное количество шарящих в этих делах программеров, купивших бобик, то все получится.
тут http://www.adl528.com/cyberhome/AD-L528---ALD5/cyber…es/datasheets.htm

Sergei82
unregistered
Sergei82 написано 11.05.2004 11:48

Народ.
Бросьте в меня прошивкой от ббк.
Очень любопытно.
sergei82(собака)mail.ee

P.s. Имеем опыт по замене картинок и переводе меню на другой язык в XORO 311/400 PRO

-=CityAceE=-
Junior Member

Ответов: 78/79
Откуда: Россия, Владивосток
Web-страница
92||
-=CityAceE=- написано 11.05.2004 11:56

horilka
Да назначение регистров не столь важно на начальном этапе - ARM, он и в Африке ARM. Для начала надо понять какой блок за что отвечает, где находятся таблицы, которые надо править и т.д. Например в трех отличающихся прошивках Xoro, блоки ARM_bootstrap.bin, ARM_comp_1.lzf и ARM_comp_2.lzf идентичны, не смотря на то, что блоки лежат по раздным адресам в разных прошивках. Ну, с boot-блоком все ясно. А вот с двумя другими не совсем. Что в них? Если рассуждать логически, то там и может быть вожделенный софт от MTK версии 02.08. Может быть поэтому он одинаков и при этом пожат?

А что касается программеров, то не обязательно они должны быть вледельцами именно BBK. Человек вообще может не иметь ничего кроме жалеания покопаться в софте. У меня, например, нет BBK...

Добавление от 11.05.2004 11:59:

Sergei82
Прошивка на BBK лежит здесь.

Evgeny555
unregistered
Evgeny555 написано 11.05.2004 12:24

http://groups.yahoo.com/group/MEDIATEK1389/messages
http://www.8883.mth.pl/
не на русском правда, может чем поможет.

[Исправлено: Evgeny555, 11.05.2004 12:55]

-=CityAceE=-
Junior Member

Ответов: 79/80
Откуда: Россия, Владивосток
Web-страница
92||
-=CityAceE=- написано 11.05.2004 13:35

Вот краткое описание архитектуры ARM.
А вот полная информация, включая описание инструкций.

Sergei82
unregistered
Sergei82 написано 11.05.2004 18:25

-=CityAceE=-

Рекоммендованное устройство ничем не поможет в этом случае. Прошивка находится в другом камне, а к нему доступа через интерфейс нет. Здесь только паяльник и программатор помогут.

-=CityAceE=-
Junior Member

Ответов: 80/81
Откуда: Россия, Владивосток
Web-страница
92||
-=CityAceE=- написано 12.05.2004 01:55

Sergei82
Тогда, на сколько я понимаю, это устройство служит для программирования Serial EEPROM. Но встает вопрос для чего нужна эта мелкая ПЗУ-шка? Уж не для того ли, чтобы заливать в нее какой-нибудь загрузчик, с помощью которого тем не менее можно реанимировать аппарат? Очень странно, что во всех аппартах выведен внешний разъем (в некоторых он просто не запаян) для ее программирования. Для чего лишние затраты?

Sergei82
unregistered
Sergei82 написано 12.05.2004 04:50

-=CityAceE=-
ИХМО. В ней хранятся настройки производителя (регион код) и выбранные нами в меню (языки, системы ТВ и т.д.).
Прошивка (вместе с загрущиком) пишется в AT49F1892AT (на XORO, в ВВК не знаю). Через предложенное устройство к ней не подобраться. Вот, может кто-то предложит красивое решение программирования этого камня без выпайки?
Кстати, на плате есть еще один не распаянный разъем (3.3V;RX;TX;GND), почему бы вокруг него не устроить танцы с бубном?

-=CityAceE=-
Junior Member

Ответов: 81/82
Откуда: Россия, Владивосток
Web-страница
92||
-=CityAceE=- написано 12.05.2004 05:19

Sergei82
Если там хранятся только такие данные, которые легко можно изменить из меню, то для чего распаивают внешний разъем?
А что касается разъема (3.3V;RX;TX;GND), то мне кажется это и есть тот разъем, которым Serial EEPROM программируется. Или на Xoro есть еще один разъем?

Добавление от 12.05.2004 06:34:

В общем, в результате поисков в Инете удалось выяснить, что народ как минимум считывает свои прошивки с помощью некоей утилиты под названием MTKTOOL, которую мне отыскать не удалось. Народ обсуждает это дело не на английском языке, так что понять что к чему не совсем получается. Но надежда на то, что обойтись без паяльника и программатора все таки можно, пока теплится...

ReX Madgere
unregistered
ReX Madgere написано 12.05.2004 07:58

Я нашел только один mtktool предназначеный для прошивки (и бэкапа уже существующей) драйвов основаных на mtk чипах.
http://tdb.rpc1.org/firmware/GCC4521B.ZIP

Может есть еще какие-то версии mtktool.

-=CityAceE=-
Junior Member

Ответов: 82/84
Откуда: Россия, Владивосток
Web-страница
92||
-=CityAceE=- написано 12.05.2004 09:06

ReX Madgere
Нет, это не то. Его я тоже находил вместе с MTK (MicroController Tool Kit) by Dallas Semiconductor. Вот что об нужной программе говорит один спец на форуме Yahoo:
"Firmware was dumped via serial link with MTKTOOL (search in google). As I said, don't ask for more info because I won't answer (I can't). Sorry.
You need MTKTOOL from Mediatek. This program only is sent to manufacturers and S.A.T it's not released for users."

Alex2jf
unregistered
Alex2jf написано 12.05.2004 15:49

Дарова, бойцы!
Проскочила тут имхо весьма полезная ссылка, в которой, кроме всего прочего, рассказывается про устройство медиатековских прошивок.. а в разделе download есть софтина для их анализа, которая еще и умеет вытаскивать обнаруженные блоки в виде отдельных файлов.
Кстати, на аналог этогй полезной ссылки (тока на итальянском) ссылались коллеги с того самого форума. Кому интересно тут итальянский вариант
Я попробовал прогнать c помошью mttinfo.exe вышеупомянутую прошивку от ббк и последнюю на сегодня прошивку от Xoro 311 pro. Заставки и окошко "эксплорера" оченно похожи на настоящие. Про файлы .bin.1.osd и .bin.2.osd говорят, что в первом лежат фонты с картинками, а во втором меню и строки (про строки так и есть - видно любым редактором).

Ну, на сегодня, вроде, все.

FHR
Member

Ответов: 170/201
Web-страница
FHR написано 12.05.2004 18:27

Супер! Супер тема!

нужно решение по ранимации в домашних условиях - программатор
и тогда можно клуб создавать и продавать прошивки и программатор

Кренг
20 лет на конференции iXBT
Member


Ответов: 1316/6031
Кренг написано 12.05.2004 20:29

нужно решение по ранимации в домашних условиях - программатор

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

Gridd
unregistered
Gridd написано 13.05.2004 04:15

Поглядел я немного прошивку для 965, которая ходит по Интернету.

Интересно. Благодаря польскому сайту удалось хотя бы примерно идентифицировать что и где находится.
В чем-то она похожа на ELTA, но есть некоторые отличия.

собственно загрузкой занимается 8032. его код 4 страницы по 64К каждая. Переключается со страницы на страницу через ссылки.

Судя по всему 8032 выполняет начальное тестирование оборудования после включения питания.
На четвертой странице кода есть код для ARM7, скорее всего это стартовая процедура для него.

До этого места, правда, еще не добрался , но скорее всего этот код размещается в двухпортовой памяти, которая видится обоим процессорам, после подготовительных процедур 8032 мапит память для ARM7 и запускает его, а тот уже работает самостоятельно.

В прошивке есть интересная строчка 'MT1369 RESETDISK UPGRADE', что наводит на мысли о том что семейство MTK13x9 может быть сильно совместимо между собой и отличаться только отдельными интегрированными компонентами (типом DSP, наличием MPEG2/MPEG4 декодера, DAC и т.д.), т.е. 8032 и ARM7 как управляющие стоят и в 1379 и 1369, что означает, что достаточно разобраться с одной прошивкой, чтобы понимать на 90% все остальные.

Кстати, количество интегрированных узлов в МТК1389 впечатляет. Все заявления бренданутых о том что МТК
- г... отметаются как голословные.

Инструменты. Есть WinARM - дизассембер для ARM7. В интернете нашел к ARM (Architecture 4) SDK с документацией, но он без поддержки Thumb, так что если ARM7 интенсивно использует Thumb, то будет бесполезен. Знаю, что ARM поддерживает IDA Pro, но надо искать желательно свежую версию с лекарством от жадности. Если у кого есть - шепните. При помощи IDA процесс идет куда как быстрее и проще.

Код 8032 дизассемблируется дизассемблером D52, он заточен под 8052, но систему команд предшественника понимает (www.8052.com). Дизассемблер сделан по типу Sourcer, но если будете работать с ним имейте в виду,
что он не понимает .BIN больше чем 64К.

Основная задача - понять, как можно без программатора реанимировать плеер после кривой прошивки.
Выскажу следующее предположение: Почти наверняка у 8032 встроенном в МТК1389 есть ROM,
где находится стартовый код, инициирующий процесс загрузки даже если загруженная прошивка - кривая.
Вопрос только в том как до него добраться.

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

Я для себя хотел бы выяснить наличие недокументированных сервисных кодов, которые возможно являются полезными.

Блочность прошивки дает возможность почти безболезненной русификации плееров на основе MTK,
для этого даже ее исходный код не нужен. Для этого нужно детальное знание структуры MTKOSD.
Ну и не забыть контрольную сумму пересчитать. Алгоритм расчета можно взять из MTTINFO

Кстати, если для ELTA прошивки пишет CORETEK, то BBK видимо ваяет сам, потому что в этом месте у BBK - пусто.

Ни у кого, кстати нет возможности дернуть прошивку для 931S?. Ну сильно интересно.

Буду разбираться дальше, потому что задача показалась крайне интересной,
опять же молодость вспомнить. Драйвер в свое время ваял для сетевой карты, без доков, без исходников,
без спеков на железо, (без Интернета!!!!) имея лишь ворох .OBJ модулей от новелл 2.15 и огромное желание. А ведь получилось

-=CityAceE=-
Junior Member

Ответов: 83/85
Откуда: Россия, Владивосток
Web-страница
92||
-=CityAceE=- написано 13.05.2004 04:25

Итак, вот софт который будет полезен для копателей прошивок.

1.ROM Structure - это просто информация о стуктуре прошивок от MTK. Здесь говорится о том, какой блок где лежит и за что отвечает.
2.MttInfo.1.0.0.2 - с помощью этой программы можно посмотреть информацию о конкретной прошивке, ее версию, размеры и положение блоков и т.д.
3.mtksplit - с помощью этой утилиты можно легко и просто разбить прошивку на ее составляющие блоки, однако почему-то как минимум один блок на выходе отсутствует - это картинка меню.
4.MTKViewer0.1b - с помощью этой программы можно посмотреть картинки и шрифты из прошивки.
5.mtktools-20030906 - это три полезных программы, позволяющие разжать пожатые блоки прошивки, вытащить текстовые сообщения меню (кроме русских) и что-то еще.

Добавление от 13.05.2004 05:01:

Gridd
Код 8032 дизассемблируется дизассемблером D52
Я пытался дизасемблировать все это дело IDA Pro и далеко не самой новой версией.

Ну и не забыть контрольную сумму пересчитать. Алгоритм расчета можно взять из MTTINFO
Я просто брал MTTINFO и натравливал на пропатченную прошивку, он мне писал, что вычислена такая-то сумма, а реально прописана другая. Вот я просто брал и HEX-editor'ом эту сумму вписывал в прошивку

Кстати, если для ELTA прошивки пишет CORETEK, то BBK видимо ваяет сам, потому что в этом месте у BBK - пусто.
Первое поле (CORETEK), это метка диска, на которую ориентируется прошивальщик, второе поле (BBK965S.BIN) - это имя файла, которое ищется на диске. XORO предлагает прошивку из двух файлов, какой файл прописан в прошивке, тот плейер и подберет с диска.

Драйвер в свое время ваял для сетевой карты, без доков, без исходников, без спеков на железо, (без Интернета!!!!) имея лишь ворох .OBJ модулей от новелл 2.15 и огромное желание. А ведь получилось
Вот и я говорю, что в этом деле главное желание!

Добавление от 13.05.2004 07:16:

Когда плейер прошивают, то он вначале загружает прошивку в ОЗУ, потом проверяет контрольную сумму и если она совпадает с рассчитанной, то начинается процесс прошивки. Если бы заставить плейер при каком-нибудь условии не прошивать загруженный файл, а передать ему управление, то на плейере можно было бы запускать свой софт, в частность можно было поэксперементировать не прошивая плейер...

[Исправлено: -=CityAceE=-, 13.05.2004 07:21]

Gridd
unregistered
Gridd написано 13.05.2004 08:12

-=CityAceE=-:

Когда плейер прошивают, то он вначале загружает прошивку в ОЗУ, потом проверяет контрольную сумму и если она совпадает с рассчитанной, то начинается процесс прошивки.

Совершенно верно.

Если бы заставить плейер при каком-нибудь условии не прошивать загруженный файл, а передать ему управление, то на плейере можно было бы запускать свой софт, в частность можно было поэксперементировать не прошивая плейер...

Код отвечающий за процесс загрузки находится в самой прошивке (строка 'Upgrade File DETECTED' и проч.). Это означает, что теоретически процедуру загрузки можно изменить так, чтобы: загрузчик не прописывал прошивку в EEPROM, а размещал блоки данных и кода по своим местам и передавал управление на загруженную прошивку без холодного рестарта, в случае необходимости
инициализируя периферийное оборудование (CD привод и проч.).

Основная проблема в том как загрузить ее в память поверх старой?

Это можно решить двумя способами:

1. Прошить EEPROM модифицированным загрузчиком, который умеет делать то что перечислено выше.
2. Понять как BBK предполагает оживлять плеер в случае кривой прошивки. Тогда вопрос модификации загрузчика отпадает, но встает менее критичный, но все же важный вопрос количества циклов повторной перезаписи EEPROM. Но его можно наверняка посмотреть в спецификации на чип флеш-памяти. И если он достаточно большой (хотя бы 1000), то для экспериментов более чем хватит.
Если флешить раз в три дня, то хватит на 2.5 года

Кстати, страниц кода 8032 в прошивке 967S.BIN 5, а не 4. Я немного ошибся. Но сделаны они по тому же принципу.

ReX Madgere
unregistered
ReX Madgere написано 13.05.2004 11:35

Вот более новая версия Mttinfo
http://coldfire.online.fr/1389bin/MttInfo.1.0.1.0.zip
http://coldfire.online.fr/1389bin/MttInfo.src.1.0.1.0.zip и исходняки к ней.

У этой версии есть два ключа - -S и -C первый демуксит секции mpeg, osd, mp3 а второй сам просчитывает новую контрольную сумму и вписывает в прошивку

Evgeny555
unregistered
Evgeny555 написано 13.05.2004 11:47

2All Ищем схему девайса для реанимации возможных трупов бобиков!!!

Alex2jf
unregistered
Alex2jf написано 13.05.2004 12:32

-=CityAceE=-
Есть предложение: может имеет смысл выложить все файлы отсюда к тебе на zxpilot.vladivostok.ru? Имхо людям проще будет - не надо никуда подписываться, etc.. Кстати, там же лежит более новая версия (нумер 3) "mtksplit.exe"

Gridd
цитата:
Код отвечающий за процесс загрузки находится в самой прошивке (строка 'Upgrade File DETECTED' и проч.).
Я бы не стал так категорично говорить.. Строка эта лежит в блоке строковых (языкозависимых) данных, и кода, отвечающего за процесс загрузки там быть не должно. ИМХО.

All
Проверил одну свою догадку по поводу "хитрых" последовательностей клавиш.
Небольшое вступление: для того, чтобы узнать версию прошивки в Xoro надо нажать setup-8-8-8-4-5-0-5, в бобике последовательность такая: setup-1-3-7-9. Натравив на прошивки mtksplit получаем 18 файлов, в которых будем искать соотв. hex последовательности (08-08-08-04-05-00-05 для xoro и 01-03-07-09 для бобика). Такие последовательности есть в *_8032_2.bin
можно попробовать сделать некоторые выводы

[Исправлено: Alex2jf, 13.05.2004 14:16]

-=CityAceE=-
Junior Member

Ответов: 86/88
Откуда: Россия, Владивосток
Web-страница
92||
-=CityAceE=- написано 13.05.2004 14:01

Alex2jf
Сделал копию страницы, но ссылки на файлы поменял http://www.zxpilot.vladivostok.ru/temp/mt13x9.html

Добавление от 13.05.2004 14:22:

Для чистого эксперемента надо отыскать прошивки для разных плейеров с одинаковой версией софта от MTK. После чего сравнить блоки и выяснить, что где отличается. Я пока не могу найти такую пару...

Alex2jf
unregistered
Alex2jf написано 13.05.2004 15:26

Есть две одинаковые прошивки с разными языками, дык в них блок для 8032 отличается... хотя казалось бы, языковые вещи только в MTKOSD должны быть.
Отличаются они, правда, не сильно - в 3-х байтах различие на единицу, но непонятно.

Страницы: 1 2 3 4 5 6 41 42 43 · далее

Тема перемещена в форум: Домашний кинотеатр: устройства воспроизведения

Поиск · Новая тема
версия для печати