Leaked source code of windows server 2003
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.

169 lines
4.9 KiB

  1. BREAK <DOS error codes>
  2. ;** ERROR.INC - DOS Error Codes
  3. ;
  4. ; The newer (DOS 2.0 and above) "XENIX-style" calls
  5. ; 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
  7. ; occurred 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. ; 2.0 error codes
  18. error_invalid_function EQU 1
  19. error_file_not_found EQU 2
  20. error_path_not_found EQU 3
  21. error_too_many_open_files EQU 4
  22. error_access_denied EQU 5
  23. error_invalid_handle EQU 6
  24. error_arena_trashed EQU 7
  25. error_not_enough_memory EQU 8
  26. error_invalid_block EQU 9
  27. error_bad_environment EQU 10
  28. error_bad_format EQU 11
  29. error_invalid_access EQU 12
  30. error_invalid_data EQU 13
  31. ;**** reserved EQU 14 ; *****
  32. error_invalid_drive EQU 15
  33. error_current_directory EQU 16
  34. error_not_same_device EQU 17
  35. error_no_more_files EQU 18
  36. ; These are the universal int 24 mappings for the old INT 24 set of errors
  37. error_write_protect EQU 19
  38. error_bad_unit EQU 20
  39. error_not_ready EQU 21
  40. error_bad_command EQU 22
  41. error_CRC EQU 23
  42. error_bad_length EQU 24
  43. error_Seek EQU 25
  44. error_not_DOS_disk EQU 26
  45. error_sector_not_found EQU 27
  46. error_out_of_paper EQU 28
  47. error_write_fault EQU 29
  48. error_read_fault EQU 30
  49. error_gen_failure EQU 31
  50. ; the new 3.0 error codes reported through INT 24
  51. error_sharing_violation EQU 32
  52. error_lock_violation EQU 33
  53. error_wrong_disk EQU 34
  54. error_FCB_unavailable EQU 35
  55. error_sharing_buffer_exceeded EQU 36
  56. error_Code_Page_Mismatched EQU 37 ; DOS 4.00 ;AN000;
  57. error_handle_EOF EQU 38 ; DOS 4.00 ;AN000;
  58. error_handle_Disk_Full EQU 39 ; DOS 4.00 ;AN000;
  59. ; New OEM network-related errors are 50-79
  60. error_not_supported EQU 50
  61. error_net_access_denied EQU 65 ;M028
  62. ; End of INT 24 reportable errors
  63. error_file_exists EQU 80
  64. error_DUP_FCB EQU 81 ; *****
  65. error_cannot_make EQU 82
  66. error_FAIL_I24 EQU 83
  67. ; New 3.0 network related error codes
  68. error_out_of_structures EQU 84
  69. error_Already_assigned EQU 85
  70. error_invalid_password EQU 86
  71. error_invalid_parameter EQU 87
  72. error_NET_write_fault EQU 88
  73. error_sys_comp_not_loaded EQU 90 ; DOS 4.00 ;AN000;
  74. BREAK <Interrupt 24 error codes>
  75. ;** Int24 Error Codes
  76. error_I24_write_protect EQU 0
  77. error_I24_bad_unit EQU 1
  78. error_I24_not_ready EQU 2
  79. error_I24_bad_command EQU 3
  80. error_I24_CRC EQU 4
  81. error_I24_bad_length EQU 5
  82. error_I24_Seek EQU 6
  83. error_I24_not_DOS_disk EQU 7
  84. error_I24_sector_not_found EQU 8
  85. error_I24_out_of_paper EQU 9
  86. error_I24_write_fault EQU 0Ah
  87. error_I24_read_fault EQU 0Bh
  88. error_I24_gen_failure EQU 0Ch
  89. ; NOTE: Code 0DH is used by MT-DOS.
  90. error_I24_wrong_disk EQU 0Fh
  91. ; THE FOLLOWING ARE MASKS FOR THE AH REGISTER ON Int 24
  92. ;
  93. ; NOTE: ABORT is ALWAYS allowed
  94. Allowed_FAIL EQU 00001000B
  95. Allowed_RETRY EQU 00010000B
  96. Allowed_IGNORE EQU 00100000B
  97. I24_operation EQU 00000001B ;Z if READ,NZ if Write
  98. I24_area EQU 00000110B ; 00 if DOS
  99. ; 01 if FAT
  100. ; 10 if root DIR
  101. ; 11 if DATA
  102. I24_class EQU 10000000B ;Z if DISK, NZ if FAT or char
  103. BREAK <GetExtendedError CLASSes ACTIONs LOCUSs>
  104. ;** The GetExtendedError call takes an error code and returns CLASS,
  105. ; ACTION and LOCUS codes to help programs determine the proper action
  106. ; to take for error codes that they don't explicitly understand.
  107. ; Values for error CLASS
  108. errCLASS_OutRes EQU 1 ; Out of Resource
  109. errCLASS_TempSit EQU 2 ; Temporary Situation
  110. errCLASS_Auth EQU 3 ; Permission problem
  111. errCLASS_Intrn EQU 4 ; Internal System Error
  112. errCLASS_HrdFail EQU 5 ; Hardware Failure
  113. errCLASS_SysFail EQU 6 ; System Failure
  114. errCLASS_Apperr EQU 7 ; Application Error
  115. errCLASS_NotFnd EQU 8 ; Not Found
  116. errCLASS_BadFmt EQU 9 ; Bad Format
  117. errCLASS_Locked EQU 10 ; Locked
  118. errCLASS_Media EQU 11 ; Media Failure
  119. errCLASS_Already EQU 12 ; Collision with Existing Item
  120. errCLASS_Unk EQU 13 ; Unknown/other
  121. ; Values for error ACTION
  122. errACT_Retry EQU 1 ; Retry
  123. errACT_DlyRet EQU 2 ; Delay Retry, retry after pause
  124. errACT_User EQU 3 ; Ask user to regive info
  125. errACT_Abort EQU 4 ; abort with clean up
  126. errACT_Panic EQU 5 ; abort immediately
  127. errACT_Ignore EQU 6 ; ignore
  128. errACT_IntRet EQU 7 ; Retry after User Intervention
  129. ; Values for error LOCUS
  130. errLOC_Unk EQU 1 ; No appropriate value
  131. errLOC_Disk EQU 2 ; Random Access Mass Storage
  132. errLOC_Net EQU 3 ; Network
  133. errLOC_SerDev EQU 4 ; Serial Device
  134. errLOC_Mem EQU 5 ; Memory