Читаем без скачивания Старплекс. Конец эры (сборник) - Роберт Сойер
Шрифт:
Интервал:
Закладка:
Я посмотрел на консоль.
— Не напрямую. Но я могу подключить к радиостанции палмтоп. Только надо найти подходящий кабель.
Кликс взял в руки электронную камеру.
— Вот этот подойдёт? — спросил он, отцепляя от неё USB-кабель, которым я подключал её к палмтопу.
— Ну, это нужный тип кабеля, но неправильной полярности. Для радиостанции нужен кабель типа «мама», а у этого «папа» на обоих концах.
— По-моему я где-то видел адаптер, когда подключал спектроскопы, — сказал Кликс. Он отошёл к мини-лаборатории и начал её обшаривать. — Вот он. — Кликс отдал мне найденное приспособление, и мы подключили палмтоп к радиостанции. — Теперь ты сможешь послать сигнал?
— Да, но только на одной частоте за раз, и на то, чтобы послать даже коротенький сигнал на всех возможных частотах, может уйти весь день. — Я обескураженно покачал головой. А ведь это казалось такой хорошей идеей. — Кроме того, мы ведь даже не знаем, какой длительности должны быть бинарные сигналы.
— Одна единица измерения времени. — Кликс помолчал, обдумывая то, что только что сказал. — Из чего следует, что как только мы подберём правильную частоту, то сразу же получим и правильную длительность импульсов. — Он снова замолчал, прислушиваясь к внутреннему голосу. — И не беспокойся о модуляции несущей частоты. Просто прерывай передачу там, где нули.
— Хорошо. — Ах, если бы только нос перестал болеть. — Я напишу программку, которая перепробует разные значения длительности их единицы времени. — Кабель был короткий, и до моей кушетки его не хватало, так что мне пришлось программировать стоя, положив палмтоп на отделанный пластиком край радиоконсоли. — С какого значения, по-твоему, лучше начать?
Кликс прикрыл глаза.
— Попробуй… попробуй четыре или пять секунд. Я не знаю, но чувствую, что это близко.
Радиостанция понимала только команды CURB, стандартного командного языка телекоммуникационных процессоров. Я не писал на нём ничего уже чёрт знает сколько лет. Я надеялся, что того, что я помню, мне хватит; у нас определённо нет времени рыться в хелпах. Мои пальцы заплясали над палмтопом. Я запустил калькулятор, посчитал, сколько будет три в тринадцатой степени — как сказал Кликс, количество циклов в марсианскую единицу измерения времени. Потом напечатал: Set Frequency = 1594323. Frequency = Frequency + …
Очередной трицератопс врезался в корпус, и в этот раз он треснул. Я услышал шум вытекающей из водяного бака воды у нас под ногами. Держу пари, они такого не ожидали.
Я решил начать с немного меньшего значения, чем догадка Кликса. Set Time‑unit = 3.000 s. Goto Send…
Корабль снова содрогнулся под ударом трицератопса.
— Брэнди, ты не мог бы поторопиться?
— Хочешь попробовать сам?
— Прости, — он отступил.
Рога уже проткнули корпус во многих местах и существенного его ослабили. Через бронестекло я видел, как трицератопс вразвалку удаляется от корабля.
Я напечатал последнюю строчку программы и запустил компиляцию. Одно, два, три сообщения об ошибке вспыхнули на экране, указав номер ошибочной строки. «Ожидается логическое выражение». «Несовпадение типа». «Зарезервированное слово». Чёрт!
— В чём дело? — спросил Кликс.
— Ошибки компиляции. Где-то напортачил.
— Ты хотел…
— Заткнись и дай мне их исправить. Пожалуйста. — Я переключился в режим редактирования и перешёл к первой ошибке. Ага, первая проблемка совсем простая — опечатка, «adn» вместо «and»; вот что значит отключать автокоррекцию. Я исправил ошибку.
Хр-р-р-рясь!
Меня качнуло. Пахицефалозавр ударил головой в многократно пробитый рогами участок корпуса. Теперь стало ясно, что делал хет в том головаче, которого мы препарировали — оценивал перспективы использования его в качестве тарана. Повезло им, применение тарану нашлось почти сразу.
— Он почти пробил, — крикнул Кликс.
Я щелкнул клавишей, и курсор перескочил к следующей ошибке. «Несовпадение типа». Что бы это значило в данном контексте? А, вижу. Я пытался выполнить математическую операцию над текстовой переменной. Вот дебил.
Полифонический сигнал от паразауролофа-тромбониста разорвал воздух, предположительно давая команду головачу нанести второй удар.
Курсор прыгнул с третьей ошибке. «Зарезервированное слово»? Это означало, что выбранное мной название переменной — FREQUENCY[53] — было запрещено, поскольку использовалось в языке с какими-то другими целями. Назовём её SAVE_ZAD, это уж точно ни с чем не совпадёт. Запуская компиляцию снова, я так сильно ударил по клавише, что корпус палмтопа едва не треснул.
Я не дышал, пока не увидел вспыхнувшее на экране сообщение: «Компиляция завершена успешно. Ошибок не обнаружено».
— Есть! — воскликнул я.
— Здорово! — закричал Кликс. — Запускай!
Я выбрал имя программы в списке и занёс палец над клавишей Enter.
— Нажми кнопку! — зарычал Кликс.
— Я…
— В чём дело?
— Ты знаешь, что сейчас произойдёт? — сказал я. — Потому что я не уверен, что могу…
— Если не нажмёшь ты, я сделаю это за тебя.
Я посмотрел ему прямо в глаза.
— Нет, — сказал я. — Отказ принимать решение — это само по себе решение. — Я вдавил кнопку, и радиостанция начала передачу.
Хр-р-р-рясь! Череп пахицефалозавра с синими и жёлтыми отметинами на макушке вбил ослабленную секцию корпуса внутрь. Круглый кусок металла метра полтора в диаметре свалился на пол с оглушающим грохотом. Прежде чем мы успели среагировать, костеголовый исчез, и в дыру просунулась голова трицератопса. Кликс вскинул ружьё. У этого динозавра был лишь один надглазный рог; второй, должно быть, обломался во время атак на корабль. Одним слитным движением Кликс упал на пол и снизу вверх выстрелил в мягкие ткани нижней части трицератопсова горла. Удачный выстрел: похоже, пуля перебила-таки спинной мозг.
Через рваную дыру в корпусе мы могли видеть двух других трицератопсов, пытающихся отодвинуть труп в сторону. Кликс стрелял и стрелял, но они не повторяли ошибок своего собрата — головы пригибали к земле, защищаясь костяными воротниками. В короткое время путь был расчищен, и в поле зрения появился отряд троодонов. Они дождались, пока Кликс начнёт перезаряжать ружьё, и бросились в атаку — чешуйчатый вал зубов и когтей, неостановимо катящийся на нас.
Кликс попытался подняться на ноги, но вместо этого шлёпнулся обратно на пол. Мой желудок, казалось, провалился куда-то в район ботинок. Ближайший из троодонов упал на брюхо, двое других повисли на зазубренных краях дыры в корпусе «Стернбергера», остальные неуклюже отступили на грязевую равнину. Чувствуя себя так, словно весил миллион кило, я побежал, как в замедленном кино, к дыре и выглянул наружу, перегнувшись через тела троодонов. Наверху в небе величественный кецалькоатль, закладывающий широкий вираж, смялся, как бумажная фигурка и камнем рухнул на землю. Рядом двенадцатиметровая шея зауропода с громовым грохотом грянулась оземь. Тираннозавры некоторое время держались, а потом один за другим попадали на колени — кости ног подломились под увеличившимся весом. Земля вибрировала и сотрясалась под моими ногами по мере того, как сила тяжести возвращалась к полновесному g. Внезапно грязевая равнина пошла волнами, словно Такомский мост; в воздух поднялись тучи пыли.
(adsbygoogle = window.adsbygoogle || []).push({});