ASPI Developer Information In response to widespread demand for Advanced SCSI Programming Interface (ASPI) software, Adaptec provides the ASPI Software Developer's Kit (SDK), a complete tool kit for developing Small Computer System Interface (SCSI) drivers for PC peripherals. This kit is designed to help you write your own ASPI device module that will work with any ASPI-compliant host adapter. A Few Words about ASPI ASPI itself was created by Adaptec but made available to anyone, in order to insulate developers from tedious details of the host adapter hardware. In addition, ASPI was designed to increase compatibility and simplify the connection of SCSI peripheral devices like Tape, CD-ROM, WORM, Magneto Optical, Scanners and others. ASPI provides a pass-through interface between the two main components of a software driver: a manager which is written to specific host adapter hardware (the software managers that Adaptec provides) and a device module which is tailored to the command set of a particular peripheral (what you would write using the ASPI SDK). SCSI device driver modules submit I/O requests to the host adapter, independent of the SCSI host adapter type or the SCSI device type. An ASPI manager (e.g. ASPI4DOS.SYS) handles and manages multiple I/O requests from multiple ASPI device driver modules. The ASPI Manager is operating system- and hardware-dependent, written to control a particular host adapter or host adapter family. An ASPI device driver module is hardware-independent and will work with any host adapter and ASPI manager combination. Once you have developed an ASPI device driver, your peripheral will be able to link with any AT, Micro Channel, EISA or laptop host adapter using ASPI as the software interface. The ASPI Software Developer Kit Contents (v2.2) * A copy of the ASPI specification document and programming guides for four major operating systems: DOS, Windows, OS/2, and NetWare * Sample assembler source code for DOS 1. a SCSI DOS Disk driver which can handle at most one SCSI partition on one SCSI drive 2. an ASPI demo program which provides examples of how to use the ASPI programming interface. The main program obtains the ASPI entry point and calls subroutines for the different ASPI functions Executes ASPI Host Adapter Inquiry Command Executes ASPI Get Device Type Command Executes ASPI Execute SCSI I/O Command Executes ASPI Reset SCSI Device Command using Posting * Sample C source code for Windows 1. an ASPI for Windows utility which constantly scans the SCSI bus and displays the name of a device, if it finds one * Sample C source code for OS/2 1. an ASPI demo utility for OS/2 which scans the SCSI bus and displays information about the targets it finds. It is a 32-bit application created with Borland C++ for OS/2. A project file and makefile are included. 2. an ASPI device driver for OS/2. This driver is intended for simple, single-threaded applications. If you need to support multi-tasking, you need to make your own modifications. * A debugging utility for ASPI for Windows development * A complimentary copy of Adaptec EZ-SCSI, the latest version of our DOS/Windows software managers, plus an installation program, CD-ROM drivers, and other utilities To use this kit it is assumed that you have a solid understanding of system level programming and are familiar at least with device driver development for the operating system you are targeting for SCSI. Prior to getting this kit you should get the device driver kit from the appropriate operating system vendor. How to order in the U.S. and Canada Call 800/442-7274 Shipping and handling: U.S. $7 AL/HI/PR $13.50 Canada $24.50 How to order Internationally Call 408/957-7274 Shipping and handling: $30 Price is $150.00 (US) and payment methods accepted include VISA and MasterCard. Standard delivery time is 2-5 days. If the product is unavailable, allow 2-3 weeks for delivery. Special Notes We strongly recommend that you purchase the ASPI sdk to give you as much assistance as possible. If, however, you would like to review the specs before purchasing the kit or would rather not purchase the kit, you can find the ASPI specs for each operating system in separate files on the Adaptec BBS. The files are found in the ASPI file library as follows: File Name Description ASPI_DOS.TXT ASPI for DOS spec ASPI_OS2.TXT ASPI for OS/2 spec ASPI_NET.TXT ASPI for NetWare spec ASPI_WIN.TXT ASPI for Windows spec The only support provided for ASPI developers by Adaptec is through the literature and source code provided in the ASPI Developer's Kit. Please do not call the Adaptec technical support line with ASPI programming questions, as that service is set up to support Adaptec SCSI host adapter products (e.g. AHA-1542, AHA-1522, etc.) and software (e.g. Adaptec EZ-SCSI) only. If you are doing development under UNIX, you do not need the ASPI developer's kit. Each UNIX vendor provides its own SCSI device driver programming methodology. You should call your UNIX vendor directly for SCSI device driver information rather than Adaptec.