将前端技术栈移植到掌上游戏机
作为前端工程师,我们编写的代码只能活在浏览器、小程序或者 Node 进程里,这似乎已经成为了一种常识。但这就是我们的能力边界了吗?本文将带你为一台内存仅 32M,分辨率仅 320x240 的掌上游戏机适配前端工具链,见证 Web 技术栈的全新可能性。 本次我们的目标,是只配备了 400Mhz 单核 CPU 和 32M 内存的国产怀旧掌机 Miyoo。它固然完全无法与现在的 iOS 和安卓手机相提并论,但却能很好地在小巧精致的体积下,满足玩小霸王、GBA、街机等经典游戏平台模拟器的需求,价格也极为低廉。这是它和 iPad mini 的对比图: 那么,怎样才算是为它移植了一套前端技术栈呢?我个人的理解里,这至少包括这么几部分: 构建环境 - 应用编译工具链 运行时 - 嵌入式 JS 引擎 调试环境 - IDE 或编辑器支持 下面将逐一介绍为完成这三大部分的移植,我所做的一些技术探索。这主要包括: 搭建 Docker 工具链 走通 Hello World 焊接排针与串口登录 定制 Linux 内核驱动 移植 JS 引擎 支持 VSCode 调试器 Let’s rock! 搭建 Docker 工具链 入门嵌入式开发时我们首先应该做到的,就是将源码编译为嵌入式操作系统上的应用。那么 Miyoo 掌机的操作系统是什么呢?这里首先有一段故事。 Miyoo 是个国内小公司基于全志 F1C500S