我的电脑游戏史


话说20年前1987年夏天的某个下午,无意之间在父母单位第一次看到了计算机——CPM2, 硕大坚固,使用8寸软盘,软驱有录像机那么大,对于80后没见过录像机的人,也可以用3台叠起来的笔记本来想象。不过真正吸引我的除了那个绿色的荧光屏之外,还有墙上挂的一副用ASCII字符打印的徐悲鸿的奔马。那年我上小学四年级。

随后我开始痴迷于BASIC语言和玩电脑上仅有的几个小游戏——其中有个游戏叫“吃豆”,在父母的支持下,不久得到了第一台电脑——Laser310。(如果你用过这台电脑,那一定要跟我联系)那时候真是激动万分,连电视机都是新鲜玩意的那个时代,居然可以有台电脑!太神奇了! 而且很小巧,主机本身带有一个键盘,接电视显示。只有BASIC语言,芯片固化,开机即用,不用像现在的windows、Linux启动要1分钟,不知道是进步还是退步。计算机是给人用的,操作系统不重要,实现应用才是目的。在操作系统和语言上投资太多时间都是不明智的,除非你做网管。今天看到python邮件列表中居然有个人说要放弃python,因为实在不习惯弱类型,只会用静态语言c++。后面有很多人真诚的提了很多有益的建议,可是我却无话可说,我实在无语,类型是给机器看的,人脑不会自然的思维,炼成电脑的思维方式,可惜还没有电脑的计算速度,真是可悲。在此啰嗦一下,以提醒后来人:

我们可以简单的把思维方式分为两类:一类是电脑式的思维方式,不管你看到多么花哨的软件和游戏,底层都是01为基础的计算。另一类是人脑的思维方式,自然的,发散的,可以联想并且能够创新。为了让电脑为人类服务,记住这点,所以发明了各种语言,最早是IBM的打孔机上编程语言,直接写01二进制代码,人们发现太痛苦,所以后来又有了更高级的汇编语言,C语言,C++等等,语言变得越来越高级,主要就是为了更快更容易的写程序,其实就是更好的适应人脑的思维。乃至于后来觉得C++都太麻烦,所以有了fortun, basic, java, python, php, ruby等更高级的语言。这样你不仅不用计算01,不用跟寄存器打交道,而且不用理会变量类型。89年的时候我在apple II上写汇编做游戏,要涉及到大量的2进制、16进制计算,90年给我的PC(8088CPU)做一个针式打印机的图形打印驱动也需要很多“位操作”计算。这是远古人做的事情,现代人不用再去做这些非常底层的工作了。那么同样道理,比位操作高级的一些的静态编译语言的类型,什么整型、浮点、字符串...都是为了便于电脑计算而设计的,如果你有志于底层开发,那可以深入一下,为什么存在这些类型的原因也很容易理解,但是大多数情况下你一辈子都不会涉及底层,也不会有机会去微软参与下一代windows系统开发。所以我建议不要太把这些放在心上,更别把脑子弄坏了。弱类型的动态语言虽然效率比静态的要低,但是这点差别非常廉价,很容易就可以用更快的CPU解决。当年有个比求伯君的WPS更早的流行字处理软件CCED,就是用BASIC编写的。同样道理,微软的WORD也是某种高级语言(名字想不起来了,姑且叫word-script吧)编写的。今天flash游戏那么丰富,你还怀疑高级动态语言的能力吗?还是那句话,电脑为人服务,关注算法和应用以及形成的思想方法,才是关键。除此以外,你在语言和操作系统上花的时间很难保值,过不多久你就会发现他们如同我当年掌握的6502,Z80汇编一样过时。

扯远了,后来在我们家附近的少年宫见到了apple II ,其实跟Laser310差不多,都是固化BASIC,不过由于是apple的,所以比较流行(Steven Jobs就是牛),软件也很丰富。那时候我常玩的游戏有打老鹰、营救人质、空手道、击剑、小蜜蜂,狗咬狗(DogFight空战)......,怎么说起20年前的事情都记不清了,游戏倒是记得很清楚,说明用心啊......

等到91年我上初中的时候,少年宫计算机班的同好都买了中华学习机的时候,我爸单位管计算机的朋友建议再等等,不久我们去国际展览馆参加了北方电脑公司的一个计算机展销会,那个公司推出了第一台家用PC——北方BOY。配置如下:绿显12寸,CPU:NEC V20(8088兼容), RAM 256KB, HD:无,软驱:一个,使用5寸软盘,一张软盘的容量是360K。我最爱玩的游戏:光荣回合制策略游戏的水浒(三国志类的鼻祖)、XENON 2都需要2张软盘。那时候我最大的心愿就是可以换成一个3寸软驱或者10M硬盘,可是没银子呀。那台电脑总共3000元,相当于3台中华学习机,但是同期的长城0520要2万多,原装的IBM PC/XT要3万多,那时候联想只做汉卡。所以真是超级实惠的电脑,可就是这样便宜还是把我老爹妈攒了一年的钱都花光了,一想到这个我就特过意不去,尤其是玩游戏都有负罪感,当然还是免不了要玩玩的,其中有个印象很深的叫WAR,DOS下的游戏,即时策略的鼻祖,交战之后还有局部战争放大进行战术控制,可以设置阵型,刀斧手、弓箭手、野蛮人等3个兵种,作战环境丰富,电脑AI可以选择拿破仑,孙子,成吉思汗等历代军事首领,还可以自己设计地图和游戏关卡,颇为有趣。跟现在的魔法门英雄无敌类似,不同的是那个游戏全部实时的而非回合制。那个游戏我玩了3年,直到上了高中——北京八中。老爸怕影响我的学业,再加上不住家里,此后很少接触电脑了,直到大学毕业后工作,中间有10年没编程了。

大概统计一下:
最早玩的电脑游戏:Laser310上的吃豆,跷跷板等不超过5个。
看过游戏最多的:appleII上的,太多了,不过都是在少年宫玩的,多得想不起名字了。
最耐玩的游戏:PC上DOS下的WAR。
最早开发的游戏:Laser310上的打飞碟和乒乓球,那时候也没有教程,全凭自己琢磨了1个月,其实就是个二维碰撞侦测问题。
开发的最大的游戏:一个类似打蜜蜂的小游戏,大概几千行吧,别的不记得,就记得电脑在LIST代码的时候都变得很慢了。
开发中最恐怖的事情:初一的时候用PASCAL做绘图软件,可以画图,可以压缩图片(压缩算法自创),图形缓冲区存盘,后来又作了个什么功能涉及到底层的一些操作,结果把硬件搞出问题,字符全都碎了,关机重新开机也是碎的。当时郁闷之极,只能用图形仿CGA方式进入控制台,好在没过几天又恢复了。(现在想来,估计可能是存储字符的EPROM被改写了)

掌握过的语言:BASIC, PASCAL, 6502汇编,Z80汇编,C
爱好领域:计算机图形应用,说白了就是游戏,偶尔做些图形处理软件也是辅助开发游戏的。学汇编和C也是为了编游戏,BASIC太慢,PASCAL库比较少。
最喜欢的语言:PASCAL,后来演变成Delphi,可惜到windows时代就再没用过borland的产品了。

这些都是历史上的记录,权且整理一下。

-----------------------
陈逸风原创(转载请注明出处)

你可能感兴趣的:(游戏,apple,python,AIX,pascal)