一位开发者成功将《毁灭战士》(Doom)移植到了一副无线耳机上。这类说法或许已不如从前那般令人震撼,毕竟关于《毁灭战士》的各种奇闻轶事和移植版本早已层出不穷,从量子计算机到USB充电器,甚至割草机,都曾成为它的运行平台。然而,由于无线耳机(目前)没有显示屏,开发者阿林·萨基西安(Arin Sarkisian)还巧妙地设计了一种方法,将《毁灭战士》的游戏画面流式传输到另一台设备上,甚至可以通过互联网进行远程游玩。

Cover Image

你无法用任意一副无线耳机来体验这最新一期的“《毁灭战士》移植体操”。目前,这个《毁灭战士》移植版只能在PineBuds Pro耳机上运行。据阿林-S称,这是唯一一款拥有开源固件的无线耳机。没错,这款耳机与那些采用RISC-V架构的焊铁(例如我们于2022年8月评测过的Pinecil V2)出自同一团队之手。

就出人意料的CPU性能而言,PineBuds Pro可谓名列前茅。在其贴合耳廓的紧凑外壳内,除了音频驱动单元和电池,还搭载了一颗Arm Cortex-M4F处理器。阿林-S通过修改开源固件,将CPU时钟频率从100 MHz提升至300 MHz(这在当今已是惊人的超频),并禁用了低功耗模式,以提供最极致的《毁灭战士》游戏体验。

使用PineBuds面临的更多障碍在于其并不充裕的RAM和存储空间。开发者通过“预生成查找表、将变量设为常量、从闪存读取常量变量、禁用《毁灭战士》的缓存系统、移除不必要的变量”等手段,成功将《毁灭战士》的运行内存控制在1MB以下。此外,共享软件版的《毁灭战士1》WAD资源文件大小为4.2MB,略高于PineBuds的4MB存储容量。在借用了一些预先为缩小体积而修改的《毁灭战士》资源后,这个数据包最终被压缩到了1.7MB。

最后,没有屏幕的难题带来了自身的一系列挑战。阿林-S认为,PineBuds Pro的UART连接是实现游戏画面传输的最佳选择(另一种选择是蓝牙)。带宽限制、图像压缩技巧以及对Cortex-M4F处理器的需求,最终意味着实际可达到的最佳性能约为18fps。理论上,它应该接近25fps,但开发者认为CPU没有足够的能力以该速率持续转换MJPEG视频流。

没有PineBuds Pro也没关系。阿林-S分享了所有必要的资源,让你可以把自己的PineBuds Pro设置好并运行加载了《毁灭战士》的固件。然而,这位开发者还慷慨地决定建立一个网站,从他自己的那副PineBuds Pro上流式传输《毁灭战士》的游戏画面。


文章标签: #毁灭战士 #开源硬件 #游戏移植 #流式传输 #嵌入式开发

负责编辑

  菠萝老师先生 

  让你的每一个瞬间都充满意义地生活,因为在生命的尽头,衡量的不是你活了多少年,而是你如何度过这些年。