6 个版本 (3 个稳定版)
2.0.3 | 2023 年 4 月 4 日 |
---|---|
2.0.2 | 2022 年 11 月 11 日 |
1.0.0 | 2021 年 12 月 10 日 |
0.11.0 | 2021 年 12 月 6 日 |
0.1.0 | 2020 年 11 月 4 日 |
#56 in 游戏
每月 25 次下载
360KB
8K SLoC
KASM
KASM,即 Kerbal Assembler,是一个针对 Kerbal Space Program 中的 Kerbal 操作系统模组内部计算机定制的汇编器。KASM 生成 KerbalObject 文件,然后可以使用 KLinker 将其链接以创建可在 kOS 中运行的 KerboScript 机器代码 (.ksm) 文件。
使用 KASM 和 KLinker 生成的对象文件可以使用相关项目 KDump 查看
任何针对 kOS 的自定义编程语言都可以在 KASM 上实现,这正是本项目的目标。
功能
- 丰富的 预处理器指令
- 易于使用的函数和标签
- 比编译后的 KerboScript 的一些小型化优化
文档
有关如何使用 KASM 的文档,请参阅 指南
支持
现在有一个新的 Visual Studio Code 扩展 用于 KASM,它启用了语法高亮。
除了阅读上面的指南外,有关如何使用和编写 KASM 代码的支持可以在 KASM Discord 服务器 中找到。
安装
KASM 可以通过 cargo 通过 crates.io 安装,或者作为独立的二进制文件。
Windows
如果您之前已通过各自的安装程序安装了 KLinker 和 KDump "独立" 版本,则在运行 Windows 安装程序时,请在 "功能" 菜单中取消选中 KDump 和 KLinker。
- 从右侧的发行版下载 .msi 文件
- 运行安装程序
- kasm 及相关工具现在应添加到您的 PATH 中,并可在任何 CMD 或 PowerShell 窗口中使用
Arch Linux
-
从右侧的发布页面下载PKGBUILD
-
将其复制到临时文件夹
-
运行
makepkg -si
来安装kasm
及其所有依赖项。 -
kasm现在应该已添加到您的PATH中,并且可以从任何终端使用。
独立可执行文件
- 从右侧的发布页面下载并解压.zip文件
- 将可执行文件放置在所需的位置
- 通过终端、Windows上的PowerShell或Mac OS或Linux上的默认终端运行可执行文件。
Cargo
cargo install kasm
kasm应添加到您的shell的PATH中,并可以从任何终端运行
您需要使用以下命令单独安装KLinker或KDump:
cargo install klinker
cargo install kdump
用法
安装后,可以通过kasm
调用Kerbal Assembler
可以通过运行以下命令从程序本身获取帮助:
kasm --help
kasm
参数的基本格式是
kasm [FLAGS] [OPTIONS] <INPUT> --output <OUTPUT>
运行kasm
时,汇编器无法推断输出文件名,因此必须始终指定一个。这可以通过向kasm
传递-o
标志来实现
kasm main.kasm -o myprogram.ko
可以使用-w
标志来抑制汇编器生成的警告
kasm -w
可以使用-a
标志在kasm
中汇编文件时禁用预处理。通常这样做是因为如果不使用预处理指令,它可以加快处理速度
kasm -a
相反,可以使用-p
标志来告诉kasm
仅在必须执行预处理时执行预处理。然后输出文件将是带有所有宏展开等的kasm
源代码
kasm -p
可以将-i
选项传递给kasm
以指定代码中.include
指令的包含路径
kasm main.kasm -o myprogram.ko -i include/
可以提供-f
选项给kasm
以指定要在生成的KerbalObject文件中设置的文件名。如果使用kasm
作为从编译器开始的第二步,这可能很有用。
kasm program.kasm -f program.ys
可以指定-c
选项来设置生成文件的注释字段。默认注释类似于“由KASM编译...”和版本号。如果在此之上有一个编译器,则可以覆盖它
kasm program.kasm -c "Compiled by MyCompiler"
依赖项
~3–11MB
~86K SLoC