Ce que l'on appelle habituellement les drivers Aspi [pour Advanced Scsi Programming Interface] ou la "couche Aspi" est une couche logicielle qui permet les échanges entre les matériels Scsi tels que les adaptateurs, les disques, graveurs et autres scanners avec les applications les utilisant. Cette Interface logicielle développée à l'origine par Adaptec, comprend une couche permettant aux créateurs de drivers Scsi de ne pas se soucier des différences de caractéristiques des cartes. Ainsi, tous les périphériques dialoguent de manière identique quel que soit le type d'adaptateur utilisé. Il est important de noter qu'avec la normalisation récente des méthodes d'accès aux différents types de périphériques [ Lecteurs de sauvegarde comme les Iomega Zip ATAPI, périphériques de type IDE sous NT, connexion sur port parallèle], le gestionnaire Aspi, s'il est installé correctement permet de voir ces différents périphériques comme s'ils étaient connectés sur un bus Scsi.
Mais c'est là que le problème se pose, avant toute chose il faut pouvoir installer une couche Aspi cohérente et compatible avec les différents matériels et logiciels présents sur l'ordinateur en question. En effet, de nombreuses applications installent sans même demander l'avis de l'utilisateur leurs propres fichiers Aspi, indispensables à l'opération de communication entre celles-ci et certains périphériques.
Tout d'abord, la couche Aspi se compose sous Windows 95/98/Me d'un ensemble de fichiers:
- aspienum.vxd situé dans le répertoire windows\system
- apix.vxd situé dans le répertoire windows\system\iosubsys
- winaspi.dll situé dans le répertoire windows\system
- wnaspi32.dll situé dans le répertoire windows\system
- Aspi2hlp.sys est installé par Windows 95.
Sous Windows NT, on trouve les fichiers suivants:
- aspi32.sys situé dans le répertoire winnt\system32\drivers
- wowpost.exe situé dans le répertoire winnt\system
- winaspi.dll situé dans le répertoire winnt\system
-wnaspi32.dll situé dans le répertoire winnt\system32
Ces fichiers, pour être pleinement fonctionnels ne doivent se trouver qu'en un seul exemplaire sur le système installé et uniquement à l'emplacement donné ci-dessus. En cas de doublons, les autres fichiers sont à effacer.
Sous Windows NT, les pilotes Aspi ne sont pas installés automatiquement avec la mise en place du système d'exploitation. Il faut donc que l'utilisateur le fasse de lui-même, depuis un compte de type administrateur.
Sous Windows 2000, il est prudent de vérifier la présence de pilotes Aspi qui auraient été installés par un logiciel tiers. Si aucun fichier Aspi n'est présent, ce fichier téléchargeable ici, doit être décompressé pui exécuté et permettra de réaliser l'upgrade sans avoir recours à l'utilitaire Aspi32.exe d'Adaptec.
Pour vérifier la version de chacun de ces fichiers, Adaptec propose son fameux AspiCheck qui donne les informations de version et indique si oui ou non la couche Aspi est valide.
Dans l'exemple ci-dessus, on voit clairement que l'un des fichiers indispensable est absent et que la version des trois autres est plutôt ancienne. A noter que les Aspi installés par défaut par Windows sont obsolètes et qu'il convient de les mettre à jour au plus vite.
Le problème qui se pose alors est le suivant: Si le sytème concerné ne dispose pas d'une version des pilotes Aspi produite par Adaptec, il devient alors impossible d'en faire la mise à jour. Au fil de smois de nombreux utilitaires sont apparus sur le Net proposant une upgrade sans avoir à installer un produit adaptec auparavant. ForceAspi, AspiMe ou encore Aspi4all ont été progressivement interdits par Adaptec qui revendique âprement ses droits sur la mise à jour des pilotes par Aspi32.exe.
On a bien du mal à mettre la main aujourd'hui sur ces utilitaires qui évitent à l'utilisateurs d'installer par exemple Easy Cd Creator, logiciel nullissime, juste pour avoir droit à une couche aspi made in Adaptec. Si vous voulez obtenir Aspi4all, écrivez moi et je vous l'enverrez volontiers par mail.
Voilà le message d'erreur obtenu lors de la tentative de mise à jour sans couche Aspi Adaptec sur le système:
Désolant, non? Pourtant, sans Aspi, point de salut car de nombreux logiciels de gravure, d'extraction audio ou de gestion du bus Scsi nécessitent une version récente de ces pilotes.
Certains éditeurs de logiciels de gravure comme Ahead avec son Nero Burning Rom ont dû modifier la couche Aspi pour permettre le fonctionnement de leur logiciel sans problème: La version 4.0 de Nero posait quelques problèmes sous Windows 2000 à certains utilisateurs et un correctif sous la forme d'un ficher wnaspi32.dll a été proposé.
Ahead propose également une version des pilotes Aspi pour Windows 95/98.
La dernière version des Aspi disponibles est la 4.60 [1021]. En relançant Aspichk.exe après avoir effectué la mise à jour, voici ce que vous devez obtenir :
Les erreurs de pilotes Aspi se manifestent sous la forme de codes d'erreurs que l'on retrouve sous certains logiciels de gravure, et voici les principaux d'entre eux:
#define SS_INVALID_CMD 0x80 // Invalid ASPI command
#define SS_INVALID_HA 0x81 // Invalid host adapter number
#define SS_NO_DEVICE 0x82 // SCSI device not installed
#define SS_INVALID_SRB 0xE0 // Invalid parameter set in SRB
#define SS_OLD_MANAGER 0xE1 // ASPI manager doesn't support Windows
#define SS_ILLEGAL_MODE 0xE2 // Unsupported Windows mode
#define SS_NO_ASPI 0xE3 // No ASPI managers resident
#define SS_FAILED_INIT 0xE4 // ASPI for windows failed init
#define SS_ASPI_IS_BUSY 0xE5 // No resources available to execute cmd
#define SS_BUFFER_TO_BIG 0xE6 // Buffer size to big to handle!
#define SS_MISMATCHED_COMPONENTS 0xE7 // The DLLs/EXEs of ASPI don't version check
#define SS_NO_ADAPTERS 0xE8 // No host adapters to manage
#define SS_INSUFFICIENT_RESOURCES 0xE9 // Couldn't allocate resources needed to init
#define SS_ASPI_IS_SHUTDOWN 0xEA // Call came to ASPI after PROCESS_DETACH
#define SS_BAD_INSTALL 0xEB // The DLL or other components are installed wrong
Pour restaurer si besoin est la couche Aspi fournie avec Windows il faut extraire les fichiers concernés des archives *.cab du cd:
Pour Windows 95 :
extract /e d:\win95\win95_03.cab wnaspi32.dll
extract /e d:\win95\win95_03.cab winaspi.dll
extract /e d:\win95\win95_03.cab apix.vxd
extract /e d:\win95\win95_03.cab aspi2hlp.sys
Pour Windows 98 :
extract /e d:\win98\win98_40.cab wnaspi32.dll
extract /e d:\win98\win98_40.cab winaspi.dll
extract /e d:\win98\win98_47.cab apix.vxd
extract /e d:\win98\win98_46.cab aspi2hlp.sys
D'une manière générale, il ne faut pas négliger l'importance des pilotes Aspi. Ils sont la clé de voûte de la communication entre l'adaptateur, les différents périphériques et le système installé.
De même, lorsqu'il s'agit de booter sous Dos avec une disquette de démarrage afin d'avoir accès aux lecteurs Scsi, il est indispensable d'avoir une disquette bien configurée selon l'adaptateur présent dans le système. Concernant les cartes Adaptec, la disquette de boot classique de Windows contient déjà les fichiers Aspi nécessaires à la reconnaissance de l'adaptateur et des lecteurs.
Lorsqu'il s'agit d'un adaptateur d'une autre marque, il devient indispensable de modifier la disquette de démarrage afin de la rendre compatible avec celui-ci. Par exemple, pour la tekram DC390-U3W, la modification de la disquette implique la copie de plusieurs fichiers:
-Symcd.sys
-Symdisk.sys [pour les lecteurs de bandes et autres]
-aspi8xx.fr
-aspi8xx.sys
Il faut ensuite modifier le fichier config.sys en rajoutant:
[CD]
device=aspi8xx.sys
device=aspi8xx.fr
device=symcd.sys /D:mscd001
device=symdisk.sys
Cette manipulation doit être faite aussitôt le système installé, pour ne pas avoir à y penser lors d'un formatage en catastrophe et éviter de courir les forums pour obtenir d'un bienfaiteur les fichiers salvateurs.
Voilà ce que l'on pouvait dire sur les pilotes Aspi. Ils ne sont pas parfaits, ni compatibles à 100% avec tous les types de périphériques mais leur bonne installation évitera bien des soucis.
---------------
Life is like a box of chocolate you never know what you gonna get.