开源掌机到底怎么开源的,也没见淘宝上卖的机器提供开发资料?
开源掌机是个广义概念,包含两类设备
第一类设备是指:该设备的操作系统是开源软件,比如基于Linux或Android
第二类是指:该设备的游戏生态由开源/Mod/自制软件主导、商业游戏生态较弱
许多设备兼具上述两者
开源掌机的雏形:GP32
一般认为2001年韩国GamePark的GP32是“开源掌机”的起点,虽然它并不是一款Linux系统的掌机,但是由于GamePark鼓励自制软件(Homebrew)并开放SDK,导致其自制软件生态远比商业软件生态繁荣。
值得注意的是,早期的GamePark并没有把“开源”当作营销品牌或市场战略,其原始固件仍然默认只能运行经过加密的程序,但其运行非加密程序的条件较为宽松,只需要网站注册并加载Free Launcher,其储存介质也是当时流行的SmartMedia储存卡,所以成为爱好者移植游戏的首选平台。
以GP32在SourceForge上搜索仍然可以找到大量为GP32移植的开源软件:
SDL移植: https://sdl-gp32.sourceforge.net/
德军总部3D移植:https://sourceforge.net/projects/gp32wolf3d/
Quake移植:https://sourceforge.net/projects/gpquake/
Doom移植:https://sourceforge.net/projects/gpdoom/
OpenBor,横板过关游戏引擎:https://sourceforge.net/projects/openborgp/
“开源掌机”概念形成:GP2X
GamePark在GP32推出后就新一代游戏机的开发路线出现分歧,部分员工离开原GamePark后成立了名为“GamePark Holdings”的新公司,并开发了基于ARM处理器+Linux系统的GP2X。GP2X不仅使用了Linux系统内核,其开发环境也是基于GCC的,而且内部没有任何DRM。
Setting up a development environment (Linux)
GP2X取得了有限的成功,销售了6万套左右,特别是在“卧室程序员”传统深厚的欧洲积累了忠实的用户群体,至此“开源掌机”从GP32时代仅仅作为爱好者的社区实践,变成了一种游戏市场上可行的产品路线选择,GP2X后续出现了两代:GP2X Wiz(2009)和GP2X Caanoo(2010)。
开源掌机与中国制造:丁果A320
和GP32类似,丁果A320最初并未设计为开源掌机,而是一款支持游戏的MP4,在丁果A320出现之前,一些游戏MP4产品就已经活跃在市场上,比如JXD 301、歌美X760等Analog Devices Blackfin芯片的产品:Device List - Bfdev
虽然Blackfin芯片的MP4并没有形成广泛的业余开发生态,但其游戏模拟功能和GP2X社群的兴趣重叠。
另外一个对丁果A320的业余开发带来重要影响的是RockBox社群,他们逆向了许多国产MP3/MP4,在丁果A320之前,使用同款JZ4740处理器的昂达VX747就已经获得了Linux移植。
2009年6月底,西班牙开发者booboo(Ignacio García)在丁果A320上实现了Linux和原生系统双启动。
值得一提的是,丁果A320虽然有Linux移植,但整体上仍更接近第二类开源掌机,相当多的软件是针对其原基于µC/OS-II的官方系统开发的,包括非官方的SDK和开发方案。
针对昂达VX747的Linux移植:https://repo.or.cz/w/jz_linux_2.6.24.3.git
Dingoo Linux(Dingux): https://code.google.com/archive/p/dingoo-linux/downloads
S2DSDK(官方SDK)https://www.harteex.com/hosted/a320.freeforums.org/s2dsdk-installation-guide-t299.html
非官方Dingoo SDK(主要维护者是Flatmush和Harteex)https://code.google.com/archive/p/dingoo-sdk/downloads
无SDK编译Dingoo程序http://www.harteex.com/?page=dingoo-compile-guide
欧美社区的文化回应与供应链灾难:OpenPandora、GCW-Zero
GP2X和丁果A320分别利用ARM和MIPS处理器开发了具备一定影响力和受众群体的开源掌机,但语言文化上的差异始终让以欧洲为核心的软件开发者社群和亚洲的制造商之间存在沟通障碍,许多开发不得不通过逆向工程进行,这也让欧美分销商、爱好者社群尝试自行制造硬件。
OpenPandora(2010)继承GP2X路线,使用ARM处理器;GCW-Zero(2013)则继承丁果路线,使用君正MIPS处理器。
今天看来,产品定位、功能设计上两款产品都与西方黑客文化紧密呼应,OpenPandora实际上是承接了开源游戏、开源硬件(对应Ben Nanonote)、开源PDA(对应夏普Zaurus)三种黑客文化潮流。而GCW-Zero则承接了2010年代初Xbox Live Indie和Steam绿光带来的独立游戏浪潮。
但两款机型都遇到了灾难性的供应链断裂,参与预售众筹的买家许多在10年后仍然即没有收到机器、也没有收到退款。
超过10年还没有收到OpenPandora的预售参与者: https://www.pyra-handheld.com/boards/threads/i-pre-ordered-a-openpandora-in-2010-and-still-havent-received-anything.99788/
GCW-Zero的Kickstarter评论区充满了愤懑的众筹参与者: https://www.kickstarter.com/projects/gcw/gcw-zero-open-source-gaming-handheld/comments
安卓游戏:JXD金星和OUYA
实际上在游戏市场上金星的参与可能比丁果还要久,前面丁果A320的时代就有JXD 301这样带有游戏功能的MP4活跃在市场上,而且得到了海外社区的一定关注量。
2000年代末,平板电脑的前身MID(Mobile Internet device,移动互联网设备)概念兴起,许多MP4厂商跟随上游芯片制造商瑞芯微、炬力、Amlogic、GeneralPlus等转型生产Android平板电脑。
2011年底上市的金星JXD S7100号称“全球首款智能平板游戏机”,如果就游戏特化的Android设备来说,索尼Xperia Play智能手机要更早半年,但就平板这个形态来说,JXS S7100可能确实是全球首发。
- JXD S7100A使用GeneralPlus GP33003
- JXD S7100B使用AMLogic AML8726-M3
当然,真正把“Android游戏机”带到前台的是2012年夏天的OUYA,作为Kickstarter历史上众筹金额最高的几款产品之一。
https://www.kickstarter.com/projects/ouya/ouya-a-new-kind-of-video-game-console
OUYA虽然不是“掌机”,但向公众传播了“Android可以成为开放而优质的游戏平台”这一观念,实际上开辟了“微主机”(Microconsole)这一战场,Mad Catz MOJO(2013)、Nvidia Shield Portable(2013)、Google Nexus Player(2014)乃至Steam Machine(不是Android却是SteamOS的起点)都受其影响,连索尼都被卷进这个战场,开发出PlayStation TV(2014)。
教育用游戏机:Arduboy和微软Makecode Arcade
树莓派和Arduino在创客教育中的流行造就了这个市场,基于Arduino的Arduboy算是第一个成功的产品:https://www.kickstarter.com/projects/bateske/arduboy-card-sized-gaming
Adafruit PyGamer、小喵科技喵比特、柴火创客GameGo都在这个路径上,这些设备多数兼容微软Makecode Arcade
GP2X和丁果路线的后续:GameShell和安伯尼克
安伯尼克基本上继承丁果路线,产品设计更偏核心游戏玩家导向,往往具有开箱即用的全功能模拟器,但硬件型号多、配置参差,系统特性未必完全一致,开发文档零散,开发体验一般。大多数玩家到手装ROM即玩,自行开发的人群较少,让题主感到困惑的设备大概属于这一类。但从产品脉络和技术架构上来讲,确实是开源掌机。
TGFC上对硬件机型有比较详细的整理:开源掌机的前世今生(极简文字版) - 经典游戏怀旧专区 - TGFC Lifestyle
Clockwork Pi的GameShell则更偏向GP2X-OpenPandora路线,没有现成模拟器,而是把游戏机设计为一个开发平台,给出组织较为详尽的开发资料,Clockwork Pi非常难得的一点是作为一只中国团队,他们的运作相当国际化,在海外维持了有一定热度的开发者社群。
https://github.com/clockworkpi/GameShell
游戏UMPC:GPDWin和Steamdeck
中软赢科GPDWin和Steamdeck实际上都从2010年代初安卓游戏市场上分化出来。
GPDWin的前身是GPD XD,本身就是金星JXD系列Android掌机的竞争对手,2014年微软对9寸以下平板设备免除Windows授权费,这一时期大量Android平板厂商进入Windows平板市场,国内Windows UMPC技术成熟,是GPDWin出现的基础。
从技术架构上说GPDWin确实不算“开源”,但从市场结构上来说是却和“开源掌机”一脉相承。
微软为什么要将 Windows 对 OEM 的手机和平板免费?
前面OUYA一节已经提到,SteamOS最初是为Steam Machine开发的,而Steam Machine则是Steam对OUYA带来的Microconsole热潮的回应,小霸王Z+其实也在这个路线上。
https://www.kickstarter.com/projects/smachteam/smach-z-the-handheld-gaming-pc/
在Steam Deck出现之前,就已经有西班牙的初创团队尝试推出SteamOS掌机,叫SMACH Z,不过欧洲人估计又一次翻车在供应链上,到头来一台机器也没投入市场。
https://liliputing.com/smach-z-handheld-gaming-pc-probably-wont-ever-ship-crowdfunding-fail/
一直到2022年,Valve亲自下场才做出Steam Deck,从设计理念来讲,它非常像是Steam Machine和NVIDIA Sheild Portable的结合——前者贡献了SteamOS的开放软件栈,后者贡献了掌机形态的便携游戏体验,由此将开源掌机进一步推向大众视野。