Section courante

A propos

Section administrative du site

INTERRUPT

Interruption
QuickPascal  

Syntaxe

Procedure identproc(param); Interrupt;

Paramètres

Nom Description
identproc Ce paramètre permet d'indiquer le nom de la procédure d'interruption
param Ce paramètre permet d'indiquer les paramètres d'appel de l'interruption

Description

Ce mot réservé permet de définir une procédure écrite par le compilateur de manière à être appelable en tant qu'interruption.

Exemple

Voici un exemple permettant de modifier l'interruption de division par 0 pour quel retourne 0 plutôt qu'elle provoque l'arrêt immédiat du programme:

  1. Procedure Int00h(Flags,CS,IP,AX,BX,CX,DX,SI,DI,DS,ES,BP:Word);Interrupt;Begin  
  2.   If Mem[CS:IP]shr 4=$FThen Begin  
  3.    If Mem[CS:IP+1]in[$70..$77]Then Inc(IP)Else  
  4.    If Mem[CS:IP+1]in[$36,$3E,$B0..$B7]Then Inc(IP,2); 
  5.    Inc(IP,2);AX:=0 
  6.   End  
  7.    Else  
  8.   Halt(200) 
  9.  End;

Voir également

Liste des interruptions
Programme émulant le BIOS CGA pour les cartes Graphic Solutions

Dernière mise à jour : Vendredi, le 13 février 2015