Вот, что удалось узнать по формату .spr:
- Размер файла кратен 128 байт. Неиспользуемые байты в конце заполнены 0.
- Сохранены 4 битовые плоскости от Вектор 06ц. Распаковываются в 32 КБ единым куском как есть,
без разбивки на битовые плоскости, столбцы и строки.
- Вперемешку используется сжатие RLE и куски несжатых данных.
- В файле по смещению 0 хранится 16 байтовая палитра вектора.
- Байты 16 и 17 непонятного назначения, во всех просмотренных файлах .spr равны 0.
- По смещению 18 начинается массив самого изображения.
- Байты изображения начинаются с левого нижнего угла и поднимаются сначала вверх и затем сдвиг вправо,
что соответствует организации экранной памяти вектора.
- В данных изображения могут идти как области несжатых байт, так и сжатых.
Несжатые данные. Подряд идут N байт несжатых данных, их надо просто скопировать.
За ними идёт байт со значением N. При этом, N принимает значения от 1 по 128.
Сжатые данные. Идёт байт данных, который повторяется N раз. За ним идёт байт со значением 128+N.
N принимает значения от 1 до 127.
- С начала файла однозначно не распаковать данные, поэтому, нужно распаковывать с конца,
тогда сначала будет идти количество повторов или количество несжатых байт.
Попробую сделать распаковщик и преобразователь в bmp.




Ответить с цитированием