Полная готовность же проекта задерживалась теперь, в первую очередь, работами над внешней памятью – магнитный барабан ждём в конце апреля-мае. А над блоком работы с магнитной лентой ещё и «конь не валялся». Кроме общих набросков, «что и как» и включения в архитектуру М-1, там ничего не существовало. Причём решение о необходимости второго накопителя являлось однозначным – он, однозначно нужен, но отказ от распыления имеющихся сил коллектива был осознанным выбором – АДВЭМ должна пойти в серию и начать функционировать в научных институтах и КБ СССР как можно скорее, а накопители на магнитной ленте пойдут позже, по мере освоения промышленностью СССР производства на основе полученных германских образцов и доведения качества магнитной ленты до требуемых параметров долговечности.


***


Набор машкодов (с некоторыми несущественными лакунами из-за специфической аппаратной реализации), на который я ориентировался при проектировании, был фактически набором интеловского 8080. Отбросив первоначальные самопальные варианты, я очень быстро пришёл к трём альтернативам – «навороченному как у Z80», промежуточному – «максимально креативному» :-) и тому, «как у i8080».

«Лист3» и был реализован на аппаратном уровне, причём главным фактором, определившим выбор в пользу последнего, была возраставшая стоимость, сложность, избыточность на данный момент и время, потребное на реализацию первого варианта системы команд наподобие того, что был в основе самого популярного 8-разрядного процессора, имевшемся в «моём прошлом». Кроме того, на том объёме ОЗУ, который имела М-1, особо развернуться с ПО было не просто трудно, а невозможно. Он был просто мизерным. Даже первый вариант «спекки» с 16 килобайтами памяти казался в 1941-м немыслимой роскошью. Про сравнение же с моей «инопланетной» по местным меркам техникой вообще и речи не шло. Только теперь по настоящему мне стали понятны запавшие в память строки из читаного в сети эссе кого-то из первого поколения советских программистов. Полное страданий и жалоб :-) Разбиение программы на этапы, запись-считывание всех промежуточных результатов между ними на магнитный барабан/ленту, постоянные аварийные остановки, зависания, перегрев и выход оборудования из строя и всё в таком духе..

Вернусь к машкодам АЛУ М-1. Почти 8 десятков команд. Команды передачи данных – пересылка и загрузка из регистра в регистр, из ячеек памяти по известному адресу в выделенной регистровой паре, команды для их обработки, команды для переходов, команды управления. Данный выбор обуславливался тем, что его можно было в дальнейшем, сохранив обратную совместимость, нарастить набор команд в новых моделях громоздких пока праотцов будущих местных процессоров. Мой «пунктик» по поводу сквозной, на десятилетия вперёд, совместимости по прежнему давал себя знать. Да и материалов из своего времени, по Z80 (являвшимся, в каком-то роде «потомком на стороне» процессора 8080)/самого 8080 (точнее, его советского полноценного аналога КР580) было больше всего.

Разумеется, быстродействие и близко не как у того, кто взят в качестве образца, но даже такая техника, после доведения её до серийного выпуска и полноценного освоения в КБ промышленности и институтах АН СССР нужна как воздух. Она решит многие проблемы, а задачи учёных, промышленности, бухгалтеров и статистиков после наладки выпуска серийных образцов М-1 потребуют соответствующего числа программистов.

Обучение их и качественная, подробная и изложенная доступным языком документация по программированию. С примерами реальных задач и способов их решения на М-1. Обо всём этом я толкую и настаиваю.. Не только «принципиальные электрические схемы», но обширные «мануалы по юзанию» :-)