You determine the write-protect status of a disk by passing an IOExtTD to the device with TD_PROTSTATUS set in io_Command. For quick I/O, you must set io_Flags to IOF_QUICK. DiskIO->iotd_Req.io_Flags = IOF_QUICK; DiskIO->iotd_Req.io_Command = TD_PROTSTATUS; BeginIO((struct IORequest *)DiskIO); TD_PROTSTATUS returns the write-protect status in io_Actual. The value will be zero if the disk is not write-protected and nonzero if the disk is write-protected.