summaryrefslogtreecommitdiff
path: root/v4.0/src/H
diff options
context:
space:
mode:
authorGravatar Mark Zbikowski2024-04-25 21:24:10 +0100
committerGravatar Microsoft Open Source2024-04-25 22:32:27 +0000
commit2d04cacc5322951f187bb17e017c12920ac8ebe2 (patch)
tree80ee017efa878dfd5344b44249e6a241f2a7f6e2 /v4.0/src/H
parentMerge pull request #430 from jpbaltazar/typoptbr (diff)
downloadms-dos-main.tar.gz
ms-dos-main.tar.xz
ms-dos-main.zip
MZ is back!HEADmain
Diffstat (limited to 'v4.0/src/H')
-rw-r--r--v4.0/src/H/BASEMID.H246
-rw-r--r--v4.0/src/H/CDS.H25
-rw-r--r--v4.0/src/H/COMSUB.H166
-rw-r--r--v4.0/src/H/COPYRIGH.H3
-rw-r--r--v4.0/src/H/DOSCALLS.H552
-rw-r--r--v4.0/src/H/DPB.H30
-rw-r--r--v4.0/src/H/ERROR.H294
-rw-r--r--v4.0/src/H/INTERNAT.H30
-rw-r--r--v4.0/src/H/JOINTYPE.H87
-rw-r--r--v4.0/src/H/MAKEFILE0
-rw-r--r--v4.0/src/H/MSGRET.H66
-rw-r--r--v4.0/src/H/SUBCALLS.H462
-rw-r--r--v4.0/src/H/SYSVAR.H30
-rw-r--r--v4.0/src/H/TYPES.H87
-rw-r--r--v4.0/src/H/UTILMID.H506
-rw-r--r--v4.0/src/H/UTILMID2.H208
-rw-r--r--v4.0/src/H/UTILMID3.H100
-rw-r--r--v4.0/src/H/UTLERROR.H92
-rw-r--r--v4.0/src/H/VERSION.H6
-rw-r--r--v4.0/src/H/VERSIONC.H15
20 files changed, 3005 insertions, 0 deletions
diff --git a/v4.0/src/H/BASEMID.H b/v4.0/src/H/BASEMID.H
new file mode 100644
index 0000000..4f0c989
--- /dev/null
+++ b/v4.0/src/H/BASEMID.H
@@ -0,0 +1,246 @@
1/* SCCSID = @(#)basemid.h 8.26 87/05/21 */
2
3#define MSG_RESPONSE_DATA 0 /* data for valid responses (Y N A R I) */
4#define MSG_INVALID_FUNCTION 1 /* Invalid function */
5#define MSG_FILE_NOT_FOUND 2 /* File not found */
6#define MSG_PATH_NOT_FOUND 3 /* Path not found */
7#define MSG_OUT_OF_HANDLES 4 /* Too many open files, no handles left */
8#define MSG_ACCESS_DENIED 5 /* Access denied */
9#define MSG_INVALID_HANDLE 6 /* Invalid handle */
10#define MSG_MEMORY_BLOCKS_BAD 7 /* Memory control blocks destroyed */
11#define MSG_NO_MEMORY 8 /* Insufficient memory */
12#define MSG_INVALID_MEM_ADDR 9 /* Invalid memory block address */
13#define MSG_INVALID_ENVIRON 10 /* Invalid environment */
14#define MSG_INVALID_FORMAT 11 /* Invalid format */
15#define MSG_INVALID_ACC_CODE 12 /* Invalid access code */
16#define MSG_INVALID_DATA 13 /* Invalid data */
17#define MSG_14 14 /* Reserved */
18#define MSG_INVALID_DRIVE 15 /* Invalid drive */
19#define MSG_ATT_RD_CURDIR 16 /* Attempt to remove current directory */
20#define MSG_NOT_SAME_DEVICE 17 /* Not same device */
21#define MSG_NO_MORE_FILES 18 /* No more files */
22#define MSG_ATT_WRITE_PROT 19 /* Attempted write on protected disk */
23#define MSG_UNKNOWN_UNIT 20 /* Unknown unit */
24#define MSG_DRIVE_NOT_READY 21 /* Drive not ready */
25#define MSG_UNKNOWN_COMMAND 22 /* Unknown command */
26#define MSG_DATA_ERROR 23 /* Data error (CRC) */
27#define MSG_BAD_REQ_STRUCTURE 24 /* Bad request structure length */
28#define MSG_SEEK_ERROR 25 /* Seek error */
29#define MSG_UNKNOWN_MEDIA 26 /* Unknown media type */
30#define MSG_SECTOR_NOT_FOUND 27 /* Sector not found */
31#define MSG_OUT_OF_PAPER 28 /* Printer out of paper */
32#define MSG_WRITE_FAULT 29 /* Write fault */
33#define MSG_READ_FAULT 30 /* Read fault */
34#define MSG_GENERAL_FAILURE 31 /* General failure */
35#define MSG_SHARING_VIOLATION 32 /* Sharing violation */
36#define MSG_SHAR_VIOLAT_FIND 32 /* sharing violation find */
37#define MSG_LOCK_VIOLATION 33 /* Lock violation */
38#define MSG_INVALID_DISK_CHANGE 34 /* Invalid disk change */
39#define MSG_35 35 /* FCB unavailable */
40#define MSG_SHARING_BUFF_OFLOW 36 /* Sharing buffer overflow */
41/* msg 37 - 49 reserved */
42#define MSG_NET_REQ_NOT_SUPPORT 50 /* net request not supported */
43#define MSG_NET_REMOTE_NOT_ONLINE 51 /* remote computer not online */
44#define MSG_NET_DUP_FILENAME 52 /* duplicate filename on network */
45#define MSG_NET_PATH_NOT_FOUND 53 /* network path not found */
46#define MSG_NET_BUSY 54 /* network is busy */
47#define MSG_NET_DEV_NOT_INSTALLED 55 /* device no longer installed */
48#define MSG_NET_BIOS_LIMIT_REACHED 56 /* BIOS command limit exceeded */
49#define MSG_NET_ADAPT_HRDW_ERROR 57 /* adapter hardware error */
50#define MSG_NET_INCORRECT_RESPONSE 58 /* network response incorrect */
51#define MSG_NET_UNEXPECT_ERROR 59 /* unexpected network error */
52#define MSG_NET_REMOT_ADPT_INCOMP 60 /* remote adapter is incompatible */
53#define MSG_NET_PRINT_Q_FULL 61 /* print queue is full */
54#define MSG_NET_NO_SPACE_TO_PRINT_FL 62 /* not enough space to print file */
55#define MSG_NET_PRINT_FILE_DELETED 63 /* print file was deleted */
56#define MSG_NET_NAME_DELETED 64 /* network name was deleted */
57#define MSG_NET_ACCESS_DENIED 65 /* network access denied */
58#define MSG_NET_DEV_TYPE_INVALID 66 /* network device type invalid */
59#define MSG_NET_NAME_NOT_FOUND 67 /* network name cannot be found */
60#define MSG_NET_NAME_LIMIT_EXCEED 68 /* net name limit was exceeded */
61#define MSG_NET_BIOS_LIMIT_EXCEED 69 /* BIOS session limit exceeded */
62#define MSG_NET_TEMP_PAUSED 70 /* net is temporarily paused */
63#define MSG_NET_REQUEST_DENIED 71 /* net request was denied */
64#define MSG_NET_PRT_DSK_REDIR_PAUSE 72 /* print or disk redirection paused */
65/* msg 73 - 79 reserved */
66#define MSG_FILE_EXISTS 80
67/* msg 81 reserved */
68#define MSG_CANNOT_MAKE 82
69#define MSG_NET_FAIL_INT_TWO_FOUR 83 /* fail on int 24 */
70#define MSG_NET_TOO_MANY_REDIRECT 84 /* too many net redirections */
71#define MSG_NET_DUP_REDIRECTION 85 /* duplicate redirection */
72#define MSG_NET_INVALID_PASSWORD 86 /* invalid password */
73#define MSG_NET_INCORR_PARAMETER 87 /* incorrect net parameter */
74#define MSG_NET_DATA_FAULT 88 /* net data fault */
75#define MSG_NO_PROC_SLOTS 89 /* no process slots */
76#define MSG_DISK_CHANGE 107
77#define MSG_DRIVE_LOCKED 108
78#define MSG_ERROR_OPEN_FAILED 110 /* error open failed */
79#define MSG_DISK_FULL 112
80#define MSG_NO_SEARCH_HANDLES 113
81#define MSG_ERR_INV_TAR_HANDLE 114 /* error invalid target handle */
82#define MSG_BAD_DRIVER_LEVEL 119 /* bad driver level */
83#define MSG_INVALID_NAME 123
84#define MSG_NO_VOLUME_LABEL 125
85/* */
86#define MSG_JOIN_ON_DRIV_IS_TAR 133 /* directory on drive is target of a jo */
87#define MSG_JOIN_DRIVE_IS 134 /* drive is joined */
88#define MSG_SUB_DRIVE_IS 135 /* drive is substed */
89#define MSG_DRIVE_IS_NOT_JOINED 136 /* drive is not joined */
90#define MSG_DRIVE_NOT_SUBSTED 137 /* drive is not substituted - subst */
91#define MSG_JOIN_CANNOT_JOIN_DRIVE 138 /* cannot join to a joined drive */
92#define MSG_SUB_CANNOT_SUBST_DRIVE 139 /* cannot sub to sub drive */
93#define MSG_JOIN_CANNOT_SUB_DRIVE 140 /* cannot join to a substed drive */
94#define MSG_SUB_CANNOT_JOIN_DRIVE 141 /* cannot sub to a joined drive */
95#define MSG_DRIVE_IS_BUSY 142 /* drive is busy - join */
96#define MSG_JOIN_SUB_SAME_DRIVE 143 /* cannot join or subst a drive to dir */
97#define MSG_DIRECT_IS_NOT_SUBDIR 144 /* directory is not subdirectory of root */
98#define MSG_DIRECT_IS_NOT_EMPTY 145 /* directory is not empty -join */
99#define MSG_PATH_USED_SUBST_JOIN 146 /* path used in subst, join - join sub */
100/* 147 not used */
101#define MSG_PATH_BUSY 148 /* path is busy - join */
102#define MSG_SUB_ON_DRIVE_IS_JOIN 149 /* directory on drive is target of a st */
103/* */
104#define MSG_VOLUME_TOO_LONG 154
105/* */
106#define MSG_INVALID_ORDINAL 182 /* invalid ordinal */
107#define MSG_INVALID_STARTING_CODESEG 188 /* invalid code seg */
108/* */
109#define MSG_INVALID_STACKSEG 189 /* invalid stack segment */
110#define MSG_INVALID_MODULETYPE 190 /* invalid module type */
111#define MSG_INVALID_EXE_SIGNATURE 191 /* Invalid signature */
112#define MSG_EXE_MARKED_INVALID 192 /* Invalid exec file */
113#define MSG_BAD_EXE_FORMAT 193 /* Bad or old exec file */
114#define MSG_ITERATED_DATA_EXCEEDS_64K 194 /* iterated data exceeds 64k */
115#define MSG_INVALID_MINALLOCSIZE 195 /* data segment has invalid size */
116#define MSG_DYNLINK_FROM_INVALID_RING 196 /* invalid ring */
117#define MSG_IOPL_NOT_ENABLED 197 /* IOPL not enabled */
118#define MSG_INVALID_SEGDPL 198 /* Invalid privilege level */
119#define MSG_AUTODATASEG_EXCEEDS_64K 199 /* Privilege level exceeds 64K */
120/* 200 not used */
121#define MSG_RELOC_CHAIN_XEEDS_SEGMENT 201 /* Ring must be movable */
122#define MSG_INFLOOP_IN_RELOC_CHAIN 202 /* infinite loop */
123#define MSG_ENVVAR_NOT_FOUND 203 /* environment variable not found */
124#define MSG_SIGNAL_NOT_SENT 205 /* DOS signal not sent */
125/* */
126#define MSG_MR_CANT_FORMAT 317
127#define MSG_MR_NOT_FOUND 318
128#define MSG_MR_READ_ERROR 319
129#define MSG_MR_IVCOUNT_ERROR 320 /*IvCount out of range */
130#define MSG_MR_UN_PERFORM 321
131/* */
132#define MSG_DIS_ERROR 355
133#define MSG_NO_COUNTRY_SYS 396
134#define MSG_OPEN_COUNTRY_SYS 397
135#define MSG_COUNTRY_NO_TYPE 401
136/* 900 - 999 reserved for IBM Far East */
137/* 1000 not used */
138#define MSG_BAD_PARM1 1001 /* invalid parm */
139#define MSG_BAD_PARM2 1002 /* invalid parm with specified input */
140#define MSG_BAD_SYNTAX 1003 /* invalid syntax */
141/* 1004 not used */
142#define MSG_SWAP_INVALID_DRIVE 1470 /* Invalid drive %1 specified SWAPPATH */
143#define MSG_SWAP_INVALID_PATH 1471 /* Invalid path %1 specified in SWAPPATH */
144#define MSG_SWAP_CANNOT_CREATE 1472 /* Cannot create swap file %1 */
145#define MSG_SWAP_DISABLED 1473 /* Segment swapping is disabled */
146#define MSG_SWAP_CANT_INIT 1474 /* Cannot initialize swapper */
147#define MSG_SWAP_NOT_READY 1500 /* diskette containing swap file not rdy */
148#define MSG_SWAP_WRITE_PROTECT 1501 /* Diskette containing swap file wrpro */
149#define MSG_SWAP_IN_ERROR 1502 /* I/O error on swap file */
150#define MSG_SWAP_IO_ERROR 1502 /* I/O error on swap file */
151#define MSG_SWAP_FILE_FULL 1503 /* Swap file is full */
152#define MSG_SWAP_TABLE_FULL 1504 /* Swap control table full */
153/* */
154#define MSG_SYSINIT_INVAL_CMD 1195 /* Unrecognized command */
155#define MSG_SYSINIT_INVAL_PARM 1196 /* Invalid parameter */
156#define MSG_SYSINIT_MISSING_PARM 1197 /* Missing parameter */
157/* 1198 - 1199 not used */
158#define MSG_SYSINIT_DOS_FAIL 1200 /* Cannot create DOS mode */
159/* 1201 - 1204 not used */
160#define MSG_SYSINIT_DOS_MODIFIED 1205 /* DOS mode memory modified by DD */
161#define MSG_SYSINIT_UFILE_NO_MEM 1206 /* Out of memory loading user program or DD */
162/* 1207 not used */
163#define MSG_SAD_INSERT_DUMP 1395 /* insert dump disk - rasmsg */
164/* 1517 not used */
165#define MSG_SYSINIT_SFILE_NOT_FND 1518 /* System file not found */
166#define MSG_SYSINIT_SFILE_NO_MEM 1519 /* Out of memory loading system program or DD */
167/* 1520 not used */
168#define MSG_SYSINIT_TOO_MANY_PARMS 1521 /* Too many parms on line */
169/* 1522 not used */
170#define MSG_SYSINIT_MISSING_SYMB 1523 /* No equal or space */
171/* 1708 - 1717 not used */
172#define MSG_SYSINIT_UFILE_NOT_FND 1718 /* User file not found */
173#define MSG_SYSINIT_UDRVR_INVAL 1719 /* User device driver invalid */
174/* 1720 not used */
175#define MSG_SYSINIT_BANNER 1721 /* Version banner message */
176#define MSG_SYSINIT_CANT_LOAD_MOD 1722 /* Can't load module */
177#define MSG_SYSINIT_EPT_MISSING 1723 /* Entry point missing */
178#define MSG_SYSINIT_CANT_OPEN_CON 1724 /* Can't open con */
179#define MSG_SYSINIT_WRONG_HANDLE 1725 /* wrong handle for standard input file */
180#define MSG_SYSINIT_PRESS_ENTER 1726 /* Press enter to continue */
181#define MSG_SYSINIT_CANT_GET_CACHE 1727 /* Can't allocate cache memory */
182/* 1728 not used */
183#define MSG_SYSINIT_VIO_CP 1729 /* VioSetCp failed */
184#define MSG_SYSINIT_KBD_CP 1730 /* KbdSetCp failed */
185/* 1731 - 1732 not used */
186#define MSG_SYSINIT_SCFILE_INVAL 1733 /* System country file is bad */
187/* 1734 not used */
188#define MSG_SYSINIT_CP_ASSUME 1735 /* Assumed codepage */
189/* 1736 not used */
190#define MSG_SYSINIT_CP_FATAL 1737 /* Codepage switching disabled */
191#define MSG_SYSINIT_NOT_INIT_NMI 1738 /* cannot initial NMI ALSO FOR MODE MGR */
192#define MSG_ASYNC_INSTALL 1899 /* Com installed */
193#define MSG_ASYNC_COM_DEVICE 1900 /* COM device driver */
194/* 1901 - 1914 utilmid2 */
195#define MSG_INTERNAL_ERROR 1915 /* Internal error in the Kernel */
196#define MSG_USER_ERROR 1916 /* user error */
197/* 1917 - 1918 not used */
198#define MSG_SYSINIT_UEXEC_FAIL 1919 /* User program won't execute */
199/* 1920 - 1924 not used */
200#define MSG_SYSINIT_SEXEC_FAIL 1925 /* System program won't execute */
201#define MSG_GEN_PROT_FAULT 1926 /* General protect fault trap d */
202#define MSG_CHANGE_INT_VECTOR 1927 /* real mode changed interrupt vector */
203#define MSG_NOMEM_FOR_RELOAD 1928 /* no storage to reload code or segment */
204#define MSG_STACK_OVERFLOW 1929 /* argument stack low */
205#define MSG_TRAP0 1930 /* divide error */
206#define MSG_TRAP1 1931 /* single step trap */
207#define MSG_TRAP2 1932 /* hardware memory error */
208#define MSG_TRAP3 1933 /* breakpoint instruction */
209#define MSG_TRAP4 1934 /* computation overflow */
210#define MSG_TRAP5 1935 /* index out of range */
211#define MSG_TRAP6 1936 /* incorrect instruction */
212#define MSG_TRAP7 1937 /* cannot process instruction */
213#define MSG_TRAP8 1938 /* double exception error */
214#define MSG_TRAP9 1939 /* math coprocessor */
215#define MSG_TRAPA 1940 /* task state segment */
216#define MSG_TRAPB 1941 /* segment not in memory */
217#define MSG_TRAPC 1942 /* memory beyond the stack segment */
218#define MSG_TRAPD 1943 /* bad segment value */
219#define MSG_NMI 1944 /* nonmaskable interrupt */
220#define MSG_NMI_EXC1 1945 /* error with memory system board */
221#define MSG_NM12_EXC2 1946 /* error memory cards */
222#define MSG_NMI2_EXC3 1947 /* timeout on dma */
223#define MSG_NMI2_EXC4 1948 /* timeout by watchdog timer */
224/* 1949 not used */
225#define MSG_NPXIEMSG 1950 /* incorrect operation */
226#define MSG_NPXDEMSG 1951 /* denormalized operand */
227#define MSG_NPXZEMSG 1952 /* zero divide */
228#define MSG_NPXOEMSG 1953 /* overflow */
229#define MSG_NPXUEMSG 1954 /* underflow */
230#define MSG_NPXPEMSG 1955 /* precision */
231#define MSG_NPXINSTEMSG 1956 /* error occurred at address */
232#define MSG_SYSINIT_BOOT_ERROR 2025 /* boot error */
233#define MSG_SYSINIT_BIO_NOT_FD 2026 /* COMMAND.COM not found */
234#define MSG_SYSINIT_INSER_DK 2027 /* Insert diskette */
235#define MSG_SYSINIT_DOS_NOT_FD 2028 /* IBMDOS.COM not found */
236#define MSG_SYSINIT_DOS_NOT_VAL 2029 /* IBMDOS.COM not valid */
237#define MSG_SYSINIT_MORE_MEM 2030 /* need more memory */
238/* 2031 - 2056 utilmid3 */
239/* 2057 - 2063 not used */
240#define MSG_SYSINIT_DOS_NO_MEM 2064 /* Out of memory starting DOS mode */
241#define MSG_SYSINIT_SYS_STOPPED 2065 /* System is stopped */
242#define MSG_SYSINIT_DOS_STOPPED 2066 /* DOS mode not started */
243#define MSG_SYSINIT_SDRVR_INVAL 2067 /* System device driver invalid */
244#define MSG_SYSINIT_MSG_LOST 2068 /* Messages lost */
245#define MSG_SYSINIT_UCFILE_INVAL 2069 /* User country file is bad */
246#define MSG_DEMAND_LOAD_FAILED 2070 /* the demand load has failed */
diff --git a/v4.0/src/H/CDS.H b/v4.0/src/H/CDS.H
new file mode 100644
index 0000000..8ff2b26
--- /dev/null
+++ b/v4.0/src/H/CDS.H
@@ -0,0 +1,25 @@
1/* structure of a CDS */
2
3#define DIRSTRLEN 64+3
4
5struct CDSType
6{
7 char text[DIRSTRLEN] ;
8 unsigned flags ;
9 long pDPB ;
10 long ID ;
11 unsigned wUser ;
12 unsigned cbEnd ;
13 char type ;
14 long ifs_hdr ;
15 char fsda[2] ;
16} ;
17
18#define CDSNET 0x8000
19#define CDSINUSE 0x4000
20#define CDSSPLICE 0x2000
21#define CDSLOCAL 0x1000
22
23extern char fGetCDS() ;
24extern char fPutCDS() ;
25 \ No newline at end of file
diff --git a/v4.0/src/H/COMSUB.H b/v4.0/src/H/COMSUB.H
new file mode 100644
index 0000000..bf5d643
--- /dev/null
+++ b/v4.0/src/H/COMSUB.H
@@ -0,0 +1,166 @@
1/*static char *SCCSID = "@(#)comsub.h 8.2 87/02/13";*/
2/******************** START OF SPECIFICATIONS ************************/
3/* */
4/* SOURCE FILE NAME: COMSUB.H */
5/* */
6/* DESCRIPTIVE NAME: COMMON SUBROUTINE INCLUDE FILE */
7/* */
8/* FUNCTION: */
9/* */
10/* */
11/* NOTES: */
12/* */
13/* ENTRY POINTS: NONE */
14/* */
15/* EXTERNAL REFERENCE: NONE */
16/* */
17/* RELEASE: */
18/* */
19/* VERSION DATE REASON */
20/* */
21/* 1.00 03/10/1986 initial version */
22/* 1.01 03/11/1986 define external pointer to invalid */
23/* argument string (CORA's request) */
24/* 1.02 03/18/1986 external declaration of "computmsg" */
25/* parm 1 : char far * -> char far ** */
26/* 1.03 03/24/1986 delete "comverflnm" related decralation */
27/* change "int" to "unsigned" */
28/* 1.04 03/25/1986 - add function external declaration of */
29/* "comcheckdosver" */
30/* - delete "far" declaration. */
31/* 2.00 04/15/1986 the first intigration version */
32/* 2.01 05/21/1986 - add "extern rctomid()" */
33/* 2.02 05/22/1986 - add DBCS common routines */
34/* 2.03 06/17/1986 - add "com_toupper" and "com_tolower" */
35/* 2.04 06/18/1986 - comment out SCCSID tag */
36/* 2.05 06/25/1986 - add filehandle enabling switch */
37/* 2.06 08/07/1986 - add new routine "realopen" */
38/* 2.07 02/13/1987 - add "cm_trace_cmd_flg". */
39/*********************************************************************/
40
41/*************************************
42 * *
43 * external function declaration *
44 * *
45 *************************************/
46
47extern unsigned comgetarg (
48 unsigned *, /* number of arguments */
49 char **, /* pointer array of original arguments */
50 char **, /* pointer of argument unit character */
51 /* storage */
52 unsigned, /* depth of new argument pointer array */
53 char *, /* broken down argument character buffer */
54 unsigned, /* size of argument character buffer */
55 char *, /* current defualt drive name */
56 char *); /* switching character */
57/*
58 * print a message and get a response
59 */
60extern unsigned computmsg (
61 char **, /* table of variables to insert */
62 unsigned, /* number of variables to insert */
63 unsigned, /* message id */
64 char *, /* message file name */
65 unsigned, /* output device type */
66 unsigned, /* response type */
67 char *, /* response data area */
68 unsigned); /* size of response data area */
69/*
70 * verify correct DOS version
71 */
72extern unsigned comcheckdosver();
73
74/*
75 * return code conversion to message id
76 */
77extern unsigned rctomid(
78 unsigned); /* return code to converted to msg id */
79
80/*
81 * open drive in real mode
82 */
83extern unsigned far pascal REALOPEN(
84 char far *, /* pointer to drive name */
85 unsigned far *, /* pointer to drive handle */
86 unsigned); /* open mode */
87
88/*****************************************/
89/* */
90/* DBCS common subroutine */
91/* */
92/*****************************************/
93/*
94 * search the first substring occurrence in a string
95 */
96extern unsigned char
97*com_substr(
98 unsigned char *, /* source string */
99 unsigned char *); /* target string */
100
101/*
102 * search the last charater occurrence in a string
103 */
104extern unsigned char
105*com_strrchr(
106 unsigned char *, /* source string */
107 unsigned char ); /* target string */
108
109/*
110 * compare two strings with regard to case
111 */
112extern int
113com_strcmpi(
114 unsigned char *, /* source string */
115 unsigned char *); /* string to be compared */
116
117/*
118 * convert a string to uppercase
119 */
120extern unsigned char
121*com_strupr(
122 unsigned char *); /* string to be converted */
123
124/*
125 * convert a string to lowercase
126 */
127extern unsigned char
128*com_strlwr(
129 unsigned char *); /* string to be converted */
130
131/*
132 * search the first occurrence of a character in a string
133 */
134extern char *com_strchr(
135 unsigned char *, /* a source string */
136 unsigned char ); /* a character to be searched */
137
138/*
139 * convert character to uppercase
140 */
141extern int com_toupper(
142 unsigned char ); /* character to be converted to uppercase */
143
144/*
145 * convert character to lowercase
146 */
147extern int com_tolower(
148 unsigned char ); /* character to be converted to lowercase */
149
150/*************************************
151 * *
152 * external variable declaration *
153 * *
154 *************************************/
155extern unsigned cm_invalid_parm_pointer; /* points to first detected */
156 /* invalid argument string */
157
158extern char cm_flhandle_enable_sw; /* enable filehandle input for */
159 /* computmsg routine */
160 /* */
161 /* if this switch is on (non-zero), */
162 /* filehandle can be set in devicetype.*/
163
164extern char cm_trace_cmd_flg; /* ignore drive validity check. */
165 /* if it set to 1, COMGETARG does */
166 /* not check drive validity. */
diff --git a/v4.0/src/H/COPYRIGH.H b/v4.0/src/H/COPYRIGH.H
new file mode 100644
index 0000000..530203d
--- /dev/null
+++ b/v4.0/src/H/COPYRIGH.H
@@ -0,0 +1,3 @@
1char *copyright1 = "MS DOS Version 4.00 (C)Copyright 1988 Microsoft Corp";
2char *copyright2 = "Licensed Material - Property of Microsoft ";
3
diff --git a/v4.0/src/H/DOSCALLS.H b/v4.0/src/H/DOSCALLS.H
new file mode 100644
index 0000000..3d11677
--- /dev/null
+++ b/v4.0/src/H/DOSCALLS.H
@@ -0,0 +1,552 @@
1/*static char *SCCSID = "@(#)doscalls.hwc 10.3 87/05/27";*/
2struct DateTime {
3 unsigned char hour;
4 unsigned char minutes;
5 unsigned char seconds;
6 unsigned char hundredths;
7 unsigned char day;
8 unsigned char month;
9 unsigned year;
10 int timezone;
11 unsigned char day_of_week;
12 };
13struct FileFindBuf {
14 unsigned create_date;
15 unsigned create_time;
16 unsigned access_date;
17 unsigned access_time;
18 unsigned write_date;
19 unsigned write_time;
20 unsigned long file_size;
21 unsigned long falloc_size;
22 unsigned attributes;
23 unsigned char string_len;
24 char file_name[13];
25 };
26struct FileStatus {
27 unsigned create_date;
28 unsigned create_time;
29 unsigned access_date;
30 unsigned access_time;
31 unsigned write_date;
32 unsigned write_time;
33 unsigned long file_size;
34 unsigned long falloc_size;
35 unsigned attributes;
36 };
37struct FSAllocate {
38 unsigned long filsys_id;
39 unsigned long sec_per_unit;
40 unsigned long num_units;
41 unsigned long avail_units;
42 unsigned bytes_sec;
43 };
44struct ProcIDsArea {
45 unsigned procid_cpid;
46 unsigned procid_ctid;
47 unsigned procid_ppid;
48 };
49struct ResultCodes {
50 unsigned TermCode_PID ;
51 unsigned ExitCode ;
52 };
53struct countrycode {
54 unsigned country;
55 unsigned codepage;
56};
57extern unsigned far pascal DOSCREATETHREAD (
58 void (far *)(void),
59 unsigned far *,
60 unsigned char far * );
61extern unsigned far pascal DOSRESUMETHREAD (
62 unsigned );
63extern unsigned far pascal DOSSUSPENDTHREAD (
64 unsigned );
65extern unsigned far pascal DOSCWAIT (
66 unsigned,
67 unsigned,
68 struct ResultCodes far *,
69 unsigned far *,
70 unsigned );
71extern void far pascal DOSENTERCRITSEC (void);
72extern unsigned far pascal DOSEXECPGM (
73 char far *,
74 unsigned,
75 unsigned,
76 char far *,
77 char far *,
78 struct ResultCodes far *,
79 char far * );
80extern void far pascal DOSEXIT (
81 unsigned,
82 unsigned );
83extern void far pascal DOSEXITCRITSEC (void);
84extern unsigned far pascal DOSEXITLIST (
85 unsigned,
86 void (far *)(void) );
87extern unsigned far pascal DOSGETPID (
88 struct ProcIDsArea far *);
89extern unsigned far pascal DOSGETPRTY (
90 unsigned,
91 unsigned far *,
92 unsigned );
93extern unsigned far pascal DOSSETPRTY (
94 unsigned,
95 unsigned,
96 unsigned,
97 unsigned );
98extern unsigned far pascal DOSKILLPROCESS (
99 unsigned,
100 unsigned );
101extern unsigned far pascal DOSHOLDSIGNAL (
102 unsigned );
103extern unsigned far pascal DOSFLAGPROCESS (
104 unsigned,
105 unsigned,
106 unsigned,
107 unsigned );
108extern unsigned far pascal DOSSETSIGHANDLER (
109 void (far pascal *)(),
110 unsigned long far *,
111 unsigned far *,
112 unsigned,
113 unsigned );
114extern unsigned far pascal DOSSENDSIGNAL (
115 unsigned,
116 unsigned);
117extern unsigned far pascal DOSMAKEPIPE (
118 unsigned far *,
119 unsigned far *,
120 unsigned );
121extern unsigned far pascal DOSCLOSEQUEUE (
122 unsigned ) ;
123extern unsigned far pascal DOSCREATEQUEUE (
124 unsigned far *,
125 unsigned,
126 char far * ) ;
127extern unsigned far pascal DOSOPENQUEUE (
128 unsigned far *,
129 unsigned far *,
130 char far * ) ;
131extern unsigned far pascal DOSPEEKQUEUE (
132 unsigned,
133 unsigned long far *,
134 unsigned far *,
135 unsigned long far *,
136 unsigned far *,
137 unsigned char,
138 unsigned char far *,
139 unsigned long ) ;
140extern unsigned far pascal DOSPURGEQUEUE (
141 unsigned ) ;
142extern unsigned far pascal DOSQUERYQUEUE (
143 unsigned,
144 unsigned far * );
145extern unsigned far pascal DOSREADQUEUE (
146 unsigned,
147 unsigned long far *,
148 unsigned far *,
149 unsigned long far *,
150 unsigned,
151 unsigned char,
152 unsigned char far *,
153 unsigned long ) ;
154extern unsigned far pascal DOSWRITEQUEUE (
155 unsigned,
156 unsigned,
157 unsigned,
158 unsigned char far *,
159 unsigned char );
160extern unsigned far pascal DOSSEMCLEAR (
161 unsigned long );
162extern unsigned far pascal DOSSEMREQUEST (
163 unsigned long,
164 long );
165extern unsigned far pascal DOSSEMSET (
166 unsigned long );
167extern unsigned far pascal DOSSEMSETWAIT (
168 unsigned long,
169 long );
170extern unsigned far pascal DOSSEMWAIT (
171 unsigned long,
172 long );
173extern unsigned far pascal DOSMUXSEMWAIT (
174 unsigned far *,
175 unsigned far *,
176 long );
177extern unsigned far pascal DOSCLOSESEM (
178 unsigned long );
179extern unsigned far pascal DOSCREATESEM (
180 unsigned,
181 unsigned long far *,
182 char far * );
183extern unsigned far pascal DOSOPENSEM (
184 unsigned long far *,
185 char far * );
186extern unsigned far pascal DOSGETDATETIME (
187 struct DateTime far * );
188extern unsigned far pascal DOSSETDATETIME (
189 struct DateTime far * );
190extern unsigned far pascal DOSSLEEP (
191 unsigned long );
192extern unsigned far pascal DOSGETTIMERINT (
193 unsigned far * );
194extern unsigned far pascal DOSTIMERASYNC (
195 unsigned long,
196 unsigned long,
197 unsigned far * );
198extern unsigned far pascal DOSTIMERSTART (
199 unsigned long,
200 unsigned long,
201 unsigned far * );
202extern unsigned far pascal DOSTIMERSTOP (
203 unsigned );
204extern unsigned far pascal DOSALLOCSEG (
205 unsigned,
206 unsigned far *,
207 unsigned );
208extern unsigned far pascal DOSALLOCSHRSEG (
209 unsigned,
210 char far *,
211 unsigned far * );
212extern unsigned far pascal DOSGETSHRSEG (
213 char far *,
214 unsigned far * );
215extern unsigned far pascal DOSGIVESEG (
216 unsigned,
217 unsigned,
218 unsigned far * );
219extern unsigned far pascal DOSGETSEG (
220 unsigned );
221extern unsigned far pascal DOSLOCKSEG (
222 unsigned );
223extern unsigned far pascal DOSUNLOCKSEG (
224 unsigned );
225extern unsigned far pascal DOSMEMAVAIL (
226 unsigned long far * );
227extern unsigned far pascal DOSREALLOCSEG (
228 unsigned,
229 unsigned );
230extern unsigned far pascal DOSFREESEG (
231 unsigned );
232extern unsigned far pascal DOSALLOCHUGE (
233 unsigned,
234 unsigned,
235 unsigned far *,
236 unsigned,
237 unsigned );
238extern unsigned far pascal DOSGETHUGESHIFT (
239 unsigned far *);
240extern unsigned far pascal DOSREALLOCHUGE (
241 unsigned,
242 unsigned,
243 unsigned );
244extern unsigned far pascal DOSCREATECSALIAS (
245 unsigned,
246 unsigned far * );
247extern unsigned far pascal DOSSUBALLOC (
248 unsigned,
249 unsigned far *,
250 unsigned );
251extern unsigned far pascal DOSSUBFREE (
252 unsigned,
253 unsigned,
254 unsigned );
255extern unsigned far pascal DOSSUBSET (
256 unsigned,
257 unsigned,
258 unsigned );
259extern unsigned far pascal DOSLOADMODULE (
260 char far *,
261 unsigned,
262 char far *,
263 unsigned far * );
264extern unsigned far pascal DOSFREEMODULE (
265 unsigned );
266extern unsigned far pascal DOSGETPROCADDR (
267 unsigned,
268 char far *,
269 unsigned long far * );
270extern unsigned far pascal DOSGETMODHANDLE (
271 char far *,
272 unsigned far *);
273extern unsigned far pascal DOSGETMODNAME (
274 unsigned,
275 unsigned,
276 char far * );
277extern unsigned far pascal DOSBEEP (
278 unsigned,
279 unsigned );
280extern unsigned far pascal DOSCLIACCESS (void);
281extern unsigned far pascal DOSDEVCONFIG (
282 unsigned char far *,
283 unsigned,
284 unsigned );
285extern unsigned far pascal DOSDEVIOCTL (
286 char far *,
287 char far *,
288 unsigned,
289 unsigned,
290 unsigned );
291extern unsigned far pascal DOSIOACCESS (
292 unsigned,
293 unsigned,
294 unsigned,
295 unsigned );
296extern unsigned far pascal DOSPORTACCESS (
297 unsigned,
298 unsigned,
299 unsigned,
300 unsigned );
301extern unsigned far pascal DOSSGNUM (
302 unsigned far *);
303extern unsigned far pascal DOSSGSWITCH (
304 unsigned );
305extern unsigned far pascal DOSSGSWITCHME (
306 unsigned );
307extern unsigned far pascal DOSMONOPEN (
308 char far *,
309 unsigned far * );
310extern unsigned far pascal DOSMONCLOSE (
311 unsigned );
312extern unsigned far pascal DOSMONREG (
313 unsigned,
314 unsigned char far *,
315 unsigned char far *,
316 unsigned,
317 unsigned );
318extern unsigned far pascal DOSMONREAD (
319 unsigned char far *,
320 unsigned char,
321 unsigned char far *,
322 unsigned far * );
323extern unsigned far pascal DOSMONWRITE (
324 unsigned char far *,
325 unsigned char far *,
326 unsigned );
327extern unsigned far pascal DOSBUFRESET (
328 unsigned );
329extern unsigned far pascal DOSCHDIR (
330 char far *,
331 unsigned long );
332extern unsigned far pascal DOSCHGFILEPTR (
333 unsigned,
334 long,
335 unsigned,
336 unsigned long far * );
337extern unsigned far pascal DOSCLOSE (
338 unsigned );
339extern unsigned far pascal DOSDELETE (
340 char far *,
341 unsigned long );
342extern unsigned far pascal DOSDUPHANDLE (
343 unsigned,
344 unsigned far * );
345extern unsigned far pascal DOSFINDCLOSE (
346 unsigned );
347extern unsigned far pascal DOSFINDFIRST (
348 char far *,
349 unsigned far *,
350 unsigned,
351 struct FileFindBuf far *,
352 unsigned,
353 unsigned far *,
354 unsigned long );
355extern unsigned far pascal DOSFINDNEXT (
356 unsigned,
357 struct FileFindBuf far *,
358 unsigned,
359 unsigned far * );
360extern unsigned far pascal DOSFILELOCKS (
361 unsigned,
362 long far *,
363 long far * );
364extern unsigned far pascal DOSGETINFOSEG (
365 unsigned far *,
366 unsigned far * );
367extern unsigned far pascal DOSMKDIR (
368 char far *,
369 unsigned long );
370extern unsigned far pascal DOSMOVE (
371 char far *,
372 char far *,
373 unsigned long );
374extern unsigned far pascal DOSNEWSIZE (
375 unsigned,
376 unsigned long );
377extern unsigned far pascal DOSOPEN (
378 char far *,
379 unsigned far *,
380 unsigned far *,
381 unsigned long,
382 unsigned,
383 unsigned,
384 unsigned,
385 unsigned long );
386extern unsigned far pascal DOSQCURDIR (
387 unsigned,
388 char far *,
389 unsigned far * );
390extern unsigned far pascal DOSQCURDISK (
391 unsigned far *,
392 unsigned long far * );
393extern unsigned far pascal DOSQFHANDSTATE (
394 unsigned,
395 unsigned far * );
396extern unsigned far pascal DOSQFILEINFO (
397 unsigned,
398 unsigned,
399 char far *,
400 unsigned );
401extern unsigned far pascal DOSQFILEMODE (
402 char far *,
403 unsigned far *,
404 unsigned long );
405extern unsigned far pascal DOSQFSINFO (
406 unsigned,
407 unsigned,
408 char far *,
409 unsigned );
410extern unsigned far pascal DOSQHANDTYPE (
411 unsigned,
412 unsigned far *,
413 unsigned far * );
414extern unsigned far pascal DOSQVERIFY (
415 unsigned far * );
416extern unsigned far pascal DOSREAD (
417 unsigned,
418 char far *,
419 unsigned,
420 unsigned far * );
421extern unsigned far pascal DOSREADASYNC (
422 unsigned,
423 unsigned long far *,
424 unsigned far *,
425 char far *,
426 unsigned,
427 unsigned far * );
428extern unsigned far pascal DOSRMDIR (
429 char far *,
430 unsigned long );
431extern unsigned far pascal DOSSELECTDISK (
432 unsigned );
433extern unsigned far pascal DOSSETFHANDSTATE (
434 unsigned,
435 unsigned);
436extern unsigned far pascal DOSSETFSINFO (
437 unsigned,
438 unsigned,
439 char far *,
440 unsigned );
441extern unsigned far pascal DOSSETFILEINFO (
442 unsigned,
443 unsigned,
444 char far *,
445 unsigned );
446extern unsigned far pascal DOSSETFILEMODE (
447 char far *,
448 unsigned,
449 unsigned long );
450extern unsigned far pascal DOSSETMAXFH (
451 unsigned );
452extern unsigned far pascal DOSSETVERIFY (
453 unsigned );
454extern unsigned far pascal DOSWRITE (
455 unsigned,
456 char far *,
457 unsigned,
458 unsigned far * );
459extern unsigned far pascal DOSWRITEASYNC (
460 unsigned,
461 unsigned long far *,
462 unsigned far *,
463 char far *,
464 unsigned,
465 unsigned far * );
466extern unsigned far pascal DOSERROR (
467 unsigned );
468extern unsigned far pascal DOSSETVEC (
469 unsigned,
470 void (far *)(void),
471 void (far * far *)(void) );
472extern unsigned far pascal DOSGETMESSAGE (
473 char far * far *,
474 unsigned,
475 char far *,
476 unsigned,
477 unsigned,
478 char far *,
479 unsigned far * );
480extern unsigned far pascal DOSERRCLASS (
481 unsigned,
482 unsigned far *,
483 unsigned far *,
484 unsigned far * );
485extern unsigned far pascal DOSINSMESSAGE (
486 char far * far *,
487 unsigned,
488 char far *,
489 unsigned,
490 char far *,
491 unsigned,
492 unsigned far * );
493extern unsigned far pascal DOSPUTMESSAGE (
494 unsigned,
495 unsigned,
496 char far * );
497extern unsigned far pascal DOSSYSTRACE (
498 unsigned,
499 unsigned,
500 unsigned,
501 char far * );
502extern unsigned far pascal DOSGETENV (
503 unsigned far *,
504 unsigned far * );
505extern unsigned far pascal DOSSCANENV (
506 char far *,
507 char far * far * );
508extern unsigned far pascal DOSSEARCHPATH (
509 unsigned,
510 char far *,
511 char far *,
512 char far *,
513 unsigned );
514extern unsigned far pascal DOSGETVERSION (
515 unsigned far * );
516extern unsigned far pascal DOSGETMACHINEMODE (
517 unsigned char far * );
518extern unsigned far pascal DOSGETCTRYINFO (
519 unsigned,
520 struct countrycode far *,
521 char far *,
522 unsigned far * );
523extern unsigned far pascal DOSGETDBCSEV (
524 unsigned,
525 struct countrycode far *,
526 char far * );
527extern unsigned far pascal DOSCASEMAP (
528 unsigned,
529 struct countrycode far *,
530 char far * );
531extern unsigned far pascal DOSGETCOLLATE (
532 unsigned,
533 struct countrycode far *,
534 char far *,
535 unsigned far *);
536extern unsigned far pascal DOSGETCP (
537 unsigned,
538 unsigned far *,
539 unsigned far *);
540extern unsigned far pascal DOSSETCP (
541 unsigned,
542 unsigned);
543extern unsigned far pascal DOSPHYSICALDISK (
544 unsigned,
545 char far *,
546 unsigned,
547 char far *,
548 unsigned);
549extern unsigned far pascal DOSSYSTEMSERVICE (
550 unsigned,
551 char far *,
552 char far *);
diff --git a/v4.0/src/H/DPB.H b/v4.0/src/H/DPB.H
new file mode 100644
index 0000000..bfd28ac
--- /dev/null
+++ b/v4.0/src/H/DPB.H
@@ -0,0 +1,30 @@
1 struct DPBType {
2 char drive ; /* physical drive number */
3 char unit ; /* unit within device */
4 unsigned cbSector ; /* bytes per sector */
5 char mask ; /* sectors/alloc unit - 1 */
6 char shift ; /* bit to shift */
7 unsigned secFAT ; /* sector number of first FAT */
8 char cFAT ; /* count of FATs */
9 unsigned cDirEnt ; /* count of root directory entries */
10 unsigned secData ; /* first data sector */
11 unsigned cCluster ; /* max number of clusters on drive */
12 unsigned csecFAT ; /* sectors in each FAT */
13 unsigned secDir ; /* first sector of root dir */
14 long pDevice ; /* pointer to device header */
15 char media ; /* last media in drive */
16 char fFirst ; /* TRUE => media check needed */
17 long nextDPB ; /* pointer to next dpb */
18 unsigned clusFree ; /* cluster number of last alloc */
19 unsigned FreeCnt ; /* count of free clusters, -1 if unk */
20/* char SyncFlg ; /* sync flags, (see below) */
21 } ;
22
23/* Definitions of SyncFlg values from DPB.INC */
24
25#define DPB_ABUSY 1 /* some process is allocating clusters */
26#define DPB_AWANT 2 /* some process waiting to allocate */
27#define DPB_FBUSY 4 /* some process is reading FAT */
28#define DPB_FWANT 8 /* some process waiting to read FAT */
29
30 \ No newline at end of file
diff --git a/v4.0/src/H/ERROR.H b/v4.0/src/H/ERROR.H
new file mode 100644
index 0000000..cc51e09
--- /dev/null
+++ b/v4.0/src/H/ERROR.H
@@ -0,0 +1,294 @@
1/*static char *SCCSID = "@(#)error.h 7.11 86/09/29";*/
2/* XENIX calls all return error codes through AX. If an error occurred then */
3/* the carry bit will be set and the error code is in AX. If no error occurred */
4/* then the carry bit is reset and AX contains returned info. */
5/* */
6/* Since the set of error codes is being extended as we extend the operating */
7/* system, we have provided a means for applications to ask the system for a */
8/* recommended course of action when they receive an error. */
9/* */
10/* The GetExtendedError system call returns a universal error, an error */
11/* location and a recommended course of action. The universal error code is */
12/* a symptom of the error REGARDLESS of the context in which GetExtendedError */
13/* is issued. */
14/* */
15
16/* */
17/* These are the 2.0 error codes */
18/* */
19#define NO_ERROR 0
20#define ERROR_INVALID_FUNCTION 1
21#define ERROR_FILE_NOT_FOUND 2
22#define ERROR_PATH_NOT_FOUND 3
23#define ERROR_TOO_MANY_OPEN_FILES 4
24#define ERROR_ACCESS_DENIED 5
25#define ERROR_INVALID_HANDLE 6
26#define ERROR_ARENA_TRASHED 7
27#define ERROR_NOT_ENOUGH_MEMORY 8
28#define ERROR_INVALID_BLOCK 9
29#define ERROR_BAD_ENVIRONMENT 10
30#define ERROR_BAD_FORMAT 11
31#define ERROR_INVALID_ACCESS 12
32#define ERROR_INVALID_DATA 13
33/***** reserved EQU 14 ; ***** */
34#define ERROR_INVALID_DRIVE 15
35#define ERROR_CURRENT_DIRECTORY 16
36#define ERROR_NOT_SAME_DEVICE 17
37#define ERROR_NO_MORE_FILES 18
38/* */
39/* These are the universal int 24 mappings for the old INT 24 set of errors */
40/* */
41#define ERROR_WRITE_PROTECT 19
42#define ERROR_BAD_UNIT 20
43#define ERROR_NOT_READY 21
44#define ERROR_BAD_COMMAND 22
45#define ERROR_CRC 23
46#define ERROR_BAD_LENGTH 24
47#define ERROR_SEEK 25
48#define ERROR_NOT_DOS_DISK 26
49#define ERROR_SECTOR_NOT_FOUND 27
50#define ERROR_OUT_OF_PAPER 28
51#define ERROR_WRITE_FAULT 29
52#define ERROR_READ_FAULT 30
53#define ERROR_GEN_FAILURE 31
54/* */
55/* These are the new 3.0 error codes reported through INT 24 */
56/* */
57#define ERROR_SHARING_VIOLATION 32
58#define ERROR_LOCK_VIOLATION 33
59#define ERROR_WRONG_DISK 34
60#define ERROR_FCB_UNAVAILABLE 35
61#define ERROR_SHARING_BUFFER_EXCEEDED 36
62/* */
63/* New OEM network-related errors are 50-79 */
64/* */
65#define ERROR_NOT_SUPPORTED 50
66/* */
67/* End of INT 24 reportable errors */
68/* */
69#define ERROR_FILE_EXISTS 80
70#define ERROR_DUP_FCB 81 /* ***** */
71#define ERROR_CANNOT_MAKE 82
72#define ERROR_FAIL_I24 83
73/* */
74/* New 3.0 network related error codes */
75/* */
76#define ERROR_OUT_OF_STRUCTURES 84
77#define ERROR_ALREADY_ASSIGNED 85
78#define ERROR_INVALID_PASSWORD 86
79#define ERROR_INVALID_PARAMETER 87
80#define ERROR_NET_WRITE_FAULT 88
81/* */
82/* New error codes for 4.0 */
83/* */
84#define ERROR_NO_PROC_SLOTS 89 /* no process slots available */
85#define ERROR_NOT_FROZEN 90
86#define ERR_TSTOVFL 91 /* timer service table overflow */
87#define ERR_TSTDUP 92 /* timer service table duplicate */
88#define ERROR_NO_ITEMS 93 /* There were no items to operate upon */
89#define ERROR_INTERRUPT 95 /* interrupted system call */
90
91#define ERROR_TOO_MANY_SEMAPHORES 100
92#define ERROR_EXCL_SEM_ALREADY_OWNED 101
93#define ERROR_SEM_IS_SET 102
94#define ERROR_TOO_MANY_SEM_REQUESTS 103
95#define ERROR_INVALID_AT_INTERRUPT_TIME 104
96
97#define ERROR_SEM_OWNER_DIED 105 /* waitsem found owner died */
98#define ERROR_SEM_USER_LIMIT 106 /* too many procs have this sem */
99#define ERROR_DISK_CHANGE 107 /* insert disk b into drive a */
100#define ERROR_DRIVE_LOCKED 108 /* drive locked by another process */
101#define ERROR_BROKEN_PIPE 109 /* write on pipe with no reader */
102/* */
103/* New error codes for 5.0 */
104/* */
105#define ERROR_OPEN_FAILED 110 /* open/created failed due to */
106 /* explicit fail command */
107#define ERROR_BUFFER_OVERFLOW 111 /* buffer passed to system call */
108 /* is too small to hold return */
109 /* data. */
110#define ERROR_DISK_FULL 112 /* not enough space on the disk */
111 /* (DOSNEWSIZE/w_NewSize) */
112#define ERROR_NO_MORE_SEARCH_HANDLES 113 /* can't allocate another search */
113 /* structure and handle. */
114 /* (DOSFINDFIRST/w_FindFirst) */
115#define ERROR_INVALID_TARGET_HANDLE 114 /* Target handle in DOSDUPHANDLE */
116 /* is invalid */
117#define ERROR_PROTECTION_VIOLATION 115 /* Bad user virtual address */
118#define ERROR_VIOKBD_REQUEST 116
119#define ERROR_INVALID_CATEGORY 117 /* Category for DEVIOCTL in not */
120 /* defined */
121#define ERROR_INVALID_VERIFY_SWITCH 118 /* invalid value passed for */
122 /* verify flag */
123#define ERROR_BAD_DRIVER_LEVEL 119 /* DosDevIOCTL looks for a level */
124 /* four driver. If the driver */
125 /* is not level four we return */
126 /* this code */
127#define ERROR_CALL_NOT_IMPLEMENTED 120 /* returned from stub api calls. */
128 /* This call will disappear when */
129 /* all the api's are implemented. */
130#define ERROR_SEM_TIMEOUT 121 /* Time out happened from the */
131 /* semaphore api functions. */
132#define ERROR_INSUFFICIENT_BUFFER 122 /* Some call require the */
133 /* application to pass in a buffer */
134 /* filled with data. This error is */
135 /* returned if the data buffer is too */
136 /* small. For example: DosSetFileInfo */
137 /* requires 4 bytes of data. If a */
138 /* two byte buffer is passed in then */
139 /* this error is returned. */
140 /* error_buffer_overflow is used when */
141 /* the output buffer in not big enough. */
142#define ERROR_INVALID_NAME 123 /* illegal character or malformed */
143 /* file system name */
144#define ERROR_INVALID_LEVEL 124 /* unimplemented level for info */
145 /* retrieval or setting */
146#define ERROR_NO_VOLUME_LABEL 125 /* no volume label found with */
147 /* DosQFSInfo command */
148#define ERROR_MOD_NOT_FOUND 126 /* w_getprocaddr,w_getmodhandle */
149#define ERROR_PROC_NOT_FOUND 127 /* w_getprocaddr */
150
151#define ERROR_WAIT_NO_CHILDREN 128 /* CWait finds to children */
152
153#define ERROR_CHILD_NOT_COMPLETE 129 /* CWait children not dead yet */
154
155#define ERROR_DIRECT_ACCESS_HANDLE 130 /* handle operation is invalid */
156 /* for direct disk access */
157 /* handles */
158#define ERROR_NEGATIVE_SEEK 131 /* application tried to seek */
159 /* with negitive offset */
160#define ERROR_SEEK_ON_DEVICE 132 /* application tried to seek */
161 /* on device or pipe */
162/* */
163/* The following are errors generated by the join and subst workers */
164/* */
165#define ERROR_IS_JOIN_TARGET 133
166#define ERROR_IS_JOINED 134
167#define ERROR_IS_SUBSTED 135
168#define ERROR_NOT_JOINED 136
169#define ERROR_NOT_SUBSTED 137
170#define ERROR_JOIN_TO_JOIN 138
171#define ERROR_SUBST_TO_SUBST 139
172#define ERROR_JOIN_TO_SUBST 140
173#define ERROR_SUBST_TO_JOIN 141
174#define ERROR_BUSY_DRIVE 142
175#define ERROR_SAME_DRIVE 143
176#define ERROR_DIR_NOT_ROOT 144
177#define ERROR_DIR_NOT_EMPTY 145
178#define ERROR_IS_SUBST_PATH 146
179#define ERROR_IS_JOIN_PATH 147
180#define ERROR_PATH_BUSY 148
181#define ERROR_IS_SUBST_TARGET 149
182#define ERROR_SYSTEM_TRACE 150 /* system trace error */
183#define ERROR_INVALID_EVENT_COUNT 151 /* DosMuxSemWait errors */
184#define ERROR_TOO_MANY_MUXWAITERS 152
185#define ERROR_INVALID_LIST_FORMAT 153
186#define ERROR_LABEL_TOO_LONG 154
187#define ERROR_TOO_MANY_TCBS 155
188#define ERROR_SIGNAL_REFUSED 156
189#define ERROR_DISCARDED 157
190#define ERROR_NOT_LOCKED 158
191#define ERROR_BAD_THREADID_ADDR 159
192#define ERROR_BAD_ARGUMENTS 160
193#define ERROR_BAD_PATHNAME 161
194#define ERROR_SIGNAL_PENDING 162
195#define ERROR_UNCERTAIN_MEDIA 163
196#define ERROR_MAX_THRDS_REACHED 164
197
198#define ERROR_INVALID_SEGMENT_NUMBER 180
199#define ERROR_INVALID_CALLGATE 181
200#define ERROR_INVALID_ORDINAL 182
201#define ERROR_ALREADY_EXISTS 183
202#define ERROR_NO_CHILD_PROCESS 184
203#define ERROR_CHILD_ALIVE_NOWAIT 185
204#define ERROR_INVALID_FLAG_NUMBER 186
205#define ERROR_SEM_NOT_FOUND 187
206
207/* following error codes have added to make the loader error
208 messages distinct
209*/
210
211#define ERROR_EXCEEDED_SYS_STACKLIMIT 188 /* wrw! */
212#define ERROR_INVALID_STARTING_CODESEG 189
213#define ERROR_INVALID_STACKSEG 190
214#define ERROR_INVALID_MODULETYPE 191
215#define ERROR_INVALID_EXE_SIGNATURE 192
216#define ERROR_EXE_MARKED_INVALID 193
217#define ERROR_BAD_EXE_FORMAT 194
218#define ERROR_ITERATED_DATA_EXCEEDS_64k 195
219#define ERROR_INVALID_MINALLOCSIZE 196
220#define ERROR_DYNLINK_FROM_INVALID_RING 197
221#define ERROR_IOPL_NOT_ENABLED 198
222#define ERROR_INVALID_SEGDPL 199
223#define ERROR_AUTODATASEG_EXCEEDS_64k 200
224#define ERROR_RING2SEGS_MUST_BE_MOVABLE 201 /* wrw! */
225#define ERR_RELOCSRC_CHAIN_OVER_SEGLIM 202 /* wrw! */
226
227#define ERROR_USER_DEFINED_BASE 0xF000
228
229#define ERROR_I24_WRITE_PROTECT 0
230#define ERROR_I24_BAD_UNIT 1
231#define ERROR_I24_NOT_READY 2
232#define ERROR_I24_BAD_COMMAND 3
233#define ERROR_I24_CRC 4
234#define ERROR_I24_BAD_LENGTH 5
235#define ERROR_I24_SEEK 6
236#define ERROR_I24_NOT_DOS_DISK 7
237#define ERROR_I24_SECTOR_NOT_FOUND 8
238#define ERROR_I24_OUT_OF_PAPER 9
239#define ERROR_I24_WRITE_FAULT 0x0A
240#define ERROR_I24_READ_FAULT 0x0B
241#define ERROR_I24_GEN_FAILURE 0x0C
242#define ERROR_I24_DISK_CHANGE 0x0D
243#define ERROR_I24_WRONG_DISK 0x0F
244#define ERROR_I24_UNCERTAIN_MEDIA 0x10
245#define ERROR_I24_CHAR_CALL_INTERRUPTED 0x11
246
247#define ALLOWED_FAIL 0x0001
248#define ALLOWED_ABORT 0x0002
249#define ALLOWED_RETRY 0x0004
250#define ALLOWED_IGNORE 0x0008
251
252#define I24_OPERATION 0x1
253#define I24_AREA 0x6
254 /* 01 if FAT */
255 /* 10 if root DIR */
256 /* 11 if DATA */
257#define I24_CLASS 0x80
258
259
260/* Values for error CLASS */
261
262#define ERRCLASS_OUTRES 1 /* Out of Resource */
263#define ERRCLASS_TEMPSIT 2 /* Temporary Situation */
264#define ERRCLASS_AUTH 3 /* Permission problem */
265#define ERRCLASS_INTRN 4 /* Internal System Error */
266#define ERRCLASS_HRDFAIL 5 /* Hardware Failure */
267#define ERRCLASS_SYSFAIL 6 /* System Failure */
268#define ERRCLASS_APPERR 7 /* Application Error */
269#define ERRCLASS_NOTFND 8 /* Not Found */
270#define ERRCLASS_BADFMT 9 /* Bad Format */
271#define ERRCLASS_LOCKED 10 /* Locked */
272#define ERRCLASS_MEDIA 11 /* Media Failure */
273#define ERRCLASS_ALREADY 12 /* Collision with Existing Item */
274#define ERRCLASS_UNK 13 /* Unknown/other */
275#define ERRCLASS_CANT 14
276#define ERRCLASS_TIME 15
277
278/* Values for error ACTION */
279
280#define ERRACT_RETRY 1 /* Retry */
281#define ERRACT_DLYRET 2 /* Delay Retry, retry after pause */
282#define ERRACT_USER 3 /* Ask user to regive info */
283#define ERRACT_ABORT 4 /* abort with clean up */
284#define ERRACT_PANIC 5 /* abort immediately */
285#define ERRACT_IGNORE 6 /* ignore */
286#define ERRACT_INTRET 7 /* Retry after User Intervention */
287
288/* Values for error LOCUS */
289
290#define ERRLOC_UNK 1 /* No appropriate value */
291#define ERRLOC_DISK 2 /* Random Access Mass Storage */
292#define ERRLOC_NET 3 /* Network */
293#define ERRLOC_SERDEV 4 /* Serial Device */
294#define ERRLOC_MEM 5 /* Memory */
diff --git a/v4.0/src/H/INTERNAT.H b/v4.0/src/H/INTERNAT.H
new file mode 100644
index 0000000..0cd839c
--- /dev/null
+++ b/v4.0/src/H/INTERNAT.H
@@ -0,0 +1,30 @@
1/*
2 Data structure for international table
3 */
4
5struct InterTbl
6{
7 unsigned dateform ; /* Date format */
8 char currsym[5] ; /* Currency symbol as ASCIZ string */
9 char thousp[2] ; /* Thousands separator as ASCIZ string */
10 char decsp[2] ; /* Decimal separator as ASCIZ string */
11 char datesp[2] ; /* Date separator as ASCIZ string */
12 char timesp[2] ; /* Time separator as ASCIZ string */
13 unsigned char bits ; /* Bit field */
14 unsigned char numdig ; /* Number of signifigant decimal digits */
15 unsigned char timeform ;/* Time format */
16 unsigned long casecall ;/* Case mapping call */
17 char datasp[2] ; /* Data list separator as ASCIZ string */
18 int reserv[5] ; /* RESERVED */
19} ;
20
21
22#define DATEFORM_USA 0
23#define DATEFORM_EUROPE 1
24#define DATEFORM_JAPAN 2
25
26#define BITS_CURRENCY 0x0001
27#define BITS_NUMSPC 0x0002
28
29#define TIMEFORM_12 0
30#define TIMEFORM_24 1
diff --git a/v4.0/src/H/JOINTYPE.H b/v4.0/src/H/JOINTYPE.H
new file mode 100644
index 0000000..446bc1f
--- /dev/null
+++ b/v4.0/src/H/JOINTYPE.H
@@ -0,0 +1,87 @@
1
2/* types.h - basic types
3 */
4
5#define NULL 0
6#define MAXPATHLEN 80 /* JOIN.C */
7#define MAXARG 80 /* ERRTST.C */
8#define CURDISK 0x19 /* ERRTST.C */
9#define GETVERS 0x30 /* MAIN.C */
10#define GETVARS 0x52 /* SYSVAR.C */
11#define IOCTL9 0x4409 /* ERRTST.C */
12#define SwitChr '/' /* JOIN.C & SUBST.C */
13#define PathChr '\\' /* SUBST.C */
14#define COLON ':' /* ERRTST.C */
15#define BACKSLASH '\\' /* ERRTST.C */
16#define ASCNULL '\0' /* ERRTST.C */
17
18
19#define IBMSPACE(c) ((c)==','||(c)==';'||(c)=='='||(c)==0x08||(c)==0x0a)
20#define IBMBREAK(c) ((c) == '/' || CMDSPACE((c)))
21#define CMDBREAK(c) IBMBREAK((c))
22#define CMDSPACE(c) (isspace((c)) || IBMSPACE((c)))
23
24#define SHIFT(c,v) {c--; v++;}
25
26/* The following structure is a UNIX file block that retains information
27 * about a file being accessed via the level 1 I/O functions.
28 */
29
30struct UFB
31{
32 char ufbflg ; /* flags */
33 char ufbtyp ; /* device type */
34 int ufbfh ; /* file handle */
35};
36
37#define NUFBS 20 /* number of UFBs defined */
38
39/* UFB.ufbflg definitions */
40
41#define UFB_OP 0x80 /* file is open */
42#define UFB_RA 0x40 /* reading is allowed */
43#define UFB_WA 0x20 /* writing is allowed */
44#define UFB_NT 0x10 /* access file with no translation */
45#define UFB_AP 8 /* append mode flag */
46
47/* UFB.ufbtyp definitions */
48
49#define D_DISK 0
50#define D_CON 1
51#define D_PRN 2
52#define D_AUX 3
53#define D_NULL 4
54
55#define TRUE -1
56#define FALSE 0
57
58#define SETFLAG(l,f) ((l) |= (f))
59#define TESTFLAG(v,f) (((v)&(f))!=0)
60#define RSETFLAG(l,f) ((l) &= ~(f))
61
62#define LOW(w) ((w)&0xFF)
63#define HIGH(w) LOW((w)>>8)
64#define WORD(h,l) ((LOW((h))<<8)|LOW((l)))
65
66/* buffer description for findfirst and findnext */
67
68struct findType {
69 char reserved[21]; /* reserved for start up */
70 char attr; /* attribute found */
71 unsigned int time; /* time of last modify */
72 unsigned int date; /* date of last modify */
73 long length; /* file size */
74 char name[13]; /* asciz file name */
75};
76
77/* attributes */
78#define A_RO 1 /* read only */
79#define A_H 2 /* hidden */
80#define A_S 4 /* system */
81#define A_V 8 /* volume id */
82#define A_D 16 /* directory */
83#define A_A 32 /* archive */
84
85#define A_MOD (A_RO+A_H+A_S+A_A) /* changeable attributes */
86
87#define HASATTR(a,v) TESTFLAG(a,v) /* true if a has attribute v */
diff --git a/v4.0/src/H/MAKEFILE b/v4.0/src/H/MAKEFILE
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/v4.0/src/H/MAKEFILE
diff --git a/v4.0/src/H/MSGRET.H b/v4.0/src/H/MSGRET.H
new file mode 100644
index 0000000..91a3957
--- /dev/null
+++ b/v4.0/src/H/MSGRET.H
@@ -0,0 +1,66 @@
1/*  */
2/*----------------------------------------------------------------------+
3| |
4| This file contains the structures and defines that are needed to use |
5| the parser from a C program. |
6| |
7| |
8| Date: 6-19-87 |
9| |
10+----------------------------------------------------------------------*/
11
12/* Standard reserved DOS handles */
13
14#define stdin 0x00 /*;AN000; Standard Input device handle */
15#define stdout 0x01 /*;AN000; Standard Output device handle */
16#define stderr 0x02 /*;AN000; Standard Error Output device handle */
17#define stdaux 0x03 /*;AN000; Standard Auxiliary device handle */
18#define stdprn 0x04 /*;AN000; Standard Printer device handle */
19
20#define utility_msg_class 0xff /*;AN000; Utility message type */
21
22
23/* Sublist Flag Values */
24
25/* Alignment Indicator */
26#define sf_left 0x00 /*;AN000; left align */
27#define sf_right 0x80 /*;AN000; right align */
28
29/* Field Type */
30#define sf_char 0x00 /*;AN000; character */
31#define sf_unsbin2d 0x01 /*;AN000; unsigned binary to decimal */
32#define sf_sbin 0x02 /*;AN000; signed binary to decimal */
33#define sf_unsbin2h 0x03 /*;AN000; unsigned binary to hex */
34#define sf_date 0x04 /*;AN000; date */
35#define sf_time12 0x05 /*;AN000; time 12-hour */
36#define sf_time24 0x06 /*;AN000; time 24-hour */
37
38
39/* Data Variable Size */
40
41#define sf_ch 0x00 /*;AN000; single character */
42#define sf_asciiz 0x10 /*;AN000; asciiz string */
43#define sf_word 0x20 /*;AN000; word */
44#define sf_dword 0x30 /*;AN000; double word */
45#define sf_word 0x20 /*;AN000; word */
46
47#define sf_mdy2 0x20 /*;AN000; month,day,year (2 digits) */
48#define sf_mdy4 0x30 /*;AN000; month,day,year (4 digits) */
49
50#define sf_hhmm 0x00 /*;AN000; hh:mm */
51#define sf_hhmmss 0x10 /*;AN000; hh:mm:ss */
52#define sf_hhmmsshh 0x20 /*;AN000; hh:mm:ss:hh */
53
54
55struct m_sublist /*;AN000; */
56 { /*;AN000; */
57 BYTE sub_size; /*;AN000; */
58 BYTE sub_res; /*;AN000; */
59 WORD sub_value; /*;AN000; */
60 WORD sub_value_seg; /*;AN000; */
61 BYTE sub_id; /*;AN000; */
62 BYTE sub_flags; /*;AN000; */
63 BYTE sub_max_width; /*;AN000; */
64 BYTE sub_min_width; /*;AN000; */
65 BYTE sub_pad_char; /*;AN000; */
66 }; /*;AN000; */
diff --git a/v4.0/src/H/SUBCALLS.H b/v4.0/src/H/SUBCALLS.H
new file mode 100644
index 0000000..7145704
--- /dev/null
+++ b/v4.0/src/H/SUBCALLS.H
@@ -0,0 +1,462 @@
1/*SCCSID = @(#)subcalls.hwc 10.1 87/05/02*/
2struct CursorData {
3 unsigned cur_start;
4 unsigned cur_end;
5 unsigned cur_width;
6 unsigned cur_attribute;
7 };
8struct KbdStatus {
9 unsigned length;
10 unsigned bit_mask;
11 unsigned turn_around_char;
12 unsigned interim_char_flags;
13 unsigned shift_state;
14 };
15struct KbdTRANS {
16 unsigned char char_code;
17 unsigned char scan_code;
18 unsigned char status;
19 unsigned char nls_shift;
20 unsigned shift_state;
21 unsigned long time;
22 unsigned kbdDDflags;
23 unsigned xlt_flags;
24 unsigned xlt_shift_state;
25 unsigned xlt_rsrv_0;
26 };
27struct KeyData {
28 unsigned char char_code;
29 unsigned char scan_code;
30 unsigned char status;
31 unsigned char nls_shift;
32 unsigned shift_state;
33 unsigned long time;
34 };
35struct ModeData {
36 unsigned length;
37 unsigned char type;
38 unsigned char color;
39 unsigned col;
40 unsigned row;
41 unsigned hres;
42 unsigned vres;
43 };
44struct PVBData {
45 unsigned pvb_size;
46 unsigned long pvb_ptr;
47 unsigned pvb_length;
48 unsigned pvb_rows;
49 unsigned pvb_cols;
50 unsigned char pvb_type;
51 };
52struct PhysBufData {
53 unsigned long buf_start;
54 unsigned long buf_length;
55 unsigned selectors[2];
56 };
57struct ConfigData {
58 unsigned length ;
59 unsigned adapter_type;
60 unsigned display_type;
61 unsigned long memory_size;
62 };
63struct VIOFONT {
64 unsigned length;
65 unsigned req_type;
66 unsigned pel_cols;
67 unsigned pel_rows;
68 unsigned long font_data;
69 unsigned font_len;
70 };
71struct VIOSTATE {
72 unsigned length;
73 unsigned req_type;
74 unsigned double_defined;
75 unsigned palette0;
76 unsigned palette1;
77 unsigned palette2;
78 unsigned palette3;
79 unsigned palette4;
80 unsigned palette5;
81 unsigned palette6;
82 unsigned palette7;
83 unsigned palette8;
84 unsigned palette9;
85 unsigned palette10;
86 unsigned palette11;
87 unsigned palette12;
88 unsigned palette13;
89 unsigned palette14;
90 unsigned palette15;
91 };
92struct EventInfo {
93 unsigned Mask;
94 unsigned long Time;
95 unsigned Row;
96 unsigned Col;
97 };
98struct NoPointer {
99 unsigned Row;
100 unsigned Col;
101 unsigned Height;
102 unsigned Width;
103 };
104struct PtrImage {
105 unsigned TotLength;
106 unsigned Col;
107 unsigned Row;
108 unsigned ColOffset;
109 unsigned RowOffset;
110 };
111struct PtrLoc {
112 unsigned RowPos;
113 unsigned ColPos;
114 };
115struct QueInfo {
116 unsigned Events;
117 unsigned QSize;
118 };
119struct ScaleFact {
120 unsigned RowScale;
121 unsigned ColScale;
122 };
123struct StartData {
124 unsigned Length;
125 unsigned Related;
126 unsigned FgBg;
127 unsigned TraceOpt;
128 char far * PgmTitle;
129 char far * PgmName;
130 char far * PgmInputs;
131 char far * TermQ;
132 };
133struct StatusData {
134 unsigned Length;
135 unsigned SelectInd;
136 unsigned BindInd;
137 };
138struct KbdStringInLength
139 {
140 unsigned int Length;
141 unsigned int LengthB;
142 };
143extern unsigned far pascal KBDREGISTER (
144 char far *,
145 char far *,
146 unsigned long);
147extern unsigned far pascal KBDDEREGISTER (
148 void );
149extern unsigned far pascal KBDCHARIN (
150 struct KeyData far *,
151 unsigned,
152 unsigned );
153extern unsigned far pascal KBDFLUSHBUFFER (
154 unsigned );
155extern unsigned far pascal KBDGETSTATUS (
156 struct KbdStatus far *,
157 unsigned );
158extern unsigned far pascal KBDPEEK (
159 struct KeyData far *,
160 unsigned );
161extern unsigned far pascal KBDSETSTATUS (
162 struct KbdStatus far *,
163 unsigned );
164extern unsigned far pascal KBDSTRINGIN (
165 char far *,
166 struct KbdStringInLength far *,
167 unsigned,
168 unsigned );
169extern unsigned far pascal KBDOPEN (
170 unsigned far * );
171extern unsigned far pascal KBDCLOSE (
172 unsigned );
173extern unsigned far pascal KBDGETFOCUS (
174 unsigned,
175 unsigned );
176extern unsigned far pascal KBDFREEFOCUS (
177 unsigned );
178extern unsigned far pascal KBDGETCP (
179 unsigned long,
180 unsigned far *,
181 unsigned );
182extern unsigned far pascal KBDSETCP (
183 unsigned,
184 unsigned,
185 unsigned );
186extern unsigned far pascal KBDXLATE (
187 struct KbdTRANS far *,
188 unsigned );
189extern unsigned far pascal KBDSETCUSTXT (
190 unsigned far *,
191 unsigned );
192extern unsigned far pascal KBDSYNCH (
193 unsigned );
194extern unsigned far pascal VIOREGISTER (
195 char far *,
196 char far *,
197 unsigned long,
198 unsigned long );
199extern unsigned far pascal VIODEREGISTER (
200 void );
201extern unsigned far pascal VIOGETBUF (
202 unsigned long far *,
203 unsigned far *,
204 unsigned );
205extern unsigned far pascal VIOGETCURPOS (
206 unsigned far *,
207 unsigned far *,
208 unsigned );
209extern unsigned far pascal VIOGETCURTYPE (
210 struct CursorData far *,
211 unsigned );
212extern unsigned far pascal VIOGETMODE (
213 struct ModeData far *,
214 unsigned );
215extern unsigned far pascal VIOGETPHYSBUF (
216 struct PhysBufData far *,
217 unsigned );
218extern unsigned far pascal VIOREADCELLSTR (
219 char far *,
220 unsigned far *,
221 unsigned,
222 unsigned,
223 unsigned );
224extern unsigned far pascal VIOREADCHARSTR (
225 char far *,
226 unsigned far *,
227 unsigned,
228 unsigned,
229 unsigned );
230extern unsigned far pascal VIOSCROLLDN (
231 unsigned,
232 unsigned,
233 unsigned,
234 unsigned,
235 unsigned,
236 char far *,
237 unsigned );
238extern unsigned far pascal VIOSCROLLUP (
239 unsigned,
240 unsigned,
241 unsigned,
242 unsigned,
243 unsigned,
244 char far *,
245 unsigned );
246extern unsigned far pascal VIOSCROLLLF (
247 unsigned,
248 unsigned,
249 unsigned,
250 unsigned,
251 unsigned,
252 char far *,
253 unsigned );
254extern unsigned far pascal VIOSCROLLRT (
255 unsigned,
256 unsigned,
257 unsigned,
258 unsigned,
259 unsigned,
260 char far *,
261 unsigned );
262extern unsigned far pascal VIOSETCURPOS (
263 unsigned,
264 unsigned,
265 unsigned );
266extern unsigned far pascal VIOSETCURTYPE (
267 struct CursorData far *,
268 unsigned );
269extern unsigned far pascal VIOSETMODE (
270 struct ModeData far *,
271 unsigned );
272extern unsigned far pascal VIOSHOWBUF (
273 unsigned,
274 unsigned,
275 unsigned );
276extern unsigned far pascal VIOWRTCELLSTR (
277 char far *,
278 unsigned,
279 unsigned,
280 unsigned,
281 unsigned );
282extern unsigned far pascal VIOWRTCHARSTR (
283 char far *,
284 unsigned,
285 unsigned,
286 unsigned,
287 unsigned );
288extern unsigned far pascal VIOWRTCHARSTRATT (
289 char far *,
290 unsigned,
291 unsigned,
292 unsigned,
293 char far *,
294 unsigned );
295extern unsigned far pascal VIOWRTNATTR (
296 char far *,
297 unsigned,
298 unsigned,
299 unsigned,
300 unsigned );
301extern unsigned far pascal VIOWRTNCELL (
302 char far *,
303 unsigned,
304 unsigned,
305 unsigned,
306 unsigned );
307extern unsigned far pascal VIOWRTNCHAR (
308 char far *,
309 unsigned,
310 unsigned,
311 unsigned,
312 unsigned );
313extern unsigned far pascal VIOWRTTTY (
314 char far *,
315 unsigned,
316 unsigned );
317extern unsigned far pascal VIOSETANSI (
318 unsigned,
319 unsigned );
320extern unsigned far pascal VIOGETANSI (
321 unsigned far *,
322 unsigned );
323extern unsigned far pascal VIOPRTSC (
324 unsigned );
325extern unsigned far pascal VIOPRTSCTOGGLE (
326 unsigned );
327extern unsigned far pascal VIOSAVREDRAWWAIT (
328 unsigned,
329 unsigned far *,
330 unsigned );
331extern unsigned far pascal VIOSAVREDRAWUNDO (
332 unsigned,
333 unsigned,
334 unsigned );
335extern unsigned far pascal VIOMODEWAIT (
336 unsigned,
337 unsigned far *,
338 unsigned );
339extern unsigned far pascal VIOMODEUNDO (
340 unsigned,
341 unsigned,
342 unsigned );
343extern unsigned far pascal VIOSCRLOCK (
344 unsigned,
345 unsigned char far *,
346 unsigned );
347extern unsigned far pascal VIOSCRUNLOCK (
348 unsigned );
349extern unsigned far pascal VIOPOPUP (
350 unsigned far *,
351 unsigned );
352extern unsigned far pascal VIOENDPOPUP (
353 unsigned );
354extern unsigned far pascal VIOGETCONFIG (
355 unsigned,
356 struct ConfigData far *,
357 unsigned );
358extern unsigned far pascal VIOGETFONT (
359 struct VIOFONT far *,
360 unsigned );
361extern unsigned far pascal VIOGETCP (
362 unsigned,
363 unsigned far *,
364 unsigned );
365extern unsigned far pascal VIOSETCP (
366 unsigned,
367 unsigned,
368 unsigned );
369extern unsigned far pascal VIOSETFONT (
370 struct VIOFONT far *,
371 unsigned );
372extern unsigned far pascal VIOGETSTATE (
373 struct VIOSTATE far *,
374 unsigned );
375extern unsigned far pascal VIOSETSTATE (
376 struct VIOSTATE far *,
377 unsigned );
378extern unsigned far pascal MOUREGISTER (
379 char far *,
380 char far *,
381 unsigned long );
382extern unsigned far pascal MOUDEREGISTER (
383 void );
384extern unsigned far pascal MOUFLUSHQUE (
385 unsigned );
386extern unsigned far pascal MOUGETHOTKEY (
387 unsigned far *,
388 unsigned );
389extern unsigned far pascal MOUSETHOTKEY (
390 unsigned far *,
391 unsigned );
392extern unsigned far pascal MOUGETPTRPOS (
393 struct PtrLoc far *,
394 unsigned );
395extern unsigned far pascal MOUSETPTRPOS (
396 struct PtrLoc far *,
397 unsigned );
398extern unsigned far pascal MOUGETPTRSHAPE (
399 unsigned char far *,
400 struct PtrImage far *,
401 unsigned );
402extern unsigned far pascal MOUSETPTRSHAPE (
403 unsigned char far *,
404 struct PtrImage far *,
405 unsigned );
406extern unsigned far pascal MOUGETDEVSTATUS (
407 unsigned far *,
408 unsigned );
409extern unsigned far pascal MOUGETNUMBUTTONS (
410 unsigned far *,
411 unsigned );
412extern unsigned far pascal MOUGETNUMMICKEYS (
413 unsigned far *,
414 unsigned );
415extern unsigned far pascal MOUREADEVENTQUE (
416 struct EventInfo far *,
417 unsigned far *,
418 unsigned );
419extern unsigned far pascal MOUGETNUMQUEEL (
420 struct QueInfo far *,
421 unsigned );
422extern unsigned far pascal MOUGETEVENTMASK (
423 unsigned far *,
424 unsigned );
425extern unsigned far pascal MOUSETEVENTMASK (
426 unsigned far *,
427 unsigned );
428extern unsigned far pascal MOUGETSCALEFACT (
429 struct ScaleFact far *,
430 unsigned );
431extern unsigned far pascal MOUSETSCALEFACT (
432 struct ScaleFact far *,
433 unsigned );
434extern unsigned far pascal MOUOPEN (
435 char far *,
436 unsigned far * );
437extern unsigned far pascal MOUCLOSE (
438 unsigned );
439extern unsigned far pascal MOUREMOVEPTR (
440 struct NoPointer far *,
441 unsigned );
442extern unsigned far pascal MOUDRAWPTR (
443 unsigned );
444extern unsigned far pascal MOUSETDEVSTATUS (
445 unsigned far *,
446 unsigned );
447extern unsigned far pascal MOUINITREAL (
448 char far * );
449extern unsigned far pascal DOSSTARTSESSION (
450 struct StartData far *,
451 unsigned far *,
452 unsigned far * );
453extern unsigned far pascal DOSSETSESSION (
454 unsigned,
455 struct StatusData far * );
456extern unsigned far pascal DOSSELECTSESSION (
457 unsigned,
458 unsigned long );
459extern unsigned far pascal DOSSTOPSESSION (
460 unsigned,
461 unsigned,
462 unsigned long );
diff --git a/v4.0/src/H/SYSVAR.H b/v4.0/src/H/SYSVAR.H
new file mode 100644
index 0000000..4ae3094
--- /dev/null
+++ b/v4.0/src/H/SYSVAR.H
@@ -0,0 +1,30 @@
1struct sysVarsType
2{
3 long pDPB ; /* pointer to DPB chain */
4 long pSFT ; /* pointer to System File Table */
5 long pClock ; /* pointer to clock device */
6 long pCon ; /* pointer to CON device */
7 unsigned maxSec ; /* size of largest physical sector */
8 long pBuf ; /* pointer to buffer cache */
9 long pCDS ; /* pointer to Current Dirs */
10 long pFCBSFT ; /* pointer to FCB sftable */
11 unsigned cKeep ; /* number of un-recyclable FCBs */
12 char cDrv ; /* maximum number of physical drives */
13 char cCDS ; /* number of Current Dirs */
14#ifdef DOS4
15 long pDEVHLP ; /* ptr DOS DevHlp routine */
16#endif
17 long pDEV ; /* pointer to device list */
18 unsigned attrNUL ; /* attributes of NUL device */
19 unsigned stratNUL ; /* strategy entry point of NUL dev */
20 unsigned intNUL ; /* interrupt entry point of NUL dev */
21 char namNUL[8] ; /* name of NUL device */
22 char fSplice ; /* TRUE => splices are in effect */
23 unsigned ibmdos_size ; /* ;AN000; size in paragraphs */
24 long ifs_doscall ; /* ;AN000; IFS serv routine entry */
25 long ifs ; /* ;AN000; IFS header chain */
26 unsigned buffers ; /* ;AN000; BUFFERS= values (m,n) */
27 char boot_drive ; /* ;AN000; boot drive A=1 B=2... */
28 char dwmove ; /* ;AN000; 1 if 386 machine */
29} ;
30 \ No newline at end of file
diff --git a/v4.0/src/H/TYPES.H b/v4.0/src/H/TYPES.H
new file mode 100644
index 0000000..446bc1f
--- /dev/null
+++ b/v4.0/src/H/TYPES.H
@@ -0,0 +1,87 @@
1
2/* types.h - basic types
3 */
4
5#define NULL 0
6#define MAXPATHLEN 80 /* JOIN.C */
7#define MAXARG 80 /* ERRTST.C */
8#define CURDISK 0x19 /* ERRTST.C */
9#define GETVERS 0x30 /* MAIN.C */
10#define GETVARS 0x52 /* SYSVAR.C */
11#define IOCTL9 0x4409 /* ERRTST.C */
12#define SwitChr '/' /* JOIN.C & SUBST.C */
13#define PathChr '\\' /* SUBST.C */
14#define COLON ':' /* ERRTST.C */
15#define BACKSLASH '\\' /* ERRTST.C */
16#define ASCNULL '\0' /* ERRTST.C */
17
18
19#define IBMSPACE(c) ((c)==','||(c)==';'||(c)=='='||(c)==0x08||(c)==0x0a)
20#define IBMBREAK(c) ((c) == '/' || CMDSPACE((c)))
21#define CMDBREAK(c) IBMBREAK((c))
22#define CMDSPACE(c) (isspace((c)) || IBMSPACE((c)))
23
24#define SHIFT(c,v) {c--; v++;}
25
26/* The following structure is a UNIX file block that retains information
27 * about a file being accessed via the level 1 I/O functions.
28 */
29
30struct UFB
31{
32 char ufbflg ; /* flags */
33 char ufbtyp ; /* device type */
34 int ufbfh ; /* file handle */
35};
36
37#define NUFBS 20 /* number of UFBs defined */
38
39/* UFB.ufbflg definitions */
40
41#define UFB_OP 0x80 /* file is open */
42#define UFB_RA 0x40 /* reading is allowed */
43#define UFB_WA 0x20 /* writing is allowed */
44#define UFB_NT 0x10 /* access file with no translation */
45#define UFB_AP 8 /* append mode flag */
46
47/* UFB.ufbtyp definitions */
48
49#define D_DISK 0
50#define D_CON 1
51#define D_PRN 2
52#define D_AUX 3
53#define D_NULL 4
54
55#define TRUE -1
56#define FALSE 0
57
58#define SETFLAG(l,f) ((l) |= (f))
59#define TESTFLAG(v,f) (((v)&(f))!=0)
60#define RSETFLAG(l,f) ((l) &= ~(f))
61
62#define LOW(w) ((w)&0xFF)
63#define HIGH(w) LOW((w)>>8)
64#define WORD(h,l) ((LOW((h))<<8)|LOW((l)))
65
66/* buffer description for findfirst and findnext */
67
68struct findType {
69 char reserved[21]; /* reserved for start up */
70 char attr; /* attribute found */
71 unsigned int time; /* time of last modify */
72 unsigned int date; /* date of last modify */
73 long length; /* file size */
74 char name[13]; /* asciz file name */
75};
76
77/* attributes */
78#define A_RO 1 /* read only */
79#define A_H 2 /* hidden */
80#define A_S 4 /* system */
81#define A_V 8 /* volume id */
82#define A_D 16 /* directory */
83#define A_A 32 /* archive */
84
85#define A_MOD (A_RO+A_H+A_S+A_A) /* changeable attributes */
86
87#define HASATTR(a,v) TESTFLAG(a,v) /* true if a has attribute v */
diff --git a/v4.0/src/H/UTILMID.H b/v4.0/src/H/UTILMID.H
new file mode 100644
index 0000000..01fe0b0
--- /dev/null
+++ b/v4.0/src/H/UTILMID.H
@@ -0,0 +1,506 @@
1/* SCCSID = @(#)utilmid.h 10.5 87/05/22 */
2
3#define MSG_REC_FILE_NOT_FOUND 2 /* file not found */
4
5#define MSG_DCOMP_INSUFF_MEM 8 /* insufficient storage - diskcomp */
6#define MSG_DCOPY_INSUFF_MEM 8 /* insufficient storage - diskcopy */
7#define MSG_CHK_MEMORY_UNAVAIL 8 /* memory unavailable - chkdsk */
8#define MSG_REST_INSUF_MEM 8 /* insufficient memory */
9#define MSG_BACK_INSUF_MEM 8 /* insufficient mem */
10#define MSG_REC_UNABLE_ALL_MEM 8 /* unable to allocate memory */
11/* 1000 - 1004 basemid */
12/* 1005 not used */
13#define MSG_SORT_INVAL_PARA 1002 /* sort invalid parameter */
14#define MSG_SORT_NOT_ENOUGH_MEMORY 1006 /* sort file size too big */
15/* 1008 not used */
16#define MSG_SORT_READ_ERROR 30 /* error reading from disk/diskette */
17/* 1009 not used */
18#define MSG_SORT_RCD_SIZE_EXCEED 1010 /* record size exceeded */
19/* 1011 - 1014 unused */
20#define MSG_REC_ENT_BEG_REC 1015 /* Press Enter to being recover drive %1 */
21#define MSG_REC_ERROR_DRIVE 1016 /* %1 error %2 drive %3 */
22#define MSG_REC_INVAL_PARAMETER 1001 /* Invalid parameter */
23/* 1018 not used */
24#define MSG_REC_INVAL_DRIVE 1019 /* invalid drive */
25#define MSG_REC_INVAL_DRIVE_FILE 2 /* invalid drive or filename */
26/* 1020 - 1022 */
27#define MSG_REC_BYTES_RECOVERED 1023 /* %1 of %2 bytes recovered */
28#define MSG_REC_WARN_DIR_FULL 1024 /* warning directory full */
29#define MSG_REC_FILES_RECOVERED 1025 /* %1 files recovered */
30#define MSG_REC_TOO_MANY_PARAMETERS 1003 /* Too many parameters entered */
31/* 1026 - 1031 unused */
32#define MSG_REN_INVAL_NUM_PARA 1003 /* Rename invalid number of parameters */
33#define MSG_STRIKE_ANY_KEY 1032 /* press any key when ready */
34#define MSG_DIR_INVALID_DIR 3 /* Dir invalid directory */
35/* 1033 not used */
36#define MSG_COM_SEARCH_DIR_BAD 1034 /* specified command search dir bad */
37#define MSG_REN_INVAL_PATH_FILENAME 1035 /* rename invalid path or filename */
38#define MSG_DATE_INVALID 1036 /* invalid date */
39#define MSG_NO_BAT_LABEL 1039 /* batch label not found */
40#define MSG_DIR_BAD_COMMAND_OR_FILE 1041 /* bad command or filename */
41#define MSG_RMDIR_INVALID_PATH 1042 /* rmdir is bad */
42#define MSG_REN_INVALID_PARAMETER 1003 /* rename invalid parameter */
43/* 1043 not used */
44#define MSG_REN_INVALID_TIME 1044 /* rename invalid time */
45#define MSG_BAD_DOS_VER 1045 /* CMD and DOS incompat */
46#define MSG_VER_SPEC_ON_OFF 1001 /* verify and break on or off */
47/* 1046 not used */
48#define MSG_COMM_VER 1047 /* command version 5.0 */
49#define MSG_C 1048 /* c acknowledgement */
50#define MSG_FILES_COPIED 1049 /* % files copied */
51#define MSG_CURRENT_DATE 1050 /* current date is */
52#define MSG_CURRENT_TIME 1051 /* current time is */
53#define MSG_DOSWRITE_ERROR_TO_DEV 29 /* doswrite error writing to device */
54/* 1052 not used */
55#define MSG_DIR_OF 1053 /* directory of %1 */
56#define MSG_DIR 1054 /* dir */
57#define MSG_OUT_OF_ENVIRON_SPACE 1056 /* out of environment space */
58/* 1058 not used */
59#define MSG_EXEC_FAILURE 1059 /* EXEC failure */
60#define MSG_FILES_FREE 1060 /* %1 files %2 bytes free */
61#define MSG_FILE_CREATION_ERROR 1061 /* file creation error */
62/* 1062 - 1063 not used */
63#define MSG_LINES_TOO_LONG 1065 /* lines too long */
64#define MSG_CONT_LOST_BEF_COPY 1066 /* content of destination lost before */
65#define MSG_INSRT_DISK_BAT 1067 /* insert disk with batch file press key */
66#define MSG_ENTER_NEW_DATE 1068 /* Enter new date */
67#define MSG_SYNERR_NLN 1003 /* newline */
68/* 1069 not used */
69#define MSG_ENTER_NEW_TIME 1070 /* enter new line */
70#define MSG_RDR_HNDL_CREATE 1071 /* Handle creation error */
71#define MSG_ECHO_OFF 1074 /* ECHO is off */
72#define MSG_ECHO_ON 1075 /* ECHO is on */
73#define MSG_VERIFY_OFF 1076 /* Verify is off */
74#define MSG_VERIFY_ON 1077 /* Verify is on */
75#define MSG_CANNOT_COPIED_ONTO_SELF 1078 /* message cannot be copied onto self */
76#define MSG_SYNERR_GENL 1079 /* syntax error general */
77#define MSG_TOP_LEVEL_PROCESS_CAN 1081 /* top level process aborted, cannot con */
78#define MSG_PID_IS 1082 /* pid is %1 */
79#define MSG_DUP_FILENAME_OR_NOT_FD 1083 /* duplicate filename or file not found */
80#define MSG_ARE_YOU_SURE 1084 /* Are you sure (Y/N)? */
81#define MSG_SET_SYNTAX_ERROR 1003 /* syntax error on set command */
82/* 1085 not used */
83#define MSG_TOKEN_TOO_LONG 1086 /* token too long */
84#define MSG_PROG_TOO_BIG_MEM 8 /* program is too big to fit into memory */
85/* 1087 not used */
86#define MSG_MS_DOS_VERSION 1090 /* cp-dos version %1 %2 */
87#define MSG_PIPE_FAILURE 1092 /* pipeline failure %1 */
88#define MSG_MS_MORE 1093 /* more? */
89/* 1094 - 1100 unused */
90#define MSG_BAD_VERSION 1210 /* bad dos version - join */
91#define MSG_JS_INCOR_SYNT 1003 /* bad join syntax */
92/* 1001 not used */
93#define MSG_JOIN_CANNOT_CREAT_DIR 82 /* cannot create directory */
94/* 1102 not used */
95#define MSG_SUBST_CANNOT_ACCPT_DIR 1103 /* cannot accept directory - join */
96#define MSG_JOIN_LIST 1104 /* join is joined */
97#define MSG_SUBST_LIST 1105 /* subst is substituted */
98/* 1106 not used */
99#define MSG_REAL_MODE_ONLY 1107 /* app run in real mode only */
100/* 1108 - 1135 unused */
101#define MSG_REP_INCOR_VERSION 1135 /* incorrect dos version replace */
102#define MSG_REP_INCOR_PARA 1002 /* incorrect parameters replace */
103/* 1136 not used */
104#define MSG_REP_SOUR_PATH_REQ 1137 /* source path required replace */
105#define MSG_REP_PARA_NOT_COMP 1003 /* parameters not compatible */
106/* 1138 not used */
107#define MSG_REP_ENTER_ADD_FILE 1139 /* press enter to add file */
108#define MSG_REP_ENTER_REPLACE_FILE 1140 /* press enter replace file */
109#define MSG_REP_NO_FILES_FOUND 1141 /* no files found replace */
110#define MSG_REP_FILE_NOT_COPY_SELF 1078 /* file cannot be copied to self %1 */
111/* 1142 - 1144 not used */
112#define MSG_REP_NOT_FOUND 2 /* file not found %1 */
113#define MSG_REP_PATH_REQ_NOT_FOUND 3 /* path requested not found */
114#define MSG_REP_ACCESS_DENIED 1145 /* access to %1 denied */
115#define MSG_REP_DRIVE 15 /* drive rep incorrect */
116/* 1146 - 1147 not used */
117#define MSG_REP_NO_FILES_ADDED 1148 /* no files added. */
118#define MSG_REP_FILES_ADDED 1149 /* files %1 added. */
119#define MSG_REP_NO_FILES_REP 1150 /* no files replaced */
120#define MSG_REP_FILES_REP 1151 /* files %1 replaced */
121#define MSG_REP_ADD 1152 /* add %1 y/n */
122#define MSG_REP_FILES 1153 /* want to replace %1 */
123#define MSG_REP_ADDING_FILES 1154 /* adding %1 files */
124#define MSG_REP 1155 /* replacing %1 files */
125/* 1156 - 1160 unused */
126#define MSG_COMP_COMPARE_MORE 1161 /* compare more files */
127#define MSG_COMP_ENTER_FILE_1ST 1162 /* enter primary filename */
128#define MSG_COMP_ENTER_FILE_2ND 1163 /* enter 2nd filename or drive letter */
129#define MSG_COMP_COMPARE_OK 1164 /* files compare ok */
130#define MSG_COMP_END_COMPARE 1165 /* 10 mismatches ending compare */
131#define MSG_COMP_FILE2_BYTE 1166 /* file2 = %0 */
132#define MSG_COMP_FILE1_BYTE 1167 /* file 1 = %0 */
133#define MSG_COMP_FILE_OFFSET 1168 /* compare error at offset %0 */
134#define MSG_COMP_LENGTH_MISMATCH 1169 /* files are different sizes */
135#define MSG_COMP_1ST_2ND_FILENAMES 1170 /* %1 and %2 */
136#define MSG_COMP_INVALID_PATH 1171 /* invalid path */
137#define MSG_COMP_FILE_NOT_FOUND 1490 /* %1 file not found */
138#define MSG_COMP_INVALID_DRIVE 15 /* invalid drive */
139#define MSG_COMP_INVALID_DOSVER 1210 /* invalid dos version */
140/* 1172 - 1179 unused */
141#define MSG_MOUSE_PARA_MOD 1180 /* parameters modified */
142#define MSG_MOUSE_NOT_LOADED 1181 /* mouse device driver version not load */
143#define MSG_MOUSE_LOADED 1183 /* mouse loaded */
144#define MSG_XCOPY_ITSELF 1184 /* cannot copy itself */
145#define MSG_XCOPY_INTERNAL_ERROR 1185 /* internal error */
146#define MSG_XCOPY_NO_OPEN_SOURCE 1186 /* no source open */
147#define MSG_XCOPY_NO_OPEN_TARGET 1187 /* no target open */
148#define MSG_XCOPY_NO_READ_SOURCE 1186 /* no read source */
149/* 1188 not used */
150#define MSG_XCOPY_NO_CLOSE_SOURCE 1189 /* close source */
151#define MSG_XCOPY_NO_CLOSE_TARGET 1189 /* no close target */
152/* 1190 - 1191 not used */
153#define MSG_XCOPY_NO_WRITE_TARGET 1187 /* no write target */
154#define MSG_XCOPY_NO_ACCESS_SOURCE 1192 /* no access source */
155#define MSG_XCOPY_NO_ACCESS_TARGET 1192 /* no access target */
156/* 1193 not used */
157#define MSG_XCOPY_INVALID_DATE 1036 /* invalid date */
158/* 1194 - 1207 basemid */
159#define MSG_ENTER_JAPAN_DATE 1208 /* enter the new date yy-mm-dd */
160#define MSG_ENTER_DEF_DATE 1209 /* enter the new date dd-mm-yy */
161#define MSG_INCORRECT_DOSVER 1210 /* incorrect dos version */
162#define MSG_SAD_INV_DOS 1210 /* invalid dos version - created */
163#define MSG_STCP_INV_DOS 1210 /* trace only in >= dos - trace */
164#define MSG_INVALID_DOS_PRINT 1210 /* incorrect dos version */
165#define MSG_TREE_INV_DOSVER 1210 /* incorrect DOS version */
166#define MSG_INVAL_DOS_VERSION 1210 /* invalid DOS version */
167#define MSG_REST_INVAL_VERS 1210 /* invalid dos version not 1.0 */
168#define MSG_BACK_INCOR_DOS_VER 1210 /* inval dos ver */
169#define MSG_REP_INCOR_DOS_VERSION 1210 /* incorrect dos version replace */
170#define MSG_ABORT_RETRY_IGNORE 1211 /* abort, retry, or ignore */
171#define MSG_REC_ABORT_RETRY_IGNORE 1211 /* abort, retry, ignore */
172#define MSG_PRESS_ANY_KEY 1212 /* press any key when ready */
173/* 1213 - 1215 not used */
174#define MSG_DCOMP_INV_PARM 1001 /* invalid parameter - diskcomp */
175/* 1230 not used */
176#define MSG_DCOMP_INV_DRIVE 1231 /* invalid drive - diskcomp */
177#define MSG_DCOPY_INV_DRV 1231 /* invalid drive - diskcopy */
178#define MSG_DCOMP_INSERT_FIRST 1232 /* insert first disk - diskcomp */
179#define MSG_DCOPY_INSERT_SRC 1232 /* insert source disk - diskcopy */
180#define MSG_DCOMP_INSERT_SECOND 1233 /* insert second disk - diskcomp */
181#define MSG_DCOPY_INSERT_TARG 1233 /* insert target disk - diskcopy */
182#define MSG_DCOMP_DISK1_BAD 1234 /* first disk bad - diskcomp */
183#define MSG_DCOMP_DISK2_BAD 1235 /* second disk bad - diskcomp */
184/* 1236 - 1237 not used */
185#define MSG_DCOMP_REPEAT_COMP 1238 /* compare another? - diskcomp */
186#define MSG_DCOMP_COMPARING 1239 /* comparing ... - diskcomp */
187#define MSG_DCOMP_DRV_INCOMPAT 1240 /* drive incompatible - diskcomp */
188#define MSG_DCOPY_COPYING 1240 /* copying ... - diskcopy */
189#define MSG_DCOMP_COMPARE_ERROR 1242 /* compare error - diskcomp */
190/* 1243 not used */
191#define MSG_DCOMP_COMPARE_ENDED 1244 /* compare ended - diskcomp */
192#define MSG_DCOMP_COMPARE_OK 1245 /* compare ok - diskcomp */
193#define MSG_DCOMP_ENTER_SRC 1246 /* source drive letter - diskcomp/copy */
194#define MSG_DCOMP_ENTER_TARG 1247 /* target drive letter - diskcomp/copy */
195/* 1248 not used */
196#define MSG_DCOPY_FORMATTING 1252 /* copying while formatting - diskcopy */
197#define MSG_DCOPY_TARG_NOUSE 1255 /* target disk possibly bad - diskcopy */
198/* 1256 not used */
199#define MSG_DCOPY_COPY_ANOTHER 1259 /* copy another? - diskcopy */
200#define MSG_DCOPY_COPY_TRACKS 1260 /* copy tracks */
201/* 1261 - 1262 not used */
202#define MSG_DCOPY_READ_ERROR 1264 /* read error - diskcopy */
203#define MSG_DCOPY_UNREC_RDERR 1265 /* unrecoverable read error - diskcopy */
204#define MSG_DCOPY_COPY_ENDED 1266 /* copy ended - diskcopy */
205/* 1267 - 1269 not used */
206#define MSG_FMT_INS_NEW_DISK 1270 /* insert new disk - format */
207#define MSG_FMT_DISK_WARNING 1271 /* fixed disk warning - format */
208#define MSG_FMT_SYS_XFERED 1272 /* system transferred - format */
209#define MSG_FMT_ANOTHER 1273 /* format another - format */
210#define MSG_FMT_INV_VOLUME 123 /* invalid volume name - format */
211/* 1274 - 1275 not used */
212#define MSG_FMT_INV_PARAMETER 1276 /* invalid parameter - format */
213#define MSG_FMT_REINSERT_DISK 1277 /* reinsert target disk - format */
214#define MSG_FMT_INSERT_DOS 1278 /* reinsert system disk - format */
215#define MSG_FMT_FORMAT_FAIL 1279 /* format failure - format */
216#define MSG_FMT_DISK_UNSUIT 1280 /* disk unsuitable for system - format */
217#define MSG_FMT_INV_MEDIA 1281 /* invalid media - format */
218#define MSG_FMT_INSUFF_STORAGE 8 /* insufficient storage - format */
219/* 1282 not used */
220#define MSG_FMT_DISK_SPACE 1283 /* disk space available - format */
221#define MSG_FMT_BYTES_USED 1284 /* bytes used - format */
222#define MSG_FMT_BYTES_BAD 1285 /* bytes in bad sectors - format */
223#define MSG_FMT_BYTES_AVAIL 1286 /* bytes available - format */
224#define MSG_FMT_VOLUME_PROMPT 1288 /* enter volume name - format */
225/* 1289 not used */
226#define MSG_FMT_NO_SYS_TRANS 1290 /* system cannot transfer */
227#define MSG_FMT_DOS_DISK_ERR 1291 /* dos disk error - format */
228#define MSG_FMT_NONSYS_DISK 1292 /* non-system disk - format */
229/* 1283 not used */
230#define MSG_FMT_COMPLETE 1294 /* format complete - format */
231#define MSG_FMT_WP_VIOLATION 1295 /* write protect violation - format */
232#define MSG_FMT_NO_WRITE_BOOT 1296 /* unable to write boot - format */
233#define MSG_FMT_INCOMPAT_DISK 1297 /* incompatible parms for disk - format */
234#define MSG_FMT_PARM_INCOMPAT 1298 /* incompatible parameter - format */
235#define MSG_FMT_DRV_NOT_READY 1299 /* drive not ready - format */
236/* 1300 - 1301 not used */
237#define MSG_FMT_HEAD_CYL 1302 /* head/cylinder - format */
238#define MSG_FMT_NOT_SUPPORTED 1303 /* format not supported - format */
239/* 1304 - 1306 not used */
240#define MSG_FMT_FAT_ERROR 1307 /* error writing fat - format */
241#define MSG_FMT_DIR_WRTERR 1308 /* error writing directory - format */
242#define MSG_FMT_DRIVE_LETTER 1310 /* drive letter must be specified */
243#define MSG_FMT_SYS_FILES 1311 /* cannot find system files - format */
244/* 1312 not used */
245#define MSG_FMT_BAD_PARTITION 1313 /* bad partition table - format */
246/* 1314 not used */
247#define MSG_FMT_UNSUPP_PARMS 1316 /* parameters not supported - format */
248#define MSG_FMT_WHAT_IS_VOLID 1318 /* enter current volume label for dr %1 */
249#define MSG_FMT_BAD_VOLID 1319 /* incorrect volume label for drive %1 */
250#define MSG_FMT_TBL_ERR 1320 /* format.tbl missing or an error */
251#define MSG_FMT_TRANSFER 1321 /* format transferred */
252#define MSG_FMT_DEFAULT_PARM 1322 /* default parameters /n or /t */
253#define MSG_CHK_REAL_MODE_MEM_RPT 1327 /* real mode memory report */
254#define MSG_CHK_NON_CONT_BLOCKS 1328 /* non-contig blocks */
255#define MSG_CHK_SPEC_FILE_CONT 1329 /* specified files are contig */
256#define MSG_CHK_INVALID_PARM 1330 /* invalid parameter - chkdsk */
257#define MSG_CHK_DISK_OPEN_ERR 1331 /* cannot open disk error - chkdsk */
258#define MSG_CHK_DISK_LOCK_ERR 1332 /* cannot lock disk error - chkdsk */
259#define MSG_CHK_INVALID_DRIVE 1333 /* invalid drive specification - chkdsk */
260#define MSG_CHK_FAT_READ 1336 /* error reading FAT - chkdsk */
261#define MSG_CHK_FAT_WRITE 1337 /* error writing FAT - chkdsk */
262#define MSG_CHK_DIRECTORY 1338 /* directory - chkdsk */
263#define MSG_CHK_NO_SLASHF 1339 /* errors found, no /F - chkdsk */
264#define MSG_CHK_INV_CLUSTER 1340 /* invalid cluster - chkdsk */
265#define MSG_CHK_INV_CURDIR 1341 /* invalid current dir - chkdsk */
266#define MSG_CHK_ALLOC_ERR 1342 /* allocation error - chkdsk */
267#define MSG_CHK_CROSSLINK 1343 /* files cross linked - chkdsk */
268#define MSG_CHK_1ST_CLUSTER 1344 /* first cluster bad - chkdsk */
269#define MSG_CHK_UNREC_DIRERR 1345 /* unrecoverable dir error - chkdsk */
270#define MSG_CHK_CONVERT 1346 /* conver directory? - chkdsk */
271#define MSG_CHK_DIR_EMPTY 1347 /* directory empty - chkdsk */
272#define MSG_CHK_INV_SUBDIR 1349 /* invalid subdirectory - chkdsk */
273#define MSG_CHK_NO_REC_DOT 1350 /* can't recover . entry - chkdsk */
274#define MSG_CHK_NO_REC_DOTDOT 1351 /* can't recover .. entry - chkdsk */
275#define MSG_CHK_BAD_LINK 1352 /* bad link - chkdsk */
276#define MSG_CHK_BAD_ATTRIB 1352 /* bad file attribute - chkdsk */
277#define MSG_CHK_BAD_SIZE 1352 /* bad file size - chkdsk */
278/* 1353 - 1354 not used */
279#define MSG_CHK_NOT_EXIST 1355 /* file does not exist - chkdsk */
280#define MSG_CHK_LOST_CLUSTERS 1356 /* lost clusters - chkdsk */
281#define MSG_CHK_SPACE_FREED 1358 /* space freed - chkdsk */
282#define MSG_CHK_SPACE_POSSIBLE 1359 /* space available - chkdsk */
283#define MSG_CHK_NOROOM_ROOT 1360 /* no room in root - chkdsk */
284#define MSG_CHK_DISK_TOTAL 1361 /* total space on disk - chkdsk */
285#define MSG_CHK_BAD_SECTORS 1362 /* bad sectors - chkdsk */
286#define MSG_CHK_HIDDEN_TOTAL 1363 /* hidden file total - chkdsk */
287#define MSG_CHK_DIR_TOTAL 1364 /* directory total - chkdsk */
288#define MSG_CHK_FILE_TOTAL 1365 /* file total - chkdsk */
289#define MSG_CHK_RECOVER_TOTAL 1366 /* recovered total - chkdsk */
290#define MSG_CHK_BYTES_POSSIBLE 1367 /* bytes possible - chkdsk */
291#define MSG_CHK_BYTES_AVAIL 1368 /* bytes available - chkdsk */
292#define MSG_CHK_PROCESS_STOP 1373 /* can't continue - chkdsk */
293#define MSG_CHK_FAT_BAD 1374 /* bad fat - chkdsk */
294#define MSG_CHK_VOL_CREATE 1375 /* can't create volume - chkdsk */
295#define MSG_CHK_ERR_WRITE_DIR 1376 /* can't write directory - chkdsk */
296#define MSG_CHK_ROOT_BAD_DRV 1377 /* root directory bad - chkdsk */
297#define MSG_CHK_NON_DOS 1379 /* probable non-dos disk - chkdsk */
298#define MSG_CHK_ERR_READ_DIR 1380 /* can't read dir - chkdsk */
299#define MSG_SAD_DUMPING 1381 /* dump in process */
300#define MSG_SAD_INSERT_NEXT 1382 /* current dump diskette filled */
301#define MSG_SAD_DISK_ERROR 1383 /* error with diskette, insert another */
302#define MSG_SAD_REINSERT 1384 /* insert dump diskette #1 */
303#define MSG_SAD_DISK_OVERWRITE 1385 /* disk will be overwritten - created */
304#define MSG_SAD_API_ERR 1386 /* api error - createdd */
305#define MSG_SAD_INV_DRIVE 15 /* invalid drive parm - createdd */
306#define MSG_SAD_USED_ONCE 1388 /* dump data is already on the diskette */
307#define MSG_SAD_HIGH_CAPACITY 1389 /* high capacity diskette */
308#define MSG_SAD_PRO_TERM_USER 1390 /* progm is end by user - createdd */
309#define MSG_SAD_COMPLETE 1391 /* dump complete remove and reboot */
310#define MSG_SAD_NOT_CONTIG 1392 /* not enough contiguous - createdd */
311#define MSG_SAD_MEM_RANGE 1393 /* memory address ranges on this disk ar */
312/* 1395 basemid */
313#define MSG_SAD_INSERT_NEW 1396 /* insert new dump disk - rascrv */
314#define MSG_STCP_NOT_EXIST 1397 /* sys trace does not exist - trace */
315#define MSG_STCP_INV_ON_OFF 1399 /* invalid or missing on/off - trace */
316#define MSG_STCP_EC_RANGE 1400 /* out of range event code - trace */
317#define MSG_STCP_EC_INVALID 1401 /* event codes invalid - trace */
318/* 1402 - 1405 not used */
319#define MSG_DFMT_ENTER 1406 /* enter to continue - dumpfmtr */
320/* 1407 - 1424 not used */
321#define MSG_SAD_INS_PROPER 31 /* diskette error, ensure diskette inser */
322#define MSG_SAD_WRITE_PROTECT 19 /* diskette error, write protect tab */
323#define MSG_SPOOL_WTRUNC_ERROR 1425 /* cannot release filling file - print */
324#define MSG_SPOOL_OPEN_ERROR 1426 /* cannot delete filling file - print */
325#define MSG_SPOOL_SIG_ERROR 1427 /* cannot delete printing file - print */
326#define MSG_SPOOL_MACH_ERROR 1428 /* cannot hold filling file - print */
327#define MSG_SPOOL_RUN_PRINT_DATA 1429 /* spool running with print data redir */
328#define MSG_SPOOL_RUN_DEVICE 1430 /* spool print run on device */
329#define MSG_SPOOL_INV_PARA 1001 /* spooler invalid parameter */
330#define MSG_SPOOL_INV_DEVICE 15 /* spool invalid device */
331/* 1431 - 1432 not used */
332#define MSG_SPOOL_INV_INPAR 1433 /* spool inval input device para */
333#define MSG_SPOOL_INV_OUTPAR 1434 /* spool inval output device para */
334
335#define MSG_SPOOL_INV_DIRPARM 1435 /* spool inval subdirectory */
336#define MSG_SPOOL_INT_ERROR 8 /* spool internal error */
337/* 1436 not used */
338#define MSG_SPOOL_DISK_FULL 1437 /* spool disk full */
339#define MSG_SPOOL_CURR_CAN_OPER 1438 /* spooler current cancelled by operator */
340#define MSG_SPOOL_ALL_CAN_OPER 1439 /* spooler cancelled by operator */
341/* 1440 not used */
342#define MSG_SPOOL_SHAR_VIOLAT 1441 /* spool share violation */
343#define MSG_SPOOL_ALREADY_RUN 1442 /* spool is already running for device */
344#define MSG_SPOOL_DISK_IS_FULL 112 /* spool disk is full action different */
345/* 1443 - 1455 not used */
346#define MSG_SPOOL_DK_FULL 1437 /* spool disk is full action different */
347#define MSG_SYS_NO_ROOM 1456 /* no room for system on disk - sys */
348#define MSG_SYS_BAD_TRANS 1457 /* could not transfer files - sys */
349#define MSG_SYS_NO_SYSTEM 1458 /* no system on default drive - sys */
350#define MSG_SYS_TARGET_DRIVE_IN_USE 21 /* drive in use by another process -sys */
351#define MSG_SYS_INTERNAL_ERROR 1459 /* internal error in sys -sys */
352/* 1460 not used */
353#define MSG_SYS_INV_PARM 1460 /* invalid parameter - sys */
354#define MSG_SYS_INV_DRIVE 1461 /* invalid drive - sys */
355#define MSG_SYS_TRANSFERRED 1272 /* system transferred - sys */
356#define MSG_FDISK_INV_PART_TABLE 1462 /* invalid partition table */
357#define MSG_FDISK_ERR_LOADING_OS 1463 /* error loading operating system */
358#define MSG_FDISK_ERR_MISSING_OS 1464 /* missing operating system */
359#define MSG_VDISK_INV_PARM 1465 /* invalid parameter - vdisk */
360#define MSG_VDISK_INSUFF_MEM 1466 /* insufficient memory - vdisk */
361#define MSG_VDISK_REPORT 1467 /* vdisk summary - vdisk */
362#define MSG_SES_MGR_TERM 1468 /* session manager terminate ignore */
363#define MSG_SES_MGR_MENU 1469 /* session manager menu */
364/* */
365/* 1470-1474 are for swapper and are in basemid.inc */
366/* */
367#define MSG_TREE_INV_PARM 1001 /* invalid parameter */
368/* 1475 - 1477 not used */
369#define MSG_TREE_INV_DRIVE 15 /* invalid drive specification */
370#define MSG_TREE_INV_PATH 1478 /* invalid path */
371#define MSG_TREE_TOP_HEADER 1479 /* DIRECTORY PATH LISTING */
372#define MSG_TREE_PATHNAME 1480 /* Path: %1 */
373#define MSG_TREE_SUBDIR_HEADER 1481 /* Sub-directories: %1 */
374#define MSG_TREE_FILE_HEADER 1482 /* Files: %1 */
375#define MSG_TREE_NONE_FILE 1483 /* Files: None */
376#define MSG_TREE_NONE_SUBDIR 1484 /* Sub-directories: None */
377#define MSG_TREE_FILENAME 1485 /* %1 */
378#define MSG_TREE_NO_SUBDIR_EXIST 1486 /* subdirectory does not exist */
379#define MSG_HELP_BAD_MID 1487 /* Invalid message id */
380#define MSG_HELP_MID_LARGE 1488 /* Message id too large */
381#define MSG_HELP_SYNTAX 1489 /* Syntax error */
382#define MSG_FIND_FILE_NOT_FOUND 1490 /* FIND file not found %1 */
383#define MSG_SYNTAX_ERR_FIND 1003 /* FIND syntax error */
384#define MSG_INVALID_P_NUM 1003 /* invalid number of parameters */
385/* 1491 - 1492 not used */
386#define MSG_HELP_NO_HELP 1493 /* No help available */
387#define MSG_READ_ERROR_FIND 31 /* FIND read error */
388/* 1494 - 1496 not used */
389#define MSG_INVALID_PARM_FIND 1002 /* FIND invalid parameter */
390#define MSG_PATH_NOT_FIND 3 /* path not found */
391/* 1497 - 1499 not used */
392#define MSG_VDISK_NO_DRIVES 1505 /* no drive letters for vdisk */
393/* 1506 - 1508 unused */
394#define MSG_INVALID_DR_LABEL 15 /* invalid drive specification %1 */
395/* 1509- 1511 unused */
396#define MSG_INVALID_LABEL 123 /* inval charact. in volume label */
397/* 1512 - 1513 unused */
398#define MSG_HAS_NO_LABEL 1514 /* volume in drive x has no label */
399#define MSG_GET_NEW_LABEL 1515 /* volume label (11 char) ent for none % */
400#define MSG_DR_VOL_LABEL 1516 /* volume in drive X is */
401/* 1517 - 1523 in basemid.inc */
402#define MSG_PRINT_INV_PARM 1525 /* invalid command line parameter */
403#define MSG_PRINT_TOO_MANY 1526 /* too many command line param entered */
404/* 1528 not used */
405#define MSG_PRINT_INV_DEVICE 1529 /* invalid printer device */
406#define MSG_PRINT_WRITE_ERROR 28 /* error occurred on the printer */
407/* 1530 not used */
408#define MSG_PRINT_NO_SPOOL 1531 /* spooler not running */
409#define MSG_PRINT_REAL_MODE 1532 /* spooler runs only in protect mode */
410#define MSG_PRINT_FILE_NOT_FOUND 1533 /* file not found */
411#define MSG_FDISK_MAIN_INTRO 1534 /* fdisk setup */
412#define MSG_FDISK_MAIN_MENU 1535 /* FDISK options */
413#define MSG_FDISK_MAIN_NEXTFDISK 1536 /* 5. Select next fixed disk drive */
414#define MSG_FDISK_MAIN_PROMPT 1537 /* Enter choice: */
415#define MSG_FDISK_CHANGE_CANTACT 1538 /* table partition can't be made active */
416#define MSG_FDISK_CHANGE_CURACT 1539 /* current active partition is %1 */
417#define MSG_FDISK_CHANGE_DONE 1540 /* partition %1 made active */
418#define MSG_FDISK_CHANGE_NOPART 1541 /* No partitions to make active */
419#define MSG_FDISK_CHANGE_1PART 1542 /* Partition 1 is already active */
420#define MSG_FDISK_CHANGE_PROMPT 1543 /* Enter the number of the partition you */
421#define MSG_FDISK_CHANGE_TITLE 1544 /* change active partition */
422#define MSG_FDISK_CREATE_DONE 1545 /* DOS partition created */
423#define MSG_FDISK_CREATE_NOSPACE 1546 /* No space for a %1 partition */
424#define MSG_FDISK_CREATE_NOSPATHE 1547 /* No space for %1 cylinder at cyl%2 */
425#define MSG_FDISK_CREATE_NOSPAFDOS 1548 /* No space to create a DOS partition */
426#define MSG_FDISK_CREATE_PARTEXISTS 1549 /* fixed disk already has a dos partit */
427#define MSG_FDISK_CREATE_SIZEPROMPT 1550 /* Enter partition size... */
428#define MSG_FDISK_CREATE_SPACEAT 1551 /* Max avail space is %1 cyl at %2. */
429#define MSG_FDISK_CREATE_STARTPROMP 1552 /* enter starting cylinder number... */
430#define MSG_FDISK_CREATE_TITLE 1553 /* create DOS partition */
431#define MSG_FDISK_CREATE_WHOLEDISK 1554 /* Do you want to use the entire fd y/n */
432#define MSG_FDISK_DELETE_DONE 1555 /* DOS partition deleted */
433#define MSG_FDISK_DELETE_NOPART 1556 /* No DOS partition to delete */
434#define MSG_FDISK_DELETE_PROMPT 1557 /* Warning! Data in the DOS part lost */
435#define MSG_FDISK_DELETE_TITLE 1558 /* Delete DOS partition yn */
436#define MSG_FDISK_DISPLAY_FDISKSIZE 1559 /* Total disk space is %1 cylinders. */
437#define MSG_FDISK_DISPLAY_NOPARTS 1560 /* No partitions defined */
438#define MSG_FDISK_DISPLAY_PARTINFO 1561 /* Partition status type start endsize */
439#define MSG_FDISK_DISPLAY_TITLE 1562 /* Display partition information */
440#define MSG_FDISK_ERR_INVALIDNUMBER 1563 /* %1 is not a choice. Please enter a c */
441#define MSG_FDISK_ERR_INVALIDYN 1564 /* %1 is not a choice. Please enter yn */
442#define MSG_FDISK_ERR_NOFDISKS 1565 /* no fixed disks present */
443#define MSG_FDISK_ERR_READ 1566 /* error reading fixed disk */
444#define MSG_FDISK_ERR_WRITE 1567 /* error writing fixed disk */
445#define MSG_FDISK_CURRENTDISK 1568 /* current fixed disk drive %1 */
446#define MSG_FDISK_PRESSESC 1569 /* press esc to return to fdisk options */
447#define MSG_FDISK_MUST_RESTART 1570 /* must restart */
448#define MSG_FDISK_IN_USE 1571 /* fixed disk in use */
449/* 1572 - 1574 unused */
450#define MSG_PATCH_INV_NUM_PARMS 1575 /*invalid number of parameters */
451#define MSG_PATCH_INV_PARM 1575 /* invalid parameter %1%2 */
452/* 1576 not used */
453#define MSG_PATCH_NO_CTL 1490 /* cannot open patch control file %1 */
454#define MSG_PATCH_NO_EXE_FILE 1490 /* cannot open %1 to patch */
455/* 1577 - 1578 not used */
456#define MSG_PATCH_PATCHING 1579 /* patching %1 */
457#define MSG_PATCH_CONTINUE 1580 /* continue patching %1? Y/N */
458#define MSG_PATCH_NO_PATCHES 1581 /* No patches applied */
459#define MSG_PATCH_PATCHES_ENTERED 1582 /* Patches entered for %1 */
460#define MSG_PATCH_OK_TO_PATCH 1583 /* should these patches be appl to %1? */
461#define MSG_PATCH_APPLIED 1584 /* patches applied to %1 */
462#define MSG_PATCH_NOT_APPLIED 1585 /* No patches applied to %1 */
463#define MSG_PATCH_CURRENT_EOF 1586 /* Current end of file is at %1 */
464#define MSG_PATCH_OFFSET_PROMPT 1587 /* enter offset in hex of patch > */
465#define MSG_PATCH_PAST_EOF_INT 1588 /* offset is past end of file */
466#define MSG_PATCH_CANT_ALLOC 1589 /* Insufficient memory to save pat inf */
467#define MSG_PATCH_NO_FILE 1590 /* no file to patch fond in pat con %1 */
468#define MSG_PATCH_INV_CMD_COMBO 1591 /* %1 command found without a %2 cmd */
469#define MSG_PATCH_INV_OFFSET 1592 /* %1 is not a valid offset for file %2 */
470#define MSG_PATCH_INV_BYTES 1593 /* %1 is not a valid %2 byte stg for%3 */
471#define MSG_PATCH_TOO_NEAR_EOF 1594 /* offset %1 for %2 too near orpst%3%4 */
472#define MSG_PATCH_VERIFY_FAILED 1595 /* verification failed for %1 */
473/* 1596 not used */
474#define MSG_PATCH_PAST_EOF_AUTO 1597 /* ofst given %1 ofr %2 eof %3 */
475#define MSG_PATCH_UNKNOWN_CMD 1598 /* unknown command */
476#define MSG_PATCH_CANT_APPEND 1599 /* cannot append */
477#define MSG_PATCH_NO_REQUEST 1600 /* no patch request specified */
478#define MSG_MODE_INVAL_PARMS 1601 /* invalid number of parameters */
479#define MSG_MODE_CPL_SET 1602 /* characters per line has been set */
480#define MSG_MODE_LPI_SET 1603 /* lines per inch have been set */
481#define MSG_MODE_INF_RET_SET 1604 /* infinite has been set */
482#define MSG_MORE 1605 /* -- More -- */
483#define MSG_MODE_INF_RET_RESET 1606 /* infinite retry reset */
484#define MSG_MODE_DEVICE_NAME 1607 /* invalid device name */
485#define MSG_PRINT_ERROR 29 /* printer error */
486/* 1608 not used */
487#define MSG_MODE_ASYNC_SET 1609 /* async protocol set */
488/* 1610 not used */
489#define MSG_MODE_NO_REDIR 1611 /* mode cannot direct output */
490/* 1612 not used */
491#define MSG_INVALID_PARITY 1613 /* open parity */
492#define MSG_INVALID_DATABITS 1614 /* invalid databits */
493#define MSG_INVALID_STOPBITS 1615 /* invalid stopbits */
494#define MSG_INVALID_BAUD_RATE 1616 /* invalid baud rate */
495#define MSG_INVALID_CHAR_PER_LINE 1617 /* invalid characters per line */
496#define MSG_INVALID_LINES_PER_INCH 1618 /* invalid lines per inch */
497#define MSG_INVALID_SYNTAX 1601 /* invalid syntax */
498/* 1619 - 1621 not used */
499#define MSG_MODE_OUT_RANGE 1622 /* mode out of range */
500#define MSG_MODE_INV_PARM 1601 /* invalid parameter */
501/* 1623 - 1625 unused */
502#define MSG_INVAL_PARAMETER 1002 /* invalid parameter attrib */
503#define MSG_FILEN_REQUIRED 2 /* filename required attrib */
504/* 1626 - 1627 unused */
505#define MSG_UNEX_DOS_ERROR 1628 /* unexpected dos error */
506/* 1629 - 1633 unused */
diff --git a/v4.0/src/H/UTILMID2.H b/v4.0/src/H/UTILMID2.H
new file mode 100644
index 0000000..6439848
--- /dev/null
+++ b/v4.0/src/H/UTILMID2.H
@@ -0,0 +1,208 @@
1/* SCCSID = @(#)utilmid2.h 5.18 87/05/05 */
2
3#define MSG_REST_FILE_FROM 1634 /* restore file from % 1 %2 */
4#define MSG_INS_BACKUP_DISK 1635 /* insert backup %1 in drive %2 */
5#define MSG_REST_DISK_OUT_SEQ 1636 /* diskette out of seq press key */
6#define MSG_REST_FILE_READ 1637 /* Warning file %1 read only */
7#define MSG_REST_CHNG_REPL 1638 /* file was changed after backup */
8#define MSG_REST_SYS 1639 /* system files restored */
9#define MSG_REST_FILE_BACKUP 1640 /* files were backed up */
10#define MSG_REST_FILENAME 1641 /* filename restored */
11#define MSG_REST_SOUR_TARG_SAME 1642 /* source and target are same */
12#define MSG_REST_NUM_INVAL_PARA 1643 /* invalid number of para restore */
13#define MSG_REST_INVAL_SPEC 15 /* invalid drive */
14/* 1744 not used */
15#define MSG_REST_NO_FILE_FOUND 1645 /* not files found to restore */
16#define MSG_REST_INVAL_PARA 1002 /* invalid parameter %1 */
17#define MSG_REST_FILE_SHAR 1642 /* sharing conflict */
18/* 1646 - 1647 not used */
19#define MSG_REST_LAST_FILE_NOT 1648 /* last file not restored */
20#define MSG_REST_SOURCE_NO_BACK 1649 /* source does not contain backup files */
21#define MSG_REST_FILE_SEQ_ERROR 1651 /* sequence file out of sequence */
22#define MSG_REST_FILE_CREAT_ERROR 110 /* file creation error */
23/* 1652 - 1654 not used */
24#define MSG_REST_TARG_FULL 112 /* Target is full */
25#define MSG_REST_CANNOT_REST_FILE 1655 /* cannot restore file */
26#define MSG_REST_DISKETTE 1656 /* diskette %1 */
27#define MSG_REST_TARG_DISK 1657 /* insert targ disk in drive %1 */
28/* 1658 - 1663 unused */
29#define MSG_BACK_NUM_INVAL_PARA 1665 /* inval number of parameters */
30#define MSG_BACK_ERROR_LOG_FILE 1664 /* error writing log file */
31#define MSG_BACK_INVAL_PARA 1001 /* inval parameter */
32/* 1666 not used */
33#define MSG_BACK_NO_DRIV_SPEC 1667 /* no drive spec */
34#define MSG_BACK_NO_TARG_SPEC 1668 /* no target specified */
35#define MSG_BACK_INVAL_PATH 3 /* inval path */
36/* 1079 - 1670 not used */
37#define MSG_BACK_SOUR_TARG_SAME 1671 /* source target same */
38#define MSG_BACK_ERR_FORMAT_UTIL 1672 /* error executing format utility */
39#define MSG_BACK_INVAL_DATE 1036 /* inval date */
40/* 1673 - 1675 not used */
41#define MSG_BACK_INVAL_TIME 1044 /* inval time */
42#define MSG_BACK_INVAL_DRIV_SPEC 15 /* inval drive spec */
43#define MSG_BACK_CANNOT_FIND_FORM 1676 /* cannot find format util */
44#define MSG_BACK_ERROR_OPEN_LOGFILE 1677 /* error open logfile */
45#define MSG_BACK_CAN_FORM_UNREM_DR 1678 /* cannot form unremovable drive */
46#define MSG_BACK_LAST_NOT_INSERT 1679 /* last disk not inserted */
47#define MSG_BACK_LOG_TO_FILE 1680 /* log to file %2 */
48#define MSG_BACK_FILE_TARG_DRIVE 1681 /* warning file in target drive %2 */
49#define MSG_BACK_FILE_BACK_ERASE 1682 /* files in target drive %c */
50#define MSG_BACK_FILE_TO_DRIVE 1683 /* backup up files to drive d */
51#define MSG_BACK_DISK_NUM 1684 /* diskette number %2 */
52#define MSG_BACK_WARN_NO_FIL_FND 1685 /* warning no files were found to backup */
53#define MSG_BACK_INSERT_SOURCE 1686 /* insert backup source diskette in dr d */
54#define MSG_BACK_INSERT_BACKUP 1687 /* insert backup source disk %2 in dr */
55#define MSG_BACK_UNABLE_TO_BKUP 1688 /* not able to backup file */
56#define MSG_BACK_LAST_DISK_DRIVE 1689 /* insert last backup diskette in drive */
57#define MSG_BACK_TARG_NOT_USE_BKUP 1690 /* target cannot be used for backup */
58#define MSG_BACK_LAST_FILE_NO_BKUP 1691 /* last file not backed up */
59#define MSG_BACK_DEVICE_D_IS_FULL 1692 /* fixed backup device d is full */
60#define MSG_XCOPY_UNAB_CREATE_DIR 1693 /* unable to create directory */
61#define MSG_XCOPY_PATH_TOO_LONG 1694 /* path too long */
62#define MSG_XCOPY_BLANK_YN 1695 /* blank y/n */
63/* 1696 not used */
64#define MSG_XCOPY_READ_SOURCE_FILE 1697 /* reading source file */
65#define MSG_XCOPY_FILES_COPIED 1698 /* % files copied */
66#define MSG_XCOPY_FILE_NOT_FOUND 1699 /* % file not found */
67#define MSG_XCOPY_DOES_SPEC_FILENA 1700 /* Does % specify a filename */
68#define MSG_XCOPY_CANNOT_COPY_SUB 1701 /* cannot copy using /s to subdirectory */
69/* 1702 not used */
70#define MSG_XCOPY_INVAL_PARA 1001 /* invalid parameter xcopy */
71/* 1703 not used */
72#define MSG_XCOPY_INVAL_NUM_PAR 1704 /* invalid number of parameters xcopy */
73#define MSG_ANSI_EXT_SCR_KEY_ON 1705 /* ansi extended screen and keyboard on */
74#define MSG_ANSI_EXT_SCR_KEY_OFF 1706 /* ansi extended screen and keyboard off */
75#define MSG_ANSI_INVAL_PARA 1001 /* ansi invalid parameter */
76/* 1707 not used */
77/* 1708 - 1736 basemid */
78/* 1737 - 1740 unused */
79/* 1739 - 1740 unused */
80#define MSG_KEYB_TAB_NOT_EXIST 1741 /* translate table does not exist */
81#define MSG_KEYB_READ_TAB 1742 /* error reading translate table file */
82#define MSG_KEYB_INVAL_CODE 1454 /* Invalid keyboard layout code */
83/* 1743 not used */
84#define MSG_KEYB_SYS_ERR 1744 /* System error */
85#define MSG_KEYB_CODE_PAGE 1745 /* Code page not available */
86#define MSG_KEYB_TOO_MANY_PARMS 1454 /* Too many parms */
87/* 1746 not used */
88#define MSG_KEYB_DEF_LOAD 1747 /* Default ready loaded */
89#define MSG_KEYB_DOS_OPEN_ER 1748 /* Dos open error */
90/* 1749 not used */
91#define MSG_KEYB_INVAL_TYPE 1750 /* Invalid keyboard type */
92#define MSG_KEYB_ERR_LOAD_TRANS 1751 /* Invalid loading translate table */
93#define MSG_KEYB_LOADED 1752 /* translate table loaded */
94/* 1753-1760 unused */
95#define MSG_CHCP_INVALID_PARAMETER 1761 /* invalid parameter */
96#define MSG_CHCP_TASK 1762 /* unable to set process */
97/* 1763 - 1765 unused */
98#define MSG_CHCP_REPORT 1766 /* active code page */
99#define MSG_CHCP_SYSTEM 1767 /* Code page not prepared for system */
100#define MSG_CHCP_NO_CP 1768 /* Code page not set for system */
101#define MSG_CHCP_DEVICE 1769 /* Code page not prepared for device */
102/* 1770 - 1772 unused */
103#define MSG_START_INVALID_PARAMETER 1773 /* Invalid parameter to start command */
104/* 1774-1780 unused */
105#define MSG_SPOOLER_FONT_SWITCH 1781 /* error attempting to load font */
106#define MSG_SPOOLER_INVAL_CODE_PG 1782 /* code page id not valid */
107#define MSG_SPOOLER_ERR_OPEN_FONT 1783 /* error attempt to open font file */
108#define MSG_SPOOLER_ERR_READ_FONT 1784 /* error reading font file */
109#define MSG_SPOOLER_ERR_READ_CTRL 1784 /* error reading font file ctrl */
110#define MSG_SPOOLER_READ_DEFIN 1784 /* error reading font file blocks */
111/* 1785 - 1786 not used */
112#define MSG_SPOOLER_INVAL_PRINT 1787 /* invalid printer type in devinfo */
113#define MSG_SPOOLER_INSUF_STOR 1788 /* insuf storage to activate */
114#define MSG_SPOOLER_INCOR_FONT 1789 /* devinfo statement font incorrect */
115#define MSG_SPOOLER_INTER_ERR 1790 /* font switching internal error */
116#define MSG_SPOOLER_TOO_MANY_ROMS 1791 /* too many roms */
117#define MSG_SPOOLER_SOME_FONTS_BAD 1792 /* damaged font files */
118/* 1793-1799 unused */
119#define MSG_CMD_LOCK_VIOLATION 32 /* lock violation */
120/* 1800 - 1803 not used */
121#define MSG_CMD_NOT_DOS_DISK 26 /* media store not dos disk */
122#define MSG_CMD_NO_MEMORY 8 /* No more memory */
123#define MSG_CMD_FILE_NOT_FOUND 1804 /* File not found */
124#define MSG_CMD_ACCESS_DENIED 5 /* access denied */
125/* 1805 - 1808 not used */
126#define MSG_CMD_DRIVE_LOCKED 108 /* drive locked */
127#define MSG_CMD_SHARING_VIOLATION 32 /* sharing violation */
128#define MSG_CMD_SYS_ERR 1809 /* A system error occurred */
129#define MSG_CMD_DIV_0 1810 /* process terminated */
130#define MSG_CMD_SOFT_ERR 1811 /* fatal software error */
131#define MSG_CMD_COPROC 1812 /* process terminated */
132#define MSG_CMD_KILLED 1813 /* process killed */
133#define MSG_CMD_TOO_MANY_OPEN 1814 /* too many open files */
134/* 1815 - 1824 unused */
135#define MSG_PROG_CANT_FIND_FILE 1825 /* cant find file */
136#define MSG_PROG_NO_MEM 1826 /* cannot process command */
137#define MSG_PROG_NON_RECOV 1827 /* cannot process request */
138#define MSG_PROG_CNT_START 1828 /* cannot start selected program */
139/* 1829 not used */
140#define MSG_PROG_NO_MOU 1830 /* cannot set mou key assign */
141#define MSG_PROG_UNEXCEPT_FORMAT 1831 /* unacceptable executable format file */
142/* 1832 - 1838 unused */
143#define MSG_FDISK_WHOLEDISK_2 1839 /* maximum size */
144#define MSG_FDISK_CREATE_DOS_MENU 1840 /* create dos menu */
145#define MSG_FDISK_CREATE_DOS_EXT 1841 /* create dos extended partition */
146#define MSG_FDISK_CREATE_PRIME_HD 1842 /* create primary menu */
147#define MSG_FDISK_CREATE_EXT_HD 1843 /* create extended menu */
148#define MSG_FDISK_CREATE_LOG_HD 1844 /* create logical drive */
149#define MSG_FDISK_EXT_CREATED 1845 /* extended part created */
150#define MSG_FDISK_VOL_CREATED 1846 /* volume created */
151/* 1847 not used */
152#define MSG_FDISK_DEL_MENU 1848 /* delete menu */
153#define MSG_FDISK_DEL_LOG_DRV 1849 /* delete logical drive */
154#define MSG_FDISK_DEL_PRIM_DOS 1850 /* delete primary dos partition */
155#define MSG_FDISK_DEL_EXT_PART 1851 /* delete extended dos partition */
156#define MSG_FDISK_DEL_LOG_HD 1852 /* delete logical drive */
157#define MSG_FDISK_ALL_LOG_DEL 1853 /* logical drive deleted */
158#define MSG_FDISK_EXT_DEL 1854 /* extended partition deleted */
159/* 1855 not used */
160#define MSG_FDISK_EXT_PART_DEL 1856 /* extended dos partition deleted */
161#define MSG_FDISK_DRV_DEL 1857 /* drive deleted */
162/* 1858 not used */
163#define MSG_FDISK_CUR_PART_NOT_BOOT 1859 /* the partitions marked is boot */
164#define MSG_FDISK_WARN_LOG_LOST 1860 /* data in log drive will be lost */
165#define MSG_FDISK_WARN_EXT_LOST 1861 /* data in extended part will be lst */
166#define MSG_FDISK_SURE_QUERY 1862 /* are you sure? */
167#define MSG_FDISK_LOG_SIZE_INP 1863 /* logical drive size */
168#define MSG_FDISK_DISP_LOG_INFO_INP 1864 /* extended partition cont log dr */
169#define MSG_FDISK_ESC_TO_DOS 1865 /* press esc to return to dos */
170#define MSG_FDISK_DEFAULT_INP 1866 /* 1 */
171#define MSG_FDISK_MAX_LOG_SPACE 1867 /* total part avail is cylinders */
172#define MSG_FDISK_TOT_PART_SIZE 1868 /* Total partition size is cylinder */
173/* 1869 not used */
174#define MSG_FDISK_CUR_FDISK_LOG 1870 /* current fixed disk drive */
175/* 1871 not used */
176#define MSG_FDISK_DRV_LETTERS_CHNGD 1872 /* drive letter have changed or del */
177#define MSG_FDISK_BOOT_AL_ACT 1873 /* bootable part on drive 1 is act */
178#define MSG_FDISK_EXT_FULL 1874 /* avail space is assign to log dr */
179#define MSG_FDISK_NO_BOOT_EXIST 1875 /* only non-boot part on dr 1 */
180#define MSG_FDISK_ONLY_CURDRV_PART_ACT 1876 /* only part on drive 1 can be act */
181#define MSG_FDISK_MAX_LOGDRV_INS 1877 /* maximum number of log dos dr ins */
182/* 1878 not used */
183#define MSG_FDISK_CANT_DEL_PRIM 1879 /* cannot delete primary dos part */
184#define MSG_FDISK_MAX_AVAIL_SPACE 1880 /* max avail space for partit cyl */
185#define MSG_FDISK_LOG_INFO_HD 1881 /* drive start end size */
186#define MSG_FDISK_LOG_INFO 1882 /* 1 2 3 4 */
187#define MSG_FDISK_PART_INFO 1883 /* 1 2 3 4 5 6 7 8 */
188#define MSG_FDISK_ERR_EXT_EXIST 1884 /* extended part already exists */
189#define MSG_FDISK_ERR_NO_EXT 1885 /* no extended part to delete */
190/* 1886 not used */
191#define MSG_FDISK_PART_TOO_SMALL 1887 /* file partition too small */
192#define MSG_FDISK_ERR_PART_NOT_BOOT 1859 /* partition selected is not bootable */
193#define MSG_FDISK_ERR_NO_LOG_DEF 1888 /* no logical drives defined */
194#define MSG_FDISK_ERR_LOG_INP_2_BIG 1889 /* requested log drive size exceeds */
195#define MSG_FDISK_ERR_PART_INP_2_BIG 1890 /* requested part size exceeds max */
196#define MSG_FDISK_ERR_NO_PART_2_DEL 1891 /* no partitions to delete */
197#define MSG_FDISK_ERR_NO_PRIM_PART 1892 /* cannot create extend dos prim dk */
198#define MSG_FDISK_ERR_LOG_STILL_EXIST 1893 /* cannot delete extend part log dr */
199#define MSG_FDISK_ERR_0_PART_SPEC 1894 /* cannot create a zero cylinder pr */
200#define MSG_FDISK_ERR_DRV_DEL 1895 /* drive already deleted */
201#define MSG_FDISK_INTERNAL_ERROR 1896 /* internal error */
202#define MSG_FDISK_ERR_COMMAND_LINE 1897 /* unsupported switch ignored */
203#define MSG_START_NONE 1898 /* screen group not started */
204#define MSG_MODE_COM_PORT 1901 /* query status not available */
205#define MSG_MODE_P_IGNORE 1902 /* P option ignored */
206/* 1903-1914 unused */
207/* 1915-1956 in basemid */
208/* 1957-1959 unused */
diff --git a/v4.0/src/H/UTILMID3.H b/v4.0/src/H/UTILMID3.H
new file mode 100644
index 0000000..1b70812
--- /dev/null
+++ b/v4.0/src/H/UTILMID3.H
@@ -0,0 +1,100 @@
1/* SCCSID = @(#)utilmid3.h 5.13 87/05/05 */
2
3#define MSG_SPOOL_WTRUNC_ERROR 1425 /* cannot release filling file - print */
4#define MSG_SPOOL_OPEN_ERROR 1426 /* cannot delete filling file - print */
5#define MSG_SPOOL_SIG_ERROR 1427 /* cannot delete printing file - print */
6#define MSG_SPOOL_MACH_ERROR 1428 /* cannot hold filling file - print */
7#define MSG_SPOOL_RUN_PRINT_DATA 1429 /* spool running with print data redir */
8#define MSG_SPOOL_RUN_DEVICE 1430 /* spool print run on device */
9#define MSG_INSTALL_SIMUL_PIPS 1960 /* pips being executed simultaneously */
10#define MSG_INSTALL_UNKNOWN_CMD 1961 /* not recognize cmd in pip */
11#define MSG_INSTALL_PANEL_ERROR 1962 /* cannot display panel */
12#define MSG_INSTALL_FILE_CREATE_ERR 1963 /* cannot create the file */
13#define MSG_INSTALL_LABEL_NOT_FOUND 1964 /* cannot find the label */
14#define MSG_INSTALL_FILE_NOT_FOUND 1965 /* cannot find file */
15#define MSG_INSTALL_FILE_NAME_ERR 1966 /* unacceptable file name */
16#define MSG_INSTALL_FILE_OPEN_ERR 1967 /* file open error */
17#define MSG_INSTALL_MEM_ALLOC_ERR 1968 /* memory allocation error */
18/* 1969 not used */
19#define MSG_INSTALL_UNBAL_COMMENTS 1970 /* cannot read part of pip */
20#define MSG_INSTALL_SYNTAX_ERR 1971 /* syntax error */
21#define MSG_INSTALL_UNSPEC_CHOICE 1972 /* missing choice parameter */
22#define MSG_INSTALL_SHELL_ADD_ERR 1973 /* title on program selector */
23#define MSG_INSTALL_DUPLICATE_LABEL 1974 /* duplicate label name */
24#define MSG_INSTALL_UNSUCCESSFUL 1975 /* not able to install */
25#define MSG_INSTALL_HY_HDR 1976 /* history file header */
26#define MSG_INSTALL_HY_TITLE 1977 /* history file title */
27#define MSG_INSTALL_HY_CRDATE 1978 /* history file date */
28#define MSG_INSTALL_HY_UPDATE 1979 /* history file update */
29#define MSG_TRC_NOT_ACTIVE 1397 /* trace not active */
30/* 1980 not used */
31#define MSG_TRC_ABEND 1981 /* not properly formatted */
32/* 1982 - 1984 not used */
33#define MSG_INSTALL_BAD_PIP_EXT 1985 /* bad pip extension */
34/* 1986 - 1990 unused */
35#define MSG_EDLIN_INVALID_DOS_VER 1991 /* Invalid DOS version$ */
36#define MSG_EDLIN_Y_IS_FOR_YES 1992 /* Answer for abort and OK questions */
37#define MSG_EDLIN_FILENAME_NOT_SPEC 1993 /* Filename must be specified */
38#define MSG_EDLIN_INVALID_PARAMETER 1994 /* Invalid parameter */
39#define MSG_EDLIN_FILE_READ_ONLY 1061 /* File is read only */
40/* 1995 not used */
41#define MSG_EDLIN_TOO_MANY_FILES 1996 /* Too many files are open */
42#define MSG_EDLIN_READ_ERROR_IN 1997 /* Read error in %S */
43#define MSG_EDLIN_CANNOT_EDIT 1998 /* Cannot edit .BAK file -- rename file */
44#define MSG_EDLIN_DISK_FULL 1999 /* Disk full edits lost */
45#define MSG_EDLIN_INSUFFICIENT_MEM 8 /* Insufficient memory */
46/* 2000not used */
47#define MSG_EDLIN_ENTRY_ERROR 2001 /* Syntax entry error */
48#define MSG_EDLIN_NEW_FILE 2002 /* New file */
49#define MSG_EDLIN_NOT_FOUND 2003 /* Cannot find string specified */
50#define MSG_EDLIN_OKAY 2004 /* Okay OK? */
51#define MSG_EDLIN_LINE_TOO_LONG 2005 /* The line is too long */
52#define MSG_EDLIN_END_INPUT_FILE 2006 /* End of the input file */
53#define MSG_EDLIN_ABORT_EDIT 2007 /* Abort edit Y/N ? */
54#define MSG_EDLIN_SPECIFY_LINE_NO 2008 /* Must specify destination line number */
55#define MSG_EDLIN_NOT_ENOUGH_ROOM 2009 /* Not enough room to merge entire file */
56#define MSG_GRAFT_ENG_VER 2010 /* Eng version */
57#define MSG_GRAFT_CANFR_VER 2011 /* Canfrench version */
58#define MSG_GRAFT_PORT_VER 2012 /* Portugese version */
59#define MSG_GRAFT_NORD_VER 2013 /* Nordic version */
60#define MSG_GRAFT_ENG_LOAD 2014 /* Eng version loaded */
61#define MSG_GRAFT_CANFR_LOAD 2015 /* Canadian French version loaded */
62#define MSG_GRAFT_PORT_LOAD 2016 /* Portugese version loaded */
63#define MSG_GRAFT_NORD_LOAD 2017 /* Nordic version loaded */
64#define MSG_GRAFT_NO_LOAD 2018 /* No Graftable loaded */
65#define MSG_GRAFT_ALREAD_LOAD 2019 /* Graftable already loaded */
66#define MSG_GRAFT_INCOR_PARM 1001 /* Graftable incorrect parm */
67/* 2020 not used */
68#define MSG_GRAFT_PARM_SUP 2021 /* Graftable parameter supported */
69/* 2022 - 2024 unused */
70/* 2025 - 2031 basemid */
71/* 2032 - 2034 unused */
72#define MSG_FDISK_ESC_TO_CREATE 2035 /* press escape to create logical drive */
73/* 2036 - 2039 unused */
74#define MSG_DCOPY_WRITE_ERROR 2040 /* Unrecoverable error writing to */
75/* 2041 - 2045 */
76#define MSG_APPEND_NO_DIR 2046 /* no append dir */
77#define MSG_APPEND_ASSIGN_CONFLICT 2047 /* assign conflict */
78#define MSG_APPEND_TOPVIEW_CONFLICT 2048 /* topview conflict */
79#define MSG_APPEND_ALREADY_INSTALLED 2049 /* append is already installed */
80#define MSG_APPEND_INVAL_PATH_PARM 2050 /* invalid path or parameter */
81#define MSG_APPEND_INVAL_PATH 2050 /* invalid path */
82#define MSG_APPEND_INCOR_APPEND_VER 2052 /* incorrect append version */
83/* 2053 - 2055 */
84#define MSG_UNEXPEC_ERROR_ENC 2056 /* unexpected error encountered */
85/* 2057 - 2070 basemid */
86#define MSG_FMT_SKIPPING 2071 /* skipping ADOS files */
87#define MSG_FMT_SYS_SKIP 2072 /* files skipped during xfer */
88/* 2073 - 2075 unused */
89#define MSG_PROG_DOS 2076 /* to refer to the PCDOS mode box */
90#define MSG_PROG_MORE 2077 /* more data to be scrolled */
91/* 2078 - 2080 unused */
92#define MSG_INSTALL_SELECT 2081 /* syntax error SELECT/ESELECT block */
93/* 2082 - 2085 unused */
94#define MSG_LOST_LIBRARY 2086 /* the library is lost */
95#define MSG_SETCOM_OPEN_ERROR 2087 /* unable to open a port */
96#define MSG_SETCOM_DISABLE 2088 /* port has been disabled */
97#define MSG_SETCOM_ENABLE 2089 /* port has been enabled */
98#define MSG_BIND_RESERVED 2090 /* unable to load the program */
99/* 2091 - 2999 unused */
100/* 3000 - 3100 reserved for IBM Far East */
diff --git a/v4.0/src/H/UTLERROR.H b/v4.0/src/H/UTLERROR.H
new file mode 100644
index 0000000..89d2a30
--- /dev/null
+++ b/v4.0/src/H/UTLERROR.H
@@ -0,0 +1,92 @@
1/* SCCSID = @(#)utlerror.h 8.7 87/03/09 */
2/* */
3/* error codes for utilities */
4/* */
5
6#define ERROR_INVALID_DOSVER 1000 /* invalid dos version */
7#define ERROR_LANGUAGE_NOT_SUPPORTED 1001 /* language not supported */
8#define ERROR_INVALID_FILENAME 1002 /* invalid file name */
9#define ERROR_MSGFILE_BAD_FORMAT 1010 /* bad message file format */
10#define ERROR_MSGFILE_BAD_MID 1011 /* message file has bad mid */
11#define ERROR_MSGFILE_OUTERROR 1012 /* error writing output file */
12#define ERROR_MSGFILE_INPERROR 1013 /* error reading input file */
13#define ERROR_MSGFILE_SYNTAX 1014 /* syntax error */
14#define ERROR_MSGFILE_MSG_TOO_BIG 1015 /* message exceeds system limit */
15#define ERROR_INSTALL_FAILED 1016 /* install failed */
16#define ERROR_INVALID_VOL 1017 /* no volume with /s option */
17#define ERROR_INVALID_INPUT_PARM 1018 /* invalid input parameter */
18#define ERROR_FILE_SPEC_REQUIRED 1019 /* file specification required */
19#define ERROR_SORT_FILE_TOO_BIG 1020 /* file size to big to sort */
20#define ERROR_SORT_INVALID_COL 1021 /* invalid column number for sort */
21#define ERROR_CHK_BAD_FAT 1022 /* fat bad on specified drive */
22#define ERROR_CHK_BAD_ROOT 1023 /* root bad on specified drive */
23#define ERROR_INVALID_PARM_NUMBER 1024 /* invalid parameter number */
24#define ERROR_PARM_SYNTAX 1025 /* invalid parameter syntax */
25#define ERROR_UTIL_TERMINATED 1026 /* program terminated by user */
26#define ERROR_REST_NO_BACKUP 1027 /* source does not contain backup file */
27#define ERROR_REST_SEQUENCE_ERROR 1028 /* file sequence error */
28#define ERROR_REST_FILE_CREATE 1029 /* file creation error */
29#define ERROR_FDISK_ERR_WRITE 1030 /* error writing fixed disk */
30#define ERROR_FDISK_ERR_READ 1031 /* error reading fixed disk */
31#define ERROR_FDISK_ERR_NOFDISKS 1032 /* no fixed disk present */
32#define ERROR_PATCH_NO_CTL_FILE 1033 /* cannot open patch control file */
33#define ERROR_PATCH_NO_EXE_FILE 1034 /* cannot open file to patch */
34#define ERROR_PATCH_CANT_ALLOC 1035 /* insufficient memory to alloc patch */
35#define ERROR_PATCH_INV_CMD_COMBO 1036 /* bad command sequence */
36#define ERROR_PATCH_INV_OFFSET 1037 /* invalid offset */
37#define ERROR_PATCH_INV_BYTES 1038 /* invalid byte string */
38#define ERROR_PATCH_TOO_NEAR_EOF 1039 /* too close to end of file */
39#define ERROR_PATCH_VERIFY_FAILED 1040 /* verification failed */
40#define ERROR_PATCH_INC_VERIFY 1041 /* offset verification failed */
41#define ERROR_SPOOL_INVAL_DEVICE 1042 /* invalid device */
42#define ERROR_SPOOL_INVAL_IN_DEV_PAR 1043 /* invalid input device parm */
43#define ERROR_SPOOL_INVAL_OUT_DEV_PAR 1044 /* invalid output device parm */
44#define ERROR_SPOOL_INVAL_SUB 1045 /* invalid subdirectory */
45#define ERROR_SPOOL_INTERN_ERROR 1046 /* internal error */
46#define ERROR_SPOOL_DISK_FULL 1047 /* spool disk full */
47#define ERROR_SPOOL_CANNOT_PT_NXT_FI 1048 /* cannot print next file */
48#define ERROR_SPOOL_CANNOT_PTR_NOW_FI 1049 /* cannot print now */
49#define ERROR_XCOPY_CANNOT_COPY_SUB 1050 /* cannot copy subdirectory */
50#define ERROR_XCOPY_ITSELF 1051 /* cannot copy to itself */
51#define ERROR_DISKC_DRIVE_SPEC 1052 /* drive mismatch in diskcomp/copy */
52#define ERROR_FORMAT_FAIL 1053 /* format failed */
53#define ERROR_FORMAT_INV_MEDIA 1054 /* format had invalid media */
54#define ERROR_RAS_STCP 1055 /* system trace command processor error */
55#define ERROR_RAS_CREATEDD 1056 /* error in create dump diskette */
56#define ERROR_XCOPY_UNAB_CREATE_DIR 1057 /* unable to create directory */
57#define ERROR_XCOPY_PATH_TOO_LONG 1058 /* path to long */
58#define ERROR_XCOPY_CANNOT_TO_RES_DEV 1059 /* can't copy to a reserved name */
59#define ERROR_XCOPY_CANNOT_COPY_RES 1060 /* can't copy from a reserved name */
60#define ERROR_XCOPY_INVAL_DATE 1061 /* invalid date */
61#define ERROR_XCOPY_INTERNAL 1062 /* xcopy internal error */
62#define ERROR_PRINT_INVALID_PARAMETER 1063 /* invalid parameter */
63#define ERROR_PRINT_FILE_NOT_FOUND 1064 /* file not found */
64#define ERROR_PRINT_INVALID_DRIVE 1065 /* invalid drive */
65#define ERROR_PRINT_INVALID_DOSVER 1066 /* invalid DOS version */
66#define ERROR_PRINT_BAD_ENVIRONMENT 1067 /* bad environment */
67#define ERROR_PRINT_MSGFILE_BAD_MID 1068 /* bad message ID */
68#define ERROR_PRINT_SYS_INTERNAL 1069 /* PRINT internal error */
69#define ERROR_SYS_SYS_INTERNAL 1070 /* SYS internal error */
70#define ERROR_SYS_MSGFILE_BAD_MID 1071 /* bad message ID */
71#define ERROR_SYS_INVALID_DOSVER 1072 /* invalid DOS version */
72#define ERROR_SYS_INVALID_DRIVE 1073 /* invalid drive */
73#define ERROR_SYS_INVALID_MEDIA 1074 /* invalid media */
74#define ERROR_SYS_INVALID_PARM 1076 /* invalid parameter */
75#define ERROR_FORMAT_INTERRUPT 1077 /* format interrupted */
76#define ERROR_FORMAT_NO_SYSXFER 1078 /* error in system xfer */
77#define ERROR_FORMAT_USER_TERM 1079 /* terminated by N resp */
78#define ERROR_BACK_NO_FILES 1080 /* no files found for backup */
79#define ERROR_BACK_SHARE_ERROR 1081 /* sharing error during backup */
80#define ERROR_BACK_FDISKFULL 1082 /* fixed disk is full during backup */
81#define ERROR_BACK_INVTARGET 1083 /* invalid backup target disk */
82#define ERROR_BACK_INVTIME 1084 /* invalid time parameter */
83#define ERROR_BACK_NOSOURCE 1085 /* no source backup files */
84#define ERROR_BACK_NOTARGET 1086 /* no target backup files */
85#define ERROR_BACK_SRC_TGT_SAME 1087 /* backup source and target same */
86#define ERROR_MSGFILE_DBCS 1088 /* error in message file dbcs */
87#define ERROR_HELP_MID_LARGE 1089 /* error in message file dbcs */
88#define ERROR_HELP_SYNTAX 1090 /* error in message file dbcs */
89#define ERROR_HELP_BAD_MID 1091 /* error in message file dbcs */
90#define ERROR_HELP_NO_HELP 1092 /* error in message file dbcs */
91#define ERROR_SORT_RCD_SIZE_EXCEED 1093 /* sort record size exceeded */
92#define ERROR_CM_EOF_REDIRECT 1094 /* eof found on redr input */
diff --git a/v4.0/src/H/VERSION.H b/v4.0/src/H/VERSION.H
new file mode 100644
index 0000000..5c681d9
--- /dev/null
+++ b/v4.0/src/H/VERSION.H
@@ -0,0 +1,6 @@
1/* Use the switch below to produce the standard Microsoft version
2 or the IBM version of the operating system */
3
4
5#define IBMCOPYRIGHT 0
6
diff --git a/v4.0/src/H/VERSIONC.H b/v4.0/src/H/VERSIONC.H
new file mode 100644
index 0000000..1802f1f
--- /dev/null
+++ b/v4.0/src/H/VERSIONC.H
@@ -0,0 +1,15 @@
1
2 #include <stdlib.h> /* Declaration & init of DOS _osmajor & _osminor */
3
4 #define expected_version_major 4 /* DOS Major Version 4 */
5 #define expected_version_minor 00 /* DOS Minor Version 00 */
6
7 /********************************************/
8 /*Each C program should: */
9 /* */
10 /* if ((expected_version_major != _osmajor) */
11 /* | (expected_version_minor != _osminor))*/
12 /* exit(incorrect_dos_version); */
13 /* */
14 /********************************************/
15