home *** CD-ROM | disk | FTP | other *** search
/ Jason Aller Floppy Collection / 153.img / TELES.ZIP / LOCAL.PAS < prev    next >
Pascal/Delphi Source File  |  1988-06-22  |  947b  |  40 lines

  1. procedure local_input1(var i:astr; ml:integer; tf:boolean);
  2. var cp:integer;
  3.     cc:char;
  4.     r:real;
  5. begin
  6.   cp:=1;
  7.   repeat
  8.     cc:=readkey;
  9.     if not tf then cc:=upcase(cc);
  10.     if (cc>=' ') and (cc<chr(127)) then
  11.       if cp<=ml then begin
  12.       i[cp]:=cc;
  13.       cp:=cp+1;
  14.       write(cc);
  15.     end else else case ord(cc) of
  16.       8:if cp>1 then begin
  17.                cc:=chr(8);
  18.                write(cc);write(' '); write(cc);
  19.                cp:=cp-1;
  20.              end;
  21.       21,24:while cp<>1 do begin
  22.                cp:=cp-1;
  23.                write(#8);write(' ');write(#8);
  24.              end;
  25.       end;
  26.   until (cc=#13) or (cc=#14);
  27.   i[0]:=chr(cp-1);
  28.   writeln;
  29. end;
  30.  
  31. procedure local_input(var i:astr; ml:integer);  (* Input uppercase only *)
  32. begin
  33.   local_input1(i,ml,false);
  34. end;
  35.  
  36. procedure local_inputl(var i:astr; ml:integer);   (* Input lower & upper case *)
  37. begin
  38.   local_input1(i,ml,true);
  39. end;
  40.