
# EStrCopy(r3:PTR TO CHAR,r4:PTR TO CHAR,r5=-1:LONG)

	.text
	.global	_EStrCopy

_EStrCopy:
	mr.	r5,r5
	bge	.getlen
	lhz	r5,-4(r3)
.getlen:	mr	r7,r5
	mr	r6,r3
	subi	r6,r6,1
	subi	r4,r4,1
.loop:	lbzu	r0,1(r4)
	stbu	r0,1(r6)
	mr.	r0,r0
	beq	.stop
	subi	r5,r5,1
	mr.	r5,r5
	bne	.loop
	li	r0,0
	stb	r0,1(r6)
.stop:	sub	r7,r7,r5
	sth	r7,-2(r3)
	blr			# r3 contains dest string pointer

	.type	_EStrCopy,@function
	.size	_EStrCopy,$-_EStrCopy
