江寒先在硬盘上重建了主引导记录,然后手工写了个分区表。
由于硬盘只有20Mb,DOS3.31支持起来毫无压力,所以只分一个区就可以了。
如果硬盘再大一些,往往就需要多分几个区才行,那样一来,分区表就变得复杂多了……
最后,江寒又用同样的办法,将DOS3.31的三个主要文件和写进了硬盘中。
这其实就是个体力活。
出虚拟空间,在笔记本上查看文件,把数据背下来;回到虚拟空间,把数据输入到硬盘中。
出去、回来、再出去、再回来……如此不停地反复。
他没有看反汇编代码,而是以16进制的形式,直接把二进制数据背了下来。
这当然不容易。
以江寒经过改造的记忆力,每次也只能记住大约一个扇区(512个字节)的内容。
但他就是使用这种笨办法,硬生生地将DOS3.31搬运到了虚拟空间的286电脑中。
如果想省事一点的话,其实也可以去震惊商城里,把这个版本的DOS代码买下来,然后照着抄进去。
但江寒不想浪费购买点,就采用了比较省钱的笨办法。
好在DOS3.31的系统文件都很小,只有十几~几十KB,大约折腾了五十几次,也就差不多抄完了。
接下来,就是见证奇迹的时刻。
江寒检查了几遍,确认没有任何错误后,就重新启动了电脑。
这一次,在系统自检完成后,终于显示出一行激动人心的“StarttingMS-DOS……”
之后,等了大约3秒钟,屏幕上就滚动出一些版权信息,然后出现了熟悉的“C:\>”提示符。
江寒用dir命令查询了一下,却发现……
屏幕上的列表里,只能看到另外两个文件却不见踪影。
稍微一想,他就会心地笑了起来。
好吧,用习惯了WINDOWS之后,古老的DOS反而有点不太熟悉了。
在DOS系统中,为了保护重要的系统文件和都是具有“系统”、“隐藏”和“只读”属性的。
想要看到这两个文件,必须在Dir命令的后面,加上/ah参数才行……
江寒输入然后回车。
这次就看到了全部的3个文件。
随后又玩了一会儿“MD”、“CD”、TYPE……
熟悉了一些常见的内部命令后,江寒就开始继续工作。
现在这台电脑里,只安装了最简易的操作系统,只拥有最基本的功能。
如果想要做更多的事情,那就必须弄些工具软件出来。
江寒琢磨了一下,决定写个这是最容易实现的系统调试工具了,可以用来编写一些简单的小程序。
江寒又花了半个小时,用老办法将这个程序的可执行文件,从外面的笔记本中,抄到了286的硬盘里。
最后,当他输入了DEBUG,然后回车时,熟悉的“_”提示符再次出现了。
江寒小的时候,在一台接近报废的386上,DOS玩得很溜。
所以这时根本不用再去找太多资料,很快就回忆起了DEBUG的用法。
Debug的使用相当麻烦,只支持一些简单的指令:P、T、A、G、Q、W……
这些字母分别代表一种基本功能。
江寒缅怀了一下久远的“过去”后,就使用“A”指令,进入了汇编模式,然后开始写代码。
他首先要写的,是一个C编译器。
这个工作全靠自己来弄,怕是一个星期都弄不完。
但没关系,网上各种C编译器的源代码,可以说层出不穷,随便找一个过来,改改就能用。
汇编语言写代码,效率当然高不到哪里去,尤其还是DEBUG这么原始的编辑方式。
但怎么说也能比ROMBASIC强一点。
就这样,江寒花了足足三个小时,终于抄出了一个命令行版本的C编译器。
接下来,他又花了五个多小时,用Debug写了一个文本编辑小工具。
这样一来,就可以愉快地编写C代码了。
江寒用C语言开发的第一个软件,就是仿造TUBORC2.0的集成开发环境(IDE),开发一个属于自己的C语言编辑器。
这也是非常有必要的。
做软件开发的时候,如果没有IDE,根本没有任何效率可言。
开发用户界面这种事,并不算特别困难,对技术的要求不算特别高,但工程量非常巨大,完全是个体力活儿。
江寒足足花费了十几个小时,才初步搞定了这款C语言IDE。
这还得说他技术够扎实、脑子够厉害、手速也够快。