На распутье - Павел Дмитриев
Шрифт:
Интервал:
Закладка:
Вроде бы простой принцип, крутится барабан с девяносто семью символами по окружности. В нужный момент конденсатор разряжается на электромагнит, тот толкает пуансончик, бьет по бумаге, прижимает ее к барабану через широкую красящую ленту. Одна строка — один оборот. Итого сто двадцать строк в минуту, мегабайт в час, почти гигабайт за месяц. Аж слюнки текут, но зубы об эту задачу обломали славно.
Интеллекта в АЦПУ, как в молотке, совсем не имелось. Даже промотка бумаги — совершенно отдельный двигатель, запускаемый по таймеру (новые микросхемы часов пришлись очень к месту). При печати крутящийся барабан посылал два сигнала — начала оборота и в момент выхода «на позицию» очередного символа. Интерфейс COM-порта ноутбука обязан был их «выловить» в виде сигнала CTS (разрешения передачи) и выдать строчку из шестнадцати байт сто двадцати восьми битов. Где «единичка» — там электромагнит должен был ударить. Процесс требовалось повторить по числу знаков на барабане, а именно девяносто семь раз. В результате получалась целая строчка.
По прикидкам, скорости COM-порта вполне должно было хватать. Оборот — полсекунды, за это время мимо бумаги пролетали девяносто семь отлитых на легкосплавном цилиндре символов. Итого имелось около пяти миллисекунд на выдачу последовательности. Иначе говоря, для печати всей строчки требовалось двадцать пять тысяч бод, если считать без всяких старт-стопов. Это в четыре раза меньше доступных в COM-порте сто пятнадцати тысяч двухсот бод. Должно было хватить с запасом на задержки в самопальном переходнике и на работу моего бриджа USB-COM[243].
Но практика упорно опровергала расчеты, печать не шла, как мы ни бились. Судя по всему, не хватало скорости. Пуансоны лупили куда попало — между символами во время движения бумаги. От поломки АЦПУ спасали только огромные зазоры между элементами. Пришлось признать эпический фейл. Отодвинуть пару человекомесяцев в виде «комодика» контроллера в сторону, отсоединить пару здоровенных тридцатиконтактных разъемов и вызвать грузовик с грузчиками — отдать принтер-переросток обратно на ВЦ ТЭЦ. И забыть про этот чертов металлолом.
Следующей стала неуклюжая попытка обойти узкий момент через перфоленту. Набить дырочек в бумаге и передать на какую-нибудь более приспособленную к большим объемам печати ЭВМ. Для этого Федор в перерывах между чтением Хайнлайна и «съездовскими» часами спаял вывод с ноутбука на перфоленту. Благо это оказалось много проще предыдущей задачи, а COM-портов у меня имелось в наличии два.
Молотила машинка будь здоров, только успевай заправлять ленту. Вот только при плотности записи около трех байт на сантиметр вывод мегабайтной книги грозил занять несколько километров бумаги. Не знаю, почему я даже не попробовал посчитать это заранее, просто в цейтноте на вопрос: «Нам нужен вывод на перфоленту?» — ответил: «Делай!» Так что пришлось выписать сотруднику премию, а машинку задвинуть в самый дальний угол.
Впрочем, оно того стоило. Федор-электрик при всем своем хиппи-антураже не только нашел себя в нашем диковатом коллективе, но и обнаружил редчайшие навыки проектного мышления. Если взялся, то будет долбить до конца, на результат, не задавая дурацких вопросов и самостоятельно решая встречающиеся на пути проблемы. Настоящий «луч света в темном царстве» советской корпоративной культуры[244].
Ведь как бывает обычно? Начинаешь работать с человеком, у которого есть голова, креатив, даже талант. Но если на уровне внутренней культуры отсутствует способность отслеживать и обрабатывать длинные цепочки действий, ничего хорошего не выйдет. Через некоторое время видишь метания из стороны в сторону, страшную организационную немощь, необъяснимые срывы сроков. Точно такое у меня было после того, как накурился гашишем в Амстердаме. Начинаешь обдумывать какую-нибудь мысль, на середине ее забываешь, ищешь начало, вспоминаешь, было ли оно вообще. Затем опять думаешь, и опять все разваливается. От такого опускаются не только руки.
Как начальник, заводишь тудушник[245], привычку еженедельно спрашивать результаты, выбиваешь задачу с точки, как в гольфе мячик из песка, снова и снова… Тудушник разносит к чертям, потом распухает голова, и кошмарик мягких белых стен палаты превращается в навязчивую идею…
Однако перфоратор был полностью подготовлен к испытаниям без всякого моего вмешательства и, к моему огромному удивлению, «пошел» с первой попытки. Федор явно почувствовал вкус победы в самостоятельном решении задач. Губить такую инициативу, все равно что пускать под нож стельную корову. Ему немедленно открыли следующий горизонт ответственности. Теперь этот волосатый и бородатый хипарь погонял по коридорам аж трех ботанов-инженеров, учил их «грокать», держать в руках паяльник, правильно нюхать канифоль, а также ничему не удивляться в «721».
В запале энтузиазма эта команда умудрилась сама додуматься подключить к уже хорошо освоенному интерфейсу ноутбука (не видя ничего, кроме глухой стенки с торчащей из нее парой кабелей) новый телетайп. Даже не спросили меня. Хорошо хоть ничего не спалили при преобразовании уровней сигналов. Уже задним числом я в десятый раз похвалил себя за качественно организованное заземление обоих зданий НИИ. Не будь зарыто в землю столько железа, с такими инициативными товарищами давно пришел бы конец интерфейсам Dell’а[246]. Зато как потешались над моим проектом местные электрики полгода назад, «безграмотный перестраховщик» — это был самый мягкий, почти ласкательный эпитет.
Недолго думая выпихнули пятибитный телеграфный код МТК-2 в последовательный порт. Дальше пришлось разбираться мне, и — маленькое чудо: в HyperTerminal нашлась крутилочка, переключающая порт на нужную кодировку и скорость. Не отрубили в Микрософте этот древний телетайпный хвост, позаботились о прошлом… Грешным делом, я уж прикидывал, как наиболее безболезненно перенастраивать телетайп, в котором частота передачи задавалась «железно» в буквальном смысле этого слова, а именно — вращающимся цилиндром с выступами, которые управляли нажатыми контактами[247].
На этом проблемы только начались. К своему большому огорчению, я убедился в очевидном: пять бит достаточно лишь для тридцати двух букв. На советском телетайпе это «изящно» обошли, введя три регистра (латинский, русский, цифры), переключения между которыми производили специальными командами. Не понятно, какой марксизм помешал инженерам СССР подумать чуток о будущем и принять сразу аналог ASCII для русского алфавита[248]. Но бороться с этим явно бесполезно, нужно приспосабливаться.