Interruption 15h |
Fonction 53h, Sous-Fonction 07h |
Fixe l'état de l'alimentation |
---|---|---|
APM (Advanced Power Management) v1.0+ |
Description
Cette fonction permet de fixer l'état de l'alimentation.
Entrée
Registre | Description |
---|---|
AX | 5307h |
BX | Ce registre permet d'indiquer l'identificateur de périphérique |
CX | Ce registre permet d'indiquer l'identificateur d'état système |
Sortie
Drapeau | Valeur | Description | |||
---|---|---|---|---|---|
CF | 1 | Une erreur s'est produite, alors : | |||
Registre | Description | ||||
AH | Ce registre permet d'indiquer le code d'état : | ||||
Valeur | Description | ||||
01h | Cette valeur permet d'indiquer que la fonctionnalité de gestion de l'alimentation est désactivée. | ||||
03h | Cette valeur permet d'indiquer que l'interface est non connectée. | ||||
09h | Cette valeur permet d'indiquer que l'identificateur de périphérique n'est pas reconnu. | ||||
0Ah | Cette valeur permet d'indiquer la valeur de paramètre est invalide dans le registre CX. | ||||
0Bh | Cette valeur permet d'indiquer que l'interface est non engagée. (APM v1.1) | ||||
60h | Cette valeur permet d'indiquer qu'il est impossible d'entrer dans l'état demandé. | ||||
0 | Tous va bien, dans ce cas : | ||||
Registre | Description | ||||
AH | 00h |
Remarque
- Cette fonction ne doit pas être appelé depuis un gestionnaire d'interruption matériel pour éviter les problèmes de réentrée.
Exemple
L'exemple suivant, écrit en Turbo Pascal 7, permet de fermer l'alimentation d'un micro-ordinateur supportant le APM :
- Program TurnOffComputer;
-
- Var
- SysErr:Byte;
-
- Function SetAPMMode(Mode:Word):Boolean;Assembler;ASM
- MOV AX,5307h
- mov BX,1
- MOV CX,Mode
- INT 15h
- MOV AL,0
- JC @Error
- MOV AL,True
- JMP @End
- @Error:
- MOV Byte Ptr SysErr,AH
- MOV Byte Ptr SysErr[1],03h
- @End:
- END;
-
- BEGIN
- ASM
- MOV AX,5301h
- XOR BX,BX
- INT 15h
- MOV AX,530Eh
- XOR BX,BX
- MOV CX,0101h
- INT 15h
- END;
- If Not SetAPMMode(3)Then WriteLn(SysErr);
- END.
Code source
Voici des exemples de code source d'utilitaires utilisant l'Interruption 15h: Fonction 53h, Sous-Fonction 07h :
Lien | Langage de programmation | Description | Projet | Syntaxe |
---|---|---|---|---|
POWER.PAS | Free Pascal, Turbo Pascal | Cette commande permet de fixer ou de demander les paramètres d'économiseur d'énergie du système d'exploitation. | Corail | POWER |
Voici des exemples de bibliothèques pour manipuler l'Interruption 15h, Fonction 53h :
Lien | Langage de programmation | Description | Projet | Définition |
---|---|---|---|---|
APMLIB.PAS | Free Pascal, Turbo Pascal | Cette unité contient les définitions et procédures pour la manipulation du gestionnaire d'alimentation APM d'un micro-ordinateur. | APMLIB-TP | APMLIB |
Dernière mise à jour : Samedi, le 12 août 2023