home *** CD-ROM | disk | FTP | other *** search
- Procedure User_Procedure;
- {This procedure shows that one interupt routine can activate another.}
- Var
- C : Char;
- Reg_pack : RegisterSet;
- Saved_Screen : Saved_Screen_Ptr;
- Const
- Interupt41 = $41;
- Begin
- Save_Screen(Saved_Screen);
- Draw_Menu_Frame(26,10,74,20,15,7,
- ' Sample Interupt Handler ');
- WriteLn(bell);
- WriteLn('Interupt ',Interupt_Number);
- WriteLn(' Press "y" to try INTR($41)');
- WriteLn(' Press any other key to continue');
- Read(Kbd,C); Write;
- While C='y' do begin
- INTR(Interupt41,Reg_Pack);
- Read(Kbd,C); End;
- With Interupt_Registers Do Begin
- WriteLn('Registers are:');
- WriteLn('AX = ',AX,': BX = ',BX,': CX = ',CX);
- WriteLn('DX = ',DX,': SI = ',SI,': DI = ',DI);
- WriteLn('Enter Values for AX, BX, and DI registers...');
- Read(AX,BX,DI); WriteLn; End;
- Restore_Screen(Saved_Screen);
- End;