# keen-clone：Commander Keen 1 的 C/SDL2 移植

> Linux 原生与浏览器移植面向 Commander Keen 第一章，作者记录以 REA/Ghidra 对 KEEN1.EXE 逐函数研究并重建 C/SDL2 游戏，附带公开分析资料；范围仅为第一章，并非全系列。

- 类型：案例
- 目标：二进制 · 游戏
- 类别：REA 社区调查案例
- 关联：作者报告的混合工具流程
- 来源复核于：2026-11-01
- 收录于：2026-11-01
- 原始资源：<https://github.com/carlhako/keen-clone>
- 一手来源：<https://github.com/carlhako/keen-clone/blob/9c6ac72734c95c3260c23b57158ea5876abc14b3/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/keen-clone-rea-commander-keen-case/>
- 记录 JSON：<https://awesomerea.org/resources/keen-clone-rea-commander-keen-case/record.json>
- 英文版：[English](https://awesomerea.org/resources/keen-clone-rea-commander-keen-case/index.md)

## 使用条件与局限

- **前提条件：**原生构建需要 C 编译器、make、SDL2 开发文件及自有 Keen 1 数据（含 KEEN1.EXE）；README 列出 v1.1 与共享软件 v1.31。
- **局限：**浏览器构建需要 Emscripten 和自备游戏数据；文档将网页打包限定于共享软件章节，浏览器快捷键及按来源隔离的 IndexedDB 存储与原生宿主不同。
- **测试证据：**仓库列出反编译/反汇编、调用图和原始 REA 输出等分析资料，未提供独立的行为一致性或完整通关评估。
- **许可：**核查时仓库根目录没有项目许可文件；Commander Keen 及原始数据保留各自权利，公开源码不额外授予复用许可。

## 一手来源

1. <https://github.com/carlhako/keen-clone/blob/9c6ac72734c95c3260c23b57158ea5876abc14b3/README.md>

## 同分区更多条目：游戏

- [Metroid Dread：进行中的手工反编译](https://awesomerea.org/zh/resources/dreadcomp-case/index.md) · 案例
- [OpenGOAL：恢复 GOAL 代码并重建 Jak 系列游戏](https://awesomerea.org/zh/resources/opengoal-jak-case/index.md) · 案例
- [Paleblood：带自有运行时的 Bloodborne 功能等价反编译](https://awesomerea.org/zh/resources/paleblood-bloodborne-functional-decomp-case/index.md) · 案例
- [R.E.L.I.V.E.：Oddworld: Abe’s Oddysee 与 Abe’s Exoddus 引擎的重新实现](https://awesomerea.org/zh/resources/relive-oddworld-abe-engine-case/index.md) · 案例
- [re-plants-vs-zombies：反编译并现代化改造 Plants vs. Zombies 年度版](https://awesomerea.org/zh/resources/re-plants-vs-zombies-decomp-case/index.md) · 案例
- [REDRIVER2：借助 PlayStation 兼容层重建 Driver 2](https://awesomerea.org/zh/resources/redriver2-case/index.md) · 案例

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
