7 个版本 (4 个重大更改)
使用旧的 Rust 2015
0.5.0 | 2016 年 12 月 23 日 |
---|---|
0.4.0 | 2016 年 10 月 8 日 |
0.3.0 | 2016 年 9 月 27 日 |
0.2.0 | 2016 年 9 月 24 日 |
0.1.2 | 2016 年 9 月 23 日 |
#599 in 调试
每月下载 22 次
185KB
5.5K SLoC
DCPU-16 仿真器和 DASM (反)汇编器
功能
- 完整的指令集
- 滴答准确
- 设备支持
- 时钟
- LEM1802
- 键盘
- m35fd
- 反汇编器
- 汇编器
- 类似 gdb 的调试器
- 图像到 LEM 兼容格式的实用工具
快速使用
Windows 和 Linux 的编译版本可在 https://github.com/Yamakaky/dcpu/releases/ 获取。无需依赖项。
注意:当前仿真器的 Windows 版本因 OpenGL 错误而失败。如果有人知道原因...
所有二进制文件都支持 --help
标志以获取更多信息。
构建
您需要安装 rust 编译器 来构建此软件。
# cargo run --release --bin <bin> -- <bin-args>
可用的二进制文件包括汇编器、反汇编器、仿真器和精灵。
某些功能仅在 Rust 夜间版本上可用。要启用它们,请安装 Rust 夜间版本然后运行;
# cargo run --release --features nightly --bin ...
构建功能
以下构建功能可用 ([x] 表示“默认启用”)
-
bins
:仅用于构建二进制文件,对于库应禁用。 -
debugger-cli
:调试器的命令行解析,对于库也应禁用。 -
glium
:lem1802 + 键盘的 OpenGL 后端,在库中可能很有用。 -
nightly
:某些类型的serde::{Serialize, Deserialize}
的实现。需要 Rust 夜间版本。
构建 C 库
要构建动态库 (.so
)
# cargo rustc --lib --no-default-features -- --crate-type=dylib
要构建静态库 (.a
)
# cargo rustc --lib --no-default-features -- --crate-type=staticlib
有关可用的函数,请参阅 src/c_api.h
。
将图像转换为 LEM 格式
sprite实用工具可以
- 将字体图像(
--font-file
)和调色板图像(--palette-file
)转换为与LEM1802兼容的格式,可以是二进制或十六进制 - 将图像(
--image
)转换为VRam + 字体 + 调色板
文档
库接口文档在这里:here.
依赖项
~6–17MB
~229K SLoC