– Сможем ли мы ее починить? Пилот покачал головой:
– Я даже не уверен, что удастся обнаружить причину.
– Хорошо, а как она запоминает параметры? – спросил главный инженер.
– В особом файле, – ответил Хейнц.
– В каком? Я вмешался:
– У вас есть идея?
Главный инженер пожал плечами:
– Когда мы просим ее вывести на дисплей переменные, она читает содержание файла. Нельзя ли проникнуть поглубже и посмотреть структуру файла?
– Попытаемся, – ответил я.
Мы снова осторожно раздели Дарлу. Это оказалось не очень трудно. И через час проникли на нужный уровень.
С руководством в руках пилот начал изучать банки данных Дарлы в поисках файловых директорий. Экран заполнили незнакомые мне символьные, шестнадцатеричные и десятичные величины. Лишь изредка появлялись привычные слова: эмоции/сегменты или переменные/ ввод. Они обозначали названия файлов в директориях.
Пилот рыскал по области памяти, указанной в руководстве. Наконец он остановился на двух файлах: параметры/ввод и переменные/ввод. Расшифровав последующий код, он определил файловые сектора и напечатал на клавиатуре полученные адреса.
Файл был длинным, около тысячи четырехсот входных величин. Он высвечивал каждую из них на экране и быстро переходил к следующей. Входные данные сопровождались английскими названиями: «Длина корабля – 412, 416 метра». Я никак не мог сосредоточиться, пока мы скользили по бесконечному массиву. Вдруг на экране появилась надпись: «Конец фаськи, Джори»!
– Черт возьми, что это значит? – испуганно воскликнул я.
Пилот закусил губу:
– Господи Боже мой, понятия не имею. Он нажал на клавишу. На экране появилось: «Неплохо для землянки, а?»
– Давайте назад.
Пилот послушно вернулся назад.
«Диаметр шахты 4, 836 метра. Смотри, какие си».
Главный инженер выругался. Я внимательно выслушал его, стараясь запомнить новые комбинации слов, которые в будущем могли оказаться полезными. Потом сказал:
– Выведите все три вместе.
Пилот Хейнц вывел на экран все три записи. «Диаметр шахты 4, 836 метра. Смотри, какие сиконец фаськи, Джори! Неплохо для землянки, а?»
– О Христос, – пробормотал пилот. – Вы только посмотрите! Они написали поверх метки конца файла!
– Объясните, – резко произнес я. – И хватит возмущаться!
Пилот Хейнц покраснел:
– Простите, сэр. В навигационной операционной системе «Навдос» данные хранятся в файлах, обычно в буквенном представлении, прямо как их записали. Компьютеры работают так быстро, а языковые интерпретаторы настолько совершенны, что в компрессии нет никакой нужды. Программистам намного легче проводить проверки, если им остается только выводить данные на экран и читать их.
– Ну и?..
– Все файлы кончаются меткой «конец файла». Кто-то сделал эти надписи поверх метки конца файла. Фиксированные параметры Дарлы хранятся как раз перед переменными. Из-за отсутствия метки она не могла отличить одни от других. И чокнулась! Ничего удивительного!
– Но кто это сделал? – спросил я. – И зачем? Главный инженер сердито сказал:
– В перерывах между путешествиями автоматический журнал Дарлы пересылается системным программистам в Луна-Централь. Если возникают какие-то модификации, постоянные параметры могут измениться. Программисты заносят новые данные в журнал, а потом ретранслируют его назад. В тот день они, должно быть, повеселились. – Лицо главного инженера, пока он говорил, заливалось краской.
– Программисты Военно-Космического Флота? – не поверил я своим ушам.
– Да, они, – выплюнул он. – Проклятые хакеры!
– Шеф! – возмутился я. С тех пор как Лига молодых хакеров проникла в банки данных Главной штаб-квартиры Объединенных Наций и стерла половину мировых налогов, слово «хакер» стало чуть ли не ругательным.
– Хакеры они и есть хакеры! – в сердцах ответил он. – Пусть Господь Бог проклянет их!
Это было богохульством, если, конечно, не понимать сказанное буквально. Что я и сделал, и произнес «аминь», дав понять, что воспринял его слова как молитву. Потом приказал:
– Проверьте соседние секторы. Скопируйте испорченные записи в корабельный журнал.
– Есть, сэр, – Главный инженер с мрачным видом застучал по клавишам пульта. – Чертовы программеры веселились, как малолетние кадеты. В банках данных хватает пустого места, но они записали свою чепуху в рабочие файлы.
И теперь мой корабль в опасности.
– Когда вернемся домой, я подам на них в суд, – заявил я жестко. – Или вызову их на дуэль, если они будут оправданы. Клянусь Господом Богом. – Идиотское заявление, но я был слишком зол, чтобы думать.
Дуэли вновь узаконили в 2024 году, чтобы взять под контроль растушую эпидемию убийств. Я поступил опрометчиво, потому что не имел представления о боевом мастерстве программистов и мог отдать Богу душу. Выбор оружия принадлежал бы им.
Главный инженер одобрительно посмотрел на меня:
– Я присоединяюсь к вам, сэр, и клянусь здесь…
– Замолчите! – взревел я. – Не смейте произносить клятвы.
– Есть, сэр, – только и мог он сказать.
– Простите, шеф. Но ответственность лежит на мне. И как бы то ни было, реакция у меня быстрая.
– Да, сэр. – Он сверкнул на меня глазами, но я не увидел в них злости – только досаду. Он был уже далеко не молод, стал полнеть и прекрасно понимал, что может погибнуть на дуэли. В общем, вряд ли стоило рассчитывать на дуэль. Тем более что программиста по имени Джори немедленно потащат на детектор лжи для допроса под наркотиками, как только мы представим журнал в Адмиралтейство.
Тут в голову мне пришла мысль, от которой я невольно нахмурился.