Важная информация

User Tag List

Показано с 1 по 10 из 77

Тема: ULA++ или новые режимы управления цветами спектрумовского экрана.

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Veteran
    Регистрация
    07.10.2006
    Сообщений
    1,645
    Спасибо Благодарностей отдано 
    243
    Спасибо Благодарностей получено 
    249
    Поблагодарили
    155 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию ULA++ или новые режимы управления цветами спектрумовского экрана.

    Цитата Сообщение от drbars Посмотреть сообщение
    Новый режим управления палитрами экрана (ULANext) окончательно добавлен в спеки на сайте.
    Режим позволяет использовать до 256 цветов одновременно, задавать кастомный формат атрибута варьируя кол-во бит для INK и PAPER через порт управления. Поддерживается Flash мерцание.

    Пример режима с 256 INK.
    Вложение 62104
    Раз пошла такая пьянка, выложу свои старые мысли по поводу расширения ULA. Если сочтёте нужным, доведите их до разработчиков Next.

    Основная идея - задавать программно свою пару цветов INK/PAPER для каждого значения байта атрибута (0..255). Таким образом:
    1) одновременно на экране может отображаться уже не 64 цвета максимум, как в ULA+, а целых 512 (256 возможных атрибутов по 2 цвета в каждом)!
    2) так можно увеличить количество отображаемых цветов в уже написанных играх
    3) соответственно, разрабатывая новые игры, можно делать их гораздо более цветными, при этом сохраняя обратную совместимость с оригинальными машинами, что в варианте ULA+ невозможно, т.к. использование битов FLash/bright приведёт к цветовой какофонии.


    Но это не всё. Мы можем не ограничиваться одной палитрой на 256 атрибутов, а сделать N палитр, в каждой из которых определены свои цвета для каждого атрибута. И сделать возможным их переключение не только программно, но и автоматически, переходя на следующую палитру после вывода строки экрана. Таким образом, мы получаем аппаратный мультиколор в новой ULA, и отображаем уже не 512, а 512*N цветов, где N - количество палитр. Восьми палитр уже достаточно, чтобы делать мультиколорные спрайты и тайлы, а больше может понадобиться только для особо навороченных спецэффектов.

    При этом мы имеем на экране для 8 палитр, автоматически сменяющих друг друга построчно, до 4096 цветов, программно работая всё с тем же 6144 + 768 экраном.


    Для такого режима управления цветами надо предусмотреть возможность пакетного задания цветов для атрибутов (номер определяемого атрибута автоматически инкрементируется после задания цветов).


    Глубина цвета для данного режима обсуждаема, в принципе, можно сделать её программно переключаемой - 12/16/24 бита на цвет, или остановиться на одной.

    - - - Добавлено - - -

    Также обсуждаема и программная модель задания и переключения палитр.




    Если кто ещё не понял, в чем суть предлагаемого мной режима.

    Задание пары цветов текущей палитры для некоторого атрибута:
    LD A, значение атрибута (0..255)
    OUT (ПортНомераАтрибута),A
    LD A, цвет INK
    OUT (ПортЗаданияЦвета),A
    LD A, цвет PAPER
    OUT (ПортЗаданияЦвета),A

    Это для глубины цвета в 8 бит, для большей количество выводов в порт задания цвета соответственно увеличивается. Вывод в порт задания цвета автоматически инкрементирует указатель байта в палитре атрибутов, соответственно, можно использовать команды блочного вывода в порт для задания палитры.
    Последний раз редактировалось Spectramine; 29.08.2017 в 13:31.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Игры C64, новые или находящиеся в разработке
    от Aprisobal в разделе Commodore 16/64/128
    Ответов: 15
    Последнее: 02.03.2019, 23:18
  2. PentEvo: Графические режимы конфигурации (TSConf) от TS-Labs
    от breeze в разделе Программирование
    Ответов: 15
    Последнее: 15.06.2013, 13:48
  3. Turbo режимы на ZX-Spectrum'е.
    от Robus в разделе Программирование
    Ответов: 5
    Последнее: 05.11.2012, 19:04
  4. Кворум 128+ Проблема с цветами.
    от Руслан в разделе Кворум
    Ответов: 5
    Последнее: 14.12.2011, 19:17
  5. Как отключать турбо режимы на разных спеках?
    от Evgeny Muchkin в разделе Программирование
    Ответов: 19
    Последнее: 20.05.2007, 03:28

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •