一张工作台几乎摆不下,你敢信?
好吧,能用就行。
江寒将这个硕大的无线网卡,通过一个25PIN的DB-25连接器,连接到了286扩展接口卡的标准并行接口(SPP)上。
然后尝试在电脑端编程,读取并口数据。
测试的结果非常喜人。
江寒在电脑并口中,成功地检测到了数据,这说明无线网卡是可以工作的。
接下来,需要给网卡编写一个驱动程序。
为什么要有驱动程序?
一般的回答是“为了构建应用程序到硬件之间的桥梁”。
很多人都以为硬件不驱动就无法使用,而事实上……
在应用程序中自己写代码,使用指定的硬件,理论上是完全可行的。
说到底,驱动本身也只不过是一种程序。
但在现实中,为了提高代码复用率,增加可移植性,硬件厂商都会给硬件开发独立的驱动。
在DOS中编写驱动程序并不复杂,只是有一些术语,在Windows时代已经看不到了。
比如什么“策略例程”、“中断例程”……
相关的资料网上都有,江寒开发起来也算得心应手。
当然,开发驱动这种底层程序,基本上都要使用汇编语言。
这并不是功能上的问题,虽然汇编能做的事情,C几乎都能做。
但C程序即使再怎么优化,一般来说,也要比纯汇编语言慢20%~30%。
江寒经过一番折腾,终于写好了这个无线网卡的驱动。
之后,就可以在其他程序中,使用这个驱动提供的API接口访问网络了。
江寒又写了一个小程序,用来把从网卡上接收的数据,以文件的形式保存下来。
程序运行后,出现了一个闪烁的光标,表示处于等待数据状态。
随后江寒退出了虚拟空间,然后在现实中的笔记本电脑里,搜索了一下网上邻居。
很快,他就在网上邻居中发现了那台位于虚拟空间中的286!
这意味着那台土制网卡,得到了Windows系统的承认。
但是,别以为接下来就可以顺顺当当地组成局域网了。
Windows系统和Dos联网,可是一件很让人崩溃的事情。
江寒又开发了一个小软件,利用NETBIOS数据报(datagram)机制,通过无线网卡发送不指定目标的数据。
当然,为了使这台电脑能和虚拟空间的286“握手”,他还特意在每个数据包的头部,加上了一些“识别码”。
而286那边,就可以通过识别码,在接收到的无数无线信号中,过滤出有用的数据,进而保存成文件。
通过这样的操作,江寒终于在两台电脑之间,实现了单向的文件传输。
如果想要实现双向传输的话,还需要扩充一下程序的功能,将上述过程反过来……
大约12点多,江寒终于搞定了准备工作,开始正式传输文件。
而他第一个要传输的,却是一本英文字典。
没错,看原版教材、参考书或者英文资料的时候,经常会遇到一些专有名词,又或者什么特别生僻的词。
这种时候,一般都要用手机上网查,要么就是捧着一本厚厚的大字典,显得特别没有逼格。
而把字典“安装”到大脑里之后,江寒就可以闭一下眼睛,就能解决这种小问题了。
很快,江寒又想到了一个新的应用。
那就是把要学习的书籍,扫描一下,弄成文档,传输到虚拟空间里去。
这样就等于把知识安装到了大脑中,以后就可以在虚拟空间里,躺着学习了……
当然,在这台落后的286上,看图是个大问题,最好是纯文字的格式。
这样的话,又要求有个好使的OCR软件才行。
而现在市场上的OCR软件,说真的,性能实在不怎么样。
识别正确率能有个90%上下,都算得上行业翘楚了。
英汉字典很快传完,江寒再次进入虚拟空间。
然后用C语言编写了一段代码,对词典的数据进行了处理。
又编写了一个软件,以提供基本的查字典功能。
软件编写完了,江寒试用了一下,结果不出意外的,屏幕上出现了一堆乱码……