Laboratory no. 8

 

                      REDIRECTING INTERRUPTS

 

    The laboratory must contain both a new interrupt handler and a test program that calls the redirected interrupt (if necessary). At the sixth call the old handler must be restored. 

 

1. Redirect the  interrupt 15h. The new handler will verify if the function is 88h, if it is not will call the old handler, otherwise display the message 'No extended memory exists !' .

 

2. Redirect the  interrupt 12h. The new handler must display the message 'The available memory is ' followed by the amount of memory available in Ko.

 

3.  Redirect the  interrupt 18h. The new handler must display the message 'Where is the Basic interpretor? '.

 

4.  Redirect the  interrupt 08h. The new handler must display the message 'The clock interrupt has been redirected!' three times per second.

 

5.  Redirect the  interrupt 1Ah. The new handler will verify if the function is  00h, if  not  call the old handler, otherwise display the message daca 'The clock counter was read!'.

 

6.  Redirect the  interrupt 1Ah. The new handler will verify if the function is  01h, if  not will call the old handler, otherwise will display the message 'The interrupt 1Ah was redirected!'

 

7.  Redirect the  interrupt 14h. The new handler will verify if the function is  00h,  if  it is not will call the old handler, otherwise will display the message 'The parameters for COM1 were initialized !'

 

8.  Redirect the  interrupt 14h. The new handler will verify if the function is  03h,  if  it is not will call the old handler, otherwise will display the message 'The interrupt 14h was redirected !'

 

9.  Redirect the  interrupt 13h. The new handler will verify if the function is  01h,  if  it is not will call the old handler, otherwise will display the message 'The current drive is in the state :' followed by a message containing the state of the drive.

 

10. Redirect the  interrupt 13h. The new handler will verify if the function is  02h,  if  it is not will call the old handler, otherwise will display the message  'The interrupt 13h was redirected!'

 

11. Redirect the  interrupt 17h. The new handler must display the message 'The printer state is:' and then the message containing the state of the printer.

 

12. Redirect the  interrupt 10h. The new handler will verify if the function is  0Fh,  if  it is not will call the old handler, otherwise will display the message 'The current video mode is :' followed by the corresponding message.

 

13. Redirect the  interrupt 10h. The new handler will verify if the function is  00h,  if  it is not will call the old handler, otherwise will display the message  'The interrupt 10h was redirected !'

 

14. Redirect the  interrupt 10h. The new handler will verify if the function is  02h,  if  it is not will call the old handler, otherwise will display the message 'The cursor position became:' followed by the new position of the cursor.

 

15. Redirect the  interrupt 00h. The new handler must display the message  'The interrupt 00h was redirected'.