2 个版本

0.1.1 2022年10月26日
0.1.0 2022年10月23日

#1340Rust 模式

26 每月下载量
用于 2 crates

GPL-3.0-or-later

85KB
2K SLoC

vm6502

正如其名,这个包是一个 6502 虚拟机。

它的主要应用场景是 emu6502

目前,如果您想了解更多信息,请查看 vm6502 包的 docs.rs

    # To run the virtual cpu tests, first cd to the `vm6502` directory then run:
    cargo test

功能

`pretty', 'debug', 和 'ugly' 调试模式可用于 emu6502。

在调试 vm6502 时,您可以启用和禁用许多功能,请参阅 Cargo.toml 以获取信息。

参考


lib.rs:

6502 虚拟机实现。

此包为 6502 CPU 提供了一个虚拟机。

它被设计为作为库使用,没有前端。

虚拟机

虚拟机作为结构体 VirtualMachine 实现,它包含机器的所有状态。状态存储在一个扁平数组中,该数组通过 Registers 结构体进行索引。

规格

寄存器

有 8 个状态标志,存储在寄存器中。

S/N: B 标志实际上没有在真实的 6502 状态寄存器上设置,而是在它被推入和拉出内存时配置。(可能在 BRK 期间)

标志

内存

虚拟机有一个扁平的内存映射,堆栈和堆索引到这个映射。

寻址模式

指令集

指令

提供了一些宏,以便更容易与机器交互和操作操作码。更多信息。

!! 在建设中 !!

还提供了一个 汇编器 和一个 程序员

依赖项

~2.5MB
~57K SLoC