我有这个代码:
jsr cls
ldx #$00 ;loads 0 into x
stx tmp ; stores x in tmp
ldx #<scr1
ldy #>scr1
printToScreen
stx zpb+0
sty zpb+1
lda (zpb),y
ldx tmp. ; loads x from tmp
beq done
sta screen_start,x
inx
stx tmp ; stores new x in tmp
bne printToScreen
done
rts
tmp = $C8
zpb = $fb
scr1 byte 'some text'
byte 0
我想创建将字符串打印到屏幕的例程。参数是字符串的地址和用作计数器的 X 寄存器。由于 X 也在函数内部使用,因此我将其值存储在 tmp 变量中。
但是这段代码什么也没打印。我对组装完全陌生,所以可能我不明白这应该如何工作。请参阅代码注释。我在这里做错了什么?