Если немного отвлечься от просмотра картинок, но далеко от вопроса изображения не уходить, то получается, что раз у ПК8000 цифровой выход изображения, значит для него можно сделать внешнюю палитру.
Вид для печати
Если немного отвлечься от просмотра картинок, но далеко от вопроса изображения не уходить, то получается, что раз у ПК8000 цифровой выход изображения, значит для него можно сделать внешнюю палитру.
К сожалению, это тупиковый путь:
1. Указанный конвертер не обладает автономностью.
2. Автономная утилита Retro-x умеет делать тоже самое (см. раздел MSX в перечне платформ импортирования).
3. Также она позволяет изменять параметры экспозиции и порогов в реальном времени по каждому цветовому каналу с отображением результата в окне Просмотра. Представлен широкий набор параметров преобразования цвета с целью их уменьшения количества для каждого из методов: Ordered dither, Error diffusion и др.
4. Попытка перевести изображение с палитрой MSX к палитре ПК8000 не корректна, т.к. преобразование уже выполнено с целью наибольшего приближения к цветовому образу оригиналу. А простая замена палитры позже, приводит к катастрофичному уходу от оригинала (проверено, да, трудно было принять, что изображения для MSX, прямого прародителя ПК8000, не совместимы с эстетической точки зрения). Поэтому в инструкции к BMP2CAS эта платформа не рассматривается. Вместо предлагается упомянутый Timex режим Спектрума, наиболее приближенный по-моему к ПК8000.
Для меня автономность - плюс, но не обязательное свойство конвертера, хотя при прочих равных выберу автономный. Retro-X мне не очень нравится, т.к. у меня подглючивает. Пользовался предыдущей версией - BMP2SCR, она мне в принципе нравилась. С палитрой msx 2 варианта: 1) "дешевый" - корректировать при выводе на ПК8000; 2) "хороший" - подправить конвертер - это как правило не сложно при наличии исходников и дает действительно хорошие результаты (по крайней мере один конвертер я так правил). У jannone, кстати, есть опции отсутствующие у BMP2SCR и Retro-X (и, ради справедливости, обратное тоже справедливо). Ну и есть еще конвертеры разной степени универсальности, только я ими особо не пользовался, надо пробовать.
Склероз - неприятная штука, но получилось забавно. Оказывается я переделывал под цвета ПК8000 (об этом далее) Сишный вариант именно конвертера jannone. Но я переделывал под цвета из emu (тем более в emu80 в 2008 ПК8000 не поддерживался). В итоге - переделать тот конвертер для ПК8000 с учетом уточненных цветов очень просто, надо поменять палитру после комментария
// TMS9918 RGB palette - approximated 50Hz PAL values
- - - Добавлено - - -
Для полноты конечно желательно добавить настройку "силы" дизеринга и добавить выбор его типа. С тех пор я сделал матлабовский конвертер с такими фичами, правда без адаптации к ПК8000.
Мэппирование памяти великая штука! Режим 2 без проблем установился из под CP/M, с отображением видеопамяти на адреса 0x8000-0xC000. И система не запорчена и для программы остается еще 32 Кб памяти. Так что вьюнер похоже будет :)
Надеюсь товарищ ivagor не будет против, если я отсюда позаимствую подпрограммы вывода на экран ?
Конечно я не против, а если еще буду упомянут в каком-нибудь readme или еще где-нибудь - будет совсем хорошо.
Пилю в свободное время свой конвертер изображений в форматы различных ретро-платформ. Есть желание добавить поддержку ПК8000. Насколько я понял, экран ПК8000 по сути копия экрана ZX в режиме multicolor. А multicolor для ZX DaDither уже умеет делать, и переделать по ПК8000 не сложно. У меня есть несколько вопросов.
1) Как кодируются цвета в байте? Правильно ли я понимаю, что в блоке 8x1 могут быть любые два цвета из 15?
2) Какова используемая палитра?
3) Каков общепринятый для платформы способ хранения графики?
Старшая тетрада - цвет фона, младшая - цвет изображения. И да, каждый блок 8x1 имеет свой байт цвета (фона и изображения)
0 - черный
1 - черный
2 - зеленый
3 - светло-зеленый
4 - синий
5 - светло-синий
6 - голубой
7 - светло-голубой
8 - красный
9 - светло-красный
10 - желтый
11 - светло-желтый
12 - фиолетовый
13 - светло-фиолетовый
14 - серый
15 - белый
Об оттенках цветов рассуждать бесполезно, они различались от машины к машине, так как светлые цвета настраивались в адаптере разными людьми и на разных заводах :)
Такого нет в природе. Насколько знаю, единственный вьюнер картинок здесь.
Так что форматы стандартные спектрумовские и MSX.
Понятно. Но может быть есть какие-то более менее устоявшиеся "стандарты", применяемые в эмуляторах?
Не совсем понятно, как использовать спектрумовские форматы для экспорта, если на спектруме есть ограничение на использование либо светлых, либо темных цветов в одном блоке 8x1. На ПК8000, как я понял, такого ограничения нет.
А какой конкретно формат?
А какой формат наиболее удобен для этого просмотрщика?