苏晓月的手指上缠着创可贴,那是长时间敲击键盘磨出的水泡破了。
张汉玉不懂汇编,但他懂逻辑。他就坐在苏晓月旁边,盯着屏幕上的流程图,随时纠正逻辑错误。
“这里不行。入栈出栈太频繁,浪费时钟周期。换成寄存器直接寻址。”
“这个循环没必要。展开写,用空间换时间。”
“这里的判断逻辑反了……”
三天。
整整三天三夜。
除了上厕所和扒两口饭,所有人都没有离开过那张桌子。空气浑浊得让人窒息,每个人身上都馊了。
第三天凌晨四点。
苏晓月敲下最后一个回车键。
没有报错。
编译通过。
生成的内核文件大小:380KB。
比之前足足小了将近一半。
“刷机。”
苏晓月的声音哑得像砂纸磨过桌面。
李建国早就准备好了,颤抖着手把那块自制的开发板连上烧录器。进度条缓慢地爬升,每一格都像是在爬过众人的心尖。
滴。
烧录完成。
张汉玉深吸一口气,按下了那个微动开关。
屏幕黑了一下。
一秒。两秒。三秒。
就在孙强以为又要失败的时候,屏幕亮了。
没有乱码,没有报错。
漆黑的背景中央,一个由像素点组成的红色火焰图案,缓缓浮现。
那是星火科技的Logo。
虽然边缘还有些锯齿,虽然色彩只有简单的红黄两色,但在这一刻,它比任何高清大片都要震撼。
紧接着,火焰散去,一个蓝色的界面跳了出来。
左上角是信号格,右上角是电池图标。中间整整齐齐排列着四个图标:电话、短信、联系人、浏览器。
“卧槽……”
孙强捂住嘴,眼泪毫无预兆地流了下来。
真的跑起来了。
在512KB的内存里,跑出了图形界面。
这是把大象塞进冰箱,而且大象还在冰箱里跳起了踢踏舞。
“别急着哭。”张汉玉指了指桌上那根连着电脑串口的数据线,“还没联网。”
这是最后一道鬼门关。
如果没有网络,这也就是个高级点的电子宠物。
苏晓月把数据线插好。另一头的电脑上运行着一个模拟GSM网络的服务器程序。
她在开发板那小小的按键上操作着。光标移动,选中了“浏览器”。
点击。
屏幕中央出现了一个沙漏图标,开始旋转。
“正在连接……”
地下室里安静得能听到排气扇扇叶转动的声音。
所有人都屏住了呼吸。
这套自制的TCP/IP协议栈,能不能扛住真实的数据交换?那个疯狂的压缩算法,会不会在解压数据包的时候崩溃?
屏幕闪了一下。
一行黑色的文字出现在白色的背景上。
`Hello, World!`
“通了!”赵立跳起来,脑袋撞到了低矮的天花板,但他根本顾不上疼,抱着孙强又蹦又跳。
“还没完。”
张汉玉的声音依然冷静,但捏着可乐瓶的手指已经把塑料瓶捏变了形。
“文字只是第一步。宋志敏要看的是图。”
他指了指电脑屏幕:“发那张图过去。”
赵立赶紧在电脑端操作,选择了一张16色的位图。
那是张汉玉特意找人画的——一只在悬崖边展翅的雄鹰。
发送。
开发板的屏幕上,沙漏转得更快了。
数据流通过串口,经过压缩算法,挤进那可怜的内存,再被CPU解压,最后渲染到屏幕上。
这一过程在后世可能只需要几毫秒,但在现在,却是漫长的等待。