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