Annotation of mstools/h/dos.h, revision 1.1.1.4

1.1       root        1: /***
                      2: *dos.h - definitions for MS-DOS interface routines
                      3: *
1.1.1.4 ! root        4: *      Copyright (c) 1985-1993, 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.3   root       21: /*
                     22:  * Conditional macro definition for function calling type and variable type
                     23:  * qualifiers.
                     24:  */
                     25: #if   ( (_MSC_VER >= 800) && (_M_IX86 >= 300) )
                     26: 
                     27: /*
                     28:  * Definitions for MS C8-32 (386/486) compiler
                     29:  */
                     30: #define _CRTAPI1 __cdecl
                     31: #define _CRTAPI2 __cdecl
                     32: 
                     33: #else
                     34: 
                     35: /*
                     36:  * Other compilers (e.g., MIPS)
                     37:  */
                     38: #define _CRTAPI1
                     39: #define _CRTAPI2
                     40: 
1.1.1.2   root       41: #endif
1.1       root       42: 
                     43: 
                     44: 
1.1.1.3   root       45: 
1.1       root       46: /* _getdiskfree structure (duplicated in DIRECT.H) */
                     47: 
                     48: #ifndef _DISKFREE_T_DEFINED
                     49: 
                     50: struct _diskfree_t {
                     51:        unsigned total_clusters;
                     52:        unsigned avail_clusters;
                     53:        unsigned sectors_per_cluster;
                     54:        unsigned bytes_per_sector;
                     55:        };
                     56: 
                     57: #define _DISKFREE_T_DEFINED
                     58: 
                     59: #endif
                     60: 
                     61: 
                     62: 
                     63: /* File attribute constants */
                     64: 
                     65: #define _A_NORMAL      0x00    /* Normal file - No read/write restrictions */
                     66: #define _A_RDONLY      0x01    /* Read only file */
                     67: #define _A_HIDDEN      0x02    /* Hidden file */
                     68: #define _A_SYSTEM      0x04    /* System file */
                     69: #define _A_SUBDIR      0x10    /* Subdirectory */
                     70: #define _A_ARCH        0x20    /* Archive file */
                     71: 
                     72: /* external variable declarations */
                     73: 
1.1.1.2   root       74: #if  defined(_WIN32_) || defined(_POSIX_)
                     75: 
                     76: #ifdef _DLL
                     77: 
                     78: #define _osversion   (*_osversion_dll)
                     79: #define _osmajor     (*_osmajor_dll)
                     80: #define _osminor     (*_osminor_dll)
                     81: #define _baseversion (*_baseversion_dll)
                     82: #define _basemajor   (*_basemajor_dll)
                     83: #define _baseminor   (*_baseminor_dll)
                     84: #define _pgmptr      (*_pgmptr_dll)
                     85: 
                     86: extern unsigned int * _osversion_dll;
                     87: extern unsigned int * _osmajor_dll;
                     88: extern unsigned int * _osminor_dll;
                     89: extern unsigned int * _baseversion_dll;
                     90: extern unsigned int * _basemajor_dll;
                     91: extern unsigned int * _baseminor_dll;
                     92: extern char ** _pgmptr_dll;
1.1       root       93: 
1.1.1.2   root       94: #else
                     95: 
                     96: 
                     97: extern unsigned int _osversion;
1.1       root       98: extern unsigned int _osmajor;
                     99: extern unsigned int _osminor;
                    100: extern unsigned int _baseversion;
                    101: extern unsigned int _basemajor;
                    102: extern unsigned int _baseminor;
1.1.1.2   root      103: extern char * _pgmptr;
                    104: 
                    105: #endif
                    106: 
                    107: #else  /* ndef (_WIN32_ || _POSIX_) */
                    108: 
                    109: extern unsigned int _osversion;
                    110: 
                    111: #endif /* _WIN32_ */
                    112: 
1.1       root      113: 
                    114: /* function prototypes */
                    115: 
1.1.1.3   root      116: unsigned _CRTAPI1 _getdiskfree(unsigned, struct _diskfree_t *);
1.1       root      117: 
                    118: #if !__STDC__
                    119: /* Non-ANSI name for compatibility */
                    120: #define diskfree_t  _diskfree_t
                    121: #endif /* __STDC__ */
                    122: 
                    123: /* restore default alignment */
                    124: 
                    125: 
                    126: #ifdef __cplusplus
                    127: }
                    128: #endif
                    129: 
                    130: #define _INC_DOS
                    131: #endif /* _INC_DOS */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.