Path: utzoo!attcan!uunet!portal!cup.portal.com!ts From: ts@cup.portal.com (Tim W Smith) Newsgroups: comp.sys.mac.programmer Subject: Re: Apple HD SC 80 does not support Asynch i/o. Message-ID: <13271@cup.portal.com> Date: 7 Jan 89 12:13:26 GMT References: <11605@dartvax.Dartmouth.EDU> <271@berlin.acss.umn.edu> <27318@ucbvax.BERKELEY.EDU> Organization: The Portal System (TM) Lines: 43 This is in response to the suggestion that Mac disk drives could let the application do something useful while the disk seeks by polling the drive with a Time Manager task. I am assuming that we are talking about SCSI disk drives here. A read from a disk will follow this sequence: SCSIGet SCSISelect SCSICmd SCSIRBlind SCSIComplete Perhaps the driver could return after the SCSICmd, and then periodically do a SCSIStat to see if the bus is in the DATA IN phase, and if so, issue the SCSIRBlind command. However, before I would consider doing this sort of thing in my driver, I would need some reassurances from Apple that the SCSI Manager is not going to get screwed up. For example, what happens if someone else tries to do a SCSIGet? Hopefully, they will simply get an error, and everything will be fine. But I wouldn't want to bet my data on it unless Apple says it's ok. Another thing to watch out for is SCSI devices that poll. Apple says not to poll. But consider something like an Ethernet box that attaches via the SCSI port, such as Dove's FastNet SCSI, or the similar box from Kinetics ( I don't remember what they call theirs ). These things have to poll, since there are no interrupts from SCSI. Before doing a scheme like the above with my disk driver, I would want to check with Kinetics and make sure I won't conflict with the way they use the SCSI port. ( I wouldn't have to check with Dove, because I wrote their alternate appletalk software, and I was very careful to avoid anything that could conflict with other SCSI users ). In summary, I think it might be workable, but it's risky. Tim Smith ps: MACDTS has said that the SCSI Manager will be re-written. Perhaps when this happens, it will be safer to do the various things described above.