home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 4 / AACD04.ISO / AACD / Programming / powerd / lib / PowerD / ReadEStr.ass < prev    next >
Encoding:
Text File  |  1999-09-26  |  591 b   |  39 lines

  1. ; (4,a7) - fh
  2. ; (8,a7) - estr
  3.  
  4.     xdef    _ReadEStr
  5.  
  6. _ReadEStr    movem.l    d2-d4/d6-d7/a2/a6,-(a7)
  7.     move.l    (8+28,a7),a2        ; estr
  8.     move.l    a2,d4
  9.     move.l    (4+28,a7),d7        ; fh
  10.     moveq    #0,d6
  11.     move.w    (-4,a2),d6        ; maxlen
  12.     add.l    a2,d6
  13.     move.l    _DOSBase,a6
  14.     moveq    #1,d3
  15. .1:    cmp.l    d6,a2
  16.     beq.s    .4
  17.     move.l    d7,d1
  18.     move.l    a2,d2
  19.     addq.l    #1,a2
  20.     jsr    (-42,a6)            ; Read()
  21.     cmp.w    #1,d0
  22.     bmi.s    .5
  23.     cmp.b    #10,(-1,a2)
  24.     bne.s    .1
  25.     moveq    #0,d0
  26.     subq.l    #1,a2
  27. .4:    move.l    a2,d1
  28.     clr.b    (a2)+
  29.     sub.l    d4,d1
  30.     move.l    d4,a0
  31.     move.w    d1,(-2,a0)
  32.     movem.l    (a7)+,d2-d4/d6-d7/a2/a6
  33.     rts
  34. .5:    subq.l    #1,a2
  35.     moveq    #-1,d0
  36.     bra.s    .4
  37.  
  38.     xref    _DOSBase
  39.