7

I have a Compaq ProSignia server with an onboard NCR53c710 EISA SCSI controller. Compaq supplies a driver for it (the latest version is contained in the SoftPaq 10751 (SP10751.EXE), called FWS2ASPI.SYS. The name is due to the fact, that this driver also supports a wide SCSI variant, "FWS2" is short for "Fast Wide SCSI-2". As the name of the file contains ASPI, one might reasonably expect this driver to be compliant to the ASPI specification.

As I have a multi-LUN CD drive, I loaded FWS2ASPI.SYS with the /LUN option for multi-LUN support, making it recognize all five logical units in that drive:

The COMPAQ Personal Computer FWS2ASPI Version 1.06
(C) Copyright Compaq Computer Corporation 1988, 1999

Controller 0 found on system board
 SCSI ID  0, LUN 0 --> MICROP  3243-19 1128RAAV
 SCSI ID  4, LUN 0 --> NAKAMICHMJ-5.16S
 SCSI ID  4, LUN 1 --> NAKAMICHMJ-5.16S
 SCSI ID  4, LUN 2 --> NAKAMICHMJ-5.16S
 SCSI ID  4, LUN 3 --> NAKAMICHMJ-5.16S
 SCSI ID  4, LUN 4 --> NAKAMICHMJ-5.16S

FWS2ASPI installed

Yet the Compaq-supplied FWS2CD.SYS driver only provides one instead of five CD drives, and it does not even mention any kind of LUN:

The COMPAQ personal Computer FWS2CD Version 1.06
(C) Copyright Compaq Computer Corporation 1988, 1999

Supported CD-ROM units:
   Unit 0 found on host adapter 0, SCSI ID  4

FWS2CD installed as device CPQCDROM

So I tried to use alternative ASPI CD drivers like Adaptec's ASPICD.SYS or Symbios' SYMCD.SYS, both complaining about "No ASPI driver" being present:

ASPI CD-ROM Driver for DOS
Version 4.01
Copyright 1990-1996 Adaptec, Inc.

ERROR: Adaptec ASPI Device Driver not available
CD-ROM driver NOT LOADER: no valid Adaptec host adapter
Symbios, Inc SDMS (TM) V4.0 SCSI CD-ROM Driver
Copyright 1996-1998 Symbios, Inc.  All Rights Reserved.
SYMCD-4.05.00
Warning: Unable to locate ASPI Manager

While I can understand that FWS2CD does not support multi-LUN devices, why don't the other SCSI CD drivers work?

1 Answer 1

9

As for example MEM /DEBUG reveals, the Compaq SCSI driver FWS2SCSI.SYS registers itself using the device driver name SCSICPQ$:

C:\>MEM /DEBUG
Detaillierte Übersicht des konventionellen Speichers:

  Segment              Insgesamt         Name                 Typ
  -------          -----------------  ----------   -------------------------
   00000               1.039    (1K)               Interrupt-Vektor
...
   0025B              36.192   (35K)  IO           Systemdaten
                         464    (0K)     SETVERXX  Instal. Gerät=SETVER
                       1.152    (1K)     XMSXXXX0  Instal. Gerät=HIMEM
                      29.504   (29K)     SCSICPQ$  Instal. Gerät=FWS2ASPI
...

The device name for an ASPI driver is supposed to be SCSIMGR$, though. So I tried patching the device name in RAM:

C:\>debug
-d25b:680L28
025B:0680  44 C4 02 34 07 05 49 E3-46 57 53 32 41 53 50 49   D..4..I.FWS2ASPI
025B:0690  00 00 7B 02 00 C0 17 00-22 00 53 43 53 49 43 50   ..{.....".SCSICP
025B:06A0  51 24 00 7A 03 6F 8E 2E                           Q$.z.o..
-e24b:69e "MGR"
-d25b:680L28
025B:0680  44 C4 02 34 07 05 49 E3-46 57 53 32 41 53 50 49   D..4..I.FWS2ASPI
025B:0690  00 00 7B 02 00 C0 17 00-22 00 53 43 53 49 43 50   ..{.....".SCSIMG
025B:06A0  51 24 00 7A 03 6F 8E 2E                           R$.z.o..
-q

Now the Adaptec driver loads:

C:\>devload scsi\adaptec\aspicd.sys /d:aspicd0$

ASPI CD-ROM Driver for DOS
Version 4.01
Copyright 1990-1996 Adaptec, Inc.

   Host Adapter 0, Target SCSI ID = 4 - LUN 0: NAKAMICHMJ-5.16S        1.11
   Host Adapter 0, Target SCSI ID = 4 - LUN 1: NAKAMICHMJ-5.16S        1.11
   Host Adapter 0, Target SCSI ID = 4 - LUN 2: NAKAMICHMJ-5.16S        1.11
   Host Adapter 0, Target SCSI ID = 4 - LUN 3: NAKAMICHMJ-5.16S        1.11
   Host Adapter 0, Target SCSI ID = 4 - LUN 4: NAKAMICHMJ-5.16S        1.11

CD-ROM driver installed: 1 host adapter(s),  5 target(s)

Accessing the CD drive(s) works fine after loading MSCDEX. The same applies for the Symbios CD driver (note that this is the Symbios 4.0 driver suite which is ASPI based, not the 3.0 driver suite which is CAM based).

So the answer is: The Compaq FWS2ASPI driver uses a non-standard device name, but seems to be ASPI compliant in all other regards.

5
  • 1
    A big PC company, shipping a driver that literally doesn't work due to a basic mistake? Knock me down with a feather!
    – Ian Kemp
    Mar 8 at 9:26
  • 6
    Maybe this is intentional — sp10751.txt contains: “New Features: Supports new ASPI driver service name to avoid conflict with Ultra-3 SCSI ASPI driver”. There is some chance that FWS2ASPI.SYS has an option to change the driver name to the standard one. Mar 8 at 9:51
  • I would have thought so as well, but I couldn’t find it. It would seem Compaq wasn’t too concerned about interoperability with non-Compaq drivers. Editing the driver binary looks like the only option. Mar 9 at 9:10
  • @SergeyVlasov Good idea. I might look into older Versions of the MS-DOS SCSI support disk, and check the driver name over there. I reverse engineered enough of that driver to positively confirm that it does not contain any option to change the name, neither documented nor undocumented. Mar 9 at 10:38
  • 2
    @Ian Kemp The driver does work: The MS-DOS SCSI support disk contains FWS2ASPI.SYS, FWS2DISK.SYS and FWS2CD.SYS. All of these drivers agree on the driver name SCSICPQ$, so they interoperate with each other. It's not "it doesn't work", but "it doesn't interoperate". So it's more like: A big PC company shipping a driver that doesn't interoperate due to an intentionally chosen minor incompatibility to the specification? Color me surprised. Makes me wonder whether Compaq had some dispute with Adaptec about licensing cost for the ASPI API and they settled be "not implementing ASPI" Mar 9 at 10:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .