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