天台屋的灯光又亮了一整夜。
林凡口述,徐志文编码。与其说是编码,不如说是在用最底层的机器语,艰难地“雕刻”着程序。没有高级语,没有编译器,每一个指令,每一个内存地址,都需要手动计算、输入、调试。
林凡的大脑就像一台超频运行的生物计算机,将记忆中的游戏逻辑和算法,拆解成这个时代硬件能够理解的最原始命令。
“这里,循环减一,判断零标志位跳转……”“显存地址偏移量计算错了,重新算!”“碰撞检测用异或逻辑,节省时钟周期!”“这里插入空操作指令,做延时等待!”
徐志文的手指在自制的简易键盘(其实就是一排拨动开关)上飞快地拨动,将一串串十六进制代码“烧录”进存储器里。他额头冒汗,眼神却越来越亮。林凡天马行空却又精准无比的设计思路,不断冲击着他的认知边界。他从未想过,编程可以这样进行,游戏可以这样设计!
东方既白。
当第一缕晨光透过气窗照进天台屋时,徐志文输完了最后一段代码。他几乎虚脱地靠在墙上,手指因为长时间保持一个姿势而微微痉挛。
林凡深吸一口气,再次合上了电源闸刀。
“嗡……”
“星辰一号”再次发出蜂鸣。
这一次,crt屏幕在经过短暂的电平稳定后,不再是一个乱跳的光点。
屏幕上方,出现了由粗糙的白色像素块组成的、歪歪扭扭的几架“敌机”,缓慢地左右移动。
屏幕下方,一个稍大些的白色长方块(代表玩家的“飞机”)静静地停着。
屏幕一侧,还有一个更简单的数字“00”,代表分数。
虽然简陋得令人发指,像素颗粒感极强,动画效果更是谈不上,但这确确实实是一个游戏的雏形!
“成了……真的成了……”徐志文喃喃自语,激动得嘴唇发抖。这是他亲手参与创造的奇迹!
林凡拿起那个临时组装的摇杆,轻轻向右一拨。
屏幕下方的白色长方块,应声向右平滑移动!
“摇杆控制正常!”徐志文欢呼。
林凡又按下了那个代表发射子弹的红色按钮。
“咻——”一声极其简单、由基础音频电路生成的电子音效响起。
一道白色的竖线(代表子弹)从玩家飞机的位置向上射出!
子弹击中最下方的一架“敌机”,那架敌机闪烁了一下,消失了!
屏幕一侧的分数数字,从“00”跳变成了“01”!
虽然没有任何华丽的baozha效果,但这一刻,在这间破败的天台屋里,无疑响起了一声惊雷!
“打中了!打中了!”徐志文像个孩子一样跳了起来,眼镜都快甩掉了。
林凡也长长地、长长地舒了一口气,脸上露出了极度疲惫却又无比满足的笑容。成功了!基于intel8008的史上第一台(?)商业电子游戏机原型,在他手下诞生了!虽然它只能运行这个最简单的“打飞机”游戏,但这无疑是通往未来电子游戏帝国的第一块坚实基石!
“太好了!林总!我们成功了!”徐志文激动地抓住林凡的胳膊。