快科技2月21日消息,近日,一位程序员成功地在任天堂NES红白机上模拟出了一台早期的x86 PC,甚至能够运行精简版的Linux。
这个项目被称为NES86,由程序员“decrazyo”开发,展示了在极其有限的硬件条件下实现复杂模拟的可能性。
NES86的核心是模拟出一个Intel 8086处理器和基本的PC硬件环境,其精度足以启动并运行一个简化版的Linux内核。
NES的硬件资源极为有限,比如初代IBM PC配备了4.77MHz的x86 CPU,而NES的处理器仅为1.79MHz,RAM和可寻址内存空间远低于IBM 5150。
为了克服这一差距,decrazyo依靠仿真技术,通过软件手段在NES上重现早期PC的功能,并且采用了内存映射技术。
此外由于NES的硬件限制,他选择了Embeddable Linux Kernel Subset(ELKS),这是一个为16位Intel处理器设计的类似Linux的操作系统,支持8086等早期处理器。
根据其GitHub项目页面,即使在现代的PC NES模拟器上,NES86也很难运行,目前仅有少数模拟器如FCEUX、Mesen2、Rustico等能够兼容。
不过最令人意想不到的是,decrazyo通过在GameCube模拟器上运行《动物之森》,通过破解游戏内置的NES模拟器,成功运行了PC版《俄罗斯方块》,不过速度确实慢了点,只能达到每帧30秒。