Такое появляется как побочный эффект реализации режима Alco 16C.
В первое сообщение вставил проект для преобразования bmp в scn и обратно.
Вроде, системный массив argv[] содержит в 0 элементе имя исполняемого файла и дальше переданные параметры. http://cppstudio.com/post/421/
- - - Добавлено - - -
Ynicky, твой новый формат изображения для спектрума очень тесно связан с необходимостью аппаратного вмешательства. То есть, нужен такой новый графический режим, который нативно отображал бы на экране данные из этого нового формата без необходимости преобразования данных перед загрузкой в видеопамять. В этом случае добро пожаловать в пересекающуюся тему Новый принцип устранения клешинга.
Это пример для консоли. Я свой проект сделал из примера на неконсольное приложение.Цитата:
Понятно. Ну тогда наверное есть какой-либо визуальный компонент диалог открытия файлов.
Для примера сделал из первой картинки, слева направо, сверху вниз: RGB888, далее RGB332 методами Флойда-Стейнберга, сеткой, случайный шум, ближайший сосед.
Как видно, даже для фото получается вполне неплохо.
Вложение 59840
- - - Добавлено - - -
Блин, сайт пережимает картинки, хуже видно точки.
AzAtom, учитывал атрибут 4 на 4(или 4 на 2) ?
Smalovsky, без атрибутов, просто 8 бит на пиксель, RGB332.
Переделал программы в первом посте для работы с командной строки.
При написании видеоконтроллера оказалось, что на частоте работы 25 МГц
ему не хватает производительности. Решил переделать атрибуты с одним
байтом на INK и одним на PAPER. В этом случае как растр так и атрибуты
занимают по 0x1800 байтов. Общий размер - 0x3000. Поэтому поместил
в файле SCN атрибуты после растра, чтобы изображение умещалось
в одну страницу 16 кБ. Сделал проект на плате Марсоход3.
Архитектура - как у Spectrum128, только вместо BASIC128 пока написал
простенький монитор. Память ROM (монитор 16 кБ), BASIC48 (16 кБ),
VRAM (две страницы по 16 кБ) и быстрая нижняя память RAM
(две страницы по 16 кБ) занимают внутреннюю память FPGA.
Остальные 28 страниц RAM по 16 кБ находятся во внешней SDRAM.
видеоконтроллер работает в 2-х режимах: стандартном и расширенном.
Пока не могу проверить BASIC48, так как не знаю что нужно сделать
в мониторе для его запуска. Значение 0x33 в порт #7FFD записываю.
А что нужно еще - не знаю. В интернете не нашел.
Может кто знает как из BASIC128 попасть в BASIC48?
Программы для Windows (Visual Studio) с преобразованиями
из BMP24 в SCN8 и обратно:
Вложение 59845
Вложение 59844
Картинки:
Вложение 59846
Вложение 59847
Ynicky, может, лучше атрибуты не 4 на 4, а 8 на 2( в тандартном знакоместе получается тоже 4 атрибута как и при атрибуте 4 на 4) ?