这是 StrikerX3 开发的世嘉土星模拟器 [Ymir](https://github.com/StrikerX3/Ymir) 的安卓移植版。
NEON SATURN 保留了 Ymir 的模拟核心,并将桌面前端替换为原生安卓界面:
包括设置向导、游戏封面库、土星风格的触控操作以及游戏内快捷操作菜单。
## 功能
### 游戏库
- 设置向导,用于导入 IPL(BIOS)ROM 并将应用程序指向游戏文件夹
- 游戏文件夹通过存储访问框架读取,因此可以位于设备上的任何位置
- 三种游戏库视图,从标题栏循环切换:列表、北美版游戏封面和日版游戏盒
- 带有透视、反射和居中分页的封面流
- 封面图片按需获取并缓存,或从“设置”批量下载
- 动态星空背景
- 浅色 / 深色 / 跟随系统主题,默认为深色
### 游戏内
- Saturn 风格的触控界面:方向键、模拟摇杆、A/B/C、X/Y/Z、L/R、开始键
- 完全可重新定位的布局,分别存储纵向和横向模式的设置
- 界面上的快退和快进按钮
- 快捷操作菜单(返回键或游戏手柄选择键):继续、保存状态、读取状态、退出
- 支持实体游戏手柄通过 SDL 实现键盘支持,并包含一个捆绑的控制器数据库
### 模拟选项
- 宽高比:4:3、16:9 或拉伸
- 纹理过滤:锐化(最近邻)或平滑(双线性)
- 放大滤镜:关闭或 6 倍 xBRZ
- 高分辨率模式的反交错渲染
- 透明网格多边形渲染
- 回放缓冲区(60 fps 时约为 5 秒),默认关闭
- 导入 CD 块 ROM 时可选的底层 CD 块模拟
## 使用方法
安装应用程序。安装向导会询问两项内容:
1. **IPL BIOS** — 导入 Saturn BIOS ROM(`.bin` 或 `.rom`)。必需。
2. **游戏文件夹** — 选择存放光盘映像的文件夹。必需。
还可以导入 **CD 块 ROM**。它是可选的,用于启用底层 CD 块模拟。
设置好 BIOS 和游戏文件夹后,库将取代向导。点击游戏即可进入并启动。
标题栏中的齿轮图标可打开“设置”;左侧的图标可在列表视图和封面视图之间切换。
支持的光盘格式:**MAME CHD、BIN+CUE、IMG+CCD、MDF+MDS 和 ISO**。多文件格式需要其配套的音轨文件位于同一文件夹中——启动器会检查这些文件,如果缺少则拒绝启动。
## 注意事项和限制
**放大功能不会提高内部分辨率。** Ymir 的核心仅包含软件渲染器,并且以 Saturn 原生分辨率进行光栅化,因此放大滤镜是对最终帧应用边缘感知平滑处理。
它可以显著锐化 2D 精灵和背景;但无法添加 3D 细节。真正的
内部分辨率渲染需要在核心中集成硬件渲染器,而目前尚无此类硬件渲染器。
**回溯功能会占用 CPU 和内存资源。** 它会保存模拟器每一帧的状态,并保留几秒钟的
LZ4 压缩增量数据,因此默认情况下此功能处于关闭状态,其屏幕按钮也会被隐藏,直到启用为止。
**设置会在启动时生效。** 图形和回溯选项会在游戏启动时读取,因此更改这些选项会在
下次启动游戏时生效。
## 致谢和许可
NEON SATURN 采用 **GNU 通用公共许可证 v3.0** 授权 — 请参阅 [LICENSE](LICENSE)。
- **[Ymir](https://github.com/StrikerX3/Ymir)** 由 StrikerX3 开发 — 模拟器核心以及本移植版本所基于的所有内容。
如果您喜欢本移植版本,请在
[Patreon](https://www.patreon.com/StrikerX3) 上支持上游作者,并加入
[Discord](https://discord.gg/NN3A7n5dzn)。
- **[Kronos](https://github.com/FCare/Kronos)** / **Yabause** — 位于 [`android/app/src/main/cpp/xbrz6x_shader.hpp`](android/app/src/main/cpp/xbrz6x_shader.hpp) 中的 6x xBRZ 超采样着色器,根据
GPL-2.0 或更高版本许可使用。原始版权声明保留在该文件中。
- **[SDL3](https://github.com/libsdl-org/SDL)** — 用于窗口、音频、输入和 Android Activity。
世嘉土星模拟器