给你三个理由,干掉霸王小子A12的官方系统,刷成Roku RetroArch开源系统:

  • RetroArch的UI界面更美观,可更换多种皮肤主题,支持游戏分类和搜索,具备遮罩边框和画质滤镜
  • 基于Liunx的Roku RetroArch,相对于安卓系统的官方固件,占用硬件资源少,游戏运行效率更高,支持模拟的机种更多,可以运行CPS2、CPS3、PSP等平台的游戏,基本做到PS1以下全覆盖(DC和SS可运行,但帧率太低,无法正常游戏)
  • Roku RetroArch补全了IPS屏幕驱动。原机屏幕严重影响视力,但官方固件不含IPS屏幕驱动,即使更换IPS屏后无法点亮

Let's go!

技术规格

  • 【CPU】瑞芯微Rockchip RK3128 A7 1.2G 4核
  • 【GPU】Mali-400MP2 支持OpenGL ES2.0 多格式1080p 60fps解码
  • 【RAM】256MB DDR3
  • 【ROM】128MB SLC 闪存
  • 【屏幕】9英寸 TN 分辨率1024x600 接口RGB 50pin 厚度3mm
  • 【接口】TF卡槽,HDMI1.4,3.5mm AUX,USB 2.0*2
  • 【供电】5V 1A Type-C,内置4000mAh 3.7V 18650锂电池

和18年前的大屏MP3/MP4热潮一样,复古小街机们的大量涌现,也是多亏了瑞芯微的芯片支持。

所以,市面各大品牌,各种尺寸的复古小街机,基本都是以瑞芯微RK3128方案公模为主,区别在于各家的屏幕和按键的驱动程序。

如果你手头的霸王小子,小霸王,aiwo,芯果,jxd等等品牌的小街机/小掌机,能确认同为RK3128方案,也是可以参照此教程折腾的。

100%确认可用的小街机机型有:

  • 霸王小子A9(7") A12(9") A13(10.1")
  • 小霸王Q70(7") Q90(9") Q99(10.1")

霸王小子A12/A13,和小霸王Q90/Q99,除开屏幕改成10.1寸折叠以外,内部芯片完全一致。

需注意的是,随生产批次的不同,截止至2021年中,霸王小子A12至少存在4个外设硬件版本:

  • V1 原始版本,屏幕分辨率1024x600
  • V2 屏幕1024×600未变,按键驱动不同,默认键位映射发生变化
  • V3 屏幕分辨率缩水为800x480,键位同V2
  • V4 屏幕分辨率仍为800x480,但驱动程序有变化,键位同V2

这4个硬件版本,对应的三个不同的固件包

  • V1/V2版本的A12,及A13,刷RUKA_a12_v1_v2_3.0_alpha_20210504.img
  • V3版本的A12,刷RUKA_a12_v3_3.0_alpha_20210504.img
  • V4版本的A12,刷RUKA_a12_RevD_3.0_alpha_20210726.img

2020年国内购买的主机,多以V1 V2硬件版本为主;V3 V4硬件版本,多在2021年后销往海外

如若不清楚自己的硬件版本,可以先刷RevD固件,屏幕显示有问题的情况下,再刷V1_V2固件

准备工作

硬件

  • Windows电脑一台
  • 小街机主机本体
  • usb-A 公头 to usb-A 公头 数据线一条(关键词 usb2.0 公对公)

软件

  • Ruka RetroArch V1.91固件包 Ruka CFW Release 3.0 Alpha 1
  • 瑞芯微Rockchip Windows开发工具包
  • 工具包包括DriverAssitant驱动,AndroidTool_Console命令行开发工具,RKDevTool图形界面开发工具

Roku固件官网的页面最末方,可下载霸王小子A12/A13的最新固件,版本号V3.0 Alpha 1

Roku固件安装指南页面内,Windows Installation栏目下,可点击标注蓝色的词语,从超链接上获得瑞芯微的开发工具包

因Github网站登陆,时常抽风。官网上不去的朋友,可以前往我的社区空间下载。

备份系统(可选)

原厂系统不能驱动IPS屏,对于计划更换IPS屏的朋友,我建议跳过备份这一步,直接升级。

1,安装windows驱动。解压DriverAssitant_v5.11.zip,运行DriverInstall.exe

2,解压AndroidTool_Console_v2.4.zip,鼠标右键点击Android_Console_Tool.exe,以管理员身份运行

3,公对公数据线,一端插入电脑,一端插入游戏机尾部、靠上的USB口

4,一只手长按游戏机上的 选择键[SELECT] + 返回键[RETURN]+ 音量加大[V+] 三个键,一只手开机

如果电脑一直无法“找到新设备”,请换一个PC端的USB口插入。

前置USB不行,就换主板I/O面板上的USB尝试。

有时候,主板I/O面板上的8个USB里面,只有1~2个能连接成功,这是很正常的。

5,听到电脑发出“找到新设备”的提示音(同插入U盘),且软件内显示“List of rockusb connected”后,松开三个按键。

6,输入1,以选择瑞芯微设备1(即霸王小子A12)

7,在Console软件界面,输入指令 RL 0x0 0xffffffff A12.img

官网教程的命令为 RL 0x0 0xffffffff A12_fff.img

B站浮华大神的命令为 RL 0x00000000 A12_000.img

建议两者都运行一次,多一个备份有备无患。

8,软件会有如下错误提示,无需理会。在软件目录下,检查是否有文件大小达到100MB的A12.img

完成后,可以开始刷新固件。

刷新固件

刷机前,务必保持电池电量在50%以上,且接好电源线。

先安装windows驱动。如做过系统备份了,可以跳过这一步:

解压DriverAssitant_v5.11.zip,运行DriverInstall.exe

1,电脑上解压 RKDevTool_Release_v2.84.zip,鼠标右键点击 RKDevTool.exe,以管理员身份运行

如果你是刚完成备份,打开软件,即可见到软件下方提示“发现一个LOADER设备”,那么请忽略步骤2、3、4,从第5步开始操作。

2,公对公数据线,一端插入电脑,一端插入游戏机尾部、靠上的USB口

3,进入工程模式:一只手长按游戏机上的 选择键[SELECT] + 返回键[RETURN] + 音量加大[V+] 三个键,一只手开机

4,听到电脑发出“找到新设备”的提示音(同插入U盘),且软件下方显示“发现一个LOADER设备”后,松开三个按键

再次提醒:如果电脑一直无法“找到新设备”,请换一个PC端的USB口插入。

前置USB不行,就换主板I/O面板上的USB尝试。

有时候,主板I/O面板上的8个USB里面,只有1~2个能连接成功,这是很正常的。

5,点击【升级固件】页面下的【固件】按钮,在弹出的对话框内,打开官方固件包的文件路径,选择合适的固件

一般情况下,可以先刷RevD固件。如屏幕显示有问题,再刷V1_V2固件,乃至V3固件

刷机、换IPS屏一条龙操作的朋友,直接刷V1_V2固件

PS:屏幕显示有问题,是因为V3 V4固件的输出分辨率为800x480
如若你的机器为V1 V2或新换的IPS屏,那么在1024×600的液晶屏上,画面不能满屏
正常画面靠左上,其他区域为花屏彩虹条。(忘记拍照了,就文字解释下)

6,点击【升级固件】页面下的【升级】按钮,软件右侧开始滚动状态信息

不到一分钟,刷新成功的游戏机,会自动重启。

看到新的开机画面,说明你已经成功了。

救砖指引(急救)

我没砖过,但我还是收集了一下相关资料,可能会帮助到部分朋友。

目前救砖的恢复途径,主要是有以下几条:

方法一:使用命令行开发工具,再刷一次Roku V2.0 beta v3固件

这个固件包比较难找,我的社区空间刚好有浮华大神当初发布的备份。

将下载的Team Ruka 2.0 beta v3 A12.7z解压,找到flash all versions.bat

使用AndroidTool Console命令行工具,公对公数据线链接电脑,长按三键开机进入工程模式,双击运行flash all versions.bat,等待数分钟后即可。

.bat文件是个批处理文件,相当于把你手动输入刷机命令的过程自动化了。里面的核心内容就两条:
WL 0x00008800 rootfs-ruka-beta-2.0_v4.img
WL 0x00003800 boot.img
这是将固件和引导文件分别刷入了相应分区。

Team Ruka 2.0 beta v3的固件,为RetroArch V1.90,默认分辨率为1024×600,自带IPS屏驱动,亲测支持IPS屏。

默认分辨率为800×480的V3 V4版原屏主机,可尝试以下方法:

使用电脑,在SD卡根目录\settings\retroarch\ 路径下,找到
retroarch.cfg
retroarch V1.cfg
retroarch_v3.cfg
三个文件,用记事本打开,拉到文末,修改分辨率参数后,保存

video_fullscreen_x = "800"
video_fullscreen_y = "640"
video_fullscreen = "true"

方法二:使用命令行开发工具,恢复官方系统备份

备份文件可以是自己的备份,也可以去找别人求助或机友群下载。

同样使用AndroidTool Console命令行工具,公对公数据线链接电脑,长按三键开机进入工程模式。

按照当初的备份指令,只是将命令 RL 修改为 ML

例如 ML 0x0 0xffffffff A12_fff.img

或者 ML 0x00000000 A12_000.img

==输入错误,可能会导致系统分区破坏==,需要重新将系统盘量产,再刷固件。

方法三:用一张新TF卡制作Roku Batocera系统,开机引导一次后,再根据自身需要,把主机刷回Roku RetroArch系统,乃至原版系统。

Roku Batocera是安装在TF卡上面的系统,不涉及系统刷机,操作较为简单,Roku Batocera固件官网有详尽的安装说明。

我简单介绍一下流程:

  • 官网下载 Batocera V33 稳定版Batocera V34 测试版
  • 使用Balena Etcher之类的镜像烧录软件,将下载好的.img.gz镜像文件,如 batocera-rk3128-powkiddy_a13-33-20220314.img.gz,还原到大于16GB的TF卡上。
  • 插入主机,并启动。因为镜像会自动扩容,填满TF卡剩下的所有空间,第一次开机时间较慢,需要约30秒。

如果你是V3 V4硬件版本的机器,还需要替换引导分区内的驱动文件,才能开机:
(玩过S905机顶盒EmuElec系统的小伙伴,应该很熟悉这个操作)

  • 使用DiskGenius,进入TF卡的boot分区,将 官网 下载的rk3128-powkiddy-a12-rev-c/d.dtb,替换掉原有的rk3128-powkiddy-a13-rev-a/b.dtb

当然,变砖的朋友,停留使用Batocera也是可以的,不必强求刷回RetroArch

正常来说,我更推荐使用RetroArch,原因如下:

  • Batocera只是RetroArch的一种前端,相当于一个界面美化包。对于画面精美的Batocera,A12/A13的RAM内存有限,运行比较吃力。
  • Roku Batocera的BUG更多,包括HDMI无法使用,AUX音频输出同时、无法关闭主机扬声器等。
  • 在主机成功刷新RetroArch后,开机时使用不同的TF卡,可以自由切换RetroArchBatocera,实现双系统。

方法四:通过淘宝客服/官方邮箱,弄到官方量产包,再用图形/命令行开发工具还原官方固件

要是自购机,这个方法是行得通的。

小黄鱼二手机,就纯粹靠情商了,尤其是霸王小子官店都关闭的情况下。

霸王小子官网为英文,面向外销, 只有一个联系邮箱 <hushuhe2021@gmail.com> ,或可尝试求助。

小霸王的销售渠道、联络方式更多,也可以曲线救国。

方法五:付费远程量产救砖

这也是最后的办法。

个人觉得,与其出57元找小黄鱼的商家,还不如去找浮华大佬(panshuai0@B站)付费解决呢,喝水不忘挖井人。

题后

小街机主机的内容部分,已完结。

但是想要玩起来,你还需要把FAT32格式的TF卡,制作成RetroArch游戏卡。

因为版权的关系,西班牙的Ruka小组,只提供了固件和存储卡的标准目录格式,想要玩起来,你需要最基本的主机BIOS、游戏ROM文件。

想要界面更美观,你还需要更多的屏幕遮罩、游戏封面/画面图片等等。

说到这里,评论区内一定会有人求懒人整合包。

抱歉,懒人包我没有,也不推荐大家去花钱买别人的。

我更推荐大家付出一点点学习成本,自己去DIY。

最快捷的方法,就是抓包。

去找国内外各种怀旧游戏前端的整合包,从里面找出需要的机种,把游戏rom、游戏图片、游戏列表、主机bios、边框图片及其他需要的文件,按照RetroArch使用规则,移花接木到自己的TF卡里。

有人感兴趣的话,请期待下一期《霸王小子A12游戏篇》,说说DIY游戏包的事儿。

最后感谢,霸王小子A12开源系统的:

  • 吹哨者 人中日月@B站(GXB)
  • 布道者 panshuai0@B站(浮华)
  • 制作者 西班牙Ruka Team 韩国Mupong Team