#mos #no-alloc #6502 #wdc #65c02 #65816

no-std w65c816

WIP!WDC W65C816S的模拟器,是6502的16位派生产品

14个版本

0.1.14 2024年5月3日
0.1.13 2024年4月8日
0.1.7 2024年3月28日

#49模拟器

Download history 1/week @ 2024-04-22 160/week @ 2024-04-29 3/week @ 2024-05-06 10/week @ 2024-07-01 71/week @ 2024-07-29

71 每月下载量

MIT 许可证

105KB
2.5K SLoC

W65C816

Western Design Center的W65C816S的模拟器,是WDC W65C02S的16位派生产品,而W65C02S本身是MOS 6502的派生产品。

我正在开发这个项目,因为似乎没有现有的独立的Rust '816核心,更不用说达到我所进行的模拟器级别的了(尽管我们可以做得更深!)。对于其他编程语言,816核心似乎相当稀少,据我所知,没有提供具有所有信号的精确总线周期模拟器。

警告

这个模拟器非常WIP,并不完整。还有不到60条指令缺失,但很多寻址方式也缺失。许多指令的正确行为尚未经过验证。

外部API已最终确定,您可以根据这个API进行编码,预期它将在未来某个时刻工作。

当前计划

  • 继续添加指令
  • 继续添加寻址方式
  • 确保所有指令都实现了ABORT
    • 确保ABORT被正确实现(与真实'816核对)
  • 测试,更多的测试
    • 理想情况下从真实'816生成测试。

由于涉及的工作量,我无法提供当前已实现指令的表格。您要么打开 src/instructions.rs 并查看那里的表格,要么运行一些代码看看它是否会崩溃。我知道这不是一个很好的解决方案。在某个时候,所有指令都将被实现,这样就不会有问题。

无运行时依赖

功能