Отдельные модули не могут использоваться, как оверлейные. В
частности, не пытайтесь использовать в качестве оверлейных моду-
лей следующие:
1. Модули, скомпилированные с директивой {$O-}. Если вы пы-
таетесь использовать как оверлейный модуль, который не
был скомпилирован с директивой {$O+}, то компилятор вы-
дает сообщение об ошибке. Такими неоверлейными модулями
являются модули System, Overlay, Crt, Graph, Turbo3 и
Graph3.
2. Модули, которые содержат драйверы прерываний. Из-за то-
го, что сама операционная система DOS имеет неоверлейную
структуру, модули, реализующие процедуры прерываний
(interrupt), не должны быть оверлейными. В качестве при-
мера такого модуля можно привести стандартный модуль
Crt, реализующий драйвер обработки прерывания, возникаю-
щего при нажатии клавиш Ctrl+Break.
3. Драйверы BGI или шрифты, зарегистрированные с помощью
вызова подпрограмм RegisterBGIdriver или
RegisterBGIfont.
Администратором оверлеев Borland Pascal полностью поддержи-
вается вызов оверлейных процедур с помощью указателей процедур. В
качестве примеров использования указателей процедур можно привес-
ти процедуры завершения и драйверы устройств для текстовых фай-
лов.
Аналогично, полностью поддерживается передача оверлейных
процедур и функций в качестве параметров процедурного типа и
присваивание оверлейных процедур и функций переменным процедурно-
го типа.