对不起,如果这个问题似乎是'太基本'。我是一个68K ASM编码器,但有一位朋友要求我浏览一下6502代码。 我们有一个指向一串数据: my_ptr ds 2
此指针设置与此代码: ldx sound_channel_busy
bne .abc_set_score1 ; at bottom of code
sta my_ptr ; fill the pointer
读取数据与 lda
有人可以解释LDA,ROL,STA给出结果的每条指令的确切结果吗? C=1 (carry flag is 1)
LDA A #$08 0008 | 01
ROL A 0009 | 02
STA A $10 000A | 03 // A result is $11
000B | 04
000C | 05
我想这: LDA A #$08 0008 - Stor
我写完了我的6502模拟器,我准备开始测试它。我发现了带有一些文档的ROM,但我不确定,加载ROM的正确方式是什么。作者说,模拟器应该从0xC000开始,当我加载ROM时,它包含0,所以我必须做错了什么。 所以现在我的加载过程看起来是这样的: clear memory
set PC to 0x8000
open the file
skip first 16 bytes (iNES heade
我正在通过C64仿真器学习6502微程序集。目前试图将字符串输出到屏幕上。这是我的代码: processor 6502
org $1000
ldx #$00 ;using x register as column counter
print:
lda message,x;load a with x bit from message
sta $0400,x
写我的6502/NES模拟器时,这真的让我... 6502的存储指令操作是这样的: STA $2A78 - Store the value of the accumulator into memory address $2A78.
但是,该指令使用绝对寻址模式,它应该返回存储在存储器$2A78中的8位值。该AND指令,不遵循这个规律: (If $6A is stored in $2A78)