ТС-7063: Вспоминаем 80-е +16


Приветствую вас, коллеги!

Позапрошлогодний всплеск публикаций по истории советских ПК ( например, эта и вот эта ) быстро сошел на нет, попробую реанимировать эту тему и вспомнить устройство, с которым связаны мои первые шаги на ниве программирования, тем более, что на просторах Интернета о нем практически ничего нет ( чуть ли не единственное, что я нашел — ссылки на «Нормы расхода этилового спирта для организаций и предприятий» — кто в теме, тот поймет, о чем речь ).

Речь пойдет о терминале для ЕС ЭВМ ТС-7063, который был составной частью дисплейного комплекса ЕС-7970 (об этом комплексе упоминаний в Интернете чуть больше, но почти все ограничиваются фразой типа «В таком-то году в нашем ВЦ внедрили ...»):



Судя по опубликованным здесь материалам, у кого-то в начале 80-х была возможность достать микросхемы серии К580, был доступ к первым советским ПК. Я трудился в это время в довольно крупном НИИ, работавшем на оборонку, в столице одной из союзных республик — но ни того, ни другого в нашем распоряжении не было. Помню, в один из проектов уговорили заказчика включить, кажется, Искру — специально, чтобы можно было на нее посмотреть, ждали года два, я так и не дождался…

Поэтому, когда уже в 1985 в ИВЦ промышленного предприятия одного из областных центров РФ, где я к тому времени работал, привезли дисплейный комплекс, 8 штук этих самых ТС-7063 (производились они в Каневе — небольшом городке в Черкасской области) — это было событие! Первое подключение к нашей ЕС 1035, системные сообщения на дисплее, система ФОКУС ( может, кто-нибудь помнит такую ) — программный комплекс для взаимодействия с ЕС ЭВМ, с несколькими игрушками в составе — все это произвело тогда огромное впечатление. Но я сейчас не об этом.

А дело в том, что ТС-7063 был создан на основе микропроцессора серии К580 и представлял собой, по сути, вполне нормальный для того времени ПК. Вот его некоторые технические характеристики:

  • Центральный процессор: КР580ВМ80А
  • Емкость дисплея, символов: 80 x 25
  • Емкость ПЗУ (556РТ5), кбайт: 4
  • Емкость ОЗУ (565РУ1А), кбайт: 32
  • Емкость ЗУ регенерации, кбайт: 4

Вид сзади, крепление плат и блоков питания:



Плата процессора:



ПЗУ:



Идея заключалась в создании распределенной системы обработки данных. Интеллектуальный терминал должен был взять на себя часть функций и, не прерывая работу ЭВМ, локально выполнять какие-то задачи — например, редактирование небольших текстов, подготовку данных, подготовку заданий,… Правда, базовое программное обеспечение, прошитое в ПЗУ ( можно, в принципе, назвать его операционной системой ), выполняло только простейшие функции — обработку прерываний от клавиатуры, ввод и редактирование до двух экранов текста и обеспечение связи с ЭВМ. Но в комплекте к терминалам шел черный чемоданчик — отладочное устройство, с которого можно было ввести программу в машинных кодах в ОЗУ, запустить ее на исполнение, пройтись по ней по шагам. Кроме того, в чемоданчик было встроено устройство чтения с перфоленты (!), т.е., можно было подготовить перфоленту с кодом программы на соответствующих устройствах ЕС ЭВМ, а потом загружать ее в память терминала.

Помню первый листочек с переписанными рукой кодами команд микропроцессора, который мне кто-то принес, помню первую программу, короткую и совершенно дурацкую — и ту радость, когда она заработала… Второй программой стал Ассемблер с редактором связей — надоело программировать в машинных кодах и вычислять переходы на метки. Писался он в школьной тетрадке (до сих пор берегу), потом вручную переводился в машинные коды, вводился руками на устройстве подготовки данных для перфоленты ( пришлось делать это несколько раз, сразу ведь ничего не работает ).

Впрочем, пользовался я им недолго — через пару месяцев привез из Ленинградского университета, где, как оказалось, разрабатывалось ПО для этих устройств, систему Янус, в состав которой входил кросс-ассемблер для исполнения на ЕС ЭВМ и кое-какие программы для ТС-7063 — интерпретатор Форт-83 и несколько игрушек. Воспользуюсь случаем поблагодарить людей, которые занимались разработкой этого ПО — группу С.Н. Баранова, в которую входили В.А. Кириллин, А.А. Клубович и Н.Р. Ноздрунов. Из игрушек, помнится, особенно приглянулся «Лабиринт».

Форт произвел тогда большое впечатление своей красотой, простотой реализации и невероятной компактностью получаемого кода. Насколько я понимаю, первыми в СССР начали заниматься этим языком именно в ЛГУ и именно для ТС-7063. Позволю себе привести цитату из статьи Баранова «Язык программирования ФОРТ в СССР, России и Санкт-Петербурге»:

Разработка кросс-ассемблера велась на языке PL/I и заняла больше полугода. Исходный код по тем представлениям оказался огромен — более тысячи строк на PL/I. Для его трансляции приходилось снимать все параллельно идущие пакетные задания и отдавать весь резерв оперативной памяти (а всего-то ее было 512 К) транслятору с PL/I.
В это время нам попался экземпляр журнала «Dr.Dobb’s Journal», в котором был приведен листинг ассемблера для Intel 8080 на языке Форт, состоявший всего из 54 строчек текста, треть которого занимала таблица знакомых нам мнемоник ассемблерных команд. При этом авторы утверждали, что это полный ассемблер, охватывающий все режимы и особенности команд Intel 8080!
Никаких других текстов о Форте у нас в этот момент не было, и надо было понять, как указанная последовательность форт-слов может работать именно так, как требуется.


Но писать на Форте что-то серьезное так и не пришлось — в основном писали на ассемблере и тут кросс-система от ЛГУ очень пригодилась. А делали мы достаточно серьезные вещи, в том числе АСУТП и ПО для него — мы использовали ТС-7063 как центральное управляющее устройство системы.

Одна из созданных тогда, в конце 80-х, систем, работает в том же виде до сих пор — не перестаю удивляться живучести этого устройства — 25 лет в режиме непрерывного производства 365 x 24, в условиях повышенной влажности, температуры и запыленности! Вот этот герой:




К сожалению, не доступен сервер mySQL