=================================================================== RCS file: /MkLinux/floppy-darwin/floppy_blkdev.cpp,v retrieving revision 1.23 retrieving revision 1.24 diff -u -r1.23 -r1.24 --- floppy-darwin/floppy_blkdev.cpp 2002/04/02 03:28:35 1.23 +++ floppy-darwin/floppy_blkdev.cpp 2002/04/06 03:43:59 1.24 @@ -52,7 +52,9 @@ int non_bsd_sleep(void *event, unsigned long usec); void donone(char *,...); -char *onepage; +char *onepage = NULL; +int org_mklinux_iokit_swim3_busyflag = 0; + } #undef MACH_DEBUG @@ -65,8 +67,6 @@ #endif #endif -int org_mklinux_iokit_swim3_busyflag = 0; - // in floppy.cpp // virtual IOReturn doAsyncReadWrite(IOMemoryDescriptor *buffer, // UInt32 block,UInt32 nblks, @@ -307,6 +307,12 @@ "kIOReturnSuccess" : myIOReturn == kIOReturnVMError? "kIOReturnVMError" : myIOReturn == kIOReturnUnderrun ? "kIOReturnUnderrun" : "kIOReturnIOError", retval, retval); + printf("swim3: for block %d-%d, returning %s (FloppyPluginIO returned %d/%x).\n", + block, block+nblks-1, + myIOReturn == kIOReturnSuccess ? + "kIOReturnSuccess" : myIOReturn == kIOReturnVMError? "kIOReturnVMError" + : myIOReturn == kIOReturnUnderrun ? "kIOReturnUnderrun" : + "kIOReturnIOError", retval, retval); return myIOReturn; #else return kIOReturnIOError; @@ -324,7 +330,7 @@ extern "C" { OSStatus - FloppyPluginGetInfo(BSStorePtr infoStore, + FloppyPluginGetInfo(int unit, struct BSStoreMPIInfo *info); } IOReturn org_mklinux_iokit_swim3_driver::reportBlockSize(UInt64 *blockSize) @@ -335,7 +341,7 @@ #endif OSStatus ret; - ret=FloppyPluginGetInfo(NULL, &info); + ret=FloppyPluginGetInfo(this->busdev->unit, &info); *blockSize=info.writeBlockSize; @@ -371,7 +377,7 @@ #endif OSStatus ret; - ret=FloppyPluginGetInfo(NULL, &info); + ret=FloppyPluginGetInfo(this->busdev->unit, &info); *maxBlock=info.storeSize / info.writeBlockSize; @@ -400,7 +406,7 @@ // IOLog("Polling swim3\n"); ScanForDisketteChange(); - ret=FloppyPluginGetInfo(NULL, &info); + ret=FloppyPluginGetInfo(this->busdev->unit, &info); if (info.curState == kBSOnline) *mediaPresent = true; @@ -414,9 +420,9 @@ media_present = *mediaPresent; - // IOLog("mediaPresent = %s, changedState = %s\n", - // (*mediaPresent == true) ? "true" : "false", - // (*changedState == true) ? "true" : "false"); + IOLog("mediaPresent = %s, changedState = %s\n", + (*mediaPresent == true) ? "true" : "false", + (*changedState == true) ? "true" : "false"); if (ret == E_BSSuccess) return kIOReturnSuccess; @@ -450,7 +456,7 @@ #endif OSStatus ret; - ret=FloppyPluginGetInfo(NULL, &info); + ret=FloppyPluginGetInfo(this->busdev->unit, &info); if (info.curState == kBSOffline) { return kIOReturnOffline; // or kIOReturnNotReady