View Single Post
Old 9th Jun 2019, 4:44 pm   #14
Slothie
Octode
 
Join Date: Apr 2018
Location: Newbury, Berkshire, UK.
Posts: 1,287
Default Re: Fun with 6502 Assembler

Nice. But I would have done this which doesn't require a temp location for a copy, doesn't change the X or Y regisers, and also is relocatable:
Code:
MUL10:	LDA DECNUM+1	; PUT DECNUM ON STACK
	PHA
	LDA DECNUM
	PHA
	ASL A		; MULTIPLY BY 2
	STA DECNUM
	ROL DECNUM+1
	ASL DECNUM	; THEN BY 2 AGAIN
	ROL DECNUM+1
	PLA		; ADD IN DECNUM SAVED ON STACK
	CLC
	ADC DECNUM
	STA DECNUM
	PLA
	ADC DECNUM+1
	STA DECNUM+1
	ASl DECNUM	; MULTIPLY BY 2 AGAIN
	ROL DECNUM+1
	RTS
Slothie is offline