home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 13 / CDA13.ISO / cdactual / demobin / share / program / Asm / 86LIB3.ZIP / GET_LINE.8 < prev    next >
Encoding:
Text File  |  1989-01-14  |  627 b   |  31 lines

  1. _saver17   dw  ?
  2. ;
  3. _GET_LINE:             ;get character from keyboard.
  4.   mov ds,cs
  5.   pop _saver17
  6.  
  7.   pop si               ;recover offset buffer
  8.   mov bp,si
  9.   pop ds               ;setup workarea.
  10.  
  11.   Pop cx               ;get max. # of chars to get.
  12.  
  13. _get_line1:
  14.   Mov ah,0             ;get a char from keyboard.
  15.   Int 016H
  16.  
  17.   Mov ds:[bp],al       ;store character in buffer.
  18.   Inc bp
  19.  
  20.   Cmp ax,01C0Dh        ;see if end of line?
  21.   Jz  _get_line2
  22.  
  23.   loop _get_line1      ;else, get next char.
  24.  
  25. _get_line2:
  26.   sub bp,si
  27.   Push bp            ;return buffer length.
  28.   mov ds,cs
  29.   push _saver17
  30.   Ret
  31.