home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / INFO / TURBOPAS / TPINLINE.ZIP / INLINE.ASM next >
Encoding:
Assembly Source File  |  1986-02-11  |  512 b   |  19 lines

  1.     CLD            ;ASSUME FORWARD
  2.     MOV    AL,<CH[BP]    ;CHAR TO SEARCH FOR
  3.     MOV    CX,<LIMIT[BP]    ;BYTES TO SEARCH
  4.     OR    CX,CX        ;CHECK SIGN
  5.     PUSHF            ;SAVE FLAGS
  6.      JNS    X1
  7.     NEG    CX        ;MAKE POSITIVE
  8.     STD            ;BUT SEARCH IN REVERSE
  9. X1:    MOV    DX,CX        ;SAVE FULL COUNT
  10.     LES    DI,<T[BP]    ;PTR TO START
  11.     REPNE: SCASB        ;SEARCH
  12.      JNE    X2
  13.     INC    CX        ;FOUND A MATCH
  14. X2:    SUB    DX,CX        ;FIND COUNT TO MATCH
  15.     POPF
  16.      JNS    X3
  17.     NEG    DX        ;MAKE NEGATIVE IF REVERSE
  18. X3:    MOV    [BP+$C],DX    ;PUT IN FUNCTION RESULT
  19.