1 复古掌机的选择
最近入手了一个手柄,手头正好有一台闲置的小米 9,便想着能否将其改造成一台复古掌机。
目前市面上的复古掌机主要分为 Android 和 Linux 两大阵营。整体来看,Android 方案在生态丰富度上略占优势,除了支持各类模拟器外,还能直接运行安卓应用。
| 项目 | Android 掌机 | Linux 掌机 (ArkOS / JELOS / Batocera) |
|---|---|---|
| 启动速度 | 20~40 秒 | 5 秒以内 |
| UI 一致性 | ❌ 多 app 无统一样式 | ✅ 完整游戏平台风格 |
| PS2(AetherSX2) | ✅ 可玩(Snapdragon / Dimensity / Unisoc) | ❌ 官方 Linux 版 core 不成熟 |
| Switch(Yuzu) | ✅ 安卓有社区版 Yuzu | ❌ 完全无解 |
| PSP/NDS/GBA etc | ✅ 但调用 APK,界面割裂 | ✅ 全集成 Core,UI 统一 |
| 云游戏 / Steam Link | ✅ 完全支持 | ⚠️ 只能 Moonlight(若有 Core) |
| 系统自由度 | 限制 root,定制难 | ✅ 想怎么魔改都行 |
| 易用性 | ✅ 下载 ROM → 配 APK → 玩 | ⚠️ 需要 BIOS / Core 手动配置 |
| 适合人群 | 玩模拟器 + 云游戏 + 装 APP | 想要'开机就是游戏机'的感觉 |
| 视觉体验 | 类似安卓电视盒 + 各种前端 | 像原生游戏机固件,主题风统一 |
有个有趣的现象,虽然 Android 本质也是 Linux 的魔改版,但部分高性能模拟器(如 PS2)目前仍主要依赖 Android 平台。这主要是生态和技术实现的原因。例如 PS2 模拟器 AetherSX2 使用了 Android NDK 配合 Vulkan/OpenGL ES 来实现 JIT 编译,这些特性在纯 Linux 环境下难以直接移植。
JIT / 动态重编译器(Dynarec)
JIT(即时编译)是模拟器领域的核心性能优化技术。它能在程序运行时,将宿主设备不兼容的原始指令实时转换为机器码,而非逐条解释执行。通过监测并识别频繁执行的'热点代码',利用函数内联、循环展开等手段生成高效机器码,大幅减少翻译开销,让原本因指令不兼容而卡顿的游戏(如 PS2、Switch)得以流畅运行。
对于复古掌机而言,最难的部分其实就是模拟器本身,涉及到对汇编指令的模拟和调度。之前曾尝试写过 GB 模拟器,后续因故搁置。
再看市场情况,截至 2025 年 10 月,以热门设备安伯尼克为例:35XX 搭载 T700 芯片(1 颗 2.5GHz Cortex-A76 + 3 颗 2.3GHz Cortex-A76),406V 搭载 T820 芯片(1 颗 2.7GHz Cortex-A76 + 3 颗 2.3GHz Cortex-A76)。总体性能虽有提升,幅度却不大,价格却翻了 2~3 倍。
对比之下,年初购入的二手小米 9 搭载高通骁龙 855 处理器。与 T820 相比,855 的单核性能几乎翻倍,整体多核也高出 1.5–2 倍以上,GPU 性能更是达到 T820 的 3 倍以上。二手小米 9 当时仅花费 350 元,加上手机手柄,总成本仅为新掌机的一半,且性能更强。自己动手不仅省了钱,还能在折腾过程中积累知识,看来是更明智的选择。
2 天马 G 前端的安装与配置
目前国内流行的前端方案中,天马 G 使用率较高,无论是个人玩家还是工作室,几乎都采用这套方案。










