Новая версия прошивки распространяется в файле, который называется примерно так: "
HDX BD1 Firmware 4.20.zip"
Немного поразбираемся с устройством этого файла.
Что там внутри zip-а?
akhromov@x200s:~/stuff/bd/firmware/4.20$ unzip "HDX BD1 Firmware 4.20.zip"
Archive: HDX BD1 Firmware 4.20.zip
creating: upgrade/
inflating: upgrade/upgrade_data.img
inflating: upgrade/imaterial.romfs
inflating: upgrade/zbimage-linux-xload_safemode.dat
inflating: upgrade/zbimage-yamon-xload
inflating: upgrade/phyblock0-0x20000padded.957-E1.dat
inflating: upgrade/zbimage-linux-xload.dat
inflating: upgrade/xmaterial.romfs
inflating: upgrade/zbimage-linux-xload
inflating: upgrade/sigma.bin
inflating: upgrade/zbimage-linux-xload_safemode
inflating: upgrade/phyblock0-0x20000padded.957-E1
akhromov@x200s:~/stuff/bd/firmware/4.20$ cd upgrade
akhromov@x200s:~/stuff/bd/firmware/4.20/upgrade$ ls -la
total 197852
drwxrwxrwx 2 akhromov akhromov 4096 2010-08-13 13:11 .
drwxr-xr-x 3 akhromov akhromov 4096 2010-10-07 12:54 ..
-rwxrwxrwx 1 akhromov akhromov 3837952 2010-08-11 13:36 imaterial.romfs
-rwxrwxrwx 1 akhromov akhromov 131072 2010-08-11 13:36 phyblock0-0x20000padded.957-E1
-rwxrwxrwx 1 akhromov akhromov 131348 2010-08-11 13:36 phyblock0-0x20000padded.957-E1.dat
-rwxrwxrwx 1 akhromov akhromov 8388608 2010-08-11 13:37 sigma.bin
-rwxrwxrwx 1 akhromov akhromov 162529280 2010-08-11 13:37 upgrade_data.img
-rwxrwxrwx 1 akhromov akhromov 138240 2010-08-11 13:37 xmaterial.romfs
-rwxrwxrwx 1 akhromov akhromov 7697408 2010-08-11 13:37 zbimage-linux-xload
-rwxrwxrwx 1 akhromov akhromov 7697684 2010-08-11 13:37 zbimage-linux-xload.dat
-rwxrwxrwx 1 akhromov akhromov 5911552 2010-08-11 13:37 zbimage-linux-xload_safemode
-rwxrwxrwx 1 akhromov akhromov 5911828 2010-08-11 13:37 zbimage-linux-xload_safemode.dat
-rwxrwxrwx 1 akhromov akhromov 194560 2010-08-11 13:37 zbimage-yamon-xload
akhromov@x200s:~/stuff/bd/firmware/4.20/upgrade$
По мере надобности разберемся со всем, но сейчас нам наиболее интересен файл upgrade_data.img. В нем как раз и находится новая версия прошивки HDX BD-1. Он представляет собой RAW архив обычных файлов.
Ну а раз так, то:
$ sudo mount -o loop upgrade_data.img img
Смотрим, что внутри:
akhromov@x200s:~/tmp/img$ ls -la
total 6002
drwxr-xr-x 8 root root 2048 2010-08-11 13:35 .
drwxr-xr-x 3 akhromov akhromov 4096 2010-10-07 15:02 ..
drwxrwxrwx. 4 root root 2048 2010-08-11 13:35 bdj
-rwxrwxrwx. 1 root root 5821617 2010-08-11 13:35 bin.dat
-rwxrwxrwx. 1 root root 144 2010-08-11 13:35 bootscript
-rwxrwxrwx. 1 root root 2225 2010-08-11 13:35 check_dsp.bash
-rwxrwxrwx. 1 root root 359 2010-08-11 13:35 fw_reload_t3.bash
-rwxrwxrwx. 1 root root 157084 2010-08-11 13:35 imaterial.romfs_upgrade.tar
drwxrwxrwx. 4 root root 6144 2010-08-11 13:35 lib
drwxrwxrwx 2 root root 16384 2010-08-11 13:35 lost+found
-rwxrwxrwx. 1 root root 338 2010-08-11 13:35 mbox_version.sh
drwxrwxrwx. 10 root root 2048 2010-08-11 13:35 netapp
drwxrwxrwx. 5 root root 2048 2010-08-11 13:35 qt
-rwxrwxrwx. 1 root root 3273 2010-08-11 13:35 run.env
-rwxrwxrwx. 1 root root 3128 2010-08-11 13:35 run_mbox
drwxrwxrwx. 2 root root 2048 2010-08-11 13:35 sample_config
-rwxrwxrwx. 1 root root 204 2010-08-11 13:35 setting.cfg
-rwxrwxrwx. 1 root root 204 2010-08-11 13:35 setting.cfg_org
-rwxrwxrwx. 1 root root 2832 2010-08-11 13:35 sigma.bin.tar
-rwxrwxrwx. 1 root root 1122 2010-08-11 13:35 unload_imat.bash
-rwxrwxrwx. 1 root root 25763 2010-08-11 13:35 unzipuppkg
-rwxrwxrwx. 1 root root 1411 2010-08-11 13:35 upgrade.sh
-rwxrwxrwx. 1 root root 317 2010-08-11 13:35 which_chip.bash
-rwxrwxrwx. 1 root root 2310 2010-08-11 13:35 xlu_load_t3.bash
-rwxrwxrwx. 1 root root 1519 2010-08-11 13:35 xlu_unload_t3.bash
akhromov@x200s:~/tmp/img$
Смотрим в каком формате записан .img:
akhromov@x200s:~/tmp$ mount
. . .
. . .
. . .
/dev/loop0 on /home/akhromov/tmp/img type ext2 (rw)
Поскольку файловая система смонтирована на чтение и запись, мы можем свободно редактировать и изменять файлы.
Осталось только размаунтить устройство:
$ sudo umount /home/akhromov/tmp/img
Все изменения автоматически сохраняются в файле
upgrade_data.img
Вуаля! А не какая не "Виола".
Что это нам дает?
Мы можем по взрослому делать кастомные прошивки для нашего HDX BD-1!
PS. Планирую открыть проект создания репозитория для HDX BD-1 аналогичного, как для Asus WL500gP.
В принципе все понятно. Компилятор есть, image мы править можем.
Что думаете? Есть желание присоединиться?
PPS. Хочу побладарить участников конференции
HD плеер HDX BD-1 с iXBT.com, благодаря которым многое стало ясным.
Полезные ссылки: