С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Как устранить клешинг я придумал, но спрайты могут получиться только одного цвета. Как же дорабатывать игры, чтобы была возможность каждый спрайт рисовать своим цветом ?
- - - Добавлено - - -
Пока предполагатся найти место в программе, где рисуется каждый тип спрайтов. Например, пчелы, летучие мыши и т.д. Скорее всего они рисуются одной подпрограммой, но перед ее вызовом для каждого типа спрайта указывается адрес начала его блока спрайтов. Скорее всего эта команда имеет длину 3 байта. Если вместо нее написать команду перехода на дополнительные команды. Среди этих команд будут команды настроики цвета спрайта, а в конце написать ту команду, которую мы затерли и команду перехода назад к следующей команде.
- - - Добавлено - - -
Команды выбора цвета спрайта - это запись атрибута в порт атрибута. Надо будет для каждого объекта сделать свою команду записи атрибута со своими цветами PAPER и INK. Если объектов много, то надо где-то найти свободное место в игре для модернизации. Или придется в компьютер МETEOR-64 добавить возможность включать блок ОЗУ вместо ПЗУ на время рисования спрайтов.
- - - Добавлено - - -
Если загружать в теневое ОЗУ блок команд для модернизации игры, то это можно использовать как типовое решение во всех играх и не искать свободное место в игре.
Последний раз редактировалось zx-kit; 16.06.2019 в 06:20.
"L-256"
вобщем получается что надо будет разобрать игру и переписать её с поддержкой нового графического устройства, фактическа как переписать под другой комп на z80, вряядли кто возьмется, со спринтером проходили
Да сложность примерно как для ULAX. Они же переделали. Только в ULAX цвета для каждого спрайта меняет FPGA, а для МЕТЕОРа надо это прописать в специальных командах. Хотя в ULAX тоже надо это где-то указывать. Но они молодцы - показали, что разобрать и доработать старую игру - это реально и не трудно.
- - - Добавлено - - -
Для начала в конце подпрограммы вывода спрайта можно записать в порт атрибута PAPER = 0, INK = 7, BRIGHT = 1. Тогда все спрайты, для которых не выбраны индивидуальные цвета будут рисоваться без клешинга ярко-белым цветом. Потом некоторые спрайты можно перекрасить, если захочется.
"L-256"
Видеокарта постепенно по сложности превратилась в компьютер. Остается уточнить для желающих приобрести, какие навороты необходимы и достаточны для нового компьютера ?
"L-256"
упорно лепишь амстрад или специалист... и там и там проблема в скорости процессора\памяти, для такого экрана нужен самый быстрый проц какой только возможно, т.е. делай ассинхронный доступ видеоконтроллера и процессора к памяти, тогда процессор на максимальной частоте это 20mhz для z80, ну и память для проца должна будет обеспечить поток под 7mhz... при этом видео-контроллер будет выгребать тоже со скорость 7mhz видимо... и того память надо уже статику (dram 60ns... мало шансов сделать устойчиво рабочим). По возможностям комп будет примерно как atari st... - интерес к нему будет чуть больше 0.
Последний раз редактировалось Cooper; 11.06.2019 в 16:07.
Cooper/Smash HB, Premier Corp, 1993-1997@Speccy
http://fc-jungle.com - old-school Amiga Music
http://forum.amadeus-project.com - TechManiacs Forum, Mitsubishi Lancer Tuning
http://zxtunes.com/author.php?id=327 - my Speccy Music
В Орионе и Специалисте был медленный проц. Если согласен на статику, то можно сделать Z80 на 14 MHz.
Идея такая - делаем новый комп, заточенный под графику. Он кроме стандартного режима графики будет иметь дополнительный. Оба на частоте 3.5 MHz. В новом режиме мы сначала, используя байт маски, рисуем черный силуэт спрайта. Маска меняет цвет точек выборочно. Потом, используя байт спрайта, рисуем контур спрайта выбранным цветом. Тоже цвет точек меняется выборочно. Этот режим для раскрашивания старых игр.
Если для новых или портирования с других компьютеров, то лучше сделать буфер для подготовки следующего экрана с адреса 0 вместо ПЗУ. При этом адресацию надо сделать линейную как в Орионе и Специалисте. Это позволит рисовать спрайты блочными командами. Спрайты располагать также с линейной адресацией. Тогда первый столбик спрайта шириной 8 точек мы сможем нарисовать сверху-вниз командой LDIR, затем переместить адреса HL и DE вправо с помощью команд INC H, INC D и рисовать второй столбик снизу-вверх командой LDDR.
Ну и скорость для новых игр можно переключить на TURBO 14 MHz.
- - - Добавлено - - -
Написал на email.
Последний раз редактировалось zx-kit; 11.06.2019 в 20:54.
"L-256"
Да, я сделал это ! Я написал 1000-е сообщение в теме про "METEOR" !
Последний раз редактировалось zx-kit; 12.06.2019 в 14:31.
"L-256"
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)