There's a possible assertion case between floppy and fastfat drivers code when floppy media was changed and there were no actual volume mounting.
Test code floppydetect.c (which is portion of actual usetup code) is attached. To trigger the issue you need to run
floppydetect when virtual floppy image is on, and couple times more when it is off, without any other access to drive A:
SignalMediaChanged(PDEVICE_OBJECT DeviceObject, PIRP Irp)
/* If volume is not mounted, do NOT set verify and return STATUS_IO_DEVICE_ERROR */
if(!(DeviceObject->Vpb->Flags & VPB_MOUNTED))
SignalMediaChanged() may returns without setting IoSetHardErrorOrVerifyDevice(Irp, DeviceObject);
DeviceToVerify = IoGetDeviceToVerify(PsGetCurrentThread());
to be set (not NULL)
Possible solution is to check DeviceToVerify (patch attached).