SnakeOS基于 Rust 的贪食蛇游戏

联合创作 · 2023-09-27 23:22

SnakeOS 是一个可在 x86_64 CPU 上运行,完全用 Rust 编写的贪食蛇游戏。



特征



  • 在任何 x86_64 CPU 上玩贪吃蛇

  • 动态内存管理

  • 中断处理

  • 异步/等待支持

  • 只有 212kB 的内核大小

    • 你甚至可以把它放在一张 8 英寸的软盘上



构建


使用 Makefile 构建游戏。唯一的依赖项是podmanbuildah用于设置构建环境。




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。在这里,您可以使用wasd或箭头键来控制蛇。


 

浏览 19
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报