NTSTATUS Status;
BOOLEAN DiskChanged;
ULONG_PTR TransferByteOffset;
+ UCHAR Gap;
PAGED_CODE();
WriteToDevice = TRUE;
}
+ /*
+ * FIXME:
+ * FloppyDeviceData.ReadWriteGapLength specify the value for the physical drive.
+ * We should set this value depend on the format of the inserted disk and possible
+ * depend on the request (read or write). A value of 0 results in one rotation
+ * between the sectors (7.2sec for reading a track).
+ */
+ Gap = DriveInfo->FloppyDeviceData.ReadWriteGapLength;
+
/*
* Set up DMA transfer
*
/* Issue the read/write command to the controller. Note that it expects the opposite of WriteToDevice. */
if(HwReadWriteData(DriveInfo->ControllerInfo, !WriteToDevice, DriveInfo->UnitNumber, Cylinder, Head, StartSector,
- DriveInfo->BytesPerSectorCode, DriveInfo->DiskGeometry.SectorsPerTrack, 0, 0xff) != STATUS_SUCCESS)
+ DriveInfo->BytesPerSectorCode, DriveInfo->DiskGeometry.SectorsPerTrack, Gap, 0xff) != STATUS_SUCCESS)
{
KdPrint(("floppy: ReadWritePassive(): HwReadWriteData returned failure; unable to read; completing with STATUS_UNSUCCESSFUL\n"));
RWFreeAdapterChannel(DriveInfo->ControllerInfo->AdapterObject);