Interruption 15h |
Fonction 83h |
Attend un événement |
AT, PS/2 |
Description
Cette fonction permet d'effectuer l'attente d'un événement.
Entrée
Registre |
Description |
AX |
8300h |
CX:DX |
Cette paire de registres contient les microseconde (millionième de seconde) |
ES:BX |
Cette paire de registres contient l'adresse de l'octet du drapeau de sémaphore |
Sortie
Drapeau |
Valeur |
Description |
CF |
1 |
Une erreur s'est produite, alors: |
AH |
Ce registre permet d'indiquer le code d'état : |
00h |
Un événement est déjà en attendu |
80h |
La commande est invalide (PC, PC Junior) |
86h |
La commande n'est pas supporté (XT et après) |
0 |
Tous va bien, dans ce cas: |
AH |
00h |
Remarques
- L'appel de cette fonction revient immédiatement. Si la fonction réussit, le bit 7 de l'octet de sémaphore est défini lorsque l'intervalle spécifié s'est écoulé. Le programme appelant
est responsable de la suppression du sémaphore avant de demander cette fonction.
- La durée réelle d'une attente d'événement est toujours un multiple entier de 976 microsecondes. Les interruptions de puce de date et d'horloge CMOS sont utilisées pour
mettre en oeuvre cette fonction.
- L'utilisation de cette fonction permet des retards programmés indépendants du matériel à une résolution plus fine que celle obtenue en utilisant la fonction du DOS
Get Time (Interruption 21h, fonction 2Ch), retournant le temps en centièmes de seconde).
- Voir également l'interruption 15h, fonction 86h, suspendant le programme appelant pour l'intervalle spécifié en millisecondes.
- Cette fonction n'est pas prise en charge sur les modèles 25 et 30 des micro-ordinateurs PS/2 de l'entreprise IBM.
Dernière mise à jour : Jeudi, le 3 mars 2016