Программирование видеоадаптеров CGA,EGA и VGA

6. Регистры видеоадаптера CGA


6.1. Краткий обзор

6.2. Регистры контроллера ЭЛТ

6.3. Регистр выбора режима. (Mode Select Register)

6.4. Регистр выбора цвета. (Color Select Register)

6.5. Регистр состояния (Input Status Register - ISR0)

6.6. Регистр сброса триггера-защелки светового пера (Light Pen Latch Reset Register - LPLRR)

6.7. Регистр установки триггера-защелки светового пера (Light Pen Latch Set Register - LPLRR)

В этой главе мы опишем все основные регистры видеоадаптера CGA, которые могут быть полезны при написании программ. Необходимо заметить, что хотя программирование видеоадаптеров на уровне регистров позволяет увеличить скорость работы программ и решить некоторые задачи, которые нельзя решить при помоши функций BIOS, это может вызвать ряд проблем при переносе ваших программ на другие машины.

Рассмотрим совместимость видеоадаптера CGA и видеоадаптеров EGA и VGA. Видеоадаптер CGA создан на основе микросхемы Motorola 6845, а видеоадаптеры EGA и VGA используют специализированные БИС-ы. Хотя EGA и VGA имеют регистры, соответствующие регистрам CGA, некоторые из них располагаются по другим адресам и могут выполнять дополнительные функции. Например видеоадаптеры EGA и VGA могут вызывать аппаратное прерывание по линии IRQ2 в начале каждого обратного вертикального хода луча. Кроме того, в каждом новом видеоадаптере расширяется набор используемых регистров.

В результате такой не полной совместимости, программы непосредственно программирующие регистры видеоадаптера могут перестать правильно работать при переносе их на компьютер с другим типом видеоадаптера.

6.1. Краткий обзор
Большая часть регистров CGA доступна только для записи, что создает определенные проблемы, особенно для мультизадачных систем. Доступ к большинству регистров видеоадаптеров осуществляется в два эт...
6.2. Регистры контроллера ЭЛТ
Регистры контроллера ЭЛТ управляют сигналами синхронизации, необходимыми для формирования растра, определяют формат данных на экране, форму курсора, а также управляют световым пером. Большнство из...
Общая длина линии горизонтальной развертки (Horizontal Total Register - HTR) (индекс0)
Общая длина линии горизонтальной развертки (Horizontal Total Register - HTR) (индекс 0)Этот регистр относится к группе регистров контроллера ЭЛТ, которые управляют генерацией синхросигналов д...
Длина отображаемой части горизонтальной
Длина отображаемой части горизонтальной развертки (Horizontal Display Enable End Register - HDER) (индекс 1)Данный регистр используется адаптерами CGA и Hercules. Регистр задает длину отображ...
Положение горизонтальной синхронизации (Horizontal Sync Position - SHBR) (индекс2)
Положение горизонтальной синхронизации (Horizontal Sync Position - SHBR) (индекс 2)Регистр CGA, определяющий начало обратного хода луча. Изменяя содержимое регистра можно смещать изображение...
Ширина горизонтального синхросигнала (Horizontal Sync Pulse Width Register - HSPWR) (индекс3)
Ширина горизонтального синхросигнала (Horizontal Sync Pulse Width Register - HSPWR) (индекс 3)Для видеоадаптеров MDA, CGA и Hercules регистр определяет продолжительность обратного хода луча в...
Число горизонтальных линий растра (VTR) (индекс4)
Число горизонтальных линий растра (VTR) (индекс 4)Определяет число текстовых строк в растре....
Выравнивание растра (Vertical Total Adjust Register - VTAR) (индекс5)
Выравнивание растра (Vertical Total Adjust Register - VTAR) (индекс 5)Определяет количество текстовых строк в растре, отведенных под рамку экрана....
Длина отображаемой части вертикальной развертки (Vertical Displayed - VDR) (индекс6)
Длина отображаемой части вертикальной развертки (Vertical Displayed - VDR) (индекс 6)Регистр CGA, задающий число отображаемых текстовых строк....
Положение вертикальной синхронизации (Vertical Sync Position Register - VSPR) (индекс7)
Положение вертикальной синхронизации (Vertical Sync Position Register - VSPR) (индекс 7)Регистр видеоадаптера CGA, определяющий начало обратного вертикального хода луча....
Режим соединения (Interlase Mode Register - IMR) (индекс8)
Режим соединения (Interlase Mode Register - IMR) (индекс 8) Регистр CGA. Биты D4 и D5 задают режим соединения. Биты D6 и D7 определяют отклонение экрана. Регистр всегда содержит 2....
Высота символов текста (Max Scan Line Register - MSLR) (индекс9)
Высота символов текста(Max Scan Line Register - MSLR) (индекс 9)Этот регистр определяет число линий сканирования на один символ или, другими словами, высоту символов в пикселах. Регистр испол...
Использование регистра высоты
Рисунок 7.1 Использование регистра высоты символов текста....
Начальная линия курсора (Cursor Start Register - CSR) (индекс0Ah)
Регистр задает верхнюю линию сканирования символа. С этой линии начинается курсор. Вместе с регистром конечной линии курсора (CER), он определяет размер и форму курсора. Приведем формат регистра:...
Конечная линия курсора (Cursor End Register - CER) (индекс0Bh)
Конечная линия курсора(Cursor End Register - CER) (индекс 0Bh)Регистр задает нижнюю линию сканирования символа, в которой кончается курсор. D4-D0 Соответствует номеру последней линии курсора....
Регистры начального адреса
Регистры начального адресаЭто группа из двух регистров: регистр старшего байта начального адреса (Start Address Register - SAR, high byte) (индекс0Ch) и регистр младшего байта начального адреса (S...
Использование регистров начального адреса. Регистры, определяющие положение курсора
Рисунок 7.2 Использование регистров начального адреса....
Регистры, определяющие положение курсора
Два регистра - регистр старшего байта положения курсора (Cursor Location Register - CLR_h, high byte) (индекс0Eh) и регистр младшего байта положения курсора (Cursor Location Register - CLR_l, low...
Отображение курсора на экране.
Рисунок 7.3 Отображение курсора на экране. Программа, приведенная ниже, считывает значения из регистров положения курсора. // чтение регистра положения курсора #include <stdio.h> #include &l...
Регистр адреса светового пера (LPAR)
Регистр адреса светового пера (LPAR)Это 16-битовый регистр, который имеется в видеоадаптерах CGA и EGA, доступен только для чтения. Регистр LPAR дает возможность определить положение светового пер...
6.3. Регистр выбора режима. (Mode Select Register)
Этот регистр, доступный для записи через порт 3D8h, используется видеоадаптером CGA, для установки режима работы. D0 Используется в текстовых режимах. При D0 равном нулю, отображается 40 символов...
6.4. Регистр выбора цвета. (Color Select Register)
Этот регистр, доступный для записи через порт 3D9h, используется видеоадаптером CGA для установки цвета рамки экрана и установки цветовой палитры. Цвет рамки может быть выбран из 16 возможных цвет...
6.5. Регистр состояния (Input Status Register - ISR0)
Регистр позволяет получить различную информацию о состоянии видеоадаптера. Содержимое регистраможно прочитать через порт, имеющий адрес 3DAh. Регистр состояния доступен только для чтения. Регистр...
6.6. Регистр сброса триггера-защелки светового пера (Light Pen Latch Reset Register - LPLRR)
Доступ к регистру производится через порт 3DBh. Любая операция записи (OUT) в этот регистр сбрасывает триггер-защелку светового пера....
6.7. Регистр установки триггера-защелки светового пера (Light Pen Latch Set Register - LPLRR)
Доступ к регистру производится через порт 3DCh. Любая операция записи (OUT) в этот регистр вызывает установку триггера-защелки светового пера....








Начало    




На bobs-tube.com teen sex. | elit istanbul eskort ajans? Luxuryescortsistanbul.com dan istanbul Rus T?rkiye eskort.