<< Назад

Humfont.

Программа для редактирования шрифтов в прошивках HUMAX.


  Программа предназначена для редактирования шрифтов в прошивках спутниковых ресиверов HUMAX с целью придания оригинального внешнего вида меню.
  Редактирование осуществляется путем изменения знакогенератора, размещенного в файле прошивки. Знакогенератор располагается в виде сегментов памяти по адресам, которые надо определить способом, описанным ниже. Каждый сегмент содержит набор символов одного размера. В меню HUMAX могут быть символы высотой 19, 20, 24 или 34 пикселя и шириной 8, 16, 24 или 32 пикселя. Ширину символа можно также измерять в блоках шириной по восемь пикселей (соответственно, ширина бывает 1, 2, 3 и 4 блока). Размещение символа в памяти по адресам показано на рис.1 (за исключением шрифтов субтитров - см. пояснения ниже). Блоки символа располагаются в памяти один за другим.


Рис.1.


Рекомендации к применению.

  Производитель ресиверов поставляет обновленные версии firmware в т.н. hdf-файлах, котроые представляют собой сжатые (для увеличения скорости загрузки) образы прошивок. Так как редактор работает с несжатыми файлами, для распаковки hdf-файлов необходимо использовать программу hdftool.   В качестве примера рассмотрим редактирование прошивки ресивера Humax 5300 (system ID 0017.0000, версия сентябрь 2001 г).
  Для начала распакуем hdf:

  hdftool.exe u HVC10300-00.HDF

  Получим 4 файла:
hdfbin-0-000000.raw - 39Kб - загрузчик
hdfbin-1-000000.raw - 1290Kб - программный код
hdfbin-3-006000.raw - 33Kб - программный код
hdfbin-3-010000.raw - 551Kб - знакогенератор(!), ресурсы
hvc103~1.nfo - информация о прошивке

  Запускаем программу Humfont (см. рис.2).


Рис.2. Окно программы Humfont.


  Путем изучения raw файлов было обнаружено, что знакогенератор располагается в файле hdfbin-3-010000.raw по адресу 0x00060f00 (уже установлен в программе по умолчанию). Открываем файл hdfbin-3-010000.raw. Если по адресу 0x00060f00 знакогенератора нет, то его можно найти кнопками "+" и " -", котрые перемещают окно Memory View на сегмент вперед или назад; либо ввести адрес в шестнадцатиричном виде и нажать кнопку Set.   После того, как необходимый сегмент найден, надо подобрать правильную высоту символа (Height). При этом изображения символов в окне Memory View располагаются напротив друг друга, без вертикального смещения. Далее надо щелкнуть мышью в окне Memory View по первому блоку символа, с которого вы хотите начать редактирование. В окне редактирования появится увеличенное изображение символа. Далее следует подобрать ширину символа (Width). Кнопками "+1" и " -1" необходимо точно подобрать начальный адрес символа, так, чтобы в окне редактирования не было соседних символов сверху и снизу. Далее производится редактирование символа так, как это принято в графических редакторах (щелчками мыши, устанавливая и снимая пикселы). При перемешении указателя поверх окна редактирования, в нижней части окна программы выводится адрес редактируемого байта и номер бита. Перемещаться на следующий/предыдущий символ удобно кнопками "<<", "<", ">" и ">>". Все вносимые изменения записываются в файл непосредстенно во время редактирования (т.е последующего сохранения файла не потребуется); внешний вид символа можно видеть11ff"> ABORT "BUSY" ABORT "NO CARRIER" "" "AT" "OK" "AT& на картинке над окном редактирования. При редактировании следует КАТЕГОРИЧЕСКИ избегать изменения памяти вне знакогенератора, это может привести к неработоспособности прошивки, хотя, скорее всего, не приведет к поломке ресивера (потребуется лишь повторная загрузка firmware) с компьютера.
  После окончания редактирования закрываем программу.
  Запаковываем raw-файлы обратно в hdf:

  hdftool.exe c -id1=0017.0000 -id2=0017.0000 newhdf.hdf

  Здесь следует отметить, что при такой конфигурации команды в hdf файл не будет включен загрузчик (loader), т.е загрузчик в ресивере не будет перезаписан. Это сделано в целях безопасности, так что вы всегда сможете прошить ресивер оригинальным hdf-файлом. В противном случае, если загрузчик был поврежден, перепрошивка в домашних условиях возможна лишь с помощью второго ресивера. Загрузчик интересен тем, что от также содержит шрифт 8x16 - откройте его в редакторе. Этим шрифтом при включении ресивера выводится сообщение " Loader ver x.xx" и его тоже можно было бы изменить. Однако делать это не рекомендуется по причине, изложенной выше.
  С помощью программы WDNOAK+ или Formula прошиваем ресивер файлом newhdf.hdf. Включаем ресивер и смотрим на результаты своего труда (рис.4).


Рис.3. Прошивка производителя.



Рис.4. Отредактированная прошивка.


  С помощью этой программы можно, например, легко руссифицировать субтитры для любых ресиверов HUMAX или придать меню ресивера оригинальный вид.

Некоторые пояснения по поводу шрифтов субтитров.

  Шрифт субтитров размещается в памяти не так, как прочие шрифты. Символ 16х18 занимает блок в 36 байт, причем, четные байты этого блока образуют левую половину символа, нечетные - правую. Humfont 1.2 поддерживает редактирование таких шрифтов, нужно лишь поставить CheckBox " SubTitle " внизу окна программы. Адрес первого символа субтитров в прошивке HUMAX 5300 System ID 0017.0000. - 0x0005D3C8. В окне Memory View символы выглядят как вытянутые по вертикали "чересстрочные" символы.
  С помощью редактора v1.3 можно легко руссифицировать субтитры для любой прошивки Humax OAK-серии (5300, 5400, FOX). Необходимо только найти адрес первого символа шрифта субтитров - "пробела" и загрузить по этому адресу (кнопка Merge) файл с русскими шрифтами, который прилагается к редактору v1.3.


  Если кто-то сделает свои шрифты и сочтет необходимым предоставить свой труд общественности, автор с удовольствием разместит скриншоты/hdf-файлы на этой странице.

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



Humfont Download.
humfont-1.2.zip   Есть возможность редактирования шрифта субтитров.
humfont-1.3.zip   Добавлена возможность сохранения/загрузки шрифтов в отдельный файл с целью переноса шрифтов из одной прошивки в другую. Приложен файл с русскими субтитрами для вставки в прошивку.
HDF Download.
5300rus.zip   HUMAX 5300 System ID 0017.0000. Добавлен русский шрифт для субтитров Sirius TV1000 Baltic.
qva10104-06-russub.zip   Прошивка для HUMAX VA-FOX (26 mar 2001, ID 0032.0600) с русским шрифтом субтитров.


Спасибо всем приславшим прошивки!


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


HUMAX - торговая марка Humax Digital.

@tty