試玩了一下 Raspberry Pi & Buildroot 自己編一套系統

強者我同事 BobChao 出清一塊 Raspberry Pi Model B,雖然我本來就有一塊,但是在拉麵店裡基於某種天外飛來的不正經念頭,想要試做一個家庭娛樂系統(唸作:「電視遊樂器」),所以就收下來當開發機板了。而原來的那一塊呢,就…另外有用途。

其實這個不正經的念頭是這麼來的:在前不久,我苦苦哀求老婆跟我一起玩 PS3,但是她自稱除了「打飛機」(捲軸射擊)類會玩以外,其他皆不在行,所以我就開了 1942: Joint Strike 跟她玩。這圓了我這個阿宅長久以來的夢想之一:跟老婆快快樂樂開開心心打電動。

於是我就在想,撇去市面上既有遊戲機對懷舊遊戲的舊瓶裝新酒,像是 Wii, 3DS 的 Virtual Console 之類的服務不談,Raspberry Pi 其實很適合拿來自己搞一個這樣的懷舊遊戲系統,在上面藉著模擬器玩一些早期的「打飛機」遊戲,早期遊戲由於畫面沒那麼複雜精緻,也讓輕量玩家不那麼畏懼。(好吧,說到「打飛機」這個詞呢,我知道在某些地方有特別的含義,不過這裡指的就是捲軸射擊遊戲。)

雖然已經有 RetroPie 之類的解決方案,但是開機速度上我是不滿意的。以當前遊戲機系統愈做愈複雜、開機、載入遊戲愈來愈久、還三不五時來個線上更新的現象,簡直就像在用 Windows 一樣,等到終於可以玩到遊戲,熱血與玩心早就冷了。我希望這個「家庭娛樂系統」可以像早期的遊樂器一樣,電源打開,遊戲畫面就出現在映像管螢幕上,找回那種讓人對遊戲裡的挑戰躍躍欲試的衝勁。

所以某種程度上,我需要自己做些髒活,讓這個「家庭娛樂系統」比較像個消費型家電,而不是望而生畏的電腦。

經過粗略的研究後,發現其實已經有 Buildroot 這個方案,可以讓我先搭建一套具體而微的陽春基礎系統,以預設的 raspberrypi_defconfig 配置編出來的成果,兩秒多就可以完成開機:

Buildroot-generated system boots on my Raspberry Pi

這樣的結果讓我很滿意,如果再拔掉一些用不到的東西,應該還可以再偷一點時間,或盡早載入模擬器系統的 UI,感官上又可以騙到一點。

Buildroot 真的是很棒的工具,從搞定有點阿雜的 cross-compilation toolchain 到 build 目標系統,整個嵌入式系統的建置流程基本上幫你做好,在這個基礎上開發自己的應用就少掉了很多苦工。

CC BY-SA 4.0 This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Leave a Reply

Your email address will not be published. Required fields are marked *