mirror of https://github.com/lianthony/NT4.0
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
454 lines
19 KiB
454 lines
19 KiB
/*
|
|
* SULIB.H - Windows/DOS Setup common code
|
|
*
|
|
* Modification History:
|
|
*
|
|
*
|
|
* 3/23/89 Toddla combined common.h and prototypes into this file
|
|
* 1/28/91 MichaelE Added AUDIO_CARDS_SECT for different audio card choices.
|
|
* 4/17/91 Removed some DOS.ASM routines not used anywhere.
|
|
* 5/29/91 JKLin added prototype for IsCDROMDrive function
|
|
*
|
|
*/
|
|
|
|
#ifndef PH_SULIB
|
|
#define PH_SULIB
|
|
|
|
#define FAR_HEAP
|
|
|
|
/* has windows.h been included */
|
|
#ifndef WM_USER
|
|
#ifdef NULL
|
|
#undef NULL
|
|
#endif
|
|
#define NULL 0
|
|
#define FALSE 0
|
|
#define TRUE 1
|
|
|
|
#define FAR far
|
|
#define NEAR near
|
|
#define PASCAL pascal
|
|
#define LONG long
|
|
#define VOID void
|
|
|
|
#define MAKELONG(a, b) ((LONG)(((WORD)(a)) | ((DWORD)((WORD)(b))) << 16))
|
|
#define LOWORD(l) ((WORD)(l))
|
|
#define HIWORD(l) ((WORD)(((DWORD)(l) >> 16) & 0xFFFF))
|
|
#define LOBYTE(w) ((BYTE)(w))
|
|
#define HIBYTE(w) (((WORD)(w) >> 8) & 0xFF)
|
|
|
|
typedef unsigned char BYTE;
|
|
typedef unsigned short WORD;
|
|
typedef unsigned long DWORD;
|
|
typedef int BOOL;
|
|
typedef char *PSTR;
|
|
typedef char NEAR *NPSTR;
|
|
typedef char FAR *LPSTR;
|
|
typedef int FAR *LPINT;
|
|
|
|
typedef WORD FAR *LPWORD;
|
|
|
|
#endif
|
|
|
|
#define FALLOC(n) (VOID FAR *)GlobalLock(GlobalAlloc(GHND, (DWORD)(n)))
|
|
#define FFREE(n) GlobalFree((HANDLE)HIWORD((DWORD)(n)))
|
|
|
|
#define FOPEN(sz) _lopen(sz,0 /*READ*/)
|
|
#define FCREATE(sz) _lcreat(sz,0)
|
|
#define FCLOSE(fh) _lclose(fh)
|
|
#define FREAD(fh,buf,len) _lread(fh,buf,len)
|
|
#define FWRITE(fh,buf,len) _lwrite(fh,buf,len)
|
|
#define FSEEK(fh,off,i) _llseek(fh,(DWORD)off,i)
|
|
|
|
#define FERROR() 0
|
|
|
|
#define ALLOC(n) (VOID NEAR *)LocalAlloc(LPTR,n)
|
|
#define FREE(p) LocalFree(p)
|
|
#define SIZE(p) LocalSize(p)
|
|
#define REALLOC(p,n) LocalReAlloc(p,n,LMEM_MOVEABLE)
|
|
|
|
|
|
/* flags for _lseek */
|
|
#define SEEK_CUR 1
|
|
#define SEEK_END 2
|
|
#define SEEK_SET 0
|
|
|
|
#define NORMAL_5BH 0x00 // create normal file for int 21h/5bh call.
|
|
#define ACCESS_DENIED -2
|
|
|
|
#define MAXPATHLEN 65 /* path length max + Null Byte */
|
|
#define MAXFILESPECLEN 67 /* drive: + path length max + Null Byte */
|
|
#define MAXCMDLINELEN 128 /* Maximum length of DOS command line */
|
|
#define FILEMAX 14 /* 8.3 + NULL byte */
|
|
#define MAX_INF_LINE_LEN 150 /* Maximum length of any .inf line */
|
|
#define MAX_SYS_INF_LEN 16 /* ##: + 8.3 + NULL */
|
|
#define MAX_PROF_LINE_LEN 15 /* Mamimum length of any profile string */
|
|
#define MAX_ASPECT_STR_LEN 11 /* Max length of aspect ratio string */
|
|
#define MAX_VDD_LEN 75 /* multiple vdd names, vdd,vdd,vdd ect. */
|
|
#define MAX_SECT_NAME_LEN 20 /* Max length of a section Name. */
|
|
#define MAX_FILE_SPEC 15 // 8.3 + X: + NULL.
|
|
|
|
#define WIN386VER "win386"
|
|
#define MACHINE_SECT "machine"
|
|
#define SYSTEM_SECT "system"
|
|
#define DISPLAY_SECT "display"
|
|
#define KEYBOARD_DRV_SECT "keyboard.drivers"
|
|
#define KEYTYPE_SECT "keyboard.types"
|
|
#define KEYBOARD_TABLES_SECT "keyboard.tables"
|
|
#define MOUSE_SECT "pointing.device"
|
|
#define DOS_MOUSE_SECT "dos.mouse.drivers"
|
|
#define SYSFONT_SECT "sysfonts"
|
|
#define OEMFONT_SECT "oemfonts"
|
|
#define FIXEDFON_SECT "fixedfonts"
|
|
#define DISK_SECT "disks"
|
|
#define OEMDISK_SECT "oemdisks"
|
|
#define USER_FONTS_SECT "fonts"
|
|
#define LANGUAGE_SECT "language"
|
|
#define NETWORK_SECT "network"
|
|
#define EXCLUSIONS_SECT "exclusions"
|
|
#define EBIOS_SECT "ebios"
|
|
#define AUDIO_CARDS_SECT "Audio.Hardware"
|
|
#define INTL_SECT "intl"
|
|
#define S_LANG "sLanguage"
|
|
|
|
#define COMPATIBILITY "compatibility"
|
|
#define CSCALE "continuousscaling"
|
|
|
|
#define LIM_SECT "lim"
|
|
#define CACHE_SECT "diskcache"
|
|
#define VDISK_SECT "ramdrive"
|
|
|
|
#define USADLL "usadll" /* dll profile string for usa */
|
|
#define DEFKEYDLL "defkeydll" /* data sectio profile string */
|
|
#define CHDISK(n) (char)((n) < 10 ? '0' + (char)(n) : 'A' + (char)((n) - 10))
|
|
|
|
#define FILES "files"
|
|
#define BUFFERS "buffers"
|
|
#define NUM_FILES "= 30"
|
|
#define EMM_SWITCH " /e"
|
|
#define REM "rem "
|
|
#define HIMEM "himem.sys"
|
|
#define SMARTDRV "smartdrv.sys"
|
|
#define RAMDRIVE "ramdrive.sys"
|
|
#define MOUSE_SYS "mouse.sys"
|
|
#define EGASYS "ega.sys"
|
|
#define LIMDRIVER "emm386.sys"
|
|
#define AUTOEXEC_BAT "autoexec.bat"
|
|
#define AUTOEXEC_BAK "autoexec.old"
|
|
#define AUTOEXEC_WIN "autoexec.win"
|
|
#define CONFIG_SYS "config.sys" /* Name of config.sys file */
|
|
#define CONFIG_BAK "config.old" /* Name of config.bak file */
|
|
#define CONFIG_WIN "config.win"
|
|
#define OEMINFFILE "oemsetup.inf"
|
|
#define SETUPEXE "setup.exe"
|
|
#define SETUPEXE30 "setupexe.30"
|
|
#define SETUPINF "setup.inf"
|
|
#define SETUPINF30 "setupinf.30"
|
|
#define BOOT_SECT_INI "boot"
|
|
#define KEYB_SECT_INI "keyboard"
|
|
#define SYSTEM_SECT_INI "386enh"
|
|
#define BOOT_DESC_INI "boot.description"
|
|
#define SYSTEMSRC "system.src"
|
|
#define PROCESSOR "data.product" /* used to retrieve processor = */
|
|
#define WIN386VER "win386" /* means were setting up win386 */
|
|
#define CODEPAGES "codepages"
|
|
#define RAMDRIVEMIN 128
|
|
#define SMARTDRVMIN 256
|
|
|
|
/* These are the module names that can be found in the LIBRARY entry of
|
|
all mouse and display drivrs. */
|
|
|
|
#define MOUSE_LIB "mouse"
|
|
#define DISPLAY_LIB "display"
|
|
|
|
/* These are the possible return values from fnProcessConfig or
|
|
fnAutoexecProcess*/
|
|
|
|
#define CONFIG_ERR 0x8000
|
|
#define OPEN_CONFIG_ERR (CONFIG_ERR + 2)
|
|
#define OPEN_AUTOEXEC_ERR (CONFIG_ERR + 3)
|
|
#define RENAME_FAIL (CONFIG_ERR + 4)
|
|
#define CREATE_FAIL (CONFIG_ERR + 5)
|
|
#define WRITE_FAIL (CONFIG_ERR + 6)
|
|
#define WRITE_SUCCESS 0x0001
|
|
#define CHECK_COMPAT_SUCCESS 0x0004
|
|
#define RET_PRAMS_SUCCESS 0x0008
|
|
#define SET_PRAMS_SUCCESS 0x0010
|
|
#define CONFIG_DIRTY 0x0020 // file needs to be writen
|
|
#define AUTOEXEC_DIRTY 0x0040 // file needs to be writen
|
|
|
|
#define DO_PATH 0x0001 // bit def's to specify work
|
|
#define DO_TEMP 0x0002 // needed to autoexec.bat file.
|
|
#define DO_MOUSE 0x0004 // mouse driver install
|
|
|
|
#define RETURN_PRAMS 0x0001
|
|
#define SET_PRAMS 0x0002
|
|
#define CHECK_COMPAT 0x0004
|
|
#define WRITE_SYS 0x0008
|
|
#define WRITE_BAK 0x0010 // Option flags for fnProcessFile
|
|
#define WRITE_NONE 0x0020
|
|
#define MUNGE_AUTO 0x0080
|
|
#define ASSURE_OPEN 0x0100
|
|
#define ASSURE_MOUSE_POSITION 0x0200
|
|
#define MUNGE_MDK 0x0400 // option flag for mdk path/env
|
|
|
|
#define NO_ACTION -1 // Option flag defines for fnUpdateDevice
|
|
#define REMOVE_DEVICE -2
|
|
#define RETURN_PRESENCE -3
|
|
#define REMOUT_DEVICE -4
|
|
#define ADD_DEVICE -5
|
|
#define ADD_DEVICE_FIRST -6
|
|
|
|
/* These defines are used as arguments to the fnCheckDevice call. */
|
|
|
|
#define CACHE 0
|
|
#define LIM 1
|
|
#define VDISK 2
|
|
|
|
/* These are used as the only argument to the fnCreateFileBuffer function
|
|
call. They denote which buffer and file is to be created. */
|
|
|
|
#define CONFIG 0x1
|
|
#define AUTOEXEC 0x2
|
|
|
|
#define REMOTE 0x3 /* Return value from DosIsRemote */
|
|
|
|
/* Used in the fnCopyBuf call to specify the copying of the remainder on
|
|
the from buffer. */
|
|
|
|
#define CNT_Z 0x1A
|
|
|
|
/* Used as an argument in function call fnCheckDevice(); */
|
|
|
|
#define NO_REMOVE FALSE
|
|
#define YES_REMOVE TRUE
|
|
|
|
#define REMAINDER 0xffff // Used to copy remainder of buffer.
|
|
|
|
#define ISEOF(c) ((c) == '\0' || (c) == CNT_Z)
|
|
#define ISSEP(c) ((c) == '=' || (c) == ',')
|
|
#define ISWHITE(c) ((c) == ' ' || (c) == '\t' || (c) == '\n' || (c) == '\r')
|
|
#define ISFILL(c) ((c) == ' ' || (c) == '\t')
|
|
#define ISEOL(c) ((c) == '\n' || (c) == '\r' || (c) == '\0' || (c) == CNT_Z)
|
|
#define ISCRLF(c) ((c) == '\n' || (c) == '\r')
|
|
#define ISNOISE(c) ((c) == '"')
|
|
#define ISDIGIT(c) ((c) >= '0' && (c) <= '9')
|
|
#define ISHEX(c) (ISDIGIT(c) || ISCHAR(c))
|
|
#define ISCHAR(c) (((c) >= 'A' && (c) <= 'Z') || ((c) >= 'a' && (c) <= 'z'))
|
|
#define SLASH(c) ((c) == '/' || (c) == '\\')
|
|
#define DEVICESEP(c) ((c) == '/' || (c) == '\\' || (c) == '=' || (c) == ' ' || (c) == '\t')
|
|
//#define UP_CASE(c) ((c) | 0x20) // this is lower case !
|
|
#define UPCASE(c) (((c) >= 'a' && (c) <= 'z') ? ((c) & 0xdf) : (c))
|
|
#define HEXVAL(c) (ISDIGIT(c) ? (c) - '0' : UP_CASE(c) - 'a' + 10)
|
|
|
|
#define CHSEPSTR "\\"
|
|
#define EQUAL '='
|
|
#define SPACE ' '
|
|
#define LF 0x0A
|
|
#define CR 0x0D
|
|
|
|
/*
|
|
* directory where MDK Tools executables, Include and Lib files are installed
|
|
*/
|
|
//extern char szMDKPath[MAXPATHLEN];
|
|
//extern char szMDKIncludePath[MAXPATHLEN];
|
|
//extern char szMDKLibPath[MAXPATHLEN];
|
|
|
|
typedef LPSTR PINF;
|
|
|
|
extern PINF FAR PASCAL infOpen(LPSTR szInf);
|
|
extern void FAR PASCAL infClose(PINF pinf);
|
|
extern PINF FAR PASCAL infSetDefault(PINF pinf);
|
|
extern PINF FAR PASCAL infFindSection(PINF pinf, LPSTR szSection);
|
|
extern BOOL FAR PASCAL infGetProfileString(PINF pinf, LPSTR szSection, LPSTR szItem,LPSTR szBuf);
|
|
extern BOOL FAR PASCAL infParseField(PINF szData, int n, LPSTR szBuf);
|
|
extern PINF FAR PASCAL infNextLine(PINF pinf);
|
|
extern int FAR PASCAL infLineCount(PINF pinf);
|
|
extern BOOL FAR PASCAL infLookup(LPSTR szInf, LPSTR szBuf);
|
|
|
|
/* TYPEDEFS - copy.c */
|
|
typedef BOOL (FAR PASCAL *FPFNCOPY) (int,int,LPSTR);
|
|
#define COPY_ERROR 0x0001
|
|
#define COPY_STATUS 0x0002
|
|
#define COPY_INSERTDISK 0x0003
|
|
#define COPY_QUERYCOPY 0x0004
|
|
#define COPY_START 0x0005
|
|
#define COPY_END 0x0006
|
|
#define COPY_EXISTS 0x0007
|
|
|
|
extern WORD FAR PASCAL FileCopy (LPSTR szSource, LPSTR szDir, FPFNCOPY fpfnCopy, WORD fCopy);
|
|
|
|
#define FC_FILE 0x0000
|
|
#define FC_LIST 0x0001
|
|
#define FC_SECTION 0x0002
|
|
#define FC_QUALIFIED 0x0008
|
|
#define FC_DEST_QUALIFIED 0x0010
|
|
#define FC_LISTTYPE 0x0020
|
|
#define FC_CALLBACK_WITH_VER 0x0040
|
|
|
|
#define FC_ABORT 0
|
|
#define FC_IGNORE 1
|
|
#define FC_RETRY 2
|
|
#define FC_ERROR_LOADED_DRIVER 0x80
|
|
/* External functions from copy.c */
|
|
|
|
extern void FAR PASCAL fartonear(LPSTR dst, LPSTR src);
|
|
extern BOOL FAR PASCAL ExpandFileName(LPSTR szFile, LPSTR szPath);
|
|
extern int FAR PASCAL DosCopy(LPSTR szFile, LPSTR szPath);
|
|
extern void FAR PASCAL catpath(LPSTR path, LPSTR sz);
|
|
extern BOOL FAR PASCAL fnFindFile(char *);
|
|
extern LPSTR FAR PASCAL FileName(LPSTR szPath);
|
|
extern LPSTR FAR PASCAL StripPathName(LPSTR szPath);
|
|
|
|
/* TYPEDEFS - dos.asm */
|
|
|
|
extern int FAR PASCAL fnCarefullyOpenNewFile(LPSTR sz,BYTE Attr);
|
|
|
|
#define ATTR_READONLY 0x0001
|
|
#define ATTR_HIDDEN 0x0002
|
|
#define ATTR_SYSTEM 0x0004
|
|
#define ATTR_VOLUME 0x0008
|
|
#define ATTR_DIR 0x0010
|
|
#define ATTR_ARCHIVE 0x0020
|
|
#define ATTR_FILES (ATTR_READONLY+ATTR_SYSTEM)
|
|
#define ATTR_ALL_FILES (ATTR_READONLY+ATTR_SYSTEM+ATTR_HIDDEN)
|
|
#define ATTR_ALL (ATTR_READONLY+ATTR_DIR+ATTR_HIDDEN+ATTR_SYSTEM)
|
|
|
|
typedef struct {
|
|
char Reserved[21];
|
|
BYTE Attr;
|
|
WORD Time;
|
|
WORD Date;
|
|
DWORD Length;
|
|
char szName[13];
|
|
} FCB;
|
|
|
|
typedef FCB * PFCB;
|
|
typedef FCB FAR * LPFCB;
|
|
|
|
/* functions from dos.asm */
|
|
|
|
extern BOOL FAR PASCAL IsCDROMDrive (int iDrive);
|
|
extern int FAR PASCAL fnCarefullyOpenNewFile(LPSTR sz,BYTE Attr);
|
|
extern int FAR PASCAL DosFindFirst (LPFCB lpfcb, LPSTR szFileSpec, WORD attr);
|
|
extern int FAR PASCAL DosFindNext (LPFCB lpfcb);
|
|
extern int FAR PASCAL GetCurrentDrive (void);
|
|
extern int FAR PASCAL SetCurrentDrive (int iDrive);
|
|
extern LONG FAR PASCAL DosDiskFreeSpace(int iDrive);
|
|
extern int FAR PASCAL DosCwd (LPSTR szDir);
|
|
extern int FAR PASCAL DosChDir (LPSTR szDir);
|
|
extern int FAR PASCAL DosMkDir (LPSTR szDir);
|
|
extern int FAR PASCAL DosValidDir (LPSTR szDir);
|
|
extern int FAR PASCAL GetFixedDisks(int * rgiDrive);
|
|
extern int FAR PASCAL DosRemoveable(int iDisk);
|
|
extern int FAR PASCAL DosIsRemote(int);
|
|
extern int FAR PASCAL MyReadWriteSector(void far *, int, int, int, int, int);
|
|
extern int FAR PASCAL DosRename(LPSTR, LPSTR);
|
|
extern int FAR PASCAL DosDelete(LPSTR);
|
|
extern WORD FAR PASCAL DosVersion(void);
|
|
extern void FAR PASCAL DosExit(WORD);
|
|
extern LPSTR FAR PASCAL DosGetEnv(void);
|
|
extern DWORD FAR PASCAL XmsVersion(void);
|
|
extern BOOL FAR PASCAL XmsInstalled(void);
|
|
extern void FAR PASCAL Reboot(void);
|
|
extern int FAR PASCAL GetCodePage(void);
|
|
extern WORD FAR PASCAL get_ext(void);
|
|
extern void FAR PASCAL fnGetFilePath(char*, char*);
|
|
#if 0
|
|
extern LONG FAR PASCAL MyGetFileAttributes(LPSTR szBuf);
|
|
#endif
|
|
|
|
extern unsigned FAR PASCAL fnGetSmartDrvVersion(void);
|
|
extern BOOL FAR PASCAL fnGetRamDriveVersion(LPSTR szVerString);
|
|
|
|
/* External functions from exe.c */
|
|
|
|
extern BOOL FAR PASCAL GetExeInfo(LPSTR szFile, VOID *pBuf, int nBuf, WORD fInfo);
|
|
//#define GEI_MODNAME 0x01
|
|
#define GEI_DESCRIPTION 0x02
|
|
//#define GEI_FLAGS 0x03
|
|
//#define GEI_EXEHDR 0x04
|
|
//#define GEI_FAPI 0x05
|
|
|
|
#ifdef DOSONLY
|
|
extern int FAR PASCAL lstrlen(LPSTR lpsz);
|
|
extern LPSTR FAR PASCAL lstrcat(LPSTR lpszFirst, LPSTR lpszSecond);
|
|
extern int FAR PASCAL lstrcmpi(LPSTR lpStr1, LPSTR lpStr2);
|
|
extern LPSTR FAR PASCAL lstrcpy(LPSTR lpszDest, LPSTR lpszSource);
|
|
extern int FAR PASCAL lstrcmp(LPSTR lpszFirst, LPSTR lpszSecond);
|
|
#endif
|
|
|
|
/* DOS ERROR CODES */
|
|
|
|
#define ERROR_OK 0x00
|
|
#define ERROR_FILENOTFOUND 0x02 /* File not found */
|
|
#define ERROR_PATHNOTFOUND 0x03 /* Path not found */
|
|
#define ERROR_NOFILEHANDLES 0x04 /* Too many open files */
|
|
#define ERROR_ACCESSDENIED 0x05 /* Access denied */
|
|
#define ERROR_INVALIDHANDLE 0x06 /* Handle invalid */
|
|
#define ERROR_FCBNUKED 0x07 /* Memory control blocks destroyed */
|
|
#define ERROR_NOMEMORY 0x08 /* Insufficient memory */
|
|
#define ERROR_FCBINVALID 0x09 /* Memory block address invalid */
|
|
#define ERROR_ENVINVALID 0x0A /* Environment invalid */
|
|
#define ERROR_FORMATBAD 0x0B /* Format invalid */
|
|
#define ERROR_ACCESSCODEBAD 0x0C /* Access code invalid */
|
|
#define ERROR_DATAINVALID 0x0D /* Data invalid */
|
|
#define ERROR_UNKNOWNUNIT 0x0E /* Unknown unit */
|
|
#define ERROR_DISKINVALID 0x0F /* Disk drive invalid */
|
|
#define ERROR_RMCHDIR 0x10 /* Attempted to remove current directory */
|
|
#define ERROR_NOSAMEDEV 0x11 /* Not same device */
|
|
#define ERROR_NOFILES 0x12 /* No more files */
|
|
#define ERROR_13 0x13 /* Write-protected disk */
|
|
#define ERROR_14 0x14 /* Unknown unit */
|
|
#define ERROR_15 0x15 /* Drive not ready */
|
|
#define ERROR_16 0x16 /* Unknown command */
|
|
#define ERROR_17 0x17 /* Data error (CRC) */
|
|
#define ERROR_18 0x18 /* Bad request-structure length */
|
|
#define ERROR_19 0x19 /* Seek error */
|
|
#define ERROR_1A 0x1A /* Unknown media type */
|
|
#define ERROR_1B 0x1B /* Sector not found */
|
|
#define ERROR_WRITE 0x1D /* Write fault */
|
|
#define ERROR_1C 0x1C /* Printer out of paper */
|
|
#define ERROR_READ 0x1E /* Read fault */
|
|
#define ERROR_1F 0x1F /* General failure */
|
|
#define ERROR_SHARE 0x20 /* Sharing violation */
|
|
#define ERROR_21 0x21 /* File-lock violation */
|
|
#define ERROR_22 0x22 /* Disk change invalid */
|
|
#define ERROR_23 0x23 /* FCB unavailable */
|
|
#define ERROR_24 0x24 /* Sharing buffer exceeded */
|
|
#define ERROR_32 0x32 /* Unsupported network request */
|
|
#define ERROR_33 0x33 /* Remote machine not listening */
|
|
#define ERROR_34 0x34 /* Duplicate name on network */
|
|
#define ERROR_35 0x35 /* Network name not found */
|
|
#define ERROR_36 0x36 /* Network busy */
|
|
#define ERROR_37 0x37 /* Device no longer exists on network */
|
|
#define ERROR_38 0x38 /* NetBIOS command limit exceeded */
|
|
#define ERROR_39 0x39 /* Error in network adapter hardware */
|
|
#define ERROR_3A 0x3A /* Incorrect response from network */
|
|
#define ERROR_3B 0x3B /* Unexpected network error */
|
|
#define ERROR_3C 0x3C /* Remote adapter incompatible */
|
|
#define ERROR_3D 0x3D /* Print queue full */
|
|
#define ERROR_3E 0x3E /* Not enough room for print file */
|
|
#define ERROR_3F 0x3F /* Print file was deleted */
|
|
#define ERROR_40 0x40 /* Network name deleted */
|
|
#define ERROR_41 0x41 /* Network access denied */
|
|
#define ERROR_42 0x42 /* Incorrect network device type */
|
|
#define ERROR_43 0x43 /* Network name not found */
|
|
#define ERROR_44 0x44 /* Network name limit exceeded */
|
|
#define ERROR_45 0x45 /* NetBIOS session limit exceeded */
|
|
#define ERROR_46 0x46 /* Temporary pause */
|
|
#define ERROR_47 0x47 /* Network request not accepted */
|
|
#define ERROR_48 0x48 /* Print or disk redirection paused */
|
|
#define ERROR_50 0x50 /* File already exists */
|
|
#define ERROR_51 0x51 /* Reserved */
|
|
#define ERROR_52 0x52 /* Cannot make directory */
|
|
#define ERROR_53 0x53 /* Fail on Int 24H (critical error) */
|
|
#define ERROR_54 0x54 /* Too many redirections */
|
|
#define ERROR_55 0x55 /* Duplicate redirection */
|
|
#define ERROR_56 0x56 /* Invalid password */
|
|
#define ERROR_57 0x57 /* Invalid parameter */
|
|
#define ERROR_58 0x58 /* Net write fault */
|
|
#define ERROR_DISKFULL 0x100 /* Disk Full */
|
|
|
|
// External Variables in EXTERNS.H
|
|
#endif // PH_SULIB
|