Слои не убогие, они позволят стирать и рисовать часть изображения при передвижении объектов на разных планах.
Особой обработки не надо. Кадр изображения с компьютера надо сохранить до вывода на монитор. Как изображение получается, какие порты использует, какой экран 128K отображается и так далее уже не важно. Есть готовые сигналы RBGI. Мы их берем и записываем в буфер VGA. При этом игра продолжает работать, а ГГ можно изобразить в верхнем слое без клешинга. Ты вроде раньше и писал про простоту доработки игр. Я это и предлагаю.на различные схемы чтения и интерпретации содержимого видеобуфера в различных режимах
. Давай забудем пока про блиттер. Первая ступень - устранение клешинга. Упростим задачу.кстати, также на соответственные им режимы работы блиттера (если всё-таки захочется сделать блиттер).
А то что я предлагаю сделать видеокарту выносной - это не облегчит перенос ее на другие компьютеры ?И при этом в результате будет пригодна лишь для улучшения софта в рамках одной платформы, а не облегчать еще и портирование софта меж любых платформ на совместимых процессорах.
Это проще, чем дублировать формирование стандартного экрана в видеокарте. Сигналы то уже готовые.Ну, и необходимость втыкать карту еще и в RGB-выход я бы не назвал упрощением![]()
Для начала можно сделать один дополнительный слой. Там как раз будет массив из точек. А закрашиваться они будут внутри видеокарты в те два или три цвета, которые указаны в палитре рисования. При этом спрайты в игре останутся те же. А видеокарта из байта спрайта и байта маски сама нарисует в массиве новые 8 точек. По-моему идея простая и будет работать эффектно.А не слишком ли много программисту придётся знать с нынешним нагромождением слоёв и разных режимов? Вообще не пойму, зачем тебе понадобились слои, только цветность ограничивают зазря и усложняют пользование устройством. Можно обойтись прекрасно без них, одним-единственным примитивным растровым массивом, но зато максимальной глубины цвета и максимального размера (в рамках развёртки) и с гибкой схемой записи группы пикселей. Что позволит модернизировать игрушки НАМНОГО проще - так, в простейшем случае (но достаточном, чтобы полностью избавить игру от клэшинга!) программисту нужно знать ТОЛЬКО лишь как выбирать два активных цвета для рисования (неважно даже, на экране или в теневом буфере). Остальных настроек хватит дефолтных.
- - - Добавлено - - -
Дизассемблировать игру в отладчике - это достаточно легко. Это намного легче, чем спроектировать, закодировать, отладить игру. Нужно поставить ловушки на запись в экранную область, посмотреть как происходит запись, откуда берется байт спрайта и маски ГГ и записать их по другим адресам. Перед этим выбрать палитру для рисования. Для начала спрайты остаются те же.
- - - Добавлено - - -
Да, медленно. Каждый день думаю о железе, что-то делаю, прорабатываю режимы, улучшаю элементную базу, конструкцию, доказываю свою правоту на форуме.
- - - Добавлено - - -
Так для этого режимы и прорабатываются, чтобы можно было убрать лишние команды в игре и спрайты оставить те же, чтобы не делать лишнюю работу и не увеличивать объем программы.
При работе с новым слоем нам не нужны вычисления адреса на экране, чтение оттуда или из буфера, команды or, xor, and с байтом спрайта и маски, запись результата в буфер или на экрана. Нам надо для рисования спрайта главного героя (ГГ) один раз записать координаты в видеокарту и выбрать палитру. Затем читать в цикле байты спрайта и маски и записывать в видеокарту. Ну как - это же намного проще, чем до этого было ?





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