在电视盒子上运行游戏模拟器 EmuELEC

2024-11-23#EmuELEC#电视盒子

EmuELEC 是为搭载了晶晨(AMLogic)处理器的设备而构建的游戏模拟器。市面上有很多运营商定制的采用的是晶晨处理器,其中部分的型号就可以刷入 EmuELEC 系统。在二手市场买到的电视盒子,很多都已经刷入了第三方的 Android 系统,可通过U盘启动。因此,可将 EmuELEC 安装到 U盘上,在玩游戏时插入盒子,即可进入游戏系统。

电视盒子 🔗

在二手市场上的电视盒子物美价廉。50元就可以购买一个中兴 B863AV3.1-M2 的电视盒子,(据称)它采用的是 S905L3A 处理器,可刷入 EmuELEC。而且,卖家已经刷入了第三方的 Android 系统,可从 U盘启动。本文以它为例。

工具 🔗

  1. U盘。用于运行 EmuELEC 系统。建议为容量为 32GB 以上。
  2. 电脑。用于将 EmuELEC 刷入 U盘中。
  3. balenaEtcher。刷写软件,免费。

安装系统 🔗

下载固件 🔗

EmuELEC 是开源免费的,位于 Github 的 EmuELEC/EmuELEC。可进入其 Releases 页面下载固件。目前的最新版本为 4.7。对于我的电视盒子,下载 Assets 下的 EmuELEC-Amlogic-ng.aarch64-4.7-Generic.img.gz 文件即可。

烧录固件 🔗

在电脑上使用 balenaEtcher 将下载的 EmuELEC-Amlogic-ng.aarch64-4.7-Generic.img.gz 烧录到 U盘中。注意 balenaEtcher 可自动解压 img.gz 文件,因此无需解压。

设置 DTB 文件 🔗

将烧录了固件的 U盘从电脑拔下,再插入USB接口,机会发现 U盘有两个盘:EMUELECSTORAGE。在 EMUELEC 盘的 device_trees 包含了固件支持的设备 DTB 文件。每种处理器对应不同的文件。对于 S905L3A 处理器而言,它对应的是 g12a_s905x2_2g.dtb。据说,S905L3AS905x2 的马甲; 2g 指的是内存为 2GB。

将设备的 DTB 文件(即 g12a_s905x2_2g.dtb)复制到根目录,重命名为 dtb.img

此时在电脑上的准备工作已经完成。

安装 EmuELEC 🔗

首次安装 🔗

电视盒子通过HDMI接口连接到电视上。将U盘插入电视盒子上,并且设置其从U盘启动。然后断电重启电视盒子。如果顺利,电视就会出现包含 EMUELEC 的背景图,然后页面显示当前的进展。

在首次进入 EmuELEC 系统时,会自动重新设置分区和文件系统(也被成为“扩容”)。完成后,页面出现倒计时,然后电视盒子自动重启。

Failed to mount 错误 🔗

在重设分区和文件系统时,界面上可能会出现如下错误:

[FAILED] Failed to mount tmp-assets.mount.
[FAILED] Failed to mount tmp-cores.mount.
[FAILED] Failed to mount tmp-database.mount.
[FAILED] Failed to mount tmp-joypads.mount.
[FAILED] Failed to mount tmp-overlays.mount.
[FAILED] Failed to mount tmp-shaders.mount.

网上有人提到:这可能是电脑供电不足,因此不要在 USB 接口插入其他设备(比如键盘)。解决办法是在U盘上重新制作固件,重新安装。

而我并没有在电视盒子上插入其他设备,也遇到了这个问题。但我换上了一个看起来质量不错电源,然后插入重新制作好的固件后,扩容成功,并重启了。

系统初始化 🔗

在电视盒子重启后,系统会进行一些初始化工作,这个过程比较耗时。界面上可能会长时间地出现如下提示信息:

(1 of 2) A start job is running for Setup User config dir (Xmin Ys / no limit)

此时不要着急,多耐心等待即可。根据我的经验,三五分钟是不够的,在第一次长时间出现这个提示后,我以为出现了故障,重刷了好几次。但最后证明,使用当前的 4.7版本,只要有足够耐心,那是可以成功启动系统的。

也不知多了多久,系统最终成功启动。也就是安装成功了。

运行游戏 🔗

自定义设置 🔗

网上有很多设置 EMUELEC 的教程,在此不做赘述。至少可以做如下配置:

  1. 默认的系统语言为英文,可设置为中文。
  2. 设置手柄(Controller)。

安装游戏 🔗

EmuELEC 的 Wiki 页面介绍了其支持的平台。每种平台下的游戏ROM,必须放置在平台对应的目录下,并且必须是合法的文件后缀(有些平台支持 7zzip 等压缩包,有些不支持)。安装游戏的本质,就是把游戏文件,放置在特定的目录中。

如何将游戏存储到 EmuELEC 系统?一种是把U盘插入电脑上操作。另一种方法,是将网线插入电视盒子,然后通过网络邻居访问(EmuELEC开启了Samba服务)。尽管 EmuELEC 系统的界面里有 Wifi 设置,但似乎 Wifi 不能工作,搜索不到无线网络。

从哪里下载游戏ROM?

  • r/ROMs 站点集合了多个平台下的游戏下载链接。不过站点是英文的不易理解,而且还需要将下载后的游戏放置在平台对应的目录下(有些还可能需要解压)。
  • 其实除了 EmuELEC 官方提供的镜像之外,还有一些第三方的固件,其中内置了游戏。也许可以从这些第三方固件中提取游戏。如果没有安全顾虑,甚至可以直接烧录第三方固件。

将游戏ROM放置在特定目录,似乎需要重启系统,EmuELEC 才会识别新的游戏。

使用体验 🔗

  • 在进入游戏后,我不知道如何能够退出游戏或者模拟器。网上有人提到使用 热建(Hotkey)+ Start 就可以调出模拟器菜单。当设置热键为 SELECT 时,我并没有试验成功。只好断电重启。后来,将热键修改为手柄上的特殊按键,此后在游戏中多次同时按下 热建(Hotkey)+ Start,屏幕的右下角就会弹出“Press Again to Quit”的提示消息,再次按下即可退出模拟器。

参考链接 🔗


加载中...