Транслятор РПГ М-220. Рукописи не горят

в 22:36, , рубрики: rpg, М-220, магнитные ленты, магнитный барабан, Машинные коды, ОЗУ, эвм

Со мной опять произошла какая-то мистика.

С тех пор как начал писать  серию статей под названием «Пятьдесят лет по стезе программирования», особенно когда готовил третью статью, мне хотелось найти рукопись с исходными кодами, написанного мною транслятора с языка РПГ (RPG) для ЭВМ М-220:

Транслятор РПГ М-220. Рукописи не горят - 1

За этот транслятор в далёком 1978 году я получил невиданный для нашего центра космической разведки гонорар. А как благодарна была женская половина, которая смогла избавиться от рутинной и тяжелой работы по печатанию на машинках, порой механических, толстых отчетов.  Всего мною было подготовлено пять экземпляров документации, в которых львиную долю занимали исходные коды. Из этих пяти экземпляров, два остались в центре, два экземпляра я отправил в академию им. Ф.Э. Дзержинского в г. Москву на кафедру программирования, а один экземпляр родителям в г. Чебоксары. Но академию из Москвы перевели, и где сейчас архивы кафедры программирования одному богу известно, а центр космической разведки в Прибалтике просто  закрыли, и от него сегодня практически ничего не осталось:

Транслятор РПГ М-220. Рукописи не горят - 2

И в Москве и в Вентспилсе-8 найти рукопись не предоставлялось возможным. А вот в Чебоксарах я её после отъезда из Прибалтики часто брал в руки. Но шли года, в квартире что-то менялось и однажды я не нашёл рукописи на привычном месте. Я был очень опечален этим событием. И когда писал статьи, издавал книгу я периодически переворачивал вверх дном квартиру, мечтая найти эту рукопись. Все было бесполезно, но не в этот праздничный день 23 февраля 2026 года, На следующий я собирался пойти в Музей радиоэлектроники при Чебоксарском электромеханическом колледже. У меня появилась мысль пойти в музей не с пустыми руками, а в качестве подарка подарить музею бытовой компьютер «Дельта-С». Приняв это решение, я полез на антресоли и тут же обратил внимание на розовый корешок книги нестандартного размера. Со мной уже такое бывало, когда я на этой антресоле нашел восьмой том энциклопедии «Оружие и технологии России. Энциклопедия. XXI век» от издательского дома «Оружие и технологии». Внутренний голос подсказывал, что чудо случилось, и я нашёл свою рукопись:

Транслятор РПГ М-220. Рукописи не горят - 3

Посмотрите, в какой хорошей компании она находилась многие годы!

Я с дрожью взял рукопись в руки и сел разглядывать её. Машина времени перенесла меня практически на 50 лет назад в Прибалтийскую тайгу. На рукописи не сохранился титульный лист, и оказалось вырванными несколько страниц, но от этого она не стала для меня менее ценной. Титульный лист и корешок я тут же распечатал заново и вернул их на прежнее место. Теперь передо мной на столе стояли мой первый труд и моя последняя книга:

Транслятор РПГ М-220. Рукописи не горят - 4

А что касается музея радиоэлектроники, то вот что я написал в книге отзывов после его посещения:

Вот и мне посчастливилось побывать в этом уникальном музее! Нет не музее, а в каком-то удивительном мире, который создал Юрий Иванович Храмов. Спасибо ему! Кто не был еще - поспешите. Самый ценный экспонат там, конечно, Хранитель музея Юрий Иванович Храмов! Все те кто еще не был там найдите минутку и поспешите в гости к Юрий Ивановичу. Вы не заметите, как пролетит эта минутка, превратившись в час, а то и два. Вам захочется возвращаться сюда раз за разом! Низкий поклон, Юрий Иванович!

И здесь нет ни одного слова лукавства. О музее я обязательно расскажу в одной из статей:

Транслятор РПГ М-220. Рукописи не горят - 5

Но вернемся к рукописи. Самое ценное, конечно, не обложка и корешок, а то, что находится внутри. А внутри было описание самого языка РПГ, транслятора для М-220 и, конечно, исходный код транслятора в кодах ЭВМ М-220. Для того, чтобы восстановить в памяти и язык РПГ и машинные годы ЭВМ М-220 я пролистал книги из той далёкой эпохи:

Транслятор РПГ М-220. Рукописи не горят - 6

Учебное пособие по РПГ было выпущено моими учителями Ю.Н. Патрикеевым и В.И. Першиковым. Правда, когда я работал над транслятором РПГ М-220, в руках у меня было более раннее издание – «Ю.Н. Патрикеев. Программирование для генератора отчетов РПГ. Тексты лекций (выпуск 1). МО СССР, 1975». К сожалению, эту книгу я оставил в Центре космической разведки, когда уезжал в адъюнктуру в Москву. Но ведь рукописи не горят, и возможно я её также отыщу. Ю.Н. Патрикеев (на фотографии ниже в центре) всегда был для меня тем идеалом человека и учёного, с которого можно и нужно брать пример:

Транслятор РПГ М-220. Рукописи не горят - 7

Сделать фотографию в цвете помогла модель генерации изображений Nano BananaPro. Справа на фотографии мой однокашник Серёжа Горелов, а слева  - ещё один наш учитель В.Д. Цальп, который научил меня прекрасно программировать на ЭЦВМ «Весна».

Просматривая код транслятора, я понял, что я и сейчас смогу написать этот код, но вот как я его смог написать тогда, почти пятьдесят лет назад…

Сравнение оригинальных бланков РПГ с бланками из моей рукописи, показали их полную идентичность (бланк из найденной рукописи):

Транслятор РПГ М-220. Рукописи не горят - 8

Самое  интересное, что в моём распоряжении было только ОЗУ объемом в 4096 ячеек (4К), один магнитных барабан емкостью 64К и восемь лентопротяжных механизмов. Магнитный барабан это не жесткий диск или флэшка сегодня, при выключении питания вся информация на нём терялась. Единственным выходом было хранение программ на перфокартах (которые могли заминаться, не читаться и т.п.), а еще лучше на магнитных лентах (МЛ). Схема работы строилась следующим образом: разрабатывалась программа, в которой предусматривалась организация, как бы сейчас сказали, подкачки программного кода:

Транслятор РПГ М-220. Рукописи не горят - 9

Таким образом, весь транслятор РПГ М-220 состоял из двух блоков. Первый блок компилировал программу РПГ с бланков во внутренние таблицы, а второй блок интерпретировал их, т.е. собственно и создавал отчеты на основе этих таблиц.

Здесь было все предусмотрено - и обработка ошибок, и проведение вычислений, и сортировка записей. Помимо найденной рукописи сохранилась и фотография именно той ЭВМ М-220, на которой он был разработан и функционировал:

Транслятор РПГ М-220. Рукописи не горят - 10

Справа на фотографии я брожу по прибалтийской тайге в раздумьях как реализовать РПГ на ЭВМ М-220.

Очень ценным в найденной рукописи для меня являются комментарии к исходному коду:

Транслятор РПГ М-220. Рукописи не горят - 11

В силу моего почерка (как говорили мои родители:- «Умный то, умный, но пишет как курица лапой»), комментарии мне вписывали наши сотрудницы Людмила Муравьёва и  Татьяна Перова :

Транслятор РПГ М-220. Рукописи не горят - 12

Транслятор РПГ М-220 в корне изменил мою судьбу. А в целом РПГ можно считать одним из прообразов современных баз данных.

Закончить этот рассказ я хотел бы словами одного из пользователей Хабра maxwolf Хабра:

Это ведь наша история, и многие знания сейчас остаются только в головах своих носителей. Если их не собрать и не сохранить, то через N-ное количество лет они просто пропадут. Цифровым археологам банально не с чем будет работать… Я, например, поднимая пласт своего софта 30-летней давности, понимаю, что сам уже с трудом вспоминаю, что там было к чему, а постороннему человеку, думаю, это, во многих аспектах, будет совершенно непонятно. Вам, как человеку, который начинал с М-220, и до сих пор (как я понимаю) работает в сфере ИТ, будет гораздо легче и найти разные артефакты, связанные с этой машиной, и систематизировать их, обогатив своими знаниями и опытом…

Автор: saipr

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js