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