Microsoft C v6.00AX
This commit is contained in:
parent
1b45c6dd75
commit
6f6222e3a7
429
Microsoft C v6ax/BIN/C1.ERR
Normal file
429
Microsoft C v6ax/BIN/C1.ERR
Normal file
@ -0,0 +1,429 @@
|
|||||||
|
/* SCCSWHAT( "@(#)c1.err 3.69 90/02/01 12:58:41 " ) */
|
||||||
|
/* warnings */
|
||||||
|
|
||||||
|
4001 "nonstandard extension used - '%Fs'"
|
||||||
|
4002 "too many actual parameters for macro '%s'"
|
||||||
|
4003 "not enough actual parameters for macro '%s'"
|
||||||
|
4004 "missing ')' after 'defined'"
|
||||||
|
4005 "'%s' : macro redefinition"
|
||||||
|
4006 "#undef expected an identifier"
|
||||||
|
4007 "'%Fs' : must be '%Fs'"
|
||||||
|
4008 "'%Fs' : '%Fs' attribute on data ignored"
|
||||||
|
4009 "string too big, trailing characters truncated"
|
||||||
|
4011 "identifier truncated to '%Fs'"
|
||||||
|
4012 "float constant in a cross compilation" /* XC */
|
||||||
|
4014 "'%Fs' : type of bit field must be unsigned" /* QC2 */
|
||||||
|
4015 "'%Fs' : type of bit field must be integral"
|
||||||
|
4016 "'%s' : no function return type, using int as default"
|
||||||
|
4017 "cast of int expression to far pointer"
|
||||||
|
4018 "'%Fs' : signed/unsigned mismatch"
|
||||||
|
4020 "'%Fs' : too many actual parameters"
|
||||||
|
4021 "'%Fs' : too few actual parameters"
|
||||||
|
4022 "'%Fs' : pointer mismatch : parameter %d"
|
||||||
|
4023 "'%Fs' : _based pointer passed to unprototyped function : parameter %d"
|
||||||
|
4024 "'%Fs' : different types : parameter %d"
|
||||||
|
4026 "function declared with formal argument list"
|
||||||
|
4027 "function declared without formal argument list"
|
||||||
|
4028 "parameter %d declaration different"
|
||||||
|
4029 "declared parameter list different from definition"
|
||||||
|
4030 "first parameter list longer than the second"
|
||||||
|
4031 "second parameter list longer than the first"
|
||||||
|
4032 "unnamed struct/union as parameter"
|
||||||
|
4033 "function must return a value"
|
||||||
|
4034 "sizeof returns 0"
|
||||||
|
4035 "'%Fs' : no return value"
|
||||||
|
4037 "'%Fs' : formal parameters ignored" /* QC2 */
|
||||||
|
4038 "'%Fs' : formal parameter has bad storage class" /* QC2 */
|
||||||
|
4040 "memory attribute on '%Fs' ignored"
|
||||||
|
4042 "'%Fs' : has bad storage class"
|
||||||
|
4044 "_huge on '%Fs' ignored, must be an array"
|
||||||
|
4045 "'%s' : array bounds overflow"
|
||||||
|
4046 "'&' on function/array, ignored" /* QC2 */
|
||||||
|
4047 "'%s' : different levels of indirection"
|
||||||
|
4048 "array's declared subscripts different"
|
||||||
|
4049 "'%s' : indirection to different types"
|
||||||
|
4050 "'%s' : different code attributes"
|
||||||
|
4051 "type conversion - possible loss of data"
|
||||||
|
4053 "at least one void operand"
|
||||||
|
4056 "overflow in constant arithmetic" /* QC2, c1, c23 */
|
||||||
|
4058 "address of automatic (local) variable taken, DS != SS" /* QC, c23 */
|
||||||
|
4059 "segment lost in conversion" /* QC, c23 */
|
||||||
|
4060 "conversion of long address to short address" /* QC2 */
|
||||||
|
4061 "long/short mismatch in argument : conversion supplied" /* QC, c23 */
|
||||||
|
4062 "near/far mismatch in argument : conversion supplied" /* QC, c23 */
|
||||||
|
4067 "unexpected characters following '%s' directive - newline expected"
|
||||||
|
4068 "unknown pragma"
|
||||||
|
4069 "conversion of near pointer to long integer" /* QC, c23 */
|
||||||
|
4071 "'%Fs' : no function prototype given"
|
||||||
|
4072 "'%Fs' : no function prototype on _fastcall function"
|
||||||
|
4074 "nonstandard extension used - '%s'" /* QC2 */
|
||||||
|
4075 "size of switch expression or case constant too large - converted to int" /* QC2 */
|
||||||
|
4076 "'%s' : may be used on integral types only"
|
||||||
|
4077 "unknown check_stack option"
|
||||||
|
4078 "case constant '%ld' too big for the type of switch expression"
|
||||||
|
4079 "unexpected token '%s'"
|
||||||
|
4080 "expected identifier for segment name, found '%s'"
|
||||||
|
4081 "expected a comma, found '%s'"
|
||||||
|
4082 "expected an identifier, found '%s'"
|
||||||
|
4083 "expected '(', found '%s'"
|
||||||
|
4084 "expected a pragma directive, found '%s'"
|
||||||
|
4085 "expected [on | off]"
|
||||||
|
4086 "expected [1 | 2 | 4]"
|
||||||
|
4087 "'%Fs' : declared with void parameter list"
|
||||||
|
4088 "'%Fs' : pointer mismatch : parameter %d, parameter list %d"
|
||||||
|
4089 "'%Fs' : different types : parameter %d, parameter list %d"
|
||||||
|
4090 "different 'const/volatile' qualifiers"
|
||||||
|
4091 "no symbols were declared"
|
||||||
|
4092 "untagged enum/struct/union declared no symbols"
|
||||||
|
4093 "unescaped newline in character constant in inactive code"
|
||||||
|
4095 "expected ')', found '%s'"
|
||||||
|
4096 "'%Fs' must be used with '%Fs'"
|
||||||
|
4098 "void function returning a value"
|
||||||
|
4100 "'%Fs' : unreferenced formal parameter"
|
||||||
|
4101 "'%Fs' : unreferenced local variable"
|
||||||
|
4102 "'%Fs' : unreferenced label"
|
||||||
|
4104 "'%s' : near data in same_seg pragma, ignored"
|
||||||
|
4105 "'%Fs' : code modifiers only on function or pointer to function"
|
||||||
|
4106 "pragma requires integer between 1 and 127"
|
||||||
|
4107 "pragma requires integer between 15 and 255"
|
||||||
|
4108 "pragma requires integer between 79 and 132"
|
||||||
|
4109 "unexpected identifier '%s'"
|
||||||
|
4110 "unexpected token 'int constant'"
|
||||||
|
4111 "unexpected token 'string'"
|
||||||
|
4112 "macro name '%s' is reserved, '%s' ignored"
|
||||||
|
4113 "function parameter lists differed"
|
||||||
|
4114 "same type qualifier used more than once"
|
||||||
|
4115 "'%Fs' : type definition in formal parameter list"
|
||||||
|
4116 "(no tag) : type definition in formal parameter list"
|
||||||
|
4118 "pragma not supported"
|
||||||
|
4119 "different bases '%Fs' and '%Fs' specified"
|
||||||
|
4120 "_based/unbased mismatch"
|
||||||
|
4123 "different base expressions specified"
|
||||||
|
4124 "_fastcall with stack checking is inefficient"
|
||||||
|
4125 "decimal digit terminates octal escape sequence"
|
||||||
|
4126 "'%c' : unknown memory model flag"
|
||||||
|
4127 "conditional expression is constant"
|
||||||
|
4128 "storage-class specifier after type"
|
||||||
|
4129 "'%c' : unrecognized character escape sequence"
|
||||||
|
4130 "'%Fs' : logical operation on address of string constant"
|
||||||
|
4131 "'%Fs' : uses old-style declarator"
|
||||||
|
4132 "'%Fs' : const object should be initialized"
|
||||||
|
4135 "conversion between different integral types"
|
||||||
|
4136 "conversion between different floating types"
|
||||||
|
4137 "'%Fs' : no return value from floating-point function"
|
||||||
|
4138 "'*/' found outside of comment"
|
||||||
|
4139 "'0x%x' : hex escape sequence is out of range"
|
||||||
|
4140 "'%Fs' : redefined, preceding references may be invalid" /* QC */
|
||||||
|
4185 "near call to '%Fs' in different segment" /* QC, c23 */
|
||||||
|
4206 "assignment within conditional expression" /* QC, c23 */
|
||||||
|
4401 "'%s' : member is bit field"
|
||||||
|
4402 "must use PTR operator"
|
||||||
|
4403 "illegal PTR operator"
|
||||||
|
4404 "period on directive ignored"
|
||||||
|
4405 "'%s' : identifier is reserved word"
|
||||||
|
4406 "operand on directive ignored"
|
||||||
|
4407 "operand size conflict"
|
||||||
|
4408 "'%s' : ambiguous label" /* QC2 */
|
||||||
|
4409 "illegal instruction size"
|
||||||
|
4410 "illegal size for operand"
|
||||||
|
4411 "'%s' : symbol resolves to displacement register"
|
||||||
|
4412 "'%s' : identifier is also assembler mnemonic"
|
||||||
|
4413 "'%Fs' : redefined, preceding references may be invalid" /* QC2 */
|
||||||
|
4414 "'%Fs' : short jump to function converted to near"
|
||||||
|
4000 "UNKNOWN WARNING\n\t\tContact Microsoft Product Support Services"
|
||||||
|
/* errors */
|
||||||
|
|
||||||
|
2001 "newline in constant"
|
||||||
|
2003 "expected 'defined id'"
|
||||||
|
2004 "expected 'defined(id)'"
|
||||||
|
2005 "#line expected a line number, found '%s'"
|
||||||
|
2006 "#include expected a file name, found '%s'"
|
||||||
|
2007 "#define syntax"
|
||||||
|
2008 "'%c' : unexpected in macro definition"
|
||||||
|
2009 "reuse of macro formal '%Fs'"
|
||||||
|
2010 "'%c' : unexpected in macro formal-parameter list"
|
||||||
|
2012 "missing name following '<'"
|
||||||
|
2013 "missing '>'"
|
||||||
|
2014 "preprocessor command must start as first non-white-space"
|
||||||
|
2015 "too many characters in constant"
|
||||||
|
2016 "no closing single quotation mark"
|
||||||
|
2017 "illegal escape sequence"
|
||||||
|
2018 "unknown character '0x%x'"
|
||||||
|
2019 "expected preprocessor directive, found '%c'"
|
||||||
|
2021 "expected exponent value, not '%c'"
|
||||||
|
2022 "'%ld' : too big for character"
|
||||||
|
2023 "divide by 0"
|
||||||
|
2024 "mod by 0"
|
||||||
|
2025 "'%s' : enum/struct/union type redefinition"
|
||||||
|
2026 "'%s' : member of enum redefinition"
|
||||||
|
2027 "use of undefined enum/struct/union '%Fs'"
|
||||||
|
2028 "struct/union member needs to be inside a struct/union"
|
||||||
|
2030 "'%Fs' : struct/union member redefinition"
|
||||||
|
2031 "'%Fs' : function cannot be struct/union member"
|
||||||
|
2033 "'%Fs' : bit field cannot have indirection"
|
||||||
|
2034 "'%Fs' : type of bit field too small for number of bits"
|
||||||
|
2035 "struct/union '%Fs' : unknown size"
|
||||||
|
2036 "left of '%s%s' must have a struct/union base type" /* QC2 */
|
||||||
|
2037 "left of '%s' specifies undefined struct/union '%Fs'"
|
||||||
|
2038 "'%s' : not struct/union member"
|
||||||
|
2039 "'->' : left operand must point to struct/union" /* QC2 */
|
||||||
|
2040 "'.' : left operand must have struct/union type" /* QC2 */
|
||||||
|
2041 "illegal digit '%c' for base %d"
|
||||||
|
2042 "signed/unsigned keywords mutually exclusive"
|
||||||
|
2043 "illegal break"
|
||||||
|
2044 "illegal continue"
|
||||||
|
2045 "'%s' : label redefined"
|
||||||
|
2046 "illegal case"
|
||||||
|
2047 "illegal default"
|
||||||
|
2048 "more than one default"
|
||||||
|
2049 "case value '%ld' already used"
|
||||||
|
2050 "nonintegral switch expression"
|
||||||
|
2051 "case expression not constant"
|
||||||
|
2052 "case expression not integral"
|
||||||
|
2053 "case value %d already used" /* QC2 */
|
||||||
|
2054 "expected '(' to follow '%Fs'"
|
||||||
|
2055 "expected formal-parameter list, not a type list"
|
||||||
|
2056 "illegal expression"
|
||||||
|
2057 "expected constant expression"
|
||||||
|
2058 "constant expression is not integral"
|
||||||
|
2059 "syntax error : '%s'"
|
||||||
|
2060 "syntax error : end-of-file found"
|
||||||
|
2061 "syntax error : identifier '%s'"
|
||||||
|
2062 "type '%s' unexpected"
|
||||||
|
2063 "'%s' : not a function"
|
||||||
|
2064 "term does not evaluate to a function"
|
||||||
|
2065 "'%s' : undefined"
|
||||||
|
2066 "cast to function type is illegal"
|
||||||
|
2067 "cast to array type is illegal"
|
||||||
|
2068 "illegal cast"
|
||||||
|
2069 "cast of void term to nonvoid"
|
||||||
|
2070 "illegal sizeof operand"
|
||||||
|
2071 "'%Fs' : illegal storage class"
|
||||||
|
2072 "'%Fs' : initialization of a function"
|
||||||
|
2075 "'%Fs' : array initialization needs curly braces"
|
||||||
|
2076 "'%Fs' : struct/union initialization needs curly braces"
|
||||||
|
2077 "nonscalar field initializer '%Fs'"
|
||||||
|
2078 "too many initializers"
|
||||||
|
2079 "'%Fs' uses undefined struct/union '%Fs'"
|
||||||
|
2080 "illegal far _fastcall function"
|
||||||
|
2081 "'%Fs' : illegal memory attribute" /* QC2 */
|
||||||
|
2082 "redefinition of formal parameter '%Fs'"
|
||||||
|
2084 "function '%Fs' already has a body"
|
||||||
|
2085 "'%Fs' : not in formal-parameter list"
|
||||||
|
2086 "'%Fs' : redefinition"
|
||||||
|
2087 "'%Fs' : missing subscript"
|
||||||
|
2090 "function returns array"
|
||||||
|
2091 "function returns function"
|
||||||
|
2092 "array element type cannot be function"
|
||||||
|
2093 "cannot use address of automatic variable as static initializer"
|
||||||
|
2094 "label '%Fs' was undefined"
|
||||||
|
2095 "'%Fs' : actual has type void : parameter %d"
|
||||||
|
2096 "struct/union comparison illegal"
|
||||||
|
2097 "illegal initialization"
|
||||||
|
2098 "nonaddress expression"
|
||||||
|
2099 "nonconstant initializer"
|
||||||
|
2100 "illegal indirection"
|
||||||
|
2101 "'&' on constant"
|
||||||
|
2102 "'&' requires lvalue"
|
||||||
|
2103 "'&' on register variable"
|
||||||
|
2104 "'&' on bit field ignored"
|
||||||
|
2105 "'%s' needs lvalue"
|
||||||
|
2106 "'%s' : left operand must be lvalue"
|
||||||
|
2107 "illegal index, indirection not allowed"
|
||||||
|
2108 "nonintegral index"
|
||||||
|
2109 "subscript on nonarray"
|
||||||
|
2110 "pointer + pointer"
|
||||||
|
2111 "pointer + nonintegral value"
|
||||||
|
2112 "illegal pointer subtraction"
|
||||||
|
2113 "pointer subtracted from nonpointer"
|
||||||
|
2114 "'%s' : pointer on left; needs integral right"
|
||||||
|
2115 "'%s' : incompatible types"
|
||||||
|
2116 "'%s' : illegal %s operand" /* QC2 */
|
||||||
|
2117 "'%s' : illegal for struct/union"
|
||||||
|
2118 "negative subscript"
|
||||||
|
2119 "typedef types both define indirection"
|
||||||
|
2120 "void illegal with all types"
|
||||||
|
2121 "'%s' : bad %Fs operand"
|
||||||
|
2124 "divide or mod by zero"
|
||||||
|
2125 "'%Fs' : allocation exceeds 64K" /* QC, c23 */
|
||||||
|
2127 "parameter allocation exceeds 32K" /* QC, c23 */
|
||||||
|
2130 "#line expected a string containing the file name, found '%s'"
|
||||||
|
2131 "more than one memory attribute"
|
||||||
|
2132 "syntax error : unexpected identifier"
|
||||||
|
2133 "'%Fs' : unknown size"
|
||||||
|
2134 "'%Fs' : struct/union too large"
|
||||||
|
2136 "'%Fs' : prototype must have parameter types"
|
||||||
|
2137 "empty character constant"
|
||||||
|
2138 "unmatched close comment '*/'" /* QC2 */
|
||||||
|
2139 "type following '%s' is illegal"
|
||||||
|
2140 "argument cannot be function type"
|
||||||
|
2141 "value out of range for enum constant"
|
||||||
|
2142 "ellipsis requires three periods" /* QC2 */
|
||||||
|
2143 "syntax error : missing '%s' before '%s'"
|
||||||
|
2144 "syntax error : missing '%s' before type '%Fs'"
|
||||||
|
2145 "syntax error : missing '%s' before identifier"
|
||||||
|
2146 "syntax error : missing '%s' before identifier '%s'"
|
||||||
|
2147 "unknown size"
|
||||||
|
2148 "array too large"
|
||||||
|
2149 "'%Fs' : named bit field cannot have 0 width"
|
||||||
|
2150 "'%Fs' : bit field must have type int, signed int, or unsigned int"
|
||||||
|
2151 "more than one language attribute"
|
||||||
|
2152 "'%s' : pointers to functions with different attributes"
|
||||||
|
2153 "hex constants must have at least 1 hex digit"
|
||||||
|
2154 "'%Fs' : does not refer to a segment name"
|
||||||
|
2156 "pragma must be outside function"
|
||||||
|
2157 "'%s' : must be declared before use in pragma list"
|
||||||
|
2158 "'%s' : is a function"
|
||||||
|
2159 "more than one storage class specified"
|
||||||
|
2160 "## cannot occur at the beginning of a macro definition"
|
||||||
|
2161 "## cannot occur at the end of a macro definition"
|
||||||
|
2162 "expected macro formal parameter"
|
||||||
|
2163 "'%s' : not available as an intrinsic function"
|
||||||
|
2164 "'%s' : intrinsic function not declared"
|
||||||
|
2165 "'%s' : cannot modify pointers to data"
|
||||||
|
2166 "lvalue specifies const object"
|
||||||
|
2167 "'%Fs' : too many actual parameters for intrinsic"
|
||||||
|
2168 "'%Fs' : too few actual parameters for intrinsic"
|
||||||
|
2169 "'%Fs' : intrinsic function, cannot be defined"
|
||||||
|
2170 "'%s' : not declared as a function, cannot be intrinsic"
|
||||||
|
2171 "'%s' : illegal operand"
|
||||||
|
2172 "'%Fs' : actual is not a pointer : parameter %d"
|
||||||
|
2173 "'%Fs' : actual is not a pointer : parameter %d, parameter list %d"
|
||||||
|
2174 "'%Fs' : actual has type void : parameter %d, parameter list %d"
|
||||||
|
2175 "'%Fs' : unresolved external" /* QC */
|
||||||
|
2176 "static huge data not supported by /qc" /* QC */
|
||||||
|
2177 "constant too big"
|
||||||
|
2178 "'%s' : storage class for same_seg variables must be extern"
|
||||||
|
2179 "'%Fs' : was used in same_seg, but storage class is no longer extern"
|
||||||
|
2180 "controlling expression has type void"
|
||||||
|
2181 "pragma requires command line option '%s'" /* QC2 */
|
||||||
|
2182 "'%Fs' : has type void"
|
||||||
|
2183 "pragma requires command line option '%Fs'" /* QC */
|
||||||
|
2185 "'%Fs' : illegal _based allocation"
|
||||||
|
2187 "cast of near function pointer to far function pointer"
|
||||||
|
2188 "#error : %s" /* QC2 */
|
||||||
|
2189 "#error : %Fs"
|
||||||
|
2193 "'%Fs' : already in a segment"
|
||||||
|
2194 "'%Fs' : is a text segment"
|
||||||
|
2195 "'%Fs' : is a data segment"
|
||||||
|
2196 "/ML cannot be used with floating point" /* QC */
|
||||||
|
2198 "'%Fs' : tried to be allocated in code segment '%Fs'" /* QC2 */
|
||||||
|
2199 "'%Fs' : tried to be allocated in data segment '%Fs'" /* QC2 */
|
||||||
|
2200 "'%Fs' : function has already been defined"
|
||||||
|
2201 "'%Fs' : storage class must be extern"
|
||||||
|
2202 "'interrupt' function must be 'far'" /* QC2 */
|
||||||
|
2203 "'%s' function must be 'cdecl'" /* QC2 */
|
||||||
|
2204 "'saveregs/interrupt' modifiers mutually exclusive" /* QC2 */
|
||||||
|
2205 "'%Fs' : cannot initialize extern block-scoped variables"
|
||||||
|
2206 "'%Fs' : typedef cannot be used for function definition"
|
||||||
|
2207 "'%Fs' in struct/union '%Fs' has a zero-sized array"
|
||||||
|
2208 "no members defined using this type"
|
||||||
|
2209 "type cast in _based construct must be (_segment)"
|
||||||
|
2210 "'%Fs' : must be near/far data pointer"
|
||||||
|
2211 "(_segment) applied to function identifier '%s'"
|
||||||
|
2212 "'%Fs' : _based not available for functions/pointers to functions"
|
||||||
|
2213 "'%s' : illegal argument to _based"
|
||||||
|
2214 "pointers based on void require the use of :>"
|
||||||
|
2215 ":> operator only for objects based on void"
|
||||||
|
2216 "'%Fs' may not be used with '%Fs'"
|
||||||
|
2217 "'%Fs' must be used with '%Fs'"
|
||||||
|
2218 "type in _based construct must be void"
|
||||||
|
2219 "syntax error : type qualifier must be after '*'"
|
||||||
|
2220 "warning treated as error - no object file generated"
|
||||||
|
2221 "'.' : left operand points to struct/union, use '->'"
|
||||||
|
2222 "'->' : left operand has struct/union type, use '.'"
|
||||||
|
2223 "left of '->%Fs' must point to struct/union"
|
||||||
|
2224 "left of '.%Fs' must have struct/union type"
|
||||||
|
2225 "'%Fs' : first member of struct is unnamed"
|
||||||
|
2400 "in-line syntax error in '%s', found '%Fs'"
|
||||||
|
2401 "'%s' : register must be base in '%s'"
|
||||||
|
2402 "'%s' : register must be index in '%s'"
|
||||||
|
2403 "'%s' : register must be base/index in '%s'"
|
||||||
|
2404 "'%s' : illegal register in '%s'"
|
||||||
|
2405 "illegal short forward reference with offset"
|
||||||
|
2406 "'%s' : name undefined in '%s'"
|
||||||
|
2407 "illegal float register in '%s'"
|
||||||
|
2408 "illegal type on PTR operator in '%s'"
|
||||||
|
2409 "illegal type used as operator in '%s'"
|
||||||
|
2410 "'%s' : ambiguous member name in '%s'"
|
||||||
|
2411 "'%s' : illegal struct/union member in '%s'"
|
||||||
|
2412 "'%Fs' : case insensitive label redefined"
|
||||||
|
2413 "'%s' : illegal align size"
|
||||||
|
2414 "illegal number of operands"
|
||||||
|
2415 "improper operand type"
|
||||||
|
2416 "'%s' : illegal opcode for processor"
|
||||||
|
2417 "divide by zero in '%s'"
|
||||||
|
2418 "'%Fs' : not in a register"
|
||||||
|
2419 "mod by zero in '%s'"
|
||||||
|
2420 "'%s' : illegal symbol in %s"
|
||||||
|
2421 "PTR operator used with register in '%s'"
|
||||||
|
2422 "illegal segment override in '%s'"
|
||||||
|
2424 "'%Fs' : improper expression in '%s'"
|
||||||
|
2425 "'%Fs' : nonconstant expression in '%s'"
|
||||||
|
2426 "'%Fs' : illegal operator in '%s'"
|
||||||
|
2427 "'%Fs' : jump referencing label is out of range" /* QC */
|
||||||
|
2428 "'%Fs' : segment redefinition" /* QC2 */
|
||||||
|
2429 "'%Fs' : illegal far label reference"
|
||||||
|
2000 "UNKNOWN ERROR\n\t\tContact Microsoft Product Support Services"
|
||||||
|
|
||||||
|
/* fatals */
|
||||||
|
|
||||||
|
1001 "Internal Compiler Error\n\t\t(compiler file '%s', line %d)\n\t\tContact Microsoft Product Support Services"
|
||||||
|
1003 "error count exceeds %d; stopping compilation"
|
||||||
|
1004 "unexpected end-of-file found"
|
||||||
|
1005 "string too big for buffer"
|
||||||
|
1006 "write error on compiler-generated file"
|
||||||
|
1007 "unrecognized flag '%s' in '%s'"
|
||||||
|
1008 "no input file specified"
|
||||||
|
1009 "compiler limit : macros nested too deeply"
|
||||||
|
1010 "compiler limit : macro expansion too big"
|
||||||
|
1011 "compiler limit : '%s': macro definition too big"
|
||||||
|
1012 "unmatched parenthesis - missing '%c'"
|
||||||
|
1013 "cannot open source file '%s'" /* QC2 */
|
||||||
|
1014 "too many include files"
|
||||||
|
1015 "cannot open include file '%s'" /* QC2 */
|
||||||
|
1016 "#if[n]def expected an identifier"
|
||||||
|
1017 "invalid integer constant expression"
|
||||||
|
1018 "unexpected '#elif'"
|
||||||
|
1019 "unexpected '#else'"
|
||||||
|
1020 "unexpected '#endif'"
|
||||||
|
1021 "invalid preprocessor command '%s'"
|
||||||
|
1022 "expected '#endif'"
|
||||||
|
1023 "cannot open source file '%Fs'"
|
||||||
|
1024 "cannot open include file '%Fs'"
|
||||||
|
1025 "compiler terminated by user" /* QC */
|
||||||
|
1026 "parser stack overflow, please simplify your program"
|
||||||
|
1027 "DGROUP data allocation exceeds 64K" /* QC, c23 */
|
||||||
|
1028 "'%s' : segment allocation exceeds 64K" /* QC */
|
||||||
|
1031 "compiler limit : function calls nested too deeply" /* QC, c23 */
|
||||||
|
1032 "cannot open object listing file '%s'" /* QC, c23 */
|
||||||
|
1035 "expression too complex, please simplify" /* QC, c23 */
|
||||||
|
1037 "cannot open object file '%s'" /* QC, c23 */
|
||||||
|
1041 "cannot open compiler intermediate file - no more files"
|
||||||
|
1042 "cannot open compiler intermediate file - no such file or directory"
|
||||||
|
1043 "cannot open compiler intermediate file"
|
||||||
|
1044 "out of disk space for compiler intermediate file"
|
||||||
|
1045 "floating-point overflow" /* QC2 */
|
||||||
|
1047 "limit of %s exceeded at '%s'"
|
||||||
|
1048 "unknown option '%c' in '%s'"
|
||||||
|
1049 "invalid numerical argument '%s'"
|
||||||
|
1052 "compiler limit : #if/#ifdef blocks nested too deeply"
|
||||||
|
1053 "compiler limit : struct/union nested too deeply"
|
||||||
|
1054 "compiler limit : initializers nested too deeply"
|
||||||
|
1055 "compiler limit : out of keys"
|
||||||
|
1056 "compiler limit : out of macro expansion space"
|
||||||
|
1057 "unexpected end-of-file in macro expansion (missing ')'?)"
|
||||||
|
1059 "compiler is out of near heap space"
|
||||||
|
1060 "compiler is out of far heap space"
|
||||||
|
1061 "compiler limit : blocks nested too deeply" /* QC */
|
||||||
|
1062 "error writing to preprocessor output file"
|
||||||
|
1063 "compiler limit : compiler stack overflow" /* QC */
|
||||||
|
1064 "compiler limit : token overflowed internal buffer"
|
||||||
|
1068 "cannot open file '%s'"
|
||||||
|
1069 "write error on file '%s'" /* QC */
|
||||||
|
1070 "mismatched #if/#endif pair in file '%Fs'"
|
||||||
|
1071 "unexpected end-of-file found in comment"
|
||||||
|
1072 "'%Fs' : cannot read file"
|
||||||
|
1126 "'%Fs' : automatic allocation exceeds %s" /* QC, c23 */
|
||||||
|
1127 "'%Fs' : segment redefinition"
|
||||||
|
1000 "UNKNOWN FATAL ERROR\n\t\tContact Microsoft Product Support Services"
|
BIN
Microsoft C v6ax/BIN/C1.EXE
Normal file
BIN
Microsoft C v6ax/BIN/C1.EXE
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BIN/C1L.EXE
Normal file
BIN
Microsoft C v6ax/BIN/C1L.EXE
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BIN/C2.EXE
Normal file
BIN
Microsoft C v6ax/BIN/C2.EXE
Normal file
Binary file not shown.
78
Microsoft C v6ax/BIN/C23.ERR
Normal file
78
Microsoft C v6ax/BIN/C23.ERR
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
/* fatals */
|
||||||
|
|
||||||
|
1001 "Internal Compiler Error\n\t\t(compiler file '%s', line %d)\n\t\tContact Microsoft Product Support Services"
|
||||||
|
1002 "compiler is out of heap space in Pass 2"
|
||||||
|
1003 "error count exceeds %d; stopping compilation"
|
||||||
|
1004 "unexpected end-of-file found"
|
||||||
|
1005 "string too big for buffer"
|
||||||
|
1006 "write error on compiler intermediate file"
|
||||||
|
1007 "unrecognized flag '%s' in '%s'"
|
||||||
|
1013 "cannot open source file '%s'"
|
||||||
|
1027 "DGROUP data allocation exceeds 64K"
|
||||||
|
1029 "there are > 512 bytes of arguments"
|
||||||
|
1030 "there are > 512 bytes of local variables"
|
||||||
|
1032 "cannot open object listing file '%s'"
|
||||||
|
1033 "cannot open assembly language output file '%s'"
|
||||||
|
1035 "expression too complex, please simplify"
|
||||||
|
1036 "cannot open source listing file '%s'"
|
||||||
|
1037 "cannot open object file '%s'"
|
||||||
|
1039 "unrecoverable heap overflow in Pass 3"
|
||||||
|
1040 "unexpected end-of-file in source file '%s'"
|
||||||
|
1041 "cannot open compiler intermediate file - no more files"
|
||||||
|
1042 "cannot open compiler intermediate file - no such file or directory"
|
||||||
|
1043 "cannot open compiler intermediate file"
|
||||||
|
1044 "out of disk space for compiler intermediate file"
|
||||||
|
1045 "floating-point overflow"
|
||||||
|
1046 "bad '%s' flag, would overwrite '%s' with '%s'"
|
||||||
|
1047 "too many '%s' flags, '%s'"
|
||||||
|
1048 "unknown option '%c' in '%s'"
|
||||||
|
1049 "invalid numerical argument '%s'"
|
||||||
|
1050 "'%s' : code segment too large"
|
||||||
|
1066 "intrinsic not implemented"
|
||||||
|
1090 "'%s' data allocation exceeds 64K"
|
||||||
|
1126 "'%s' : automatic allocation exceeds %s"
|
||||||
|
1127 "'%s': segment redefinition"
|
||||||
|
1000 "UNKNOWN FATAL ERROR\n\t\tContact Microsoft Product Support Services"
|
||||||
|
/* errors */
|
||||||
|
|
||||||
|
2125 "'%s' : allocation exceeds 64K"
|
||||||
|
2127 "parameter allocation exceeds 32K"
|
||||||
|
2128 "'%s' : huge array cannot be aligned to segment boundary"
|
||||||
|
2129 "static function '%s' not found"
|
||||||
|
2418 "'%s' : not in a register"
|
||||||
|
2220 "warning treated as error - no object file generated"
|
||||||
|
2427 "'%s' : jump referencing label is out of range"
|
||||||
|
2000 "UNKNOWN ERROR\n\t\tContact Microsoft Product Support Services"
|
||||||
|
|
||||||
|
/* warnings */
|
||||||
|
|
||||||
|
4056 "overflow in constant arithmetic"
|
||||||
|
4057 "overflow in constant multiplication"
|
||||||
|
4058 "address of automatic (local) variable taken, DS != SS"
|
||||||
|
4059 "segment lost in conversion"
|
||||||
|
4061 "long/short mismatch in argument : conversion supplied"
|
||||||
|
4062 "near/far mismatch in argument : conversion supplied"
|
||||||
|
4063 "'%s' : function too large for post-optimizer"
|
||||||
|
4065 "recoverable heap overflow in post-optimizer - some optimizations may be missed"
|
||||||
|
4066 "local symbol table overflow - some local symbols may be missing in listings"
|
||||||
|
4069 "conversion of near pointer to long integer"
|
||||||
|
4073 "scoping too deep, deepest scoping merged when debugging"
|
||||||
|
4127 "conditional expression is constant"
|
||||||
|
4185 "near call to '%s' in different segment"
|
||||||
|
4186 "string too long - truncated to %d characters"
|
||||||
|
4200 "local variable '%s' used without having been initialized"
|
||||||
|
4201 "local variable '%s' may be used without having been initialized"
|
||||||
|
4202 "unreachable code"
|
||||||
|
4203 "'%s' : function too large for global optimizations"
|
||||||
|
4204 "'%s' : in-line assembler precludes global optimizations"
|
||||||
|
4205 "statement has no effect"
|
||||||
|
4206 "assignment within conditional expression"
|
||||||
|
4207 "'%s' : function too large for global optimizations (%s)" /*
|
||||||
|
internal use */
|
||||||
|
4208 "Ran out of heap at: %s" /* internal use */
|
||||||
|
4209 "comma operator within array index expression"
|
||||||
|
4300 "insufficient memory to process debugging information"
|
||||||
|
4301 "loss of debugging information caused by optimization"
|
||||||
|
4323 "potential divide by 0"
|
||||||
|
4324 "potential mod by 0"
|
||||||
|
4000 "UNKNOWN WARNING\n\t\tContact Microsoft Product Support Services"
|
BIN
Microsoft C v6ax/BIN/C2L.EXE
Normal file
BIN
Microsoft C v6ax/BIN/C2L.EXE
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BIN/C3.EXE
Normal file
BIN
Microsoft C v6ax/BIN/C3.EXE
Normal file
Binary file not shown.
36
Microsoft C v6ax/BIN/CL.ERR
Normal file
36
Microsoft C v6ax/BIN/CL.ERR
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
/* error messages */
|
||||||
|
|
||||||
|
2001 "too many symbols predefined with /D"
|
||||||
|
2002 "conflict in memory-model specification"
|
||||||
|
2003 "missing source file name"
|
||||||
|
2008 "limit of %s exceeded at '%s'"
|
||||||
|
2011 "only one floating-point option allowed"
|
||||||
|
2012 "too many linker flags on command line"
|
||||||
|
2013 "incomplete model specification"
|
||||||
|
2016 "'%s' and '%s' are incompatible"
|
||||||
|
2018 "cannot open linker response file"
|
||||||
|
2019 "cannot overwrite the source/object file, '%s'"
|
||||||
|
2020 "%s option requires extended keywords to be enabled (/Ze)"
|
||||||
|
2021 "invalid numerical argument '%s'"
|
||||||
|
2022 "cannot open help file, '%s'"
|
||||||
|
2027 "could not execute '%s'"
|
||||||
|
2028 "too many open files, cannot redirect '%s'"
|
||||||
|
2030 "INTERNAL COMPILER ERROR in '%s'\n\t\tContact Microsoft Product Support Services"
|
||||||
|
2031 "too many flags/files on command line"
|
||||||
|
2000 "UNKNOWN COMMAND LINE ERROR\n\t\tContact Microsoft Product Support Services"
|
||||||
|
|
||||||
|
/* warning messages */
|
||||||
|
|
||||||
|
4001 "listing overrides assembly output"
|
||||||
|
4002 "ignoring unknown flag '%s'"
|
||||||
|
4003 "different processors selected for code generation"
|
||||||
|
4005 "could not locate '%s';\nPlease enter new file name (full path) or Ctrl-C to quit: "
|
||||||
|
4007 "/C ignored (must also specify /P or /E or /EP)"
|
||||||
|
4009 "threshold only for far/huge data, ignored"
|
||||||
|
4011 "preprocessing overrides source listing"
|
||||||
|
4012 "function declarations override source listing"
|
||||||
|
4013 "combined listing overrides object listing"
|
||||||
|
4014 "invalid value '%d' for '%s'; default '%d' is used"
|
||||||
|
4018 ".DEF files supported in protected mode only"
|
||||||
|
4019 "string too long; truncated to '%d' characters"
|
||||||
|
4000 "UNKNOWN COMMAND LINE WARNING\n\t\tContact Microsoft Product Support Services"
|
BIN
Microsoft C v6ax/BIN/CL.EXE
Normal file
BIN
Microsoft C v6ax/BIN/CL.EXE
Normal file
Binary file not shown.
96
Microsoft C v6ax/BIN/CL.MSG
Normal file
96
Microsoft C v6ax/BIN/CL.MSG
Normal file
@ -0,0 +1,96 @@
|
|||||||
|
C COMPILER OPTIONS
|
||||||
|
-MEMORY MODEL-
|
||||||
|
/AS small model (default)
|
||||||
|
/AC compact model
|
||||||
|
/AM medium model
|
||||||
|
/AL large model
|
||||||
|
/AH huge model
|
||||||
|
/AT tiny model (.COM files)
|
||||||
|
-OPTIMIZATION-
|
||||||
|
/O enable optimization (same as /Ot)
|
||||||
|
/Oa ignore aliasing
|
||||||
|
/Od disable optimizations
|
||||||
|
/Oe enable registers allocations
|
||||||
|
/Og enable global optimization
|
||||||
|
/Oi enable intrinsic functions
|
||||||
|
/Ol enable loop optimizations
|
||||||
|
/On disable "unsafe" optimizations
|
||||||
|
/Op enable precision optimizations
|
||||||
|
/Or disable in_line return
|
||||||
|
/Os optimize for space
|
||||||
|
/Ot optimize for speed (default)
|
||||||
|
/Ow assume aliasing in function calls
|
||||||
|
/Ox max. optimization (/Oegilt /Gs)
|
||||||
|
-CODE GENERATION-
|
||||||
|
/G0 8086 instructions (default)
|
||||||
|
/G1 186 instructions
|
||||||
|
/G2 286 instructions
|
||||||
|
/Gm put strings in constant segment
|
||||||
|
/Gc Pascal style function calls
|
||||||
|
/Gr _fastcall type calls
|
||||||
|
/Gs no stack checking
|
||||||
|
/Gt[number] data size threshold
|
||||||
|
/Gw Windows entry sequence
|
||||||
|
-OUTPUT FILES-
|
||||||
|
/Fa[assembly listing file]
|
||||||
|
/Fb[bound executable file]
|
||||||
|
/Fc[mixed source/object listing file]
|
||||||
|
/Fe<executable file>
|
||||||
|
/Fl[object listing file]
|
||||||
|
/Fm[map file]
|
||||||
|
/Fo<object file>
|
||||||
|
/Fr[source browser info file]
|
||||||
|
/FR[extended source browser info file]
|
||||||
|
/Fs[source listing file]
|
||||||
|
-PREPROCESSOR-
|
||||||
|
/C don't strip comments
|
||||||
|
/D<name>[=text] define macro
|
||||||
|
/E preprocess to stdout
|
||||||
|
/EP same as /E but no #line
|
||||||
|
/I<name> add #include path
|
||||||
|
/P preprocess to file
|
||||||
|
/U<name> remove predefined macro
|
||||||
|
/u remove all predefined macros
|
||||||
|
/X ignore "standard places"
|
||||||
|
-LANGUAGE-
|
||||||
|
/Za disable extensions
|
||||||
|
/Zd line number information
|
||||||
|
/Ze enable extensions (default)
|
||||||
|
/Zg generate declarations
|
||||||
|
/Zi symbolic debugging information
|
||||||
|
/Zl remove default library info
|
||||||
|
/Zp[n] pack structs on n-byte boundary
|
||||||
|
/Zs syntax check only
|
||||||
|
-FLOATING POINT-
|
||||||
|
/FPa calls with altmath
|
||||||
|
/FPc calls with emulator
|
||||||
|
/FPc87 calls with 8087 library
|
||||||
|
/FPi inline with emulator (default)
|
||||||
|
/FPi87 inline with 8087
|
||||||
|
-SOURCE LISTING-
|
||||||
|
/Sl<columns> set line width
|
||||||
|
/Sp<lines> set page length
|
||||||
|
/St<string> set title string
|
||||||
|
/Ss<string> set subtitle string
|
||||||
|
-MISCELLANEOUS-
|
||||||
|
/B[123]<pass> to invoke different C[123]
|
||||||
|
/c compile only, no link
|
||||||
|
/H<number> external name length
|
||||||
|
/J default char type is unsigned
|
||||||
|
/qc use quick compile feature
|
||||||
|
/Tc<file> compile file without .c
|
||||||
|
/V<string> set version string
|
||||||
|
/W<number> warning level
|
||||||
|
-MASM SUPPORT-
|
||||||
|
/MA<MASM switch>
|
||||||
|
/Ta<file> assemble file without .asm
|
||||||
|
/Fx[MASM's cross-reference file]
|
||||||
|
-LINKING-
|
||||||
|
/F <hex_number> stack size (hex. bytes)
|
||||||
|
/Lc link compatibility mode executable
|
||||||
|
/Lr link compatibility mode executable
|
||||||
|
/Lp link protect mode executable
|
||||||
|
/link [linker_options_and_libraries]
|
||||||
|
/ML link C runtime as part of DLL
|
||||||
|
/MD use C runtime as DLL
|
||||||
|
/MT support multi-thread
|
BIN
Microsoft C v6ax/BIN/CV.EXE
Normal file
BIN
Microsoft C v6ax/BIN/CV.EXE
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BIN/FIXSHIFT.COM
Normal file
BIN
Microsoft C v6ax/BIN/FIXSHIFT.COM
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BIN/HIMEM.SYS
Normal file
BIN
Microsoft C v6ax/BIN/HIMEM.SYS
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BIN/MSHERC.COM
Normal file
BIN
Microsoft C v6ax/BIN/MSHERC.COM
Normal file
Binary file not shown.
3
Microsoft C v6ax/BIN/NEW-CONF.SYS
Normal file
3
Microsoft C v6ax/BIN/NEW-CONF.SYS
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
files=20
|
||||||
|
buffers=10
|
||||||
|
device=C:\C600\BIN\himem.sys
|
5
Microsoft C v6ax/BIN/NEW-VARS.BAT
Normal file
5
Microsoft C v6ax/BIN/NEW-VARS.BAT
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
SET PATH=C:\C600\BINB;C:\C600\BIN;Z:\
|
||||||
|
SET LIB=C:\C600\LIB
|
||||||
|
SET INCLUDE=C:\C600\INCLUDE
|
||||||
|
SET HELPFILES=C:\C600\HELP\*.HLP
|
||||||
|
SET INIT=C:\C600\INIT
|
BIN
Microsoft C v6ax/BIN/NMAKE.EXE
Normal file
BIN
Microsoft C v6ax/BIN/NMAKE.EXE
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BIN/NMK.COM
Normal file
BIN
Microsoft C v6ax/BIN/NMK.COM
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BIN/QCC.EXE
Normal file
BIN
Microsoft C v6ax/BIN/QCC.EXE
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BIN/RAMDRIVE.SYS
Normal file
BIN
Microsoft C v6ax/BIN/RAMDRIVE.SYS
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BIN/SMARTDRV.SYS
Normal file
BIN
Microsoft C v6ax/BIN/SMARTDRV.SYS
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BINB/BIND.EXE
Normal file
BIN
Microsoft C v6ax/BINB/BIND.EXE
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BINB/CVPACK.EXE
Normal file
BIN
Microsoft C v6ax/BINB/CVPACK.EXE
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BINB/EXEHDR.EXE
Normal file
BIN
Microsoft C v6ax/BINB/EXEHDR.EXE
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BINB/HELPMAKE.EXE
Normal file
BIN
Microsoft C v6ax/BINB/HELPMAKE.EXE
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BINB/ILINK.EXE
Normal file
BIN
Microsoft C v6ax/BINB/ILINK.EXE
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BINB/ILINKSTB.OVL
Normal file
BIN
Microsoft C v6ax/BINB/ILINKSTB.OVL
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BINB/IMPLIB.EXE
Normal file
BIN
Microsoft C v6ax/BINB/IMPLIB.EXE
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BINB/LIB.EXE
Normal file
BIN
Microsoft C v6ax/BINB/LIB.EXE
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BINB/LINK.EXE
Normal file
BIN
Microsoft C v6ax/BINB/LINK.EXE
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/BINB/QH.EXE
Normal file
BIN
Microsoft C v6ax/BINB/QH.EXE
Normal file
Binary file not shown.
218
Microsoft C v6ax/BINB/README.DOC
Normal file
218
Microsoft C v6ax/BINB/README.DOC
Normal file
@ -0,0 +1,218 @@
|
|||||||
|
|
||||||
|
README.DOC File
|
||||||
|
|
||||||
|
README File for Microsoft(R) CodeView for Windows, version 3.05,
|
||||||
|
Microsoft C Compiler, version 6.00AX.
|
||||||
|
|
||||||
|
(C) Copyright Microsoft Corporation, 1991
|
||||||
|
|
||||||
|
==========================================================================
|
||||||
|
This file contains information on the software on the Microsoft C
|
||||||
|
Supplemental Tools diskette.
|
||||||
|
|
||||||
|
This file contains 4 major sections:
|
||||||
|
SECTION 1. Information on installing the software on the Supplemental
|
||||||
|
Tools diskette (this diskette).
|
||||||
|
SECTION 2. Information on Microsoft CodeView for Windows, version 3.05.
|
||||||
|
SECTION 3. Information on the DOS-extended version of Microsoft C,
|
||||||
|
version 6.00AX.
|
||||||
|
|
||||||
|
PLEASE READ ALL INFORMATION IN THIS FILE BEFORE INSTALLING ANY OF THE
|
||||||
|
SOFTWARE ON YOUR MACHINE.
|
||||||
|
|
||||||
|
=======================================================================
|
||||||
|
SECTION 1. Supplemental Tools- installation instructions
|
||||||
|
|
||||||
|
NOTE: We strongly suggest that you copy the DOS-extended C Compiler
|
||||||
|
to a directory different than the location of Microsoft C,
|
||||||
|
version 6.00A-- and use it from this new directory.
|
||||||
|
|
||||||
|
|
||||||
|
Invocation of SETUP:
|
||||||
|
MS-DOS users: use SETUP.BAT
|
||||||
|
OS/2 users: use SETUP.CMD
|
||||||
|
Usage:
|
||||||
|
setup compiler-directory [CVW-directory]
|
||||||
|
Where:
|
||||||
|
compiler-directory: the path where you want the DOS-extended
|
||||||
|
compiler to be placed
|
||||||
|
CVW-directory: the path where you want the single-monitor
|
||||||
|
version of Microsoft CodeView for Windows
|
||||||
|
to be placed.
|
||||||
|
Example: SETUP c:\msc\c600ax c:\msc\cvw305
|
||||||
|
Will install the compiler in C:\MSC\C600AX directory
|
||||||
|
and CodeView for Windows in C:\MSC\CV305 directory
|
||||||
|
|
||||||
|
Single file decompression:
|
||||||
|
Usage:
|
||||||
|
decomp src-filename dest-filename
|
||||||
|
|
||||||
|
|
||||||
|
Files contained on this (these) diskettes:
|
||||||
|
|
||||||
|
Terminology:
|
||||||
|
"extender-ready": the .EXE is a protect-mode .EXE, but does not
|
||||||
|
actually contain the DOS-extender. These .EXEs
|
||||||
|
are invoked (by default) from the CL.EXE
|
||||||
|
driver by using the new -EM switch.
|
||||||
|
|
||||||
|
C1L.EXE -- extender-ready C Compiler- large-model 1st pass
|
||||||
|
C2L.EXE -- extender-ready C Compiler- large-model 2nd pass
|
||||||
|
C3L.EXE -- extender-ready C Compiler- large-model 3rd pass
|
||||||
|
CL.EXE -- DOS extended C Compiler driver, version 6.00AX
|
||||||
|
CV.HLP -- New help file for CodeView for Windows, version 3.05
|
||||||
|
(replaces CVW.HLP from CodeView for Windows, version 3.00
|
||||||
|
CVW.EXE -- Single-monitor capable CodeView for Windows, version 3.05
|
||||||
|
README.DOC -- The file you are reading
|
||||||
|
VCV.386 -- driver required when running CVW.EXE on non-VGA
|
||||||
|
systems
|
||||||
|
SETUP.BAT -- Setup driver-- calls DECOMP.EXE to decompress the
|
||||||
|
files
|
||||||
|
DECOMP.EXE -- Decompression utility (this is bound so it will run
|
||||||
|
on either DOS or OS/2
|
||||||
|
SETUP.CMD -- OS/2 version of SETUP.BAT
|
||||||
|
|
||||||
|
=======================================================================
|
||||||
|
SECTION 2. Microsoft CodeView for Windows, version 3.05
|
||||||
|
|
||||||
|
This section contains information on the Microsoft CodeView for Windows
|
||||||
|
debugger (CVW), version 3.05, with which you can use a single monitor
|
||||||
|
for debugging programs. Single-monitor debugging and other features
|
||||||
|
new to CVW version 3.05 are described in this readme file. All other
|
||||||
|
features work as described in chapter 7, "Debugging in Protected Mode:
|
||||||
|
CodeView for Windows," in the Windows 3.0 Software Development Kit
|
||||||
|
Tools Manual.
|
||||||
|
|
||||||
|
This section has five parts:
|
||||||
|
|
||||||
|
Part Note
|
||||||
|
---- ----
|
||||||
|
1 Requirements
|
||||||
|
2 Starting CVW
|
||||||
|
3 The Output Command
|
||||||
|
4 The Debugging Display
|
||||||
|
|
||||||
|
----------------------< Part 1: Requirements >---------------------------
|
||||||
|
|
||||||
|
These requirements are the same as for CVW version 3.0:
|
||||||
|
|
||||||
|
- At least 384K of extended memory. For applications with many symbols,
|
||||||
|
1 megabyte or more of extended memory is required.
|
||||||
|
|
||||||
|
- For 80386/486-based systems, the WINDEBUG.386 driver is recommended.
|
||||||
|
Place the driver in your Windows SYSTEM directory and add the
|
||||||
|
following entry to the [386enh] section of your Windows SYSTEM.INI
|
||||||
|
file:
|
||||||
|
|
||||||
|
device=windebug.386
|
||||||
|
|
||||||
|
For single-monitor debugging, you must have one of the following:
|
||||||
|
|
||||||
|
- A VGA monitor. CVW directly supports single-monitor debugging with
|
||||||
|
a VGA monitor. No additional driver is needed.
|
||||||
|
|
||||||
|
- An EGA or other monitor with a 386/486-based system. With a non-VGA
|
||||||
|
monitor, you must install the VCV.386 driver. Place the driver in
|
||||||
|
your Windows SYSTEM directory and add the following entry to the
|
||||||
|
[386enh] section of your Windows SYSTEM.INI file:
|
||||||
|
|
||||||
|
device=vcv.386
|
||||||
|
|
||||||
|
-----------------------< Part 2: Starting CVW >----------------------------
|
||||||
|
|
||||||
|
The default startup is single-monitor. If you want to debug with two
|
||||||
|
monitors, include the /2 option described below.
|
||||||
|
|
||||||
|
|
||||||
|
VGA Monitor
|
||||||
|
-----------
|
||||||
|
|
||||||
|
If you are using a VGA monitor, start CVW as described in the section
|
||||||
|
"Starting a Debugging Session" of chapter 7, "Debugging in Protected
|
||||||
|
Mode: CodeView for Windows," in the Microsoft Windows SDK Tools manual.
|
||||||
|
|
||||||
|
|
||||||
|
Other Monitors
|
||||||
|
--------------
|
||||||
|
|
||||||
|
If you are not using a VGA monitor on a 386/486 system, start CVW
|
||||||
|
with /V command-line option.
|
||||||
|
|
||||||
|
The /V option enables single-monitor debugging with any display. You must
|
||||||
|
have the VCV.386 driver to use this option.
|
||||||
|
|
||||||
|
|
||||||
|
Two Monitors (the /2 option)
|
||||||
|
----------------------------
|
||||||
|
|
||||||
|
If you have installed the VCV.386 driver for single-monitor debugging, but
|
||||||
|
you want CVW to use a second monitor for debugging, start CVW with the /2
|
||||||
|
option.
|
||||||
|
|
||||||
|
(The /8 is still available and works as described in the section
|
||||||
|
"Starting a Debugging Session" of chapter 7, "Debugging in Protected
|
||||||
|
Mode: CodeView for Windows," in the Microsoft Windows SDK Tools manual.)
|
||||||
|
|
||||||
|
--------------------< Part 3: The Output Command >-------------------------
|
||||||
|
|
||||||
|
The Output command on the CVW View menu allows screen exchange with a
|
||||||
|
single monitor. You can also execute the command by pressing F4.
|
||||||
|
|
||||||
|
Press any key to return to the CVW screen.
|
||||||
|
|
||||||
|
The Output command is not available if you do not use a VGA monitor or if
|
||||||
|
you start CVW with the /V option.
|
||||||
|
|
||||||
|
-----------------< Part 4: The Debugging Display >--------------------------
|
||||||
|
|
||||||
|
VGA (Without the /V Option)
|
||||||
|
---------------------------
|
||||||
|
|
||||||
|
The display is 50 lines only.
|
||||||
|
|
||||||
|
|
||||||
|
With /V Option
|
||||||
|
--------------
|
||||||
|
|
||||||
|
The display is 25 lines only.
|
||||||
|
|
||||||
|
============================================================================
|
||||||
|
SECTION 3. Information on DOS-extended Microsoft C Compiler, version 6.00AX
|
||||||
|
|
||||||
|
Usage: The DOS-extended C Compiler, version 6.00AX should be used
|
||||||
|
only when you have encountered capacity limitation in Microsoft C Compiler
|
||||||
|
version 6.00A.
|
||||||
|
|
||||||
|
System Requirements:
|
||||||
|
- MS DOS 3.0 or higher
|
||||||
|
One of the following:
|
||||||
|
- Microsoft Windows, version 3.0; 386 enhanced-mode DOS shell
|
||||||
|
(DPMI server) with at least 1mb extended-memory available.
|
||||||
|
- VCPI compliant extended-memory manager, such as 386Max(tm) from
|
||||||
|
Qualitas or QEMM from Quarterdeck Systems) with at least 1Mb
|
||||||
|
of extended-memory available.
|
||||||
|
- Microsoft Corporation's HIMEM.SYS and EMM386.SYS (from Microsoft
|
||||||
|
Windows, version 3.0, package-- for example) with at least 1Mb
|
||||||
|
extended memory available.
|
||||||
|
- Microsoft HIMEM.SYS (sets aside first 64K of extended-memory as
|
||||||
|
"himem" area-- compiler uses the remainder.
|
||||||
|
|
||||||
|
Invocation: There is a single new switch to the CL driver which will
|
||||||
|
cause the DOS-extended CL.EXE (and all three large-model compiler passes)
|
||||||
|
to be invoked. This new switch is: -EM.
|
||||||
|
Note: the -B[1|2|3] switch can still be used to ovveride the passes.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
For a traditional MAKE file:
|
||||||
|
cl -EM -AS -Gsw -Oas -Zpe generic.c
|
||||||
|
For a .MAK file, created from the Microsoft Programmer's WorkBench,
|
||||||
|
change the global C flags to look like:
|
||||||
|
CFLAGS_G = /EM /W2 /BATCH
|
||||||
|
|
||||||
|
Performance: You may notice that version C6.00AX takes slightly longer
|
||||||
|
to compile than version 6.00A. This is expected-- as the 2nd and 3rd
|
||||||
|
passes of the compiler are large-model programs (in C6.00A these are
|
||||||
|
medium-model) and, of course, a large-model program uses 32-bit
|
||||||
|
pointers, and can be slighty slower. Therefore, only use the
|
||||||
|
DOS-extended compiler if you are encountering capacity limitations.
|
||||||
|
|
BIN
Microsoft C v6ax/BINB/SETUP.EXE
Normal file
BIN
Microsoft C v6ax/BINB/SETUP.EXE
Normal file
Binary file not shown.
35
Microsoft C v6ax/CODE/E.C
Normal file
35
Microsoft C v6ax/CODE/E.C
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
#ifndef MWC
|
||||||
|
#include <string.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define DIGITS_TO_FIND 200 /*9009*/
|
||||||
|
|
||||||
|
int main() {
|
||||||
|
|
||||||
|
int N = DIGITS_TO_FIND;
|
||||||
|
int x = 0;
|
||||||
|
int a[ DIGITS_TO_FIND ];
|
||||||
|
int n;
|
||||||
|
|
||||||
|
for (n = N - 1; n > 0; --n) {
|
||||||
|
a[n] = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
a[1] = 2, a[0] = 0;
|
||||||
|
while (N > 9) {
|
||||||
|
n = N--;
|
||||||
|
while (--n) {
|
||||||
|
a[n] = x % n;
|
||||||
|
|
||||||
|
x = 10 * a[n-1] + x/n;
|
||||||
|
}
|
||||||
|
printf("%d", x);
|
||||||
|
}
|
||||||
|
|
||||||
|
printf( "\ndone\n" );
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
35
Microsoft C v6ax/CODE/SIEVE.C
Normal file
35
Microsoft C v6ax/CODE/SIEVE.C
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
/* sieve.c */
|
||||||
|
|
||||||
|
/* Eratosthenes Sieve Prime Number Program in C from Byte Jan 1983
|
||||||
|
to compare the speed. */
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
#define TRUE 1
|
||||||
|
#define FALSE 0
|
||||||
|
#define SIZE 8190
|
||||||
|
typedef int bool;
|
||||||
|
|
||||||
|
char flags[SIZE+1];
|
||||||
|
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
int i,k;
|
||||||
|
int prime,count,iter;
|
||||||
|
|
||||||
|
for (iter = 1; iter <= 10; iter++) { /* do program 10 times */
|
||||||
|
count = 0; /* initialize prime counter */
|
||||||
|
for (i = 0; i <= SIZE; i++) /* set all flags TRUE */
|
||||||
|
flags[i] = TRUE;
|
||||||
|
for (i = 0; i <= SIZE; i++) {
|
||||||
|
if (flags[i]) { /* found a prime */
|
||||||
|
prime = i + i + 3; /* twice index + 3 */
|
||||||
|
for (k = i + prime; k <= SIZE; k += prime)
|
||||||
|
flags[k] = FALSE; /* kill all multiples */
|
||||||
|
count++; /* primes found */
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
printf("%d primes.\n",count); /*primes found in 10th pass */
|
||||||
|
return 0;
|
||||||
|
}
|
169
Microsoft C v6ax/CODE/TM.C
Normal file
169
Microsoft C v6ax/CODE/TM.C
Normal file
@ -0,0 +1,169 @@
|
|||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
#ifdef AZTEC86
|
||||||
|
#include <stdlib.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef HISOFTC
|
||||||
|
#include <stdlib.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef INTELC
|
||||||
|
#include <stdlib.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef WATCOM
|
||||||
|
#include <malloc.h>
|
||||||
|
#include <process.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef powerc
|
||||||
|
#define allocs 50
|
||||||
|
#else
|
||||||
|
#ifdef HISOFTC
|
||||||
|
#define allocs 66 /* not enough RAM with hisoft to go higher */
|
||||||
|
#else
|
||||||
|
/* most c runtimes work up to 69, but use 66 to have a consistent benchmark */
|
||||||
|
#define allocs 66
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
int logging = 1;
|
||||||
|
|
||||||
|
char * memset_x( p, v, c ) char * p; int v; int c;
|
||||||
|
{
|
||||||
|
unsigned char * pc = (unsigned char *) p;
|
||||||
|
unsigned char val = (unsigned char) ( v & 0xff );
|
||||||
|
int i;
|
||||||
|
|
||||||
|
if ( 0 == p )
|
||||||
|
{
|
||||||
|
printf( "request to memset a null pointer\n" );
|
||||||
|
exit( 1 );
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( logging )
|
||||||
|
#ifdef CPMTIME
|
||||||
|
printf( " memset p %u, v %d, val %x, c %d\n", p, v, val, c );
|
||||||
|
#else
|
||||||
|
|
||||||
|
#ifdef HISOFTC
|
||||||
|
printf( " memset p %u, v %d, val %x, c %d\n", p, v, val, c );
|
||||||
|
#else
|
||||||
|
printf( " memset p %p, v %d, val %x, c %d\n", p, v, val, c );
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
for ( i = 0; i < c; i++ )
|
||||||
|
*pc++ = val;
|
||||||
|
return p;
|
||||||
|
}
|
||||||
|
|
||||||
|
void chkmem( p, v, c ) char * p; int v; int c;
|
||||||
|
{
|
||||||
|
unsigned char * pc = (unsigned char *) p;
|
||||||
|
unsigned char val = (unsigned char) ( v & 0xff );
|
||||||
|
int i;
|
||||||
|
|
||||||
|
if ( 0 == p )
|
||||||
|
{
|
||||||
|
printf( "request to chkmem a null pointer\n" );
|
||||||
|
exit( 1 );
|
||||||
|
}
|
||||||
|
|
||||||
|
for ( i = 0; i < c; i++ )
|
||||||
|
{
|
||||||
|
if ( *pc != val )
|
||||||
|
{
|
||||||
|
#ifdef CPMTIME
|
||||||
|
printf( "memory isn't as expected! p %u, v %d, c %d, *pc %d\n",p, v, c, *pc );
|
||||||
|
#else
|
||||||
|
printf( "memory isn't as expected! p %p, v %d, c %d, *pc %d\n",p, v, c, *pc );
|
||||||
|
#endif
|
||||||
|
exit( 1 );
|
||||||
|
}
|
||||||
|
pc++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int main( argc, argv ) int argc; char * argv[];
|
||||||
|
{
|
||||||
|
int i, cb, c_cb, j;
|
||||||
|
char * pc;
|
||||||
|
char * ap[ allocs ];
|
||||||
|
|
||||||
|
logging = ( argc > 1 );
|
||||||
|
pc = argv[ 0 ]; /* evade compiler warning */
|
||||||
|
|
||||||
|
for ( j = 0; j < 10; j++ )
|
||||||
|
{
|
||||||
|
if ( logging )
|
||||||
|
printf( "in alloc mode\n" );
|
||||||
|
|
||||||
|
for ( i = 0; i < allocs; i++ )
|
||||||
|
{
|
||||||
|
cb = 8 + ( i * 10 );
|
||||||
|
c_cb = cb + 5;
|
||||||
|
if ( logging )
|
||||||
|
printf( " i, cb: %d %d\n", i, cb );
|
||||||
|
|
||||||
|
pc = (char *) calloc( c_cb, 1 );
|
||||||
|
chkmem( pc, 0, c_cb );
|
||||||
|
memset_x( pc, 0xcc, c_cb );
|
||||||
|
|
||||||
|
ap[ i ] = (char *) malloc( cb );
|
||||||
|
memset_x( ap[ i ], 0xaa, cb );
|
||||||
|
|
||||||
|
chkmem( pc, 0xcc, c_cb );
|
||||||
|
free( pc );
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( logging )
|
||||||
|
printf( "in free mode, even first\n" );
|
||||||
|
|
||||||
|
for ( i = 0; i < allocs; i += 2 )
|
||||||
|
{
|
||||||
|
cb = 8 + ( i * 10 );
|
||||||
|
c_cb = cb + 3;
|
||||||
|
if ( logging )
|
||||||
|
printf( " i, cb: %d %d\n", i, cb );
|
||||||
|
|
||||||
|
pc = (char *) calloc( c_cb, 1 );
|
||||||
|
chkmem( pc, 0, c_cb );
|
||||||
|
memset_x( pc, 0xcc, c_cb );
|
||||||
|
|
||||||
|
chkmem( ap[ i ], 0xaa, cb );
|
||||||
|
memset_x( ap[ i ], 0xff, cb );
|
||||||
|
free( ap[ i ] );
|
||||||
|
|
||||||
|
chkmem( pc, 0xcc, c_cb );
|
||||||
|
free( pc );
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( logging )
|
||||||
|
printf( "in free mode, now odd\n" );
|
||||||
|
|
||||||
|
for ( i = 1; i < allocs; i += 2 )
|
||||||
|
{
|
||||||
|
cb = 8 + ( i * 10 );
|
||||||
|
c_cb = cb + 7;
|
||||||
|
if ( logging )
|
||||||
|
printf( " i, cb: %d %d\n", i, cb );
|
||||||
|
|
||||||
|
pc = (char *) calloc( c_cb, 1 );
|
||||||
|
chkmem( pc, 0, c_cb );
|
||||||
|
memset_x( pc, 0xcc, c_cb );
|
||||||
|
|
||||||
|
chkmem( ap[ i ], 0xaa, cb );
|
||||||
|
memset_x( ap[ i ], 0xff, cb );
|
||||||
|
free( ap[ i ] );
|
||||||
|
|
||||||
|
chkmem( pc, 0xcc, c_cb );
|
||||||
|
free( pc );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
printf( "success\n" );
|
||||||
|
return 0;
|
||||||
|
}
|
527
Microsoft C v6ax/CODE/TTT.C
Normal file
527
Microsoft C v6ax/CODE/TTT.C
Normal file
@ -0,0 +1,527 @@
|
|||||||
|
/*
|
||||||
|
This version builds with old compilers including:
|
||||||
|
Aztec C 1.06 for 8080 & Z80 on CP/M.
|
||||||
|
Microsoft C Compiler V1.04 for 8086 on DOS. (This is Lattice C)
|
||||||
|
Microsoft C Compiler V2.03 for 8086 on DOS. (Still Lattice C)
|
||||||
|
Microsoft C Compiler V3.00 for 8086 on DOS.
|
||||||
|
QuickC 1.0
|
||||||
|
Turbo C 2.0
|
||||||
|
The syntax is old and reminds me of 7th grade summer vacation.
|
||||||
|
Much of this code is awkward to satisfy the lowest common denominator of many compilers.
|
||||||
|
unsigned long isn't supported in many older compilers, so long is used instead.
|
||||||
|
Early DOS and CP/M require register variabes to be int, not char or other types.
|
||||||
|
The perf improvement of using register-int instead of stack-char is worth it.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define LINT_ARGS
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
#ifdef DOSTIME
|
||||||
|
#include <time.h>
|
||||||
|
#include <dos.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define true 1
|
||||||
|
#define false 0
|
||||||
|
|
||||||
|
/* Function Pointers are the fastest implementation for almost every compiler */
|
||||||
|
#define UseFunPointers 1
|
||||||
|
#define UseWinner2 2
|
||||||
|
#define UseLookForWinner 3
|
||||||
|
#define WinMethod UseFunPointers
|
||||||
|
|
||||||
|
#define ABPrune true /* alpha beta pruning */
|
||||||
|
#define WinLosePrune true /* stop early on win/lose */
|
||||||
|
#define ScoreWin 6
|
||||||
|
#define ScoreTie 5
|
||||||
|
#define ScoreLose 4
|
||||||
|
#define ScoreMax 9
|
||||||
|
#define ScoreMin 2
|
||||||
|
#define DefaultIterations 10
|
||||||
|
|
||||||
|
#define PieceX 1
|
||||||
|
#define PieceO 2
|
||||||
|
#define PieceBlank 0
|
||||||
|
|
||||||
|
typedef char ttype; /* 8-bit and 16-bit cpus do best with char aside from register in locals */
|
||||||
|
|
||||||
|
int g_Iterations = DefaultIterations;
|
||||||
|
ttype g_board[ 9 ];
|
||||||
|
|
||||||
|
#if WinMethod == UseFunPointers
|
||||||
|
|
||||||
|
ttype pos0func()
|
||||||
|
{
|
||||||
|
/* using "register int" instead of "ttype" for x is faster on 8086 and Z80 */
|
||||||
|
register int x = g_board[0];
|
||||||
|
|
||||||
|
if ( ( x == g_board[1] && x == g_board[2] ) ||
|
||||||
|
( x == g_board[3] && x == g_board[6] ) ||
|
||||||
|
( x == g_board[4] && x == g_board[8] ) )
|
||||||
|
return x;
|
||||||
|
return PieceBlank;
|
||||||
|
}
|
||||||
|
|
||||||
|
ttype pos1func()
|
||||||
|
{
|
||||||
|
register int x = g_board[1];
|
||||||
|
|
||||||
|
if ( ( x == g_board[0] && x == g_board[2] ) ||
|
||||||
|
( x == g_board[4] && x == g_board[7] ) )
|
||||||
|
return x;
|
||||||
|
return PieceBlank;
|
||||||
|
}
|
||||||
|
|
||||||
|
ttype pos2func()
|
||||||
|
{
|
||||||
|
register int x = g_board[2];
|
||||||
|
|
||||||
|
if ( ( x == g_board[0] && x == g_board[1] ) ||
|
||||||
|
( x == g_board[5] && x == g_board[8] ) ||
|
||||||
|
( x == g_board[4] && x == g_board[6] ) )
|
||||||
|
return x;
|
||||||
|
return PieceBlank;
|
||||||
|
}
|
||||||
|
|
||||||
|
ttype pos3func()
|
||||||
|
{
|
||||||
|
register int x = g_board[3];
|
||||||
|
|
||||||
|
if ( ( x == g_board[4] && x == g_board[5] ) ||
|
||||||
|
( x == g_board[0] && x == g_board[6] ) )
|
||||||
|
return x;
|
||||||
|
return PieceBlank;
|
||||||
|
}
|
||||||
|
|
||||||
|
ttype pos4func()
|
||||||
|
{
|
||||||
|
register int x = g_board[4];
|
||||||
|
|
||||||
|
if ( ( x == g_board[0] && x == g_board[8] ) ||
|
||||||
|
( x == g_board[2] && x == g_board[6] ) ||
|
||||||
|
( x == g_board[1] && x == g_board[7] ) ||
|
||||||
|
( x == g_board[3] && x == g_board[5] ) )
|
||||||
|
return x;
|
||||||
|
return PieceBlank;
|
||||||
|
}
|
||||||
|
|
||||||
|
ttype pos5func()
|
||||||
|
{
|
||||||
|
register int x = g_board[5];
|
||||||
|
|
||||||
|
if ( ( x == g_board[3] && x == g_board[4] ) ||
|
||||||
|
( x == g_board[2] && x == g_board[8] ) )
|
||||||
|
return x;
|
||||||
|
return PieceBlank;
|
||||||
|
}
|
||||||
|
|
||||||
|
ttype pos6func()
|
||||||
|
{
|
||||||
|
register int x = g_board[6];
|
||||||
|
|
||||||
|
if ( ( x == g_board[7] && x == g_board[8] ) ||
|
||||||
|
( x == g_board[0] && x == g_board[3] ) ||
|
||||||
|
( x == g_board[4] && x == g_board[2] ) )
|
||||||
|
return x;
|
||||||
|
return PieceBlank;
|
||||||
|
}
|
||||||
|
|
||||||
|
ttype pos7func()
|
||||||
|
{
|
||||||
|
register int x = g_board[7];
|
||||||
|
|
||||||
|
if ( ( x == g_board[6] && x == g_board[8] ) ||
|
||||||
|
( x == g_board[1] && x == g_board[4] ) )
|
||||||
|
return x;
|
||||||
|
return PieceBlank;
|
||||||
|
}
|
||||||
|
|
||||||
|
ttype pos8func()
|
||||||
|
{
|
||||||
|
register int x = g_board[8];
|
||||||
|
|
||||||
|
if ( ( x == g_board[6] && x == g_board[7] ) ||
|
||||||
|
( x == g_board[2] && x == g_board[5] ) ||
|
||||||
|
( x == g_board[0] && x == g_board[4] ) )
|
||||||
|
return x;
|
||||||
|
return PieceBlank;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef ttype pfunc_t();
|
||||||
|
|
||||||
|
pfunc_t * winner_functions[9] =
|
||||||
|
{
|
||||||
|
pos0func,
|
||||||
|
pos1func,
|
||||||
|
pos2func,
|
||||||
|
pos3func,
|
||||||
|
pos4func,
|
||||||
|
pos5func,
|
||||||
|
pos6func,
|
||||||
|
pos7func,
|
||||||
|
pos8func
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if WinMethod == UseWinner2
|
||||||
|
|
||||||
|
ttype winner2( move ) ttype move;
|
||||||
|
{
|
||||||
|
register int x; /* faster than ttype x on the stack */
|
||||||
|
|
||||||
|
switch( move ) /* msc v3 from 1985 generates a jump table! */
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
{
|
||||||
|
x = g_board[ 0 ];
|
||||||
|
if ( ( ( x == g_board[1] ) && ( x == g_board[2] ) ) ||
|
||||||
|
( ( x == g_board[3] ) && ( x == g_board[6] ) ) ||
|
||||||
|
( ( x == g_board[4] ) && ( x == g_board[8] ) ) )
|
||||||
|
return x;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 1:
|
||||||
|
{
|
||||||
|
x = g_board[ 1 ];
|
||||||
|
if ( ( ( x == g_board[0] ) && ( x == g_board[2] ) ) ||
|
||||||
|
( ( x == g_board[4] ) && ( x == g_board[7] ) ) )
|
||||||
|
return x;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 2:
|
||||||
|
{
|
||||||
|
x = g_board[ 2 ];
|
||||||
|
if ( ( ( x == g_board[0] ) && ( x == g_board[1] ) ) ||
|
||||||
|
( ( x == g_board[5] ) && ( x == g_board[8] ) ) ||
|
||||||
|
( ( x == g_board[4] ) && ( x == g_board[6] ) ) )
|
||||||
|
return x;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 3:
|
||||||
|
{
|
||||||
|
x = g_board[ 3 ];
|
||||||
|
if ( ( ( x == g_board[4] ) && ( x == g_board[5] ) ) ||
|
||||||
|
( ( x == g_board[0] ) && ( x == g_board[6] ) ) )
|
||||||
|
return x;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 4:
|
||||||
|
{
|
||||||
|
x = g_board[ 4 ];
|
||||||
|
if ( ( ( x == g_board[0] ) && ( x == g_board[8] ) ) ||
|
||||||
|
( ( x == g_board[2] ) && ( x == g_board[6] ) ) ||
|
||||||
|
( ( x == g_board[1] ) && ( x == g_board[7] ) ) ||
|
||||||
|
( ( x == g_board[3] ) && ( x == g_board[5] ) ) )
|
||||||
|
return x;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 5:
|
||||||
|
{
|
||||||
|
x = g_board[ 5 ];
|
||||||
|
if ( ( ( x == g_board[3] ) && ( x == g_board[4] ) ) ||
|
||||||
|
( ( x == g_board[2] ) && ( x == g_board[8] ) ) )
|
||||||
|
return x;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 6:
|
||||||
|
{
|
||||||
|
x = g_board[ 6 ];
|
||||||
|
if ( ( ( x == g_board[7] ) && ( x == g_board[8] ) ) ||
|
||||||
|
( ( x == g_board[0] ) && ( x == g_board[3] ) ) ||
|
||||||
|
( ( x == g_board[4] ) && ( x == g_board[2] ) ) )
|
||||||
|
return x;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 7:
|
||||||
|
{
|
||||||
|
x = g_board[ 7 ];
|
||||||
|
if ( ( ( x == g_board[6] ) && ( x == g_board[8] ) ) ||
|
||||||
|
( ( x == g_board[1] ) && ( x == g_board[4] ) ) )
|
||||||
|
return x;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 8:
|
||||||
|
{
|
||||||
|
x = g_board[ 8 ];
|
||||||
|
if ( ( ( x == g_board[6] ) && ( x == g_board[7] ) ) ||
|
||||||
|
( ( x == g_board[2] ) && ( x == g_board[5] ) ) ||
|
||||||
|
( ( x == g_board[0] ) && ( x == g_board[4] ) ) )
|
||||||
|
return x;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return PieceBlank;
|
||||||
|
} /*winner2*/
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if WinMethod == UseLookForWinner
|
||||||
|
|
||||||
|
ttype LookForWinner()
|
||||||
|
{
|
||||||
|
register int p = g_board[0]; /* faster as register int than ttype on 8086 and Z80 */
|
||||||
|
if ( PieceBlank != p )
|
||||||
|
{
|
||||||
|
if ( p == g_board[1] && p == g_board[2] )
|
||||||
|
return p;
|
||||||
|
|
||||||
|
if ( p == g_board[3] && p == g_board[6] )
|
||||||
|
return p;
|
||||||
|
}
|
||||||
|
|
||||||
|
p = g_board[3];
|
||||||
|
if ( PieceBlank != p && p == g_board[4] && p == g_board[5] )
|
||||||
|
return p;
|
||||||
|
|
||||||
|
p = g_board[6];
|
||||||
|
if ( PieceBlank != p && p == g_board[7] && p == g_board[8] )
|
||||||
|
return p;
|
||||||
|
|
||||||
|
p = g_board[1];
|
||||||
|
if ( PieceBlank != p && p == g_board[4] && p == g_board[7] )
|
||||||
|
return p;
|
||||||
|
|
||||||
|
p = g_board[2];
|
||||||
|
if ( PieceBlank != p && p == g_board[5] && p == g_board[8] )
|
||||||
|
return p;
|
||||||
|
|
||||||
|
p = g_board[4];
|
||||||
|
if ( PieceBlank != p )
|
||||||
|
{
|
||||||
|
if ( ( p == g_board[0] ) && ( p == g_board[8] ) )
|
||||||
|
return p;
|
||||||
|
|
||||||
|
if ( ( p == g_board[2] ) && ( p == g_board[6] ) )
|
||||||
|
return p;
|
||||||
|
}
|
||||||
|
|
||||||
|
return PieceBlank;
|
||||||
|
} /*LookForWinner*/
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
int g_IMoves = 0;
|
||||||
|
|
||||||
|
ttype MinMax( alpha, beta, depth, move ) ttype alpha; ttype beta; ttype depth; ttype move;
|
||||||
|
{
|
||||||
|
ttype pieceMove, score; /* better perf with char than int. out of registers so use stack */
|
||||||
|
register int p, value; /* better perf with these as an int on Z80, 8080, and 8086 */
|
||||||
|
|
||||||
|
g_IMoves++;
|
||||||
|
|
||||||
|
if ( depth >= 4 )
|
||||||
|
{
|
||||||
|
#if WinMethod == UseFunPointers
|
||||||
|
p = ( * winner_functions[ move ] )();
|
||||||
|
#endif
|
||||||
|
#if WinMethod == UseWinner2
|
||||||
|
p = winner2( move );
|
||||||
|
#endif
|
||||||
|
#if WinMethod == UseLookForWinner
|
||||||
|
p = LookForWinner();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if ( PieceBlank != p )
|
||||||
|
{
|
||||||
|
if ( PieceX == p )
|
||||||
|
return ScoreWin;
|
||||||
|
|
||||||
|
return ScoreLose;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( 8 == depth )
|
||||||
|
return ScoreTie;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( depth & 1 )
|
||||||
|
{
|
||||||
|
value = ScoreMin;
|
||||||
|
pieceMove = PieceX;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
value = ScoreMax;
|
||||||
|
pieceMove = PieceO;
|
||||||
|
}
|
||||||
|
|
||||||
|
for ( p = 0; p < 9; p++ )
|
||||||
|
{
|
||||||
|
if ( PieceBlank == g_board[ p ] )
|
||||||
|
{
|
||||||
|
g_board[p] = pieceMove;
|
||||||
|
score = MinMax( alpha, beta, depth + 1, p );
|
||||||
|
g_board[p] = PieceBlank;
|
||||||
|
|
||||||
|
if ( depth & 1 )
|
||||||
|
{
|
||||||
|
#if WinLosePrune /* #if statements must be in first column for MS C 1.0 */
|
||||||
|
if ( ScoreWin == score )
|
||||||
|
return ScoreWin;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if ( score > value )
|
||||||
|
{
|
||||||
|
value = score;
|
||||||
|
|
||||||
|
#if ABPrune
|
||||||
|
if ( value >= beta )
|
||||||
|
return value;
|
||||||
|
if ( value > alpha )
|
||||||
|
alpha = value;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
#if WinLosePrune
|
||||||
|
if ( ScoreLose == score )
|
||||||
|
return ScoreLose;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if ( score < value )
|
||||||
|
{
|
||||||
|
value = score;
|
||||||
|
|
||||||
|
#if ABPrune
|
||||||
|
if ( value <= alpha )
|
||||||
|
return value;
|
||||||
|
if ( value < beta )
|
||||||
|
beta = value;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return value;
|
||||||
|
} /*MinMax*/
|
||||||
|
|
||||||
|
long g_Moves = 0;
|
||||||
|
|
||||||
|
int FindSolution( position ) ttype position;
|
||||||
|
{
|
||||||
|
register int i;
|
||||||
|
|
||||||
|
for ( i = 0; i < 9; i++ )
|
||||||
|
g_board[ i ] = PieceBlank;
|
||||||
|
|
||||||
|
g_board[ position ] = PieceX;
|
||||||
|
|
||||||
|
for ( i = 0; i < g_Iterations; i++ )
|
||||||
|
{
|
||||||
|
g_IMoves = 0;
|
||||||
|
MinMax( ScoreMin, ScoreMax, 0, position );
|
||||||
|
g_Moves += g_IMoves; /* do the 4-byte long addition once per loop to save work */
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
} /*FindSolution*/
|
||||||
|
|
||||||
|
#ifdef CPMTIME
|
||||||
|
|
||||||
|
struct CPMTimeValue
|
||||||
|
{
|
||||||
|
int h, m, s, l;
|
||||||
|
};
|
||||||
|
|
||||||
|
void print_time_now()
|
||||||
|
{
|
||||||
|
/* This CP/M BDOS call of 105 is only implemented in NTVCM -- it's not a standard CP/M 2.2 call */
|
||||||
|
|
||||||
|
struct CPMTimeValue t;
|
||||||
|
t.h = t.m = t.s = t.l = 0;
|
||||||
|
|
||||||
|
bdos( 105, &t );
|
||||||
|
printf( "current time: %02d:%02d:%02d.%02d\n", t.h, t.m, t.s, t.l );
|
||||||
|
} /*print_time_now*/
|
||||||
|
|
||||||
|
long get_ms()
|
||||||
|
{
|
||||||
|
/* This CP/M BDOS call of 105 is only implemented in NTVCM -- it's not a standard CP/M 2.2 call */
|
||||||
|
|
||||||
|
long h, m, s, l;
|
||||||
|
struct CPMTimeValue t;
|
||||||
|
t.h = t.m = t.s = t.l = 0;
|
||||||
|
|
||||||
|
bdos( 105, &t );
|
||||||
|
h = t.h;
|
||||||
|
m = t.m;
|
||||||
|
s = t.s;
|
||||||
|
l = t.l;
|
||||||
|
|
||||||
|
return h * 3600000 + m * 60000 + s * 1000 + l * 10;
|
||||||
|
} /*get_ms*/
|
||||||
|
|
||||||
|
#else /* no elif with old compilers */
|
||||||
|
|
||||||
|
#ifdef DOSTIME
|
||||||
|
|
||||||
|
void print_time_now()
|
||||||
|
{
|
||||||
|
/* Make a DOS interrupt call to get the time */
|
||||||
|
|
||||||
|
union REGS wrIn, wrOut;
|
||||||
|
|
||||||
|
wrIn.h.ah = 0x2c;
|
||||||
|
intdos( &wrIn, &wrOut );
|
||||||
|
printf( "current time: %02d:%02d:%02d.%02d\n", wrOut.h.ch, wrOut.h.cl, wrOut.h.dh, wrOut.h.dl );
|
||||||
|
fflush( stdout );
|
||||||
|
} /*print_time_now*/
|
||||||
|
|
||||||
|
long get_ms()
|
||||||
|
{
|
||||||
|
/* this function takes about 3 milliseconds on the original IBM PC */
|
||||||
|
|
||||||
|
long h, m, s, l;
|
||||||
|
union REGS wrIn, wrOut;
|
||||||
|
|
||||||
|
wrIn.h.ah = 0x2c;
|
||||||
|
intdos( &wrIn, &wrOut );
|
||||||
|
|
||||||
|
h = wrOut.h.ch;
|
||||||
|
m = wrOut.h.cl;
|
||||||
|
s = wrOut.h.dh;
|
||||||
|
l = wrOut.h.dl;
|
||||||
|
|
||||||
|
return h * 3600000 + m * 60000 + s * 1000 + l * 10;
|
||||||
|
} /*get_ms*/
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
/* must do this on actual CP/M machines */
|
||||||
|
|
||||||
|
int print_time_now() { return 0; }
|
||||||
|
long get_ms() { return 0; }
|
||||||
|
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
int main( argc, argv ) int argc; char * argv[];
|
||||||
|
{
|
||||||
|
long start_time, end_time;
|
||||||
|
|
||||||
|
if ( 2 == argc )
|
||||||
|
sscanf( argv[ 1 ], "%d", &g_Iterations ); /* no atoi in MS C 1.0 */
|
||||||
|
|
||||||
|
start_time = get_ms();
|
||||||
|
|
||||||
|
FindSolution( 0 );
|
||||||
|
FindSolution( 1 );
|
||||||
|
FindSolution( 4 );
|
||||||
|
|
||||||
|
end_time = get_ms();
|
||||||
|
|
||||||
|
printf( "runtime in ms: %ld\n", end_time - start_time );
|
||||||
|
printf( "move count: %ld\n", g_Moves ); /* 6493 * g_Iterations */
|
||||||
|
printf( "iteration count: %d\n", g_Iterations );
|
||||||
|
printf( "method: %s\n",
|
||||||
|
( WinMethod == UseFunPointers ) ? "function pointers" :
|
||||||
|
( WinMethod == UseWinner2 ) ? "winner2" :
|
||||||
|
( WinMethod == UseLookForWinner ) ? "look for winner" :
|
||||||
|
"invalid method" );
|
||||||
|
return 0;
|
||||||
|
} /*main*/
|
||||||
|
|
4
Microsoft C v6ax/CODE/m.bat
Normal file
4
Microsoft C v6ax/CODE/m.bat
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
ntvdm -c -r:.. -e:path=c:\bin;c:\binb,include=c:\include,lib=c:\lib ..\bin\cl.exe /nologo /B1 C1L /B2 C2L /Owx /Fe%1.exe /Fc%1.cod %1.c
|
||||||
|
ntvdm -c -p %1
|
||||||
|
|
||||||
|
|
BIN
Microsoft C v6ax/HELP/CL.HLP
Normal file
BIN
Microsoft C v6ax/HELP/CL.HLP
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/HELP/CLANG.HLP
Normal file
BIN
Microsoft C v6ax/HELP/CLANG.HLP
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/HELP/CV.HLP
Normal file
BIN
Microsoft C v6ax/HELP/CV.HLP
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/HELP/LINK.HLP
Normal file
BIN
Microsoft C v6ax/HELP/LINK.HLP
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/HELP/PWB.HLP
Normal file
BIN
Microsoft C v6ax/HELP/PWB.HLP
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/HELP/QH.HLP
Normal file
BIN
Microsoft C v6ax/HELP/QH.HLP
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/HELP/UTILERR.HLP
Normal file
BIN
Microsoft C v6ax/HELP/UTILERR.HLP
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/HELP/UTILS.HLP
Normal file
BIN
Microsoft C v6ax/HELP/UTILS.HLP
Normal file
Binary file not shown.
34
Microsoft C v6ax/INCLUDE/ASSERT.H
Normal file
34
Microsoft C v6ax/INCLUDE/ASSERT.H
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
/***
|
||||||
|
*assert.h - define the assert macro
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* Defines the assert(exp) macro.
|
||||||
|
* [ANSI/System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#undef assert
|
||||||
|
|
||||||
|
#ifdef NDEBUG
|
||||||
|
|
||||||
|
#define assert(exp) ((void)0)
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
void _FAR_ _cdecl _assert(void _FAR_ *, void _FAR_ *, unsigned);
|
||||||
|
#define assert(exp) \
|
||||||
|
( (exp) ? (void) 0 : _assert(#exp, __FILE__, __LINE__) )
|
||||||
|
|
||||||
|
#endif /* NDEBUG */
|
175
Microsoft C v6ax/INCLUDE/BIOS.H
Normal file
175
Microsoft C v6ax/INCLUDE/BIOS.H
Normal file
@ -0,0 +1,175 @@
|
|||||||
|
/***
|
||||||
|
*bios.h - declarations for bios interface functions and supporting definitions
|
||||||
|
*
|
||||||
|
* Copyright (c) 1987-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file declares the constants, structures, and functions
|
||||||
|
* used for accessing and using various BIOS interfaces.
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#ifndef _MT
|
||||||
|
|
||||||
|
/* manifest constants for BIOS serial communications (RS-232) support */
|
||||||
|
|
||||||
|
/* serial port services */
|
||||||
|
|
||||||
|
#define _COM_INIT 0 /* init serial port */
|
||||||
|
#define _COM_SEND 1 /* send character */
|
||||||
|
#define _COM_RECEIVE 2 /* receive character */
|
||||||
|
#define _COM_STATUS 3 /* get serial port status */
|
||||||
|
|
||||||
|
/* serial port initializers. One and only one constant from each of the
|
||||||
|
* following four groups - character size, stop bit, parity, and baud rate -
|
||||||
|
* must be specified in the initialization byte.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* character size initializers */
|
||||||
|
|
||||||
|
#define _COM_CHR7 2 /* 7 bits characters */
|
||||||
|
#define _COM_CHR8 3 /* 8 bits characters */
|
||||||
|
|
||||||
|
/* stop bit values - on or off */
|
||||||
|
|
||||||
|
#define _COM_STOP1 0 /* 1 stop bit */
|
||||||
|
#define _COM_STOP2 4 /* 2 stop bits */
|
||||||
|
|
||||||
|
/* parity initializers */
|
||||||
|
|
||||||
|
#define _COM_NOPARITY 0 /* no parity */
|
||||||
|
#define _COM_ODDPARITY 8 /* odd parity */
|
||||||
|
#define _COM_EVENPARITY 24 /* even parity */
|
||||||
|
|
||||||
|
/* baud rate initializers */
|
||||||
|
|
||||||
|
#define _COM_110 0 /* 110 baud */
|
||||||
|
#define _COM_150 32 /* 150 baud */
|
||||||
|
#define _COM_300 64 /* 300 baud */
|
||||||
|
#define _COM_600 96 /* 600 baud */
|
||||||
|
#define _COM_1200 128 /* 1200 baud */
|
||||||
|
#define _COM_2400 160 /* 2400 baud */
|
||||||
|
#define _COM_4800 192 /* 4800 baud */
|
||||||
|
#define _COM_9600 224 /* 9600 baud */
|
||||||
|
|
||||||
|
|
||||||
|
/* manifest constants for BIOS disk support */
|
||||||
|
|
||||||
|
/* disk services */
|
||||||
|
|
||||||
|
#define _DISK_RESET 0 /* reset disk controller */
|
||||||
|
#define _DISK_STATUS 1 /* get disk status */
|
||||||
|
#define _DISK_READ 2 /* read disk sectors */
|
||||||
|
#define _DISK_WRITE 3 /* write disk sectors */
|
||||||
|
#define _DISK_VERIFY 4 /* verify disk sectors */
|
||||||
|
#define _DISK_FORMAT 5 /* format disk track */
|
||||||
|
|
||||||
|
/* struct used to send/receive information to/from the BIOS disk services */
|
||||||
|
|
||||||
|
#ifndef _DISKINFO_T_DEFINED
|
||||||
|
|
||||||
|
struct diskinfo_t {
|
||||||
|
unsigned drive;
|
||||||
|
unsigned head;
|
||||||
|
unsigned track;
|
||||||
|
unsigned sector;
|
||||||
|
unsigned nsectors;
|
||||||
|
void _far *buffer;
|
||||||
|
};
|
||||||
|
|
||||||
|
#define _DISKINFO_T_DEFINED
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* manifest constants for BIOS keyboard support */
|
||||||
|
|
||||||
|
/* keyboard services */
|
||||||
|
|
||||||
|
#define _KEYBRD_READ 0 /* read next character from keyboard */
|
||||||
|
#define _KEYBRD_READY 1 /* check for keystroke */
|
||||||
|
#define _KEYBRD_SHIFTSTATUS 2 /* get current shift key status */
|
||||||
|
|
||||||
|
/* services for enhanced keyboards */
|
||||||
|
|
||||||
|
#define _NKEYBRD_READ 0x10 /* read next character from keyboard */
|
||||||
|
#define _NKEYBRD_READY 0x11 /* check for keystroke */
|
||||||
|
#define _NKEYBRD_SHIFTSTATUS 0x12 /* get current shift key status */
|
||||||
|
|
||||||
|
|
||||||
|
/* manifest constants for BIOS printer support */
|
||||||
|
|
||||||
|
/* printer services */
|
||||||
|
|
||||||
|
#define _PRINTER_WRITE 0 /* write character to printer */
|
||||||
|
#define _PRINTER_INIT 1 /* intialize printer */
|
||||||
|
#define _PRINTER_STATUS 2 /* get printer status */
|
||||||
|
|
||||||
|
|
||||||
|
/* manifest constants for BIOS time of day support */
|
||||||
|
|
||||||
|
/* time of day services */
|
||||||
|
|
||||||
|
#define _TIME_GETCLOCK 0 /* get current clock count */
|
||||||
|
#define _TIME_SETCLOCK 1 /* set current clock count */
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef _REGS_DEFINED
|
||||||
|
|
||||||
|
/* word registers */
|
||||||
|
|
||||||
|
struct WORDREGS {
|
||||||
|
unsigned int ax;
|
||||||
|
unsigned int bx;
|
||||||
|
unsigned int cx;
|
||||||
|
unsigned int dx;
|
||||||
|
unsigned int si;
|
||||||
|
unsigned int di;
|
||||||
|
unsigned int cflag;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* byte registers */
|
||||||
|
|
||||||
|
struct BYTEREGS {
|
||||||
|
unsigned char al, ah;
|
||||||
|
unsigned char bl, bh;
|
||||||
|
unsigned char cl, ch;
|
||||||
|
unsigned char dl, dh;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* general purpose registers union -
|
||||||
|
* overlays the corresponding word and byte registers.
|
||||||
|
*/
|
||||||
|
|
||||||
|
union REGS {
|
||||||
|
struct WORDREGS x;
|
||||||
|
struct BYTEREGS h;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* segment registers */
|
||||||
|
|
||||||
|
struct SREGS {
|
||||||
|
unsigned int es;
|
||||||
|
unsigned int cs;
|
||||||
|
unsigned int ss;
|
||||||
|
unsigned int ds;
|
||||||
|
};
|
||||||
|
|
||||||
|
#define _REGS_DEFINED
|
||||||
|
|
||||||
|
#endif /* _REGS_DEFINED */
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
unsigned _cdecl _bios_disk(unsigned, struct diskinfo_t *);
|
||||||
|
unsigned _cdecl _bios_equiplist(void);
|
||||||
|
unsigned _cdecl _bios_keybrd(unsigned);
|
||||||
|
unsigned _cdecl _bios_memsize(void);
|
||||||
|
unsigned _cdecl _bios_printer(unsigned, unsigned, unsigned);
|
||||||
|
unsigned _cdecl _bios_serialcom(unsigned, unsigned, unsigned);
|
||||||
|
unsigned _cdecl _bios_timeofday(unsigned, long *);
|
||||||
|
int _cdecl int86(int, union REGS *, union REGS *);
|
||||||
|
int _cdecl int86x(int, union REGS *, union REGS *, struct SREGS *);
|
||||||
|
|
||||||
|
#endif /* _MT */
|
36
Microsoft C v6ax/INCLUDE/CONIO.H
Normal file
36
Microsoft C v6ax/INCLUDE/CONIO.H
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
/***
|
||||||
|
*conio.h - console and port I/O declarations
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This include file contains the function declarations for
|
||||||
|
* the MS C V2.03 compatible console and port I/O routines.
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
char _FAR_ * _FAR_ _cdecl cgets(char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl cprintf(const char _FAR_ *, ...);
|
||||||
|
int _FAR_ _cdecl cputs(const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl cscanf(const char _FAR_ *, ...);
|
||||||
|
int _FAR_ _cdecl getch(void);
|
||||||
|
int _FAR_ _cdecl getche(void);
|
||||||
|
int _FAR_ _cdecl inp(unsigned);
|
||||||
|
unsigned _FAR_ _cdecl inpw(unsigned);
|
||||||
|
int _FAR_ _cdecl kbhit(void);
|
||||||
|
int _FAR_ _cdecl outp(unsigned, int);
|
||||||
|
unsigned _FAR_ _cdecl outpw(unsigned, unsigned);
|
||||||
|
int _FAR_ _cdecl putch(int);
|
||||||
|
int _FAR_ _cdecl ungetch(int);
|
96
Microsoft C v6ax/INCLUDE/CTYPE.H
Normal file
96
Microsoft C v6ax/INCLUDE/CTYPE.H
Normal file
@ -0,0 +1,96 @@
|
|||||||
|
/***
|
||||||
|
*ctype.h - character conversion macros and ctype macros
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* Defines macros for character classification/conversion.
|
||||||
|
* [ANSI/System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* This declaration allows the user access to the ctype look-up
|
||||||
|
* array _ctype defined in ctype.obj by simply including ctype.h
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef _DLL
|
||||||
|
extern unsigned char _FAR_ _cdecl _ctype[];
|
||||||
|
#else
|
||||||
|
extern unsigned char _near _cdecl _ctype[];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* set bit masks for the possible character types */
|
||||||
|
|
||||||
|
#define _UPPER 0x1 /* upper case letter */
|
||||||
|
#define _LOWER 0x2 /* lower case letter */
|
||||||
|
#define _DIGIT 0x4 /* digit[0-9] */
|
||||||
|
#define _SPACE 0x8 /* tab, carriage return, newline, */
|
||||||
|
/* vertical tab or form feed */
|
||||||
|
#define _PUNCT 0x10 /* punctuation character */
|
||||||
|
#define _CONTROL 0x20 /* control character */
|
||||||
|
#define _BLANK 0x40 /* space char */
|
||||||
|
#define _HEX 0x80 /* hexadecimal digit */
|
||||||
|
|
||||||
|
/* character classification function prototypes */
|
||||||
|
|
||||||
|
#ifndef _CTYPE_DEFINED
|
||||||
|
int _FAR_ _cdecl isalpha(int);
|
||||||
|
int _FAR_ _cdecl isupper(int);
|
||||||
|
int _FAR_ _cdecl islower(int);
|
||||||
|
int _FAR_ _cdecl isdigit(int);
|
||||||
|
int _FAR_ _cdecl isxdigit(int);
|
||||||
|
int _FAR_ _cdecl isspace(int);
|
||||||
|
int _FAR_ _cdecl ispunct(int);
|
||||||
|
int _FAR_ _cdecl isalnum(int);
|
||||||
|
int _FAR_ _cdecl isprint(int);
|
||||||
|
int _FAR_ _cdecl isgraph(int);
|
||||||
|
int _FAR_ _cdecl iscntrl(int);
|
||||||
|
int _FAR_ _cdecl toupper(int);
|
||||||
|
int _FAR_ _cdecl tolower(int);
|
||||||
|
int _FAR_ _cdecl _tolower(int);
|
||||||
|
int _FAR_ _cdecl _toupper(int);
|
||||||
|
int _FAR_ _cdecl isascii(int);
|
||||||
|
int _FAR_ _cdecl toascii(int);
|
||||||
|
int _FAR_ _cdecl iscsymf(int);
|
||||||
|
int _FAR_ _cdecl iscsym(int);
|
||||||
|
#define _CTYPE_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* the character classification macro definitions */
|
||||||
|
|
||||||
|
#define isalpha(_c) ( (_ctype+1)[_c] & (_UPPER|_LOWER) )
|
||||||
|
#define isupper(_c) ( (_ctype+1)[_c] & _UPPER )
|
||||||
|
#define islower(_c) ( (_ctype+1)[_c] & _LOWER )
|
||||||
|
#define isdigit(_c) ( (_ctype+1)[_c] & _DIGIT )
|
||||||
|
#define isxdigit(_c) ( (_ctype+1)[_c] & _HEX )
|
||||||
|
#define isspace(_c) ( (_ctype+1)[_c] & _SPACE )
|
||||||
|
#define ispunct(_c) ( (_ctype+1)[_c] & _PUNCT )
|
||||||
|
#define isalnum(_c) ( (_ctype+1)[_c] & (_UPPER|_LOWER|_DIGIT) )
|
||||||
|
#define isprint(_c) ( (_ctype+1)[_c] & (_BLANK|_PUNCT|_UPPER|_LOWER|_DIGIT) )
|
||||||
|
#define isgraph(_c) ( (_ctype+1)[_c] & (_PUNCT|_UPPER|_LOWER|_DIGIT) )
|
||||||
|
#define iscntrl(_c) ( (_ctype+1)[_c] & _CONTROL )
|
||||||
|
#ifndef NO_EXT_KEYS
|
||||||
|
#define toupper(_c) ( (islower(_c)) ? _toupper(_c) : (_c) )
|
||||||
|
#define tolower(_c) ( (isupper(_c)) ? _tolower(_c) : (_c) )
|
||||||
|
#endif
|
||||||
|
#define _tolower(_c) ( (_c)-'A'+'a' )
|
||||||
|
#define _toupper(_c) ( (_c)-'a'+'A' )
|
||||||
|
#define isascii(_c) ( (unsigned)(_c) < 0x80 )
|
||||||
|
#define toascii(_c) ( (_c) & 0x7f )
|
||||||
|
|
||||||
|
/* MS C version 2.0 extended ctype macros */
|
||||||
|
|
||||||
|
#define iscsymf(_c) (isalpha(_c) || ((_c) == '_'))
|
||||||
|
#define iscsym(_c) (isalnum(_c) || ((_c) == '_'))
|
36
Microsoft C v6ax/INCLUDE/DIRECT.H
Normal file
36
Microsoft C v6ax/INCLUDE/DIRECT.H
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
/***
|
||||||
|
*direct.h - function declarations for directory handling/creation
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This include file contains the function declarations for the library
|
||||||
|
* functions related to directory handling and creation.
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef _SIZE_T_DEFINED
|
||||||
|
typedef unsigned int size_t;
|
||||||
|
#define _SIZE_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
int _FAR_ _cdecl chdir(const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl _chdrive(int);
|
||||||
|
char _FAR_ * _FAR_ _cdecl getcwd(char _FAR_ *, int);
|
||||||
|
char _FAR_ * _FAR_ _cdecl _getdcwd(int, char _FAR_ *, int);
|
||||||
|
int _FAR_ _cdecl _getdrive(void);
|
||||||
|
int _FAR_ _cdecl mkdir(const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl rmdir(const char _FAR_ *);
|
209
Microsoft C v6ax/INCLUDE/DOS.H
Normal file
209
Microsoft C v6ax/INCLUDE/DOS.H
Normal file
@ -0,0 +1,209 @@
|
|||||||
|
/***
|
||||||
|
*dos.h - definitions for MS-DOS interface routines
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* Defines the structs and unions used for the direct DOS interface
|
||||||
|
* routines; includes macros to access the segment and offset
|
||||||
|
* values of far pointers, so that they may be used by the routines; and
|
||||||
|
* provides function prototypes for direct DOS interface functions.
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef _REGS_DEFINED
|
||||||
|
|
||||||
|
/* word registers */
|
||||||
|
|
||||||
|
struct WORDREGS {
|
||||||
|
unsigned int ax;
|
||||||
|
unsigned int bx;
|
||||||
|
unsigned int cx;
|
||||||
|
unsigned int dx;
|
||||||
|
unsigned int si;
|
||||||
|
unsigned int di;
|
||||||
|
unsigned int cflag;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/* byte registers */
|
||||||
|
|
||||||
|
struct BYTEREGS {
|
||||||
|
unsigned char al, ah;
|
||||||
|
unsigned char bl, bh;
|
||||||
|
unsigned char cl, ch;
|
||||||
|
unsigned char dl, dh;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/* general purpose registers union -
|
||||||
|
* overlays the corresponding word and byte registers.
|
||||||
|
*/
|
||||||
|
|
||||||
|
union REGS {
|
||||||
|
struct WORDREGS x;
|
||||||
|
struct BYTEREGS h;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/* segment registers */
|
||||||
|
|
||||||
|
struct SREGS {
|
||||||
|
unsigned int es;
|
||||||
|
unsigned int cs;
|
||||||
|
unsigned int ss;
|
||||||
|
unsigned int ds;
|
||||||
|
};
|
||||||
|
|
||||||
|
#define _REGS_DEFINED
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* dosexterror structure */
|
||||||
|
|
||||||
|
#ifndef _DOSERROR_DEFINED
|
||||||
|
|
||||||
|
struct DOSERROR {
|
||||||
|
int exterror;
|
||||||
|
char class;
|
||||||
|
char action;
|
||||||
|
char locus;
|
||||||
|
};
|
||||||
|
|
||||||
|
#define _DOSERROR_DEFINED
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* _dos_findfirst structure */
|
||||||
|
|
||||||
|
#ifndef _FIND_T_DEFINED
|
||||||
|
|
||||||
|
struct find_t {
|
||||||
|
char reserved[21];
|
||||||
|
char attrib;
|
||||||
|
unsigned wr_time;
|
||||||
|
unsigned wr_date;
|
||||||
|
long size;
|
||||||
|
char name[13];
|
||||||
|
};
|
||||||
|
|
||||||
|
#define _FIND_T_DEFINED
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* _dos_getdate/_dossetdate and _dos_gettime/_dos_settime structures */
|
||||||
|
|
||||||
|
#ifndef _DATETIME_T_DEFINED
|
||||||
|
|
||||||
|
struct dosdate_t {
|
||||||
|
unsigned char day; /* 1-31 */
|
||||||
|
unsigned char month; /* 1-12 */
|
||||||
|
unsigned int year; /* 1980-2099 */
|
||||||
|
unsigned char dayofweek; /* 0-6, 0=Sunday */
|
||||||
|
};
|
||||||
|
|
||||||
|
struct dostime_t {
|
||||||
|
unsigned char hour; /* 0-23 */
|
||||||
|
unsigned char minute; /* 0-59 */
|
||||||
|
unsigned char second; /* 0-59 */
|
||||||
|
unsigned char hsecond; /* 0-99 */
|
||||||
|
};
|
||||||
|
|
||||||
|
#define _DATETIME_T_DEFINED
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* _dos_getdiskfree structure */
|
||||||
|
|
||||||
|
#ifndef _DISKFREE_T_DEFINED
|
||||||
|
|
||||||
|
struct diskfree_t {
|
||||||
|
unsigned total_clusters;
|
||||||
|
unsigned avail_clusters;
|
||||||
|
unsigned sectors_per_cluster;
|
||||||
|
unsigned bytes_per_sector;
|
||||||
|
};
|
||||||
|
|
||||||
|
#define _DISKFREE_T_DEFINED
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* manifest constants for _hardresume result parameter */
|
||||||
|
|
||||||
|
#define _HARDERR_IGNORE 0 /* Ignore the error */
|
||||||
|
#define _HARDERR_RETRY 1 /* Retry the operation */
|
||||||
|
#define _HARDERR_ABORT 2 /* Abort program issuing Interrupt 23h */
|
||||||
|
#define _HARDERR_FAIL 3 /* Fail the system call in progress */
|
||||||
|
/* _HARDERR_FAIL is not supported on DOS 2.x */
|
||||||
|
|
||||||
|
/* File attribute constants */
|
||||||
|
|
||||||
|
#define _A_NORMAL 0x00 /* Normal file - No read/write restrictions */
|
||||||
|
#define _A_RDONLY 0x01 /* Read only file */
|
||||||
|
#define _A_HIDDEN 0x02 /* Hidden file */
|
||||||
|
#define _A_SYSTEM 0x04 /* System file */
|
||||||
|
#define _A_VOLID 0x08 /* Volume ID file */
|
||||||
|
#define _A_SUBDIR 0x10 /* Subdirectory */
|
||||||
|
#define _A_ARCH 0x20 /* Archive file */
|
||||||
|
|
||||||
|
/* macros to break C "far" pointers into their segment and offset components
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define FP_SEG(fp) (*((unsigned _far *)&(fp)+1))
|
||||||
|
#define FP_OFF(fp) (*((unsigned _far *)&(fp)))
|
||||||
|
|
||||||
|
|
||||||
|
/* external variable declarations */
|
||||||
|
|
||||||
|
extern unsigned int _near _cdecl _osversion;
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
#ifndef _MT
|
||||||
|
int _cdecl bdos(int, unsigned int, unsigned int);
|
||||||
|
void _cdecl _chain_intr(void (_cdecl _interrupt _far *)());
|
||||||
|
void _cdecl _disable(void);
|
||||||
|
unsigned _cdecl _dos_allocmem(unsigned, unsigned *);
|
||||||
|
unsigned _cdecl _dos_close(int);
|
||||||
|
unsigned _cdecl _dos_creat(const char *, unsigned, int *);
|
||||||
|
unsigned _cdecl _dos_creatnew(const char *, unsigned, int *);
|
||||||
|
unsigned _cdecl _dos_findfirst(const char *, unsigned, struct find_t *);
|
||||||
|
unsigned _cdecl _dos_findnext(struct find_t *);
|
||||||
|
unsigned _cdecl _dos_freemem(unsigned);
|
||||||
|
void _cdecl _dos_getdate(struct dosdate_t *);
|
||||||
|
void _cdecl _dos_getdrive(unsigned *);
|
||||||
|
unsigned _cdecl _dos_getdiskfree(unsigned, struct diskfree_t *);
|
||||||
|
unsigned _cdecl _dos_getfileattr(const char *, unsigned *);
|
||||||
|
unsigned _cdecl _dos_getftime(int, unsigned *, unsigned *);
|
||||||
|
void _cdecl _dos_gettime(struct dostime_t *);
|
||||||
|
void (_cdecl _interrupt _far * _cdecl _dos_getvect(unsigned))();
|
||||||
|
void _cdecl _dos_keep(unsigned, unsigned);
|
||||||
|
unsigned _cdecl _dos_open(const char *, unsigned, int *);
|
||||||
|
unsigned _cdecl _dos_read(int, void _far *, unsigned, unsigned *);
|
||||||
|
unsigned _cdecl _dos_setblock(unsigned, unsigned, unsigned *);
|
||||||
|
unsigned _cdecl _dos_setdate(struct dosdate_t *);
|
||||||
|
void _cdecl _dos_setdrive(unsigned, unsigned *);
|
||||||
|
unsigned _cdecl _dos_setfileattr(const char *, unsigned);
|
||||||
|
unsigned _cdecl _dos_setftime(int, unsigned, unsigned);
|
||||||
|
unsigned _cdecl _dos_settime(struct dostime_t *);
|
||||||
|
void _cdecl _dos_setvect(unsigned, void (_cdecl _interrupt _far *)());
|
||||||
|
unsigned _cdecl _dos_write(int, const void _far *, unsigned, unsigned *);
|
||||||
|
int _cdecl dosexterr(struct DOSERROR *);
|
||||||
|
void _cdecl _enable(void);
|
||||||
|
void _cdecl _harderr(void (_far *)());
|
||||||
|
void _cdecl _hardresume(int);
|
||||||
|
void _cdecl _hardretn(int);
|
||||||
|
int _cdecl intdos(union REGS *, union REGS *);
|
||||||
|
int _cdecl intdosx(union REGS *, union REGS *, struct SREGS *);
|
||||||
|
int _cdecl int86(int, union REGS *, union REGS *);
|
||||||
|
int _cdecl int86x(int, union REGS *, union REGS *, struct SREGS *);
|
||||||
|
#endif /* _MT */
|
||||||
|
|
||||||
|
void _cdecl segread(struct SREGS *);
|
71
Microsoft C v6ax/INCLUDE/ERRNO.H
Normal file
71
Microsoft C v6ax/INCLUDE/ERRNO.H
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
/***
|
||||||
|
*errno.h - system wide error numbers (set by system calls)
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file defines the system-wide error numbers (set by
|
||||||
|
* system calls). Conforms to the XENIX standard. Extended
|
||||||
|
* for compatibility with Uniforum standard.
|
||||||
|
* [ANSI/System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* declare reference to errno */
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
extern int _far * _cdecl _far volatile _errno(void);
|
||||||
|
#define errno (*_errno())
|
||||||
|
#else
|
||||||
|
extern int _near _cdecl volatile errno;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Error Codes */
|
||||||
|
|
||||||
|
#define EZERO 0
|
||||||
|
#define EPERM 1
|
||||||
|
#define ENOENT 2
|
||||||
|
#define ESRCH 3
|
||||||
|
#define EINTR 4
|
||||||
|
#define EIO 5
|
||||||
|
#define ENXIO 6
|
||||||
|
#define E2BIG 7
|
||||||
|
#define ENOEXEC 8
|
||||||
|
#define EBADF 9
|
||||||
|
#define ECHILD 10
|
||||||
|
#define EAGAIN 11
|
||||||
|
#define ENOMEM 12
|
||||||
|
#define EACCES 13
|
||||||
|
#define EFAULT 14
|
||||||
|
#define ENOTBLK 15
|
||||||
|
#define EBUSY 16
|
||||||
|
#define EEXIST 17
|
||||||
|
#define EXDEV 18
|
||||||
|
#define ENODEV 19
|
||||||
|
#define ENOTDIR 20
|
||||||
|
#define EISDIR 21
|
||||||
|
#define EINVAL 22
|
||||||
|
#define ENFILE 23
|
||||||
|
#define EMFILE 24
|
||||||
|
#define ENOTTY 25
|
||||||
|
#define ETXTBSY 26
|
||||||
|
#define EFBIG 27
|
||||||
|
#define ENOSPC 28
|
||||||
|
#define ESPIPE 29
|
||||||
|
#define EROFS 30
|
||||||
|
#define EMLINK 31
|
||||||
|
#define EPIPE 32
|
||||||
|
#define EDOM 33
|
||||||
|
#define ERANGE 34
|
||||||
|
#define EUCLEAN 35
|
||||||
|
#define EDEADLOCK 36
|
35
Microsoft C v6ax/INCLUDE/FCNTL.H
Normal file
35
Microsoft C v6ax/INCLUDE/FCNTL.H
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
/***
|
||||||
|
*fcntl.h - file control options used by open()
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file defines constants for the file control options used
|
||||||
|
* by the open() function.
|
||||||
|
* [System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#define O_RDONLY 0x0000 /* open for reading only */
|
||||||
|
#define O_WRONLY 0x0001 /* open for writing only */
|
||||||
|
#define O_RDWR 0x0002 /* open for reading and writing */
|
||||||
|
#define O_APPEND 0x0008 /* writes done at eof */
|
||||||
|
|
||||||
|
#define O_CREAT 0x0100 /* create and open file */
|
||||||
|
#define O_TRUNC 0x0200 /* open and truncate */
|
||||||
|
#define O_EXCL 0x0400 /* open only if file doesn't already exist */
|
||||||
|
|
||||||
|
/* O_TEXT files have <cr><lf> sequences translated to <lf> on read()'s,
|
||||||
|
** and <lf> sequences translated to <cr><lf> on write()'s
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define O_TEXT 0x4000 /* file mode is text (translated) */
|
||||||
|
#define O_BINARY 0x8000 /* file mode is binary (untranslated) */
|
||||||
|
|
||||||
|
/* macro to translate the C 2.0 name used to force binary mode for files */
|
||||||
|
|
||||||
|
#define O_RAW O_BINARY
|
||||||
|
|
||||||
|
/* Open handle inherit bit */
|
||||||
|
|
||||||
|
#define O_NOINHERIT 0x0080 /* child process doesn't inherit file */
|
140
Microsoft C v6ax/INCLUDE/FLOAT.H
Normal file
140
Microsoft C v6ax/INCLUDE/FLOAT.H
Normal file
@ -0,0 +1,140 @@
|
|||||||
|
/***
|
||||||
|
*float.h - constants for floating point values
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file contains defines for a number of implementation dependent
|
||||||
|
* values which are commonly used by sophisticated numerical (floating
|
||||||
|
* point) programs.
|
||||||
|
* [ANSI]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define DBL_DIG 15 /* # of decimal digits of precision */
|
||||||
|
#define DBL_EPSILON 2.2204460492503131e-016 /* smallest such that 1.0+DBL_EPSILON != 1.0 */
|
||||||
|
#define DBL_MANT_DIG 53 /* # of bits in mantissa */
|
||||||
|
#define DBL_MAX 1.7976931348623158e+308 /* max value */
|
||||||
|
#define DBL_MAX_10_EXP 308 /* max decimal exponent */
|
||||||
|
#define DBL_MAX_EXP 1024 /* max binary exponent */
|
||||||
|
#define DBL_MIN 2.2250738585072014e-308 /* min positive value */
|
||||||
|
#define DBL_MIN_10_EXP (-307) /* min decimal exponent */
|
||||||
|
#define DBL_MIN_EXP (-1021) /* min binary exponent */
|
||||||
|
#define DBL_RADIX 2 /* exponent radix */
|
||||||
|
#define DBL_ROUNDS 1 /* addition rounding: near */
|
||||||
|
|
||||||
|
#define FLT_DIG 7 /* # of decimal digits of precision */
|
||||||
|
#define FLT_EPSILON 1.192092896e-07F /* smallest such that 1.0+FLT_EPSILON != 1.0 */
|
||||||
|
#define FLT_GUARD 0
|
||||||
|
#define FLT_MANT_DIG 24 /* # of bits in mantissa */
|
||||||
|
#define FLT_MAX 3.402823466e+38F /* max value */
|
||||||
|
#define FLT_MAX_10_EXP 38 /* max decimal exponent */
|
||||||
|
#define FLT_MAX_EXP 128 /* max binary exponent */
|
||||||
|
#define FLT_MIN 1.175494351e-38F /* min positive value */
|
||||||
|
#define FLT_MIN_10_EXP (-37) /* min decimal exponent */
|
||||||
|
#define FLT_MIN_EXP (-125) /* min binary exponent */
|
||||||
|
#define FLT_NORMALIZE 0
|
||||||
|
#define FLT_RADIX 2 /* exponent radix */
|
||||||
|
#define FLT_ROUNDS 1 /* addition rounding: near */
|
||||||
|
|
||||||
|
#define LDBL_DIG 19 /* # of decimal digits of precision */
|
||||||
|
#define LDBL_EPSILON 5.4210108624275221706e-020 /* smallest such that 1.0+LDBL_EPSILON != 1.0 */
|
||||||
|
#define LDBL_MANT_DIG 64 /* # of bits in mantissa */
|
||||||
|
#define LDBL_MAX 1.189731495357231765e+4932L /* max value */
|
||||||
|
#define LDBL_MAX_10_EXP 4932 /* max decimal exponent */
|
||||||
|
#define LDBL_MAX_EXP 16384 /* max binary exponent */
|
||||||
|
#define LDBL_MIN 3.3621031431120935063e-4932L /* min positive value */
|
||||||
|
#define LDBL_MIN_10_EXP (-4931) /* min decimal exponent */
|
||||||
|
#define LDBL_MIN_EXP (-16381) /* min binary exponent */
|
||||||
|
#define LDBL_RADIX 2 /* exponent radix */
|
||||||
|
#define LDBL_ROUNDS 1 /* addition rounding: near */
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 8087/80287 math control information
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/* User Control Word Mask and bit definitions.
|
||||||
|
* These definitions match the 8087/80287
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define MCW_EM 0x003f /* interrupt Exception Masks */
|
||||||
|
#define EM_INVALID 0x0001 /* invalid */
|
||||||
|
#define EM_DENORMAL 0x0002 /* denormal */
|
||||||
|
#define EM_ZERODIVIDE 0x0004 /* zero divide */
|
||||||
|
#define EM_OVERFLOW 0x0008 /* overflow */
|
||||||
|
#define EM_UNDERFLOW 0x0010 /* underflow */
|
||||||
|
#define EM_INEXACT 0x0020 /* inexact (precision) */
|
||||||
|
|
||||||
|
#define MCW_IC 0x1000 /* Infinity Control */
|
||||||
|
#define IC_AFFINE 0x1000 /* affine */
|
||||||
|
#define IC_PROJECTIVE 0x0000 /* projective */
|
||||||
|
|
||||||
|
#define MCW_RC 0x0c00 /* Rounding Control */
|
||||||
|
#define RC_CHOP 0x0c00 /* chop */
|
||||||
|
#define RC_UP 0x0800 /* up */
|
||||||
|
#define RC_DOWN 0x0400 /* down */
|
||||||
|
#define RC_NEAR 0x0000 /* near */
|
||||||
|
|
||||||
|
#define MCW_PC 0x0300 /* Precision Control */
|
||||||
|
#define PC_24 0x0000 /* 24 bits */
|
||||||
|
#define PC_53 0x0200 /* 53 bits */
|
||||||
|
#define PC_64 0x0300 /* 64 bits */
|
||||||
|
|
||||||
|
|
||||||
|
/* initial Control Word value */
|
||||||
|
|
||||||
|
#define CW_DEFAULT ( IC_AFFINE + RC_NEAR + PC_64 + EM_DENORMAL + EM_UNDERFLOW + EM_INEXACT )
|
||||||
|
|
||||||
|
|
||||||
|
/* user Status Word bit definitions */
|
||||||
|
|
||||||
|
#define SW_INVALID 0x0001 /* invalid */
|
||||||
|
#define SW_DENORMAL 0x0002 /* denormal */
|
||||||
|
#define SW_ZERODIVIDE 0x0004 /* zero divide */
|
||||||
|
#define SW_OVERFLOW 0x0008 /* overflow */
|
||||||
|
#define SW_UNDERFLOW 0x0010 /* underflow */
|
||||||
|
#define SW_INEXACT 0x0020 /* inexact (precision) */
|
||||||
|
|
||||||
|
|
||||||
|
/* invalid subconditions (SW_INVALID also set) */
|
||||||
|
|
||||||
|
#define SW_UNEMULATED 0x0040 /* unemulated instruction */
|
||||||
|
#define SW_SQRTNEG 0x0080 /* square root of a neg number */
|
||||||
|
#define SW_STACKOVERFLOW 0x0200 /* FP stack overflow */
|
||||||
|
#define SW_STACKUNDERFLOW 0x0400 /* FP stack underflow */
|
||||||
|
|
||||||
|
|
||||||
|
/* Floating point error signals and return codes */
|
||||||
|
|
||||||
|
#define FPE_INVALID 0x81
|
||||||
|
#define FPE_DENORMAL 0x82
|
||||||
|
#define FPE_ZERODIVIDE 0x83
|
||||||
|
#define FPE_OVERFLOW 0x84
|
||||||
|
#define FPE_UNDERFLOW 0x85
|
||||||
|
#define FPE_INEXACT 0x86
|
||||||
|
|
||||||
|
#define FPE_UNEMULATED 0x87
|
||||||
|
#define FPE_SQRTNEG 0x88
|
||||||
|
#define FPE_STACKOVERFLOW 0x8a
|
||||||
|
#define FPE_STACKUNDERFLOW 0x8b
|
||||||
|
|
||||||
|
#define FPE_EXPLICITGEN 0x8c /* raise( SIGFPE ); */
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
unsigned int _FAR_ _cdecl _clear87(void);
|
||||||
|
unsigned int _FAR_ _cdecl _control87(unsigned int, unsigned int);
|
||||||
|
void _FAR_ _cdecl _fpreset(void);
|
||||||
|
unsigned int _FAR_ _cdecl _status87(void);
|
427
Microsoft C v6ax/INCLUDE/GRAPH.H
Normal file
427
Microsoft C v6ax/INCLUDE/GRAPH.H
Normal file
@ -0,0 +1,427 @@
|
|||||||
|
/***
|
||||||
|
*graph.h - declare constants, functions, and macros for graphics library
|
||||||
|
*
|
||||||
|
* Copyright (c) 1987 - 1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file declares the graphics library functions and the
|
||||||
|
* structures and manifest constants that are used with them.
|
||||||
|
*
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
|
||||||
|
/* force word packing to avoid possible -Zp override */
|
||||||
|
#pragma pack(2)
|
||||||
|
|
||||||
|
/* user-visible declarations for Quick-C Graphics Library */
|
||||||
|
|
||||||
|
#ifndef _VIDEOCONFIG_DEFINED
|
||||||
|
/* structure for _getvideoconfig() as visible to user */
|
||||||
|
struct videoconfig {
|
||||||
|
short numxpixels; /* number of pixels on X axis */
|
||||||
|
short numypixels; /* number of pixels on Y axis */
|
||||||
|
short numtextcols; /* number of text columns available */
|
||||||
|
short numtextrows; /* number of text rows available */
|
||||||
|
short numcolors; /* number of actual colors */
|
||||||
|
short bitsperpixel; /* number of bits per pixel */
|
||||||
|
short numvideopages; /* number of available video pages */
|
||||||
|
short mode; /* current video mode */
|
||||||
|
short adapter; /* active display adapter */
|
||||||
|
short monitor; /* active display monitor */
|
||||||
|
short memory; /* adapter video memory in K bytes */
|
||||||
|
};
|
||||||
|
#define _VIDEOCONFIG_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef _XYCOORD_DEFINED
|
||||||
|
/* return value of _setvieworg(), etc. */
|
||||||
|
struct xycoord {
|
||||||
|
short xcoord;
|
||||||
|
short ycoord;
|
||||||
|
};
|
||||||
|
#define _XYCOORD_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* structure for text position */
|
||||||
|
#ifndef _RCCOORD_DEFINED
|
||||||
|
struct rccoord {
|
||||||
|
short row;
|
||||||
|
short col;
|
||||||
|
};
|
||||||
|
#define _RCCOORD_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* ERROR HANDLING */
|
||||||
|
short _far _cdecl _grstatus(void);
|
||||||
|
|
||||||
|
/* Error Status Information returned by _grstatus() */
|
||||||
|
|
||||||
|
/* successful */
|
||||||
|
#define _GROK 0
|
||||||
|
|
||||||
|
/* errors */
|
||||||
|
#define _GRERROR (-1)
|
||||||
|
#define _GRMODENOTSUPPORTED (-2)
|
||||||
|
#define _GRNOTINPROPERMODE (-3)
|
||||||
|
#define _GRINVALIDPARAMETER (-4)
|
||||||
|
#define _GRFONTFILENOTFOUND (-5)
|
||||||
|
#define _GRINVALIDFONTFILE (-6)
|
||||||
|
#define _GRCORRUPTEDFONTFILE (-7)
|
||||||
|
#define _GRINSUFFICIENTMEMORY (-8)
|
||||||
|
#define _GRINVALIDIMAGEBUFFER (-9)
|
||||||
|
|
||||||
|
/* warnings */
|
||||||
|
#define _GRNOOUTPUT 1
|
||||||
|
#define _GRCLIPPED 2
|
||||||
|
#define _GRPARAMETERALTERED 3
|
||||||
|
|
||||||
|
|
||||||
|
/* SETUP AND CONFIGURATION */
|
||||||
|
|
||||||
|
short _far _cdecl _setvideomode(short);
|
||||||
|
short _far _cdecl _setvideomoderows(short,short); /* return rows; 0 if error */
|
||||||
|
|
||||||
|
/* arguments to _setvideomode() */
|
||||||
|
#define _MAXRESMODE (-3) /* graphics mode with highest resolution */
|
||||||
|
#define _MAXCOLORMODE (-2) /* graphics mode with most colors */
|
||||||
|
#define _DEFAULTMODE (-1) /* restore screen to original mode */
|
||||||
|
#define _TEXTBW40 0 /* 40-column text, 16 grey */
|
||||||
|
#define _TEXTC40 1 /* 40-column text, 16/8 color */
|
||||||
|
#define _TEXTBW80 2 /* 80-column text, 16 grey */
|
||||||
|
#define _TEXTC80 3 /* 80-column text, 16/8 color */
|
||||||
|
#define _MRES4COLOR 4 /* 320 x 200, 4 color */
|
||||||
|
#define _MRESNOCOLOR 5 /* 320 x 200, 4 grey */
|
||||||
|
#define _HRESBW 6 /* 640 x 200, BW */
|
||||||
|
#define _TEXTMONO 7 /* 80-column text, BW */
|
||||||
|
#define _HERCMONO 8 /* 720 x 348, BW for HGC */
|
||||||
|
#define _MRES16COLOR 13 /* 320 x 200, 16 color */
|
||||||
|
#define _HRES16COLOR 14 /* 640 x 200, 16 color */
|
||||||
|
#define _ERESNOCOLOR 15 /* 640 x 350, BW */
|
||||||
|
#define _ERESCOLOR 16 /* 640 x 350, 4 or 16 color */
|
||||||
|
#define _VRES2COLOR 17 /* 640 x 480, BW */
|
||||||
|
#define _VRES16COLOR 18 /* 640 x 480, 16 color */
|
||||||
|
#define _MRES256COLOR 19 /* 320 x 200, 256 color */
|
||||||
|
#define _ORESCOLOR 64 /* 640 x 400, 1 of 16 colors (Olivetti) */
|
||||||
|
|
||||||
|
short _far _cdecl _setactivepage(short);
|
||||||
|
short _far _cdecl _setvisualpage(short);
|
||||||
|
short _far _cdecl _getactivepage(void);
|
||||||
|
short _far _cdecl _getvisualpage(void);
|
||||||
|
|
||||||
|
/* videoconfig adapter values */
|
||||||
|
/* these manifest constants can be used to determine the type of the active */
|
||||||
|
/* adapter, using either simple comparisons or the bitwise-AND operator (&) */
|
||||||
|
#define _MDPA 0x0001 /* Monochrome Display Adapter (MDPA) */
|
||||||
|
#define _CGA 0x0002 /* Color Graphics Adapter (CGA) */
|
||||||
|
#define _EGA 0x0004 /* Enhanced Graphics Adapter (EGA) */
|
||||||
|
#define _VGA 0x0008 /* Video Graphics Array (VGA) */
|
||||||
|
#define _MCGA 0x0010 /* MultiColor Graphics Array (MCGA) */
|
||||||
|
#define _HGC 0x0020 /* Hercules Graphics Card (HGC) */
|
||||||
|
#define _OCGA 0x0042 /* Olivetti Color Graphics Adapter (OCGA) */
|
||||||
|
#define _OEGA 0x0044 /* Olivetti Enhanced Graphics Adapter (OEGA) */
|
||||||
|
#define _OVGA 0x0048 /* Olivetti Video Graphics Array (OVGA) */
|
||||||
|
|
||||||
|
/* videoconfig monitor values */
|
||||||
|
/* these manifest constants can be used to determine the type of monitor in */
|
||||||
|
/* use, using either simple comparisons or the bitwise-AND operator (&) */
|
||||||
|
#define _MONO 0x0001 /* Monochrome */
|
||||||
|
#define _COLOR 0x0002 /* Color (or Enhanced emulating color) */
|
||||||
|
#define _ENHCOLOR 0x0004 /* Enhanced Color */
|
||||||
|
#define _ANALOGMONO 0x0008 /* Analog Monochrome only */
|
||||||
|
#define _ANALOGCOLOR 0x0010 /* Analog Color only */
|
||||||
|
#define _ANALOG 0x0018 /* Analog Monochrome and Color modes */
|
||||||
|
|
||||||
|
struct videoconfig _far * _far _cdecl _getvideoconfig(struct videoconfig _far *);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* COORDINATE SYSTEMS */
|
||||||
|
|
||||||
|
struct xycoord _far _cdecl _setvieworg(short, short);
|
||||||
|
#define _setlogorg _setvieworg /* obsolescent */
|
||||||
|
|
||||||
|
struct xycoord _far _cdecl _getviewcoord(short, short);
|
||||||
|
#define _getlogcoord _getviewcoord /* obsolescent */
|
||||||
|
|
||||||
|
struct xycoord _far _cdecl _getphyscoord(short, short);
|
||||||
|
|
||||||
|
void _far _cdecl _setcliprgn(short, short, short, short);
|
||||||
|
void _far _cdecl _setviewport(short, short, short, short);
|
||||||
|
|
||||||
|
|
||||||
|
/* OUTPUT ROUTINES */
|
||||||
|
|
||||||
|
/* control parameters for _ellipse, _rectangle, _pie and _polygon */
|
||||||
|
#define _GBORDER 2 /* draw outline only */
|
||||||
|
#define _GFILLINTERIOR 3 /* fill using current fill mask */
|
||||||
|
|
||||||
|
/* parameters for _clearscreen */
|
||||||
|
#define _GCLEARSCREEN 0
|
||||||
|
#define _GVIEWPORT 1
|
||||||
|
#define _GWINDOW 2
|
||||||
|
|
||||||
|
void _far _cdecl _clearscreen(short);
|
||||||
|
|
||||||
|
struct xycoord _far _cdecl _moveto(short, short);
|
||||||
|
struct xycoord _far _cdecl _getcurrentposition(void);
|
||||||
|
|
||||||
|
short _far _cdecl _lineto(short, short);
|
||||||
|
short _far _cdecl _rectangle(short, short, short, short, short);
|
||||||
|
short _far _cdecl _polygon(short, const struct xycoord _far *, short);
|
||||||
|
short _far _cdecl _arc(short, short, short, short, short, short, short, short);
|
||||||
|
short _far _cdecl _ellipse(short, short, short, short, short);
|
||||||
|
short _far _cdecl _pie(short, short, short, short, short, short, short, short, short);
|
||||||
|
|
||||||
|
short _far _cdecl _getarcinfo(struct xycoord _far *, struct xycoord _far *, struct xycoord _far *);
|
||||||
|
|
||||||
|
short _far _cdecl _setpixel(short, short);
|
||||||
|
short _far _cdecl _getpixel(short, short);
|
||||||
|
short _far _cdecl _floodfill(short, short, short);
|
||||||
|
|
||||||
|
|
||||||
|
/* PEN COLOR, LINE STYLE, WRITE MODE, FILL PATTERN */
|
||||||
|
|
||||||
|
short _far _cdecl _setcolor(short);
|
||||||
|
short _far _cdecl _getcolor(void);
|
||||||
|
|
||||||
|
void _far _cdecl _setlinestyle(unsigned short);
|
||||||
|
unsigned short _far _cdecl _getlinestyle(void);
|
||||||
|
|
||||||
|
short _far _cdecl _setwritemode(short);
|
||||||
|
short _far _cdecl _getwritemode(void);
|
||||||
|
|
||||||
|
void _far _cdecl _setfillmask(const unsigned char _far *);
|
||||||
|
unsigned char _far * _far _cdecl _getfillmask(unsigned char _far *);
|
||||||
|
|
||||||
|
/* COLOR SELECTION */
|
||||||
|
|
||||||
|
long _far _cdecl _setbkcolor(long);
|
||||||
|
long _far _cdecl _getbkcolor(void);
|
||||||
|
|
||||||
|
long _far _cdecl _remappalette(short, long);
|
||||||
|
short _far _cdecl _remapallpalette(const long _far *);
|
||||||
|
short _far _cdecl _selectpalette(short);
|
||||||
|
|
||||||
|
|
||||||
|
/* TEXT */
|
||||||
|
/* parameters for _displaycursor */
|
||||||
|
#define _GCURSOROFF 0
|
||||||
|
#define _GCURSORON 1
|
||||||
|
|
||||||
|
/* parameters for _wrapon */
|
||||||
|
#define _GWRAPOFF 0
|
||||||
|
#define _GWRAPON 1
|
||||||
|
|
||||||
|
|
||||||
|
/* direction parameters for _scrolltextwindow */
|
||||||
|
#define _GSCROLLUP 1
|
||||||
|
#define _GSCROLLDOWN (-1)
|
||||||
|
|
||||||
|
/* request maximum number of rows in _settextrows and _setvideomoderows */
|
||||||
|
#define _MAXTEXTROWS (-1)
|
||||||
|
|
||||||
|
short _far _cdecl _settextrows(short); /* returns # rows set; 0 if error */
|
||||||
|
void _far _cdecl _settextwindow(short, short, short, short);
|
||||||
|
void _far _cdecl _gettextwindow(short _far *, short _far *, short _far *, short _far *);
|
||||||
|
void _far _cdecl _scrolltextwindow(short);
|
||||||
|
void _far _cdecl _outmem(const unsigned char _far *, short);
|
||||||
|
void _far _cdecl _outtext(const unsigned char _far *);
|
||||||
|
short _far _cdecl _wrapon(short);
|
||||||
|
|
||||||
|
short _far _cdecl _displaycursor(short);
|
||||||
|
short _far _cdecl _settextcursor(short);
|
||||||
|
short _far _cdecl _gettextcursor(void);
|
||||||
|
|
||||||
|
struct rccoord _far _cdecl _settextposition(short, short);
|
||||||
|
struct rccoord _far _cdecl _gettextposition(void);
|
||||||
|
|
||||||
|
short _far _cdecl _settextcolor(short);
|
||||||
|
short _far _cdecl _gettextcolor(void);
|
||||||
|
|
||||||
|
|
||||||
|
/* SCREEN IMAGES */
|
||||||
|
|
||||||
|
void _far _cdecl _getimage(short, short, short, short, char _huge *);
|
||||||
|
void _far _cdecl _putimage(short, short, char _huge *, short);
|
||||||
|
long _far _cdecl _imagesize(short, short, short, short);
|
||||||
|
|
||||||
|
/* "action verbs" for _putimage() and _setwritemode() */
|
||||||
|
#define _GPSET 3
|
||||||
|
#define _GPRESET 2
|
||||||
|
#define _GAND 1
|
||||||
|
#define _GOR 0
|
||||||
|
#define _GXOR 4
|
||||||
|
|
||||||
|
|
||||||
|
/* Color values are used with _setbkcolor in graphics modes and also by
|
||||||
|
_remappalette and _remapallpalette. Also known as palette colors.
|
||||||
|
Not to be confused with color indices (aka. color attributes). */
|
||||||
|
|
||||||
|
/* universal color values (all color modes): */
|
||||||
|
#define _BLACK 0x000000L
|
||||||
|
#define _BLUE 0x2a0000L
|
||||||
|
#define _GREEN 0x002a00L
|
||||||
|
#define _CYAN 0x2a2a00L
|
||||||
|
#define _RED 0x00002aL
|
||||||
|
#define _MAGENTA 0x2a002aL
|
||||||
|
#define _BROWN 0x00152aL
|
||||||
|
#define _WHITE 0x2a2a2aL
|
||||||
|
#define _GRAY 0x151515L
|
||||||
|
#define _LIGHTBLUE 0x3F1515L
|
||||||
|
#define _LIGHTGREEN 0x153f15L
|
||||||
|
#define _LIGHTCYAN 0x3f3f15L
|
||||||
|
#define _LIGHTRED 0x15153fL
|
||||||
|
#define _LIGHTMAGENTA 0x3f153fL
|
||||||
|
#define _YELLOW 0x153f3fL
|
||||||
|
#define _BRIGHTWHITE 0x3f3f3fL
|
||||||
|
|
||||||
|
/* the following is obsolescent and defined only for backward compatibility */
|
||||||
|
#define _LIGHTYELLOW _YELLOW
|
||||||
|
|
||||||
|
/* mono mode F (_ERESNOCOLOR) color values: */
|
||||||
|
#define _MODEFOFF 0L
|
||||||
|
#define _MODEFOFFTOON 1L
|
||||||
|
#define _MODEFOFFTOHI 2L
|
||||||
|
#define _MODEFONTOOFF 3L
|
||||||
|
#define _MODEFON 4L
|
||||||
|
#define _MODEFONTOHI 5L
|
||||||
|
#define _MODEFHITOOFF 6L
|
||||||
|
#define _MODEFHITOON 7L
|
||||||
|
#define _MODEFHI 8L
|
||||||
|
|
||||||
|
/* mono mode 7 (_TEXTMONO) color values: */
|
||||||
|
#define _MODE7OFF 0L
|
||||||
|
#define _MODE7ON 1L
|
||||||
|
#define _MODE7HI 2L
|
||||||
|
|
||||||
|
|
||||||
|
/* Warning: these '_xy' entrypoints are undocumented.
|
||||||
|
They may or may not be supported in future versions. */
|
||||||
|
struct xycoord _far _cdecl _moveto_xy(struct xycoord);
|
||||||
|
short _far _cdecl _lineto_xy(struct xycoord);
|
||||||
|
short _far _cdecl _rectangle_xy(short,struct xycoord,struct xycoord);
|
||||||
|
short _far _cdecl _arc_xy(struct xycoord, struct xycoord, struct xycoord, struct xycoord);
|
||||||
|
short _far _cdecl _ellipse_xy(short, struct xycoord, struct xycoord);
|
||||||
|
short _far _cdecl _pie_xy(short, struct xycoord, struct xycoord, struct xycoord, struct xycoord);
|
||||||
|
short _far _cdecl _getpixel_xy(struct xycoord);
|
||||||
|
short _far _cdecl _setpixel_xy(struct xycoord);
|
||||||
|
short _far _cdecl _floodfill_xy(struct xycoord, short);
|
||||||
|
void _far _cdecl _getimage_xy(struct xycoord,struct xycoord, char _huge *);
|
||||||
|
long _far _cdecl _imagesize_xy(struct xycoord,struct xycoord);
|
||||||
|
void _far _cdecl _putimage_xy(struct xycoord, char _huge *, short);
|
||||||
|
|
||||||
|
|
||||||
|
/* WINDOW COORDINATE SYSTEM */
|
||||||
|
|
||||||
|
#ifndef _WXYCOORD_DEFINED
|
||||||
|
/* structure for window coordinate pair */
|
||||||
|
struct _wxycoord {
|
||||||
|
double wx; /* window x coordinate */
|
||||||
|
double wy; /* window y coordinate */
|
||||||
|
};
|
||||||
|
#define _WXYCOORD_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* define real coordinate window - returns non-zero if successful */
|
||||||
|
short _far _cdecl _setwindow(short,double,double,double,double);
|
||||||
|
|
||||||
|
/* convert from view to window coordinates */
|
||||||
|
struct _wxycoord _far _cdecl _getwindowcoord(short,short);
|
||||||
|
struct _wxycoord _far _cdecl _getwindowcoord_xy(struct xycoord);
|
||||||
|
|
||||||
|
/* convert from window to view coordinates */
|
||||||
|
struct xycoord _far _cdecl _getviewcoord_w(double,double);
|
||||||
|
struct xycoord _far _cdecl _getviewcoord_wxy(const struct _wxycoord _far *);
|
||||||
|
|
||||||
|
/* return the window coordinates of the current graphics output
|
||||||
|
position as an _wxycoord structure. no error return. */
|
||||||
|
struct _wxycoord _far _cdecl _getcurrentposition_w(void);
|
||||||
|
|
||||||
|
|
||||||
|
/* window coordinate entry points for graphics output routines */
|
||||||
|
|
||||||
|
/* returns nonzero if successful; otherwise 0 */
|
||||||
|
short _far _cdecl _arc_w(double, double, double, double, double, double, double, double);
|
||||||
|
short _far _cdecl _arc_wxy(const struct _wxycoord _far *, const struct _wxycoord _far *, const struct _wxycoord _far *, const struct _wxycoord _far *);
|
||||||
|
|
||||||
|
/* returns nonzero if successful; otherwise 0 */
|
||||||
|
short _far _cdecl _ellipse_w(short, double, double, double, double);
|
||||||
|
short _far _cdecl _ellipse_wxy(short, const struct _wxycoord _far *, const struct _wxycoord _far *);
|
||||||
|
|
||||||
|
/* returns nonzero if successful; otherwise 0 */
|
||||||
|
short _far _cdecl _floodfill_w(double, double, short);
|
||||||
|
|
||||||
|
/* returns pixel value at given point; -1 if unsuccessful. */
|
||||||
|
short _far _cdecl _getpixel_w(double, double);
|
||||||
|
|
||||||
|
/* returns nonzero if successful; otherwise 0 */
|
||||||
|
short _far _cdecl _lineto_w(double, double);
|
||||||
|
|
||||||
|
/* returns the view coordinates of the previous output
|
||||||
|
position as an _xycoord structure. no error return */
|
||||||
|
struct _wxycoord _far _cdecl _moveto_w(double, double);
|
||||||
|
|
||||||
|
/* returns nonzero if successful; otherwise 0 */
|
||||||
|
short _far _cdecl _pie_w(short, double, double, double, double, double, double, double, double);
|
||||||
|
short _far _cdecl _pie_wxy(short, const struct _wxycoord _far *, const struct _wxycoord _far *, const struct _wxycoord _far *, const struct _wxycoord _far *);
|
||||||
|
|
||||||
|
/* returns nonzero if successful; otherwise 0 */
|
||||||
|
short _far _cdecl _rectangle_w(short, double, double, double, double);
|
||||||
|
short _far _cdecl _rectangle_wxy(short, const struct _wxycoord _far *, const struct _wxycoord _far *);
|
||||||
|
|
||||||
|
/* returns nonzero if successful; otherwise 0 */
|
||||||
|
short _far _cdecl _polygon_w(short, const double _far *, short);
|
||||||
|
short _far _cdecl _polygon_wxy(short, const struct _wxycoord _far *, short);
|
||||||
|
|
||||||
|
/* returns previous color; -1 if unsuccessful */
|
||||||
|
short _far _cdecl _setpixel_w(double, double);
|
||||||
|
|
||||||
|
|
||||||
|
/* window coordinate image routines */
|
||||||
|
|
||||||
|
/* no return value */
|
||||||
|
void _far _cdecl _getimage_w(double, double, double, double, char _huge *);
|
||||||
|
void _far _cdecl _getimage_wxy(const struct _wxycoord _far *, const struct _wxycoord _far *, char _huge *);
|
||||||
|
|
||||||
|
/* returns the image's storage size in bytes */
|
||||||
|
long _far _cdecl _imagesize_w(double, double, double, double);
|
||||||
|
long _far _cdecl _imagesize_wxy(const struct _wxycoord _far *, const struct _wxycoord _far *);
|
||||||
|
|
||||||
|
/* no return value */
|
||||||
|
void _far _cdecl _putimage_w(double, double ,char _huge * ,short);
|
||||||
|
|
||||||
|
|
||||||
|
/* FONTS */
|
||||||
|
|
||||||
|
#ifndef _FONTINFO_DEFINED
|
||||||
|
/* structure for _getfontinfo() */
|
||||||
|
struct _fontinfo {
|
||||||
|
int type; /* b0 set = vector,clear = bit map */
|
||||||
|
int ascent; /* pix dist from top to baseline */
|
||||||
|
int pixwidth; /* character width in pixels, 0=prop */
|
||||||
|
int pixheight; /* character height in pixels */
|
||||||
|
int avgwidth; /* average character width in pixels */
|
||||||
|
char filename[81]; /* file name including path */
|
||||||
|
char facename[32]; /* font name */
|
||||||
|
};
|
||||||
|
#define _FONTINFO_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* font function prototypes */
|
||||||
|
short _far _cdecl _registerfonts( const unsigned char _far *);
|
||||||
|
void _far _cdecl _unregisterfonts( void );
|
||||||
|
short _far _cdecl _setfont( const unsigned char _far * );
|
||||||
|
short _far _cdecl _getfontinfo( struct _fontinfo _far * );
|
||||||
|
void _far _cdecl _outgtext( const unsigned char _far * );
|
||||||
|
short _far _cdecl _getgtextextent( const unsigned char _far * );
|
||||||
|
struct xycoord _far _cdecl _setgtextvector( short, short );
|
||||||
|
struct xycoord _far _cdecl _getgtextvector(void);
|
||||||
|
|
||||||
|
/* restore default packing */
|
||||||
|
#pragma pack()
|
47
Microsoft C v6ax/INCLUDE/IO.H
Normal file
47
Microsoft C v6ax/INCLUDE/IO.H
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
/***
|
||||||
|
*io.h - declarations for low-level file handling and I/O functions
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file contains the function declarations for the low-level
|
||||||
|
* file handling and I/O functions.
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
int _FAR_ _cdecl access(const char _FAR_ *, int);
|
||||||
|
int _FAR_ _cdecl chmod(const char _FAR_ *, int);
|
||||||
|
int _FAR_ _cdecl chsize(int, long);
|
||||||
|
int _FAR_ _cdecl close(int);
|
||||||
|
int _FAR_ _cdecl creat(const char _FAR_ *, int);
|
||||||
|
int _FAR_ _cdecl dup(int);
|
||||||
|
int _FAR_ _cdecl dup2(int, int);
|
||||||
|
int _FAR_ _cdecl eof(int);
|
||||||
|
long _FAR_ _cdecl filelength(int);
|
||||||
|
int _FAR_ _cdecl isatty(int);
|
||||||
|
int _FAR_ _cdecl locking(int, int, long);
|
||||||
|
long _FAR_ _cdecl lseek(int, long, int);
|
||||||
|
char _FAR_ * _FAR_ _cdecl mktemp(char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl open(const char _FAR_ *, int, ...);
|
||||||
|
int _FAR_ _cdecl _pipe(int _FAR_ *, unsigned int, int);
|
||||||
|
int _FAR_ _cdecl read(int, void _FAR_ *, unsigned int);
|
||||||
|
int _FAR_ _cdecl remove(const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl rename(const char _FAR_ *, const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl setmode(int, int);
|
||||||
|
int _FAR_ _cdecl sopen(const char _FAR_ *, int, int, ...);
|
||||||
|
long _FAR_ _cdecl tell(int);
|
||||||
|
int _FAR_ _cdecl umask(int);
|
||||||
|
int _FAR_ _cdecl unlink(const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl write(int, const void _FAR_ *, unsigned int);
|
33
Microsoft C v6ax/INCLUDE/LIMITS.H
Normal file
33
Microsoft C v6ax/INCLUDE/LIMITS.H
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
/***
|
||||||
|
*limits.h - implementation dependent values
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* Contains defines for a number of implementation dependent values
|
||||||
|
* which are commonly used in C programs.
|
||||||
|
* [ANSI]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#define CHAR_BIT 8 /* number of bits in a char */
|
||||||
|
#define SCHAR_MIN (-127) /* minimum signed char value */
|
||||||
|
#define SCHAR_MAX 127 /* maximum signed char value */
|
||||||
|
#define UCHAR_MAX 0xff /* maximum unsigned char value */
|
||||||
|
#ifndef _CHAR_UNSIGNED
|
||||||
|
#define CHAR_MIN SCHAR_MIN /* mimimum char value */
|
||||||
|
#define CHAR_MAX SCHAR_MAX /* maximum char value */
|
||||||
|
#else
|
||||||
|
#define CHAR_MIN 0
|
||||||
|
#define CHAR_MAX UCHAR_MAX
|
||||||
|
#endif
|
||||||
|
#define MB_LEN_MAX 1 /* max. # bytes in multibyte char */
|
||||||
|
#define SHRT_MIN (-32767) /* minimum (signed) short value */
|
||||||
|
#define SHRT_MAX 32767 /* maximum (signed) short value */
|
||||||
|
#define USHRT_MAX 0xffff /* maximum unsigned short value */
|
||||||
|
#define INT_MIN (-32767) /* minimum (signed) int value */
|
||||||
|
#define INT_MAX 32767 /* maximum (signed) int value */
|
||||||
|
#define UINT_MAX 0xffff /* maximum unsigned int value */
|
||||||
|
#define LONG_MIN (-2147483647) /* minimum (signed) long value */
|
||||||
|
#define LONG_MAX 2147483647 /* maximum (signed) long value */
|
||||||
|
#define ULONG_MAX 0xffffffff /* maximum unsigned long value */
|
78
Microsoft C v6ax/INCLUDE/LOCALE.H
Normal file
78
Microsoft C v6ax/INCLUDE/LOCALE.H
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
/***
|
||||||
|
*locale.h - definitions/declarations for localization routines
|
||||||
|
*
|
||||||
|
* Copyright (c) 1988-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file defines the structures, values, macros, and functions
|
||||||
|
* used by the localization routines.
|
||||||
|
* [ANSI]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* define NULL pointer value */
|
||||||
|
|
||||||
|
#ifndef NULL
|
||||||
|
#if (_MSC_VER >= 600)
|
||||||
|
#define NULL ((void *)0)
|
||||||
|
#elif (defined(M_I86SM) || defined(M_I86MM))
|
||||||
|
#define NULL 0
|
||||||
|
#else
|
||||||
|
#define NULL 0L
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* Locale categories */
|
||||||
|
|
||||||
|
#define LC_ALL 0
|
||||||
|
#define LC_COLLATE 1
|
||||||
|
#define LC_CTYPE 2
|
||||||
|
#define LC_MONETARY 3
|
||||||
|
#define LC_NUMERIC 4
|
||||||
|
#define LC_TIME 5
|
||||||
|
|
||||||
|
#define LC_MIN LC_ALL
|
||||||
|
#define LC_MAX LC_TIME
|
||||||
|
|
||||||
|
|
||||||
|
/* Locale convention structure */
|
||||||
|
|
||||||
|
#ifndef _LCONV_DEFINED
|
||||||
|
struct lconv {
|
||||||
|
char *decimal_point;
|
||||||
|
char *thousands_sep;
|
||||||
|
char *grouping;
|
||||||
|
char *int_curr_symbol;
|
||||||
|
char *currency_symbol;
|
||||||
|
char *mon_decimal_point;
|
||||||
|
char *mon_thousands_sep;
|
||||||
|
char *mon_grouping;
|
||||||
|
char *positive_sign;
|
||||||
|
char *negative_sign;
|
||||||
|
char int_frac_digits;
|
||||||
|
char frac_digits;
|
||||||
|
char p_cs_precedes;
|
||||||
|
char p_sep_by_space;
|
||||||
|
char n_cs_precedes;
|
||||||
|
char n_sep_by_space;
|
||||||
|
char p_sign_posn;
|
||||||
|
char n_sign_posn;
|
||||||
|
};
|
||||||
|
#define _LCONV_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
char _FAR_ * _FAR_ _cdecl setlocale(int, const char _FAR_ *);
|
||||||
|
struct lconv _FAR_ * _FAR_ _cdecl localeconv(void);
|
136
Microsoft C v6ax/INCLUDE/MALLOC.H
Normal file
136
Microsoft C v6ax/INCLUDE/MALLOC.H
Normal file
@ -0,0 +1,136 @@
|
|||||||
|
/***
|
||||||
|
*malloc.h - declarations and definitions for memory allocation functions
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* Contains the function declarations for memory allocation functions;
|
||||||
|
* also defines manifest constants and types used by the heap routines.
|
||||||
|
* [System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* constants for based heap routines */
|
||||||
|
|
||||||
|
#if (_MSC_VER >= 600)
|
||||||
|
#define _NULLSEG ((_segment)0)
|
||||||
|
#define _NULLOFF ((void _based(void) *)0xffff)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* constants for _heapchk/_heapset/_heapwalk routines */
|
||||||
|
|
||||||
|
#define _HEAPEMPTY (-1)
|
||||||
|
#define _HEAPOK (-2)
|
||||||
|
#define _HEAPBADBEGIN (-3)
|
||||||
|
#define _HEAPBADNODE (-4)
|
||||||
|
#define _HEAPEND (-5)
|
||||||
|
#define _HEAPBADPTR (-6)
|
||||||
|
#define _FREEENTRY 0
|
||||||
|
#define _USEDENTRY 1
|
||||||
|
|
||||||
|
|
||||||
|
/* maximum heap request that can ever be honored */
|
||||||
|
|
||||||
|
#define _HEAP_MAXREQ 0xFFE8
|
||||||
|
|
||||||
|
|
||||||
|
/* types and structures */
|
||||||
|
|
||||||
|
#ifndef _SIZE_T_DEFINED
|
||||||
|
typedef unsigned int size_t;
|
||||||
|
#define _SIZE_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef _HEAPINFO_DEFINED
|
||||||
|
typedef struct _heapinfo {
|
||||||
|
int _far * _pentry;
|
||||||
|
size_t _size;
|
||||||
|
int _useflag;
|
||||||
|
} _HEAPINFO;
|
||||||
|
#define _HEAPINFO_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* external variable declarations */
|
||||||
|
|
||||||
|
#ifdef _DLL
|
||||||
|
extern unsigned int _FAR_ _cdecl _amblksiz;
|
||||||
|
#else
|
||||||
|
extern unsigned int _near _cdecl _amblksiz;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* based heap function prototypes */
|
||||||
|
|
||||||
|
#if (_MSC_VER >= 600)
|
||||||
|
void _based(void) * _FAR_ _cdecl _bcalloc(_segment, size_t, size_t);
|
||||||
|
void _based(void) * _FAR_ _cdecl _bexpand(_segment,
|
||||||
|
void _based(void) *, size_t);
|
||||||
|
void _FAR_ _cdecl _bfree(_segment, void _based(void) *);
|
||||||
|
int _FAR_ _cdecl _bfreeseg(_segment);
|
||||||
|
int _FAR_ _cdecl _bheapadd(_segment, void _based(void) *, size_t);
|
||||||
|
int _FAR_ _cdecl _bheapchk(_segment);
|
||||||
|
int _FAR_ _cdecl _bheapmin(_segment);
|
||||||
|
_segment _FAR_ _cdecl _bheapseg(size_t);
|
||||||
|
int _FAR_ _cdecl _bheapset(_segment, unsigned int);
|
||||||
|
int _FAR_ _cdecl _bheapwalk(_segment, _HEAPINFO *);
|
||||||
|
void _based(void) * _FAR_ _cdecl _bmalloc(_segment, size_t);
|
||||||
|
size_t _FAR_ _cdecl _bmsize(_segment, void _based(void) *);
|
||||||
|
void _based(void) * _FAR_ _cdecl _brealloc(_segment,
|
||||||
|
void _based(void) *, size_t);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
void _FAR_ * _FAR_ _cdecl alloca(size_t);
|
||||||
|
void _FAR_ * _FAR_ _cdecl calloc(size_t, size_t);
|
||||||
|
void _FAR_ * _FAR_ _cdecl _expand(void _FAR_ *, size_t);
|
||||||
|
void _far * _FAR_ _cdecl _fcalloc(size_t, size_t);
|
||||||
|
void _far * _FAR_ _cdecl _fexpand(void _far *, size_t);
|
||||||
|
void _FAR_ _cdecl _ffree(void _far *);
|
||||||
|
int _FAR_ _cdecl _fheapchk(void);
|
||||||
|
int _FAR_ _cdecl _fheapmin(void);
|
||||||
|
int _FAR_ _cdecl _fheapset(unsigned int);
|
||||||
|
int _FAR_ _cdecl _fheapwalk(_HEAPINFO _FAR_ *);
|
||||||
|
void _far * _FAR_ _cdecl _fmalloc(size_t);
|
||||||
|
size_t _FAR_ _cdecl _fmsize(void _far *);
|
||||||
|
void _far * _FAR_ _cdecl _frealloc(void _far *, size_t);
|
||||||
|
unsigned int _FAR_ _cdecl _freect(size_t);
|
||||||
|
void _FAR_ _cdecl free(void _FAR_ *);
|
||||||
|
void _huge * _FAR_ _cdecl halloc(long, size_t);
|
||||||
|
void _FAR_ _cdecl hfree(void _huge *);
|
||||||
|
int _FAR_ _cdecl _heapadd(void _far *, size_t);
|
||||||
|
int _FAR_ _cdecl _heapchk(void);
|
||||||
|
int _FAR_ _cdecl _heapmin(void);
|
||||||
|
int _FAR_ _cdecl _heapset(unsigned int);
|
||||||
|
int _FAR_ _cdecl _heapwalk(_HEAPINFO _FAR_ *);
|
||||||
|
void _FAR_ * _FAR_ _cdecl malloc(size_t);
|
||||||
|
size_t _FAR_ _cdecl _memavl(void);
|
||||||
|
size_t _FAR_ _cdecl _memmax(void);
|
||||||
|
size_t _FAR_ _cdecl _msize(void _FAR_ *);
|
||||||
|
void _near * _FAR_ _cdecl _ncalloc(size_t, size_t);
|
||||||
|
void _near * _FAR_ _cdecl _nexpand(void _near *, size_t);
|
||||||
|
void _FAR_ _cdecl _nfree(void _near *);
|
||||||
|
int _FAR_ _cdecl _nheapchk(void);
|
||||||
|
int _FAR_ _cdecl _nheapmin(void);
|
||||||
|
int _FAR_ _cdecl _nheapset(unsigned int);
|
||||||
|
int _FAR_ _cdecl _nheapwalk(_HEAPINFO _FAR_ *);
|
||||||
|
void _near * _FAR_ _cdecl _nmalloc(size_t);
|
||||||
|
size_t _FAR_ _cdecl _nmsize(void _near *);
|
||||||
|
void _near * _FAR_ _cdecl _nrealloc(void _near *, size_t);
|
||||||
|
void _FAR_ * _FAR_ _cdecl realloc(void _FAR_ *, size_t);
|
||||||
|
size_t _FAR_ _cdecl stackavail(void);
|
235
Microsoft C v6ax/INCLUDE/MATH.H
Normal file
235
Microsoft C v6ax/INCLUDE/MATH.H
Normal file
@ -0,0 +1,235 @@
|
|||||||
|
/***
|
||||||
|
*math.h - definitions and declarations for math library
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file contains constant definitions and external subroutine
|
||||||
|
* declarations for the math subroutine library.
|
||||||
|
* [ANSI/System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* definition of exception struct - this struct is passed to the matherr
|
||||||
|
* routine when a floating point exception is detected
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _EXCEPTION_DEFINED
|
||||||
|
struct exception {
|
||||||
|
int type; /* exception type - see below */
|
||||||
|
char _FAR_ *name; /* name of function where error occured */
|
||||||
|
double arg1; /* first argument to function */
|
||||||
|
double arg2; /* second argument (if any) to function */
|
||||||
|
double retval; /* value to be returned by function */
|
||||||
|
} ;
|
||||||
|
#define _EXCEPTION_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* definition of a complex struct to be used by those who use cabs and
|
||||||
|
* want type checking on their argument
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _COMPLEX_DEFINED
|
||||||
|
struct complex {
|
||||||
|
double x,y; /* real and imaginary parts */
|
||||||
|
} ;
|
||||||
|
#define _COMPLEX_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* Constant definitions for the exception type passed in the exception struct
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define DOMAIN 1 /* argument domain error */
|
||||||
|
#define SING 2 /* argument singularity */
|
||||||
|
#define OVERFLOW 3 /* overflow range error */
|
||||||
|
#define UNDERFLOW 4 /* underflow range error */
|
||||||
|
#define TLOSS 5 /* total loss of precision */
|
||||||
|
#define PLOSS 6 /* partial loss of precision */
|
||||||
|
|
||||||
|
#define EDOM 33
|
||||||
|
#define ERANGE 34
|
||||||
|
|
||||||
|
|
||||||
|
/* definitions of HUGE and HUGE_VAL - respectively the XENIX and ANSI names
|
||||||
|
* for a value returned in case of error by a number of the floating point
|
||||||
|
* math routines
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _DLL
|
||||||
|
extern double _near _cdecl HUGE;
|
||||||
|
#define HUGE_VAL HUGE
|
||||||
|
|
||||||
|
#else /* _DLL */
|
||||||
|
extern double _FAR_ _cdecl HUGE;
|
||||||
|
#define HUGE_VAL HUGE
|
||||||
|
|
||||||
|
#endif /* _DLL */
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
#ifdef _MT /* function prototypes for _MT version */
|
||||||
|
int _FAR_ _cdecl abs(int);
|
||||||
|
double _FAR_ _pascal acos(double);
|
||||||
|
double _FAR_ _pascal asin(double);
|
||||||
|
double _FAR_ _pascal atan(double);
|
||||||
|
double _FAR_ _pascal atan2(double, double);
|
||||||
|
double _FAR_ _pascal atof(const char _FAR_ *);
|
||||||
|
double _FAR_ _pascal cabs(struct complex);
|
||||||
|
double _FAR_ _pascal ceil(double);
|
||||||
|
double _FAR_ _pascal cos(double);
|
||||||
|
double _FAR_ _pascal cosh(double);
|
||||||
|
int _FAR_ _cdecl dieeetomsbin(double _FAR_ *, double _FAR_ *);
|
||||||
|
int _FAR_ _cdecl dmsbintoieee(double _FAR_ *, double _FAR_ *);
|
||||||
|
double _FAR_ _pascal exp(double);
|
||||||
|
double _FAR_ _pascal fabs(double);
|
||||||
|
int _FAR_ _cdecl fieeetomsbin(float _FAR_ *, float _FAR_ *);
|
||||||
|
double _FAR_ _pascal floor(double);
|
||||||
|
double _FAR_ _pascal fmod(double, double);
|
||||||
|
int _FAR_ _cdecl fmsbintoieee(float _FAR_ *, float _FAR_ *);
|
||||||
|
double _FAR_ _pascal frexp(double, int _FAR_ *);
|
||||||
|
double _FAR_ _pascal hypot(double, double);
|
||||||
|
double _FAR_ _pascal j0(double);
|
||||||
|
double _FAR_ _pascal j1(double);
|
||||||
|
double _FAR_ _pascal jn(int, double);
|
||||||
|
long _FAR_ _cdecl labs(long);
|
||||||
|
double _FAR_ _pascal ldexp(double, int);
|
||||||
|
double _FAR_ _pascal log(double);
|
||||||
|
double _FAR_ _pascal log10(double);
|
||||||
|
int _FAR_ _cdecl matherr(struct exception _FAR_ *);
|
||||||
|
double _FAR_ _pascal modf(double, double _FAR_ *);
|
||||||
|
double _FAR_ _pascal pow(double, double);
|
||||||
|
double _FAR_ _pascal sin(double);
|
||||||
|
double _FAR_ _pascal sinh(double);
|
||||||
|
double _FAR_ _pascal sqrt(double);
|
||||||
|
double _FAR_ _pascal tan(double);
|
||||||
|
double _FAR_ _pascal tanh(double);
|
||||||
|
double _FAR_ _pascal y0(double);
|
||||||
|
double _FAR_ _pascal y1(double);
|
||||||
|
double _FAR_ _pascal yn(int, double);
|
||||||
|
|
||||||
|
#else /* function prototypes for non _MT version */
|
||||||
|
int _FAR_ _cdecl abs(int);
|
||||||
|
double _FAR_ _cdecl acos(double);
|
||||||
|
double _FAR_ _cdecl asin(double);
|
||||||
|
double _FAR_ _cdecl atan(double);
|
||||||
|
double _FAR_ _cdecl atan2(double, double);
|
||||||
|
double _FAR_ _cdecl atof(const char _FAR_ *);
|
||||||
|
double _FAR_ _cdecl cabs(struct complex);
|
||||||
|
double _FAR_ _cdecl ceil(double);
|
||||||
|
double _FAR_ _cdecl cos(double);
|
||||||
|
double _FAR_ _cdecl cosh(double);
|
||||||
|
int _FAR_ _cdecl dieeetomsbin(double _FAR_ *, double _FAR_ *);
|
||||||
|
int _FAR_ _cdecl dmsbintoieee(double _FAR_ *, double _FAR_ *);
|
||||||
|
double _FAR_ _cdecl exp(double);
|
||||||
|
double _FAR_ _cdecl fabs(double);
|
||||||
|
int _FAR_ _cdecl fieeetomsbin(float _FAR_ *, float _FAR_ *);
|
||||||
|
double _FAR_ _cdecl floor(double);
|
||||||
|
double _FAR_ _cdecl fmod(double, double);
|
||||||
|
int _FAR_ _cdecl fmsbintoieee(float _FAR_ *, float _FAR_ *);
|
||||||
|
double _FAR_ _cdecl frexp(double, int _FAR_ *);
|
||||||
|
double _FAR_ _cdecl hypot(double, double);
|
||||||
|
double _FAR_ _cdecl j0(double);
|
||||||
|
double _FAR_ _cdecl j1(double);
|
||||||
|
double _FAR_ _cdecl jn(int, double);
|
||||||
|
long _FAR_ _cdecl labs(long);
|
||||||
|
double _FAR_ _cdecl ldexp(double, int);
|
||||||
|
double _FAR_ _cdecl log(double);
|
||||||
|
double _FAR_ _cdecl log10(double);
|
||||||
|
int _FAR_ _cdecl matherr(struct exception _FAR_ *);
|
||||||
|
double _FAR_ _cdecl modf(double, double _FAR_ *);
|
||||||
|
double _FAR_ _cdecl pow(double, double);
|
||||||
|
double _FAR_ _cdecl sin(double);
|
||||||
|
double _FAR_ _cdecl sinh(double);
|
||||||
|
double _FAR_ _cdecl sqrt(double);
|
||||||
|
double _FAR_ _cdecl tan(double);
|
||||||
|
double _FAR_ _cdecl tanh(double);
|
||||||
|
double _FAR_ _cdecl y0(double);
|
||||||
|
double _FAR_ _cdecl y1(double);
|
||||||
|
double _FAR_ _cdecl yn(int, double);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* definition of _exceptionl struct - this struct is passed to the _matherrl
|
||||||
|
* routine when a floating point exception is detected in a long double routine
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _LD_EXCEPTION_DEFINED
|
||||||
|
struct _exceptionl {
|
||||||
|
int type; /* exception type - see below */
|
||||||
|
char _FAR_ *name; /* name of function where error occured */
|
||||||
|
long double arg1; /* first argument to function */
|
||||||
|
long double arg2; /* second argument (if any) to function */
|
||||||
|
long double retval; /* value to be returned by function */
|
||||||
|
} ;
|
||||||
|
#define _LD_EXCEPTION_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* definition of a _complexl struct to be used by those who use _cabsl and
|
||||||
|
* want type checking on their argument
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _LD_COMPLEX_DEFINED
|
||||||
|
struct _complexl {
|
||||||
|
long double x,y; /* real and imaginary parts */
|
||||||
|
} ;
|
||||||
|
#define _LD_COMPLEX_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef _DLL
|
||||||
|
extern long double _near _cdecl _LHUGE;
|
||||||
|
#define _LHUGE_VAL _LHUGE
|
||||||
|
|
||||||
|
#else /* _DLL */
|
||||||
|
extern long double _FAR_ _cdecl _LHUGE;
|
||||||
|
#define _LHUGE_VAL _LHUGE
|
||||||
|
|
||||||
|
#endif /* _DLL */
|
||||||
|
|
||||||
|
long double _FAR_ _cdecl acosl(long double);
|
||||||
|
long double _FAR_ _cdecl asinl(long double);
|
||||||
|
long double _FAR_ _cdecl atanl(long double);
|
||||||
|
long double _FAR_ _cdecl atan2l(long double, long double);
|
||||||
|
long double _FAR_ _cdecl _atold(const char _FAR_ *);
|
||||||
|
long double _FAR_ _cdecl cabsl(struct _complexl);
|
||||||
|
long double _FAR_ _cdecl ceill(long double);
|
||||||
|
long double _FAR_ _cdecl cosl(long double);
|
||||||
|
long double _FAR_ _cdecl coshl(long double);
|
||||||
|
long double _FAR_ _cdecl expl(long double);
|
||||||
|
long double _FAR_ _cdecl fabsl(long double);
|
||||||
|
long double _FAR_ _cdecl floorl(long double);
|
||||||
|
long double _FAR_ _cdecl fmodl(long double, long double);
|
||||||
|
long double _FAR_ _cdecl frexpl(long double, int _FAR_ *);
|
||||||
|
long double _FAR_ _cdecl hypotl(long double, long double);
|
||||||
|
long double _FAR_ _cdecl _j0l(long double);
|
||||||
|
long double _FAR_ _cdecl _j1l(long double);
|
||||||
|
long double _FAR_ _cdecl _jnl(int, long double);
|
||||||
|
long double _FAR_ _cdecl ldexpl(long double, int);
|
||||||
|
long double _FAR_ _cdecl logl(long double);
|
||||||
|
long double _FAR_ _cdecl log10l(long double);
|
||||||
|
int _FAR_ _cdecl _matherrl(struct _exceptionl _FAR_ *);
|
||||||
|
long double _FAR_ _cdecl modfl(long double, long double _FAR_ *);
|
||||||
|
long double _FAR_ _cdecl powl(long double, long double);
|
||||||
|
long double _FAR_ _cdecl sinl(long double);
|
||||||
|
long double _FAR_ _cdecl sinhl(long double);
|
||||||
|
long double _FAR_ _cdecl sqrtl(long double);
|
||||||
|
long double _FAR_ _cdecl tanl(long double);
|
||||||
|
long double _FAR_ _cdecl tanhl(long double);
|
||||||
|
long double _FAR_ _cdecl _y0l(long double);
|
||||||
|
long double _FAR_ _cdecl _y1l(long double);
|
||||||
|
long double _FAR_ _cdecl _ynl(int, long double);
|
56
Microsoft C v6ax/INCLUDE/MEMORY.H
Normal file
56
Microsoft C v6ax/INCLUDE/MEMORY.H
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
/***
|
||||||
|
*memory.h - declarations for buffer (memory) manipulation routines
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This include file contains the function declarations for the
|
||||||
|
* buffer (memory) manipulation routines.
|
||||||
|
* [System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _SIZE_T_DEFINED
|
||||||
|
typedef unsigned int size_t;
|
||||||
|
#define _SIZE_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
void _FAR_ * _FAR_ _cdecl memccpy(void _FAR_ *, const void _FAR_ *,
|
||||||
|
int, unsigned int);
|
||||||
|
void _FAR_ * _FAR_ _cdecl memchr(const void _FAR_ *, int, size_t);
|
||||||
|
int _FAR_ _cdecl memcmp(const void _FAR_ *, const void _FAR_ *,
|
||||||
|
size_t);
|
||||||
|
void _FAR_ * _FAR_ _cdecl memcpy(void _FAR_ *, const void _FAR_ *,
|
||||||
|
size_t);
|
||||||
|
int _FAR_ _cdecl memicmp(const void _FAR_ *, const void _FAR_ *,
|
||||||
|
unsigned int);
|
||||||
|
void _FAR_ * _FAR_ _cdecl memset(void _FAR_ *, int, size_t);
|
||||||
|
void _FAR_ _cdecl movedata(unsigned int, unsigned int, unsigned int,
|
||||||
|
unsigned int, unsigned int);
|
||||||
|
|
||||||
|
|
||||||
|
/* model independent function prototypes */
|
||||||
|
|
||||||
|
void _far * _far _cdecl _fmemccpy(void _far *, const void _far *,
|
||||||
|
int, unsigned int);
|
||||||
|
void _far * _far _cdecl _fmemchr(const void _far *, int, size_t);
|
||||||
|
int _far _cdecl _fmemcmp(const void _far *, const void _far *,
|
||||||
|
size_t);
|
||||||
|
void _far * _far _cdecl _fmemcpy(void _far *, const void _far *,
|
||||||
|
size_t);
|
||||||
|
int _far _cdecl _fmemicmp(const void _far *, const void _far *,
|
||||||
|
unsigned int);
|
||||||
|
void _far * _far _cdecl _fmemset(void _far *, int, size_t);
|
221
Microsoft C v6ax/INCLUDE/PGCHART.H
Normal file
221
Microsoft C v6ax/INCLUDE/PGCHART.H
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
/***
|
||||||
|
*pgchart.h - Declare constants, functions and macros for charting library.
|
||||||
|
*
|
||||||
|
* Copyright (c) 1988-1990, Microsoft Corporation, All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file declares the presentation graphics library functions and
|
||||||
|
* the structures and manifest constants that are used with them.
|
||||||
|
*
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
/* Force word alignment to avoid possible -Zp override */
|
||||||
|
#pragma pack(2)
|
||||||
|
|
||||||
|
/* Required for the missing value definition */
|
||||||
|
#ifndef FLT_MAX
|
||||||
|
#define FLT_MAX 3.402823466e+38F /* max value */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define _PG_PALETTELEN 16 /* Number of entries in internal palette */
|
||||||
|
#define _PG_MAXCHARTTYPE 5 /* Maximum available chart type */
|
||||||
|
#define _PG_MAXCHARTSTYLE 2 /* Maximum chart style */
|
||||||
|
#define _PG_TITLELEN 70 /* Maximum title text length */
|
||||||
|
|
||||||
|
#define _PG_LEFT 1 /* Positions used for titles and legends */
|
||||||
|
#define _PG_CENTER 2
|
||||||
|
#define _PG_RIGHT 3
|
||||||
|
#define _PG_BOTTOM 4
|
||||||
|
#define _PG_OVERLAY 5
|
||||||
|
|
||||||
|
#define _PG_LINEARAXIS 1 /* Used to specify axis types */
|
||||||
|
#define _PG_LOGAXIS 2
|
||||||
|
|
||||||
|
#define _PG_DECFORMAT 1 /* Used to specify tic mark label format */
|
||||||
|
#define _PG_EXPFORMAT 2
|
||||||
|
|
||||||
|
#define _PG_BARCHART 1 /* Charttype for a bar chart */
|
||||||
|
#define _PG_COLUMNCHART 2 /* Charttype for a column chart */
|
||||||
|
#define _PG_PLAINBARS 1 /* Styles for bar and column charts */
|
||||||
|
#define _PG_STACKEDBARS 2
|
||||||
|
|
||||||
|
#define _PG_LINECHART 3 /* Charttype for a line chart */
|
||||||
|
#define _PG_SCATTERCHART 4 /* Charttype for a scatter chart */
|
||||||
|
#define _PG_POINTANDLINE 1 /* Styles for line and scatter charts */
|
||||||
|
#define _PG_POINTONLY 2
|
||||||
|
|
||||||
|
#define _PG_PIECHART 5 /* Charttype for pie chart */
|
||||||
|
#define _PG_PERCENT 1 /* Styles for pie charts */
|
||||||
|
#define _PG_NOPERCENT 2
|
||||||
|
|
||||||
|
#define _PG_MISSINGVALUE (-FLT_MAX) /* Indicates missing data values */
|
||||||
|
|
||||||
|
/* Error codes */
|
||||||
|
|
||||||
|
/* Numbers greater than 100 will terminate chart routine, others will cause
|
||||||
|
* default values to be used
|
||||||
|
*/
|
||||||
|
#define _PG_NOTINITIALIZED 102 /* If library not initialized */
|
||||||
|
#define _PG_BADSCREENMODE 103 /* Graphics mode not set before charting */
|
||||||
|
#define _PG_BADCHARTSTYLE 04 /* Chart style invalid */
|
||||||
|
#define _PG_BADCHARTTYPE 104 /* Chart type invalid */
|
||||||
|
#define _PG_BADLEGENDWINDOW 105 /* Invalid legend window specified */
|
||||||
|
#define _PG_BADCHARTWINDOW 07 /* x1=x2 or y1=y2 in chart window spec. */
|
||||||
|
#define _PG_BADDATAWINDOW 107 /* If chart window is too small */
|
||||||
|
#define _PG_NOMEMORY 108 /* Not enough memory for data arrays */
|
||||||
|
#define _PG_BADLOGBASE 05 /* Log base <= 0 */
|
||||||
|
#define _PG_BADSCALEFACTOR 06 /* Scale factor = 0 */
|
||||||
|
#define _PG_TOOSMALLN 109 /* Number of data points <= 0 */
|
||||||
|
#define _PG_TOOFEWSERIES 110 /* Number of series <= 0 */
|
||||||
|
|
||||||
|
/* Typedefs */
|
||||||
|
|
||||||
|
/* Typedef for chart title */
|
||||||
|
#ifndef _TITLETYPE_DEFINED
|
||||||
|
typedef struct {
|
||||||
|
char title[_PG_TITLELEN]; /* Title text */
|
||||||
|
short titlecolor; /* Internal palette color for title text */
|
||||||
|
short justify; /* _PG_LEFT, _PG_CENTER, _PG_RIGHT */
|
||||||
|
} titletype;
|
||||||
|
#define _TITLETYPE_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Typedef for chart axes */
|
||||||
|
#ifndef _AXISTYPE_DEFINED
|
||||||
|
typedef struct {
|
||||||
|
short grid; /* TRUE=grid lines drawn; FALSE no lines */
|
||||||
|
short gridstyle; /* Style number from style pool for grid lines */
|
||||||
|
titletype axistitle; /* Title definition for axis */
|
||||||
|
short axiscolor; /* Color for axis */
|
||||||
|
short labeled; /* TRUE=tic marks and titles drawn */
|
||||||
|
short rangetype; /* _PG_LINEARAXIS, _PG_LOGAXIS */
|
||||||
|
float logbase; /* Base used if log axis */
|
||||||
|
short autoscale; /* TRUE=next 7 values calculated by system */
|
||||||
|
float scalemin; /* Minimum value of scale */
|
||||||
|
float scalemax; /* Maximum value of scale */
|
||||||
|
float scalefactor; /* Scale factor for data on this axis */
|
||||||
|
titletype scaletitle; /* Title definition for scaling factor */
|
||||||
|
float ticinterval; /* Distance between tic marks (world coord.) */
|
||||||
|
short ticformat; /* _PG_EXPFORMAT or _PG_DECFORMAT for tic labels */
|
||||||
|
short ticdecimals; /* Number of decimals for tic labels (max=9)*/
|
||||||
|
} axistype;
|
||||||
|
#define _AXISTYPE_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Typedef used for defining chart and data windows */
|
||||||
|
#ifndef _WINDOWTYPE_DEFINED
|
||||||
|
typedef struct {
|
||||||
|
short x1; /* Left edge of window in pixels */
|
||||||
|
short y1; /* Top edge of window in pixels */
|
||||||
|
short x2; /* Right edge of window in pixels */
|
||||||
|
short y2; /* Bottom edge of window in pixels */
|
||||||
|
short border; /* TRUE for border, FALSE otherwise */
|
||||||
|
short background; /* Internal palette color for window bgnd */
|
||||||
|
short borderstyle; /* Style bytes for window border */
|
||||||
|
short bordercolor; /* Internal palette color for window border */
|
||||||
|
} windowtype;
|
||||||
|
#define _WINDOWTYPE_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Typedef for legend definition */
|
||||||
|
#ifndef _LEGENDTYPE_DEFINED
|
||||||
|
typedef struct {
|
||||||
|
short legend; /* TRUE=draw legend; FALSE=no legend */
|
||||||
|
short place; /* _PG_RIGHT, _PG_BOTTOM, _PG_OVERLAY */
|
||||||
|
short textcolor; /* Internal palette color for text */
|
||||||
|
short autosize; /* TRUE=system calculates size */
|
||||||
|
windowtype legendwindow; /* Window definition for legend */
|
||||||
|
} legendtype;
|
||||||
|
#define _LEGENDTYPE_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Typedef for legend definition */
|
||||||
|
#ifndef _CHARTENV_DEFINED
|
||||||
|
typedef struct {
|
||||||
|
short charttype; /* _PG_BAR, _PG_COLUMN, _PG_LINE, _PG_SCATTER, _PG_PIE */
|
||||||
|
short chartstyle; /* Style for selected chart type */
|
||||||
|
windowtype chartwindow; /* Window definition for overall chart */
|
||||||
|
windowtype datawindow; /* Window definition for data part of chart */
|
||||||
|
titletype maintitle; /* Main chart title */
|
||||||
|
titletype subtitle; /* Chart sub-title */
|
||||||
|
axistype xaxis; /* Definition for X-axis */
|
||||||
|
axistype yaxis; /* Definition for Y-axis */
|
||||||
|
legendtype legend; /* Definition for legend */
|
||||||
|
} chartenv;
|
||||||
|
#define _CHARTENV_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Typedef for character bitmap */
|
||||||
|
#ifndef _CHARMAP_DEFINED
|
||||||
|
typedef unsigned char charmap[8];
|
||||||
|
#define _CHARMAP_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Typedef for pattern bitmap */
|
||||||
|
#ifndef _FILLMAP_DEFINED
|
||||||
|
typedef unsigned char fillmap[8];
|
||||||
|
#define _FILLMAP_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Typedef for palette entry definition */
|
||||||
|
#ifndef _PALETTEENTRY_DEFINED
|
||||||
|
typedef struct {
|
||||||
|
unsigned short color;
|
||||||
|
unsigned short style;
|
||||||
|
fillmap fill;
|
||||||
|
char plotchar;
|
||||||
|
} paletteentry;
|
||||||
|
#define _PALETTEENTRY_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Typedef for palette definition */
|
||||||
|
#ifndef _PALETTETYPE_DEFINED
|
||||||
|
typedef paletteentry palettetype[_PG_PALETTELEN];
|
||||||
|
#define _PALETTETYPE_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Typedef for style sets */
|
||||||
|
#ifndef _STYLESET_DEFINED
|
||||||
|
typedef unsigned short styleset[_PG_PALETTELEN];
|
||||||
|
#define _STYLESET_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Function prototypes for charting routines */
|
||||||
|
|
||||||
|
short _far _cdecl _pg_initchart(void);
|
||||||
|
short _far _cdecl _pg_defaultchart(chartenv _far *, short, short);
|
||||||
|
|
||||||
|
short _far _cdecl _pg_chart(chartenv _far *, const char _far * const _far *, const float _far *, short);
|
||||||
|
short _far _cdecl _pg_chartms(chartenv _far *, const char _far * const _far *, const float _far *, short, short, short, const char _far * const _far *);
|
||||||
|
|
||||||
|
short _far _cdecl _pg_chartscatter(chartenv _far *, const float _far *, const float _far *, short);
|
||||||
|
short _far _cdecl _pg_chartscatterms(chartenv _far *, const float _far *, const float _far *, short, short, short, const char _far * const _far *);
|
||||||
|
|
||||||
|
short _far _cdecl _pg_chartpie(chartenv _far *, const char _far * const _far *, const float _far *, const short _far *, short);
|
||||||
|
|
||||||
|
/* Function prototypes for support routines */
|
||||||
|
|
||||||
|
short _far _cdecl _pg_hlabelchart(chartenv _far *, short, short, short, const char _far *);
|
||||||
|
short _far _cdecl _pg_vlabelchart(chartenv _far *, short, short, short, const char _far *);
|
||||||
|
|
||||||
|
short _far _cdecl _pg_analyzechart(chartenv _far *, const char _far * const _far *, const float _far *, short);
|
||||||
|
short _far _cdecl _pg_analyzechartms(chartenv _far *, const char _far * const _far *, const float _far *, short, short, short, const char _far * const _far *);
|
||||||
|
|
||||||
|
short _far _cdecl _pg_analyzescatter(chartenv _far *, const float _far *, const float _far *, short);
|
||||||
|
short _far _cdecl _pg_analyzescatterms(chartenv _far *, const float _far *, const float _far *, short, short, short, const char _far * const _far *);
|
||||||
|
|
||||||
|
short _far _cdecl _pg_analyzepie(chartenv _far *, const char _far * const _far *, const float _far *, const short _far *, short);
|
||||||
|
|
||||||
|
short _far _cdecl _pg_getpalette(paletteentry _far *);
|
||||||
|
short _far _cdecl _pg_setpalette(const paletteentry _far *);
|
||||||
|
short _far _cdecl _pg_resetpalette(void);
|
||||||
|
|
||||||
|
void _far _cdecl _pg_getstyleset(unsigned short _far *);
|
||||||
|
void _far _cdecl _pg_setstyleset(const unsigned short _far *);
|
||||||
|
void _far _cdecl _pg_resetstyleset(void);
|
||||||
|
|
||||||
|
short _far _cdecl _pg_getchardef(short, unsigned char _far *);
|
||||||
|
short _far _cdecl _pg_setchardef(short, const unsigned char _far *);
|
||||||
|
|
||||||
|
/* Restore default packing */
|
||||||
|
#pragma pack()
|
91
Microsoft C v6ax/INCLUDE/PROCESS.H
Normal file
91
Microsoft C v6ax/INCLUDE/PROCESS.H
Normal file
@ -0,0 +1,91 @@
|
|||||||
|
/***
|
||||||
|
*process.h - definition and declarations for process control functions
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file contains the declarations and definitions for the
|
||||||
|
* spawnxx, execxx, and various other process control routines.
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* mode values for spawnxx routines
|
||||||
|
* (only P_WAIT and P_OVERLAY are supported on MS-DOS)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _MT
|
||||||
|
extern int _near _cdecl _p_overlay;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define P_WAIT 0
|
||||||
|
#define P_NOWAIT 1
|
||||||
|
#ifdef _MT
|
||||||
|
#define P_OVERLAY 2
|
||||||
|
#else
|
||||||
|
#define P_OVERLAY _p_overlay
|
||||||
|
#endif
|
||||||
|
#define OLD_P_OVERLAY 2
|
||||||
|
#define P_NOWAITO 3
|
||||||
|
#define P_DETACH 4
|
||||||
|
|
||||||
|
|
||||||
|
/* action codes used with cwait() */
|
||||||
|
|
||||||
|
#define WAIT_CHILD 0
|
||||||
|
#define WAIT_GRANDCHILD 1
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
int _FAR_ _cdecl _beginthread(void(_cdecl _FAR_ *)(void _FAR_ *),
|
||||||
|
void _FAR_ *, unsigned, void _FAR_ *);
|
||||||
|
void _FAR_ _cdecl _endthread(void);
|
||||||
|
#endif
|
||||||
|
void _FAR_ _cdecl abort(void);
|
||||||
|
void _FAR_ _cdecl _cexit(void);
|
||||||
|
void _FAR_ _cdecl _c_exit(void);
|
||||||
|
int _FAR_ _cdecl cwait(int _FAR_ *, int, int);
|
||||||
|
int _FAR_ _cdecl execl(const char _FAR_ *, const char _FAR_ *, ...);
|
||||||
|
int _FAR_ _cdecl execle(const char _FAR_ *, const char _FAR_ *, ...);
|
||||||
|
int _FAR_ _cdecl execlp(const char _FAR_ *, const char _FAR_ *, ...);
|
||||||
|
int _FAR_ _cdecl execlpe(const char _FAR_ *, const char _FAR_ *, ...);
|
||||||
|
int _FAR_ _cdecl execv(const char _FAR_ *,
|
||||||
|
const char _FAR_ * const _FAR_ *);
|
||||||
|
int _FAR_ _cdecl execve(const char _FAR_ *,
|
||||||
|
const char _FAR_ * const _FAR_ *, const char _FAR_ * const _FAR_ *);
|
||||||
|
int _FAR_ _cdecl execvp(const char _FAR_ *,
|
||||||
|
const char _FAR_ * const _FAR_ *);
|
||||||
|
int _FAR_ _cdecl execvpe(const char _FAR_ *,
|
||||||
|
const char _FAR_ * const _FAR_ *, const char _FAR_ * const _FAR_ *);
|
||||||
|
void _FAR_ _cdecl exit(int);
|
||||||
|
void _FAR_ _cdecl _exit(int);
|
||||||
|
int _FAR_ _cdecl getpid(void);
|
||||||
|
int _FAR_ _cdecl spawnl(int, const char _FAR_ *, const char _FAR_ *,
|
||||||
|
...);
|
||||||
|
int _FAR_ _cdecl spawnle(int, const char _FAR_ *, const char _FAR_ *,
|
||||||
|
...);
|
||||||
|
int _FAR_ _cdecl spawnlp(int, const char _FAR_ *, const char _FAR_ *,
|
||||||
|
...);
|
||||||
|
int _FAR_ _cdecl spawnlpe(int, const char _FAR_ *, const char _FAR_ *,
|
||||||
|
...);
|
||||||
|
int _FAR_ _cdecl spawnv(int, const char _FAR_ *,
|
||||||
|
const char _FAR_ * const _FAR_ *);
|
||||||
|
int _FAR_ _cdecl spawnve(int, const char _FAR_ *,
|
||||||
|
const char _FAR_ * const _FAR_ *, const char _FAR_ * const _FAR_ *);
|
||||||
|
int _FAR_ _cdecl spawnvp(int, const char _FAR_ *,
|
||||||
|
const char _FAR_ * const _FAR_ *);
|
||||||
|
int _FAR_ _cdecl spawnvpe(int, const char _FAR_ *,
|
||||||
|
const char _FAR_ * const _FAR_ *, const char _FAR_ * const _FAR_ *);
|
||||||
|
int _FAR_ _cdecl system(const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl wait(int _FAR_ *);
|
41
Microsoft C v6ax/INCLUDE/SEARCH.H
Normal file
41
Microsoft C v6ax/INCLUDE/SEARCH.H
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
/***
|
||||||
|
*search.h - declarations for searcing/sorting routines
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file contains the declarations for the sorting and
|
||||||
|
* searching routines.
|
||||||
|
* [System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _SIZE_T_DEFINED
|
||||||
|
typedef unsigned int size_t;
|
||||||
|
#define _SIZE_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
void _FAR_ * _FAR_ _cdecl lsearch(const void _FAR_ *, void _FAR_ *,
|
||||||
|
unsigned int _FAR_ *, unsigned int, int (_FAR_ _cdecl *)
|
||||||
|
(const void _FAR_ *, const void _FAR_ *));
|
||||||
|
void _FAR_ * _FAR_ _cdecl lfind(const void _FAR_ *, const void _FAR_ *,
|
||||||
|
unsigned int _FAR_ *, unsigned int, int (_FAR_ _cdecl *)
|
||||||
|
(const void _FAR_ *, const void _FAR_ *));
|
||||||
|
void _FAR_ * _FAR_ _cdecl bsearch(const void _FAR_ *, const void _FAR_ *,
|
||||||
|
size_t, size_t, int (_FAR_ _cdecl *)(const void _FAR_ *,
|
||||||
|
const void _FAR_ *));
|
||||||
|
void _FAR_ _cdecl qsort(void _FAR_ *, size_t, size_t, int (_FAR_ _cdecl *)
|
||||||
|
(const void _FAR_ *, const void _FAR_ *));
|
37
Microsoft C v6ax/INCLUDE/SETJMP.H
Normal file
37
Microsoft C v6ax/INCLUDE/SETJMP.H
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
/***
|
||||||
|
*setjmp.h - definitions/declarations for setjmp/longjmp routines
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file defines the machine-dependent buffer used by
|
||||||
|
* setjmp/longjmp to save and restore the program state, and
|
||||||
|
* declarations for those routines.
|
||||||
|
* [ANSI/System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* define the buffer type for holding the state information */
|
||||||
|
|
||||||
|
#define _JBLEN 9 /* bp, di, si, sp, ret addr, ds */
|
||||||
|
|
||||||
|
#ifndef _JMP_BUF_DEFINED
|
||||||
|
typedef int jmp_buf[_JBLEN];
|
||||||
|
#define _JMP_BUF_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
int _FAR_ _cdecl setjmp(jmp_buf);
|
||||||
|
void _FAR_ _cdecl longjmp(jmp_buf, int);
|
15
Microsoft C v6ax/INCLUDE/SHARE.H
Normal file
15
Microsoft C v6ax/INCLUDE/SHARE.H
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
/***
|
||||||
|
*share.h - defines file sharing modes for sopen
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file defines the file sharing modes for sopen().
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#define SH_COMPAT 0x00 /* compatibility mode */
|
||||||
|
#define SH_DENYRW 0x10 /* deny read/write mode */
|
||||||
|
#define SH_DENYWR 0x20 /* deny write mode */
|
||||||
|
#define SH_DENYRD 0x30 /* deny read mode */
|
||||||
|
#define SH_DENYNO 0x40 /* deny none mode */
|
71
Microsoft C v6ax/INCLUDE/SIGNAL.H
Normal file
71
Microsoft C v6ax/INCLUDE/SIGNAL.H
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
/***
|
||||||
|
*signal.h - defines signal values and routines
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file defines the signal values and declares the signal functions.
|
||||||
|
* [ANSI/System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _DLL
|
||||||
|
#define _LOADDS_ _loadds
|
||||||
|
#else
|
||||||
|
#define _LOADDS_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _SIG_ATOMIC_T_DEFINED
|
||||||
|
typedef int sig_atomic_t;
|
||||||
|
#define _SIG_ATOMIC_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#define NSIG 23 /* maximum signal number + 1 */
|
||||||
|
|
||||||
|
/* signal types */
|
||||||
|
/* SIGINT, SIGFPE, SIGILL, SIGSEGV, and SIGABRT are recognized on DOS 3.x */
|
||||||
|
|
||||||
|
#define SIGINT 2 /* interrupt - corresponds to DOS 3.x int 23H */
|
||||||
|
#define SIGILL 4 /* illegal instruction - invalid function image */
|
||||||
|
#define SIGFPE 8 /* floating point exception */
|
||||||
|
#define SIGSEGV 11 /* segment violation */
|
||||||
|
#define SIGTERM 15 /* Software termination signal from kill */
|
||||||
|
#define SIGUSR1 16 /* User defined signal 1 */
|
||||||
|
#define SIGUSR2 17 /* User defined signal 2 */
|
||||||
|
#define SIGUSR3 20 /* User defined signal 3 */
|
||||||
|
#define SIGBREAK 21 /* Ctrl-Break sequence */
|
||||||
|
#define SIGABRT 22 /* abnormal termination triggered by abort call */
|
||||||
|
|
||||||
|
|
||||||
|
/* signal action codes */
|
||||||
|
/* SIG_DFL and SIG_IGN are recognized on DOS 3.x */
|
||||||
|
|
||||||
|
#define SIG_DFL (void (_FAR_ _cdecl _LOADDS_ *)())0 /* default signal action */
|
||||||
|
#define SIG_IGN (void (_FAR_ _cdecl _LOADDS_ *)())1 /* ignore */
|
||||||
|
#define SIG_SGE (void (_FAR_ _cdecl _LOADDS_ *)())3 /* signal gets error */
|
||||||
|
#define SIG_ACK (void (_FAR_ _cdecl _LOADDS_ *)())4 /* error if handler not setup */
|
||||||
|
|
||||||
|
|
||||||
|
/* signal error value (returned by signal call on error) */
|
||||||
|
|
||||||
|
#define SIG_ERR (void (_FAR_ _cdecl _LOADDS_ *)())-1 /* signal error value */
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
void (_FAR_ _cdecl _LOADDS_ * _FAR_ _cdecl signal(int,
|
||||||
|
void (_FAR_ _cdecl _LOADDS_ *)()))();
|
||||||
|
#ifndef _MT
|
||||||
|
int _FAR_ _cdecl raise(int);
|
||||||
|
#endif
|
42
Microsoft C v6ax/INCLUDE/STDARG.H
Normal file
42
Microsoft C v6ax/INCLUDE/STDARG.H
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
/***
|
||||||
|
*stdarg.h - defines ANSI-style macros for variable argument functions
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file defines ANSI-style macros for accessing arguments
|
||||||
|
* of functions which take a variable number of arguments.
|
||||||
|
* [ANSI]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* define NULL pointer value */
|
||||||
|
|
||||||
|
#ifndef NULL
|
||||||
|
#if (_MSC_VER >= 600)
|
||||||
|
#define NULL ((void *)0)
|
||||||
|
#elif (defined(M_I86SM) || defined(M_I86MM))
|
||||||
|
#define NULL 0
|
||||||
|
#else
|
||||||
|
#define NULL 0L
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _VA_LIST_DEFINED
|
||||||
|
typedef char _FAR_ *va_list;
|
||||||
|
#define _VA_LIST_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define va_start(ap,v) ap = (va_list)&v + sizeof(v)
|
||||||
|
#define va_arg(ap,t) ((t _FAR_ *)(ap += sizeof(t)))[-1]
|
||||||
|
#define va_end(ap) ap = NULL
|
65
Microsoft C v6ax/INCLUDE/STDDEF.H
Normal file
65
Microsoft C v6ax/INCLUDE/STDDEF.H
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
/***
|
||||||
|
*stddef.h - definitions/declarations for common constants, types, variables
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file contains definitions and declarations for some commonly
|
||||||
|
* used constants, types, and variables.
|
||||||
|
* [ANSI]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* define the NULL pointer value and the offsetof() macro */
|
||||||
|
|
||||||
|
#ifndef NULL
|
||||||
|
#if (_MSC_VER >= 600)
|
||||||
|
#define NULL ((void *)0)
|
||||||
|
#elif (defined(M_I86SM) || defined(M_I86MM))
|
||||||
|
#define NULL 0
|
||||||
|
#else
|
||||||
|
#define NULL 0L
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define offsetof(s,m) (size_t)&(((s *)0)->m)
|
||||||
|
|
||||||
|
|
||||||
|
/* declare reference to errno */
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
extern int _far * _cdecl _far volatile _errno(void);
|
||||||
|
#define errno (*_errno())
|
||||||
|
#else
|
||||||
|
extern int _near _cdecl volatile errno;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* define the implementation dependent size types */
|
||||||
|
|
||||||
|
#ifndef _PTRDIFF_T_DEFINED
|
||||||
|
typedef int ptrdiff_t;
|
||||||
|
#define _PTRDIFF_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _SIZE_T_DEFINED
|
||||||
|
typedef unsigned int size_t;
|
||||||
|
#define _SIZE_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
/* define pointer to thread id value */
|
||||||
|
|
||||||
|
extern int _far *_threadid;
|
||||||
|
#endif
|
224
Microsoft C v6ax/INCLUDE/STDIO.H
Normal file
224
Microsoft C v6ax/INCLUDE/STDIO.H
Normal file
@ -0,0 +1,224 @@
|
|||||||
|
/***
|
||||||
|
*stdio.h - definitions/declarations for standard I/O routines
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file defines the structures, values, macros, and functions
|
||||||
|
* used by the level 2 I/O ("standard I/O") routines.
|
||||||
|
* [ANSI/System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _SIZE_T_DEFINED
|
||||||
|
typedef unsigned int size_t;
|
||||||
|
#define _SIZE_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _VA_LIST_DEFINED
|
||||||
|
typedef char _FAR_ *va_list;
|
||||||
|
#define _VA_LIST_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* buffered I/O macros */
|
||||||
|
|
||||||
|
#define BUFSIZ 512
|
||||||
|
#ifdef _MT
|
||||||
|
#define _NFILE 40
|
||||||
|
#else
|
||||||
|
#define _NFILE 20
|
||||||
|
#endif
|
||||||
|
#define EOF (-1)
|
||||||
|
|
||||||
|
#ifndef _FILE_DEFINED
|
||||||
|
struct _iobuf {
|
||||||
|
char _FAR_ *_ptr;
|
||||||
|
int _cnt;
|
||||||
|
char _FAR_ *_base;
|
||||||
|
char _flag;
|
||||||
|
char _file;
|
||||||
|
};
|
||||||
|
typedef struct _iobuf FILE;
|
||||||
|
#define _FILE_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* P_tmpnam: Directory where temporary files may be created.
|
||||||
|
* L_tmpnam size = size of P_tmpdir
|
||||||
|
* + 1 (in case P_tmpdir does not end in "\\")
|
||||||
|
* + 6 (for the temp number string)
|
||||||
|
* + 1 (for the null terminator)
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define P_tmpdir "\\"
|
||||||
|
#define L_tmpnam sizeof(P_tmpdir)+8
|
||||||
|
|
||||||
|
|
||||||
|
/* fseek constants */
|
||||||
|
|
||||||
|
#define SEEK_CUR 1
|
||||||
|
#define SEEK_END 2
|
||||||
|
#define SEEK_SET 0
|
||||||
|
|
||||||
|
|
||||||
|
/* minimum guaranteed filename length, open file count, and unique
|
||||||
|
* tmpnam filenames.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define FILENAME_MAX 63
|
||||||
|
#define FOPEN_MAX 20
|
||||||
|
#define SYS_OPEN 20
|
||||||
|
#define TMP_MAX 32767
|
||||||
|
|
||||||
|
|
||||||
|
/* define NULL pointer value */
|
||||||
|
|
||||||
|
#ifndef NULL
|
||||||
|
#if (_MSC_VER >= 600)
|
||||||
|
#define NULL ((void *)0)
|
||||||
|
#elif (defined(M_I86SM) || defined(M_I86MM))
|
||||||
|
#define NULL 0
|
||||||
|
#else
|
||||||
|
#define NULL 0L
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* declare _iob[] array */
|
||||||
|
|
||||||
|
#ifndef _STDIO_DEFINED
|
||||||
|
#ifdef _DLL
|
||||||
|
extern FILE _FAR_ _cdecl _iob[];
|
||||||
|
#else
|
||||||
|
extern FILE _near _cdecl _iob[];
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* define file position type */
|
||||||
|
|
||||||
|
#ifndef _FPOS_T_DEFINED
|
||||||
|
typedef long fpos_t;
|
||||||
|
#define _FPOS_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* standard file pointers */
|
||||||
|
|
||||||
|
#define stdin (&_iob[0])
|
||||||
|
#define stdout (&_iob[1])
|
||||||
|
#define stderr (&_iob[2])
|
||||||
|
#define stdaux (&_iob[3])
|
||||||
|
#define stdprn (&_iob[4])
|
||||||
|
|
||||||
|
|
||||||
|
#define _IOREAD 0x01
|
||||||
|
#define _IOWRT 0x02
|
||||||
|
|
||||||
|
#define _IOFBF 0x0
|
||||||
|
#define _IOLBF 0x40
|
||||||
|
#define _IONBF 0x04
|
||||||
|
|
||||||
|
#define _IOMYBUF 0x08
|
||||||
|
#define _IOEOF 0x10
|
||||||
|
#define _IOERR 0x20
|
||||||
|
#define _IOSTRG 0x40
|
||||||
|
#define _IORW 0x80
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
#ifndef _STDIO_DEFINED
|
||||||
|
int _FAR_ _cdecl _filbuf(FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl _flsbuf(int, FILE _FAR_ *);
|
||||||
|
FILE _FAR_ * _FAR_ _cdecl _fsopen(const char _FAR_ *,
|
||||||
|
const char _FAR_ *, int);
|
||||||
|
void _FAR_ _cdecl clearerr(FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl fclose(FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl fcloseall(void);
|
||||||
|
FILE _FAR_ * _FAR_ _cdecl fdopen(int, const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl feof(FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl ferror(FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl fflush(FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl fgetc(FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl fgetchar(void);
|
||||||
|
int _FAR_ _cdecl fgetpos(FILE _FAR_ *, fpos_t _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl fgets(char _FAR_ *, int, FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl fileno(FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl flushall(void);
|
||||||
|
FILE _FAR_ * _FAR_ _cdecl fopen(const char _FAR_ *,
|
||||||
|
const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl fprintf(FILE _FAR_ *, const char _FAR_ *, ...);
|
||||||
|
int _FAR_ _cdecl fputc(int, FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl fputchar(int);
|
||||||
|
int _FAR_ _cdecl fputs(const char _FAR_ *, FILE _FAR_ *);
|
||||||
|
size_t _FAR_ _cdecl fread(void _FAR_ *, size_t, size_t, FILE _FAR_ *);
|
||||||
|
FILE _FAR_ * _FAR_ _cdecl freopen(const char _FAR_ *,
|
||||||
|
const char _FAR_ *, FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl fscanf(FILE _FAR_ *, const char _FAR_ *, ...);
|
||||||
|
int _FAR_ _cdecl fsetpos(FILE _FAR_ *, const fpos_t _FAR_ *);
|
||||||
|
int _FAR_ _cdecl fseek(FILE _FAR_ *, long, int);
|
||||||
|
long _FAR_ _cdecl ftell(FILE _FAR_ *);
|
||||||
|
size_t _FAR_ _cdecl fwrite(const void _FAR_ *, size_t, size_t,
|
||||||
|
FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl getc(FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl getchar(void);
|
||||||
|
char _FAR_ * _FAR_ _cdecl gets(char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl getw(FILE _FAR_ *);
|
||||||
|
void _FAR_ _cdecl perror(const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl _pclose(FILE _FAR_ *);
|
||||||
|
FILE _FAR_ * _FAR_ _cdecl _popen(const char _FAR_ *,
|
||||||
|
const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl printf(const char _FAR_ *, ...);
|
||||||
|
int _FAR_ _cdecl putc(int, FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl putchar(int);
|
||||||
|
int _FAR_ _cdecl puts(const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl putw(int, FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl remove(const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl rename(const char _FAR_ *, const char _FAR_ *);
|
||||||
|
void _FAR_ _cdecl rewind(FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl rmtmp(void);
|
||||||
|
int _FAR_ _cdecl scanf(const char _FAR_ *, ...);
|
||||||
|
void _FAR_ _cdecl setbuf(FILE _FAR_ *, char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl setvbuf(FILE _FAR_ *, char _FAR_ *, int, size_t);
|
||||||
|
int _FAR_ _cdecl sprintf(char _FAR_ *, const char _FAR_ *, ...);
|
||||||
|
int _FAR_ _cdecl sscanf(const char _FAR_ *, const char _FAR_ *, ...);
|
||||||
|
char _FAR_ * _FAR_ _cdecl tempnam(char _FAR_ *, char _FAR_ *);
|
||||||
|
FILE _FAR_ * _FAR_ _cdecl tmpfile(void);
|
||||||
|
char _FAR_ * _FAR_ _cdecl tmpnam(char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl ungetc(int, FILE _FAR_ *);
|
||||||
|
int _FAR_ _cdecl unlink(const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl vfprintf(FILE _FAR_ *, const char _FAR_ *, va_list);
|
||||||
|
int _FAR_ _cdecl vprintf(const char _FAR_ *, va_list);
|
||||||
|
int _FAR_ _cdecl vsprintf(char _FAR_ *, const char _FAR_ *, va_list);
|
||||||
|
#define _STDIO_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* macro definitions */
|
||||||
|
|
||||||
|
#define feof(_stream) ((_stream)->_flag & _IOEOF)
|
||||||
|
#define ferror(_stream) ((_stream)->_flag & _IOERR)
|
||||||
|
#define fileno(_stream) ((int)(unsigned char)(_stream)->_file)
|
||||||
|
#define getc(_stream) (--(_stream)->_cnt >= 0 ? 0xff & *(_stream)->_ptr++ \
|
||||||
|
: _filbuf(_stream))
|
||||||
|
#define putc(_c,_stream) (--(_stream)->_cnt >= 0 \
|
||||||
|
? 0xff & (*(_stream)->_ptr++ = (char)(_c)) : _flsbuf((_c),(_stream)))
|
||||||
|
#define getchar() getc(stdin)
|
||||||
|
#define putchar(_c) putc((_c),stdout)
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#undef getc
|
||||||
|
#undef putc
|
||||||
|
#undef getchar
|
||||||
|
#undef putchar
|
||||||
|
#endif
|
204
Microsoft C v6ax/INCLUDE/STDLIB.H
Normal file
204
Microsoft C v6ax/INCLUDE/STDLIB.H
Normal file
@ -0,0 +1,204 @@
|
|||||||
|
/***
|
||||||
|
*stdlib.h - declarations/definitions for commonly used library functions
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This include file contains the function declarations for
|
||||||
|
* commonly used library functions which either don't fit somewhere
|
||||||
|
* else, or, like toupper/tolower, can't be declared in the normal
|
||||||
|
* place for other reasons.
|
||||||
|
* [ANSI]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _DLL
|
||||||
|
#define _LOADDS_ _loadds
|
||||||
|
#else
|
||||||
|
#define _LOADDS_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _SIZE_T_DEFINED
|
||||||
|
typedef unsigned int size_t;
|
||||||
|
#define _SIZE_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* define NULL pointer value */
|
||||||
|
|
||||||
|
#ifndef NULL
|
||||||
|
#if (_MSC_VER >= 600)
|
||||||
|
#define NULL ((void *)0)
|
||||||
|
#elif (defined(M_I86SM) || defined(M_I86MM))
|
||||||
|
#define NULL 0
|
||||||
|
#else
|
||||||
|
#define NULL 0L
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* definition of the return type for the onexit() function */
|
||||||
|
|
||||||
|
#define EXIT_SUCCESS 0
|
||||||
|
#define EXIT_FAILURE 1
|
||||||
|
|
||||||
|
#ifndef _ONEXIT_T_DEFINED
|
||||||
|
typedef int (_FAR_ _cdecl _LOADDS_ * _cdecl onexit_t)();
|
||||||
|
#define _ONEXIT_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* data structure definitions for div and ldiv runtimes. */
|
||||||
|
|
||||||
|
#ifndef _DIV_T_DEFINED
|
||||||
|
|
||||||
|
typedef struct _div_t {
|
||||||
|
int quot;
|
||||||
|
int rem;
|
||||||
|
} div_t;
|
||||||
|
|
||||||
|
typedef struct _ldiv_t {
|
||||||
|
long quot;
|
||||||
|
long rem;
|
||||||
|
} ldiv_t;
|
||||||
|
|
||||||
|
#define _DIV_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* maximum value that can be returned by the rand function. */
|
||||||
|
|
||||||
|
#define RAND_MAX 0x7fff
|
||||||
|
|
||||||
|
|
||||||
|
/* min and max macros */
|
||||||
|
|
||||||
|
#define max(a,b) (((a) > (b)) ? (a) : (b))
|
||||||
|
#define min(a,b) (((a) < (b)) ? (a) : (b))
|
||||||
|
|
||||||
|
|
||||||
|
/* sizes for buffers used by the _makepath() and _splitpath() functions.
|
||||||
|
* note that the sizes include space for 0-terminator
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define _MAX_PATH 260 /* max. length of full pathname */
|
||||||
|
#define _MAX_DRIVE 3 /* max. length of drive component */
|
||||||
|
#define _MAX_DIR 256 /* max. length of path component */
|
||||||
|
#define _MAX_FNAME 256 /* max. length of file name component */
|
||||||
|
#define _MAX_EXT 256 /* max. length of extension component */
|
||||||
|
|
||||||
|
/* external variable declarations */
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
extern int _far * _cdecl _far volatile _errno(void);
|
||||||
|
extern unsigned _far * _cdecl _far __doserrno(void);
|
||||||
|
#define errno (*_errno())
|
||||||
|
#define _doserrno (*__doserrno())
|
||||||
|
#else
|
||||||
|
extern int _near _cdecl volatile errno; /* XENIX style error number */
|
||||||
|
extern int _near _cdecl _doserrno; /* MS-DOS system error value */
|
||||||
|
#endif
|
||||||
|
extern char * _near _cdecl sys_errlist[]; /* perror error message table */
|
||||||
|
extern int _near _cdecl sys_nerr; /* # of entries in sys_errlist table */
|
||||||
|
|
||||||
|
#ifdef _DLL
|
||||||
|
extern char ** _FAR_ _cdecl environ; /* pointer to environment table */
|
||||||
|
extern int _FAR_ _cdecl _fmode; /* default file translation mode */
|
||||||
|
extern int _FAR_ _cdecl _fileinfo; /* open file info mode (for spawn) */
|
||||||
|
#else
|
||||||
|
extern char ** _near _cdecl environ; /* pointer to environment table */
|
||||||
|
extern int _near _cdecl _fmode; /* default file translation mode */
|
||||||
|
extern int _near _cdecl _fileinfo; /* open file info mode (for spawn) */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
extern unsigned int _near _cdecl _psp; /* Program Segment Prefix */
|
||||||
|
|
||||||
|
/* OS major/minor version numbers */
|
||||||
|
|
||||||
|
extern unsigned char _near _cdecl _osmajor;
|
||||||
|
extern unsigned char _near _cdecl _osminor;
|
||||||
|
|
||||||
|
#define DOS_MODE 0 /* Real Address Mode */
|
||||||
|
#define OS2_MODE 1 /* Protected Address Mode */
|
||||||
|
|
||||||
|
extern unsigned char _near _cdecl _osmode;
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
double _FAR_ _pascal atof(const char _FAR_ *);
|
||||||
|
double _FAR_ _pascal strtod(const char _FAR_ *, char _FAR_ * _FAR_ *);
|
||||||
|
ldiv_t _FAR_ _pascal ldiv(long, long);
|
||||||
|
#else /* not _MT */
|
||||||
|
double _FAR_ _cdecl atof(const char _FAR_ *);
|
||||||
|
double _FAR_ _cdecl strtod(const char _FAR_ *, char _FAR_ * _FAR_ *);
|
||||||
|
ldiv_t _FAR_ _cdecl ldiv(long, long);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
void _FAR_ _cdecl abort(void);
|
||||||
|
int _FAR_ _cdecl abs(int);
|
||||||
|
int _FAR_ _cdecl atexit(void (_cdecl _FAR_ _LOADDS_ *)(void));
|
||||||
|
int _FAR_ _cdecl atoi(const char _FAR_ *);
|
||||||
|
long _FAR_ _cdecl atol(const char _FAR_ *);
|
||||||
|
long double _FAR_ _cdecl _atold(const char _FAR_ *);
|
||||||
|
void _FAR_ * _FAR_ _cdecl bsearch(const void _FAR_ *, const void _FAR_ *,
|
||||||
|
size_t, size_t, int (_FAR_ _cdecl *)(const void _FAR_ *,
|
||||||
|
const void _FAR_ *));
|
||||||
|
void _FAR_ * _FAR_ _cdecl calloc(size_t, size_t);
|
||||||
|
div_t _FAR_ _cdecl div(int, int);
|
||||||
|
char _FAR_ * _FAR_ _cdecl ecvt(double, int, int _FAR_ *, int _FAR_ *);
|
||||||
|
void _FAR_ _cdecl exit(int);
|
||||||
|
void _FAR_ _cdecl _exit(int);
|
||||||
|
char _FAR_ * _FAR_ _cdecl fcvt(double, int, int _FAR_ *, int _FAR_ *);
|
||||||
|
void _FAR_ _cdecl free(void _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl _fullpath(char _FAR_ *, const char _FAR_ *,
|
||||||
|
size_t);
|
||||||
|
char _FAR_ * _FAR_ _cdecl gcvt(double, int, char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl getenv(const char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl itoa(int, char _FAR_ *, int);
|
||||||
|
long _FAR_ _cdecl labs(long);
|
||||||
|
unsigned long _FAR_ _cdecl _lrotl(unsigned long, int);
|
||||||
|
unsigned long _FAR_ _cdecl _lrotr(unsigned long, int);
|
||||||
|
char _FAR_ * _FAR_ _cdecl ltoa(long, char _FAR_ *, int);
|
||||||
|
void _FAR_ _cdecl _makepath(char _FAR_ *, const char _FAR_ *,
|
||||||
|
const char _FAR_ *, const char _FAR_ *, const char _FAR_ *);
|
||||||
|
void _FAR_ * _FAR_ _cdecl malloc(size_t);
|
||||||
|
onexit_t _FAR_ _cdecl onexit(onexit_t);
|
||||||
|
void _FAR_ _cdecl perror(const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl putenv(const char _FAR_ *);
|
||||||
|
void _FAR_ _cdecl qsort(void _FAR_ *, size_t, size_t, int (_FAR_ _cdecl *)
|
||||||
|
(const void _FAR_ *, const void _FAR_ *));
|
||||||
|
unsigned int _FAR_ _cdecl _rotl(unsigned int, int);
|
||||||
|
unsigned int _FAR_ _cdecl _rotr(unsigned int, int);
|
||||||
|
int _FAR_ _cdecl rand(void);
|
||||||
|
void _FAR_ * _FAR_ _cdecl realloc(void _FAR_ *, size_t);
|
||||||
|
void _FAR_ _cdecl _searchenv(const char _FAR_ *, const char _FAR_ *,
|
||||||
|
char _FAR_ *);
|
||||||
|
void _FAR_ _cdecl _splitpath(const char _FAR_ *, char _FAR_ *,
|
||||||
|
char _FAR_ *, char _FAR_ *, char _FAR_ *);
|
||||||
|
void _FAR_ _cdecl srand(unsigned int);
|
||||||
|
long _FAR_ _cdecl strtol(const char _FAR_ *, char _FAR_ * _FAR_ *,
|
||||||
|
int);
|
||||||
|
long double _FAR_ _cdecl _strtold(const char _FAR_ *,
|
||||||
|
char _FAR_ * _FAR_ *);
|
||||||
|
unsigned long _FAR_ _cdecl strtoul(const char _FAR_ *,
|
||||||
|
char _FAR_ * _FAR_ *, int);
|
||||||
|
void _FAR_ _cdecl swab(char _FAR_ *, char _FAR_ *, int);
|
||||||
|
int _FAR_ _cdecl system(const char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl ultoa(unsigned long, char _FAR_ *, int);
|
||||||
|
|
||||||
|
#ifndef tolower /* tolower has been undefined - use function */
|
||||||
|
int _FAR_ _cdecl tolower(int);
|
||||||
|
#endif /* tolower */
|
||||||
|
|
||||||
|
#ifndef toupper /* toupper has been undefined - use function */
|
||||||
|
int _FAR_ _cdecl toupper(int);
|
||||||
|
#endif /* toupper */
|
121
Microsoft C v6ax/INCLUDE/STRING.H
Normal file
121
Microsoft C v6ax/INCLUDE/STRING.H
Normal file
@ -0,0 +1,121 @@
|
|||||||
|
/***
|
||||||
|
*string.h - declarations for string manipulation functions
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file contains the function declarations for the string
|
||||||
|
* manipulation functions.
|
||||||
|
* [ANSI/System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _SIZE_T_DEFINED
|
||||||
|
typedef unsigned int size_t;
|
||||||
|
#define _SIZE_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
void _FAR_ * _FAR_ _cdecl memccpy(void _FAR_ *, const void _FAR_ *,
|
||||||
|
int, unsigned int);
|
||||||
|
void _FAR_ * _FAR_ _cdecl memchr(const void _FAR_ *, int, size_t);
|
||||||
|
int _FAR_ _cdecl memcmp(const void _FAR_ *, const void _FAR_ *,
|
||||||
|
size_t);
|
||||||
|
int _FAR_ _cdecl memicmp(const void _FAR_ *, const void _FAR_ *,
|
||||||
|
unsigned int);
|
||||||
|
void _FAR_ * _FAR_ _cdecl memcpy(void _FAR_ *, const void _FAR_ *,
|
||||||
|
size_t);
|
||||||
|
void _FAR_ * _FAR_ _cdecl memmove(void _FAR_ *, const void _FAR_ *,
|
||||||
|
size_t);
|
||||||
|
void _FAR_ * _FAR_ _cdecl memset(void _FAR_ *, int, size_t);
|
||||||
|
void _FAR_ _cdecl movedata(unsigned int, unsigned int, unsigned int,
|
||||||
|
unsigned int, unsigned int);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strcat(char _FAR_ *, const char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strchr(const char _FAR_ *, int);
|
||||||
|
int _FAR_ _cdecl strcmp(const char _FAR_ *, const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl strcmpi(const char _FAR_ *, const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl strcoll(const char _FAR_ *, const char _FAR_ *);
|
||||||
|
int _FAR_ _cdecl stricmp(const char _FAR_ *, const char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strcpy(char _FAR_ *, const char _FAR_ *);
|
||||||
|
size_t _FAR_ _cdecl strcspn(const char _FAR_ *, const char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strdup(const char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl _strerror(const char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strerror(int);
|
||||||
|
size_t _FAR_ _cdecl strlen(const char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strlwr(char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strncat(char _FAR_ *, const char _FAR_ *,
|
||||||
|
size_t);
|
||||||
|
int _FAR_ _cdecl strncmp(const char _FAR_ *, const char _FAR_ *,
|
||||||
|
size_t);
|
||||||
|
int _FAR_ _cdecl strnicmp(const char _FAR_ *, const char _FAR_ *,
|
||||||
|
size_t);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strncpy(char _FAR_ *, const char _FAR_ *,
|
||||||
|
size_t);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strnset(char _FAR_ *, int, size_t);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strpbrk(const char _FAR_ *,
|
||||||
|
const char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strrchr(const char _FAR_ *, int);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strrev(char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strset(char _FAR_ *, int);
|
||||||
|
size_t _FAR_ _cdecl strspn(const char _FAR_ *, const char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strstr(const char _FAR_ *,
|
||||||
|
const char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strtok(char _FAR_ *, const char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl strupr(char _FAR_ *);
|
||||||
|
size_t _FAR_ _cdecl strxfrm (char _FAR_ *, const char _FAR_ *,
|
||||||
|
size_t);
|
||||||
|
|
||||||
|
/* model independent function prototypes */
|
||||||
|
|
||||||
|
void _far * _far _cdecl _fmemccpy(void _far *, const void _far *,
|
||||||
|
int, unsigned int);
|
||||||
|
void _far * _far _cdecl _fmemchr(const void _far *, int, size_t);
|
||||||
|
int _far _cdecl _fmemcmp(const void _far *, const void _far *,
|
||||||
|
size_t);
|
||||||
|
void _far * _far _cdecl _fmemcpy(void _far *, const void _far *,
|
||||||
|
size_t);
|
||||||
|
int _far _cdecl _fmemicmp(const void _far *, const void _far *,
|
||||||
|
unsigned int);
|
||||||
|
void _far * _far _cdecl _fmemmove(void _far *, const void _far *,
|
||||||
|
size_t);
|
||||||
|
void _far * _far _cdecl _fmemset(void _far *, int, size_t);
|
||||||
|
char _far * _far _cdecl _fstrcat(char _far *, const char _far *);
|
||||||
|
char _far * _far _cdecl _fstrchr(const char _far *, int);
|
||||||
|
int _far _cdecl _fstrcmp(const char _far *, const char _far *);
|
||||||
|
int _far _cdecl _fstricmp(const char _far *, const char _far *);
|
||||||
|
char _far * _far _cdecl _fstrcpy(char _far *, const char _far *);
|
||||||
|
size_t _far _cdecl _fstrcspn(const char _far *, const char _far *);
|
||||||
|
char _far * _far _cdecl _fstrdup(const char _far *);
|
||||||
|
char _near * _far _cdecl _nstrdup(const char _far *);
|
||||||
|
size_t _far _cdecl _fstrlen(const char _far *);
|
||||||
|
char _far * _far _cdecl _fstrlwr(char _far *);
|
||||||
|
char _far * _far _cdecl _fstrncat(char _far *, const char _far *,
|
||||||
|
size_t);
|
||||||
|
int _far _cdecl _fstrncmp(const char _far *, const char _far *,
|
||||||
|
size_t);
|
||||||
|
int _far _cdecl _fstrnicmp(const char _far *, const char _far *,
|
||||||
|
size_t);
|
||||||
|
char _far * _far _cdecl _fstrncpy(char _far *, const char _far *,
|
||||||
|
size_t);
|
||||||
|
char _far * _far _cdecl _fstrnset(char _far *, int, size_t);
|
||||||
|
char _far * _far _cdecl _fstrpbrk(const char _far *,
|
||||||
|
const char _far *);
|
||||||
|
char _far * _far _cdecl _fstrrchr(const char _far *, int);
|
||||||
|
char _far * _far _cdecl _fstrrev(char _far *);
|
||||||
|
char _far * _far _cdecl _fstrset(char _far *, int);
|
||||||
|
size_t _far _cdecl _fstrspn(const char _far *, const char _far *);
|
||||||
|
char _far * _far _cdecl _fstrstr(const char _far *,
|
||||||
|
const char _far *);
|
||||||
|
char _far * _far _cdecl _fstrtok(char _far *, const char _far *);
|
||||||
|
char _far * _far _cdecl _fstrupr(char _far *);
|
16
Microsoft C v6ax/INCLUDE/SYS/LOCKING.H
Normal file
16
Microsoft C v6ax/INCLUDE/SYS/LOCKING.H
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
/***
|
||||||
|
*sys\locking.h - flags for locking() function
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file defines the flags for the locking() function.
|
||||||
|
* [System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#define LK_UNLCK 0 /* unlock the file region */
|
||||||
|
#define LK_LOCK 1 /* lock the file region */
|
||||||
|
#define LK_NBLCK 2 /* non-blocking lock */
|
||||||
|
#define LK_RLCK 3 /* lock for writing */
|
||||||
|
#define LK_NBRLCK 4 /* non-blocking lock for writing */
|
59
Microsoft C v6ax/INCLUDE/SYS/STAT.H
Normal file
59
Microsoft C v6ax/INCLUDE/SYS/STAT.H
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
/***
|
||||||
|
*sys\stat.h - defines structure used by stat() and fstat()
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file defines the structure used by the stat() and fstat()
|
||||||
|
* routines.
|
||||||
|
* [System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _TIME_T_DEFINED
|
||||||
|
typedef long time_t;
|
||||||
|
#define _TIME_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* define structure for returning status information */
|
||||||
|
|
||||||
|
#ifndef _STAT_DEFINED
|
||||||
|
struct stat {
|
||||||
|
dev_t st_dev;
|
||||||
|
ino_t st_ino;
|
||||||
|
unsigned short st_mode;
|
||||||
|
short st_nlink;
|
||||||
|
short st_uid;
|
||||||
|
short st_gid;
|
||||||
|
dev_t st_rdev;
|
||||||
|
off_t st_size;
|
||||||
|
time_t st_atime;
|
||||||
|
time_t st_mtime;
|
||||||
|
time_t st_ctime;
|
||||||
|
};
|
||||||
|
#define _STAT_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define S_IFMT 0170000 /* file type mask */
|
||||||
|
#define S_IFDIR 0040000 /* directory */
|
||||||
|
#define S_IFCHR 0020000 /* character special */
|
||||||
|
#define S_IFREG 0100000 /* regular */
|
||||||
|
#define S_IREAD 0000400 /* read permission, owner */
|
||||||
|
#define S_IWRITE 0000200 /* write permission, owner */
|
||||||
|
#define S_IEXEC 0000100 /* execute/search permission, owner */
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
int _FAR_ _cdecl fstat(int, struct stat _FAR_ *);
|
||||||
|
int _FAR_ _cdecl stat(char _FAR_ *, struct stat _FAR_ *);
|
42
Microsoft C v6ax/INCLUDE/SYS/TIMEB.H
Normal file
42
Microsoft C v6ax/INCLUDE/SYS/TIMEB.H
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
/***
|
||||||
|
*sys\timeb.h - definition/declarations for ftime()
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file define the ftime() function and the types it uses.
|
||||||
|
* [System V]
|
||||||
|
*
|
||||||
|
*******************************************************************************/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _TIME_T_DEFINED
|
||||||
|
typedef long time_t;
|
||||||
|
#define _TIME_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* structure returned by ftime system call */
|
||||||
|
|
||||||
|
#ifndef _TIMEB_DEFINED
|
||||||
|
struct timeb {
|
||||||
|
time_t time;
|
||||||
|
unsigned short millitm;
|
||||||
|
short timezone;
|
||||||
|
short dstflag;
|
||||||
|
};
|
||||||
|
#define _TIMEB_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
void _FAR_ _cdecl ftime(struct timeb _FAR_ *);
|
31
Microsoft C v6ax/INCLUDE/SYS/TYPES.H
Normal file
31
Microsoft C v6ax/INCLUDE/SYS/TYPES.H
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
/***
|
||||||
|
*sys\types.h - types returned by system level calls for file and time info
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file defines types used in defining values returned by system
|
||||||
|
* level calls for file status and time information.
|
||||||
|
* [System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#ifndef _INO_T_DEFINED
|
||||||
|
typedef unsigned short ino_t; /* i-node number (not used on DOS) */
|
||||||
|
#define _INO_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _TIME_T_DEFINED
|
||||||
|
typedef long time_t;
|
||||||
|
#define _TIME_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _DEV_T_DEFINED
|
||||||
|
typedef short dev_t; /* device code */
|
||||||
|
#define _DEV_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _OFF_T_DEFINED
|
||||||
|
typedef long off_t; /* file offset value */
|
||||||
|
#define _OFF_T_DEFINED
|
||||||
|
#endif
|
43
Microsoft C v6ax/INCLUDE/SYS/UTIME.H
Normal file
43
Microsoft C v6ax/INCLUDE/SYS/UTIME.H
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
/***
|
||||||
|
*sys\utime.h - definitions/declarations for utime()
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file defines the structure used by the utime routine to set
|
||||||
|
* new file access and modification times. NOTE - MS-DOS
|
||||||
|
* does not recognize access time, so this field will
|
||||||
|
* always be ignored and the modification time field will be
|
||||||
|
* used to set the new time.
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _TIME_T_DEFINED
|
||||||
|
typedef long time_t;
|
||||||
|
#define _TIME_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* define struct used by utime() function */
|
||||||
|
|
||||||
|
#ifndef _UTIMBUF_DEFINED
|
||||||
|
struct utimbuf {
|
||||||
|
time_t actime; /* access time */
|
||||||
|
time_t modtime; /* modification time */
|
||||||
|
};
|
||||||
|
#define _UTIMBUF_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
int _FAR_ _cdecl utime(char _FAR_ *, struct utimbuf _FAR_ *);
|
114
Microsoft C v6ax/INCLUDE/TIME.H
Normal file
114
Microsoft C v6ax/INCLUDE/TIME.H
Normal file
@ -0,0 +1,114 @@
|
|||||||
|
/***
|
||||||
|
*time.h - definitions/declarations for time routines
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file contains the various declarations and definitions
|
||||||
|
* for the time routines.
|
||||||
|
* [ANSI/System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* implementation defined time types */
|
||||||
|
|
||||||
|
#ifndef _TIME_T_DEFINED
|
||||||
|
typedef long time_t;
|
||||||
|
#define _TIME_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _CLOCK_T_DEFINED
|
||||||
|
typedef long clock_t;
|
||||||
|
#define _CLOCK_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _SIZE_T_DEFINED
|
||||||
|
typedef unsigned int size_t;
|
||||||
|
#define _SIZE_T_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* structure for use with localtime(), gmtime(), etc. */
|
||||||
|
|
||||||
|
#ifndef _TM_DEFINED
|
||||||
|
struct tm {
|
||||||
|
int tm_sec; /* seconds after the minute - [0,59] */
|
||||||
|
int tm_min; /* minutes after the hour - [0,59] */
|
||||||
|
int tm_hour; /* hours since midnight - [0,23] */
|
||||||
|
int tm_mday; /* day of the month - [1,31] */
|
||||||
|
int tm_mon; /* months since January - [0,11] */
|
||||||
|
int tm_year; /* years since 1900 */
|
||||||
|
int tm_wday; /* days since Sunday - [0,6] */
|
||||||
|
int tm_yday; /* days since January 1 - [0,365] */
|
||||||
|
int tm_isdst; /* daylight savings time flag */
|
||||||
|
};
|
||||||
|
#define _TM_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* define NULL pointer value */
|
||||||
|
|
||||||
|
#ifndef NULL
|
||||||
|
#if (_MSC_VER >= 600)
|
||||||
|
#define NULL ((void *)0)
|
||||||
|
#elif (defined(M_I86SM) || defined(M_I86MM))
|
||||||
|
#define NULL 0
|
||||||
|
#else
|
||||||
|
#define NULL 0L
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* clock ticks macro - ANSI version */
|
||||||
|
|
||||||
|
#define CLOCKS_PER_SEC 1000
|
||||||
|
|
||||||
|
/* clock ticks macro - archaic version */
|
||||||
|
|
||||||
|
#define CLK_TCK 1000
|
||||||
|
|
||||||
|
|
||||||
|
/* extern declarations for the global variables used by the ctime family of
|
||||||
|
* routines.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef _DLL
|
||||||
|
extern int _FAR_ _cdecl daylight; /* non-zero if daylight savings time is used */
|
||||||
|
extern long _FAR_ _cdecl timezone; /* difference in seconds between GMT and local time */
|
||||||
|
extern char _FAR_ * _FAR_ _cdecl tzname[2]; /* standard/daylight savings time zone names */
|
||||||
|
#else
|
||||||
|
extern int _near _cdecl daylight; /* non-zero if daylight savings time is used */
|
||||||
|
extern long _near _cdecl timezone; /* difference in seconds between GMT and local time */
|
||||||
|
extern char * _near _cdecl tzname[2]; /* standard/daylight savings time zone names */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* function prototypes */
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
double _FAR_ _pascal difftime(time_t, time_t);
|
||||||
|
#else
|
||||||
|
double _FAR_ _cdecl difftime(time_t, time_t);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
char _FAR_ * _FAR_ _cdecl asctime(const struct tm _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl ctime(const time_t _FAR_ *);
|
||||||
|
clock_t _FAR_ _cdecl clock(void);
|
||||||
|
struct tm _FAR_ * _FAR_ _cdecl gmtime(const time_t _FAR_ *);
|
||||||
|
struct tm _FAR_ * _FAR_ _cdecl localtime(const time_t _FAR_ *);
|
||||||
|
time_t _FAR_ _cdecl mktime(struct tm _FAR_ *);
|
||||||
|
size_t _FAR_ _cdecl strftime(char _FAR_ *, size_t, const char _FAR_ *,
|
||||||
|
const struct tm _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl _strdate(char _FAR_ *);
|
||||||
|
char _FAR_ * _FAR_ _cdecl _strtime(char _FAR_ *);
|
||||||
|
time_t _FAR_ _cdecl time(time_t _FAR_ *);
|
||||||
|
void _FAR_ _cdecl tzset(void);
|
43
Microsoft C v6ax/INCLUDE/VARARGS.H
Normal file
43
Microsoft C v6ax/INCLUDE/VARARGS.H
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
/***
|
||||||
|
*varargs.h - XENIX style macros for variable argument functions
|
||||||
|
*
|
||||||
|
* Copyright (c) 1985-1990, Microsoft Corporation. All rights reserved.
|
||||||
|
*
|
||||||
|
*Purpose:
|
||||||
|
* This file defines XENIX style macros for accessing arguments of a
|
||||||
|
* function which takes a variable number of arguments.
|
||||||
|
* [System V]
|
||||||
|
*
|
||||||
|
****/
|
||||||
|
|
||||||
|
#if defined(_DLL) && !defined(_MT)
|
||||||
|
#error Cannot define _DLL without _MT
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef _MT
|
||||||
|
#define _FAR_ _far
|
||||||
|
#else
|
||||||
|
#define _FAR_
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* define NULL pointer value */
|
||||||
|
|
||||||
|
#ifndef NULL
|
||||||
|
#if (_MSC_VER >= 600)
|
||||||
|
#define NULL ((void *)0)
|
||||||
|
#elif (defined(M_I86SM) || defined(M_I86MM))
|
||||||
|
#define NULL 0
|
||||||
|
#else
|
||||||
|
#define NULL 0L
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _VA_LIST_DEFINED
|
||||||
|
typedef char _FAR_ *va_list;
|
||||||
|
#define _VA_LIST_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define va_dcl va_list va_alist;
|
||||||
|
#define va_start(ap) ap = (va_list)&va_alist
|
||||||
|
#define va_arg(ap,t) ((t _FAR_ *)(ap += sizeof(t)))[-1]
|
||||||
|
#define va_end(ap) ap = NULL
|
BIN
Microsoft C v6ax/LIB/API.LIB
Normal file
BIN
Microsoft C v6ax/LIB/API.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/BINMODE.OBJ
Normal file
BIN
Microsoft C v6ax/LIB/BINMODE.OBJ
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/CLIBC7.LIB
Normal file
BIN
Microsoft C v6ax/LIB/CLIBC7.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/CLIBCA.LIB
Normal file
BIN
Microsoft C v6ax/LIB/CLIBCA.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/CLIBCE.LIB
Normal file
BIN
Microsoft C v6ax/LIB/CLIBCE.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/CRTCOM.LIB
Normal file
BIN
Microsoft C v6ax/LIB/CRTCOM.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/FILEINFO.OBJ
Normal file
BIN
Microsoft C v6ax/LIB/FILEINFO.OBJ
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/GRAPHICS.LIB
Normal file
BIN
Microsoft C v6ax/LIB/GRAPHICS.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/LLIBC7.LIB
Normal file
BIN
Microsoft C v6ax/LIB/LLIBC7.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/LLIBCA.LIB
Normal file
BIN
Microsoft C v6ax/LIB/LLIBCA.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/LLIBCE.LIB
Normal file
BIN
Microsoft C v6ax/LIB/LLIBCE.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/MLIBC7.LIB
Normal file
BIN
Microsoft C v6ax/LIB/MLIBC7.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/MLIBCA.LIB
Normal file
BIN
Microsoft C v6ax/LIB/MLIBCA.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/MLIBCE.LIB
Normal file
BIN
Microsoft C v6ax/LIB/MLIBCE.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/PGCHART.LIB
Normal file
BIN
Microsoft C v6ax/LIB/PGCHART.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/RMFIXUP.OBJ
Normal file
BIN
Microsoft C v6ax/LIB/RMFIXUP.OBJ
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/SETARGV.OBJ
Normal file
BIN
Microsoft C v6ax/LIB/SETARGV.OBJ
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/SLIBC7.LIB
Normal file
BIN
Microsoft C v6ax/LIB/SLIBC7.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/SLIBCA.LIB
Normal file
BIN
Microsoft C v6ax/LIB/SLIBCA.LIB
Normal file
Binary file not shown.
BIN
Microsoft C v6ax/LIB/SLIBCE.LIB
Normal file
BIN
Microsoft C v6ax/LIB/SLIBCE.LIB
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user