Плоды релиза Победы 1948 - Игорь Евгеньевич Кулаков
Наш модем, конечно, жуть пока. Ещё один «ящик на колёсах».Но жуть работающая. Я, кстати, успел немного в 21 веке, до 2006 года попользоваться классическим модемом U.S.Robotics Sportster выпуска конца 90-х, до того, как у нас дома появился ADSL и мы перехали с 28,8кбит на вполне приличные 128К, а затем и на 1мбит, которые позже сменила вообще 160мбитная «оптика».
* * *
Разумеется, многое в стандартах было избыточным и закладывалось на будущее.
Стоит отметить, что возможность работы с почти любым магнитофоном, оборудованном «гнездами» входа и выхода аналогового аудиосигнала, значительно упрощало и удешевляло долгосрочное хранение данных для М-4. Разумеется, в мануалах к вычислителю было честно акцентировано внимание на потребности в высококачественных моделях магнитофонов и лучшем качестве магнитных лент.
Все — пока катушечное (бобинное). Аудиокассеты пока только в планах.
Благодаря некоторым закулисным :-) действиям удалось сразу стандартизировать в СССР и США 5-штырьковый разъём (штекер и гнездо). За двумя главными странами мира автоматически подтянулись и другие. На самом деле стандарт касается не только 5 штырьковых, но и с иным количеством контактов и для другой аудиоаппаратуры.
И подобные вещи в области стандартов касались намного более обширных тем, чем только способы подключения магнитофонов к первому протокомпу :-) и даже не только стандартов последовательного и параллельного портов.
Очень хорошо, что в своё время я игрался не только в эмуляторах 8-биток, но и держал в руках извлечённые из кладовки реальный клон ZX, реальный магнитофон, и видел (и даже «потыкался») в работающую конструкцию телевизор + бытовой комп + «кассетник».
Мои воспоминания в своё время очень верно сориентировали нас по части магнитофонов. Детали же по архитектуре «олдовых» лично для меня ПК были накопаны по крохам в электронных оригинальных материалах.., набранных в процессе увлечения эмуляцией бытовых компов 80-х.
* * *
..Возвращаясь к рассказу о комплексе ПО, за годы пятилетки к моменту выхода М-4 в серию, программистами НИИВТ были созданы:
* Операционная система ОС-1 (OS-1), являющаяся неким гибридом CP/M, MSX-DOS и TR-DOS, и имеющая две ветки развития версий — загружаемая из своего отдельного ПЗУ и с магнитного барабана.
* Стандартное ПЗУ М-4 с тем самым местным «бейсиком» имени Ады Лавлейс.
И многое другое ПО, которое будет перечислено далее и о моментах разработки которого, с описанием возможностей первых образцов программ новых типов, я расскажу.
Сейчас, когда идёт 1962 год и на моём ПК (на котором я набираю эти строки воспоминаний для своих мемуаров, которые, скорее всего, увидит очень мало людей), запущена уже первая коммерческая многозадачная ОС с графическим интерфейсом, его ЦП работает на 25 мГц, содержит свыше 200000 транзисторов и выполнен по проектным нормам 1500 нм (1,5 мкм), и мне сначала хочется рассказать, как в самом начале разработки комплекса ПО первого «протокомпа» радикально решалась «ложная дилемма РУС/LAT»..
Глава 7 — Ложная дилемма РУС/LAT. Часть II
(..из неизданных мемуаров Рожкова Н.Е., хранящихся в его семейном архиве..)
Вкладывая в самый фундамент железячно-софтверной экосистемы, формировавшейся в проекте М-4 «Стандарт 256», в котором кириллица была на равных правах с латиницей, мы пятеро (Брук, Лебедев, я, Ш-Б и Ляпунов), определявшие курс развития ИТ, пожалуй, пока аж всего мира, оказались перед неожиданной проблемой из разряда почти что идеологических :-)
Которой, по сути, не было в моём прошлом.
СССР, как я отрывочно помнил, после того, как от машкодов двинулись к языкам программирования высокого уровня, пытался продвигать что-то своё, на русском, но.. в условиях Железного занавеса — «не взлетело» даже у себя, при попытках использовать массу софта с Запада.
Здесь же, была иная обстановка. И с бонусами послезнания и с кое-каким.. ну, не с сердечным согласием, а достаточно мирными отношениями, базирующимися на обоюдном желании ИВС и ФДР не разжигать высасывающую из обеих сторон ресурсы и жизни иную инкарнацию холодной войны.
Особенно в условиях послезнания, которое могло, в случае конфликта, наоборот подвигнуть стороны на резкие движения в попытке вложиться в теоретически всесокрушающий «первый мега-удар».
Но я, в отличие от четверых других «соучастников», не испытывал иллюзий по поводу того, что взамен стандарта латиницы и наглосаксонской лексики в языках программирования удастся «продвинуть наше, советское» :-)
Даже совещание было (в конце 1944-го) в наркомате в Москве у Маленкова «на ковре». Где меня попросили объясниться. Отчего я, в целом всячески ратующий и активно работающий на Союз в области ИТ, не испытываю «тут» положенного энтузиазма.
* * *
Для того, чтобы понять, почему этот вопрос встал ребром именно при начале разработки комплекса софта для М-4, а не для предыдущих трёх моделей, необходимо некоторое пояснение:
Фактически, тот двуязычный ассемблер-автокод, который был создан для М-1/2/3, был на тот момент искусственным конструктом, который работал «на бумажке» и «на будущее». Ибо программисты, освоившие вычислители первого поколения, создавали крайне компактные (обусловленные крайне ограниченным размером ОЗУ) программы, машинный код которые «вылизывался» (точнее, продумывался и проверялся) заранее много раз. Ибо никаких (вообще никаких) средств отладки и прочего и близко не было :-) за исключением доступного для единиц моего эмулятора первых вычислителей.
Именно на М-4, первом представителе второго поколения вычислителей, который, обладал солидным для этих времён ОЗУ в 48 кб, мы получали возможность работы программистов не просто на машине с АЛУ с неким эквивалентом процессора Z80 (с которого мы слизывали систему команд, как и ранее — её «урезанный набор» с i8080/КР580), но и с большим комфортом при написании программ в, опять же, некоем аналоге ассемблера Zeus. В котором для, например команды, помещающей 3 в регистр A процессора (точнее, пока АЛУ) нужно было набрать в будущем редакторе ассемблера относительно удобоваримую для восприятия и читабельную строчку
LD A,3
..вместо вбивания «штекерным вводом» (или вводом через через телетайп или через перфокарту) соответствующего
3E 03
машинного кода!
Наш же будущий ассемблер бы «спокойно», отловив все возможные синтаксические ошибки прогера, после их исправления, провёл бы трансляцию текста с приятными людскому глазу мнемониками ассемблера в машкод!
Всё было просто, верно и красиво. И убыстряло процесс программирования «в машкодах» (точнее, уже действительно на ассемблере-автокоде)
И параметры железа (объём ОЗУ) вполне позволяли..
Но!
Мы должны были решить сразу дилемму:
Пытаемся ли мы с нуля «прогнуть» будущий мир прогеров учить русский..
..и вместо привычного МНЕ LD (то бишь LOAD) писать ЗГ (ЗАГРУЗИТЬ)?
Ну и далее, определиться с этим вопросом так со всем ПО для разработчиков и юзеров!
т.е
LD A,3
или
ЗГ A,3 (тут ещё вставал