![]()
2006年发售的Wii全球卖出1.01亿台,2013年一个大学生在宿舍盯着这台机器,脑子里冒出一个荒唐念头——让苹果的操作系统在上面跑起来。没人当真,包括他自己。但5年后,一个陌生人的评论把这件事从"想过"变成了"必须做到"。
开发者Bryan Keller把这个项目称为"因为有人说不可能"。
2018年,Reddit用户u/CussdomTidder在相关讨论区丢下一句:"这事发生的概率是百分之零。"Keller把截图存了下来。不是生气,是找到了燃料。"感觉被这位匿名唱反调的人鼓励了",他在项目文档里写道。
PowerPC芯片:被遗忘的家族纽带
Wii用的是IBM PowerPC 750CL处理器,苹果在2006年转向英特尔之前,Mac全系都是PowerPC架构。这是Keller敢下手的底层逻辑。"考虑到这层血缘关系,我有信心CPU不会成为拦路虎",他写道。
但血缘只是入场券。Wii的硬件配置堪称刻薄:24MB主内存加64MB显存,总内存不到当时Mac Mini的十分之一。Mac OS X 10.0 Cheetah发布于2001年,官方最低要求128MB内存——Wii连这个门槛的一半都够不着。
Keller的解法是分阶段榨取。他先写了一个定制引导加载程序(boot loader),让Wii能识别Mac内核格式。然后对内核动手术:砍掉图形加速组件,重写内存管理模块,把系统占用压缩到24MB以内。USB驱动是全新的,因为Wii的USB控制器没有公开文档,他靠逆向工程摸清了寄存器映射。
鼠标和键盘最终能用了。不是通过蓝牙——Wii的蓝牙栈被任天堂锁死——而是走USB端口。Keller在GitHub放出的演示视频里,光标在800×600分辨率的桌面上缓慢移动,像深海潜水员在调整减压阀。
Windows NT先跑通,成了转折点
项目真正提速是在2023年。另一个黑客团队把Windows NT 4.0移植到了Wii上,Keller看到了完整路径。"即使我缺乏底层开发经验导致失败,尝试这个项目仍然是学习新东西的机会",他在博客写道。
这句话的潜台词是:他之前卡住了。2013年到2018年,Keller断断续续试过几次,每次都被内存墙弹回来。Windows NT的移植证明了一件事——Wii的硬件潜力被低估了,问题出在软件适配的决心而非能力边界。
Keller重新捡起项目时换了策略。不再追求功能完整,而是先让系统"能呼吸":内核启动、驱动加载、Shell出现。每个里程碑都配一次Git提交,提交信息里偶尔出现那个Reddit用户的ID——不是嘲讽,是记账。
航班时间也被征用。Keller在文档里提到,长途飞行是集中攻关的绝佳场景:"没有网络,没有干扰,只有笔记本电脑和Wii开发板。"邻座乘客大概以为他在玩某种复古游戏,实际上他在调试中断处理程序。
"概率为零"的数学反例
最终成果是Mac OS X 10.0 Cheetah在Wii上启动到桌面,文件管理器、终端、文本编辑器均可运行。不要期待流畅——窗口拖动有延迟,菜单展开需要等待,但这恰恰是Keller想要证明的东西。
「最后,我学到和完成的远超预期」,他在项目总结里写道。「更重要的是,我被提醒:那些看起来刚好够不着的项目,正是值得去追的。」
那个Reddit账号u/CussdomTidder至今活跃,主要讨论复古游戏硬件。Keller没有@对方,但项目README的第一行就引用了那条评论。这是开源社区特有的回应方式:不争吵,用代码说话。
Wii的破解史本身就是一部操作系统迁徙史。Windows 95、Windows NT 4.0、多个Linux发行版、NetBSD都曾落户这台游戏机。Keller的移植不是技术突破的孤例,而是这条链条上最新的一环——但可能是情感浓度最高的一环。
技术细节散落在Keller的博客长文里,从引导加载程序的内存布局到内核补丁的二进制差异。GitHub仓库提供了完整源码和编译指南,警告标签写着"仅供教育目的"——任天堂的律师函虽然罕见,但并非没有先例。
这台改装Wii现在躺在Keller的某个抽屉里。USB口插着苹果Pro Keyboard,视频输出接在液晶电视上,画面比例4:3,像素颗粒肉眼可见。每次开机都是一次小型宣言:关于被低估的硬件,关于被否定的可能性,关于一个大学生如何把陌生人的轻率判断变成五年后的交付物。
下一个说"概率为零"的人,会逼出什么?
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.