CS609 Assignment 1 Solution Spring 2018

Problem Statement:

Write a TSR (Terminate and Stay Resident) program, by using interrupt 65H, that will print Student ID when 0 is pressed by the user, and full Name when 1 is pressed by the user.

Detailed Instructions:

1)      In this program, you will implement interrupt 65H which is currently not used by operating system.

2)      Interrupt 65H function must check for Service Number – if service number is 0, your Student ID will be printed and if service number is 1, your full Name will be displayed. In order to implement this, place service number in AH register. Interrupt 65H will check its value and will perform relevant function.

3)      Student ID or full Name must be printed at the beginning of monitor text memory area, 0xb8000000

4)      Calculate Attribute Byte for both Student ID and Name according to the following criteria:

a.       Text blinking: No

b.      Background color: White

c.       Foreground color: Black

d.      Bold text: No

5)      Visit this link: https://ascii.cl/ for complete ASCII table. This table is also available in the Downloads section of LMS.

6)      Use keep() function to make this program TSR.

7)      After writing interrupt 65H, write a test function which will take input from user (for example: Enter 0 for printing Student ID and 1 for printing Name), place relevant service number in AH register, and generate interrupt function. You may use switch statement for this.

8)      Your assignment file should be a single Word file (.doc or .docx) containing:

a.       Complete interrupt function (both services must be implemented)

b.      Test function to generate interrupt as given in instruction # 7

9)      You can use Consolas font for enhancing readability of the code in Word file.


You should NOT use interrupt 21/09H to display Student ID or Name. It must be displayed only by accessing monitor text memory area.