23 lines
488 B
Plaintext
23 lines
488 B
Plaintext
; https://skilldrick.github.io/easy6502/
|
|
; Multiplies A by X
|
|
|
|
define memory 1040
|
|
|
|
JMP MAIN
|
|
|
|
MULTIPLY: STA memory ; memory = A
|
|
BEQ MUL_END ; A = 0
|
|
TXA ; A = X
|
|
BEQ MUL_END ; X = 0 -> A = 0
|
|
LDA memory
|
|
CLC
|
|
MUL_LOOP: DEX ; X -= 1
|
|
BEQ MUL_END ; X = 0 -> A = A * X
|
|
ADC memory ; A += memory
|
|
JMP MUL_LOOP
|
|
MUL_END: RTS
|
|
|
|
MAIN: LDA #50
|
|
LDX #5
|
|
JSR MULTIPLY
|