Десятое января тысяча девятьсот восемьдесятого года наступило в Научно-исследовательском институте «Электронмаш» так же, как и любой другой послепраздничный день в масштабе необъятной страны. С тяжелым скрипом несмазанных петель, с запахом тающего на одежде снега в коридорах, с бесконечными разговорами о дефицитном горошке и с полным, абсолютным нежеланием системы возвращаться в рабочее русло. В кабинетах гоняли чаи, перекладывали с места на место пыльные папки и смотрели на настенные календари с олимпийским Мишкой так, словно этот добродушный медведь был лично виноват в необходимости вставать по звонку будильника.
Но за обшарпанной дверью с табличкой «КБ-3» кипела совсем иная жизнь.
Алексей Морозов вошел в лабораторию первым. Он не включал верхний свет, оставив помещение в уютном, желтоватом полумраке, который разбавлялся лишь серым зимним утром, с трудом пробивавшимся сквозь замерзшие стекла окон.
Он подошел к своему столу. Там, среди аккуратно сложенных листов миллиметровки и россыпи резисторов, возвышался опытный образец той самой первой «Сферы-80». Угловатый, тяжелый, собранный из того, что удалось выбить, выпросить или просто спасти от списания в утиль.
Алексей сунул руку во внутренний карман пиджака и достал серую картонную коробочку, перевязанную шпагатом. Он развязал узел, откинул крышку и вытряхнул содержимое на чистый лист бумаги.
Черный прямоугольник. Сорок блестящих ножек. К580ИК80А. Советский аналог Intel 8080.
В его прошлой — или будущей жизни в 2026 году — этот чип вызывал бы лишь снисходительную ностальгическую улыбку в музее ретро-техники. Восемь бит. Смешная тактовая частота. Никаких конвейеров, никакого предсказания ветвлений. Но здесь, в тени огромных гудящих шкафов ЕС ЭВМ, этот маленький кусочек кремния был настоящим технологическим божеством. Ключом, способным сорвать с петель заржавевшие двери советской вычислительной индустрии.
Дверь в лабораторию скрипнула.
Первым ввалился Евгений Громов. Вечно небритый, со всклокоченными волосами, он кутался в свой знаменитый растянутый свитер грубой вязки, от которого за версту несло крепким дымом сигарет «Ява». Увидев Алексея, стоящего над столом, программист театрально зевнул.
Следом, чеканя шаг, вошел Сергей Дмитриевич Липатов. Конструктор даже в такой день выглядел так, словно собирался на прием к министру: идеально отглаженная рубашка, роговые очки без единого пятнышка на стеклах, а в нагрудном кармане — выверенный по росту строй заточенных карандашей. Сергей бросил взгляд на чертежи, машинально поправил их так, чтобы края совпадали с краем стола, и только после этого кивнул Морозову.
Затем появились остальные. Тихая, сосредоточенная Люба Ветрова, поправляющая толстые линзы очков. Она сразу подошла к стойке с осциллографом, по привычке проверяя, не сбили ли настройки. За ней — Наташа Рогова в элегантном, но практичном брючном костюме, о чем-то тихо спорящая с вечно недовольным Олегом Тимофеевым. Тимофеев, худой и желчный инженер-испытатель, кривился, доказывая, что телевизионные развертки никогда не будут работать стабильно, если собирать их по схемам из журнала. Рогова слушала его с легкой, почти материнской полуулыбкой.
Вошла Наталья Сергеевна Рябинина, начальник отдела технической документации. Идеальная укладка, строгий взгляд, в руках — папка-скоросшиватель. Ее присутствие мгновенно добавило помещению веса: где появлялась Наталья Сергеевна, там заканчивалась кустарщина и начиналось официальное делопроизводство. Молодой и вихрастый Саша Птицын буквально влетел следом за ней, сияя энтузиазмом человека, который еще не знает, сколько бессонных ночей его ждет.
Последним тяжело вошел Иван Михайлович Ильин. Михалыч. Начальник КБ-3 смахнул несуществующую пыль со своего потертого пиджака, окинул взглядом собравшихся и грузно опустился на скрипнувший стул во главе импровизированного круга.
— Ну что, Морозов, — пробасил Михалыч, нарушая утреннюю тишину. — Праздники кончились. Салаты доели. Давай, рассказывай, ради чего ты нас ни свет ни заря сорвал. Я же по глазам вижу, ты опять какую-то авантюру удумал.
Алексей обвел взглядом свою команду. В 2026 году он бы открыл доску в таск-трекере, вывел бы на плазму красивые графики и объявил бы о начале нового спринта. Здесь его презентацией был кусок текстолита и черный чип на листе бумаги.
— Доброе утро, товарищи, — спокойно сказал Морозов. Он не повышал голоса, но в его тоне было что-то такое, от чего разговоры мгновенно стихли. Даже Тимофеев перестал бормотать про кривые импульсы. — Год начинается. И я хочу, чтобы мы сразу понимали, куда будем двигаться. У нас есть «Сфера-80». Она работает. Она пошла в люди. Но это — только базис.
Алексей выдержал короткую паузу.
— Мы разбиваем разработку на два направления. Горизонтальное и вертикальное.
Липатов тут же достал из кармана блокнот и карандаш. Зашуршала бумага.
— Горизонтальное направление — это наша старая добрая машина на мелкой логике, — продолжил Алексей, указывая на угловатый корпус прототипа. — Мы делаем модификацию. Назовем ее «Сфера-80М». Нам нужно расширить постоянную запоминающую память до четырех килобайт. Зачем? Чтобы зашить туда нормальный человеческий язык программирования. Tiny BASIC. Микробейсик.
— Бейсик? В железо? — Тимофеев скептически хмыкнул, скрестив руки на груди. — Алексей Николаевич, вы в своем уме? У нас микросхем ПЗУ днем с огнем не сыщешь, их военпреды выгребают под ноль. А вы хотите четыре килобайта на бытовую игрушку пустить? Это же сколько корпусов паять придется! Плата будет размером с противень для пирогов.
— Сделаем плату двухслойной, — мягко, но уверенно парировала Наташа Рогова. — Если грамотно развести дорожки и уплотнить монтаж в районе шины адреса, габариты вырастут не критично. Олег, ты не о том думаешь. Главное — это согласовать уровни сигналов при таком количестве корпусов.
— Вот именно! — огрызнулся Тимофеев. — Потребление скакнет. Блок питания поплывет.
— Блок питания я пересчитаю, — тихо подала голос Люба Ветрова. — Поставим дополнительные сглаживающие емкости. Не поплывет.
Громов, до этого лениво прислонявшийся к шкафу, внезапно оживился. Он стрельнул хитрым взглядом в сторону девушки.
— Ну что, Ветрова, поехали строить коммунизм! — усмехнулся программист. — Главный архитектор питания гарантирует светлое будущее без просадок напряжения.
Люба смущенно поправила очки, но уголки ее губ дрогнули в улыбке.
— Микробейсик нужен, — твердо сказал Морозов. — Наша цель — не просто выпустить калькулятор-переросток. Мы вкладываемся в будущее. В детей, в школьников, в радиолюбителей. Они не должны высчитывать адреса ячеек памяти в шестнадцатеричной системе, чтобы заставить символ двигаться по экрану телевизора. Они должны писать команды понятными словами. Это социальная задача, если хотите.
Наталья Сергеевна одобрительно кивнула.
— Социальная значимость, внедрение передовых методов обучения в образовательный процесс… — пробормотала она себе под нос, явно формулируя будущий абзац для докладной записки в министерство. — Это хорошая формулировка, Алексей Николаевич. С таким обоснованием мы сможем пробить лимиты на микросхемы памяти. По крайней мере, попытаться.
— Отлично. Это первое направление, — Алексей подошел вплотную к столу и кончиком карандаша указал на черную микросхему, сиротливо лежащую на белой бумаге. — А вот это — направление вертикальное.
Взгляды всей команды скрестились на процессоре.
— Центральное процессорное устройство, — благоговейно выдохнул молодой Птицын, подавшись вперед. — Тот самый опытный кристалл? Восемьдесят восьмидесятый?
— Наш ответ капиталистам, — мрачно пошутил Тимофеев. — Только к этому ответу нужна обвязка из десятка микросхем, которых в природе не существует. Где вы возьмете тактовый генератор? Где шинный контроллер?
— Найдем. Спаяем на дискретных элементах, если придется, — отрезал Алексей. — Это будет «Сфера-80–2». Или, давайте для краткости, «Сфера-82». Профессиональная машина. С нормальной архитектурой. С прерываниями. Со стеком.
Громов перестал улыбаться. Он отлип от шкафа и подошел к столу, глядя на чип К580 с выражением, в котором смешивались профессиональный азарт и неподдельный животный ужас.
— Леша… — медленно произнес Евгений, забыв про субординацию. — Ты вообще осознаешь объем предстоящих НИОКР? Одно дело — писать загрузчик в машинных кодах для примитивной логики. А это… — он ткнул пальцем с желтым от никотина ногтем в сторону процессора. — Под эту штуку нужна полноценная операционная система. Файловая система. Драйверы вывода. Утилиты. Кто это будет писать? Я один? Да я сдохну тут! За что ты меня так ненавидишь⁈
Алексей позволил себе едва заметную, сухую улыбку. Он ждал этого момента.
— Мы не будем писать операционную систему с нуля, Жень.
В лаборатории повисла звенящая тишина. Слышно было, как за окном гудит ветер в проводах.
— А откуда мы ее возьмем? — нахмурился Липатов. — По линии СЭВ таких разработок для микроЭВМ не передавали. Если мы используем нелицензированный алгоритм, это нарушение авторских свидетельств. Я не смогу оформить ТУ.
— Есть такая система, — спокойно продолжил Морозов, глядя прямо в глаза Громову. — Называется CP/M. Control Program for Microcomputers. Она разработана за океаном как раз для архитектуры, совместимой с этим кристаллом.
Громов побледнел, потом покрылся красными пятнами.
— Ты предлагаешь… стянуть буржуйскую разработку? — сипло спросил он. — И дизассемблировать ее?
— Я предлагаю ее адаптировать, — поправил Алексей с нажимом. — Написать нашу собственную базовую систему ввода-вывода под наше отечественное железо. А ядро системы оставить совместимым. Смысл в том, Женя, что если мы обеспечим программную совместимость с CP/M, мы мгновенно получим доступ к тысячам готовых программ. Текстовые редакторы, трансляторы, базы данных. Нам не придется изобретать велосипед. Мы просто построим под него хорошую дорогу.
— И сядем за растрату государственных ресурсов на изучение чуждой техники, — проворчал Михалыч, почесывая шрам на запястье.
Наталья Сергеевна Рябинина изящно поправила несуществующую складку на юбке.
— Иван Михайлович, не драматизируйте. Мы оформим это как научно-исследовательскую работу по теме «Анализ и адаптация зарубежного опыта микропроцессорных систем для нужд народного хозяйства СССР». Я подготовлю правильные бланки. Ни один проверяющий не придерется. Изучать вероятного противника нам никто не запрещает.
Липатов согласно кивнул:
— Если будет четкое техзадание и методики испытаний, я смогу легализовать любую плату. Мне нужна только архитектура памяти и габариты корзины.
— Корзины не будет, — ответил Морозов. — Все должно поместиться на одну кросс-плату. Мы должны уйти от идеологии больших шкафов. Компьютер должен стоять на столе инженера, а не занимать отдельную комнату с фальшполом. Именно поэтому я назвал новую разработку развитием «Сферы». Это будет настольное устройство.
Тимофеев снова подал голос, но на этот раз в нем было меньше желчи и больше инженерной задумчивости.
— Допустим. Допустим, мы сотворим это чудо. Но операционная система такого уровня не грузится с бытового магнитофона «Весна». Кассеты для этого не годятся, слишком долго и ненадежно. Нам нужны нормальные накопители. Дисководы.
— Накопители на гибких магнитных дисках. НГМД, — уточнил Саша Птицын, глаза которого горели так, словно ему только что предложили слетать на Луну. — Я читал в болгарском журнале! У них уже есть опытные образцы восьмидюймовых дисководов. И у нас в НИИ где-то на складе лежал импортный образец, его завозили для большой ЕС ЭВМ, но не смогли состыковать.
Алексей кивнул молодому инженеру.
— Вот ты, Саша, этим и займешься. Твоя задача — найти дисковод. Выкопать его из-под земли, выменять у снабженцев на спирт, выпросить у директора. Любым способом. Без НГМД вся эта затея с новой архитектурой мертва. Впрочем, время ещё есть, думаю, он понадобится нам не раньше, чем через полгода.
Птицын вытянулся по стойке смирно, словно принимал присягу.
— Сделаю, Алексей Николаевич!
В лаборатории снова повисла пауза. Люди переглядывались. Каждый из них мысленно уже прикидывал объем предстоящего ада. Липатов думал о миллионах чертежных линий. Люба — о пульсациях тока. Громов с ужасом представлял бесконечные портянки шестнадцатеричных дампов чужого кода, в которых ему предстоит ковыряться без нормального отладчика.
Алексей смотрел на них, и внутри у него что-то тепло и тяжело сжималось.
Он привык быть один. Там, в своем времени, он руководил отделами, где люди работали за бонусы, за строчки в резюме, за комфортные пуфики в коворкинге. Если проект закрывали, они просто переходили в другую компанию.
Но здесь, в 1980 году, эти люди смотрели на него иначе. Они верили в его «безумные» идеи не ради премии — премию скорее урежут за перерасход текстолита. Они верили ему, потому что он давал им возможность создавать что-то настоящее. Что-то, что можно потрогать руками. Они готовы были идти за ним против бюрократии, против плановой экономики, против здравого смысла. И это накладывало на Морозова такую колоссальную ответственность, от которой сводило скулы. Ошибиться было нельзя.
— Значит, договорились, — подвел итог Морозов. Его голос звучал ровно, как гудение хорошо настроенного трансформатора. — Люба, Наташа, Олег — вы начинаете разводку платы под «Сферу-80М» и решаете проблему с ПЗУ, как только согласуем детали реализации. Сергей Дмитриевич — на вас новые корпуса под расширенную клавиатуру. Наталья Сергеевна — готовьте почву для обоснования микробейсика. И попробуйье, пожалуйста, по своим каналам раздобыть максимально полную документацию на К580. Саша — ищет дисководы.
— А я? — спросил Громов, нервно закуривая прямо в кабинете, что строго запрещалось правилами пожарной безопасности, на которые сейчас всем было плевать. — А я, значит, иду нырять в буржуйский код?
— Ты, Жень, идешь в машзал, — кивнул Алексей. — Выбиваешь нам машинное время на ЕС ЭВМ. Будем готовить отладчик загрузчика К580. Пока железо не готово, и нет документации, ты будешь отлаживать загрузчик на ЕС. А код CP/M нам ещё достать предстоит. И да, как время забронируешь, подойди, мы насчёт микробейсика ещё посоветуемся.
Михалыч крякнул, поднимаясь со стула.
— Ну, разделились, ироды. Задач накидали на три института. Ладно. Работайте. А я пойду к директору. Буду строить вокруг вас бетонную стену, чтобы Петров со своими стервятниками из «Луча» и особисты из Первого отдела не сожрали нас раньше времени. У Петрова опять план по табуляторам горит, он спит и видит, как бы наши ставки к себе перетащить. Хрен ему, а не наши ставки.
Старый конструктор тяжело пошел к двери, но на пороге обернулся.
— Морозов. Ты только смотри, чтобы эта твоя… архитектура… не рванула. Я в цифре вашей не сильно понимаю, но если из-за нее мой отдел разгонят — я тебя лично паяльником вылечу.
В этих словах звучала высшая степень доверия. Дверь за Михалычем закрылась.
Совещание завершилось. Коллективный организм КБ-3 мгновенно распался на функциональные единицы. Лаборатория наполнилась привычными рабочими звуками. Защелкали тумблеры измерительных приборов, зашуршала миллиметровая бумага. Тимофеев и Рогова отошли к окну, уже ожесточенно споря о том, какой дешифратор ставить на выборку адреса памяти. Громов уселся за свой стол, обхватил голову руками и уставился в пустую стену, явно пытаясь осознать масштаб предстоящей катастрофы под названием «адаптация CP/M».
Алексей остался стоять у центрального стола.
Люди разошлись, оставив его наедине с предметами. Перед ним лежал его рабочий блокнот, исписанный мелкими, непонятными для окружающих схемами и алгоритмами. Рядом — остывший чай в граненом стакане. И пустая картонная папка с наклеенным на нее куском пластыря. На пластыре синими чернилами было выведено: «Сфера-80–2».
Знак того, что первая глава нового тома открыта.
Морозов прислушался к звукам лаборатории. Мерное гудение дросселей в блоках питания. Резкий щелчок тумблера. Тихое бормотание Липатова, который диктовал сам себе номера каких-то параграфов. В воздухе висела сосредоточенная рабочая тишина.
Он думал о том, что прямо сейчас, в эти самые минуты, они переходят невидимый Рубикон. До сегодняшнего дня они занимались кустарщиной. Гениальной, прорывной, невозможной для советской промышленности, но все же — кустарщиной. Сборкой из того, что было под рукой.
Теперь же начиналось системное проектирование.
В его голове разворачивалась гигантская, многомерная карта маршрутов. Графики поставок комплектующих, которых еще не существует в природе. Цепочки рисков, где невыполнение плана одним заводом в Калуге могло поставить крест на всей архитектуре. Зависимости программного обеспечения от нестабильного напряжения в розетках.
В своем времени он мог делегировать это. Здесь же приходилось быть и архитектором, и менеджером, и идеологом.
Над головой чуть слышно и раздражающе замигала люминесцентная лампа дневного света. Лабораторию на секунду залило мертвенно-белым светом, затем снова вернулся теплый желтоватый полумрак. Где-то на заднем фоне тихо звякнула капля стекающего на подставку припоя. Дзынь.
Алексей медленно протянул руку и коснулся шероховатой поверхности корпуса К580ИК80А. Пластик был холодным. Никакой магии. Просто крошечный кристалл кремния, закованный в броню, с золотыми волосками контактов внутри. Мертвая материя, ожидающая, когда в нее вдохнут логику.
Морозов смотрел на пустую папку.
— Сейчас начнется путь, — произнес он очень тихо, так, чтобы голос не вышел за пределы его личного пространства. Звук утонул в гудении вентиляторов. — Две дороги. Народная и профессиональная. И мы доведем их до конца. Чего бы это ни стоило.
Он аккуратно смахнул микросхему обратно в серую коробочку. Закрыл крышку. Пододвинул к себе блокнот, взял остро заточенный карандаш и на чистом листе уверенно вывел первую строчку новой схемы.
Работа началась. Сфера продолжала вращаться.