[NTVDM]
[reactos.git] / reactos / subsystems / mvdm / ntvdm / dos / dem.h
1 /*
2 * COPYRIGHT: GPL - See COPYING in the top level directory
3 * PROJECT: ReactOS Virtual DOS Machine
4 * FILE: dem.h
5 * PURPOSE: DOS 32-bit Emulation Support Library -
6 * This library is used by the built-in NTVDM DOS32 and by
7 * the NT 16-bit DOS in Windows (via BOPs). It also exposes
8 * exported functions that can be used by VDDs.
9 * PROGRAMMERS: Aleksandar Andrejevic <theflash AT sdf DOT lonestar DOT org>
10 * Hermes Belusca-Maito (hermes.belusca@sfr.fr)
11 */
12
13 #ifndef _DEM_H_
14 #define _DEM_H_
15
16 /* INCLUDES *******************************************************************/
17
18 #include "dos32krnl/dos.h"
19
20 /* DEFINES ********************************************************************/
21
22 /* BOP Identifiers */
23 #define BOP_LOAD_DOS 0x2B // DOS Loading and Initializing BOP. In parameter (following bytes) we take a NULL-terminated string indicating the name of the DOS kernel file.
24 #define BOP_START_DOS 0x2C // DOS Starting BOP. In parameter (following bytes) we take a NULL-terminated string indicating the name of the DOS kernel file.
25 #define BOP_DOS 0x50 // DOS System BOP (for NTIO.SYS and NTDOS.SYS)
26 #define BOP_CMD 0x54 // DOS Command Interpreter BOP (for COMMAND.COM)
27
28 /* VARIABLES ******************************************************************/
29
30 #ifndef STANDALONE
31 extern BOOLEAN AcceptCommands;
32 extern HANDLE CommandThread;
33 extern ULONG SessionId;
34 #endif
35
36 /* FUNCTIONS ******************************************************************/
37
38 DWORD
39 WINAPI
40 demClientErrorEx
41 (
42 IN HANDLE FileHandle,
43 IN CHAR Unknown,
44 IN BOOL Flag
45 );
46
47 DWORD
48 WINAPI
49 demFileDelete
50 (
51 IN LPCSTR FileName
52 );
53
54 DWORD
55 WINAPI
56 demFileFindFirst
57 (
58 OUT PVOID lpFindFileData,
59 IN LPCSTR FileName,
60 IN WORD AttribMask
61 );
62
63 DWORD
64 WINAPI
65 demFileFindNext
66 (
67 OUT PVOID lpFindFileData
68 );
69
70 UCHAR
71 WINAPI
72 demGetPhysicalDriveType
73 (
74 IN UCHAR DriveNumber
75 );
76
77 BOOL
78 WINAPI
79 demIsShortPathName
80 (
81 IN LPCSTR Path,
82 IN BOOL Unknown
83 );
84
85 DWORD
86 WINAPI
87 demSetCurrentDirectoryGetDrive
88 (
89 IN LPCSTR CurrentDirectory,
90 OUT PUCHAR DriveNumber
91 );
92
93 #endif // _DEM_H_
94
95 /* EOF */