Équipement | Cellule 00410h à 00411h |
---|---|
PC, XT, PC Junior, AT, PS/2 |
Description
Ce mot contient divers informations sur l'équipement de la machine actuellement installé.
Lecture/Écriture
Bits | Description | ||||
---|---|---|---|---|---|
0 | Contient la valeur 1 advenant qu'il y ait au moins une unité de disquette installé sur la machine. | ||||
1 | Contient la valeur 1 si un coprocesseur mathématique est installé sur la machine. | ||||
2 et 3 | Lors des premiers PC, on utilisait ces bits pour indiquer la mémoire RAM disponible par le système sur la carte mère des PC et XT uniquement. | ||||
4 et 5 | Indique la carte vidéo installé exploiter au démarrage de la machine : | ||||
Valeur | Description | ||||
00b | Carte vidéo adaptateur spécial comme les cartes EGA, VGA ou PGA... | ||||
01b | Mode texte 40x25 en 16 couleurs | ||||
10b | Mode texte 80x25 en 16 couleurs | ||||
11b | Mode texte 80x25 en monochrome | ||||
6 et 7 | Indique le nombre d'unité de disquette installé: | ||||
Valeur | Description | ||||
00b | 1 lecteur | ||||
01b | 2 lecteurs | ||||
10b | 3 lecteurs | ||||
11b | 4 lecteurs | ||||
8 à 10 | Indique le nombre de ports série de format RS-232 installé. | ||||
12 | Aura la valeur 1 si une manette de jeux est installé | ||||
13 | Vaudra 1 si les modèle d'imprimante pour port série est installé. | ||||
14 et 15 | Indique le nombre d'imprimante connecté |
Exemples
Voici un exemple, en Turbo Pascal, permettant de demander l'équipement installé à l'aide de cette cellule :
- Program Mem00410;
-
- Var
- Equip:Word Absolute $0040:$0010;
-
- BEGIN
- If (Equip AND $0002) shr 1 = 1 Then Begin
- WriteLn('Coprocesseur mathématique présent');
- End
- Else
- Begin
- WriteLn('Coprocesseur mathématique non installé');
- End;
- WriteLn('Nombre de port RS-232 : ',(Equip AND $0E00) shr 9);
- WriteLn('Nombre de port parallèle : ',(Equip AND $C000) shr 14);
- WriteLn('Nombre de manette de jeu : ',(Equip AND $1000) shr 12);
- END.
Voici un exemple, en Turbo C, permettant de demander l'équipement installé à l'aide de cette cellule :
- #include <stdio.h>
- #include <stdlib.h>
- #include <dos.h>
-
- int main() {
- int Equip;
- Equip = peek(0x0040,0x0010);
- if((Equip & 0x0002) >> 1) {
- printf("Coprocesseur mathématique présent\n");
- } else {
- printf("Coprocesseur mathématique non installé\n");
- }
- printf("Nombre de port RS-232 : %i\n",(Equip & 0x0E00)>> 9);
- printf("Nombre de port parallèle : %i\n",(Equip & 0xC000) >> 14);
- printf("Nombre de manette de jeu : %i\n",(Equip & 0x1000)>> 12);
- return 0;
- }
Voici un exemple, en Turbo Basic, permettant de demander l'équipement installé à l'aide de cette cellule :
- DEF SEG=0
- Equip = PEEK(&H0410)+(PEEK(&H0411)*256)
- IF (Equip AND &H0002) = &H0002 Then
- PRINT "Coprocesseur mathématique présent"
- ELSE
- PRINT "Coprocesseur mathématique non installé"
- END IF
- PRINT "Nombre de port RS-232 : "; (Equip AND &H0E00) / 512
- PRINT "Nombre de port parallèle : "; (32768-(Equip AND &HC000)) / 16384
- PRINT "Nombre de manette de jeu : "; (Equip AND &H1000) / 4096
Voir également
Langage de programmation - Assembleur 80x86 - Interruption 11h: Demande la configuration
Dernière mise à jour : Samedi, le 2 août 2014