]> wirehaze git hosting - MS-DOS.git/blob - v4.0/src/INC/ERROR.INC

wirehaze git hosting

MZ is back!
[MS-DOS.git] / v4.0 / src / INC / ERROR.INC
1 ; SCCSID = @(#)error.asm 1.1 85/04/10
2 ; SCCSID = @(#)error.asm 1.1 85/04/10
3 BREAK <Xenix error codes>
4
5 ;
6 ; XENIX calls all return error codes through AX. If an error occurred then
7 ; the carry bit will be set and the error code is in AX. If no error occurred
8 ; then the carry bit is reset and AX contains returned info.
9 ;
10 ; Since the set of error codes is being extended as we extend the operating
11 ; system, we have provided a means for applications to ask the system for a
12 ; recommended course of action when they receive an error.
13 ;
14 ; The GetExtendedError system call returns a universal error, an error
15 ; location and a recommended course of action. The universal error code is
16 ; a symptom of the error REGARDLESS of the context in which GetExtendedError
17 ; is issued.
18 ;
19
20 ;
21 ; These are the 2.0 error codes
22 ;
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 error_Code_Page_Mismatched EQU 37 ; DOS 4.00 ;AN000;
66 error_handle_EOF EQU 38 ; DOS 4.00 ;AN000;
67 error_handle_Disk_Full EQU 39 ; DOS 4.00 ;AN000;
68 ;
69 ; New OEM network-related errors are 50-79
70 ;
71 error_not_supported EQU 50
72 ;
73 ; End of INT 24 reportable errors
74 ;
75 error_file_exists EQU 80
76 error_DUP_FCB EQU 81 ; *****
77 error_cannot_make EQU 82
78 error_FAIL_I24 EQU 83
79 ;
80 ; New 3.0 network related error codes
81 ;
82 error_out_of_structures EQU 84
83 error_Already_assigned EQU 85
84 error_invalid_password EQU 86
85 error_invalid_parameter EQU 87
86 error_NET_write_fault EQU 88
87 error_sys_comp_not_loaded EQU 90 ; DOS 4.00 ;AN000;
88
89 BREAK <Interrupt 24 error codes>
90
91 error_I24_write_protect EQU 0
92 error_I24_bad_unit EQU 1
93 error_I24_not_ready EQU 2
94 error_I24_bad_command EQU 3
95 error_I24_CRC EQU 4
96 error_I24_bad_length EQU 5
97 error_I24_Seek EQU 6
98 error_I24_not_DOS_disk EQU 7
99 error_I24_sector_not_found EQU 8
100 error_I24_out_of_paper EQU 9
101 error_I24_write_fault EQU 0Ah
102 error_I24_read_fault EQU 0Bh
103 error_I24_gen_failure EQU 0Ch
104 ; NOTE: Code 0DH is used by MT-DOS.
105 error_I24_wrong_disk EQU 0Fh
106
107 ; THE FOLLOWING ARE MASKS FOR THE AH REGISTER ON Int 24
108
109 Allowed_FAIL EQU 00001000B
110 Allowed_RETRY EQU 00010000B
111 Allowed_IGNORE EQU 00100000B
112 ;NOTE: ABORT is ALWAYS allowed
113
114 I24_operation EQU 00000001B ;Z if READ,NZ if Write
115 I24_area EQU 00000110B ; 00 if DOS
116 ; 01 if FAT
117 ; 10 if root DIR
118 ; 11 if DATA
119 I24_class EQU 10000000B ;Z if DISK, NZ if FAT or char
120
121 BREAK <GetExtendedError CLASSes ACTIONs LOCUSs>
122
123 ; Values for error CLASS
124
125 errCLASS_OutRes EQU 1 ; Out of Resource
126 errCLASS_TempSit EQU 2 ; Temporary Situation
127 errCLASS_Auth EQU 3 ; Permission problem
128 errCLASS_Intrn EQU 4 ; Internal System Error
129 errCLASS_HrdFail EQU 5 ; Hardware Failure
130 errCLASS_SysFail EQU 6 ; System Failure
131 errCLASS_Apperr EQU 7 ; Application Error
132 errCLASS_NotFnd EQU 8 ; Not Found
133 errCLASS_BadFmt EQU 9 ; Bad Format
134 errCLASS_Locked EQU 10 ; Locked
135 errCLASS_Media EQU 11 ; Media Failure
136 errCLASS_Already EQU 12 ; Collision with Existing Item
137 errCLASS_Unk EQU 13 ; Unknown/other
138
139 ; Values for error ACTION
140
141 errACT_Retry EQU 1 ; Retry
142 errACT_DlyRet EQU 2 ; Delay Retry, retry after pause
143 errACT_User EQU 3 ; Ask user to regive info
144 errACT_Abort EQU 4 ; abort with clean up
145 errACT_Panic EQU 5 ; abort immediately
146 errACT_Ignore EQU 6 ; ignore
147 errACT_IntRet EQU 7 ; Retry after User Intervention
148
149 ; Values for error LOCUS
150
151 errLOC_Unk EQU 1 ; No appropriate value
152 errLOC_Disk EQU 2 ; Random Access Mass Storage
153 errLOC_Net EQU 3 ; Network
154 errLOC_SerDev EQU 4 ; Serial Device
155 errLOC_Mem EQU 5 ; Memory