“有东西了,”提姆说,“来了,是全景图。”
随着图像渐渐传送过来,大家都松了口气,窃窃私语取代了原先的沉默。受限于这个老古董探测器的带宽,图像自左向右展开的速度比蜗牛还慢。
“火星地表……”文卡特看着像素线慢慢填满,“更多地表……”
“栖息舱边缘!”布鲁斯指着屏幕叫道。
“栖息舱,”文卡特笑了,“越来越大……越来越大……那是一条消息吗?那是一条消息!”
随着图像慢慢呈现,一张手写的便条出现了,由一根金属细棒悬在摄像机前方。
“我们得到了马克的消息!”文卡特向整个房间宣布。
鼓掌声淹没了整个房间,然后马上沉寂下来。“他说了什么?”有人问道。
文卡特凑近屏幕,“他说……‘我会在这里提问题——你们收到了吗?’”
“然后呢……”布鲁斯问。
“他就说了这么多。”文卡特耸耸肩。
“还有一条讯息。”提姆说,他指着屏幕上新出现的一部分图像。
文卡特又弯下腰,“这个上面写着‘指这里表示是’。”
他抱紧双臂,“很好,我们和马克建立通讯了。提姆,将摄像机指向‘是’,然后每隔十分钟取一次全景,直到他提下一个问题。”
日志:sol97(2)
“是!”他们说,“是!”
自从毕业舞会以来,我还从未因为一个“是”这么兴奋过!
好,冷静一下。
我的纸不是很够。这些卡片本是用来给标本做标签的。我有大约五十张卡片,可以正反面都用上。如果还是不够,我可以画掉老问题,循环利用。
我用的沙皮尔记号笔要比卡片耐用得多,墨水不是问题。但我必须在栖息舱里写卡片。不知道它们用了什么迷幻配方来制作墨水,但我敢肯定,这东西在火星大气下会汽化。
我用原天线阵列的一根杆子来撑住卡片,这还真够讽刺的。
每半小时回答一次是或否,这样下去可不行。摄像机可以360°旋转,而我有不少天线。现在得做一个字母表。但我不能从a做到z,26个字母再加上我的问题,一共就是27张卡片绕着登陆舱,每张卡片只能得到13°左右的视角。就算jpl将摄像机的方位指得非常精准,我还是有很大可能搞不清他们所指的字母。
结论就是:我必须使用ascii,电脑就是用这个来管理字母的。每个字母都有一个0到255之间的代码来对应。0到255之间的数字可以用十六进制值来表达。通过十六进制值,他们可以给我发送任何字母,包括数字和标点符号,等等。
那么,我怎么才能知道那些值跟字母的对应关系呢?约翰森的笔记本电脑是个信息宝库。我知道她一定在里面什么地方保存了ascii表。每个电脑宅都会这么干。
所以我要做的就是制作0到9,以及a到f的卡片。这样一来,环绕摄像机的卡片一共是16张,外加问题卡。17张卡片,每张有21°的空间,这就容易多了。
开始工作!
用ascii拼法。0到f,以21°递增。当地时间11点整看摄像机。信息传送完毕后,回到此位置。等20分钟,然后照相(我需要时间来写回复和挂卡片)。每到整点重复此过程。
s…t…a…t…u…s(状态)
身体状态良好。栖息舱全部组件功能完好。按定量3/4进食。成功在栖息舱耕种土壤种植作物。注:现状绝非阿瑞斯3船员失误所致,运气差而已。
h…o…w…a…l…i…v…e(怎么活下来的)
受到折断天线穿刺伤。降压导致昏迷。面朝下落地,血液封住泄漏口。船员离开后醒来。穿刺损毁了生化监测仪。船员完全有理由相信我死了,不是他们的错。
c…r…o…p…s…?(作物?)
说来话长。植物很茂盛。现有126平米农田种植土豆,可以扩展食物供给,但仍不足以撑到阿瑞斯4降落。改装漫游车以适应长途旅行,计划去阿瑞斯4站点。
w…e…s…a…w…—…s…a…t…l…i…t…e(我们见——卫星)
政府在通过卫星观察我?我需要锡箔帽子!同时还需要更快的交流方法。说加拼,这样得耗掉他妈一整天。有主意吗?
b…r…i…n…g…s…j…r…n…r…o…u…t(把旅居者搬出来)
旅居者号漫游车搬出来了,放置在登陆舱以北一米处。如果你们能和它联系,我可以在它的轮子上写十六进制值,这样你们每次就能发过来六个字元的信息了。
s…j…r…n…r…n…o…t…r…s…p…n…d(旅居者无响应)
靠。还有别的办法吗?需要更快的通讯方式。
w…o…r…k…i…n…g…o…n…i…t(正在想办法)
地球快落山了。当地时间明早8点继续。告诉我爸妈我很好,向船员们致意,告诉刘易斯指挥官迪斯科是屎。
***
文卡特使劲眨了眨蒙眬的眼睛,把桌子上的文件整理好。他在jpl的临时办公桌其实就是休息室一角的一张折叠桌。总有人进进出出来拿零食吃,不过好处也显而易见,那就是离咖啡机很近。
“打扰。”走过来一个男人。
“是的,健怡可乐没啦,”文卡特头也不抬地说,“我也不知道后勤部门啥时来填满这台冰箱。”
“我是来找你的,卡普博士。”
“啊?”文卡特抬起头。他摇了摇头。“对不起,我整宿没睡。”他吞了一大口咖啡,“你是哪位?”
“杰克·特里夫,”眼前这位男子体型很瘦,脸色苍白,“我在软件工程部门工作。”
“有什么可以效劳的吗?”
“我们想出一个通讯方案。”
“说吧。”
“我们研究了老探路者号的软件系统,找来一模一样的电脑,以供测试。曾有个严重的错误差点把这个任务废掉,当时发现那个错误的就是这种电脑。这个故事真的很有意思,最后发现其实是旅居者号的进程管理中出现了一个优先级转置,后来——”
“别偏题,杰克。”文卡特打断他。
“对。好吧,是这样,探路者号有一套操作系统更新流程,所以,它的软件,我们想怎么改都成。”
“这对我们有什么用?”
“探路者号有两个通讯系统。一个用来跟我们对话,另一个负责联络旅居者号。我们可以将第二个系统的无线电频率改为阿瑞斯3漫游车的频率,还可以将其伪装成来自栖息舱的信标。”
“你能让探路者号和马克的漫游车直接通讯?”
“这是唯一的选择。栖息舱的无线电彻底报废了,但是漫游车上还有专门跟栖息舱,以及其他漫游车通讯的设备。问题在于,为了整合一个新的通讯系统,任何一方都要运行相应的软件。我们可以远程升级探路者号,但肯定对付不了漫游车。”
“所以,”文卡特说,“你们能让探路者号向漫游车发出讯息,但是不能让漫游车接收和应答。”
“没错。理想情况是,我们让这里的信息以文本形式直接显示在漫游车的屏幕上,沃特尼也可以通过文本直接跟我们通讯。这需要对漫游车的软件进行调整。”
文卡特叹了口气。“要是我们没法更新漫游车的软件,你来找我还有什么意义?”
杰克咧嘴一笑,继续说:“我们的确不能打补丁,但是沃特尼可以!我们可以将数据传过去,然后由他在漫游车里手动输入。”
“你说的数据,量有多大?”
“目前我们有人正在给漫游车软件写补丁程序,整个文件最小也有20兆。用那套‘说+拼’程序,我们平均每四秒才能给沃特尼传输一个字节,至少要整整三年不间断的通讯才能把全部补丁文件传过去。很显然,这肯定不行。”
“但是你来找我,说明已经有了解决方案,对吗?”文卡特盘问,强压住想要大吼的欲望。
“那当然!”杰克满面春风,“说到数据管理,软件工程师们全都是狗娘养的人精。”
“给我说说。”文卡特说。
“下面是重点,”杰克卖关子,“漫游车目前的做法是将信号解析为字节,然后识别栖息舱发过来的信息中包含的特殊序列。这样的话,其他无线电波就不会对回家信号产生干扰。如果字节序列不匹配,漫游车就会无视。”
“好吧,所以呢?”
“这就说明,在代码内部,有一段程序是用来接收解析后的字节的。我们可以在其中插入很短一段代码,大约二十条指令,就可以在检查合法性之前,抢先将解析后的字节写进日志。”
“这听起来能行……”文卡特说。
“绝对行!”杰克兴奋地说,“首先,我们更新探路者号软件,这样它就可以跟漫游车通话了。然后,我们告诉沃特尼怎么黑掉漫游车的软件,加进去这20条指令。接着,我们让探路者把新软件传送给漫游车。漫游车可以将相关字节存储在文件里。最后,沃特尼再亲自将这个文件以可执行的方式运行。这样,漫游车就算给自己打上补丁啦!”
文卡特的眉头皱了起来,他那个极度渴求睡眠的大脑显然在短时间内接收了太多信息,有点吃不消。
“呃,”杰克说,“你不是应该手舞足蹈吗?”
“所以,我们要做的就是给沃特尼发去这20条指令?”文卡特问。
“没错,再告诉他怎么编辑那些文件,还有,在文件的什么位置插入这些指令。”
“这样就行了?”
“这样就行了!”
文卡特沉默了一会儿。“杰克,我要给你们全组每个人买一套签名版的《星际迷航》大事记。”
“我更想要《星球大战》的。”他转身准备离开,“当然,只要原版三部曲。”
“当然。”文卡特道。
杰克前脚刚走,一个女人又来到文卡特桌前。
“有事?”文卡特说。
“我一罐健怡可乐也找不到,是不是没了?”
“是的,”文卡特说,“我也不知道后勤部门啥时来填满这台冰箱。”
“谢啦。”她说。
他正准备继续工作,手机响了。他对着天花板大声地抱怨了一声,抓起手机。
“你好?”他尽量保持语气轻松。
“我需要一张沃特尼的照片。”
“嗨,安妮,很高兴跟你说话。休斯敦那边情况怎么样?”
“别废话了,文卡特。我需要一张照片。”
“不是你想的那么简单。”文卡特解释。
“你他妈正在用一台摄像机跟他说话,照张相有什么难的?”
“我们拼出讯息,20分钟之后才能照相,这时沃特尼早就回栖息舱了。”
“那你就让他下次在你们拍照时站在旁边。”安妮坚持。
“我们每小时只能发出一条讯息,而且只有当阿西达里亚平原面对地球时才行。”文卡特说,“我们绝不会为了让他摆个姿势站在那儿就浪费一条讯息。另外,他肯定穿着eva太空服,你连他的脸都看不见。”
“我得有点东西,文卡特。”安妮说,“你们恢复联络已经整整24小时了,媒体们都已经疯了。他们要给报道配图。这张图会在全世界的每一个新闻版块上出现。”