Мой режим основан на совершенно ином принципе, чем ULA+. Им можно закодировать цвета, которые использует игра с ULA+, но можно закодировать и другие цвета. Он не совместим с ULA+ программно, он может повторить ULA плюс расцветку конкретной игры, но своим, отличным от ULA+ способом. Не думаю, что это можно назвать доработанным ULA+.
Потому что формат атрибутов отличается. Как атрибуты вашего режима лягут на атрибуты стандартного режима атрибутов спектрума? Будет цветовая неразбериха. Останется только выводить разные атрибуты для стандартного и вашего режима атрибутов. Либо ограничиваться режимом 5 бит paper - 3 бита Ink, фактически используя только 3-4 бита paper (без бита flash, bright можно использовать с ограничениями).Почему на даёт? Dizzy будет работать и на классике и на Next.
- - - Добавлено - - -
Если кто ещё не понял, в чем суть предлагаемого мной режима.
Задание пары цветов текущей палитры для некоторого атрибута:
LD A, значение атрибута (0..255)
OUT (ПортНомераАтрибута),A
LD A, цвет INK
OUT (ПортЗаданияЦвета),A
LD A, цвет PAPER
OUT (ПортЗаданияЦвета),A
Это для глубины цвета в 8 бит, для большей количество выводов в порт задания цвета соответственно увеличивается. Вывод в порт задания цвета автоматически инкрементирует указатель байта в палитре атрибутов, соответственно, можно использовать команды блочного вывода в порт для задания палитры. Две команды OTIR задают всю палитру для 256 атрибутов (опять же, для глубины цвета в 8бит).
- - - Добавлено - - -
Просто - понятно - вольготно![]()





Ответить с цитированием