home *** CD-ROM | disk | FTP | other *** search
- ; (4,a7) - string
- ; (8,a7) - string to find
- ; (12,a7) - startindex=0
-
- xdef _InStr
-
- _InStr movem.l d2/a2-a3,-(a7)
- move.l (8+12,a7),a1
- move.l (12+12,a7),a0
- move.l a0,d2
- add.l (4+12,a7),a0
- move.b (a1)+,d0
- .loop move.b (a0)+,d1
- beq.s .notfound
- cmp.b d0,d1
- bne.s .loop
- move.l a0,a2
- move.l a1,a3
- .next move.b (a3)+,d1
- beq.s .found
- cmp.b (a2)+,d1
- bne.s .loop
- beq.s .next
- .found subq.l #1,a0
- move.l a0,d0
- sub.l d2,d0
- bra.s .finish
- .notfound moveq #-1,d0
- .finish movem.l (a7)+,d2/a2-a3
- rts
-