Мультиматограф TOP3

Друзья! Предлагаю ничего не значащий, ни на что не влияющий, просто сам по себе опрос. Just for fun.

Назовите ТРИ работы с Мультиматографа, которые запомнились вам больше всего. Только три работы. Не пять. Не десять. Я понимаю, сложно. Серпом по живому. Но нужно три.

TSconf: Gfx layer

Спрайты, тайлы… Возможно, этого нам и хватило-бы…
Но под этими слоями находится базовый слой графики.

Дао говорит: Слой графики отображает данные, которые находятся в страницах памяти. Первая страница для отображения (её адрес обязательно кратен 8 для 16цветов, 16 — для 256 цветного режима, общая длина — 8/16 страниц) указана портом VPage (#01af). Способ отображения данной памяти задаётся битами порта VConfig, который задаёт разрешение и цветовую глубину.
Окно отображения памяти представляет собою блок размерами заданного разрешения и отображается по позициям X (0-511) и Y (0-511), которые указаны парами портов GXOffs и GYOffs. Окно зациклено по краям в отображении.
Цвета отображения заданы палитрой, номер выбирается первой тетрадой регистра PalSel (#06af).

Итак, у нас есть экран со своим внутренним скроллом.

Читать дальше →

TSconf: Sprites

А вот чё бы и не навалить поверх графики спрайтов-то, а?
Они-то у нас искаропки.

Дао говорит: Спрайт — это графический тайл размером от 8 до 64 точек, который может быть выведен в координаты 0-511 по X и Y, с возможностью отражения отображения по вертикали / горизонтали, и имеющий прозрачность.
Всего доступно 85 спрайтов для одного спрайтового слоя.


В общем, отработка спрайтов выглядит следующим образом:
  • Спрайт нужно разместить в памяти точно таким-же образом, как для тайлов (или на экране в режиме 16 цветов).
  • Палитра спрайта так-же должна быть загружена в общую палитру системы.
  • После этого — загружаем описание спрайта в систему и включаем отображение.
Спрайт становится виден.

Читать дальше →

TSconf: Tiles

Да, Мультиматограф близок, нужно поднажать!
Итак, тайлы.


Для построения тайлов нам необходимо сделать следующее:
— подготовить графику (разместить её в странице для графики тайлов)
— построить карту тайлов (с размещением в странице карты)
— запрограммировать порты (указать, какие страницы используются для графики, для карты, и включить отображение нужных слоёв)

Читать дальше →

TSconf: DMA

Учитывая такой большой размер памяти, необходимо средство быстрой передачи данных.
TSconf предлагает нам такое средство, позволяющее переносить данные в памяти без участия процессора.

Дао говорит: Скорость пересылки составляет 7 Мгц, копирование происходит по два байта (16 бит) при условии что в этот такт к памяти нет обращения от ЦПУ, видео или ТСУ.
В среднем: 4 байта — 2 такта, дма обращается к озу за 1 такт 7 мгц, 16 бит, для пересылки надо 2 обращения
Получаем: скорость DMA 7 МБ/с
DMA может копировать данные из следующих источников:

Читать дальше →

TSconf: Memory

Рассмотрим расположение памяти в системе.

ZX Evolution имеет 4Мб памяти.
Организация этой памяти подобна zx spectrum 128 — используется страничная организация.
В переложении на страницы памяти, мы имеем 256 страниц по 16 кб каждая.

Читать дальше →

Дао конфы


Тайлово-спрайтовая конфигурация (TSconf). Вступление
По моему мнению, TSconf является очень современной надстройкой над любимым ZX Spectrum, которая вносит давно ожидаемые и необходимые элементы в виде цвет на точку, аппаратные спрайты и прочее. Об этом и пойдёт речь в этой статье.

Тайлово-спрайтовую конфигурацию (TSconf) можно разделить на следующие логические группы:
1. Графический акселератор
— Использование тайлов
— Вывод и управление спрайтами
2. Менеджер памяти
3. Блок прямого доступа к памяти (DMA)
4. Система прерываний
5. Кеш
6. Порты управления

Давайте постепенно рассмотрим все эти пункты по порядку.

Читать дальше →