У терминала DEC VT100, проданного в количестве более миллиона штук, был дисплей 80?24 символа

Чем объяснить популярность терминалов 80?24 и 80?25 символов? Недавняя запись в другом блоге подвигла меня на небольшое исследование. Источником строк длиной в 80 символов очевидно являются перфокарты, и об этом пишут довольно часто. Однако что насчёт 24 или 25 строк на экране? Теорий существует много, но я нашёл простой ответ: IBM, а в частности, её доминирование на рынке терминалов. В 1971 году IBM ввела терминал с дисплеем 80?24 символа (модель 3270), и вскоре он стал наиболее продаваемым терминалом, заставив остальные равняться на размер 80?24. Дисплей для IBM PC добавил ещё одну строку, и сделал размер 80?25 стандартом в мире ПК. Влияние этих систем остаётся в силе и десятилетия спустя: строки длиной в 80 символов являются стандартами по сей день, как и терминальные окна 80?24 и 80?25.

В этой статье я обсужу эту историю в деталях, включая некоторые другие системы, сыгравшие в ней ключевую роль. Рынок ЭЛТ-терминалов начался, по сути, с выхода IBM 2260 Display Station в 1965-м, созданной на основе таких занятных технологий, как звуковые линии задержки. Это привело к появлению популярного дисплея IBM 3270, и далее, к распространённым и недорогим терминалам типа DEC VT100. В 1981 году IBM выпустила микрокомпьютер DataMaster. Сейчас он практически забыт, но он сильно повлиял на IBM PC, включая и его дисплей. Также в статье изучается рынок терминалов 1970-х и 1980-х годов; из них становится ясно, что популярность размеров дисплеев определяли рыночные, а не технологические силы.

Некоторые теории касательно размеров 80?24 и 80?25


Аргументы о происхождении размеров терминалов выдвигаются уже несколько десятилетий, но в упомянутой уже статье была представлена детальная и интересная теория. Вкратце, там сказано, что дисплей 80?25 использовался потому, что он был совместим с 80-столбцовыми перфокартами от IBM, хорошо умещался на телеэкране с соотношением сторон 4:3, и помещался в RAM объёмом 2К. Это привело к появлению таких терминалов размера 80?25, как DEC VT100 в 1978-м. Его огромная популярность сделала его стандартом, и породила изобилие терминалов 80?25. Такова, по крайней мере, теория.



80-столбцовые дисплеи и правда произошли от перфокарт, и VT100 действительно стал стандартом, но дальше эта теория разваливается. Самая большая проблема в том, что дисплеи VT100 имели размер 80?24, а не 80?25. Кроме того, в инструкции описано, что у VT100 была память объёмом 3K, из которых 2,3 К использовал экран, а микропроцессор 8080 использовал остальное. Каждая строка хранилась в памяти с тремя дополнительными байтами в конце, использовавшимися в качестве указателей для прокрутки. Поэтому видеопамять терминала не вмещалась в 2К. Наконец, до 1980-х большинство дисплеев имели размер 80?24, а не 80?25.

На сайтах Software Engineering StackExchange и Retrocomputing StackExchange предлагались и другие теории, утверждавшие, что терминалы 80?24 появились по таким техническим причинам, как частота обновления телеэкранов, размеры памяти, типографика, история пишущих машинок, и так далее. Однако у теорий, по которым дисплей 80?24 является неизбежным следствием технологий, есть фундаментальная проблема: в середине 1970-х у терминалов были десятки различных вариантов размера, к примеру, 31?11, 42?24, 50?20, 52?48, 81?38, 100?50 и 133?64. Ясно, что никакие технологические ограничения не заставляли терминалы принимать определённый размер. Наоборот, с улучшением технологий все эти терминалы исчезли, и к началу 1980-х в основном остались терминалы размером 80?24. Это говорит, что ключевым фактором стала стандартизация, а не технологии.

Кратко просуммирую, почему технические факторы не сильно влияли на размер терминала. Телевизоры в США использовали 525 линий развёртки и частоту обновления в 60 Гц, а 40% терминалов использовали другие значения (в 1980-х домашним компьютерам приходилось работать с NTSC-телевизорами со своими ограничениями, поэтому они часто использовали строки длиной в 40 или 64 символа). Частота и полоса пропускания не заставляли делать дисплеи определенного размера, поскольку терминалы выводили символы с различными размерами матриц.

Растровый терминал рисует каждый символ из матрицы точек. В 1975 году чаще всего использовались матрицы 5х7 и 7х9. Часто у матрицы были поля – Apple II использовал матрицу 5х7 с полями, что в итоге составляло поле размером 7х8 точек. Некоторые системы (к примеру, IBM CGA) использовали матрицу 8х8 без полей для поддержки графических символов, изображения которых соприкасались друг с другом. Другие системы применяли более крупные матрицы. IBM Datamaster использовал матрицу 7?9 точек на поле в 10?14 точек, а у Quotron 800 была матрица 16?20. В итоге терминал размером 80?24 символов может потребовать совершенно разного количества пикселей в целом, в зависимости от размера матрицы. В этом состоит недостаток утверждения, что размер терминалов определялся количеством линий развёртки и пропускной способностью.

Хотя стоимость памяти была значительной, объёмы чипов DRAM росли в четыре раза каждые три года, что делало память лишь временным ограничением. Соотношение сторон экрана не было определяющим фактором, поскольку часто пропорции символов не совпадали с пропорциями экрана. Даже на ЭЛТ с пропорциями 4:3 терминалы могли использовать текст других пропорций, оставляя часть экрана пустой. Не были редкостью и особые размеры терминалов – к примеру, экран Datapoint 2200 был необычно вытянутым, чтобы повторять размеры перфокарты. У Teletype Model 40 было необычное соотношение сторон экрана, 2:1. Технология, конечно, влияла на процесс, но она не остановила ранних производителей от создания разных терминалов, от 32?8 до 133?64.


Teletype Model 40

Рост популярности ЭЛТ-терминалов


Теперь нам может помочь небольшая часть истории ЭЛТ-терминалов. Многие читатели знакомы с ASCII-терминалами – такими, как отдельные терминалы DEC VT100, последовательные терминалы, соединяющиеся с ПК, или последовательные порты на платах типа Arduino. Терминалы такого типа происходят от телепринтеров – электромеханических клавиатур/принтеров, появившихся в начале XX века. Более всего из них известен Teletype, пользовавшийся популярностью у газетчиков и компьютерщиков в 1970-х (устройство Linux /dev/tty названо в его честь). Телетайпы обычно выводили строки по 72 символа на бумажном рулоне.


Teletype ASR33 передавал ASCII символы и печатал по 72 символа в строке. С 1963 по 1981 год было произведено сотни тысяч копий этой модели. Слева расположено устройство для чтения перфоленты и перфоратор.

В 1970-х рынок замены ЭЛТ-терминалов был крупным и прибыльным. AT&T представила Teletype Model 40 в 1973 году, и у этого ЭЛТ-терминала дисплей выдавал 80?24 символа. Многие другие компании представили конкурирующие ЭЛТ-терминалы, и «Teletype-совместимые» устройства стали целым сегментом рынка. К 1981 году эти терминалы использовались в разных ролях, а не только в качестве замены телепринтеров, и их название поменялось на «ASCII-терминалы». К 1985 году ЭЛТ-терминалы достигли небывалого успеха, и в США их работало порядка 10 млн штук.


Терминал из линейки IBM 3270, конкретно – модель 3278.

Однако существует параллельный мир терминалов мейнфреймов, который может быть незнакомым для многих читателей. В 1965 году IBM представила IBM 2260 Display Terminal, и теми самым «одобрила» ЭЛТ-терминалы, которые до того считались «модной новинкой». Этот терминал доминировал на рынке, пока IBM не заменила его более дешёвым и продвинутым IBM 3270 в 1971. В отличие от асинхронных ASCII-терминалов, передававших отдельные нажатия клавиш, эти терминалы были настроены на блочную работу, по сути обмениваясь с мейнфреймом крупными блоками символов. Терминал 3270 был довольно-таки «умным»: пользователь мог заполнять размеченные поля на экране, а потом передавать все данные сразу, нажав клавишу Enter (именно поэтому у современных клавиатур есть клавиша Enter). Отправка блока данных была более эффективным методом по сравнению с отправкой отдельных нажатий, и позволяла мейнфреймам поддерживать сотни терминалов разом.

На диаграмме ниже показано состояние рынка терминалов на 1974 года. Управлял им IBM 3270, вытеснивший к этому моменту 2260-ю. Имея 50% рынка, IBM по сути определяла характеристики ЭЛТ-терминала. Замена телепринтеров была большим и влиятельным рынком; Teletype Model 40 был скромной моделью, но с растущей важностью. Хотя вскоре основным игроком станет DEC, в том году он находился в секторе «независимые системы».



Терминал с видеодисплеем IBM 2260


IBM 2260 представили в 1965, и это был один из первых терминалов с видеодисплеем. Видеодисплеи с векторной графикой появились за много лет до этого, ещё в начале 1950-х. Это были векторные терминалы, получавшие картинку при помощи произвольных линий, а не пикселей. И хотя они могли отображать буквы при помощи линий, они были чрезвычайно дороги и использовались для построения графиков.

IBM 2260 выполнял три роли: удалённый ввод данных вместо перфокарт, запросы (просмотр записей в базе данных), и системная консоль. Этот компактный терминал весил 20 кг, а его размер позволял уместить его на месте стандартной пишущей машинки. Посмотрите, какая у него толстая клавиатура: он использовал сложный механизм старого перфоратора от IBM, с рычагами, дисками и электромагнитами.


IBM 2260 Display Station

Вас может удивить, что IBM смогла создать такой компактный терминал при помощи технологий 1965 года. Фокус в том, что это был просто ЭЛТ-дисплей с клавиатурой; вся управляющая логика, генерация символов, хранение и интерфейсы содержались в шкафу 450 кг весом (фото внизу). Терминал с клавиатурой назывался IBM 2260 Display Station, шкаф с логикой — IBM 2848 Display Control, а всю систему целиком люди называли просто 2260-я. В шкафу содержались схемы для управления несколькими терминалами одновременно, вплоть до 24 штук. Он генерировал для них пиксели и отправлял видеосигналы на мониторы, которые могли располагаться на расстоянии до 600 м от него.


IBM 2848 Display Control поддерживал до 24 терминалов. Шкаф был полутора метров в ширину и весил 450 кг.

Одна из наиболее интересных особенностей 2260-й – звуковые линии задержки, использовавшиеся для хранения пикселей. Биты хранились в виде звуковых импульсов, отправляемых в никелевый провод длиной порядка 15 м. Импульсы шли по проводу и выходили с другого его конца ровно через 5,5545 мс. Отправляя импульс (или не отправляя его для обозначения 0) каждые 500 нс, провод мог хранить в себе 11 008 бит. Пара проводов создавала буфер, хранивший пиксели для 480 символов.

Линия задержки выдавала 1 бит каждые 500 нс. Две линии задержки были соединены в буфер, обеспечивая выдачу битов в два раза быстрее: каждые 250 нс. Данные были разделены на 256 «слотов», по одному на вертикальную линию развёртки (слоты были чистой концепцией, поскольку линия задержки подавала просто поток битов). В 240 слотах содержались данные, а 16 были пустыми для горизонтального возврата луча. В каждом слоте хранилось по 86 битов: 7 битов для 12 рядов символов, и два бита чётности (каждая линия развёртки делилась на два дисплея, поэтому слот представлял 6 символов на чётном дисплее и 6 на нечётном). Шесть слотов составляли вертикальный столбец символов: один слот хранил двоично-десятичное значение, а пять – пиксели. Таким образом, в каждом буфере хранились данные для 480 символов для поддержки дисплеев 40х6. Два буфера поддерживали пару дисплеев 40?12, а четыре – пару дисплеев 80?12.


Модуль звуковой задержки для дисплея IBM 2260. В нём содержалось порядка 15 м никелевого провода в катушках.

У звуковых линий задержки было несколько проблем. Во-первых, приходилось постоянно обновлять данные: когда биты выходили с одного конца провода, нужно было отправлять их ему обратно на другой конец. Во-вторых, у линии задержки не было произвольного доступа: для обновления символа приходилось ждать несколько миллисекунд, пока все биты пройдут свой путь. В-третьих, линия задержки была чувствительна к вибрации; в Википедии написано, что даже тяжёлые шаги могли нарушить работу экрана. В-четвёртых, скорость работы линии задержки зависела от изменений температуры; перед использованием ей нужно было разогреваться вплоть до двух часов подряд в шкафу с контролируемой температурой. Учитывая все эти недостатки, вы можете удивиться, почему же эти линии задержки всё же использовались. Главная причина – они были гораздо дешевле памяти на прошитых сердечниках. Последовательная природа линии задержки также хорошо сочеталась с последовательной природой растрового дисплея.


У никелевого провода в катушке были преобразователи на обоих концах (в центре и слева внизу, где к ним подсоединены перекрученные провода). Для подстройки задержки стержень с проводом (слева внизу) сдвигал положение преобразователя на проводе. Металлические коробки на концах проводов – амортизаторы, предотвращающие отражение.

На фото ниже показан экран 2260 Model 2, с 12 строк по 40 символов (у Model 1 было 6 строк по 40 символов, а у Model 3 – 12 строк по 80 символов). Отметьте двойное расстояние между строками; на самом деле управляющий модуль генерировал 24 строки текста, но строки через одну отправлялись на два разных терминала. Очень странный подход, однако он разделял высокую стоимость управляющего железа между двумя терминалами. Ещё одной странной характеристикой 2260-й были вертикальные линии развёртки, в отличие от горизонтальных линий развёртки у большинства видеодисплеев и телевизоров.


Дисплей IBM 2260

Каждый символ обозначался 6-битным кодом EBCDIC, что давало набор из 64 символов (без строчных букв). Ещё одна странная особенность 2260-й – преобразование 6-битных символов в блок пикселей 5х7. Для этого использовалась специальная матрица на магнитных сердечниках, в которой были сердечники только для единичных битов, а для нулевых – не было, поэтому она работала, как память только для чтения. В итоге можно было видеть символы на матрице сердечников. Матрица хранит девять 7-битных слов для каждого из 64 символов: первые пять слов хранят блок пикселей, а оставшиеся четыре – это таблица для преобразования кода символа EBCDIC в ASCII или обратно, или коды для управления принтером.



Линии задержки хранили пиксели, которые нужно было выводить, а ещё они хранили коды EBCDIC для каждого символа. Фокус был в использовании пустой колонки пикселей между символами, обеспечивавшей расстояние между символами по горизонтали. Система использовала его для хранения двоично-десятичного значения символа, но гасила дисплей при показе этой колонки, чтобы это значение не выводилось на экран в виде пикселей. Это позволяло хранить 6-битное значение символа практически нахаляву.

Интересующий нас вопрос состоит в том, почему у 2260-й был дисплей с 12 строками из 80 символов? Длина строки в 80 символов позволяла терминалам занять место 80-столбцовых перфокарт (у моделей с 40 символами в строке карта разбивалась на 2 строчки). Что до 12 строк, это, судя по всему, то количество, которое линии задержки могли обеспечивать без мерцания.

250 нс на пиксель и частота обновления в 30 Гц дают максимум в 133 333 пикселя, которые можно вывести на экран. При символах 6х7 пикселей и строках по 80 символов в строке, на экран можно вывести 39,7 строк. Вертикальное обновление отъедает треть времени из-за взаимодействия с линиями задержки, что даёт нам 26,5 строк. Поскольку 2260 разделяет пиксели межд двумя дисплеями, это даёт по 13,25 строк на дисплее, если не считать горизонтального обновления. Следовательно, железо может поддерживать порядка 12 строк текста (хотя, возможно, сначала IBM решила поддерживать 12 строк, а потом подстроила под это железо).


Фото из инструкции оператора 2260

IBM 2260 пользовалась бешеным успехом, что привело к увеличению популярности ЭЛТ-терминалов. Влияние, оказанное IBM 2260, показано в отчёте по терминалам 1974 года; там перечислено порядка 50 терминалов, совместимых с IBM 2260. У IBM 2260 не было дисплея 80?24 (хотя внутри себя машина и генерировала матрицу 80?24), но были дисплеи 40?12 и 80?12, что сделало дисплей 80?24 следующим логичным шагом.

Видеодисплей IBM 3270


В 1971 году IBM выпустила видеодисплей IBM 3270, продолживший доминирование на рынке ЭЛТ-терминалов. Он поддерживал дисплей 40?12, чтобы обеспечить возможность плавного перехода с 2260-й, но также поддерживал и более крупный дисплей 80?24. У 3270-й было больше возможностей, чем у 2260-й – защищённые поля ввода, более эффективные модели передачи данных, текст настраиваемой интенсивности. Также он был значительно дешевле 2260-й, что обеспечило ему популярность.

В отчёте Datapro 1974 года указано, что дисплей системы IBM 2260 стоил от $1270 до $2140, а контроллер – от $15 715 до $86 365. По сравнению, дисплей IBM 3270 стоил от $4 000 до $7 435, а контроллер — от $6 500 до $15 725. Часть электрики переехала из управляющего модуля в сам дисплей, что отразилось на их стоимости.


Терминал IBM 3270. Световое перо использовалось для выбора полей данных вместо мыши. Это более поздняя модель в линейке терминалов, 3278; на фотографии видно 43 строки по 80 символов

Технологии, использованные в 3270-й, были из следующего поколения по сравнению с 2260-й. Электронные лампы и транзисторы были заменены микроэлектронными схемами типа SLT, похожей на интегрированные микросхемы. Вместо звуковых линий задержки использовались 480-битные сдвиговые регистры MOS. Модель 40?12 использовала один банк сдвиговых регистров для хранения 480 символов. В более крупной модели четыре банка сдвиговых регистров (1920 символов) использовались для поддержки дисплея 80?24. Иначе говоря, в 3270-й хранилище работало блоками по 480 символов для совместимости с 2260-й, а использование четырёх блоков давало дисплей 80?24. 480 бит – странный размер, не являющийся степенью двойки; но, в отличие от матричных чипов RAM, у сдвиговых регистров не было адресных битов, их структура была змееподобной, поэтому они могли быть произвольного размера:


Сдвиговый регистр Intel 1405. Он не использовался в IBM 3270, но работал в других терминалах, например, в Datapoint 2200.

IBM обеспечивала всестороннюю поддержку ПО для терминала 3270. Это сильно повлияло на рынок терминалов, поскольку заставляло других изготовителей, желавших участвовать в гонке, производить совместимые терминалы. В частности, из-за этого совместимость с 3270-й и дисплей 80?24 символа стали стандартом де-факто. В 1977 IBM представила 3278-ю, улучшенную версию терминала 3270, поддерживавшую 12, 24, 32 и 43 строки данных. Также там была добавлена строка состояния, «область информации для оператора». Новые размеры в 32 и 43 строки не прижились, но строка статуса стала распространённой возможностью у терминалов конкурентов.

Отчёты по индустрии показывают изменение популярного размера терминала с 1970-х по 1990-е. Хотя в 1970-х (а, может, и раньше) уже были дисплеи размером 80?25, дисплей 80?24 был куда как более распространён. Широчайшее разнообразие размеров терминалов, существовавшее в 1974 году, со временем сократилось, и рынок в итоге остановился на 80?24. К 1979 году самым популярным терминалом была модель DEC VT100, имевшая дисплей 80?24, и проданная в количестве более миллиона экземпляров. Терминалы начали поддерживать размер 132?24 для совместимости с принтерами, печатавшими по 132 символа в строке, в особенности когда более крупные мониторы диагонали 15" начали дешеветь, однако самым популярным размером всё равно оставался 80?24. Даже к 1991 году размер 80?25 встречался очень редко.

IBM PC и популярность размера 80?25


Учитывая историческую популярность терминалов 80?24, почему же столько современных систем использует окна 80?25? И это тоже произошло благодаря IBM: дисплей 80?25 стал популярным с появлением в 1981 году IBM PC. Стандартная карта дисплея (MDA) выдавала монохромный текст 80?25, а карточка CGA выдавала 40?25 и 80?25 в цвете. Этот размер стал размером по умолчанию для консоли Windows, и типичным размером для окон терминалов на ПК.


IBM PC с дисплеем 80?25, который выводит карточка MDA (Monochrome Display Adapter)

Другие популярные в то время компьютеры использовали 24 строки, например, Osborne 1 и Apple II, поэтому мне было интересно, почему IBM PC использовал 25. Чтобы выяснить это, я связался с Дейвом Брэдли и Марком Дином, двумя инженерами, стоявшими у истоков IBM PC. Они объяснили, что IBM PC стал потомком забытого офисного компьютера IBM DataMaster, и многие проектные решения IBM PC вытекают из DataMaster. IBM PC досталась клавиатура от DataMaster, только её отсоединили от основного модуля. На обеих системах использовался BASIC, однако решение заказать интерпретатор BASIC для ПК у крохотной компании Microsoft изменило обе эти компании сильнее, чем кто-либо мог предположить. Обе системы использовали процессоры от Intel, 8-битный 8085 в DataMaster, и 16-битный 8088 в IBM PC. У них были одинаковые контроллер прерываний, контроллер DMA, параллельный порт и чипы таймеров. 62-контактная шина расширения ПК была почти идентичной таковой у DataMaster.


IBM DataMaster System/23 – микрокомпьютер, анонс которого был сделан в 1981 году, всего за месяц до IBM PC

Ниже приведена схема раннего проектного плана IBM PC. Он должен был использовать дисплей 80?24 от DataMaster (который обозначен кодовым именем LOMA), а также размеры 40?16 и 60?16, более подходящие для телевизоров. Также на схеме упомянута цветная графическая система с 280?192 пикселями, такого же разрешения, какое было у Apple II. Но в итоге IBM PC оказался не похожим на этот план.


18 кГц – это частота горизонтального сканирования, используемая картой MDA (18,432 кГц), и дающая большее разрешение, чем 15,750 у NTSC)

Разработчики IBM PC умудрились впихнуть чуть больше пикселей в дисплей, и получить размер 320?200. При использовании матрицы символов 8х8 обновлённый графический режим поддерживал текст 40?25 символов, а графический режим с удвоенным разрешением в 640?200 пикселей поддерживал текст 80?25. Монохромная графическая карточка (MDA) тоже давала размер 80?25. Иначе говоря, IBM PC в итоге стал использовать текстовый дисплей 80?25 потому, что на дисплее хватало пикселей, а также это отличало его от других систем, но эти причины не были главной мотивацией. В частности, разработчики ПК не были ограничены необходимостью обеспечивать совместимость с другими системами от IBM.

Заключение


Многие теории предлагали различные технические причины того, почему размер дисплея 80?24 (или 80?25) является естественным. Думаю, что широкое разнообразие размеров дисплеев в 1970-х доказывает, что искать технологическую мотивацию такого выбора не стоит. Размеры дисплеев просто сошлись к тому, что производила IBM – сначала это были перфокарты, потом терминал IBM 2260, потом IBM 3270, и потом IBM PC. Сначала на размеры терминалов влиял 72-столбцовый Teletype, однако и этот размер исчез в стремлении к совместимости с IBM. В итоге и появилась текущая ситуация с разделением на размеры 80?24 и 80?25.

Комментарии (32)


  1. n0isy
    22.11.2019 11:00

    Монохромная графическая карточка (MDA) — наверное MGA, как CGA — color graphics adapter


    1. Doomsday_nxt
      22.11.2019 11:01

      Monochrome Display Adapter


      1. Bedal
        22.11.2019 14:39

        именно! Причём на IBM PC можно было одновременно поставить оба (полностью разведены по портам и адресам буферов), и получить двухэкранную конфигурацию. И отладчики тех времён это понимали и умели сами запускаться на MDA, в то время как отлаживаемая программа работала на CGA.
        С тех пор я и привык с двумя экранами работать.


        1. Doomsday_nxt
          22.11.2019 14:40

          Какая прелесть… Порой читаю такие статьи (да и комментарии) и понимаю что поздновато я родился. IT тогда было намного интереснее и сложнее…


          1. Bedal
            22.11.2019 14:41

            Расстрою Вас: Вы правы. Тогда «программист» звучало ого-го! А сейчас на уровне бухгалтера. Если возраст позволяет — нужно бежать в нейросети. Это, на самом деле, другая профессия (что там — целый букет профессий будет), но и умение программировать и/или ориентироваться в IT совсем не лишнее.


        1. mistergrim
          22.11.2019 15:55

          Кстати, даже парочка игр такую конфигурацию использовала.


  1. Doomsday_nxt
    22.11.2019 11:01

    В последний части ответ на вопрос, почему инженеры IBM для IBM PC выбрали 80х25, вместо 80х24 — похоже звучит как «Потому что могли!»


  1. genew
    22.11.2019 12:58

    Эх, что-то захотелось снова Turbo Pascal запустить, теплый, ламповый.


    1. mkll
      23.11.2019 12:42

      Или Trubo Pascacal. :)


  1. gmini
    22.11.2019 13:17
    -1

    image
    в Штатах другой стандарт на перфокарты?


  1. gmini
    22.11.2019 13:56
    +2

    image


    1. Merzavets
      22.11.2019 23:06

      Нет, стандарт такой же (а как могло быть иначе, если ЕС1025, 1033, 1045 и т.п. были, по сути, клонами IBM/360/370). У вас в наличии "старорежимная" перфокарта, визуально размеченная под круглые просечки. Она ровно такого же размера. Если засунуть её в "современный" перфоратор, пробивающий прямоугольнички (как на картинке в статье), то получится именно 80 колонок.


  1. Denis_Chernyshev
    22.11.2019 14:01
    +2

    А мне вот давно интересно, терминал какой марки чинила В. Голдберг в фильме Джек-попрыгун.
    Кто определит?
    image


    1. gmini
      22.11.2019 14:27

      1. Denis_Chernyshev
        22.11.2019 19:02

        Ага, а я думал — Sperry это для красоты в фильме нарисовали.
        ОК, тогда это модель UTS 30 из серии интеллектуальных терминалов Uniscope.
        Построены на базе 8080, поддержка дисководов и принтеров, могут работать, как автономный CP/M компьютер.
        Возвращаясь к теме — поддерживают произвольное разрешение в диапазоне от 2х2 до 80х24.
        Выходит, что кадр с показом на экране советской аэробики есть художественный вымысел (а вот на IBM 2260 таки могло бы быть, теоретически).


  1. BubaVV
    22.11.2019 14:09

    Интересно, насколько эта память была шумная в слышимом диапазоне


    1. drWhy
      22.11.2019 14:44

      Ультразвук же.


  1. Victor_koly
    22.11.2019 15:36

    На обеих системах использовался BASIC, однако решение заказать интерпретатор BASIC для ПК у крохотной компании Microsoft изменило обе эти компании сильнее, чем кто-либо мог предположить.

    Как бы при появлении IBM PC мелкомягкие приобрели себе DOS:
    Согласно подписанному в ноябре 1980 года договору с IBM, Microsoft требовалось предоставить операционную систему для нового компьютера IBM PC, основанного на процессоре Intel 8086. Для этого Microsoft в мае 1981 года наняла Тима Патерсона для завершения адаптации 86-DOS к прототипу IBM PC, а затем в июле того же года полностью выкупила права на 86-DOS 1.10 за $75 тыс.

    А интерпретатор BASIC вроде как занимал 4 микросхемы ПЗУ, каждая имела объем, как BIOS.


    1. khim
      23.11.2019 01:17

      А интерпретатор BASIC вроде как занимал 4 микросхемы ПЗУ, каждая имела объем, как BIOS.
      Какие, нафиг, 4 микросхемы ПЗУ? Одна там микросхема. Все ревизии уже давно аккуратно собраны энтузиастами, благо их немного было. Это лет через несколько начали появляться десятки моделей каждый год, а вначале — они штуками мерялись.


      1. Denis_Chernyshev
        23.11.2019 17:54

        Пожалуйста, будьте внимательны. Прямо по вашей ссылке:

        Note that the files in the above links are for the BIOS only (chip U33). Cassette BASIC (chips U29 to U32) is not included.


        На PC 5150 ставилось 4 ПЗУ для Бейсика и одна для BIOS (5*8K=48K), а начиная с XT 5160 стало ставиться две ПЗУ (2*32K=64K). Причем, в 5150 BIOS умещался в одну ПЗУ 8К (и 4 ПЗУ с Бейсиком можно не устанавливать), а в 5160 BIOS занимает всю первую ПЗУ на 32К и частично залезает на вторую ПЗУ (обе ПЗУ обязательны для работы).


        1. khim
          23.11.2019 22:49

          Пожалуйста, будьте внимательны.
          Да, ступил. Извините. То есть Microsoft BASIC реально такой огромный был? Bloatware уже тогда началось?

          А откуда тогда взялись все эти бесконечные BASIC'и разумного объёма, влазившие в 8K ОЗУ вместе с программой (а на 16К — так и со всякими монстрами типа Star Trek'а)?

          P.S. И да, я понимаю, что между 8080 и 8086 есть разница и код для 8086 будет побольше… но не в 4-5 раз же!

          P.P.S. Кстати 5*8K = 40K, а не 48K… так что вам тоже надо быть внимательнее.


          1. MacIn
            24.11.2019 01:22

            Зависит, кмк, от библиотек, набора операторов, поддержки плавающей запятой и т.д.


            1. khim
              24.11.2019 01:48

              Плавучка есть во всех этих бейсиках. Вроде только Integer Basic без неё обходился. Можете запустить и посмотреть — там всякие синусы-косинусы имеются. Графики, правда, нет, но неужели она столько места занимает?


              1. MacIn
                25.11.2019 01:42
                +1

                Вики содержит также такую информацию:

                Altair BASIC… in its original version took 4 KB of memory. The following functions and statements were available: LIST,… GOSUB. There were no string variables in 4k BASIC and single-precision 32-bit floating point was the only numeric type supported. Variable names consisted of one letter (A–Z) or one letter followed by one digit (0–9), thus allowing up to 286 numeric variables.

                For machines with more memory, the 8 KB version added 31 additional statements and support for string variables and their related operations like MID$ and string concatenation. String variables were denoted with a $ suffix, which remained in later versions of the language. Later on, Microsoft released the 12k Extended BASIC, which included double precision 64-bit variables, IF...THEN...ELSE structures, user defined functions, more advanced program editing commands, and descriptive error messages as opposed to error numbers. Numeric variables now had three basic types, % denoted 16-bit integers, # denoted 64-bit doubles, and! denoted 32-bit singles, but this was the default format so the! is rarely seen in programs.


                Как минимум, развернутые сообщения об ошибках точно займут место.


                1. khim
                  25.11.2019 12:46

                  Как минимум, развернутые сообщения об ошибках точно займут место.
                  Но из вашего же описания видно, что в 12K они как-то влезали… а на PC, вдруг, требуется ещё 20K… куда, зачем, почему?

                  Впрочем это уже оффтоп, конечно…


              1. Victor_koly
                25.11.2019 10:01

                Бейсик не учил, но скажем в Паскале есть тип real и он не совсем честный тип с плавающей запятой. Кажется «эмулируется» на целых числах.


                1. khim
                  25.11.2019 12:49

                  Это да, большинство бейсиков на всех платформах так делают. IEEE 754-1985, как следует вот прямо из названия — это чуток поновее, чем IBM PC и даже IBM PC AT. Но ведь многочисленные бейсики на 6-7K тоже всё это умеют…


  1. miksoft
    22.11.2019 21:32
    +1

    Спасибо за перевод, а автору за рассказ!
    Я только теперь понял, что же это было — какое-то странное устройство из руин ЕС ЭВМ.

    Заголовок спойлера
    image


  1. Jef239
    23.11.2019 00:26

    Ну очень странно упоминать VT100 1978ого года и забыть про VT52 1975ого года (тоже 80х24) и тем более — про VT05 1970ого года (72x20)


  1. emmibox
    24.11.2019 05:30

    Возможно причина 80x25 не техническая — а кроется в эргономике зрения.
    Сам по себе размер 4x3 образует поле, в котором при определенной эргономике рабочего места и расстоянии до дисплея символы могут читаться глазами одновременном во всем объеме кадра без необходимости какого либо движения зрачка. Вопрос лишь в их размерах! Так вот 80x25 — скорее всего является цифрой наиболее близкой к нижней границе такого восприятия. Люди просто пришли к ней практическим способом — больше символов было не удобно ибо устают глаза — меньше не удобно, ибо мало информации влезало…


    1. khim
      24.11.2019 06:48

      Если бы дело было в эргономике, то мы бы и сегодня примерно такие размеры бы использовали. Однако же нет: на сегодняшних мониторах гораздо больше влазит текста и по горизонтали и по вертикали. И даже если сказать «это, типа, для того, чтобы разместить всякие менюшки и скроллбары...» — нифига. Даже ваше сообщение Хабр разбил на строки по 100 символов длиной.

      Да и, собственно, если бы вы прочитали статью, а не начали бы сразу комментарии писать не читая, то обратили бы внимание, что ширина 80 — куда как менее загадочна, чем высота 25. Потому что 80 символов — это, конечно, от IBM'овских перфокарт аж 1928го года, тут и думать не о чем… и там да — скорее всего речь шла об эргономике. А вот 25 откуда? Почему не 20 и не 40? Вот это — как раз интересный вопрос.


      1. emmibox
        24.11.2019 08:17

        Вы сегодня используете отбросы из индустрии кинорынка для масс-хомячков и тешите себя тем, что на них что то куда то больше влазит — но фотографически воспринять всю страницу текста уже больше не можете. Сидите только глаза ломаете.

        Но да — даже ХАБР поле собственно текстов коментариев в 4x3 вывел. Хотя вы не заметили…

        А вот многие профессиональные писатели до сих пор используют 80x25 в 4x3 и не собираются в этом ничего менять.