EmuELEC使用指南五之街机模拟器使用简介
1 EmuELEC 的街机模拟器(核心)
EmuELEC 的街机模拟器分为独立版本和LIBRETRO(简称 LR)核心或者 RETROARCH
核心,独立版本为 ADVANCEMAME,而 LR 核心包括多个MAME 移植版和两个 FBA 版本。
2 FBN/FBA
EmuELEC 所用的 RETROARCH,FBA 核心有两个,一个是 lr-fbalpha,代码更新自最新版 FBA(截止 2019 年 4 月 23 日最新版本为 0.2.97.44),该核心一直有着活跃的维护,支持的街机主板较多较新,是主力街机模拟器,还有一个是 lr-fbalpha2012,采用 0.2.97.34 移植,维护相对少很多。这个版本的 FBA 模拟效率高,对一些类似树莓派 2、全志 H3 之类的机能比较弱的 ARM 板子来说价值比较高,但是驱动老旧,很多基板模拟有不少问题。
FBA 相对于 MAME 来说,效率较高,尤其是 M68K 和 Z80 的基板,模拟效率尤其突出, 即使在 Wii/NGC 这样老旧的家用主机上,都可以全速模拟 CPS/CPS2/MVS 等主机。
2016 年下半年开始,RETROARCH 的两个 FBA 核心支持同时根据①压缩包内文件名和
②压缩包内文件的 CRC 读取相关文件,因此你所用的 ROMSET,只要符合①②两者之一, 就能被 FBA 读取并正常模拟。如果你想通过 FBA 玩打过 IPS 补丁的 HACK 版 ROM,那么只要保证打过补丁的 ROM 包内文件解压缩后的大小不变,并且文件名不变,那么直接就可以通过 FBA 运行该改版 ROM。当然,压缩包的文件名也不能变。
由于 FBA 的运营人 Barry 瞒着所有组员把 FBA 项目“卖”给 CAPCOM 的街机摇杆(具体始末见:https://www.bilibili.com/video/av49920866/),导致所有组员出走并建立了新的分支 FB Neo,目前 FBA 已经名存实亡,Libretro 现在已经用 FBNeo 代替了原来的 FBAlpha。
因此,EmuELEC 用户可以将最新版的 lr-fbneo 作为街机首选模拟器。
3 MAME
相对于 FBA,MAME 支持的街机基板更多。LR 的 MAME 核心有 MAME2000(基于MAME 0.37 移植)、MAME2003(基于 MAME 0.78 移植)、MAME2010(基于 MAME 0.139
移植)、MAME2014(基于 MAME 0.159 移植)、MAME2016(基于 MAME 0.174 移植)、
MAME(同步于最新版 MAME),越新的版本支持的基板越多,模拟准确度越高,但是相对的效率越差,运行起来速度越慢,基本上 MAME2010 以上的版本对于 S905、树莓派 3 等
ARM 平台来说已经没有实际价值了。出于模拟效率考虑, EmuELEC 我们推荐
MAME2003Plus 核心,这个核心基于 MAME2003 强化,虽然是底子移植自 2003 年的MAME
0.78,但是近来很多开发者在不断完善其驱动,支持和修复了很多游戏,比如增加了电精 1
代、大量 MVS 后期游戏、婆娑罗等新版 MAME 才能支持的游戏驱动。
需要说明的是 MAME2003Plus 核心不仅可以通过压缩包内的 CRC 来读取文件的,还可以根据压缩包内的文件名来读取文件,因此现在可以用 MAME2003 直接运行修改过的ROM, 不会像以前那样闪退。要想用 MAME2003 运行 HACK 过的 ROM,可以仿照上面 FBA 模拟
器那样修改ROM。但是如果 HACK 过的ROM 进行了扩容,那么除了从源代码上着手修改, 直接修改 ROM 的文件名就没用了。
4 ADVANCEMAME
EmuELEC 的 ADVANCEMAME 是用 MAME 0.106 移植的,所以配套的 ROM 需要用MAME 0.106 版,而且由于是独立核心,手柄映射、分辨率设置等都独立于 RA 版本的MAME, 使用起来要复杂一点,但是比起 RA 核心的 MAME,这个 ADVMAME 支持自动跳帧,速度 也比 MAME2010 快,支持的 ROM 又比 MAME2003 多,因此可以起着一定的补充作用。
5 街机游戏 ROM
EmuELEC 所使用的街机游戏 ROM 有着如下特点:
- ROM 必须保持 ZIP 格式,不能解压。
- 街机游戏 ROM 的 ZIP 包不能改名,模拟器是通过读取压缩包的文件名来决定使用哪个驱动,并根据压缩包内文件的 CRC 或文件名来读取相应文件的。
- 街机游戏 ROM 有不同的版本,每个模拟器都有相应配套的 ROM,一般情况下不能混用,并不是网上随便下载一个 ROM 就能使用的。
- 街机游戏 ROM 分为母版和子版,一般来说,最先的 DUMP 的街机 ROM 会作为母版,后 DUMP 的 ROM 作为子版。子版的 ROM 压缩包一般会省去与母版相同的文件,仅含与母版不同的文件。
- 街机游戏 ROM 通常分为三种:
- ①Non-merged(非合并式): 每个版本的 ROM 都包含完整的文件,虽然文件名依然分为子版ROM 压缩包名和母版ROM 压缩包名,但是子版ROM 包里并不省去与母版ROM 包相同的文件,子版 ROM 的压缩包里包含基板模拟器所需的全部 ROM 文件。
- ②Split(分割式): 游戏分为子版和母版 ROM 包,子版 ROM 的压缩包内略去与母版 ROM 压缩包相同的文件,因此运行子版 ROM 压缩包时,同路径下还需要母版 ROM 包的存在。
- ③M erged(合并式): 与①相反,不同版本的游戏不分子母 ROM,所有版本的 ROM 文件统统压缩在一个压缩包内。这种 ROM 包只适合 PC 上的 MAME、WINKAWAKS 等模拟器使用,EmuELEC 所用的街机模拟器不支持这种方式的 ROM 包,如果你使用这种方式的 ROM 包,将只能运行以压缩包名命名的游戏版本。
更多有关街机模拟器的信息,可以查阅如下网站的资料: 树莓派官方文档:https://retropie.org.uk/docs/Arcade/
LAKKA 官方文档:http://www.lakka.tv/doc/Arcade/
cpg149
好文 支持 解了很多疑惑