今天看到Win10天地报道,说国外有人搞了一个Windows 95应用模拟器,下下来玩了一下,以为连里面系统都是js写的,顿时感觉挺厉害,后来感觉太逼真了。。。不像是js实现的,就看了一下源码,发现本质上是一个js写的类似qemu的玩意,跑了一个windows 95镜像。于是,我改成了跑Windows 3.2。
下面分享一下我的修改过程。
准备工具:
Windows 10的Linux子系统。(用来装npm,用node.js for windows理论可行,但我没有试过)
压缩软件,推荐是7z。
步骤:
准备一个raw(img)格式的系统镜像,改名为windows95.img
镜像,你可以像我一样自己做一个镜像,也可以找现成的,不过建议选择对系统要求比较低的系统镜像,以降低出错的概率。
我们打开Linux子系统,输入sudo apt install npm,如果你是fedora opensuse之类的请输入别的包管理命令。
然后输入sudo npm -g install asar,安装asar
如果你没运行过95模拟器,请先运行一次,以便主程序解压压缩包。
在Linux子系统中定位到95模拟器的安装文件夹(右键点击win95快捷方式,第二个选项卡里点击查找目标),再定位到app-1.1.0\resources,输入asar extract app.asar dest
我们把镜像放到解压之后的src\renderer\images中,覆盖原有文件,原来里面的那个state.bin需要删除,不然容易出错。
删除原来的app.asar,然后在终端中输入asar pack dest app.asar。
别急!你还需要下面的步骤。
由于已经运行过模拟器了,所以它会在C:\Users\用户名\AppData\Roaming中生成一个叫windows95的文件夹的缓存,所以我们需要删掉这个文件夹。
好了,步骤结束,运行模拟器,但请点击Discard State & Boot From Scratch,而不是Starting Windows 95(这一点很重要!)。因为95的state.bin已经删除,再运行第一个就有可能出错。