Section courante

A propos

Section administrative du site

Interruption 13h

Fonction 01h

État disque ?
PC, XT, XT/286, PC Junior, AT, PS/2

Description

Cette fonction permet d'effectuer la lecture de l'état du disque.

Entrée

Registre Description
AH 01h
DL Ce registre permet d'indiquer l'unité :
Valeur Description
00h Cette valeur permet d'indiquer l'unité de disquette 0 (A:)
01h Cette valeur permet d'indiquer l'unité de disquette 1 (B:)
02h Cette valeur permet d'indiquer l'unité de disquette 2
03h Cette valeur permet d'indiquer l'unité de disquette 3
80h Cette valeur permet d'indiquer l'unité de disque dur 0
81h Cette valeur permet d'indiquer l'unité de disque dur 1
82h Cette valeur permet d'indiquer l'unité de disque dur 2
83h Cette valeur permet d'indiquer l'unité de disque dur 3

Sortie

Drapeau Valeur Description
CF 1 Cette valeur permet d'indiquer qu'une erreur c'est produite, dans ce cas :
Registre Description
AH Ce registre permet d'indiquer le code d'erreur :
Valeur Description
01h Cette valeur indique le numéro de la fonction est invalide
02h Cette valeur indique la marque d'adresse introuvable
03h Cette valeur indique une tentative d'écriture sur l'unité de disque protégée contre l'écriture
04h Cette valeur indique un secteur appelé introuvable
05h Cette valeur indique un échec de réinitialisation
06h Cette valeur indique une disquette absente
07h Cette valeur indique une mauvaise table de paramètres
08h Cette valeur indique un débordement DMA
09h Cette valeur indique un transfert de données par-delà la limite de segment
0Ah Cette valeur indique un secteur défectueux
0Bh Cette valeur indique une piste défectueux
0Ch Cette valeur indique un type de média introuvable
0Dh Cette valeur indique un nombre de secteur invalides
0Eh Cette valeur indique une marque de contrôle détectée
0Fh Cette valeur indique un niveau de DMA interdit
10h Cette valeur indique une erreur de lecture ou d'ECC
11h Cette valeur indique une erreur CRC corrigée
20h Cette valeur indique une erreur sur le contrôleur de disque
40h Cette valeur indique une piste introuvable
80h Cette valeur indique une erreur de dépassement de délai ou de lecture ne réagissant pas
AAh Cette valeur indique une unité pas prête
BBh Cette valeur indique une erreur indéfinie
CCh Cette valeur indique une erreur d'écriture
E0h Cette valeur indique une erreur dans le registre d'état
FFh Cette valeur indique une échec de l'opération demandant l'état
0 Cette valeur permet d'indiquer que tous va bien :
Registre Description
AH 00h

Remarque

Exemple

L'exemple suivant permet de vérifier l'état de l'unité de disque dur C:, il vous restera donc à remplacer les commentaires par le code approprié :

  1. MOV AH,01h
  2. MOV DL,80h
  3. INT 13h
  4. JC  @Error
  5.  ; Tout va bien
  6.  ; ...
  7. @Error:
  8.  ; Traitement de l'erreur

Références

Aide-mémoire des interruptions du MS-DOS, Edition Marabout, Philippe Mercier, 1990, ISBN: 2-501-01297-6, page 60 à 61.

Dernière mise à jour : Jeudi, le 3 mars 2016