GETINTVEC |
Demande le vecteur d'interruption |
---|---|
Turbo Pascal 4+ | DOS, WinDos |
Syntaxe
Procedure GetIntVec(Numero:Byte; Var Adresse:Pointer); |
Paramètres
Nom | Description |
---|---|
Numero | Ce paramètre permet d'indiquer le numéro du vecteur d'interruption à connaître |
Adresse | Ce paramètre retourne l'adresse du vecteur d'interruption demandé |
Description
Cette procédure permet de connaître l'adresse d'un vecteur d'interruption.
Remarques
- Les vecteurs d'interruptions sont situés dans les 1024 premiers octets de la mémoire conventionnel. Ils occupent chacun 4 octets et sont 256. Ainsi, on peut facilement comprendre que 256 x 4 = 1024 octets. Les deux octets de poids faible indiquent l'offset et les deux octets de poids fort indiquent le segment d'appel de l'interruption. Le comportement s'apparente à un «PUSHF», un «CALL FAR» et une désactivation des interruptions masquables (IRQ) (CLI) mais il utilise l'instruction «INT».
- Une utilisation hasardeuse ou irréfléchie peut facilement faire planter le système d'exploitation, le programme ou provoquer se genre d'erreur sous Windows XP «NTVDM CPU has encountered an illegal instruction.». Aussi, il pourrait se produire un effet de cascade provoquant une plantage quelques minutes plus tard. Il est important de préservé autant que possible les registres afin de ne pas affecter le programme appelant l'interruption.
Exemple
Voici quelques exemples typiques de l'utilisation de «GetIntVec» en Turbo Pascal permettant de détecter le pilote de souris :
on obtiendra le résultat suivant s'il y a un pilote de souris d'installé :
Le pilote de souris est installé.Voir également
Liste des interruptions
Programme émulant le BIOS CGA pour les cartes Graphic Solutions
Langage de programmation - Turbo Pascal - Référence de procédures et fonctions - SETINTVEC
Langage de programmation - Turbo Pascal pour Windows - Référence de procédures et fonctions - GETINTVEC
Interruption 21h, Fonction 35h: Demande l'adresse d'un vecteur d'interruption
Référence
Aide-mémoire de Turbo Pascal versions de 3 à 6, Edition Marabout, De Groote, Virga, 1992, ISBN: 2-501-01833-8, page 212.
Le grand livre du Turbo & Borland Pascal 7.0, Edition Micro Application, Reiner Scholles, 1993, ISBN: 2-86899-873-9, page 1242.