Dlinyj (dlinyj) wrote,
Dlinyj
dlinyj

Category:

Программисткие орешки. Разминка для ума.

В предыдущем посте я уже говорил о фреймбуфере. По сути это представляет собой память, где уложены байты (или слова по 16 или 24 бита). Каждый байт (слово) кодирует пиксель, его цвет. В прошивке к этой книжке, есть файл raw.BootImg.img весом ровно 480000 байт, что соответствует разрешению книжки 800х600 (умножтке 800 на 600 и получите это число).

Теперь задачка. Вот вам файл raw.BootImg.img


Задача: сконвертировать его в формат нормальной картинки png или bmp (жепег тоже канает). В идеале каким-то интересным способом (на си, питоне или каком другом языке программирования). Хотя вариант со стандартными линуксовыми коммандами тоже канает.

Я попробовал вчера это сделать, путём гуглежа нашёл этот способ http://www.cnx-software.com/2010/07/18/how-to-do-a-framebuffer-screenshot/ (это подсказка). Но поскольу перла я не знаю, то так и не смог сделать чтобы читался не два байта, а один. В результате первых опытов получил такое изображение


Первый блин комом


В общем, выкладывайте сюда получившиеся картинки и код, которым вы это сделали. Победитель получит от меня какую-нибудь интересную железку. :).
Рядовому программисту задача с гуглом должна решится за 5, максимум 10 минут.

З.Ы. Особый интерес представляет обратное преобразование из картинки в такой битовый образ.
Tags: Дзен, Задача
Subscribe

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 13 comments