Nano Banana 2.1 现已上线 — Google 最新模型 | 立即体验 →
WAVESPEED AI 6502 模拟器 在浏览器中运行
100% 免费

6502 模拟器与汇编器编写汇编,运行它,看清每个寄存器。

输入 6502 汇编并点击“运行”:代码会被汇编,并在支持键盘输入的 32×32 彩色屏幕上运行。
一次执行一条指令,设置断点,观察寄存器、标志位和内存的变化。

内置汇编器单步与断点贪吃蛇等 8 个示例
无需注册 无需安装 可离线使用

正在加载模拟器…

你的代码在你的设备上汇编和运行。不会上传任何内容。
三个简单步骤

如何使用 6502 模拟器

01

编写或选择程序

在编辑器中输入 6502 汇编,或选择一个示例,如贪吃蛇、彩条或数学演示。程序从 $0600 开始。

02

运行

点击“运行”(或 Ctrl/⌘+Enter)。代码会被汇编,错误会连同行号一起列出。点击屏幕即可向程序发送按键。

03

调试

暂停,一次执行一条指令,点击行号设置断点。运行时观察寄存器、标志位、内存和反汇编。

学习 6502

6502 新手技巧

6502 有三个 8 位寄存器、一个 256 字节的栈和几种寻址方式。掌握这些要点,就能走得很远。

屏幕就是内存

从 $0200 到 $05FF 的每个字节对应一个像素,每行 32 个。STA $0200 为左上角像素上色;加 $20 即下移一行。

零页更快

$00–$FF 的地址只需一个字节表示,读取也少一个周期。把计数器和指针放在这里。

指针用 (zp),Y

把 16 位地址存入两个零页字节(低字节在前),然后 LDA ($10),Y 从该地址加 Y 处读取。贪吃蛇和图案示例就是用这种方式遍历屏幕的。

算术前先处理进位

ADC 也会加上进位,所以加法前先 CLC,减法前先 SEC。之后用 BCC 和 BCS 等分支指令检测进位。

十进制模式

执行 SED 后,ADC 和 SBC 按十进制计算:$58 + $46 得到 $04 并置位进位(即 104)。适合计分;用 CLD 关闭。

看懂标志位

每条加载和算术指令都会更新 N 和 Z。单步执行一个循环,在检测它们的分支之前观察它们的变化。

WaveSpeed AI

为你的复古项目制作素材

用 WaveSpeed AI 通过提示词为你的游戏和演示制作像素风精灵、标题画面和短视频。

  • 1,000+ AI 模型
  • 图片、视频和 3D
  • 按量付费

符合条件的新账号可获得 $1 免费额度,无需绑卡。 生成器需要单独的账号和积分。6502 模拟器免费使用。

6502 模拟器常见问题

这个 6502 模拟器免费吗?

免费。无需注册,没有广告,没有限制。你的程序会保存在浏览器中,下次打开依然在。

它模拟的是哪种 6502?

原版 NMOS 6502:全部 151 条有文档的指令、带 NMOS 标志位行为的 BCD 十进制模式、JMP ($xxFF) 跨页 bug,以及有文档的周期计数(包括跨页和分支的额外周期)。

模拟有多准确?

它通过了一个广泛使用的 6502 功能测试程序,以及 150 万个检查寄存器、标志位、内存和周期计数的单指令测试用例。

内存映射是怎样的?

64 KB RAM。屏幕位于 $0200–$05FF(每个像素一个字节,16 色),读取 $FE 会得到一个新的随机字节,$FF 保存你最后按下的键,程序加载到 $0600。为采用这种布局的热门 6502 入门教程编写的程序无需修改即可运行。

怎么向程序发送按键?

点击或轻触屏幕,然后输入:按键的 ASCII 码会写入 $FF。方向键和屏幕上的方向按钮会发送 w、a、s 和 d,贪吃蛇和绘画示例使用的就是这些。

支持哪些汇编语法?

标签(loop: 或行首的单词)、常量(define name value 或 name = value)、*= 或 .org、.byte/dcb、.word、.text、.asciiz 和 .res,十六进制($FF)、二进制(%1010)、十进制和字符('A')数字,算术运算,以及用 < 和 > 取低字节和高字节。小于 $100 的值使用零页;写成 $00FF 可强制使用绝对形式。

断点和单步执行怎么用?

点击行号(或在某行按 F9)设置断点。运行会在该指令之前停下;“单步”(F10)执行一条指令并高亮所在行。每次停下后寄存器、标志位、内存和反汇编都会更新,非常适合学习 6502 汇编。

可以保存或分享我的程序吗?

你的程序会自动保存在浏览器中。你还可以将其保存为 .asm 文件、下载汇编好的 .bin、复制十六进制转储、保存整台机器的状态,或复制包含程序的链接。

我的代码会被上传到任何地方吗?

不会。汇编和运行都在你的浏览器中进行。分享链接把程序放在地址中 # 之后的部分,浏览器不会把这部分发送给服务器。

全部免费工具

运行你的第一个 6502 程序

免费,在浏览器中运行,自带调试器。

打开模拟器