Сизый дым слоился в тусклом свете люминесцентных ламп. Вентиляторы на подоконниках давно не справлялись. Лаборатория КБ-3 пропиталась густым запахом горячего флюса и плавящегося припоя, который намертво въедался в халаты.
Люба Ветрова сидела неподвижно. Плечи напряглись так, что сводило шею. На антистатическом коврике лежал распластанный макет «Сферы-82» — настоящий вычислительный монстр, бесконечно далекий от изящных плат на простой логике из первых серий. Сердце системы — массивный керамический корпус микропроцессора К580 с позолоченными выводами — терялось в чудовищном хаосе тончайших фторопластовых проводов МГТФ. Розовые жилы сплетались в жгуты, образуя над текстолитом подобие кровеносной системы, перепаянной десятки раз.
Над массивными алюминиевыми радиаторами стабилизаторов напряжения дрожало марево горячего воздуха. Схема жрала ток с пугающей жадностью.
Справа от макета тускло светился экран С1–65. Зеленый луч бежал по сетке кинескопа, вычерчивая график пульсаций питания. По правилам радиотехники, по ГОСТам и по всем законам физики эта линия должна была быть прямой. Идеально ровной струной в пять вольт.
Люба щелкнула тумблером питания дисковода ИЗОТ. Тяжелый шаговый двигатель дернулся, позиционируя головку. В ту же секунду прямая зеленая линия на экране взорвалась. Она превратилась в рваную, дикую «пилу» с огромными амплитудными выбросами.
На экране контрольной «Юности» мигнул и погас курсор. Динамик издал жалобный писк. Сброс. Система ушла в самопроизвольную перезагрузку.
Опять.
Люба стиснула зубы. Она прекрасно понимала физику процесса. Громов написал новый модуль обмена для МикроДОС. Теперь видеоконтроллер, который с таким трудом спроектировал Олег, должен был выводить графику на экран одновременно с чтением данных с гибкого диска. Процессор, контроллер прямого доступа к памяти и видеосхема начинали рвать системную шину на части, перехватывая управление друг у друга с частотой в два мегагерца.
Эти бешеные переключения логических вентилей создавали колоссальные импульсные броски тока. Питание проседало на доли микросекунды. Микропроцессор ловил эту просадку, воспринимал ее как команду сброса и обнулял регистры.
Люба взяла пинцет. Пальцы, привыкшие держать щупы, тонкий монтажный провод и выводы крошечных конденсаторов, с такой силой вцепились в кусок грубой инструментальной стали, что суставы выступили рельефными буграми. Руки мелко дрожали от усталости и выпитого за день крепкого чая. Она потянулась к блоку питания макета, где выстроился ряд серебристых бочонков — конденсаторов. Они должны были сглаживать эти пульсации. Отдавать накопленный заряд в моменты пикового потребления. На бумаге их емкости хватало с запасом. В реальности они просто не успевали реагировать.
Девушка потянулась пинцетом к выводу одного из конденсаторов, пытаясь подогнуть его для дублирующей шины. Рука дрогнула, и фаланга указательного пальца задела раскаленный алюминиевый радиатор стабилизатора.
Раздался короткий шип.
Люба отдернула руку и прижала обожженный палец к губам, зажмурившись до цветных кругов. Физическая боль стала последней каплей. Проект буксовал. Морозов доверил ей аппаратную часть этой невероятно сложной машины, поручил заставить капризный процессор стабильно работать на отечественной элементной базе. А она не могла обеспечить ему даже чистое питание. Громов не мог отлаживать код. Олег не мог настраивать тайминги.
Отодвинув табуретку, Люба резко поднялась. Ей не хватало воздуха.
Коридор второго этажа встретил прохладной, гулкой тишиной и запахом мастики. Здесь не гудели трансформаторы. Здесь было только эхо шагов и тусклый свет дежурных ламп в решетчатых плафонах.
Она дошла до умывальника в нише возле лестничного пролета. С силой крутанула фаянсовый вентиль. Ледяная, ржавая в первые секунды вода ударила в раковину. Люба подставила обожженный палец под струю. Кожу заломило от холода, пульсирующая боль начала неохотно отступать, оставляя после себя ноющее жжение и красный волдырь.
Девушка оперлась здоровой рукой о влажный кафель стены. Закрыла глаза. Хотелось просто уйти домой. Забраться под колючее шерстяное одеяло и не видеть больше этих проклятых алюминиевых бочонков, не высчитывать микрофарады, не чувствовать свою профессиональную несостоятельность.
Сзади послышались тихие шаги. Скрипнула подошва ботинка по линолеуму.
— Сильно прижгла?
Люба вздрогнула и обернулась. В полутора метрах стоял Евгений Громов. Программист переминался с ноги на ногу. В руках дымились две толстостенные фаянсовые кружки.
Он не ухмылялся. Привычное снисходительное превосходство программиста испарилось. Громов выглядел предельно вымотанным: под глазами залегли глубокие тени, воротник рубашки расстегнут, на щеке пятно от копировальной бумаги.
— Жить буду, — хрипло ответила Люба. Она торопливо закрыла кран и стряхнула воду с руки, стараясь спрятать палец в карман халата. — Я сейчас вернусь. Попробую удвоить сечение земляной шины. Может, сопротивление дорожек дает эту просадку.
Громов молча шагнул вперед и протянул ей одну кружку.
Темная, мутная жидкость источала запах пережженного цикория и сгущенного молока. Растворимый кофе из ночного буфета на первом этаже. Редкостная гадость, которая спасала их отдел в моменты самых тяжелых авралов.
— Держи. Он сладкий.
Люба неуверенно взяла кружку. Горячий фаянс обжигал ладонь, но это было приятное, успокаивающее тепло.
Программист прислонился плечом к крашеной стене. Отпил из кружки, поморщился.
— Не надо удваивать шину, Люб. Дело не в сечении. Я же вижу осциллограммы.
— Тогда в чем? — в ее голосе прорвалась сдерживаемая обида. — Конденсаторы проверены поштучно на мосте переменного тока. Емкость в норме. Блок питания выдает свои пять ампер. А процессор валится при первом же обращении к диску. Я не понимаю, Жень. Я просто не понимаю, чего этому куску кремния не хватает.
Громов посмотрел в свою кружку, словно пытаясь найти ответ в мутной кофейной гуще.
— Знаешь, я раньше думал, что мы, программисты — это боги, — тихо произнес он. Голос звучал непривычно серьезно. Эхо коридора подхватило его слова. — Я пишу код. Я строю идеальные миры из операторов и переменных. Там все подчиняется строгой математической логике. Ноль это ноль. Единица это единица.
Он поднял взгляд на Любу.
— А теперь я сижу за этим макетом и вижу, как мой идеальный, вылизанный до байта код МикроДОС рассыпается в труху. Просто потому, что реальный мир не состоит из чистых нулей и единиц. Он состоит из помех. Из наводок. Из дерьмового питания. Мой код — это просто мертвые буквы на перфокарте, если твои электроны не бегут в правильном направлении.
Люба крепче сжала кружку. Услышать такое признание от Громова, вечно задиравшего нос перед «железячниками», было сродни капитуляции, в которой читалась странная, взрослая солидарность.
— Мы с Лешей можем придумать какую угодно архитектуру, Люба, — продолжил Евгений. — Но физику этого мира вытягиваешь ты. Я не могу помочь тебе с паяльником. Я сожгу плату к чертям собачьим. Но я могу подождать. Сколько нужно. И никто тебя не гонит.
Девушка сделала глоток. Кофе был обжигающе горячим и приторно сладким. Вкус жженого сахара осел на языке.
— Спасибо, Жень.
Она посмотрела на свой обожженный палец. Волдырь надулся, но боль стала терпимой.
— Пошли, — Люба решительно выпрямилась. — У нас там операционная система без питания сидит. Надо кормить.
Когда они вернулись в лабораторию, у рабочего стола Любы стоял сутулый силуэт в сером, застиранном до белизны халате.
Петр Иванович, один из самых возрастных инженеров бывшего КБ-2. «Аналоговик», получавший медали за разработку измерительных комплексов еще в шестидесятых. После принудительного слияния отделов эти ветераны держались особняком, мрачно наблюдая за возней молодежи с цифровыми микросхемами. Они презирали логику нулей и единиц, считая ее вульгарным упрощением сложного, непрерывного волнового мира.
Сейчас старик молча стоял над макетом «Сферы-82». Его руки, покрытые пигментными пятнами и шрамами от кислот, были заложены за спину. Он внимательно смотрел на экран осциллографа, где продолжала биться в агонии рваная линия пульсаций.
Громов напрягся, готовый отразить очередную едкую реплику про «цифровые игрушки, которые виснут от чиха». Он сделал шаг вперед, заслоняя Любу.
Но Петр Иванович не смеялся. Он наклонился ближе к прибору, поправил на переносице роговые очки с толстыми линзами.
— Дрянная картинка, — констатировал ветеран глухим, надтреснутым басом. — Фронты звенят так, что у меня зубные коронки ноют. Частота переключений какая?
— Два мегагерца, — настороженно ответила Люба, подходя к столу. — Шина работает на пределе. Мы пытаемся сгладить питание. Навесили в параллель восемь конденсаторов К50−6 по тысяче микрофарад каждый. Суммарная емкость огромная. Но они не справляются.
Петр Иванович медленно повернул голову. Посмотрел на девушку поверх очков. Ветеран устало потер переносицу.
— Девочка моя. Ты бы еще чугунную гирю к процессору привязала.
Старик вздохнул, тяжело опустился на табуретку рядом с макетом.
— Вы, цифровики, совсем физику забыли. Смотрите только на номинал на банке. Тысяча микрофарад. А как эта тысяча устроена внутри — вам плевать.
Он ткнул узловатым пальцем в серебристый цилиндр конденсатора.
— Это электролит. Внутри него — две полосы алюминиевой фольги, проложенные бумагой с электролитом. И они скручены в плотный рулон. Понимаешь? В рулон.
Люба нахмурилась, пытаясь уловить мысль. Громов молча поставил кружку на стол, прислушиваясь.
— На низких частотах, герц до ста, — продолжал Петр Иванович, рисуя пальцем в воздухе невидимую синусоиду, — это работает как емкость. Он заряжается, он отдает ток. Но вы же гоняете шину на двух мегагерцах. Это радиочастота. А на радиочастоте рулон фольги перестает быть конденсатором. Он становится катушкой индуктивности. Ваша хваленая емкость на таких фронтах обладает чудовищным паразитными сопротивлением. Она просто не пропускает через себя высокочастотные импульсы.
Старик перевел взгляд на экран осциллографа, где металась зеленая пила.
— Эта дрянь на экране — это не просадка напряжения. Это высокочастотный звон. Ваша цифра захлебывается собственным эхом, потому что электролиты его не поглощают. Они его отражают обратно в шину.
В лаборатории повисла тишина. Слышно было только гудение трансформатора. Люба смотрела на алюминиевые бочонки, внезапно осознав всю глубину своей ошибки.
Ветеран полез в бездонный карман своего халата. Звякнуло стекло, зашуршал какой-то мусор. Петр Иванович выложил на антистатический коврик перед Любой крошечное темное колечко из прессованного порошка и щепотку плоских квадратиков, залитых зеленой эмалью.
— Вот, — ветеран придвинул детали к макету. — Керамические конденсаторы типа «КМ». В них нет рулонов. Это плоские пластины. Паразитная индуктивность малая. Они глотают высокие частоты, как сухая земля воду. А это — ферритовое кольцо.
Петр Иванович взял паяльник. Старые, узловатые пальцы, казавшиеся такими неуклюжими, мгновенно обрели ювелирную точность. Он не стал припаивать детали к контактным площадкам на краю платы, а поднес жало прямо к массивным позолоченным ногам микропроцессора К580.
— Керамику нужно паять в параллель питанию. И не на шину, а прямо на ноги потребителя. Чтобы расстояние было минимальным. Миллиметр провода на мегагерцах — это уже антенна, — приговаривал старик, нанося флюс.
Капля припоя сверкнула под жалом. Один за другим зеленые квадратики легли между выводами земли и питания на самом корпусе микросхемы. Затем ветеран разрезал кусачками подводящий провод питания, надел на него ферритовое кольцо и спаял концы обратно.
— Феррит задавит синфазную помеху. А керамика срежет звон.
Петр Иванович положил паяльник на подставку. Вытер руки о халат.
— Включай, молодежь.
Люба затаила дыхание. Она потянулась к тумблеру. Боль в обожженном пальце пульсировала в такт сердечному ритму. Щелк.
Двигатель дисковода заурчал, раскручивая магнитный блин. Заработали шинные формирователи, пробрасывая байты информации в оперативную память. Система потребляла ток рывками, агрессивно, на максимальной скорости.
Девушка подняла глаза на осциллограф.
Зеленый луч почти не дрогнул. Он лежал на сетке ровной, спокойной линией. Ни прежних всплесков. Ни прежних «игл». Помеха, которая срывала процессор в сброс, ушла.
На экране телевизора мигнул курсор. Появилась надпись загрузки МикроДОС. Система перестала срываться на этом режиме.
— Помеху сняли, — сухо сказал Петр Иванович, не давая никому преждевременно радоваться. — Но радиаторы всё равно пересчитать. Дисковод жрет ток рывками, в корпусе будет жарче, чем на столе. Сделаете часовой прогон под нагрузкой, потом поговорим про надежность.
Громов шумно, с присвистом выдохнул. Он повернулся к ветерану. В глазах программиста, всегда смотревшего на стариков из КБ-2 как на безнадежный анахронизм, стояло глубокое, неподдельное уважение.
— Петр Иванович… — Евгений потер лоб. — Я… мы у вас в долгу. Если бы не вы, я бы этот код до зимы переписывал, пытаясь программные костыли подставить.
Старик хмыкнул. Тяжело поднялся с табуретки.
— Цифра ваша — дело хорошее. Быстро считает, спору нет, — Петр Иванович похлопал Громова по плечу тяжелой, мозолистой ладонью. — Но питается она, Женя, аналоговым током. Никуда вы от нас, стариков, не денетесь в этом физическом мире. Работайте.
Он развернулся и, шаркая стоптанными туфлями, пошел к своему столу, заваленному стрелочными вольтметрами и пыльными мотками провода.
Люба смотрела на ровную линию осциллографа. Схема была спасена.
В тесной, заставленной коробками с деталями квартире Олега Тимофеева было тихо. Только мерно тикали настенные часы, отсчитывая глубокую ночь. На столе остывала кружка с недопитым крепким кофе, а в воздухе висел привычный для жилища заядлого радиолюбителя запах разогретого текстолита и канифоли.
Олег сидел перед массивным самодельным металлическим ящиком КВ-трансивера. Передняя панель аппарата тускло отсвечивала зеленым «магическим глазом» индикатора настройки и множеством тумблеров. Шкалы светились мягким, гипнотическим янтарным светом. Задняя стенка аппарата источала ровный жар — мощные радиолампы выходного каскада работали на пределе, выталкивая сигнал в проволочную антенну, натянутую между крышей хрущевки и соседним домом.
Он сгорбился, плотно прижав к ушам эбонитовые чашки наушников. Глаза инженера были полуприкрыты. Динамики извергали бесконечный белый шум, сквозь который прорывались свист гетеродинов, вой несущих частот и треск атмосферных разрядов от далеких гроз.
Он привычно ловил прохождения радиоволн, отражающихся от ионосферы, терпеливо выжидая нужное «окно».
Пальцы, привыкшие находить сбои в тончайших цифровых схемах, уверенно вращали массивную ребристую ручку верньера, деликатно подстраивая частоту. Из-за глубокого замирания сигнала сквозь пелену статики начал пробиваться слабый, пульсирующий голос на однополосной модуляции.
— UA0… прием… Роман-Центр… Как слышишь? Прием…
Олег переключил тумблер на передачу. Щелкнуло мощное реле антенного коммутатора.
— UA0, это Роман-Центр. Слышу тебя на троечку, Сергей. Сильно федингует. Как погода в Сибири? Прием.
Он отпустил тангенту. Секунда тишины. Волна улетела в черное небо, отразилась от слоя Хевисайда где-то над Уральскими горами и рухнула в заснеженную тайгу.
— Роман-Центр… — голос сибиряка прорезался четче, усиленный внезапным всплеском прохождения. — Погода минус двадцать. Снег валит. Олег, я по делу. У нас тут мужики в ящике журнал «Радио» до дыр зачитали. Статью Морозова.
Олег выпрямился. Сонливость как рукой сняло. Он пододвинул к себе блокнот и взял карандаш.
— Принял тебя, Сергей. Заинтересовала схема? Прием.
— Еще как заинтересовала! — сквозь треск эфира в голосе радиолюбителя слышался неподдельный азарт, смешанный с отчаянием. — У нас при радиоклубе кружок организуют для школьников. Хотим десяток «Шариков» собрать. Текстолит есть, хлорное железо есть, логику сто пятьдесят пятой серии по складам наскребли… Но, Олег… мы в тупике. Подробности письмом через ДОСААФ. Прием.
Сигнал начал уходить. Олег быстро покрутил ручку расстройки, удерживая частоту корреспондента.
— В чем тупик, Сергей? Чего не хватает? Прием.
— Не хватает самого редкого! — голос пробился сквозь свист помехи. — Что именно, напишу. В эфире не хочу перечислять склады и заявки. Мужики готовы свои премии отдать, а купить негде. Глухо как в танке. Можешь подсказать официальный путь? Прием.
Олег посмотрел на янтарную шкалу трансивера. В этом закрытом сибирском городе, окруженном тысячами километров тайги, сидели такие же инженеры, как они. С горящими глазами, с паяльниками.
— Я тебя понял, Сергей, — Олег нажал тангенту, чеканя каждое слово, чтобы пробить помехи. — Ничего не обещаю, но поговорю с главным. Будь на этой частоте завтра в это же время. Конец связи. 73!
— Принял, Олег. Жду. 73!
Сигнал растворился в белом шуме. Олег стянул наушники на шею и с наслаждением потянулся до хруста в суставах. Тишина спящей квартиры навалилась на уши мягкой ватой. Инженер выключил накал ламп и анодное напряжение. Лампы начали медленно остывать, издавая тихое металлическое потрескивание.
Тимофеев вырвал лист из блокнота, сложил его вчетверо и сунул в карман рубашки. До рассвета оставалась пара часов, нужно было успеть хоть немного поспать перед работой.
Утром в кабинете, отгороженном от основной лаборатории застекленной перегородкой, было прохладно. Алексей Морозов сидел за рабочим столом, заваленном синьками системной шины и распечатками листингов Громова.
Он пришел раньше всех. В последнее время стиралась грань между днем и ночью, между работой и жизнью. Игры с Партией, комиссиями и бюрократией вытягивали силы, но давали результат. Призовые машины были легализованы. Победители заочной Олимпиады скоро приедут во Владимир. Проект набирал критическую массу, готовясь прорвать плотину невидимости.
Дверь скрипнула. В кабинет бодрым шагом вошел Олег.
— С добрым утром, Лёш, — Тимофеев подошел к столу, вытаскивая из кармана сложенный вчетверо листок.
— Архитектура не ждет, — Морозов отодвинул чертежи, массируя виски. — Что у тебя? Лицо такое, будто ты с Марсом связался.
— С Сибирью. Радиоклуб при серьезной организации, адрес дадут через ДОСААФ.
Олег положил листок на стол перед Алексеем и постучал по нему пальцем.
— Там мужики «Радио» прочитали. Загорелись. Хотят собрать десяток «Сфер-80М» для подшефного кружка. Базу собрали, а специфику достать не могут. Через письмо-заявку просят РФ-вторые с нашей прошивкой Бейсика и герконовые клавиатуры.
Морозов посмотрел на листок. Буквы, написанные торопливым почерком радиста, скакали по клеточкам. Десять комплектов. Десять машин, которые могли появиться на другом конце огромной страны, не пройдя ни одного официального согласования в министерствах.
Алексей откинулся на спинку стула. Он вспомнил, как сам стоял перед закрытыми дверями фондового отдела. Как они с Липатовым спускались в пропахшие ацетоном подвалы завода ПВО, чтобы выменять банку фондового герметика на спирт. Как Тимофеев с Громовым договаривались с инженером в статуправлении, отдавая дефицитные микросхемы за старый болгарский дисковод ИЗОТ, списанный за ненадобностью.
Они выживали, побираясь по крохам, выгрызая ресурсы у Системы.
И вот теперь Система дала трещину в другом месте. Вертикальное планирование Госплана в очередной раз доказало свою слепоту к новым инициативам на местах. Оно не видело энтузиастов. Оно не выделяло фонды под мечты.
Теперь у этих людей в Сибири был Алексей Морозов. И его КБ-3.
Алексей усмехнулся. Пазл наконец-то сложился.
Их проект перерос фазу приема писем. До этого дня они работали как пылесос — втягивали в себя идеи, алгоритмы школьников, чужие решения. Они аккумулировали энергию. Этот ночной сеанс связи менял все правила игры.
Горизонтальные связи, та самая сеть невидимого взаимодействия, которую Морозов упорно выстраивал под радарами партийного контроля, заработала в обратную сторону. Они превращались в технологического донора. Они становились узлом распределения.
— Клавиатуры у нас есть, — произнес Морозов, глядя в серое небо за окном. — И ПЗУшки тоже.
Олег недоверчиво прищурился.
— Николаич, ты серьезно? Это же материальные ценности. Если узнают, что мы рассылаем государственные комплектующие непонятно кому по почте… Нас же ОБХСС порвет на британский флаг. Это нецелевое расходование.
— Не порвет, — Алексей выдвинул ящик стола и достал чистый бланк с гербовой печатью. — Мы не будем прятаться по подворотням, Олег. Мы ударим их собственным оружием.
Морозов взял ручку.
— Олимпиада официально поддержана горкомом. Цель — повышение компьютерной грамотности молодежи. Завтра утром ты пойдешь к Наталье Сергеевне. Передай ей эти позывные и адрес сибирского НИИ. Пусть оформит отправку десяти комплектов как «Методическую помощь подшефным организациям по линии ДОСААФ». С приложением актов о передаче опытных образцов. Пусть обложит эту посылку такими железобетонными правильными бумагами, чтобы ни один ревизор не смог подкопаться.
Тимофеев широко улыбнулся. В глазах вспыхнул азарт.
— Упаковать в фольгу от статики?
— В двойную фольгу. И в пенопласт, — кивнул Алексей. — Скажи своему сибиряку, пусть ждет бандероль.
Олег вышел из кабинета, тихо прикрыв за собой дверь.