В каком смысле изобретать спрайты? Спрайты есть во всех играх. Это может быть элемент, из которого рисуется стена, трава, движущиеся объекты, буквы тоже можно назвать спрайтами. Можете назвать более точно. Попробую описать подробнее, что я подразумеваю под спрайтами в данном случае.
Я имею ввиду, что изображение объекта, например, главного героя в игре, нарисовано заранее. Чтобы было видно движение, например, человечка, обычно рисуют несколько фаз движения. Эти изображения в ОЗУ я и называю спрайтами. При этом для основных спрайтов могут потребоваться примерно такого же размера маски для наложения объекта на фон.
Изображение двужущегося объекта на экране может состоять из следующих шагов:
1. Вычислить адрес изображения объекта на экране по координатам.
2. Вычислить адрес спрайта в буфере спрайтов по номеру объекта и номеру фазы движения.
3. Восстановить фон в предыдущем положении объекта на экране.
4. Сохранить фон в новом месте, там где его затрет объект.
5. Скопировать спрайт объекта на экран в новом месте. При этом возможны дополнительные логические операции с битами фона.
При этом еще нужно решить, что делать с атрибутами, например, как в игре THREE WEEKS IN PARADIZE.
Как видите, приходится делать несколько циклов копирования. Это требует очень многих расчетов и отнимает очень много времени. При этом на одну точку изображения приходится около 1 бита информации. А в новом режиме этой информации бует в 4 раза больше. Поэтому предыдущие способы расширения цвета не упрощают, а усложняют написание игр.
Размещение обоих слоев экрана и спрайтов (всех изображений в игре, которые может потребоваться изобразить на экране) в ОЗУ видеокарты и небольшая помощь Z80 по копированию этих изображений в нужный слой экрана значительно упростит написание игр и ускорит их работу.
Думаю, что вы согласитесь, что аппаратная помощь Z80 в данном случае необходима. Даже в таком элементарном виде, как копирование области памяти из одного адреса в другой. Или, все-таки Z80 сможет это сделать программно без торможения в игре ?