PS2使用OPL-SMB读取游戏

虽然并不完美,但确实方便。
起因
最近在玩PS2的《异度传说》,用的是日版初版(日版Reload版是英配)。
但玩到游戏正中间的时候,发现有两段CG会疯狂卡顿,等一分钟才会动几帧。
尝试清理了光头和盘面,但都无法解决。跳过CG的话,游戏直接就黑屏不动了。
大概因为这张碟是DVD9的吧,尽管是正版碟,但似乎因为密度过高之类的原因,还挺容易损坏的。
那没办法,再买一张是迟早的了,毕竟要收藏。可也不想把手头的游戏停下来,不然这一停可能就直接弃坑了。
于是研究了一下PS2的OPL。
PS2 OPL
这是个自制软件,全称Open-PS2-Loader
,支持以各种方式读取游戏,包括USB、HDD和SMB。
由于PS2的USB-A接口过于垃圾,才1.1,速度慢得要死,肯定是不能用来好好玩了。
而我的9w型机器又无法支持IDE硬盘,所以只能选择SMB方案,也就是从网络读取游戏。
虽然PS2的LAN口也有100M的速率,但终究还是比不过
准备工作
- OPL自制程序:https://github.com/ps2homebrew/Open-PS2-Loader
- 可以读取自制程序的PS2
- 游戏镜像,iso/bin均可
- 电脑/NAS
- 可选:FMCB自制菜单https://github.com/Jay-Jay-OPL/FreeMcBoot
SMB服务器设置
SMB服务器可以用电脑、路由器的SMB共享,或是NAS来解决。
我自己用的群晖NAS,毕竟24小时待机,方便。
- 在NAS上新建一个共享文件夹
PS2
,并在其中新建一个DVD
文件夹,将所有游戏镜像丢进去。
镜像名不可为中文,我使用的命名规则为XXXX_XXX.XX.Game_Name.iso
。
然后接下来是一个大坑:
- 在群晖的控制面板中,找到
文件服务-SMB-高级设置
,其中的最小SMB协议
必须设置为SMB1
。并在其他
中,勾选启用NTLMv1验证
。
这一步对于NAS非常重要,因为OPL不支持更高的协议,不这么设置会导致无法访问SMB的问题,报301错误。
我在NAS上有一个自己dump的游戏备份库,所有可dump的正版游戏都留了一个镜像在上面。
而由于共享文件夹PS2
使用的磁盘,和游戏备份库的磁盘是同一个。因此由于Btrfs磁盘格式的支持,这些本就存放在NAS上的镜像备份,拷贝到共享文件夹无需再占用额外容量。
另外,由于PS2通过SMB读盘时,会非常频繁且大量地读取,对路由器还是会有一定负荷的,建议使用稍好点的路由器。
至此SMB端设置完毕。
PS2端设置
因为OPL本身是个自制软件,所以PS2无论如何就得有一个读取自制软件的方案。不管你用什么方案都行,直接FMCB也好,直读也好,都可以。
我的PS2因为有直读,因此最初使用的是66 in 1工具大全
的刻录盘,里面就自带了OPL工具。
但因为每次读盘还挺慢的,最终选择了安装一个FMCB。
安装FMCB
FMCB全称FreeMcBoot
,等于是一个自制系统,直接修改了PS2的主菜单,开机就可以运行自制软件,可以直接抛弃光盘了,非常方便。
安装FMCB之前,先看下面的OPL安装
下载FMCB后,将所有文件直接拷贝到USB设备根目录下,并连接到PS2。
使用直读或任意方式,打开自制软件
ELFLauncher
,这差不多是一个文件管理器。在ELFLauncher中找到
mass:
,这是PS2的USB设备目录。进入之后启动根目录下的FMCBInstaller.elf
。FMCB的安装界面很简洁,直接选
INSTALL - Normal
即可。也可以选择其他完整安装之类的方案,这样的话这张记忆卡就可以在任意地区版本的PS2上通用了。
OPL安装
OPL可以在FMCB安装好后,再对FMCB进行修改并安装,将OPL选项添加到PS2系统菜单中。
但这样相对而言比较麻烦,因此还是在FMCB安装之前,直接修改安装包文件来得方便。
将下载好的OPL包解压,我们用到的仅仅只是里面的
OPNPS2LD.ELF
这一个文件。将
OPNPS2LD.ELF
拷贝至FMCB的/INSTALL/BOOT
文件夹。在FMCB的
INSTALL/SYS-CONF
文件夹中,找到FREEMCB.CNF
,这是个文本文件,直接打开修改。在
FREEMCB.CNF
文件中,加入以下内容:
name_OSDSYS_ITEM_6 = OPNPS2LD
path1_OSDSYS_ITEM_6 = mass:/BOOT/OPNPS2LD.ELF
path2_OSDSYS_ITEM_6 = mc?:/BOOT/OPNPS2LD.ELF
path3_OSDSYS_ITEM_6 = mc?:/B?DATA-SYSTEM/OPNPS2LD.ELF
其中“6”就代表PS2菜单的第六行,可以自行进行修改,但每一行都是必要的。
- 修改完成后,再进行FMCB的安装即可,装完就有OPL了。
可选:
- 如果你的记忆卡足够大,或者准备一直插着USB设备,可以将OPL菜单进行汉化。
在OPL的下载页面,提供了多语言包。把简体中文文件夹中的lang_SChinese.lng
和font_SChinese.ttf
文件,利用USB设备拷贝到记忆卡根目录的OPL
文件夹中即可。
但需要注意的是,ttf字体文件很大,如果是8MB记忆卡的话八成会放不下。
OPL设置
进入OPL自制软件后,需要进行一些设置。
Settings
中,将ETH Device Start Mode
设置为Auto
,Default Menu
设置为ETH Games
;Network Settings
中,对网络进行设置:PS2选择
DHCP
上网,但由于是老设备,可能需要等一会儿才会连上。可以在路由器后台查看LAN口连接的设备。SMB服务器中,
Address Type
选择IP
方式,并填写NAS/电脑/路由器的IP地址,端口默认445就行。Share
指的是NAS上的共享文件夹,我上面设置的是PS2
,直接填写就可以,不需要斜杠。然后是NAS的用户名和密码,输入后选择连接即可。
如果这时出现错误代码
301
,大概率是因为上面没有设置SMB1
和NTLMv1验证
。记得返回后选择最下面的
Save Changes
,将设置保存到记忆卡。
读取游戏
至此,SMB服务端和PS2端设置完毕,可以看到服务器上所有的游戏列表了。直接启动即可。
优化
游戏封面
光秃秃的游戏列表很难看,因此可以在SMB服务器的共享文件夹中,把游戏的封面图、背景图等放到ART
文件夹中,并在OPL的Display Settings
中开启Cover Art
。
封面的文件名需要以“XXXX_XXX.XX_COV”的格式命名,例如《零:红蝶》的封面文件名为SLPS_253.03_COV.png
。
虚拟记忆卡
手头只有8MB的记忆卡,不太够用,尤其是FMCB占用了不少空间后,给游戏存档的空间就更少了。
OPL支持虚拟记忆卡VMC,并且虚拟记忆卡文件是保存在SMB服务器上的,更安全。如果给该共享文件夹加一个云同步,甚至能让PS2支持云存档(笑)
在SMB服务器上创建好虚拟记忆卡后,需要在游戏标题上按△键,进入到Configure VMC
,开启并设置对应的VMC文件。
由于每个游戏的设置是独立的,因此这些选项都需要单独设置,否则游戏存档默认还是实体记忆卡。
缺点
使用OPL的缺点主要有两个:
OPL仅支持SMB1和NTLMv1,因此NAS的安全性严重降低。但好在是个人的家用NAS,这个问题不大。
读盘速度仍然比不上实体光盘,测试在《异度传说》的CG过场中,出现频繁卡顿,甚至导致了音画不同步的问题。
完全体的PS2
至此,我的PS2终于进化到了一个接近完美的状态。
9w型拥有如此纤薄优雅的机身
拥有一个“数字版”游戏库*
存档支持云端同步
游戏和存档可直接用PC管理而无需设备插拔
用Brook的转接器,实现了无线连接DS4,无延迟,震动可用,Ps键对应模拟键
RGB输出至OSSC,转出绝美的HDMI数字信号
除了OPL读盘比光盘稍慢、换游戏还是得物理reset,其他真的都完美了。(OPL似乎支持组合键软复位甚至截图,有待研究)