Для таких экранов описываемая функция,
базовым адресам видеопамяти.
Для таких экранов описываемая функция, не переключая каких-либо
режимов аппаратных средств, лишь изменяет внутренние установки
CT II-драйвера. Переключения специальных режимов должны осуществляться
драйвером используемого видеоадаптера.
Виртуальный экран
Этот экран содержит больше строк и столбцов, чем физический.
Содержимое виртуального экрана отображается частями, вмещаемыми
физическим экраном. Если для ввода по Clipper-командам типа GET/READ
требуется больше экранного пространства, чем помещается в видимой
области, то CT II-драйвер автоматически перемещает видимую экранную
область в соответствии с движением курсора. Это перемещение происходит
при уходе курсора с одной или другой стороны за границу, установленную
параметром <nScrollBorder>. При этом обрабатываемая часть текста
остается видимой. Кроме того, видимая область виртуального экрана
может быть задана функцией FIRSTCOL().
Виртуальные экраны поддерживаются адаптерами CGA, EGA и VGA, а
также полностью их эмулирующими. Максимальное количество столбцов
виртуального экрана при размерах физического 25 строк на 80 столбцов,
что устанавливается вызовом CGA80() или MONOCHROME(), вычисляется
следующим образом:
nColumns := (MAXPAGE() + 1) * 2048 / 25
nMaxColumns := MIN(INT(nColumns / 2) * 2, 254)
При 8 видеостраницах значение nColumns будет > 255. Поэтому nMaxColumns
будет равен 254 столбцам, что соответствует максимально допустимому
значению аргумента функции SETMAXCOL(). Переключение обратно в режим с
числом столбцов, реально вмещаемым экраном, производится вызовом
описываемой функции с соответствующим значением параметра
<nLastColumn>, но без параметра <nScrollBorder>.
Примечания
. Невозможно обеспечить поддержку всех типов видеоадаптеров. Однако
можно приобрести видеоадаптеры, полностью соответствующие приведенному