HOME ПРИМЕРЫ THANKS НОВИЧКАМ ДОКИ LINKS JavaScript Mail


 
В этот день много лет назад...
24 апреля. В 1919 году (105 лет назад) - Свержение в Литве Советского правительства.
 
 

Turbo Pascal Documentation

Процедура OvrInitEMS

Модуль Overlay


     Фукнция: Если это возможно, загружает оверлейный файл в
расширенную память (EMS).
     Описание: OvrInitEMS
     Примечания: Если имеется драйвер расширенной  памяти  и
имеется  достаточный объем такой памяти, то данная процедура
загружает все оверлеи в расширенную память и закрывает овер-
лейный файл. Последующие загрузки оверлеев сводятся просто к
быстрой  пересылке  их  из  памяти   в   память.   Процедура
OvrInitEMS  устанавливает  также  процедуру выхода, котороая
при завершении работы  программы  автоматически  освобождает
выделенную расширенную память.
      Возможные ошибки могут быть получены с помощью перемен-
ной  операционной среды OvrResult. Значение ovrOk говорит об
успешном  завершении,  ovrError  показывает,  что  процедура
OvrInit завершилась неудачно или не была вызвана, ovrIOError
говорит о том, что при чтении  оверлейного  файла  произошла
ошибка,  ovrNoEMSDriver означает, что не найден драйвер рас-
ширенной памяти, ovrNoEMSMemory - что для загрузки  оверлей-
ного  файла  в расширенной памяти нет достаточного простран-
ства.
     В случае ошибки подсистема управления  оверлеями  будет
продолжать работу, но оверлеи будут считываться с диска.
     Драйвер расширенной памяти должен отвечать  соглашениям
фирм Лотус, Интел и Микрософт (Expamded Memory Specification
- EMS). Если вы используете псевдодиск, размещенный в расши-
ренной  памяти, нужно убедиться в том, что команда, содержа-
щаяся в файле CONFIG.SYS и загружающая  драйвер  псевдодиска
оставляет  некоторый свободный объем расширенной памяти, ко-
торый может использовать ваша прикладная задача.
     Прочее:   См.   также   процедуры  OvrGetBuf,  OvrInit,
OvrSetBuf.
     Пример:

  use Overlay;
  const
  begin
    OvrInit('EDITOR.OVR');
    if OvrResult <> ovrOk then
    begin
       Writeln('Подсистема управления управления оверлеями
не установлена из-за ошибки');
       Halt(1);
    end;
    OvrInitEMS;
    case OvrResult of
     ovrIOError: Writeln('Ошибка ввода-вывода при чтении
                          оверлейного файла');
     ovrNoEMSDriver: Writeln('Не установлен драйвер
                              расширенной памяти');
      ovrNoEMSMemory('Не хватает объема расширенной памяти');
    else
     Writeln('Для более быстрой работы с оверляеми
              используется расширенная память');
   end;
  end.




HOME