Конвертанул их конвертером.
С наилучшим результатом вот что получилось:
Вложение 60028
Вложение 60029
Размер изображения при этом ровно 16К байт.
Конвертанул их конвертером.
С наилучшим результатом вот что получилось:
Вложение 60028
Вложение 60029
Размер изображения при этом ровно 16К байт.
Хорошо, есть стандартный экран с атрибутами, есть 16к вместо ROM, как это использовать? в моей поделке можно отключить, 32K,24К,16К как в нижней так и верхней памяти, можно читать например из CPU0 и писать по этим адресам, но уже в VRАМ, но в стандартном ZX так не сделать.
Ynicky,
Smalovsky,
Цена решения не адекватна, подходит к "фирмовым" машинам, у кого есть "спектра?"
Есть идея, что бы Ynicky поделился разработкой с vlad. Если есть у vlad есть желание, то он мог бы перенести новый видеорежим в DivGMX.
Нет проблем. Только в моей разработке нет ничего нового кроме VGA контроллера, работающего с двухпортовой внутренней памятью.
Вложение 60860
Вложение 60075
- - - Добавлено - - -
А это управление режимами видеоконтроллера и ПЗУ:
oMode <= not sport_7ffd(4);
oRomEn <= not sport_7ffd(4); --- (x7ffd/D4 = '0')
oBasicEn <= sport_7ffd(4); --- (x7ffd/D4 = '1')
Сделал небольшую демонстрацию - движение шарика по блокам. Специально, чтобы хорошо был виден конфликт атрибутов.
https://youtu.be/BxeSyjHRxLA
Вложение 60346
Вложение 60347
Вложение 60348
Добавил в видеоконтроллер дополнительный отключаемый слой для спрайтов.
Цвет одной точки растра в нем кодируется 2-мя разрядами. Адресация линейная во всем экране.
Четыре атрибута (четыре цвета) задаются на знакоместо 8х8 в формате RGB332.
Если какая-либо точка знакоместа задается атрибутом (цветом) = 0, то она прозрачная.
Т.е. если спрайт не целиком покрывает знакоместа, то он может состоять из 3-х цветов,
плюс прозрачный. В таком случае отпадает необходимость в маске. Тайлы могут состоять
из 4-х цветов. Размер растра слоя равен 0х3000, атрибутов - 0хС00.
В итоге дополнительный слой занимает чуть меньше 16К байт. Фон (назначаем его нулевым слоем)
может быть как у стандартного экрана ZX спектрума, так и в новом формате
(4 блока на знакоместо по 2 атрибута RGB332 на блок). Конфликт атрибутов с двумя слоями
полностью исчезает. Доработал видеоконтроллер для работы с двумя слоями.
Со стороны видеоконтроллера 0-й слой начинается с адреса 0х4000, а 1-й - с 0х0000.
Видеоконтроллер работает с 2-мя двухпортовыми блоками внутренней памяти по 16К байт на слой.
Для простоты пока не стал подключать еще 2 страницы видеопамяти для работы с переключаемыми
кадрами.
Исходник нового видеоконтроллера прилагаю:
Вложение 60864
https://youtu.be/T-Md-8mrFO4
Раскрасил первый экран и спрайт главного героя игры Exolon в цвета, для того чтобы
представить как бы выглядела игра с новыми видеорежимами.
Из меня художник и программист еще тот, но потенциальные возможности можно увидеть.
https://youtu.be/0SmRfFoaE2c
Вложение 60704
Вложение 60705