# Little Planet：由一致性反汇编重编译的 Sonic CD

> 依据运行覆盖率和递归下降，反汇编 Sonic CD 光盘上的全部可执行文件并逐字节一致地重新汇编，再将代码静态翻译为 C，运行于从零编写、以高层实现替代 BIOS 的 Mega-CD 运行时。重编译代码块只在内存仍为其来源代码时执行，并有脚本以 96 段关卡运行逐帧对照解释器。项目还以补丁加入宽屏和逐区存档；结果仍为项目报告。

- 类型：案例
- 目标：游戏
- 类别：独立重建案例
- 关联：独立重建项目
- 来源复核于：2026-10-18
- 收录于：2026-10-18
- 原始资源：<https://github.com/carlosrmz009/littleplanet>
- 一手来源：<https://github.com/carlosrmz009/littleplanet/blob/658d834d53d90baf6a899fa1e5d81a6fee187bbb/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/little-planet-sonic-cd-recomp-case/>
- 记录 JSON：<https://awesomerea.org/resources/little-planet-sonic-cd-recomp-case/record.json>
- 英文版：[English](https://awesomerea.org/resources/little-planet-sonic-cd-recomp-case/index.md)

## 使用条件与局限

- **前提条件：**需自备 Sonic CD 光盘映像（cue/bin、iso、ccd/img/sub、chd，或附压缩音轨的 cue）。经测试的是日版 G-6021，README 给出其数据轨 SHA-1；其他版本可以启动但未经测试。无需 BIOS 转储，仓库也不含任何光盘数据。
- **前提条件：**发布版面向 Windows x64（安装程序或便携 zip）、macOS 11+（未经公证）及 Linux x86_64／ARM64 AppImage。源码构建需要 Python（Windows 上为 3.10+）和 SDL3，并分别搭配 Visual Studio 2022 Build Tools、Xcode 命令行工具或 gcc/g++。可选的重制版开场还需另行构建 FFmpeg 并获取视频。
- **范围：**README 报告全部 112 个可执行文件可重新汇编为与日版逐字节一致的文件，62.2 万条指令重编译为 22,897 个代码块，启动、游戏、音频及逐位一致的即时存档均可运行。反汇编只含代码，图形、声音和关卡数据保留在使用者的光盘中。True16:9 宽屏和每区存档通过修改游戏自身程序实现，因此这些选项有别于原版游戏。
- **测试证据：**README 说明 tools/decomp.sh 用于提取光盘、重新汇编 asm/ 并逐个文件比较；tests/rc_check.sh 在 96 段脚本化关卡中，比较重编译运行与 --interp 运行每帧的 RAM 及 CPU PC 哈希。README 还报告 SingleStepTests 结果：Z80 通过全部 160 万个用例，68000 除部分未公开的 DIVS／ASR 及地址错误用例外通过全部 100 万个用例。CI 仅以自制测试光盘进行测试。
- **许可：**MIT 覆盖运行时、工具和安装程序。third_party/ 代码、随附的 LGPL 2.1 FFmpeg 以及经许可收录的 LuanUP 重制版开场各自保留条款，任何从光盘提取的内容均不在许可范围内。所审阅 LICENSE 的排除说明写的是 Star Fox 2 而非 Sonic CD。该项目为非官方作品，与 Sega 无关。

## 一手来源

1. <https://github.com/carlosrmz009/littleplanet/blob/658d834d53d90baf6a899fa1e5d81a6fee187bbb/README.md>
2. <https://github.com/carlosrmz009/littleplanet/blob/658d834d53d90baf6a899fa1e5d81a6fee187bbb/LICENSE>
3. <https://github.com/carlosrmz009/littleplanet/blob/658d834d53d90baf6a899fa1e5d81a6fee187bbb/tools/decomp.sh>
4. <https://github.com/carlosrmz009/littleplanet/blob/658d834d53d90baf6a899fa1e5d81a6fee187bbb/tests/rc_check.sh>
5. <https://github.com/carlosrmz009/littleplanet/blob/658d834d53d90baf6a899fa1e5d81a6fee187bbb/.github/workflows/build.yml>

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

- [Lost Odyssey Recomp：将 Xbox 360 角色扮演游戏静态重编译为原生移植](https://awesomerea.org/zh/resources/lost-odyssey-recomp-case/index.md) · 案例
- [MarioKart 64: Recompiled：通过 N64Recomp 静态重编译实现的原生移植](https://awesomerea.org/zh/resources/mariokart64-recompiled-case/index.md) · 案例
- [MediEvil Recomp：PlayStation 游戏静态重编译为 C#](https://awesomerea.org/zh/resources/medievil-recomp-case/index.md) · 案例
- [Mega Man X Recompiled：基于 snesrecomp 的静态重编译](https://awesomerea.org/zh/resources/megaman-x-snes-recomp-case/index.md) · 案例
- [Melee Unlocked：Melee 的 Windows 源码移植与静态重编译](https://awesomerea.org/zh/resources/melee-unlocked-case/index.md) · 案例
- [Pinyon Shift：以 ShiftGlue 将 Forza Horizon 静态重编译到 PC](https://awesomerea.org/zh/resources/pinyon-shift-forza-horizon-recomp-case/index.md) · 案例

## 关于此条目

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