Interruption 21h |
Fonction 32h |
Lecture d'informations disque |
|---|---|---|
| DOS 2.0.+, OS/2, Windows NT | ||
Description
Cette fonction permet d'effectuer la lecture d'informations à propos du disque.
Entrée
| Registre | Valeur ou description | |
|---|---|---|
| AH | 32h | |
| DL | Ce registre permet d'indiquer le numéro d'unité : | |
| Valeur | Description | |
| 0 | Cette valeur permet d'indiquer l'unité courante | |
| 1 | Cette valeur permet d'indiquer l'unité de disque A: | |
| 2 | Cette valeur permet d'indiquer l'unité de disque B: | |
| 3 | Cette valeur permet d'indiquer l'unité de disque C: | |
| 4 | Cette valeur permet d'indiquer l'unité de disque D: | |
| 5 | Cette valeur permet d'indiquer l'unité de disque E: | |
| 6 | Cette valeur permet d'indiquer l'unité de disque F: | |
| 7 | Cette valeur permet d'indiquer l'unité de disque G: | |
| 8 | Cette valeur permet d'indiquer l'unité de disque H: | |
| 9 | Cette valeur permet d'indiquer l'unité de disque I: | |
| 10 | Cette valeur permet d'indiquer l'unité de disque J: | |
| 11 | Cette valeur permet d'indiquer l'unité de disque K: | |
| 12 | Cette valeur permet d'indiquer l'unité de disque L: | |
| 13 | Cette valeur permet d'indiquer l'unité de disque M: | |
| 14 | Cette valeur permet d'indiquer l'unité de disque N: | |
| 15 | Cette valeur permet d'indiquer l'unité de disque O: | |
| 16 | Cette valeur permet d'indiquer l'unité de disque P: | |
| 17 | Cette valeur permet d'indiquer l'unité de disque Q: | |
| 18 | Cette valeur permet d'indiquer l'unité de disque R: | |
| 19 | Cette valeur permet d'indiquer l'unité de disque S: | |
| 20 | Cette valeur permet d'indiquer l'unité de disque T: | |
| 21 | Cette valeur permet d'indiquer l'unité de disque U: | |
| 22 | Cette valeur permet d'indiquer l'unité de disque V: | |
| 23 | Cette valeur permet d'indiquer l'unité de disque W: | |
| 24 | Cette valeur permet d'indiquer l'unité de disque X: | |
| 25 | Cette valeur permet d'indiquer l'unité de disque Y: | |
| 26 | Cette valeur permet d'indiquer l'unité de disque Z: | |
Sortie
| Registre | Valeur ou description | |||||
|---|---|---|---|---|---|---|
| AL | Ce registre permet d'indiquer le résultat de l'opération : | |||||
| Valeur | Description | |||||
| FFh | Cette valeur permet d'indiquer qu'une erreur s'est produite | |||||
| 00h | Cette valeur permet d'indiquer si l'unité de disque existe, et dans ce cas : | |||||
| Registre | Valeur ou description | |||||
| DS:BX | Ce registre permet d'indiquer l'adresse d'une table contenant les informations suivantes : | |||||
| Déplacement | Longueur | Description | ||||
| 00h (0) | 1 octet | Ce champ permet de connaître le numéro de cette unité (0=A:, 1=B:, 2=C:, 3=D:,...) | ||||
| 01h (1) | 1 octet | Ce champ permet de connaître le nombre d'unité par périphérique de pilote | ||||
| 02h à 03h (2 à 3) | 2 octets | Ce champ permet de connaître le nombre d'octets que contient un secteur | ||||
| 04h (4) | 1 octet | Ce champ permet de connaître le nombre de secteur par unité d'allocation (cluster) moins la valeur 1 | ||||
| 05h (5) | 1 octet | Ce champ permet de connaître le compteur Shift pour convertir les unités d'allocation en secteurs | ||||
| 06h (6 à 7) | 2 octets | Ce champ permet de connaître le numéro du secteur de démarrage ("boot record") | ||||
| 08h (8) | 1 octet | Ce champ permet de connaître le nombre de copies de la FAT | ||||
| 09h à 0Ah (9 à 10) | 2 octets | Ce champ permet de connaître le nombre d'entrée dans le répertoire principal | ||||
| 0Bh à 0Ch (11 à 12) | 2 octets | Ce champ permet de connaître le premier secteur de la zone des fichiers | ||||
| 0Dh à 0Eh (13 à 14) | 2 octets | Ce champ permet de connaître le numéro de la dernière unité d'allocation | ||||
| 0Fh (15) | 1 octet | Ce champ permet de connaître le nombre de secteur que contient la FAT | ||||
| 10h à 11h (16 à 17) | 2 octets | Ce champ permet de connaître le numéro du premier secteur du répertoire principal | ||||
| 18 à 21 | 4 octet | Ce champ est réservé pour un usage interne ou futur | ||||
| 22 | 1 octet | Ce champ permet de connaître le type de disque: | ||||
| Valeur | Description | |||||
| FFh | Cette valeur permet d'indiquer une unité de disquette, double face, 8 secteurs par piste (320 Ko) | |||||
| FEh | Cette valeur permet d'indiquer l'unité de disquette, simple face, 8 secteurs par piste (160 Ko) | |||||
| FDh | Cette valeur permet d'indiquer l'unité de disquette, double face, 9 secteurs par piste (360 Ko) | |||||
| FCh | Cette valeur permet d'indiquer l'unité de disquette, simple face, 9 secteurs par piste (180 Ko) | |||||
| FAh | Cette valeur permet d'indiquer un disque en ROM, 16 secteurs par piste (995 Ko) | |||||
| F9h | Cette valeur permet d'indiquer une unité de disquette, double face, 15 secteurs par piste (1,2 Mo) ou unité de disquette double face, 9 secteurs par piste (720 Ko; 3,5") | |||||
| F8h | Cette valeur permet d'indiquer un disque dur | |||||
| F0h | Cette valeur permet d'indiquer un autre média | |||||
Remarque
- ATTENTION ! Cette fonction détruit le contenu du registre DS, il est donc nécessaire de le sauvegarder avant l'appel pour assurer le bon fonctionnement du programme !
Références
La Bible du PC: Programmation système - Sixième Edition, Edition Micro-Application, Michael Tischer, 1996, ISBN: 2-7429-0544-8, page 1516.
Aide-mémoire des interruptions du MS-DOS, Edition Marabout, Philippe Mercier, 1990, ISBN: 2-501-01297-6, page 190 à 191.
Dernière mise à jour : Jeudi, le 3 mars 2016
