TURBO PASCAL

Новости       

Программы

Turbo Pascal

Игры

Документация

"Странности"

FAQ

Ссылки

Благодарности 

Гостевая книга

Спонсор

От автора

 

ПРИЛОЖЕНИЕ  9

Модуль  CRT

Модуль CRT содержит подпрограммы управления текстовым выводом на экран дисплея, звуковым генератором и чтения  с  клавиатуры.

В режиме текстового вывода координаты  экрана  следующие: верхний левый угол <1,1>, нижний правый <WindMax>, причем  горизонтальная координата возрастает  слева  направо,  а  вертикальная - сверху вниз. Если на экране активизировано окно,  то все координаты определяются относительно границ окна,  за  исключением процедуры Window (здесь координаты  всегда  задаются относительно границ экрана).

Для  чтения  с  клавиатуры  используются  две функции: KeyPressed и ReadKey. Функция KeyPressed определяет факт нажатия на любую клавишу и не приостанавливает дальнейшее исполнение программы. Функция ReadKey читает расширенный код  нажатой клавиши и ожидает действий пользователя.

Управление звуковым генератором строится по схеме   Sound - Delay - NoSound. Первая процедура включает генератор и генерирует звук нужного тона.  Вторая  -  приостанавливает  работу программы на заданное  число  миллисекунд  реального  времени. Третья - отключает звуковой генератор.

КОНСТАНТЫ

CRT - режимы:

  BW40          = 0;            { 40x25, черно-белый }

  CO40          = 1;             { 40x25, цветной }

  BW80          = 2;            { 80x25, черно-белый }

  CO80          = 3;            { 80x25, цветной }

  Mono          = 7;             { 80x25, монохромный }

  Font8x8       = 256;       { добавка для EGA (80x43) или VGA (80x50) }

Константы CRT- режимов для совместимости с версией  3.0:

  C40           = CO40;

  C80           = CO80;

Константы цвета фона и символов:

  Black               = 0;            {черный}

  Blue                 = 1;            {голубой}

  Green              = 2;            {зеленый}

  Cyan                = 3;            {бирюзовый}

  Red                  = 4;            {красный}

  Magenta         = 5;            {малиновый}

  Brown            =  6;            {коричневый}

  LightGray     =  7;            {светло-серый}

Константы цвета символов:

  DarkGray          = 8;            {темно-серый}

  LightBlue          = 9;            {светло-голубой}

  LightGreen       = 10;          {светло-зеленый}

  LightCyan         = 11;          {светло-бирюзовый}

  LightRed           = 12;          {светло-красный}

  LightMagenta  = 13;          {светло-малиновый}

  Yellow                = 14;          {желтый}

  White                 = 15;          {белый}

  Blink                 = 128;         {бит мерцания}

ПЕРЕМЕННЫЕ

  CheckBreak: Boolean;   { Реакция на Ctrl-Break }

  CheckEOF: Boolean;     { Реакция на Ctrl-Z - end of file}

  DirectVideo: Boolean;   { Разрешение/запрещение прямой  работы с видеопамятью }

  CheckSnow: Boolean;    { Реакция на "снег" монитора }

  LastMode: Word;           { Хранение последнего текстового режима}

  TextAttr: Byte;               { Текущий текстовый атрибут}

  WindMin: Word;            { Координаты <X,Y> верхнего левого угла текущего окна }

  WindMax: Word;           { Координаты <X,Y> нижнего правого угла текущего окна }

ПРОЦЕДУРЫ И ФУНКЦИИ

·       procedure AssignCrt(var F: Text);

связывает с файловой переменной устройство ввода/вывода CRT.

·       function KeyPressed: Boolean;

возвращает значение True, если на клавиатуре была нажата любая клавиша.

·       function ReadKey: Char;

читает символ с клавиатуры без эхо повтора и приостанавливает исполнение программы      до нажатия на любую клавишу, кроме Shift, Ctrl, Alt, CapsLock, NumLock, ScrollLock.

·       procedure TextMode(Mode: Integer);

устанавливает нужный текстовый режим.

·       procedure Window(X1,Y1,X2,Y2: Byte);

открывает текстовое окно на экране с абсолютными координатами <X1,Y2>, <X2,Y2>.

·       procedure GotoXY(X,Y: Byte);

перемещает курсор в нужное место <X,Y> активного окна.

·       function WhereX: Byte;

возвращает горизонтальную координату X текущего положения курсора в активном окне.

·       function WhereY: Byte;

то же для вертикальной координаты Y.

·       procedure ClrScr;

очищает окно и помещает курсор в левый верхний угол <1,1>.

·       procedure ClrEol;

удаляет все символы от текущей позиции курсора до конца строки без перемещения курсора.

·       procedure InsLine;

вставляет пустую строку в позицию курсора.

·       procedure DelLine;

удаляет строку, на которой находится курсор, и перемещает все строки, расположенные ниже нее, на строку вверх.

·       procedure TextColor(Color: Byte);

устанавливает цвет символов.

·       procedure TextBackground(Color: Byte);

устанавливает цвет фона.

·       procedure LowVideo;

устанавливает низкую яркость символов.

·       procedure HighVideo;

устанавливает высокую яркость символов.

·       procedure NormVideo;

устанавливает нормальную яркость символов.

·       procedure Delay(MS: Word);

приостанавливает работу программы на указанное число  миллисекунд MS.

·       procedure Sound(Hz: Word);

включает звуковой генератор с указанной звуковой частотой Hz.

·       procedure NoSound;

выключает звуковой генератор.

 

На первую страницу

Rambler's Top100 PROext: Top 1000
Rambler's Top100

(с) Все права защищены.

По всем интересующим вопросам прошу писать электронный адрес

Hosted by uCoz