<!-- title: 7个复古计算开源宝藏，越老越香 -->

# 从 PS1 到 Game Boy：7 个复古计算开源宝藏仓库

本期换了个思路：不追 AI 独角兽，也不看 Web3 概念，而是钻进「复古计算」这个冷门但粘性极高的圈子——模拟器、幻想游戏机、老电脑复刻、掌机自制程序。这个领域的项目往往一维护就是十年以上，用户忠诚度堪比宗教，而且正在迎来一波复古游戏热的东风。本期 7 个仓库覆盖「玩老游戏」到「给老硬件写新程序」的完整链路，其中 2 个是 Star 不到 2000 的小而美遗珠。技术上横跨 C、C++、Objective-C、Lua，架构设计各有独到之处，非常适合想读真实工程代码的开发者「淘金」。

---

## 1. OpenEmu — 把十几个模拟器缝成一个 Mac 原生应用

**仓库**：[OpenEmu/OpenEmu](https://github.com/OpenEmu/OpenEmu) | Star 约 1.6 万 | 老牌项目，维护节奏偏慢但持续

Mac 用户想玩老游戏，第一反应往往是「每个模拟器一个界面、一套快捷键、一种手柄配置」，折腾三天，热情耗尽。OpenEmu 的答案简单粗暴：把 FC、SFC、GBA、N64、PSP 等几十个平台的模拟核心全部塞进一个 macOS 原生 App，用户看到的是一面游戏封面墙，底下是哪个核心在工作完全不感知。

实现上它采用了插件化的核心架构，模拟器内核以 Bundle 形式动态接入，主程序只负责统一的输入映射、存档管理和 UI。这套「聚合前端」的架构思路本身就是很好的学习样本——把 N 个异构工具收敛到一个统一体验层，这个模式放在任何领域（比如数据库管理、云服务控制台）都成立。上手难度：⭐，下载拖进 Applications 即可。适合 Mac 用户和 UI 架构学习者。直接变现空间不大，但「统一前端」的产品思路值得二次开发借鉴。

## 2. DuckStation — PS1 模拟器的当代天花板

**仓库**：[stenzek/duckstation](https://github.com/stenzek/duckstation) | Star 约 8 千+ | 更新极其活跃，几乎日更

如果说 OpenEmu 赢在广度，DuckStation 赢在深度。它是目前公认最好的 PS1 模拟器：把原生 320×240 的画面拉到 4K 渲染、用 PGXP 技术根治 PS1 标志性的「3D 模型疯狂抖动」、支持即时回溯（rewind）、快进、手柄震动、成就系统，Windows/macOS/Linux/Android 全平台覆盖。

技术上它是 C/C++ 写成的单机种模拟器典范：硬件级精度模拟 + 现代渲染管线并存，同时提供独立版和 libretro 核心两种形态。对想做「复古游戏云串流」的团队来说，这是现成的引擎底座。上手难度：⭐⭐，图形界面开箱即用，进阶设置（分辨率缩放、纹理替换）需要读文档。适合怀旧玩家、模拟器开发者和想研究「如何精确复刻硬件行为」的底层工程师。二次开发方向：怀旧游戏即服务（注意 BIOS 和游戏 ROM 的版权红线，模拟器本身合法，内容授权才是生意）。

## 3. RetroPie — 一条命令把树莓派变成客厅游戏机

**仓库**：[RetroPie/RetroPie-Setup](https://github.com/RetroPie/RetroPie-Setup) | Star 约 2 千+ | 长期活跃维护

树莓派最经典的玩法之一就是 RetroPie：刷一个镜像，接上 USB 手柄，插电，你的电视就变成了一台能玩几千个老游戏的复古主机。它是基于 Debian 的发行版，底层用 RetroArch 管理模拟核心，前端是玩家们熟悉的 EmulationStation（就是开机那个华丽的轮播封面界面）。

它的核心资产是那个 shell 写成的安装脚本仓库——几百个模块化脚本，负责在树莓派、PC、ODroid 等不同硬件上编译安装各类模拟器和驱动。想学习「如何用纯 shell 管理复杂的多平台软件部署」，这个仓库是活的教科书。上手难度：⭐⭐，官方镜像开箱即用，调装驱动和换主题需要一点 Linux 基础。适合硬件玩家和亲子场景。商业上「复古游戏机整机」曾是淘宝爆款，但要牢记红线：卖空机+开源系统合法，预装游戏 ROM 属于侵权，用自制 homebrew 内容才是安全路线。

## 4. TIC-80 — 装在终端里的幻想游戏机

**仓库**：[nesbox/TIC-80](https://github.com/nesbox/TIC-80) | Star 约 6 千 | 持续维护中

TIC-80 属于「fantasy console」品类：它模拟一台虚构的 8-bit 老游戏机——240×136 分辨率、16 色调色板、4 个声道音频——但一切都在你的电脑上运行。更妙的是它自带全套开发环境：代码编辑器（支持 Lua、JavaScript、Wren 等多种语言）、精灵编辑器、地图编辑器、音乐音效编辑器，全部在一个界面里，最终作品输出成一个「.tic 卡带文件」，单文件即可分享。

这个项目解决的是现代人做游戏的最大痛点：功能过载。Unity 有上千个菜单项，TIC-80 只有 16 种颜色——限制反而激发创造力，大量独立开发者在 itch.io 上发售自己的 TIC-80 作品。上手难度：⭐⭐⭐，需要会一点编程，但内置教程友好。适合学编程的青少年、game jam 玩家、想理解「卡带式游戏」如何打包的工程师。变现思路清晰：itch.io 卖卡带游戏、青少年编程课教具、品牌方定制复古小游戏。

## 5. 86Box — 在现代电脑里造一台 1998 年的 PC

**仓库**：[86Box/86Box](https://github.com/86Box/86Box) | Star 约 3 千 | 发版频繁，社区活跃

前面几个是「玩老游戏」，86Box 玩的是更大的：复刻整台老电脑。它是 PCem 的开源分支，模拟的不是「某个游戏的运行环境」，而是完整的 x86 硬件——主板芯片组、CPU（从 386 到 Pentium III）、显卡、声卡、软驱光驱，精确到总线时序。你可以选一块 440BX 主板，插一颗超频的 Celeron，装上 Windows 98，听熟悉的开机音乐。

与 DOSBox 这类抽象层模拟不同，86Box 是硬件级模拟，因此能跑老驱动、老外设、老反盗版狗——这让它在「数字保存」场景有真实价值：博物馆数字化、企业 legacy 软件迁移、老媒体格式抢救。上手难度：⭐⭐⭐⭐，需要自己搜集各主板的 BIOS ROM 文件和系统安装盘，属于硬核折腾向。适合计算机史爱好者和企业 IT 部门。二次开发方向：面向档案机构的「老软件运行即服务」。

## 6. dosbox-staging — 被 2000 星掩盖的工程质量标杆（小而美）

**仓库**：[dosbox-staging/dosbox-staging](https://github.com/dosbox-staging/dosbox-staging) | Star 约 1.5 千 | 活跃维护，发版规律

DOSBox 是模拟器界的活化石，但原版长期以「发布稀少、代码陈旧」著称。dosbox-staging 是社区发起的现代化分支：清理二十年积累的技术债、接入 Vulkan 渲染、改进 Wayland 支持、大幅升级 MT-32 和 General MIDI 音乐模拟（老 DOS 游戏的背景音乐瞬间焕发新生）、CI 全流程覆盖。Star 数不高，但代码质量和工程规范在模拟器圈子里是标杆级的。

很多人不知道的是，GOG 等老游戏发行平台多年来就是拿 DOSBox 给老游戏做封装的——「老游戏数字化发行」是一条被验证过的商业路径，而 dosbox-staging 这类项目就是它的技术底座。上手难度：⭐⭐，命令行配置，文档完善。适合 DOS 怀旧党和想参与知名开源项目的贡献者（它的 issue 区比 RetroArch 友好得多）。

## 7. awesome-gbdev — 给 Game Boy 写程序，从这里入门（小而美）

**仓库**：[gbdev/awesome-gbdev](https://github.com/gbdev/awesome-gbdev) | Star 约 1 千+（小众资料库） | 由 gbdev 社区长期维护

最后一个转向「创作侧」：不玩老游戏，而是给 1989 年的硬件写新程序。awesome-gbdev 是 Game Boy 自制程序（homebrew）开发的资源总目录：从 CPU 手册、显存布局文档，到 RGBDS 汇编器、GBDK-2020 这套 C 语言工具链，再到几十个可运行的示例工程和完整的入门教程路径。

Game Boy 是极好的逆向学习对象：4.19MHz 的 CPU、无操作系统、无缓存、无浮点，每一行代码都对硬件负责——现在几乎没有比它更适合理解「计算机到底怎么工作」的透明环境。上手难度：⭐⭐，跟着教程用 C 语言即可起步，汇编进阶较陡。适合嵌入式学习者、计算机专业学生和怀旧创作者。商业路径真实存在：homebrew 卡带实体发售和众筹在欧美已成小而成熟的生态。

---

## 本期横向对比

| 仓库 | 定位 | Star（约） | 上手难度 | 适用场景 |
|---|---|---|---|---|
| OpenEmu | Mac 模拟器聚合前端 | 1.6 万 | ⭐ | Mac 玩老游戏 |
| DuckStation | PS1 单机种模拟器 | 8 千+ | ⭐⭐ | 高清化怀旧/技术学习 |
| RetroPie | 树莓派游戏机发行版 | 2 千+ | ⭐⭐ | 客厅主机/硬件折腾 |
| TIC-80 | 幻想游戏机 | 6 千 | ⭐⭐⭐ | 小游戏创作/编程教学 |
| 86Box | 硬件级老 PC 模拟 | 3 千 | ⭐⭐⭐⭐ | 数字保存/硬核怀旧 |
| dosbox-staging | DOS 模拟现代化分支 | 1.5 千 | ⭐⭐ | DOS 游戏/工程学习 |
| awesome-gbdev | GB homebrew 资料库 | 1 千+ | ⭐⭐ | 嵌入式学习/卡带创作 |

## 本期生态一图流

```mermaid
mindmap
  root((复古计算生态))
    玩老游戏
      桌面前端
        OpenEmu
      单机种深度
        DuckStation
      整机方案
        RetroPie
    复刻老硬件
      86Box
      dosbox-staging
    创作新内容
      TIC-80
      awesome-gbdev
```

## 本期之最

- **最值得立即尝试**：OpenEmu。零配置、五分钟上手，Mac 用户今晚就能重温童年的《宝可梦》和《火炎之纹章》。
- **最有商业潜力**：TIC-80。「限制激发创意」的产品形态天然适合内容生态——卖卡带游戏、做编程课、接品牌定制，路径都被独立开发者趟过了。提醒：整机与模拟器生意务必避开盗版 ROM。
- **最被低估**：dosbox-staging。不到 2000 星，却可能是本期代码质量最高的仓库；对想给知名开源项目刷第一份贡献记录的开发者来说，这里比巨无霸项目更容易被维护者看见。

## 参考来源

1. [OpenEmu/OpenEmu](https://github.com/OpenEmu/OpenEmu) — 仓库主页及项目说明
2. [stenzek/duckstation](https://github.com/stenzek/duckstation) — 仓库主页及 README 功能清单
3. [nesbox/TIC-80](https://github.com/nesbox/TIC-80) — 幻想游戏机规格说明
4. [86Box/86Box](https://github.com/86Box/86Box) — 硬件级模拟器文档
5. [dosbox-staging/dosbox-staging](https://github.com/dosbox-staging/dosbox-staging) — 项目 Wiki 与发布说明
6. [gbdev/awesome-gbdev](https://github.com/gbdev/awesome-gbdev) — Game Boy 开发资源合集

> 注：本轮检索权限受限，未能实时抓取榜单数据。文中 Star 数为撰写时的约数，项目近况以各仓库页面实时显示为准。

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
