Листинг 7-2. EMMCONST.H
------------------------------------------------------------------
/*
Общие константы спецификации расширенной памяти
*/
#define EMM_INT 0x67 /*программное прерывание
расширенной памяти*/
#define HANDLE_NAME_LENGTH 8 /*кол-во байт в имени об-
работчика*/
#define PAGE_FRAMES 4 /*максимальное кол-во фи-
зических страниц*/
#define PAGE_SIZE 16384 /*кол-во байтов в странице
спецификации расширенной памяти*/
#define EMM_DEVICE "EMMXXXX0" /*имя драйвера устройства
менеджера расширенной памяти*/
#define MAX_HANDLE 255 /*максимальное кол-во обра-
ботчиков менеджера расширенной памяти*/
/*
Константы для кодов состояния спецификации расширенной памяти
*/
#define FRSTEMERR 0x80 /*номер первой ошибки ме-
неджера расширенной памяти*/
#define LASTEMERR 0xA4 /*номер последн. ошибки ме-
неджера расширенной памяти*/
#define FUNCCOK 0x00 /*указанная функция завер-
шилась без ошибок*/
#define EMDRVSWF 0x80 /*программная ошибка драй-
вера менеджера расширенной памяти*/
#define EMDRVHWF 0x81 /*драйвер менеджера расши-
ренной памяти обнаружил ошибку
в аппаратуре*/
#define EMDRVBSY 0x82 /*драйвер менеджера расши-
ренной памяти занят
(других не осталось)*/
#define HANDLNFD 0x83 /*не найден указанный обра-
ботчик*/
#define FUNCCUND 0x84 /*код функции неопределен*/
#define HANDLINS 0x85 /*нет доступных обработчи-
ков*/
#define MAPCXPRO 0x86 /*произошла ошибка восста-
новления контекста отображения*/
#define TOTPGINS 0x87 /*не хватает страниц для
запроса*/
#define UNAPGINS 0x88 /*не хватает размещенных
страниц для запроса*/
#define LPAGE2SM 0x89 /*нуль логических страниц
был запрошен от функции, сов-
местимой со спецификацией рас-
ширенной памяти LIM 3.2*/
#define LPAGERNG 0x8A /*логическая страница вне
диапазона указанного обработчика*/
#define PPAGE2BG 0x8B /*физическая страница вне
диапазона*/
#define MRCSAFUL 0x8C /*область сохранения кон-
текста регистров отображения
полна*/
#define MRCSTDUP 0x8D /*у стека контекста регист-
ров отображения уже есть кон-
текст, связанный с указанным обра-
ботчиком*/
#define MRCSTNFD 0x8E /*у стека контекста регист-
ров отображения нет контекста,
связанного с указанным обработ-
чиком*/
#define SFUNCUND 0x8F /*была запрошена неопреде-
ленная подфункция*/
#define ATTRBUND 0x90 /*тип атрибута неопределен*/
#define NVSTGUNS 0x91 /*система не поддерживает не-
разрушаемость*/
#define MREGNOVW 0x92 /*во время передвижки области
произошла частичная перезапись источника*/
#define MRFGN2SM 0x93 /*область спецификации расши-
ренной памяти слишком велика
для указанного обработчи-
ка*/
#define MREGNOVL 0x94 /*область обычной памяти и
область расширенной памяти перек-
рываются*/
#define LPGOF2BG 0x95 /*смещение внутри логической
страницы превышает размер логи-
ческой страницы*/
#define MREGN2BG 0x96 /*длина области превосходит
предел в 1 Мбайт*/
#define MREGNDUP 0x97 /*область-источник и область-
приемник расширенной памяти имеют
один и тот же обработчик и перек-
ры
ваются*/
#define MREGNUND 0x98 /*неопределенный/неподдержи-
ваемый типы памяти-источника и
приемника*/
#define AMRSNFD 0x9A /*указанный альтернативный
набор регистров не существует*/
#define AMDRSINS 0x9B /*все альтернативные наборы
регистров отображения/ПДП заняты*/
#define AMDRSUNS 0x9C /*альтернативные наборы ре-
гистров отображения/ПДП не под-
держиваются*/
#define AMDRSUND 0x9D /*указанный альтернативный
набор регистров отображения/ПДП
не определен, не размещен или яв-
ляется текущим набором*/
#define DDMACUNS 0x9E /*назначенные каналы ПДП не
поддерживаются*/
#define DDMACNFD 0x9F /*назначенный указанный ка-
нал ПДП не существует*/
#define HNDVLNFD 0xA0 /*не найдено значение, соот-
ветствующее указанному имени об-
работчика*
/
#define HNDNMDUP 0xA1 /*обработчик с указанным
именем уже существует*/
#define MREGNWRP 0xA2 /*попытка циклического пере-
хода 1-Мбайтного адресного прост-
ранства во время передвижки или
обмена*/
#define USRDSFMT 0xA3 /*содержимое структуры дан-
ных пользователя, переданное
функции искажено или бессмысленно
*/
#define OPSYSACC 0xA4 /*операционная система зап-
рещает доступ к данной функции*/
------------------------------------------------------------------
|