- •Алфавит Паскаля:
- •Другие переменные, используемые здесь при описании процедур
- •Коды цветов
- •Символы
- •Стандартные функции turbo-pascal Арифметические функции
- •Тригонометрические функции
- •Процедуры и функции преобразования
- •Функции, используемые только в
- •Функции для работы с файлами
- •Функции для работы с памятью
- •Функции ввода и вывода
- •Драйверы в/в пользователя (для логических устройств)
- •Скалярные функции
- •Функции для работы с экраном и клавиатурой
- •Действия над строками
- •Смешанные функции
- •Графические функции turbo-pascal
- •Библиотеки turbo-pascal
- •Синтаксис программ:
- •Синтаксис библиотек
Смешанные функции
DELAY (I: integer) - задержка на I миллисекунд.
EXIT - аварийный выход из подпрограммы.
FILLCHAR (V, I, VAL) - заполняет I - байтов памяти, начиная с первого байта переменной V, символом либо переменной типа byte(VAL).
HALT - передача управления операционной системе.
MOVE (VI, V2, I: integer) - запись первых I байтов переменной VI, в первые I байтов переменной V2.
NOSOUND - выключает внутренний динамик.
PARAMCOUNT - возвращает число параметров, переданных програм- мой в буфер командной строки.
PARAMSTR (I: integer) - параметр с номером I из командной строки.
SIZEOF (V) - число байт памяти, выделенных переменной или типу V.
SOUND (герц : word) - включает внутренний динамик.
Графические функции turbo-pascal
TEXTCOLOR (С) - установка цвета символов на экране.
TEXTBACKGROUND (С) - установка цвета фона (С = 0,..., 8).
TEXTMODE (W) - установка кода размера экрана (1-40 символов в строке, 3-80 символов).
WHEREX: integer - координата X позиции курсора.
WHEREY: integer - координата Y позиции курсора.
WINDOW (XI, Yl, X2, Y2) - часть экрана, в которой будет распола гаться текст (X1,Y1-координаты левого верхнего угла; Х2, Y2 -координаты правого нижнего угла).
ARC (X, Y, ANG, RAD, С) - рисует дугу с центром в X,Y; радиусом -RAD; углом - ANG (может принимать положительные и отрицательные значения); цвет дуги задается в С (С = О, 1, 2, 3).
BAR (xl, yl, x2, у 2) - рисует столбец, используя стандартный тип и цвет закраски.
BAR3D (xl, yl, x2, y2: integer; глубина: word; вершина: Boolean) -используя текущий тип и цвет закраски рисует трехмерный паралелепипед.
CIRCLE (X, Y, RAD, С) - рисует окружность с центром в X, Y; радиусом RAD; цвет окружности задается в С (С = 0, 1,2, 3).
CLEARDEVICE - процедура очищает устройство и сбрасывает все графические параметры, устанавливая для них те значения, которые предусмотрены по умолчанию (текущий указатель, палитру, цвет, область вывода). Процедура перемещает текущий указатель в точку с координатами (О, О).
CLEARVIEWPORT - очишает текущую область просмотра. При этом используется цвет, сохраненный в Palette(O).
CLOSEGRAPH - процедура восстанавливает исходный режим экрана (который был установлен до инициализации графики) и освобождает в динамически распределяемой области память, используемую графическим драйвером.
COLORTABLE (С1, С2, СЗ, С4) - задает каждому из перечисленных цветов свои оттенки (используется с процедурой PALETTE).
DELLINE - удаляется строка на которой расположен курсор. При этом все строки, расположенные ниже, перемещаются на одну строку вверх (для этого используется программа листания экрана базовой системы ввода-вывода). Внизу экрана добавляется новая строка.
DETECTGRAPH (var драйвер, режим : integer) - возвращает значения выбранного режима и драйвера, которые можно передать в качестве параметров процедуре InitGraph для загрузки соответствующего драйвера:
Detect = 0; { автоматическое распознавание } CGA= 1;
MCGA = 2;
EGA = 3;
EGA64 = 4;
EgaMono = 5;
Reserved = 6;
HercMono = 7;
ATT400 = 8;
VGA = 9;
PC3270= 10;
DRAWPOLY (числ_коорд : word; var коорд_верш) - используя текущий тип прямой и текущий цвет рисует контур многоугольника. Параметр "коорд_верш" является нетипизованным, который содержит координаты каждого пересечения в многоугольнике. Параметр
"числ_коорд" задает число координат в "коорд_верш". Координата состоит из двух слов: значения х и у.
ELLIPSE (X, Y: integer; нач_угол, кон_угол^о^; радХ, радУ : word) -рисует эллиптическую дугу от начального угла до конечного угла, используя (X, Y) в качестве точки центра.
FILLPATTERN (XI, Yl, X2, Y2, С) - заполняет прямоугольное окно с осями координат X1,Y1,X2,Y2 в соответствии с образцом, заданным в PATTERN.C - цвет окна.
FILLCREEN (С) - задает цвет внутри окна.
FILLELLIPSE (X, Y: integer; Храдиус, Урадмус: word) - рисует эллипс.
FILLPOPY (числ_коорд : word; var коорд_верш) - заполняет многоугольник.
FILLSHAPE (X, Y, Cl, C2) - заполняет область внутри замкнутой фигуры с координатами X,Y цветом С1. Снаружи фигуры - цветом С2.
FLOODFILL (х, у, граница : word) - заполняет ограниченную облать, используя текущий заполнитель.
GETDOTCOLOR (X, Y) - код цвета точки с координатами X,Y.
GETPIC (V, XI, Yl, X2, Y2) - копирует прямоугольную область с координатами XI, Y1, Х2, Y2 в переменную V.
GETARCCOORDS (var координаты : ArcCoordsType) - позволяет пользователю выдавать запрос о координатах последней команды Arc.
GETASPECTRATIO (var Хк, yk : word) - возвращает действующую разрешающую способность графического экрана, с помощью которого можно вычислить коэффициент относительного удлиннения (xk,yk).
GETCOLOR: word - возвращает текущее значение основного цвета, установленное при предыдущем успешном обращении к процедуре SetColor. GETBKCOLOR: word - возвращает текущее значение фонового цвета.
GETDEFAULTPALETTE (var палитра: PaletteType) - возвращает запись описания палитры.
GETFILLPATTERN (var образец_заполнителя: Fill-PatternType) -возвращает текущий образец заполнителя, заданный последним обращением к процедуре SetFillPattern.
GETFILLSETINGS (var информ_заполн: FillSettingsType) - позволяет выдавать запрос о текущем типе заполнителя и его цвете, которые установлены процедурами SetFill-Style или SetFillPattern.
GETGRAPHMODE - возвращает текущий графический режим.
GETIMAGE (xl, yl, x2, y2,: word; var бит_масс) - сохраняет в буфере двоичный образ заданной области экрана.
GETLINESTYLE (var Linelnfo: LineSettingsType) - возвращает текущий тип линии, образец линии и ее толщину, установленные процедурой SetLineStyle.
GETMAXCOLOR: word - возвращает наибольшее значение цвета, которое можно передать процедуре SetColor.
GETMAXMODE: word - возвращает для текущего загруженного драйвера максимальное значение номера режима.
GETMAXX: integer - возвращает для текущего графического режима и драйвера самый правый столбец (разрешение по х).
GETMAXY: integer - возвращает для текущего графического режима и драйвера самую нижнюю строку (разрешение по у).
GETMODENAME (номер_режима: integer): string - возвращает стро ку, содержащую имя заданного графического режима.
GETMODERANGE (GraphDriver: integer; var LoMode, HiMode: integer) - для данного драйвера возвращает наименьший и наибольший графический режим.
GETPALETTE (var палитра : возвращает текущую палитру и ее размер.
GETPALETTESIZE: word - возвращает размер таблицы палитры цветов.
GETPIXEL (X, Y: integer): word - получает значение элемента изображения в точке X,Y.
GETTEXTSETTINGS (var Textlnfo: TextSettingsType) - возвращает текущий тип текстового шрифта, его направление, размер и выравнивание, установленные с помощью процедур SetTextStyle и SetText Justify.
GETVIEWSETTINGS (var ViewPort: ViewPortType) - позволяет пользователю выдать запрос о текущей области просмотра на экране и параметрах "вырезанного" изображения.
GETX: integer - возвращает Х-координату текущего указателя (СР).
GETY: integer - возвращает Y-координату текущего указателя (СР).
GRAPHDEFAULTS - сбрасывает установленные для графических средств параметры.
GRAPHERRORMSG (ErrorCode : integer): string - для заданного кода ошибки (ErrorCode) выдает строку сообщения об ошибке.
GRAPHRESULT: integer - возвращает для последней графической операции код ошибки.
HIGHVIDEO - устанавливает для символов подсветку.
IMAGESIZE (xl, yl, x2, y2: word): word - возвращает число байтов, необходимых для сохранения прямоугольной области экрана.
INITGRAPH (var граф^црайвер: integer; var граф_режим: integer; путь^црайвер : string) - инициализирует графическую систему и переводит аппаратуру в графический режим: { графические режимы для каждого драйвера } CGAC1 = 0; { 1 палитра цветов 320x200: красный, желтый, зеленый; 1 страница } CGAC2 = 1; { 2 палитра цветов 320x200: светло-бирюзовый, малиновый, белый; 1 страница } CGAHi = 2; { 640x200, 1 страница }
MCGAC1 = 0 { 1 палитра цветов 320x200: красный, желтый, зеленый; 1 страница}
MCGAC2 = 1; { 2 палитра цветов 320x200: светло-бирюзовый, малиновый, белый; 1 страница }
MCGAMed = 2; { 640x200, 1 страница }
MCGAHi = 3; { 640x480, 2 цвета, 1 страница }
EGALo = 0; { 640x200, 4 страницы }
EGAHi = 1; { 640x350, 16 цветов, 2 страницы }
EGA64Lo = 0; { 640x200, 16 цветов, 1 страница }
EGA64HJ = 1; { 640x350, 4 цвета, 1 страница }
EGA64MonoHi = 3; { 640x350, 64К на плату, 1 страница - 256К на плату, 4 страницы }
HercMonoHi = 0; { 720x348, 2 страницы }
АТТ400С1 = 0; { 1 палитра цветов 320x200: красный, желтый, зеленый; 1 страница }
АТТ400С2 = 1; { 2 палитра цветов 320x200: светло- бирюзовый, малиновый, белый; 1 страница; 20 - 640x200, 1 страница }
ATT400Med = 2; { 640x200, 1 страница }
ATT400Hi = 3; { 640x200, 1 страница } VGALo = 0; { 640x200, 16 цветов, 4 страницы }
VGAMed = 1; { 640x350, 16 цветов, 2 страницы }
VGAHi = 2; { 640x480, 16 цветов, 1 страница } VGANi2 = 3; { 640x480, 2 цвета, 1 страница }
PC3270Hi = 0; { 720x350, 1 страница }
INSTALLUSERDRIVER (имя: string; AutoDetectPtr: pointer): word -включает в таблицу устройств фирмы BGI (Борланд) драйверы, поставляемый другими фирмами.
INSTALLUSERFONT (имя_файла_шрифта : string) - устанавливает новый шрифт, не предусмотренный в системе фирмы Борланд.
LINE (xl, yl, х2, у2 : integer) - рисует прямую линию из точки (xl, yl) в точку (х2, у2).
LINEREL (Dx, Dy) - проводит прямую в точку, заданную относительным расстоянием от текущего указателя (СР).
LINETO (х, у : integer) - рисует прямую линию из точки, в которой находится текущий указатель, в точку (х,у).
LOWVIDEO - выбирает символы с пониженной яркостью. MOVETO (х, у: integer) - перемещает текущий графический указатель (СР) в точку (х,у).
MOVEREL (Dx, Dy : integer) - перемещает текущий указатель (СР) на расстояние, заданное относительными координатами от его текущей позиции.
NORMVIDEO - задает необходимость считывания текущего атрибута текста из позиции курсора во время загрузки и запуска программы.
OUTTEXT (строка : string) - пересылает строку на устройство вывода в то место, в котором находится текущий указатель.
OUTTEXTXY (X, Y: integer; текст_строка: string) - пересылает строку на устройство вывода.
PATTERN (DESIGN) - определяет образец, используемый процедурой FILLPATTERN.DESIGN - идентификатор массива 8*8 типа byte. Последовательность 1 и 0 определяет образец битов, которые будут изображены цветом С.
PIESLICE (х, у: integer; нач_угол, кон_угол, радиус: word) - рисует и заполняет цветом сектор круга. Точка (X,Y) при этом используется в качестве центра окружности, а сектор рисуется от начального угла до конечного угла.
PUTIMAGE (xl, yl, x2, y2,: word; var бит_масс; дв_опер : word) -выводит из буфера на экран двоичный образ заданной области экрана.
PUTPIXEL (х, у: integer; эл_изображ: word) - строит элемент изображения) в точке (х, у).
PUTPIC (V, X, Y) - копирует содержимое переменной V в область экрана, заданную левой верхней координатой X,Y
RECTANGLE (xl, yl, x2, x2 : integer) - рисует прямоугольник, используя текущий цвет и тип строки.
REGISTERBGIDRIVER (драйвер: pointer): integer - регистрирует в графической системе загруженный пользователем или скомпонованный с программой драйвер формата BGI (формат фирмы Борланд).
REGISTERBGIFONT (шрифт : pointer) : integer - регистрирует загружаемый пользователем или скомпонованный с программой шрифт формата BGI (формат фирмы Борланд) в графической системе. RESTORECRTMODE - возвращает режим экрана в исходное состояние (то, какое существовало до инициализации графики).
SECTOR (х, у: integer; нач_угол, кон_угол, ХРадиус, УРадиус : word) -вычерчивает и заполняет эллиптический сектор.
SETACTIVEPAGE (страница : word) - устанавливает для графического вывода активную страницу.
SETALLPALETTE (var палитра) - изменяет все цвета палитры на указанные.
SETASPECTRATIO (Xasp, Yasp, : word):word - изменяет принятое по умолчанию значение коэффициента относительного удлиннения.
SETBKCOLOR (цвет : word) - используя палитру устанавливает текущий фоновый цвет.
SETCOLOR (цвет : word) - используя палитру устанавливает текущий цвет рисунка.
SETFILLPATTERN (Pattern: FillPatternType; Color : word) - выбирает заданный пользователем образец закраски.
SETFILLSTYLE (образец: word; цвет: word) - устанавливает тип закраски и ее цвет:
{образцы заполнителей для процедур Get/SetFill/Style} Empty Fill = 0; { фоновый цвет }
SolidFill = 1; { заданный цвет }
LineFill = 2; { — }
LtSlashFill = 3; {///} SlashFill = 4; { жирными линиями ///}
BkSlashFill = 5; { жирными линиями \\\} LtBkSlashFill = 6; {\\\} HatchFill = 7; { редкой штриховкой }
XHatchFill=8; {часто пересекающейся штрихов. } InterLeaveFill = 9; { прерывистой линией } WideDotFill =10; { редкими точками } CloseDotFill =11; { частыми точками }
SETGRAPHMODE (режим : integer) - устанавливает для системы графический режим и очищает экран.
SETLINESTYLE (тип_строки: word; образец: word; толщина : word) - устанавливает текущую толщину и тип линии:
SolidLn = 0; { непрерывныя линия }
DottedLn = 1; { линия из точек }
CenterLn = 2; { линия из точек и тире }
DashedLn = 3; { пунктирная линия }
UserDilLn=4; { тип, определяемый пользователем} Norm Width = 1; {нормальная толщина }
Thick Width = 3; { жирная линия }
SETPALETTE (ном_цвета : word; цвет : byte) - изменяет один из цветов палитры в соответствии с параметрами "ном_цвета" и "цвет".
SETRGBPALETTE (номер_цвета, RedVavue, Green Value, BlueValue : integer) - позволяет изменить записи палитры для драйверов IBM 8514 и VGA.
SETTEXTJUSTIFY (гориз, верт : word) - устанавливает значения выравнивания текста, которые используются процедурами OutText и OutTextXY.
SETTEXTSTYLE (шрифт: word; направление: word; разм_символа : CharSizeType) - устанавливает текущий шрифт, тип и коэффициент размера символа.
SETUSERCHARSIZE (MultX, DivX, MultY, DivY: word) - позволяет пользователю изменять высоту и ширину символа для "штриховых" шрифтов.
SETVTEWPORT (xl, yl, х2, у2 : word; V: boolean) - устанавливает для графического вывода текущую область просмотра или окно.
SETVISUALPAGE (страница : word) - задает номер отображаемой графической страницы.
SETWRITEMODE (реж_записи : integer) - устанавливает режим записи при вычекчивании линии:
CopyPut = 0; { MOV }
XORPut=l; {XOR}
TEXTHEIGHT (текст_строка : string): word - возвращает высоту строки в элементах изображения.
TEXTMODE (режим : integer) - выбирает указанный текстовый режим:
BW40 = 0; { 40x25, ч/б на цветном адаптере }
С40 = 1; { 40x25, цветной на цветном адаптере}
BW80 = 2; { 80x25, ч/б на цветном адаптере }
С80 = 3; { 80x25, цветной на цветном адаптере}
Mono = 7; { 80x25, ч/б на одноцветном адаптере }
FontSxS = 256; { для адаптеров EGA/VGA (50 строк)}
С40 = С040; { для совместимости с версией 3.0 }
С80 = С080; { для совместимости с версией 3.0 }
TEXTWIDTX (текст_строка : string): word - возвращает ширину строки в элементах изображения.
