ADC Home > Reference Library > Technical Q&As > Legacy Documents > Hardware & Drivers >

Legacy Documentclose button

Important: This document is part of the Legacy section of the ADC Reference Library. This information should not be used for new development.

Current information on this Reference Library topic can be found here:

Use Macintosh SCSI Manager for SCSI Chip Compatibility


Q: Our SCSI driver asserts the SCSI bus protocol directly (per the SCSI bus specs), using the low-memory global SCSIBase as the SCSI base address. Our code works properly on systems using the NCR 5380, but it hangs with the SCSI NCR 53C96. Should I add a NOP somewhere because the 53C96 is faster?

A: Although SCSIBase is exactly where a SCSI device driver should look to find the base address of a SCSI chip in the Macintosh, the NCR 53C96 is physically different from the NCR 5380. In addition to having its registers in different locations of the address map and a slightly different register set, the chip takes on much more of the burden (and control) of accessing the SCSI bus. The major difference is that, with the 5380, the chip controller (drvr) needs to actively respond to the phases of the SCSI bus as the target changes them, and it has to be ready to correctly react to any unexpected changes in state. For continued compatibility with the Macintosh product lines, your driver must use the SCSI Manager rather than write directly to the chip. With 5396, the chip controller needs to set up all information for the entire command sequence (Arbitration through Message In) and then tell the chip to execute it. The "controller" is not in direct control of the SCSI bus. With the 5380, the Target is always in control -- not your driver, but the 5380's interaction model gives the impression that your driver is in control.

Your best course of action is to ensure your SCSI driver uses the SCSI Manager so that it automatically works on all Macintosh platforms in case Apple changes chips again in the future. If there is something odd about your SCSI device that cannot be accommodated by the SCSI Manager (this is rare), you should get the documentation for the NCR 5396 from NCR and rewrite your driver to use this new "setup and go" interaction model.

[Jul 01 1995]


Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.