function readdate(x,y:integer):xxxstr8;
{  reads a string from the terminal from screen at position xy  }
{    the string will contain a Valid date in format 00/00/00  }
Var
   hold : array [1..6] of char;
   location : integer;
   inchar : char;

begin
   location := 1;
   textcolor(black);
   textbackground(lightgray);
   gotoxy(x,y);
   write('  /  /  ');
   gotoxy(x,y);
   while location<8 do
      begin
         read(kbd,inchar);
         case location of
            1:
               begin
                  gotoxy(x,y);
                  if inchar in ['1','0',' '] then
                     begin
                        hold[1] := inchar;
                        write(inchar);
                        location := 2;
                        gotoxy((x+1),y);
                     end
                  else
                     begin
                        write(chr(7));
                     end;
               end;
            2:
               begin
                  gotoxy((x+1),y);
                  if inchar in ['1'..'9','0'] then
                     if hold[1]='1' then
                        if inchar in ['1','2','0'] then
                           begin
                              hold[2] := inchar;
                              write(inchar);
                              location := 3;
                           end
                        else
                           begin
                              write(chr(7));
                           end
                     else
                        begin
                           write(inchar);
                           hold[2] := inchar;
                           location := 3;
                        end
                  else
                     if ((inchar = chr(8)) or (inchar = chr(7))) then
                        begin
                           gotoxy(x,y);
                           write(' ');
                           location := 1;
                           hold[1] := ' ';
                           gotoxy(x,y);
                        end
                     else
                        begin
                           write(chr(7));
                        end;
               end;
            3:
               begin
                  gotoxy((x+3),y);
                  if inchar in ['1'..'3','0',' '] then
                     begin
                        hold[3] := inchar;
                        write(inchar);
                        location := 4;
                        gotoxy((x+4),y);
                     end
                  else
                     if ((inchar = chr(8)) or (inchar = chr(7))) then
                        begin
                           gotoxy((x+1),y);
                           write(' ');
                           location := 2;
                           hold[2] := ' ';
                           gotoxy((x+1),y);
                        end
                     else
                        begin
                           write(chr(7));
                        end;
               end;
            4:
               begin
                  gotoxy((x+4),y);
                  if inchar in ['1'..'9','0'] then
                     begin
                        hold[4] := inchar;
                        write(inchar);
                        location := 5;
                        gotoxy((x+6),y);
                     end
                  else
                     if ((inchar = chr(8)) or (inchar = chr(7))) then
                        begin
                           gotoxy((x+3),y);
                           write(' ');
                           location := 3;
                           hold[3] := ' ';
                           gotoxy((x+3),y);
                        end
                     else
                        begin
                           write(chr(7));
                        end;
               end;
            5:
               begin
                  gotoxy((x+6),y);
                  if inchar in ['1'..'9','0'] then
                     begin
                        hold[5] := inchar;
                        write(inchar);
                        location := 6;
                        gotoxy((x+7),y);
                     end
                  else
                     if ((inchar = chr(8)) or (inchar = chr(7))) then
                        begin
                           gotoxy((x+4),y);
                           write(' ');
                           location := 4;
                           hold[4] := ' ';
                           gotoxy((x+4),y);
                        end
                     else
                        begin
                           write(chr(7));
                        end;
               end;
            6:
               begin
                  gotoxy((x+7),y);
                  if inchar in ['1'..'9','0'] then
                     begin
                        hold[6] := inchar;
                        write(inchar);
                        location := 7;
                     end
                  else
                     if ((inchar = chr(8)) or (inchar = chr(7))) then
                        begin
                           gotoxy((x+6),y);
                           write(' ');
                           location := 5;
                           hold[5] := ' ';
                           gotoxy((x+6),y);
                        end
                     else
                        begin
                           write(chr(7));
                        end;
               end;
            7:
               begin
                  if ((inchar=chr(11)) or (inchar=chr(13))) then
                     location := 8
                  else
                     if ((inchar=chr(8)) or (inchar=chr(7))) then
                        begin
                           gotoxy((x+7),y);
                           write(' ');
                           location := 6;
                           hold[6] := ' ';
                           gotoxy((x+7),y);
                        end;
               end;
         end;
      end;
   readdate := hold[1]+hold[2]+'/'+hold[3]+hold[4]+'/'+hold[5]+hold[6];
   textcolor(lightgray);
   textbackground(black);
end;
n
  if long
    then gimmick:=' '
    else gimmick:='/';
  str(ord(d[day]),scratch);
  s:=scratch+gimmick;

  if 