Release 940301
[wine/dcerpc.git] / include / int21.h
blob2d3d221b337f8e9f597f80133a5e6b1bc8c3b262
1 #ifndef INT21_H
2 #define INT21_H
3 #include <dirent.h>
5 struct dosdirent {
6 int inuse;
7 DIR *ds;
8 char unixpath[256];
9 char filename[256];
10 char filemask[12];
11 char attribute;
12 long filesize;
13 long filetime;
14 long filedate;
17 struct diskinfo {
18 unsigned int infolevel;
19 unsigned long serialnumber;
20 char label[11];
21 char fstype[8];
24 #define DosVersion 0x0303;
26 #define SectorSize 0x200;
27 #define SectorsPerCluster 0x04;
29 #define EAX context->sc_eax
30 #define EBX context->sc_ebx
31 #define ECX context->sc_ecx
32 #define EDX context->sc_edx
34 #define AX (context->sc_eax & 0x0000ffffL)
35 #define BX (context->sc_ebx & 0x0000ffffL)
36 #define CX (context->sc_ecx & 0x0000ffffL)
37 #define DX (context->sc_edx & 0x0000ffffL)
39 #define CS context->sc_cs
40 #define DS context->sc_ds
41 #define ES context->sc_es
43 #define DI context->sc_edi
44 #define SI context->sc_esi
46 #define EFL context->sc_efl
48 #define pointer(a,b) (((unsigned int) a << 16) | b)
49 #define segment(a) (a >> 16)
50 #define offset(a) (a & 0xffff)
52 #define SetCflag (EFL |= 0x00000001L)
53 #define ResetCflag (EFL &= 0xfffffffeL)
55 /* extended error codes */
57 #define NoError 0x00
58 #define InvalidFunction 0x01
59 #define FileNotFound 0x02
60 #define PathNotFound 0x03
61 #define AccessDenied 0x05
62 #define InvalidHandle 0x06
63 #define MCBDestroyed 0x07
64 #define OutOfMemory 0x08
65 #define MCBInvalid 0x09
66 #define DataInvalid 0x0d
67 #define InvalidDrive 0x0f
68 #define CanNotRemoveCwd 0x10
69 #define NotSameDevice 0x11
70 #define NoMoreFiles 0x12
71 #define WriteProtected 0x13
72 #define UnknownUnit 0x14
73 #define DriveNotReady 0x15
74 #define UnknownCommand 0x16
75 #define CRCError 0x17
76 #define BadRqLength 0x18
77 #define SeekError 0x19
78 #define UnknownMedia 0x1a
79 #define SectorNotFound 0x1b
80 #define OutOfPaper 0x1c
81 #define WriteFault 0x1d
82 #define ReadFault 0x1e
83 #define GeneralFailure 0x1f
84 #define ShareViolation 0x20
85 #define LockViolation 0x21
86 #define DiskFull 0x27
87 #define NoNetwork 0x49
88 #define FileExists 0x50
89 #define CanNotMakeDir 0x52
91 /* Error classes */
93 #define EC_Temporary 0x02
94 #define EC_AccessDenied 0x03
95 #define EC_AppError 0x04
96 #define EC_SystemFailure 0x06
97 #define EC_NotFound 0x08
98 #define EC_MediaError 0x0b
99 #define EC_Exists 0x0c
100 #define EC_Unknown 0x0d
102 /* Suggested actions */
104 #define SA_Retry 0x01
105 #define SA_Abort 0x04
106 #define SA_Ignore 0x06
107 #define SA_Ask4Retry 0x07
109 /* Error locus */
111 #define EL_Unknown 0x01
112 #define EL_Disk 0x02
113 #define EL_Network 0x03
114 #define EL_Memory 0x05
116 #endif /* INT21_H */