Set a better value for gap3 on read/write requests.
Modified: trunk/reactos/drivers/storage/floppy/readwrite.c

Modified: trunk/reactos/drivers/storage/floppy/readwrite.c
--- trunk/reactos/drivers/storage/floppy/readwrite.c	2005-04-10 16:41:32 UTC (rev 14577)
+++ trunk/reactos/drivers/storage/floppy/readwrite.c	2005-04-10 16:44:00 UTC (rev 14578)
@@ -430,6 +430,7 @@
   NTSTATUS Status;
   BOOLEAN DiskChanged;
   ULONG_PTR TransferByteOffset;
+  UCHAR Gap;
 
   PAGED_CODE();
 
@@ -523,6 +524,15 @@
     }
 
   /* 
+   * 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 
    *
    * This is as good of a place as any to document something that used to confuse me
@@ -703,7 +713,7 @@
 
       /* 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);