
;R0=BUFFER TO STORE VALUES
;R1=START
;R2=END
;R3=NUMBER OF STEPS
;CLOBBERS ACC,R4,B,C
;ASSUMES R2>R1
EVEN_STEP:
	CLR	C
	MOV	A, R2
	SUBB	A, R1			;GETTING THE DIFFERENCE BETWEEN START AND END
	MOV	B, R3
	DIV	AB			;DIVIDE TO GET THE DIFFERENCE FOR EACH STEP
	MOV	R4, A			;SAVE THE STEP DIFFERENCE IN R4
	MOV	A, R1			;LOAD START INTO A
EVEN_STEP_ADD_LOOP:
	ADD	A, R4			;ADD STEP DIFFERENCE TO LAST STEP VALUE
	MOV	@R0, A			;SAVE THE STEP VALUE INTO OUR BUFFER
	INC	R0			;INCREMENT BUFFER POINTER
	DJNZ	R3, EVEN_STEP_ADD_LOOP	;WASH, RINSE AND REPEAT
	RET
