29#define MAX_DEVICE_NAME 255
30#define MAX_ARC_PATH_LEN 255
31#define MAX_DRIVES_PER_CONTROLLER 4
32#define MAX_CONTROLLERS 4
123#define GEOMETRY_144_MEDIATYPE F3_1Pt44_512
124#define GEOMETRY_144_CYLINDERS 80
125#define GEOMETRY_144_TRACKSPERCYLINDER 2
126#define GEOMETRY_144_SECTORSPERTRACK 18
127#define GEOMETRY_144_BYTESPERSECTOR 512
DRIVER_INITIALIZE DriverEntry
NTSTATUS NTAPI WaitForControllerInterrupt(PCONTROLLER_INFO ControllerInfo, PLARGE_INTEGER Timeout)
struct _DRIVE_INFO DRIVE_INFO
NTSTATUS NTAPI ResetChangeFlag(PDRIVE_INFO DriveInfo)
struct _DRIVE_INFO * PDRIVE_INFO
VOID NTAPI SignalMediaChanged(PDEVICE_OBJECT DeviceObject, PIRP Irp)
struct _CONTROLLER_INFO * PCONTROLLER_INFO
#define MAX_DRIVES_PER_CONTROLLER
struct _CONTROLLER_INFO CONTROLLER_INFO
VOID NTAPI StartMotor(PDRIVE_INFO DriveInfo)
VOID NTAPI StopMotor(PCONTROLLER_INFO ControllerInfo)
enum _INTERFACE_TYPE INTERFACE_TYPE
enum _KINTERRUPT_MODE KINTERRUPT_MODE
PADAPTER_OBJECT AdapterObject
KINTERRUPT_MODE InterruptMode
INTERFACE_TYPE InterfaceType
DRIVE_INFO DriveInfo[MAX_DRIVES_PER_CONTROLLER]
PKINTERRUPT InterruptObject
struct _CONTROLLER_INFO * ControllerInfo
WCHAR ArcPathBuffer[MAX_ARC_PATH_LEN]
PDEVICE_OBJECT DeviceObject
CM_FLOPPY_DEVICE_DATA FloppyDeviceData
WCHAR DeviceNameBuffer[MAX_DEVICE_NAME]
LARGE_INTEGER MotorStartTime
DISK_GEOMETRY DiskGeometry
_In_ PDEVICE_OBJECT DeviceObject
_Must_inspect_result_ _In_ PDRIVER_OBJECT _In_ PCUNICODE_STRING RegistryPath
_Must_inspect_result_ _In_ PDRIVER_OBJECT DriverObject