xref: /reactos/modules/rosapps/include/vfd/vfdtypes.h (revision 25c7e1a8)
1 /*
2 	vfdtypes.h
3 
4 	Virtual Floppy Drive for Windows
5 	kernel mode / user mode common data types / constants
6 
7 	Copyright (C) 2003-2005 Ken Kato
8 */
9 
10 #ifndef _VFDTYPES_H_
11 #define _VFDTYPES_H_
12 
13 //
14 //	Supported disk type enumeration
15 //
16 enum _VFD_DISKTYPE
17 {
18 	VFD_DISKTYPE_FILE = 0,			//	file disk (direct file access)
19 	VFD_DISKTYPE_RAM				//	ram disk (on memory image)
20 };
21 
22 //
23 //	Supported media type enumeration
24 //
25 enum _VFD_MEDIA
26 {
27 	VFD_MEDIA_NONE = 0,				//	no media / unknown
28 	VFD_MEDIA_F5_160,				//	5.25"	160KB
29 	VFD_MEDIA_F5_180,				//	5.25"	180KB
30 	VFD_MEDIA_F5_320,				//	5.25"	320KB
31 	VFD_MEDIA_F5_360,				//	5.25"	360KB
32 	VFD_MEDIA_F3_640,				//	3.5"	640KB
33 	VFD_MEDIA_F5_640,				//	5.25"	640KB
34 	VFD_MEDIA_F3_720,				//	3.5"	720KB
35 	VFD_MEDIA_F5_720,				//	5.25"	720KB
36 	VFD_MEDIA_F3_820,				//	3.5"	820KB
37 	VFD_MEDIA_F3_1P2,				//	3.5"	1.2MB
38 	VFD_MEDIA_F5_1P2,				//	5.25"	1.2MB
39 	VFD_MEDIA_F3_1P4,				//	3.5"	1.44MB
40 	VFD_MEDIA_F3_1P6,				//	3.5"	1.68MB DMF
41 	VFD_MEDIA_F3_1P7,				//	3.5"	1.72MB DMF
42 	VFD_MEDIA_F3_2P8,				//	3.5"	2.88MB
43 	VFD_MEDIA_MAX					//	max value placeholder
44 };
45 
46 //
47 //	Supported file type enumeration
48 //
49 enum _VFD_FILETYPE
50 {
51 	VFD_FILETYPE_NONE = 0,			//	no file
52 	VFD_FILETYPE_RAW,				//	RAW image file
53 	VFD_FILETYPE_ZIP,				//	ZIP compressed image
54 	VFD_FILETYPE_MAX				//	max value place holder
55 };
56 
57 //
58 //	Type definition
59 //
60 typedef UCHAR						VFD_DISKTYPE,	*PVFD_DISKTYPE;
61 typedef UCHAR						VFD_MEDIA,		*PVFD_MEDIA;
62 typedef UCHAR						VFD_FILETYPE,	*PVFD_FILETYPE;
63 typedef UCHAR						VFD_FLAGS,		*PVFD_FLAGS;
64 
65 //
66 //	Image flag values
67 //
68 #define VFD_FLAG_WRITE_PROTECTED	(VFD_FLAGS)0x01
69 #define VFD_FLAG_DATA_MODIFIED		(VFD_FLAGS)0x02
70 
71 //
72 //	Default and max number of virtual floppy devices
73 //
74 #define VFD_DEFAULT_DEVICES			2
75 #define VFD_MAXIMUM_DEVICES			2
76 
77 #endif	//	_VFDTYPES_H_
78