_OvrlInitEms

Функция            Инициализирует систему подкачки памяти расширения
                   для администратора оверлеев.

Синтаксис          #include
                   int cdecl far _OvrlInitEms(unsigned emsHandle,
                   unsigned firstPage, unsigned pages);

Файл, содержащий   dos.h
прототип

Описание           _OvrlInitEms проверяет наличие памяти расширения
                   (ищет драйвер EMS), и выделяет в ней память. Если
                   параметр emsHandle равен 0, то администратор
                   оверлеев выделяет страницы памяти EMS и использу-
                   ет их для подкачки оверлеев. Если emsHandle не
                   равен 0, то он должен быть допустимым дескрипто-
                   ром EMS; его будет использовать администратор
                   оверлеев. В этом случае вы должны указать
                   firstPage, с которой должна начинаться подкачка,
                   в этой области.

                   В обоих случаях, ненулевой параметр pages опреде-
                   ляет максимальное число страниц, которые могут
                   быть использованы администратором оверлеев.

Возвращаемое       _OvrlInitEms возвращает 0, если администратор овер-
значение           леев может использовать для подкачки память расши-
                   рения.

Переносимость      _OvrlInitEms уникальна для Turbo C++.

Смотрите также      _OvrlInitExt

Пример:

#include

int main(void)
{
   /* запрос к администратору оверлеев на использование
      16 страниц (256К) памяти расширения */
   _OvrlInitEms(0,0,16);
    .
    .
    .
}




   cpp

     _OvrlInitExt

Функция            Инициализирует систему подкачки дополнительной
                   памяти для администратора оверлеев.

Синтаксис          #include
                   int cdecl far _OvrlInitExt(unsigned long
                   startAddress, unsigned long length);

Файл, содержащий   dos.h
прототип

Описание           _OvrlInitExt проверяет наличие дополнительной
                   памяти, используя известные методы поиска других
                   программ, также использующих дополнительную па-
                   мять, и выделяет в ней память. Если параметр
                   startAdress равен 0, администратор оверлеев опре-
                   деляет начальный адрес и использует, чаще всего,
                   размеры оверлеев. Если startAdress не равен 0, то
                   администратор оверлеев использует память выше
                   этого адреса.

                   В обоих случаях, ненулевой параметр length опре-
                   деляет максимальний размер памяти, который может
                   быть использован администратором оверлеев.

Возвращаемое       _OvrlInitExt возвращает 0, если администратор овер-
значение           леев может использовать для подкачки дополнитель-
                   ную память.

Переносимость      _OvrlInitExt уникальна для Turbo C++.

Смотрите также      _OvrlInitEms

Пример:

#include

int main(void)
{
    /* использовать дополнительную память с адреса 0x200000L (2Mб)
       причем столько, сколько необходимо */
   _OvrlInitExt(0x200000L,0);
    .
    .
    .
}