SnakeOS基于 Rust 的贪食蛇游戏
SnakeOS 是一个可在 x86_64 CPU 上运行,完全用 Rust 编写的贪食蛇游戏。
特征
- 在任何 x86_64 CPU 上玩贪吃蛇
- 动态内存管理
- 中断处理
- 异步/等待支持
- 只有 212kB 的内核大小
- 你甚至可以把它放在一张 8 英寸的软盘上
构建
使用 Makefile 构建游戏。唯一的依赖项是podman
和buildah
用于设置构建环境。
make snakeos.img
这将首先设置一个具有必要依赖项的构建容器,然后构建游戏。
或者,您可以直接使用 rust 编译器并应用一些技巧:
rustup override set nightly
rustup toolchain install nightly
rustup component add rust-src --toolchain nightly-x86_64-unknown-linux-gnu
rustup component add llvm-tools-preview
cargo run \
--release \
--target x86_64-custom.json \
-Zbuild-std=core,alloc \
-Zbuild-std-features=compiler-builtins-mem -- \
--no-run
ln -sf target/x86_64-custom/release/boot-bios-snakeos.img snakeos.img
现在可以使用以下命令运行游戏:
make run
这实际上会运行qemu-system-x86_64 --enable-kvm -drive format=raw,file=snakeos.img
。在这里,您可以使用w
,a
,s
和d
或箭头键来控制蛇。
评论