logo search
TurboProlog / Документация / TOM_1

System/3

Эта расширенная версия предиката system обладает двумя дополнитель-

ными возможностями: с помощью нее можно узнать уровень ошибки ДОС, а так-

же переопределить режим вывода на экран системы во время работы с ней.

Вид предиката:

system(DosCommandString, ResetVideo, DOSErrorLevel)

/* (i,i,o)*/,

где переменная DOSErrorLevel связывается со значением уровня ошибки ДОС.

Подробнее об этом прочтите в техническом описании ДОС.

Переменная ResetVideo сообщает о необходимости возвращения видеоап-

паратуры в состояние, в котором она находилась перед обработкой предика-

та. Значение ResetVideo=1 возвращает ее в первоначальное положение,

ResetVideo=0 не возвращает. Если ResetVideo=0, то выполнение программы

будет поддерживаться в экранном режиме заданном вами, даже если он не

поддерживается Турбо Прологом. (Для информации об установке режима экрана

см. справочное руководство по видеоаппаратуре).

Другими словами, если внешняя программа MYSETMD задает видеоаппара-

туре режим, который не поддерживается Турбо Прологом, обращение к ДОС че-

рез предикат system в программе на Турбо Прологе может заставить програм-

му работать в неподдерживаемом режиме:

system("mysetmd",O, DOSErrorLebel).

Заметьте, что внешняя программа должна быть совместимой с аппарату-

рой хотя бы на уровне BIOS.