KITAQ SERIES • 参考版
KITAQ SERIES 编程与用户手册
从第一行代码,到运行、观察和复测。 源码快照:2026 年 9 月 14 日 · 简体中文版:2026 年 9 月 14 日
原生编译器验证 Windows、Linux、macOS ARM 和 macOS Intel 的原生构建及运行验证均成功。KITAQGB 在每个环境通过 48 项测试和 395 项辅助工具检查;KITAQFC 通过 55 项测试和 401 项检查,也验证了 Rust 1.85。PUBLIC_DISTRIBUTION.json 记录已放置程序的哈希及验证来源。公开 GitHub Actions 会独立构建和验证这些源码。
保存的参考输出用于检查 ROM 字节、诊断和辅助工具格式。以前的 C# 模拟器验证保留为对应原始源码指纹的历史记录,并不自动证明全部 Rust API、真实硬件或完整的 FDS BIOS 游戏启动。原始 PNG 转换脚本无法取得,因此依据规格重新实现,不能声称与原脚本字节一致。
KITAQGB · SHA-256 · KITAQFC · SHA-256
从这里开始
KITAQGB 最初是 Zachtronics 相关 NES C 编译器 NORCAL 的一个分支 。在此基础上,项目针对 Game Boy 和 Game Boy Color 的处理器、内存、图像、音频及 ROM 分页机制进行了扩展,形成了一套 C 语言开发工具。我们保留原作者 Keith Holman 的版权声明,并感谢原项目的贡献。
NORCAL的名称源于北加利福尼亚(Northern California)。受这种以地域命名的思路启发,作者以自己出生并长大的北九州市为基础,将项目命名为KITAQGB。KITAQ + GB把日本福冈县北九州市的昵称北九(キタキュー,Kitakyū) 与Game Boy结合起来。KITAQ读作日语“キタキュー”;英语读音提示为 kee-tah-KYOO ,音标为 /ˌkiːtɑːˈkjuː/ 。末尾的Q与英语字母Q同音。KITAQGB中的G和B分别按字母名称发音,整个名称读作 kee-tah-KYOO jee bee 。
KITAQGB这个名称包含两层含义。Kernel-Informed Toolchain for AI-Quality Game Boy Development 表达了工具链应理解目标硬件、同时支持程序员和生成式AI的目标。
另一层含义是 Kids' Imagination Transformed into Actual Quests in Game Boy Forests ,意为“把孩子的想象,化为Game Boy森林里的真正冒险的工具”。这寄托了一份创作愿望:让小小的点子、涂鸦和借助AI制作的原型,变成真正可以游玩的冒险。
NORCAL 的开发与 NES 版 HACK*MATCH 有关。背景资料可参阅原作者的 NORCAL 介绍 和 NES 版 HACK*MATCH 介绍 。
怎样使用这套手册
这套手册沿用早期计算机手册的思路:先输入一个小程序,完成编译并看到运行结果,再逐步理解机器的工作方式。初学时不必先记住所有术语。
开发 GB 程序,从第 1 卷的第一个程序开始;开发 FC 程序,从第 4 卷开始。
通过第 2 卷或第 5 卷加入输入、图像和声音。
用 KOKURA 或 KUROSAKI 观察运行过程,再用 SARAKURA 整理诊断结果。
已经知道函数名称时,可直接使用卷内搜索或 API 字典。
语言语法、编译器内建函数、库函数和命令行操作是不同类型的参考条目。编译器分卷还附有 CPU 指令索引。GB 与 FC 中同名的函数,其参数和行为未必相同。
七卷的分工
分卷 输入 输出或用途
KITAQGB C 源码和素材 GB/CGB ROM、映射文件和构建信息
KITAQGB 库 游戏代码中的调用 图像、音频、输入、通信和游戏辅助功能
KOKURA GB/CGB ROM 运行、画面、音频、状态和观察记录
KITAQFC C 源码和 CHR 素材 NES/FDS 输出及构建信息
KITAQFC 库 游戏代码中的调用 NES 图像、音频和外设功能
KUROSAKI NES/FDS 镜像 运行、记录和分析
SARAKURA 构建信息和诊断事件 报告、修复计划和复测计划
版本与验证范围
本手册以 2026年9月14日的源码 为依据。参考清单记录了源码和可执行文件的哈希值。各项测试的输入、条件与验证范围请查阅验证记录。
构建成功只表示生成了 ROM;运行检查表示模拟器前进了指定帧数。像素对照、输入行为和音频检查分别记录。本手册不保证所有外设或真实主机的兼容性,日志中的警告也予以保留。
准备工作目录
示例命令使用 Windows PowerShell 。C 文件请保存为 UTF-8 文本。“当前目录”就是执行命令的位置。包含空格的路径需要加引号;必要时用 & "路径" 调用可执行文件。按照 GitHub 目录布局说明 ,把各仓库克隆到同一个父目录下,跨项目命令从该父目录执行。
powershell 复制 # リポジトリのルートで実行します。
New-Item -ItemType Directory -Force out | Out-Null
.\kitaqgb\kitaqgb.exe --help
.\kitaqfc\kitaqfc.exe --help
请把 game.c、game.gb 和 game.nes 换成自己的文件名。<ROM> 这类尖括号内容表示占位参数,输入时不要保留尖括号。命令通常以单行给出。Bash 的反斜杠续行方式不适用于 PowerShell。
离线阅读与打印
打开下载目录中的 index.html 即可离线阅读。样式、搜索、示例和验证图片都使用本地文件,不依赖外部 CDN。请保持整个目录结构,不要只复制某一个 HTML 文件。打印按钮会使用隐藏侧栏的打印布局。
源码摘录和实际工具输出保留原文,便于与文件和命令行结果核对。
完整游戏实例
《はらぺこしろへび》程序解说 从完整游戏入手,介绍主循环、白蛇的移动算法、流程图以及 KITAQGB 库的使用方法。
选择手册 游戏编程指南 源码版本 2026-09-14 • 目录 • 验证 • 快照指纹 示例构建、模拟器执行与预期结果比较分别记录。