IUP Computer Science
CO 300   Assembly Language
Fall 1987

Program #3


Modify program #2 (Day Names) so that it does the following.

1.  Reads in the three-letter abbreviation of the month rather than the month number.   The number of the day of the month should be read as in program #2.

2.  Does error checking on all input values (the month abbrevia tions and the day numbers).  When there is a error, the program must display an error message that indicates what is wrong and allow the person at the terminal to enter another input value.

a)  Month abbreviations may be misspelled, the wrong case or incomplete.

b)  Day numbers may be negative or beyond the last day of the month (e.g. Feb 30).

It is NOT necessary to have separate error messages for each specific cause.  However, there must be some specificity; a single error message that says "Input error" is NOT acceptable.

3.  Displays the result of the program in one line in the same form as for program #2, for example
          Sep 28 is a Monday
However, this line must be displayed using only one invocation of WRITESTR.  That is, the program must construct this whole line and then display it with one JSB  WRITESTR.

4.  Makes the program loop repeatedly asking for a month and day.   The exit from this loop should be made when the person at the terminal enters 'End' instead of a month abbreviation.

    Try to make your program changes obvious.  For example, if you wrote program #2 in using all uppercase, make the changes in all lowercase; or vice versa.

    Handin in a printout of your commented listing file and a photo log of a single execution of the program that demonstates valid results for at least three dates.  In this same log, you should demonstate all the different error messages that the program can produce.  Print the log on the LA50 printer.