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

       

Функция _setvideomoderows()


Данная функция, также как и функция _setvideomode(), позволяет изменить режим работы видеоадаптера. Но для текстовых режимов она позволяет устанвить нестандартное число строк.

Функция имеет следующий прототип:

short _setvideomoderows( short mode, short rows );

Первый параметр функции - mode, определяет режим, в который переводится видеоадаптер. Этот параметр может быть равен одной из следующих констант: _DEFAULTMODE, _ERESCOLOR, _ERESNOCOLOR, _HERCMONO, _HRES16COLOR, _HRESBW, _MAXCOLORMODE, _MAXRESMODE, _MRES4COLOR, _MRES16COLOR, _MRES256COLOR, _MRESNOCOLOR, _ORESCOLOR, _TEXTBW40, _TEXTBW80, _TEXTC40, _TEXTC80, _TEXTMONO, _VRES2COLOR, _VRES16COLOR. Эти константы описаны в таблице 16.1:

Константа Режим Характеристики

_TEXTBW40 0, 1 текстовый, 40x25, 16 градаций серого цвета

_TEXTC40 0, 1 текстовый, 40x25, 16 цветов

_TEXTBW80 2, 3 текстовый, 80x25, 16 градаций серого цвета

_TEXTC80 0, 1 текстовый, 80x25, 16 цветов

_MRES4COLOR 4, 5 графический, 320x200, 4 цвета

_MRESNOCOLOR 4, 5 графический, 320x200, 4 градации серого цвета

_HRESBW 6 графический, 640x200, 2 градации серого цвета

_TEXTMONO текстовый, 80x25, монохромный

_HERCMONO Hercules графический, 720x348, монохромный

_MRES16COLOR 0Dh графический, 320x200, 16 цветов

_HRES16COLOR 0Eh графический, 640x200, 16 цветов



_ERESNOCOLOR 0Fh графический, 640x350, монохромный

_ERESCOLOR 10h графический, 640x350, 16 цветов

_VRES2COLOR 11h графический, 640x480, 2 цвета

_VRES16COLOR 12h графический, 640x480, 16 цветов

_MRES256COLOR 13h графический, 320x200, 256 цветов

_ORESCOLOR Olivetti графический, 640x400, 1 из 16 видеоадаптер фирмы Olivetti

_DEFAULTMODE режим, используемый видеоадаптером по умолчанию

_MAXRESMODE графический режим с наивысшим разрешением доступным на данном видеоадаптере

_MAXCOLORMODE графический режим с наибольшим числом цветов поддерживаемых видеоадаптером

Таблица 16.1 Режимы работы видеоадаптеров.

Если устанавливается текстовый режим видеоадаптера, то второй параметр функции (rows), задает число строк на экране дисплея.

Второй параметр может быть равен константе _MAXTEXTROWS. В этом случае устанавливается максимально возможное для данной видеосистемы число строк. У видеоадаптера VGA это 50, EGA - 43, а у других адаптеров - 25 строк в текстовых режимах.

Функция возвращает число строк на экране дисплея или 0, если произошла ошибка (запрашиваемый режим не поддерживается видеоадаптером).



Содержание раздела