Piboxy复古游戏机外壳

80后集体的记忆中肯定有过这样一段快乐的时光,就是在家玩儿游戏机,任天堂,红白机的时代,每每响起这些经典的音乐,我们的内心都会泛起一丝童年的记忆~

还有最酷的就是带个遥控器哦!

这是Raspberry Pi的升级NES风格的外壳,包含了安全电源控制和重置按钮可以防止SD卡上系统的损坏。Raspberry Pi可以通过红外遥控器打开/关闭, 远程开关机是不是很爽啊!当你购买的树莓派还在吃灰,赶紧拿出来DIY一个属于自己童年记忆的NES吧!Retropie官方支持许多复古游戏操作系统,如batocera, Retropie, Lakka等。

这款称为Piboxy的树莓派外壳是Raspberry Pi最强功能性的NESPI案例。

支持的树莓派型号:

  • RASPBERRY PI 3模型B.
  • RASPBERRY PI 2 B型
  • RASPBERRY PI 1型号B +

就是下面这些:

盒子的正面看上去这样的:

原始LAN端口和USB端口

保留原始LAN端口和USB端口,可直接使用。配置Raspberry pi只需要一行命令。

改进的HDMI和音频输出

保留了原有的HDMI和音频输出连接器,并在底部增加了散热孔。

Micro SD卡插槽

为背面的Micro SD卡提供插槽。特别设计,方便您插入micro SD卡。

微型USB电源输入

我们将电源输入接口放在独立的一边,以便为您提供更多空间,让您更自由地操作。

定制特性

我们量身定制此外壳,完美匹配您的Raspberry Pi PCB,数据线和风扇是定制和专用的。
请务必注意数据线和风扇的正确方向和位置。橙色的位置是你的树莓派哦!

技术规格

产品包含:

 

  • Piboxy案例x 1
  • 电源控制板x 1
  • GPIO 2 * 6电缆x 1
  • 螺丝x 5(备用1个)
  • 型号2507风扇x 1
  • 螺丝刀x 1
  • 红外遥控器x 1
  • 使用说明书x 1

通过这个外壳,可以将你的树莓派重新复活!你还可以购买2个USB手柄,从网络上下载游戏的ROM,然后上传到树莓派的TF卡中,重启一下设备就可以开始你的复古游戏之旅了!

安装驱动的方法也是简单到爆, 在retropie的字符界面执行:

curl -sSL  piboxy.com/install | bash

等待个几分钟就可以完成配置了,当然,在安装驱动前要保证网络畅通哦!

 

 

基于Zero W和Batocera的游戏掌机

使用batocera系统配置树莓派Zero W掌机,batocera系统与其他游戏机系统相比性能要求低,非常适合用于Zero这种低配置的板子上使用。

下载镜像

这个网站,选择针对树莓派Zero W的镜像下载,Windows用Win32DIskImager直接烧写,Linux用dd命令即可。
 

初次配置

通过HDMI线连接电视机或者显示器,给树莓派正常供电,系统会自动分配空间,自动配置完,然后强制关机直接切断电源就行。

配置分辨率

考虑到我们需要用小屏幕来作为掌机的显示,系统不会默认就直接适配屏幕,以我的这个5寸屏幕为例

需要修改一些配置文件,这个步骤需要Linux系统或者虚拟机。
首先需要修改/RECALBOX目录下的config.txt
将下面这段加到里面去(可能需要sudo命令行)。
framebuffer_width=800
framebuffer_height=480
hdmi_force_hotplug=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt  800  480  60  6  0  0  0
device_tree=bcm2710-rpi-3-b.dtb
dtparam=spi=on
把/SHARE/system/recalbox.conf中的两处CEA 4 HDMI改成DMT 87 HDMI
使用其他屏幕的时候用类似的操作就行了,配置成功之后应该可以使batocera的主屏幕和游戏界面都完全适配使用的硬件屏幕。

设置GPIO控制

修改/SHARE/system/recalbox.conf中的两行配置
controllers.gpio.enabled=1  
controllers.gpio.args=map=1,2 => controllers.gpio.args=map=1
重启之后就可以尝试用上面这张图的相关引脚了,默认是上拉的引脚,所以只要把引脚比如27号连一下GND,看他会不会有左滑的效果,如果有效果的话,就是说软件上配置成功了,硬件上还需要做一些事情,需要焊一块小型的掌机来操作才行。
 
总体思路就是在一块洞洞板上焊接需要数量的微动开关,然后每个开关一边连到相应的开关,另一边一起连到GND即可,具体随意就行,包括整个的布局之类的,只要按下去有效果就行了。
比如像我这样的很多飞线的,能用就行…
使用游戏机

正式玩游戏之前需要一些其他额外的配置
配置WI-FI

游戏上传在无法联网的板子上,我们只能通过直接对SD卡读写,拔下SD卡然后往里面复制粘贴进去游戏ROM文件,需要用Linux系统或者虚拟机来打开SD卡,ROM放置的目录在/recalbox/share/roms,里面有分开各种模拟器的目录,把相应的游戏rom或者压缩包粘贴到相应的模拟器目录下就好了。

网络上传对于能联网的板子,尤其是树莓派3和ZERO w这类有无线WiFi的板子,完全可以通过网络的方式上传游戏文件,而不需要麻烦的插拔SD卡。

首先肯定需要联网,可以看上一篇文章中的联网的步骤,确保板子和PC在同一局域网里面

打开我的电脑中的网络,应该能看到RECALBOX的一个网络位置

进入这个位置,就能看到下面的目录结构

直接复制相应的ROM文件到对应的模拟器目录下面,然后在游戏机上,进入主菜单的游戏设置,然后选择更新游戏列表,之后再进入对应的模拟器目录,就能看到刚刚复制进去的游戏了。

有时候可能在网络中直接看不到这个网络位置,我们也能在我的电脑的地址栏里面,直接输入\\RECALBOX或者对用的ip地址,比如\\192.168.3.18,应该也能进入上面的那个目录结构,然后做类似的操作即可。

最后就能用自己做的手柄开始玩各种复古游戏了,只要你能找到它的ROM。

Batocera系统上配置neogeo模拟器

neogeo模拟器和常规的其他模拟器有所区别,首先他的rom是一个zip压缩文件,里面有很多小的文件,不像NES这种是一个nes结尾的小文件。

此外呢,他运行的时候除了本身这个zip文件还需要一个neogeo的文件(被称为BIOS或者驱动文件),具体来讲就是,你想玩一个neogeo游戏时,除了这个游戏本身,在这个目录下面还需要有一个neogeo.zip的驱动文件,否则是无法成功运行的,一开始我甚至以为下载到的拳皇rom都是有问题的、不完整的,其实需要的就是一个neogeo的驱动文件。

对于Batocera的FBA模拟器来说,需要把rom和neogeo的驱动文件一起粘贴到fba_libretro文件夹,然后重新扫描一遍游戏文件,就能开始玩了。

batocera.linux游戏上传和备份

游戏上传

在无法联网的板子上,我们只能通过直接对SD卡读写,拔下SD卡然后往里面复制粘贴进去游戏ROM文件,需要用Linux系统或者虚拟机来打开SD卡,ROM放置的目录在/recalbox/share/roms,里面有分开各种模拟器的目录,把相应的游戏rom或者压缩包粘贴到相应的模拟器目录下就好了。

网络上传

对于能联网的板子,尤其是树莓派3和ZERO w这类有无线WiFi的板子,完全可以通过网络的方式上传游戏文件,而不需要麻烦的插拔SD卡。

首先肯定需要联网,可以看上一篇文章中的联网的步骤,确保板子和PC在同一局域网里面

打开我的电脑中的网络,应该能看到RECALBOX的一个网络位置

进入这个位置,就能看到下面的目录结构

直接复制相应的ROM文件到对应的模拟器目录下面,然后在游戏机上,进入主菜单的游戏设置,然后选择更新游戏列表,之后再进入对应的模拟器目录,就能看到刚刚复制进去的游戏了。

有时候可能在网络中直接看不到这个网络位置,我们也能在我的电脑的地址栏里面,直接输入\\RECALBOX或者对用的ip地址,比如\\192.168.3.18,应该也能进入上面的那个目录结构,然后做类似的操作即可。

游戏备份

通过一个USB设备可以来储存游戏机的ROM文件和游戏存档。

首先肯定需要一个USB设备,比如U盘,推荐的文件系统是FAT32 、EXT4或者NTFS。

备份到U盘

  1. 把U盘插到跑着batocera的板子上
  2. 通过ssh登录到板子的系统里
  3. cd /recalbox/scripts
  4. # ./recalbox-sync.sh list 可以查看你当前连接的USB设备,比如下面的
# ./recalbox-sync.sh list
DEV 5075-67F1 1241 - 1.9G

现在能看到我的U盘,名字是1241,device id是5075-67F1。

# ./recalbox-sync.sh sync 5075-67F1
sending incremental file list
created directory /media/usb0/recalbox
./
bios/
bios/ProSystem.dat
bios/lisez-moi.txt
bios/readme.txt
bios/fba/
bios/fba/samples/
....
system/ssh/dropbear_rsa_host_key
system/udev/
system/udev/rules.d/

sent 66,232,322 bytes  received 5,500 bytes  3,080,828.93 bytes/sec
total size is 66,193,491  speedup is 1.00
synchronizing disk

到这里为止,U盘上就已经有备份好的数据了,这时候拔下来的话,就能看到一个recalbox的目录

完全使用U盘来存储

游戏机支持完全使用U盘来存储ROM和存档,也就意味着系统和数据的分离,你可以使用很小的SD卡来存着游戏机的核心系统,ROM和存档分离着放在U盘上。

坏处是每次要放游戏进入的时候,得断电之后把U盘拔下来,放到U盘里面。

好处是假如系统坏了,或者你有好几个游戏机,只要插上U盘就能跟之前一样的使用了。

具体操作很简单:

  1. 打开游戏机里面的主菜单
  2. 选择系统设置->存储设备
  3. 选择你的USB设备,重启即可

游戏存档

在游戏过程中,按下HotKey+Y就能存档,按下HotKey+X就能载入存档。

而且系统有好几个存档槽,通过HotKey+Up/Down就能切换当前选择的存档槽了。

batocera.linux基本配置

修改分辨率

batocera.linux适用于各种分辨率的屏幕,也就意味着除了各类常规的显示器,也适用于不同的小的屏幕,比如这个5寸触摸屏(系统不支持触摸)800×480的分辨率,就以这个屏为例:

首先需要修改/boot目录下的config.txt

将下面这段加到里面去

framebuffer_width=800
framebuffer_height=480
hdmi_force_hotplug=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt  800  480  60  6  0  0  0 
device_tree=bcm2710-rpi-3-b.dtb
dtparam=spi=on

把/SHARE/system/recalbox.conf中的”CEA 4 HDMI” 改成 “DMT 87 HDMI”

 

在前端页面单击start键,进入这个主设置界面

系统设置

可以查看当前板子的信息,存储状态,修改语言,超频,备份和安全之类的设置。

游戏设置

包括一些显示比例、回放功能、自动保存/加载、主题之类的设置,还可以针对某个模拟器进行深层的配置。

手柄设置

游戏中的按键和以前玩的映射位置一样,但是通过HotKey也会有一些特殊的结合键,也就是说一开始必须要设置一个HotKey(不然可能进入一个游戏之后就出不来了)。

Hotkey + Y → 储存进度
Hotkey + X → 载入进度
Hotkey + Up → 选择存储槽
Hotkey + Down → 选择存储槽

Hotkey + Start → 结束游戏并返回到主界面
Hotkey + A → 重置游戏
Hotkey + B → Retroarch菜单
Hotkey + L1 → 截屏

Hotkey + Right → 加速游戏
Hotkey + Left → 回放

Hotkey + R2 → 下一个 shader preset
Hotkey + L2 → 上一个 shader preset

在这个设置页面可以设置手柄,添加蓝牙手柄,配置1P、2P之类的多个玩家。

UI设置

屏幕保护时间、样式,帧率显示、主题设置都在这个页面完成。

声音设置

主要用来设置输出的接口是板上端口还是HDMI,比如用下面的这个配套功放板来测试

网络设置

进入网络设置之后,假如是WiFi的话,默认是没有开启的,需要选择enable,然后输入SSID和KEY,过段时间就能连接上了。

同时batocera的ssh是默认开启的,也就意味着我们可以通过Putty或者终端ssh连上去,默认root的密码是recalboxroot;除了ssh之外,我们通过网络也能可以非常方便地把一些游戏文件通过网络直接传上去,甚至还能通过网络使用虚拟键盘和虚拟手柄。

在浏览器打开batocera的ip地址,就能看到有三个选项,以虚拟手柄为例,在这个网页可以用鼠标点击来当作手柄用,但是当你在手机或者平板打开的时候,他就真的像一个手柄一样,而且还是无线手柄。

抓取

这个功能是用来抓取每个模拟器上每个游戏的信息和封面的,连接到一些网站可能用爬虫抓取。

抓取成功之后,在游戏选择界面也会有所不同。

Kodi媒体中心

系统附带的一个媒体中心,在前端通过X按键或者在设置界面可以进入这个媒体中心,里面可以看电影、听音乐,不过很多按键会和之前不同,用起来稍微有些麻烦。

batocera.linux——又一个复古游戏操作系统

batocera.linux是一个与retropie类似针对复古游戏的操作系统,在PC和一些开发板比如树莓派、Odroid上都可以运行。

batocera.linux

batocera.linux可以安装在一个U盘里面,对PC而言就是即插即玩的,对于树莓派和Odroid而言,就需要把整个系统烧写到SD卡里面去才能运行了。

batocera其实来源于recalbox,后者本身也是一个非常出色的复古游戏操作系统,但是recalbox这个系统里面有不少商用成分,于是有人把这些替换成开源的部件,换了名字叫batocera,所以整个项目而言,不少的底层模拟器等都是相似甚至相同的,性能和功能上都和recalbox保持一致。

目前支持的设备包括

  • 32位、64位PC
  • 树莓派Zero、1、2、3
  • Odroid XU4、C2

支持绝大多数的游戏模拟器,比如Game Boy,NES。

烧写

以树莓派为例,烧写方法与Raspbian等系统一样,首先根据板子的型号在这个网站下载对应的镜像文件。

下载并解压之后,用Win32DIskImager就能把整个镜像文件烧写到SD卡了。

初次配置

通过HDMI线连接电视机或者显示器

给树莓派正常供电

插上游戏手柄

 

按照上面的三个步骤后首次运行,如果不是正常分辨率的显示器,可能会出现一些显示问题;插上新的手柄之后必须配置之后才能使用。

按照提示长按某个键来进入配置手柄的界面

 

对应的按键和名字单击,假如不需要配置某个键,长按就会跳过

 

具体的试玩效果可以看上面的视频。