int timer(char, SYSTIMER *); // работа с часами // реального времени void tm_delay(int); // формирование задержки по таймеру void tm_sound(int, int); // формирование тона заданнной // длительности с использованием // таймера
void rnd_set(int); // инициализация генератора // случайных чисел int rnd_get(void); // получение случайного числа
typedef struct _AUX_MODE_ {
union {
struct { unsigned char len : 2, // длина символа stop : 1, // число стоп-битов parity : 2, // контроль четности stuck_parity : 1, // фиксация четности en_break_ctl : 1, // установка перерыва dlab : 1; // загрузка регистра делителя } ctl_word;
char ctl;
} ctl_aux;
unsigned long baud; // скорость передачи данных
} AUX_MODE;
int aux_init(AUX_MODE *, int, int); // инициализация // асинхронного адаптера
void aux_stat(AUX_MODE *, int); // определение режима // асинхронного адаптера void aux_outp(char, int); // вывод символа в // асинхронный адаптер char aux_inp(int); // ввод символа из асинхронного // адаптера
// Прототипы функций для работы с расширенной // памятью.
unsigned XMM_Installed();
long XMM_Version(void); long XMM_RequestHMA(unsigned); long XMM_ReleaseHMA(void); long XMM_GlobalEnableA20(void); long XMM_GlobalDisableA20(void); long XMM_EnableA20(void); long XMM_DisableA20(void); long XMM_QueryA20(void); long XMM_QueryLargestFree(void); long XMM_QueryTotalFree(void); long XMM_AllocateExtended(unsigned); long XMM_FreeExtended(unsigned); long XMM_MoveExtended(struct XMM_Move *); long XMM_LockExtended(unsigned); long XMM_UnLockExtended(unsigned); long XMM_GetHandleLength(unsigned); long XMM_GetHandleInfo(unsigned); long XMM_ReallocateExtended(unsigned,unsigned); long XMM_RequestUMB(unsigned); long XMM_ReleaseUMB(unsigned);
struct XMM_Move { unsigned long Length; unsigned short SourceHandle; unsigned long SourceOffset; unsigned short DestHandle; unsigned long DestOffset; };
// Прототипы функций для работы с дополнительной // памятью.
int ems_init(void); int ems_stat(void); int ems_fram(unsigned *); int ems_page(unsigned *, unsigned *); int ems_open(int, int *); int ems_clos(int *); int ems_map(int, int, int); int ems_ver(char *);