je dois développer en C++ un programme gérant les
interruptions. j'ai récupéré des sources d'une application
qui devrait remplacer la routine d'interruption
correspondant au N° de vecteur 0x1C qui est appelée à
chaque interruption du timer N° vecteur 8. J'ai essayé
d'utiliser ce code sans succès : il ne passe même pas la
compilation.
===========================================================
====================
#include <stdio.h>
#include <dos.h>
#define NUM_VECTEUR 0X1C
int compteur=0;
void interrupt (*ancien_pg_it)();
// Mon programme d'IT
void interrupt (mon_pg_it)()
{
disable(); // Masque l'interruption
compteur++; // Incrémente le compteur
enable(); // démasque l'interruption
}
void main(void)
{
char n=0;
//Sauvegarde l'ancienne adresse de la routine d'IT
ancien_pg_it = getvect(NUM_VECTEUR);
//Initialise vecteur d'It avec le nouveau
programme d'IT
setvect(NUM_VECTEUR, mon_pg_it);
while (compteur < 10) n++;
//Réinitialise le vecteur d'IT avec l'ancien
programme d'IT
setvect(NUM_VECTEUR, ancien_pg_it);
printf("Boucle while exécutée %d fois \n", n);
printf("Module IT appel‚ %d fois\n\n",compteur);
}