ZXNet эхоконференция «hardware.zx»


тема: (Функциональная схема)



от: Dmitry Malychev
кому: All
дата: 09 Nov 2005
Hello, Lethargeek

Уже некорректно говорить о разных "видеорежимах", фактически это режимы работы
второго
счетчика адресов и различные способы интерпретации второго прочитанного байта
(*6 слоев).
Фактически видеокарта будет теперь работать в одном и том же режиме без всяких
явных
переключений по следующей общей схеме (опуская бордюр и смену-кадров/строк):

1. Читаются шесть пар байт из всех плоскостей
2. Определяются INK и PAPER для атрибута
3. Для каждого пиксела (первый байт) определяется его код (цвет)
4. Если это 111111 или 000000, меняем их на INK и PAPER соотв-но
5. Для каждого пиксела (второй байт) определяется его код (цвет)
6. Если он не "прозрачный", заменяем им код пиксела, полученного из первого
байта
7. Из формата GRBgrb код преобразуется в формат GRB000grb000 для ЦАП
8. Эти нули заполняются кодом второго байта для получения 4096 цветов

Весь фокус в том, что в "атрибутном APA" на этапе 5 ВК всегда подсовывается
"прозрачный"
цвет, а на этапе 8 - нули вместо кода второго байта. В обычном "двухплановом"
APA на
этапе 2 INK всегда равен 111111, а PAPER - 000000, на этапе 8 - снова всегда
нули. И
наконец, в 4096-цветном режиме те же INK и PAPER подсовываются на 2 этапе,
"прозрачный"
цвет на 5 этапе, а на 8 этапе цвет правильно расширяется в формат GRBGRBgrbgrb

Итого субъективно имеем следующие "режимы" (не считая бессмысленных вариантов):

- стандартный режим - частный случай "атрибутного" APA-mode, обрезан бордюром
- полный "атрибутный" APA - 64 цвета, раздельный FLASH, на весь экран (или его
часть)
- он же с вертикальными половинками/горизонтальными половинками/четвертушками
- он же с hardware multicolor (второй счетчик бегает по тем же адресам в другой
странице)
- этот же multicolor еще и с вертикальными половинками (то есть "атрибут" 1x4)
- "двухслойный" APA-mode - 64 цвета, передний и задний план
- "сдвоенный" APA-mode - 4096 цветов, пикселы разных планов "сцепляются"

Причем все эти "режимы" можно переключать "на лету" на одном экране - вот где
просторы для
демомейкерства. Конечно, неплохо бы добавить возможность генерации INT на любой
строке, а
обработчик, читая из порта номер последней выведенной строки, сам разберется,
кадровое это
прерывание или строчное. Тогда переключение можно использовать в полной мере.

В общем, как я и говорил - количественное усложнение схемы при качественном
упрощении.
Основая тяжесть теперь ложится на схему взаимодействия с шиной, а не на
видеологику.
То есть на каждую линейку памяти нужно сажать одинаковые схемы для выполнения
логических
операций для записи/чтения, сдвига, отражения... но зато - одинаковые. А
остальная часть
должна упроститься. И схема Reset-а тоже.




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Новости - Новости из Ульяновска.
minsk zx net news - новости сайта ellipse.pisem.net
Обзор софта - Обзор новинок: MindControl, Cole, Napalm, Demo or Die 2, Fanat 1, Fanat 1&2, Psychoz 1-3, Heresy 3, Devotion, User Filters v002.alfa, Text utility v2.8.
Реклама - приобрету контроллер IBM-клавиатуры.
Печатается с продолж. - Папуас из Гондураса (продолжение).

В этот день...   28 марта