事前,我对这个问题的开放性和普遍性的问题表示歉意,因为说实话,我对这个话题的知识非常多,而且我发现它很难甚至描述我的问题。我真的不想发布,但我完全和完全卡住了。基本的NES仿真理论 - 我被卡住了
我已经启动了一个NES模拟器。它的解释(所以没有动态重新计算)。
Atm它可以加载和映射ROM(映射器0 ROM)并执行init代码,直到我必须处理中断和PPU。这就是我卡住的地方。
这里是我的emu atm的输出示例。执行从8000开始,我在800a处遇到一个无限循环,在那里我不知道如何从那里进步。
8002: LDA #$10 ; read immediate value to set PPU control registers
8004: STA $2000 ; store value
8007: LDX #$FF ; load immediate value into X register
8009: TXS ; store X register into stack
800a: LDA $2002 ; read PPU flags into accumulator (set N flag based on bit 7)
800d: BPL ; test N flag, branch to 800a if not positive, (N is set)
800a: LDA $2002
800d: BPL
800a: LDA $2002
800d: BPL
800a: LDA $2002
800d: BPL
etc, etc etc (inf loop)
所以我的问题是,有人可以请解释基础 1次迭代通过PPU渲染对我来说,包括像循环计数,中断等(即画出一个完整240扫描线屏幕,并移动到下一个)。
在http://nesdev.parodius.com/上添加6502标签 – 2010-07-08 09:45:54
的Ta会让您获得的结果远远快于SO。这就是它如何适用于小众主题。 – 2010-07-08 10:02:10
我已经在那里发布,但5天后,我有1个回复,它基本上是阅读文档(我有100次,但我仍然有点困惑)。 – 2010-07-08 10:03:39