Extended color mode

Материал из C64 WIKI по русски.
Перейти к: навигация, поиск

Расширенный цветной режим характерная особенность VIC-II текстового экрана: устанавливая бит 6 (значение 64) в 53265 / $D011, каждый отдельный символ текстового экрана можно иметь один из четырех различных цветов фона. "Компромисс" - используются только первые 64 из 256 доступных символов.

Этот BASIC пример демонстрирует расширенный цветной режим:

10 poke 53281,1
20 poke 53282,2
30 poke 53283,5
40 poke 53284,6
50 poke 53265,peek(53265) or 64
60 print "abc ABC ";chr$(18);"abc";chr$(
29);"ABC"
run
abc abc abc abc

ready.

Обратите внимание на то, что chr$ (18) и chr$ (29) управляющие символы для перемещения курсора влево и вправо, соответственно.

Первые четыре строки настраивают четыре цвета фона; белый, красный, зеленый, и синий, в соответствующих регистрах. Строка 50 включает расширенный цветной режим и строка 60 печатает текст примера.

Заметьте, что два самых значимых бита в коде символа для каждого положения на экране определяют, какой из этих четырех цветов фона относится к символу:

  • 00xxxxxx дает цвет фона, определенный в 53281/$D021
  • 01xxxxxx дает цвет фона, определенный в 53282/$D022
  • 10xxxxxx дает цвет фона, определенный в 53283/$D023
  • 11xxxxxx дает цвет фона, определенный в 53284/$D024

Остальные шесть битов указывают, какой из первых 64 символов в текущем наборе символов должен появиться в этой позиции.

Не используйте совместно с многоцветным режимом!

Расширенный цветной режим не должен использоваться одновременно с многоцветным режимом для текстового экрана: VIC-II, как бы "запирается", если оба режима включены, показывая чистый, черный экран. Но проблема решается, как только или многоцветный или расширенный цветной режим отключен.

Оригинал статьи на С64-WIKI.COM