Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; КОНТРОЛЛЕР ОТОБРАЖЕНИЯ ГРАФИЧЕСКОЙ ИНФОРМАЦИИ
- ; Состоит из двух или трех слоев (банков) динамического ОЗУ,
- ; содержимое которых отображается на экране в виде карты бит,
- ; регистра цвета, регистра выбора страниц, таблицы присвоения
- ; цветов и логической матрицы для анализа содержимого ГЗУ.
- ; Объем каждого слоя может быть 16 или 64 к, но отображается
- ; всегда только 16 к из каждого слоя.
- ; Четырехразрядный регистр выбора страницы при объеме 64 к
- ; определяет, какая часть (страница) каждого слоя отображается
- ; в текущий момент на экране и какая открыта для доступа
- ; процессору.
- ; Байты информации одновременно из всех слоев выводятся на
- ; экран начиная с верхнего левого угла таким образом, что
- ; одноименные биты совмещаются и определяют логический цвет
- ; соответствующей точки на экране.
- ; Старший бит каждого байта отображается слева, младший -
- ; справа. Окончательный (физический) цвет точки определяется
- ; содержимым программируемой таблицы присвоения цветов,
- ; причем учитывается также информация из АЦЗУ. Таблица
- ; присвоения цветов расположена в области УВВ и адресуется
- ; как одна ячейка памяти, работающая только на запись, при
- ; этом выбор строки таблицы определяется содержимым запи-
- ; сываемого байта.
- PAGREG EQU VIREG ; Адрес регистра выбора страниц
- VPAGE0 EQU 00000000B ; Выбор 0 страницы отображения
- VPAGE1 EQU 00000001B ; Выбор 1 страницы отображения
- VPAGE2 EQU 00000010B ; Выбор 2 страницы отображения
- VPAGE3 EQU 00000011B ; Выбор 3 страницы отображения
- RWPAG0 EQU 00000000B ; Выбор 0 страницы чтения/записи
- RWPAG1 EQU 01000000B ; Выбор 1 страницы чтения/записи
- RWPAG2 EQU 10000000B ; Выбор 2 страницы чтения/записи
- RWPAG3 EQU 11000000B ; Выбор 3 страницы чтения/записи
- ; Если объем слоя ограничен 16 к, состояние битов PAGREG
- ; безразлично.
- LUT EQU 0FBH ; Адрес таблицы присвоения цветов
- ; (относительный)
- ; При записи в LUT биты D0...D3 задают номер одной из 16
- ; строк таблицы, а D4...D7 - содержимое этой строки.
- ; D3 соответствует АЦЗУ, D2 - слою ГЗУ #2, D1 - слою #1,
- ; D0 - слою #0; D7 задает интенсивность (яркость),
- ; D6 - наличие красного цвета, D5 - зеленого цвета, D4 -
- ; синего цвета.
- ;
- ; Регистр цвета задает маски логических цветов и режимы
- ; записи и считывания ГЗУ. Имеются два основных режима -
- ; послойный и цветовой. Этот регистр работает только на
- ; запись.
- NCREG EQU 0BFH ; Относительный адрес регистра цвета
- ; Константы для программирования регистра цвета
- BANKMD EQU 0 ; Послойный режим чтения/записи
- WSEL0 EQU 11111101B ; Выбор слоя 0 при записи
- WSEL1 EQU 11111011B ; Выбор слоя 1 при записи
- WSEL2 EQU 11110111B ; Выбор слоя 2 при записи
- RSEL0 EQU 00010000B ; Выбор слоя 0 при чтении
- RSEL1 EQU 00100000B ; Выбор слоя 1 при чтении
- RSEL2 EQU 01000000B ; Выбор слоя 2 при чтении
- WBIT EQU 00000001B ; Маска значения бита, записы-
- ; ваемого в биты ГЗУ в послой-
- ; ном режиме
- COLORMD EQU 80H ; Цветовой режим чтения/записи
- ; (выбраны все три слоя)
- WRMSK EQU 00001110B ; маска битов, задающих логи-
- ; ческий цвет при записи
- RDMSK EQU 01110000B ; маска битов, задающих логи-
- ; ческий цвет при чтении
- ; При записи в ГЗУ записываемый байт данных определяет,
- ; какие биты ГЗУ изменятся (примут значение WBIT или
- ; WRMSK), а какие сохранят свое значение. Признаком
- ; изменения является соответствие битов записываемого
- ; байта значению BITWR, признаком сохранения - противо-
- ; положное значение.
- BITWR SET 1 ; Изменяются биты, заданные единицами
- ; При чтении ГЗУ в послойном режиме в считываемом байте
- ; получается содержимое ячейки выбранного слоя.
- ; При чтении в цветовом режиме в считанном байте содер-
- ; жатся признаки совпадения цвета в каждой точке с задан-
- ; ной маской. В случае совпадения в соответствующих битах
- ; читаются нули.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement