|
|
1.1 ! root 1: ; CP-DOS error codes ! 2: ; ! 3: ; SCCSID = @(#)error.inc 8.19 87/07/23 ! 4: ; ! 5: ; CP-DOS calls all return error codes through AX. If an error occurred then ! 6: ; the carry bit will be set and the error code is in AX. If no error occurred ! 7: ; then the carry bit is reset and AX contains returned info. ! 8: ; ! 9: ; Since the set of error codes is being extended as we extend the operating ! 10: ; system, we have provided a means for applications to ask the system for a ! 11: ; recommended course of action when they receive an error. ! 12: ; ! 13: ; The GetExtendedError system call returns a universal error, an error ! 14: ; location and a recommended course of action. The universal error code is ! 15: ; a symptom of the error REGARDLESS of the context in which GetExtendedError ! 16: ; is issued. ! 17: ; ! 18: ! 19: ; ! 20: ; These are the 2.0 error codes ! 21: ; ! 22: NO_ERROR EQU 0 ! 23: ERROR_INVALID_FUNCTION EQU 1 ! 24: ERROR_FILE_NOT_FOUND EQU 2 ! 25: ERROR_PATH_NOT_FOUND EQU 3 ! 26: ERROR_TOO_MANY_OPEN_FILES EQU 4 ! 27: ERROR_ACCESS_DENIED EQU 5 ! 28: ERROR_INVALID_HANDLE EQU 6 ! 29: ERROR_ARENA_TRASHED EQU 7 ! 30: ERROR_NOT_ENOUGH_MEMORY EQU 8 ! 31: ERROR_INVALID_BLOCK EQU 9 ! 32: ERROR_BAD_ENVIRONMENT EQU 10 ! 33: ERROR_BAD_FORMAT EQU 11 ! 34: ERROR_INVALID_ACCESS EQU 12 ! 35: ERROR_INVALID_DATA EQU 13 ! 36: ;**** reserved EQU 14 ; ***** ! 37: ERROR_INVALID_DRIVE EQU 15 ! 38: ERROR_CURRENT_DIRECTORY EQU 16 ! 39: ERROR_NOT_SAME_DEVICE EQU 17 ! 40: ERROR_NO_MORE_FILES EQU 18 ! 41: ; ! 42: ; These are the universal int 24 mappings for the old INT 24 set of errors ! 43: ; ! 44: ERROR_WRITE_PROTECT EQU 19 ! 45: ERROR_BAD_UNIT EQU 20 ! 46: ERROR_NOT_READY EQU 21 ! 47: ERROR_BAD_COMMAND EQU 22 ! 48: ERROR_CRC EQU 23 ! 49: ERROR_BAD_LENGTH EQU 24 ! 50: ERROR_SEEK EQU 25 ! 51: ERROR_NOT_DOS_DISK EQU 26 ! 52: ERROR_SECTOR_NOT_FOUND EQU 27 ! 53: ERROR_OUT_OF_PAPER EQU 28 ! 54: ERROR_WRITE_FAULT EQU 29 ! 55: ERROR_READ_FAULT EQU 30 ! 56: ERROR_GEN_FAILURE EQU 31 ! 57: ; ! 58: ; These are the new 3.0 error codes reported through INT 24 ! 59: ; ! 60: ERROR_SHARING_VIOLATION EQU 32 ! 61: ERROR_LOCK_VIOLATION EQU 33 ! 62: ERROR_WRONG_DISK EQU 34 ! 63: ERROR_FCB_UNAVAILABLE EQU 35 ! 64: ERROR_SHARING_BUFFER_EXCEEDED EQU 36 ! 65: ; ! 66: ; New OEM network-related errors are 50-79 ! 67: ; ! 68: ERROR_NOT_SUPPORTED EQU 50 ! 69: ERROR_NETWORK_ACCESS_DENIED EQU 65 ! 70: ; ! 71: ; End of INT 24 reportable errors ! 72: ; ! 73: ERROR_FILE_EXISTS EQU 80 ! 74: ERROR_DUP_FCB EQU 81 ; ***** ! 75: ERROR_CANNOT_MAKE EQU 82 ! 76: ERROR_FAIL_I24 EQU 83 ! 77: ; ! 78: ; New 3.0 network related error codes ! 79: ; ! 80: ERROR_OUT_OF_STRUCTURES EQU 84 ! 81: ERROR_ALREADY_ASSIGNED EQU 85 ! 82: ERROR_INVALID_PASSWORD EQU 86 ! 83: ERROR_INVALID_PARAMETER EQU 87 ! 84: ERROR_NET_WRITE_FAULT EQU 88 ! 85: ; ! 86: ; New error codes for 4.0 ! 87: ; ! 88: ERROR_NO_PROC_SLOTS EQU 89 ; no process slots available ! 89: ERROR_NOT_FROZEN EQU 90 ! 90: ERR_TSTOVFL EQU 91 ; timer service table overflow ! 91: ERR_TSTDUP EQU 92 ; timer service table duplicate ! 92: ERROR_NO_ITEMS EQU 93 ; There were no items to operate upon ! 93: ERROR_INTERRUPT EQU 95 ; interrupted system call ! 94: ! 95: ERROR_TOO_MANY_SEMAPHORES EQU 100 ; user/sys open sem limit hit ! 96: ERROR_EXCL_SEM_ALREADY_OWNED EQU 101 ; exclusive sem already owned ! 97: ERROR_SEM_IS_SET EQU 102 ; SemClose found sem set ! 98: ERROR_TOO_MANY_SEM_REQUESTS EQU 103 ; too many exclusive sem reqs ! 99: ERROR_INVALID_AT_INTERRUPT_TIME EQU 104 ; operation invalid at int time ! 100: ERROR_SEM_OWNER_DIED EQU 105 ; waitsem found owner died ! 101: ERROR_SEM_USER_LIMIT EQU 106 ; too many procs have this sem ! 102: ERROR_DISK_CHANGE EQU 107 ; insert disk b into drive a ! 103: ERROR_DRIVE_LOCKED EQU 108 ; drive locked by another process ! 104: ERROR_BROKEN_PIPE EQU 109 ; write on pipe with no reader ! 105: ; ! 106: ; New error codes for 5.0 ! 107: ; ! 108: ERROR_OPEN_FAILED EQU 110 ; open/created failed due to ! 109: ; explicit fail command ! 110: ERROR_BUFFER_OVERFLOW EQU 111 ; buffer passed to system call ! 111: ; is too small to hold return ! 112: ; data. ! 113: ERROR_DISK_FULL EQU 112 ; not enough space on the disk ! 114: ; (DOSNEWSIZE/w_NewSize) ! 115: ERROR_NO_MORE_SEARCH_HANDLES EQU 113 ; can't allocate another search ! 116: ; structure and handle. ! 117: ; (DOSFINDFIRST/w_FindFirst) ! 118: ERROR_INVALID_TARGET_HANDLE EQU 114 ; Target handle in DOSDUPHANDLE ! 119: ; is invalid ! 120: ERROR_PROTECTION_VIOLATION EQU 115 ; Bad user virtual address ! 121: ERROR_VIOKBD_REQUEST EQU 116 ! 122: ERROR_INVALID_CATEGORY EQU 117 ; Category for DEVIOCTL in not ! 123: ; defined ! 124: ERROR_INVALID_VERIFY_SWITCH EQU 118 ; invalid value passed for ! 125: ; verify flag ! 126: ERROR_BAD_DRIVER_LEVEL EQU 119 ; DosDevIOCTL looks for a level ! 127: ; four driver. If the driver ! 128: ; is not level four we return ! 129: ; this code ! 130: ERROR_CALL_NOT_IMPLEMENTED EQU 120 ; returned from stub api calls. ! 131: ; This call will disappear when ! 132: ; all the api's are implemented. ! 133: ERROR_SEM_TIMEOUT EQU 121 ; Time out happened from the ! 134: ; semaphore api functions. ! 135: ERROR_INSUFFICIENT_BUFFER EQU 122 ; Some call require the ! 136: ; application to pass in a buffer ! 137: ; filled with data. This error is ! 138: ; returned if the data buffer is too ! 139: ; small. For example: DosSetFileInfo ! 140: ; requires 4 bytes of data. If a ! 141: ; two byte buffer is passed in then ! 142: ; this error is returned. ! 143: ; error_buffer_overflow is used when ! 144: ; the output buffer in not big enough. ! 145: ERROR_INVALID_NAME EQU 123 ; illegal character or malformed ! 146: ; file system name ! 147: ERROR_INVALID_LEVEL EQU 124 ; unimplemented level for info ! 148: ; retrieval or setting ! 149: ERROR_NO_VOLUME_LABEL EQU 125 ; no volume label found with ! 150: ; DosQFSInfo command ! 151: ERROR_MOD_NOT_FOUND EQU 126 ; w_getprocaddr,w_getmodhandle ! 152: ERROR_PROC_NOT_FOUND EQU 127 ; w_getprocaddr ! 153: ! 154: ERROR_WAIT_NO_CHILDREN EQU 128 ; CWait finds to children ! 155: ! 156: ERROR_CHILD_NOT_COMPLETE EQU 129 ; CWait children not dead yet ! 157: ! 158: ;This is a temporary fix for the 4-19-86 build this should be changed when ! 159: ; we get the file from MS ! 160: ERROR_DIRECT_ACCESS_HANDLE EQU 130 ; handle operation is invalid ! 161: ; for direct disk access ! 162: ; handles ! 163: ERROR_NEGATIVE_SEEK EQU 131 ; application tried to seek ! 164: ; to negative offset ! 165: ERROR_SEEK_ON_DEVICE EQU 132 ; application tried to seek ! 166: ; on device or pipe ! 167: ; ! 168: ; The following are errors generated by the join and subst workers ! 169: ; ! 170: ! 171: ERROR_IS_JOIN_TARGET EQU 133 ! 172: ERROR_IS_JOINED EQU 134 ! 173: ERROR_IS_SUBSTED EQU 135 ! 174: ERROR_NOT_JOINED EQU 136 ! 175: ERROR_NOT_SUBSTED EQU 137 ! 176: ERROR_JOIN_TO_JOIN EQU 138 ! 177: ERROR_SUBST_TO_SUBST EQU 139 ! 178: ERROR_JOIN_TO_SUBST EQU 140 ! 179: ERROR_SUBST_TO_JOIN EQU 141 ! 180: ERROR_BUSY_DRIVE EQU 142 ! 181: ERROR_SAME_DRIVE EQU 143 ! 182: ERROR_DIR_NOT_ROOT EQU 144 ! 183: ERROR_DIR_NOT_EMPTY EQU 145 ! 184: ERROR_IS_SUBST_PATH EQU 146 ! 185: ERROR_IS_JOIN_PATH EQU 147 ! 186: ERROR_PATH_BUSY EQU 148 ! 187: ERROR_IS_SUBST_TARGET EQU 149 ! 188: ERROR_SYSTEM_TRACE EQU 150 ; system trace error ! 189: ! 190: ERROR_INVALID_EVENT_COUNT equ 151 ; DosMuxSemWait errors ! 191: ERROR_TOO_MANY_MUXWAITERS equ 152 ; ! 192: ERROR_INVALID_LIST_FORMAT equ 153 ; ! 193: ERROR_LABEL_TOO_LONG equ 154 ; volume label is too big ! 194: ERROR_TOO_MANY_TCBS equ 155 ; can't create another tcb ! 195: ; in this PTDA ! 196: ERROR_SIGNAL_REFUSED equ 156 ; Signal refused ! 197: ERROR_DISCARDED equ 157 ; segment is discarded ! 198: ERROR_NOT_LOCKED equ 158 ; segment was not locked ! 199: ERROR_BAD_THREADID_ADDR equ 159 ; bad thread id address ! 200: ERROR_BAD_ARGUMENTS equ 160 ; bad environment pointer ! 201: ! 202: ; passed to exec ! 203: ERROR_BAD_PATHNAME equ 161 ; bad pathname passed to exec ! 204: ERROR_SIGNAL_PENDING equ 162 ; signal already pending ! 205: ERROR_UNCERTAIN_MEDIA equ 163 ; ERROR_I24 mapping ! 206: ERROR_MAX_THRDS_REACHED equ 164 ; No more proc slots ! 207: ERROR_MONITORS_NOT_SUPPORTED equ 165 ; ERROR_I24 mapping ! 208: ! 209: ; following error code added for DOSGETRESOURCE [loader related] ! 210: ! 211: ERROR_INVALID_SEGMENT_NUMBER EQU 180 ! 212: ! 213: ; following error codes are used by FreeDynLink [loader] ! 214: ! 215: ERROR_INVALID_CALLGATE EQU 181 ! 216: ERROR_INVALID_ORDINAL EQU 182 ! 217: ERROR_ALREADY_EXISTS EQU 183 ! 218: ERROR_NO_CHILD_PROCESS EQU 184 ; No child process to wait for ! 219: ERROR_CHILD_ALIVE_NOWAIT EQU 185 ; NoWait specified & child alive ! 220: ERROR_INVALID_FLAG_NUMBER EQU 186 ; Invalid flag number ! 221: ERROR_SEM_NOT_FOUND EQU 187 ; Semaphore does not exist ! 222: ! 223: ; following error codes have added to make the loader error ! 224: ; messages distinct ! 225: ! 226: ERROR_INVALID_STARTING_CODESEG EQU 188 ! 227: ERROR_INVALID_STACKSEG EQU 189 ! 228: ERROR_INVALID_MODULETYPE EQU 190 ! 229: ERROR_INVALID_EXE_SIGNATURE EQU 191 ! 230: ERROR_EXE_MARKED_INVALID EQU 192 ! 231: ERROR_BAD_EXE_FORMAT EQU 193 ! 232: ERROR_ITERATED_DATA_EXCEEDS_64k EQU 194 ! 233: ERROR_INVALID_MINALLOCSIZE EQU 195 ! 234: ERROR_DYNLINK_FROM_INVALID_RING EQU 196 ! 235: ERROR_IOPL_NOT_ENABLED EQU 197 ! 236: ERROR_INVALID_SEGDPL EQU 198 ! 237: ERROR_AUTODATASEG_EXCEEDS_64k EQU 199 ! 238: ERROR_RING2SEG_MUST_BE_MOVABLE EQU 200 ! 239: ERROR_RELOC_CHAIN_XEEDS_SEGLIM EQU 201 ! 240: ERROR_INFLOOP_IN_RELOC_CHAIN EQU 202 ! 241: ! 242: ERROR_ENVVAR_NOT_FOUND EQU 203 ! 243: ERROR_NOT_CURRENT_CTRY EQU 204 ! 244: ERROR_NO_SIGNAL_SENT EQU 205 ! 245: ERROR_FILENAME_EXCED_RANGE EQU 206 ; if filename > 8.3 ! 246: ERROR_RING2_STACK_IN_USE EQU 207 ; for FAPI ! 247: ERROR_META_EXPANSION_TOO_LONG EQU 208 ; if "*a" > 8.3 ! 248: ERROR_INVALID_SIGNAL_NUMBER EQU 209 ! 249: ERROR_THREAD_1_INACTIVE EQU 210 ! 250: ERROR_INFO_NOT_AVAIL EQU 211 ;@@ PTM 5550 ! 251: ERROR_LOCKED EQU 212 ! 252: ERROR_BAD_DYNALINK EQU 213 ;@@ PTM 5760 ! 253: ERROR_TOO_MANY_MODULES EQU 214 ! 254: ERROR_NESTING_NOT_ALLOWED EQU 215 ! 255: ; ! 256: ; Error codes 230 - 249 are reserved for MS Networks ! 257: ; ! 258: ! 259: ; REMINDER: don't forget to update error.h ! 260: ! 261: ; ! 262: ; All user-defined error codes from device drivers are mapped into the ! 263: ; range 0xFF00 - 0xFFFF ! 264: ; ! 265: ! 266: ERROR_USER_DEFINED_BASE EQU 0FF00h ! 267: ! 268: ! 269: ! 270: ; Device driver error codes ! 271: ! 272: ERROR_I24_WRITE_PROTECT EQU 0 ! 273: ERROR_I24_BAD_UNIT EQU 1 ! 274: ERROR_I24_NOT_READY EQU 2 ! 275: ERROR_I24_BAD_COMMAND EQU 3 ! 276: ERROR_I24_CRC EQU 4 ! 277: ERROR_I24_BAD_LENGTH EQU 5 ! 278: ERROR_I24_SEEK EQU 6 ! 279: ERROR_I24_NOT_DOS_DISK EQU 7 ! 280: ERROR_I24_SECTOR_NOT_FOUND EQU 8 ! 281: ERROR_I24_OUT_OF_PAPER EQU 9 ! 282: ERROR_I24_WRITE_FAULT EQU 0Ah ! 283: ERROR_I24_READ_FAULT EQU 0Bh ! 284: ERROR_I24_GEN_FAILURE EQU 0Ch ! 285: ERROR_I24_DISK_CHANGE EQU 0Dh ! 286: ERROR_I24_WRONG_DISK EQU 0Fh ! 287: ERROR_I24_UNCERTAIN_MEDIA EQU 10h ! 288: ERROR_I24_CHAR_CALL_INTERRUPTED EQU 11h ! 289: ERROR_I24_NO_MONITOR_SUPPORT EQU 12h ! 290: ERROR_I24_INVALID_PARAMETER EQU 13h ! 291: ! 292: ; THE FOLLOWING ARE MASKS FOR THE allowed action for hard error Daemon service ! 293: ! 294: ALLOWED_FAIL EQU 1h ! 295: ALLOWED_ABORT EQU 2h ! 296: ALLOWED_RETRY EQU 4h ! 297: ALLOWED_IGNORE EQU 8h ! 298: ! 299: ;NOTE: ABORT is ALWAYS allowed ! 300: ! 301: I24_OPERATION EQU 1h ;Z if READ,NZ if Write ! 302: I24_AREA EQU 6h ; 00 if DOS ! 303: ; 01 if FAT ! 304: ; 10 if root DIR ! 305: ; 11 if DATA ! 306: I24_CLASS EQU 80h ;Z if DISK, NZ if FAT or char ! 307: ! 308: ; GetExtendedError CLASSes ACTIONs LOCUSs ! 309: ! 310: ; Values for error CLASS ! 311: ! 312: ERRCLASS_OUTRES EQU 1 ; Out of Resource ! 313: ERRCLASS_TEMPSIT EQU 2 ; Temporary Situation ! 314: ERRCLASS_AUTH EQU 3 ; Permission problem ! 315: ERRCLASS_INTRN EQU 4 ; Internal System Error ! 316: ERRCLASS_HRDFAIL EQU 5 ; Hardware Failure ! 317: ERRCLASS_SYSFAIL EQU 6 ; System Failure ! 318: ERRCLASS_APPERR EQU 7 ; Application Error ! 319: ERRCLASS_NOTFND EQU 8 ; Not Found ! 320: ERRCLASS_BADFMT EQU 9 ; Bad Format ! 321: ERRCLASS_LOCKED EQU 10 ; Locked ! 322: ERRCLASS_MEDIA EQU 11 ; Media Failure ! 323: ERRCLASS_ALREADY EQU 12 ; Collision with Existing Item ! 324: ERRCLASS_UNK EQU 13 ; Unknown/other ! 325: ERRCLASS_CANT EQU 14 ; Can't perform requested operation ! 326: ERRCLASS_TIME EQU 15 ; Timeout ! 327: ! 328: ; Values for error ACTION ! 329: ! 330: ERRACT_RETRY EQU 1 ; Retry ! 331: ERRACT_DLYRET EQU 2 ; Delay Retry, retry after pause ! 332: ERRACT_USER EQU 3 ; Ask user to regive info ! 333: ERRACT_ABORT EQU 4 ; abort with clean up ! 334: ERRACT_PANIC EQU 5 ; abort immediately ! 335: ERRACT_IGNORE EQU 6 ; ignore ! 336: ERRACT_INTRET EQU 7 ; Retry after User Intervention ! 337: ! 338: ; Values for error LOCUS ! 339: ! 340: ERRLOC_UNK EQU 1 ; No appropriate value ! 341: ERRLOC_DISK EQU 2 ; Random Access Mass Storage ! 342: ERRLOC_NET EQU 3 ; Network ! 343: ERRLOC_SERDEV EQU 4 ; Serial Device ! 344: ERRLOC_MEM EQU 5 ; Memory ! 345: ! 346: ; Abnormal termination codes ! 347: ! 348: TC_NORMAL EQU 0 ! 349: TC_HARDERR EQU 1 ! 350: TC_GP_TRAP EQU 2 ! 351: TC_SIGNAL EQU 3
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.