All About ASPI

Note: Adaptec has changed their policy, and is now offering ASPI for free to the public via download from their site. The updated history is below. Chicken Systems licenses ASPI from Adaptec and makes it available for install on their updaters and demo programs.

ASPI, short for Adaptec SCSI Protocol Interface, was developed by Adaptec, a leader in SCSI technology, back in the early 1990's. The purpose was to create a standard interface in which programs could communicate with Adaptec's SCSI cards that they were manufacturing.

Adaptec soon became the leader in SCSI cards, both by making good products and by buying out the competition. By the time Windows 95 came out, Adaptec was the only game in town.

Because of this, Microsoft included ASPI (also called an ASPI layer), starting in the Windows 95 operating system install. Windows 98 and ME also include it. Because of this, ASPI isn't only SCSI - it also enables program to access non-SCSI drives, such as IDE/ATAPI CD-ROM's and ZipDrives. You cannot access parallel port, USB, and more protocols using the ASPI interface.

What this has to do with Translator
ASPI is important to Translator, because it uses it to communicate low-level with devices; this is how it can read disk formats other than DOS.

What exactly is an "ASPI layer"
The ASPI protocol is mostly based on one file, wnaspi32.dll. (winaspi.dll is the 16-bit version; we'll avoid talk about this file for now.) WIth the new ASPI version, there are other aspi dlll's. This is NOT the ASPI layer. There are some other files that support wnaspi32.dll, this is what well refer to as the ASPI layer.

For Win 95/98/ME, these are the ASPI layer files:

These are the ASPI layer files for NT/2K/XP:

The Windows 95/98 install includes wnaspi32.dll and the ASPI layer. The ME, 2000, and XP installs do not include wnaspi32.dll, nor the ASPI layer files. This is important to know.

There is another file, aspi.sys, that will be discussed below, along with a discussion concerning the emergence of third-party ASPI technologies.

Windows ME, 2000, and XP - Microsoft and Adaptec Divorce
Currently, Adaptec offers ASPI for free download to anyone who wants it from their web site, but it was not always that way. Read below for a history.

After and during Windows 95/98, Adaptec continued to update the ASPI, including support for new CD-readers and writers, and other improvements. However, apparently Microsoft wanted to move away from external, non-Microsoft technologies in their OS, so with the newer OS's (ME, 2000, XP), ASPI wnaspi32.dll and the ASPI layer) is not included as part of the OS. Microsoft includes a minimal "ASPI" (called the Pass Through interface) in these OS's. This doesn't use the standard ASPI calls, so in other words, ASPI is not native to these OS's.

So, Adaptec then adopted the policy of selling the newer ASPI, as part of the EZ-SCSI packages.

This is where things got a little confusing. Adaptec sells ASPI in the form of exclusively distributing the wnaspi32.dll file. They do make the latest version (4.60, build 1021) of the ASPI layer available for upload off their web site. They stated this:

"Do NOT install ASPI32.EXE with Windows 2000, Windows ME... If you have one of these [operating systems], you will be using a different aspi layer that will conflict with the one provided in this file." (Emphasis mine)

This was mostly a political statement. 2000, XP, and ME don't install an ASPI layer, nor does it install wnaspi32.dll. So what did this statement mean? This is meant to discourage people from downloading the latest layer and using it with Microsoft's newest OS's, which were meant to bypass ASPI. What Adaptec REALLY meant is "Microsoft is not permitted by us to distribute the latest ASPI layer, because they wanted to do it themselves. Good riddance."

Adaptec rightly confronted people who distribute wnaspi32.dll and an ASPI layer with their products, either in packaging, installs, or by download or making it available through a download. They were protecting their technology. Mostly, they found people who link it on their web site, and told them to stop. It's mainly the wnaspi32.dll that they protest, of course because that's the essential part of ASPI, and the file they protected and didn't make available for download.

Nevertheless, ASPI always did work with NT/2000/XP - many people had it, installed it, and it worked fine.

Fortunately, as of March of 2002. they now offer it for free. The same package updates ASPI in all Microsoft operating systems, and even has a 64-bit version! Chickens Systems has licensed it, and make it available on their updaters and demo downloads.

Contrary to what has been reported on many web sites and software packages, Adaptec DOES recommend ASPI for use on Windows NT/2000/XP operating systems; this is why they released the 4.7-series drivers. This information is based on several statements from their legal counsel and technical support staff.

Microsoft, of course, does not recommend that you use ANYONE ELSE'S software other than their own. =)

Further Developments
Translator will soon be available with code that makes ASPI not mandatory to have on your system to run Translator, at least if you are running NT, 2000, or XP. However, it should be said that while the Pass-Through interface (the built-in Microsoft system) is adequate, and does the job at least as far as Translator is concerned, ASPI is still a better technology, and we recommend that you install it on your system.