|
|
1.1 root 1: /***
2: *dos.h - definitions for MS-DOS interface routines
3: *
1.1.1.2 ! root 4: * Copyright (c) 1985-1992, Microsoft Corporation. All rights reserved.
1.1 root 5: *
6: *Purpose:
7: * Defines the structs and unions used for the direct DOS interface
8: * routines; includes macros to access the segment and offset
9: * values of far pointers, so that they may be used by the routines; and
10: * provides function prototypes for direct DOS interface functions.
11: *
12: ****/
13:
14: #ifndef _INC_DOS
15:
16: #ifdef __cplusplus
17: extern "C" {
18: #endif
19:
20:
1.1.1.2 ! root 21: #ifndef MIPS
1.1 root 22: #if (_MSC_VER <= 600)
23: #define __cdecl _cdecl
24: #endif
1.1.1.2 ! root 25: #endif
1.1 root 26:
27:
28:
29: /* _getdiskfree structure (duplicated in DIRECT.H) */
30:
31: #ifndef _DISKFREE_T_DEFINED
32:
33: struct _diskfree_t {
34: unsigned total_clusters;
35: unsigned avail_clusters;
36: unsigned sectors_per_cluster;
37: unsigned bytes_per_sector;
38: };
39:
40: #define _DISKFREE_T_DEFINED
41:
42: #endif
43:
44:
45:
46: /* File attribute constants */
47:
48: #define _A_NORMAL 0x00 /* Normal file - No read/write restrictions */
49: #define _A_RDONLY 0x01 /* Read only file */
50: #define _A_HIDDEN 0x02 /* Hidden file */
51: #define _A_SYSTEM 0x04 /* System file */
52: #define _A_SUBDIR 0x10 /* Subdirectory */
53: #define _A_ARCH 0x20 /* Archive file */
54:
55: /* external variable declarations */
56:
1.1.1.2 ! root 57: #if defined(_WIN32_) || defined(_POSIX_)
! 58:
! 59: #ifdef _DLL
! 60:
! 61: #define _osversion (*_osversion_dll)
! 62: #define _osmajor (*_osmajor_dll)
! 63: #define _osminor (*_osminor_dll)
! 64: #define _baseversion (*_baseversion_dll)
! 65: #define _basemajor (*_basemajor_dll)
! 66: #define _baseminor (*_baseminor_dll)
! 67: #define _pgmptr (*_pgmptr_dll)
! 68:
! 69: extern unsigned int * _osversion_dll;
! 70: extern unsigned int * _osmajor_dll;
! 71: extern unsigned int * _osminor_dll;
! 72: extern unsigned int * _baseversion_dll;
! 73: extern unsigned int * _basemajor_dll;
! 74: extern unsigned int * _baseminor_dll;
! 75: extern char ** _pgmptr_dll;
1.1 root 76:
1.1.1.2 ! root 77: #else
! 78:
! 79:
! 80: extern unsigned int _osversion;
1.1 root 81: extern unsigned int _osmajor;
82: extern unsigned int _osminor;
83: extern unsigned int _baseversion;
84: extern unsigned int _basemajor;
85: extern unsigned int _baseminor;
1.1.1.2 ! root 86: extern char * _pgmptr;
! 87:
! 88: #endif
! 89:
! 90: #else /* ndef (_WIN32_ || _POSIX_) */
! 91:
! 92: extern unsigned int _osversion;
! 93:
! 94: #endif /* _WIN32_ */
! 95:
1.1 root 96:
97: /* function prototypes */
98:
99: unsigned _getdiskfree(unsigned, struct _diskfree_t *);
100:
101: #if !__STDC__
102: /* Non-ANSI name for compatibility */
103: #define diskfree_t _diskfree_t
104: #endif /* __STDC__ */
105:
106: /* restore default alignment */
107:
108:
109: #ifdef __cplusplus
110: }
111: #endif
112:
113: #define _INC_DOS
114: #endif /* _INC_DOS */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.