Тема: Замена загрузочного логотипа
Оригинал поста
Наконец-то доделал Черепашьими шагами, по капельке, но доделал GUI для замены загрузочного логотипа.
Да - много времени прошло и возможно уже поздно, но мне в опыт, а кому-то на радостьТеперь нет необходимости мудрить с расчетами и терминалом. Все что теперь требуется для замены логотипов:
[size=3]1. Выбор цвета фона[/size]
Есть возможность выбора цвета 4-мя способами (на всякий случай ):
а) написать 24-битный цвет в 10-чном формате (например: [180] [180] [180])
б) написать 24-битный цвет в 16-чном формате (например: 0xAABBCC)
в) написать 16-битный цвет в 16-чном формате (например: 0xABCD)
г) воспользоваться стандартным ColorDialog'ом из Qt[size=3]2. Выбрать изображения[/size]
Изображения должны быть в формате BMP и иметь 16- или 24-битную глубину цвета.
Если выбранное изображение не соответствует данному условию, то приложение сразу же даст об этом знать[size=3]3. Предпросмотр[/size]
Есть возможность увидеть как будет выглядеть экран загрузки. Для этого необходимо нажать кнопку "Preview".[size=4]4. Применение изменений[/size]
Для применения изменений необходимо нажать "Apply". Откроется окно с полем лога.
Перед тем как пропатчить загрузчик необходимо убедиться в том, что изображения могут быть удачно записаны (ограничения на размер сжатого изображения никуда не делись). Чтобы это сделать, нужно нажать кнопку "Check", после чего в лог будет выведена информация о выбранных элементах для патчинга. В случае ошибки приложение не даст пропатчить загрузчик, пока не будут устранены причины ошибки.
Если все проверки были удачно пройдены, то можно залить все изменения в загрузчик, нажав "Patch".Далее дожидаемся сообщения о том, что все операции были успешно закончены, и выдыхаем
Кстати, нет необходимости патчить сразу все. Можно изменить только фон и\или одну иконку, для этого просто ставим или убираем галочки в левом верхнем углу.
p.s. Иконка немного убога, но зато есть
UPD: вернул пакет назад.И все таки в загрузчике что то есть, что может некорректно рисовать картинки некоторых размеров. Особой закономерности не выявил.
На всякий случай добавил ограничение минимального размера (высота/ширина) изображения: если высота или ширина изображение меньше стандартной, то приложение не даст его выбрать.
Данное ограничение отключаемо для любителей экспериментовТекущая версия пакета: 1.0.1
Небольшие изменения:
- убрано дергание GUI при переходе между меню
- состояние кнопок слева изменено с активна/неактивна на нажата/не нажата
- самое важное: кнопка отключения ограничения размеров изображенияp.s.: прикладываю файл с размерами логотипа, которые я успел попробовать с результатами. Возможно кто то найдет закономерность Также осмелюсь попросить 'экспериментаторов' писать в теме размеры успешно прошитых изображений, если высота или ширина этих изображений была меньше стандартной.
Спасибо.
n900-bootlogo-changer_1_0_1_armel.deb
Скрипт лежит здесь.
Использование:
logo.run [ -h ] [ -l image ] [ -r image ] [ -u image ] [ -c color ] [ -b color ]
-h: помощь.
-l: установить логотип.
-r: установить иконку режима R&D.
-u: установить иконку USB.
Все изображения должны быть 16-битным BMP.
-c: установить фоновый цвет.
Цвет должен быть в 16-битном формате фреймбуфера.
Он состоит из 2-х байт: RRRR RGGG GGGB BBBB, где RRRRR, GGGGGG, и BBBBB — значения красного, зелёного и синего цветов.
Эти два байта нужно поменять из-за обратного порядка байтов (little-endian).
Так, например, красный цвет: 1111100000000000 = 00F8.
-b: установить фоновый цвет для иконки USB.
Он ограничен одним байтом. Так, если вы укажете AB, цвет будет ABAB.
Если есть желание сделать всё вручную, см. оригинальную инструкцию от raandoom.