使用 Meson 组装 Game Boy 游戏

主要观点:作者在过去几个月断断续续地制作 Game Boy 游戏,之前用 GNU Make 构建但对其依赖跟踪配置不满,后寻找其他构建系统,最终创建 Meson 的分支以支持 Game Boy 游戏构建,包括添加新语言rgbds、配置rgbasmrgblink等,还展示了使用custom_target与工具交互及提交更改到上游 Meson 项目等。

关键信息:

  • 用 GNU Make 构建游戏时依赖跟踪有问题,开始寻找其他构建系统。
  • 创建 Meson 分支添加rgbds语言支持,可配置rgbasmrgblink,通过executable函数构建 ROM。
  • 游戏 Boy ROM 文件头需正确设置,可通过custom_target调用rgbfix工具,也可使用rgbds模块替代部分custom_target操作。
  • 已修改pokered使用该分支,生成的游戏匹配预期校验和,还向 Meson 项目提交了更改并更新了pokeredmeson分支。

重要细节:

  • Meson 构建系统易于使用且支持多语言项目,添加rgbds语言后可自动处理工具链部分代码更改后的资产处理和游戏重链接。
  • 在构建过程中,ninja用于快速重建,rgbfix用于设置 ROM 文件头,rgbgfx用于图形转换等。
  • 提交的 PR 中创建了rgbds模块,提供fixgfx函数来简化操作,pokered分支也进行了相应更新。同时提到添加对 Pokémon Blue 等的支持留作练习。
阅读 22
0 条评论