«Сделай сам», или компьютер из Югославии

i6hmvaakame5suscqxpcrnjjabg.png

Компьютер Galaksija был увлечением многих жителей Югославии 1980-х годов, которые создавали собственные устройства буквально на коленке. Идея, стоящая за всем этим, была проста — сделать технологию доступной для всех. Как родилась эта идея и что из неё получилось, рассказывает Cloud4Y.

Технологии в СФРЮ


Социалистическая Федеративная Республика Югославия была политической аномалией. Она признавалась СССР социалистическим государством и участвовала в работе совета экономической взаимопомощи, но держалась особняком. Наряду с Египтом, Ганой, Индией и Индонезией в стране было создано «движение неприсоединения».

Выбрав индивидуальный путь развития, Югославия была вынуждена самостоятельно справляться со многими проблемами, в том числе логистическими. Развитая во время войны оборонка и множество промышленных предприятий нуждались в заказах, а также эффективном управлении производством и поставками. Эта потребность дала толчок к развитию местной компьютерной индустрии.

Значительный вклад в этот процесс внёс Райко Томович, югославский робототехник, который также принимал непосредственное участие в изобретении первой в мире искусственной руки с пятью пальцами. Вместе с командой математиков и инженеров-механиков он работал в Белградском институте электросвязи и электроники имени Михайло Пупина, разрабатывая технологии производства оборудования с использованием «местных» инструментов и деталей. Повышение уровня жизни в течение 1960-х и 1970-х годов привело к необходимости все более широкого применения компьютеров (в бухучёте, госуправлении и т.д). Югославская компьютерная культура, пусть и своеобразная, процветала благодаря интенсивной господдержке.

Компьютеры тогда были дорогими. Средняя цена Iskradata 1680, Sinclair ZX81 или Commodore 64, стандартных машин потребительского уровня, установленных в госучреждениях, бухгалтерских фирмах и научных лабораториях, во много раз превышала месячную зарплату среднестатистического югославского рабочего. Мешали и жёсткие ограничения, наложенные страной на импорт любого товара стоимостью более 50 немецких марок. Эта сумма была значительно ниже той, что требовалась для покупки покупки 8-битного микрокомпьютера, изготовленного за пределами Югославии.

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

Рождение идеи


Тем не менее, оставались и самоучки, которые своими силами двигали компьютеризацию страны вперёд. Одним из них стал любитель радиотехники и компьютерной электроники Войя Антонич. Заметим, что Антонич к этому времени был уже известным инженером. Он разработал Arbitar, официальную систему хронометража, использовавшуюся на нескольких балканских лыжных соревнованиях, а также интерфейс для передачи кадров с монохромных мониторов на 16-миллиметровую плёнку.

Во время отпуска в Черногории Антонич изучал документацию новой линейки однокристальных процессоров CDP1802 и думал о возможности формирования изображения средствами центрального процессора. Хотя CDP1802 и был для этого слишком примитивным, возможности Zilog Z80 казались для этого вполне достаточными.

Это дало ему идею. Вместо использования сложного и дорогого видеоконтроллера, Антонич решил изучить возможность создания компьютера, чья блочная графика 64 × 48 была полностью сгенерирована, используя только дешевый микропроцессор Zilog Z80A — процессор, который можно легко приобрести в магазинах электроники по всей Югославии. На момент возвращения в Белград у Войя уже была концептуальная диаграмма компьютера, процессор которого управляет генерацией изображения. Конечно, такой подход сильно снижал производительность машины, зато в теории значительно упрощал схему и уменьшал стоимость.

Вернувшись домой, Антонич проверил свою идею и обнаружил, что она работает! Эффект от его вмешательства был поразительным: он снизил общую стоимость компьютера и оптимизировал его дизайн. Однако ещё важнее было то, что схема получилась настолько простой, что пользователи могли собирать компьютер самостоятельно. Давняя приверженность открытому аппаратному и программному обеспечению позволила изобретению Антонича разлететься по всей стране.

Народное признание


В то время, когда Антонич занимался своим компьютером, журналист и программист Деян Ристанович написал положительную статью о компьютерных технологиях для югославского научно-популярного журнала «Галаксия». Вскоре после публикации этой статьи главред «Галаксии» Йова Регасек получил необычное письмо. В нём читатель просил посвятить следующий выпуск журнала компьютерам.

К идее отнеслись скептически, однако Регасек поручил Ристановичу возглавить этот проект. И два энтузиаста нашли друг друга. Антонич как раз искал место для публикации диаграмм для своего нового «народного компьютера». У него были варианты с Elektor из Германии и BYTE из США, но эти журналы стоили дорого, а доступность идеи была в приоритете. Очевидным выбором был журнал «SAM», публикуемый в Загребе, но с ним был неудачный опыт сотрудничества. Поэтому, когда общий друг свёл Ристановича и Антонича, они быстро обо всём договорились. Проект нашёл свой дом в «Галаксии».

ip-e_wxzc56vubfqhrsgzicrvyy.jpeg
Йова Регасек (слева) и Войя Антонич за сборкой прототипа

Специальный 100-страничный выпуск приложения «Компьютеры в вашем доме» (Računari u vašoj kuć) вышел в декабре 1983 года (хотя и был датирован январём 1984-го). Большая часть его была посвящена компьютеру Антонича: в него входили не только диаграммы, но и подробные инструкции по сборке схемы, места хранения для приобретения самодельного оборудования, адреса для заказа по почте для получения встроенных комплектов и каналы, через которые можно было легально заказать аксессуары из-за рубежа. Югославские компьютерные энтузиасты решили назвать проект в честь журнала, и никто даже не думал, что читательская аудитория по этому вопросу превысит обычный тираж «Галаксии». По словам Деяна Ристановича, тираж в 30 000 экземпляров был раскуплен за несколько недель, и его пришлось четырежды (!) допечатывать.

Монтажная схема печатной платы

Войя Антонич вспоминал, что за день до выхода номера он вместе с Деяном Ристановичем и Йовой Регасеком пытался угадать, сколько читателей попробуют создать «Галаксию». Звучали варианты от 50 до тысячи человек. Более-менее правильный ответ они узнали, когда выпустили 120 000 экземпляров журнала. В редакцию пришло свыше 8000 писем от читателей, создавших свой собственный компьютер. Их число может быть и больше, так как Galaksija распространялся в форме комплекта «сделай сам», но его можно было собрать и полностью самостоятельно. Многие энтузиасты не заказывали ни печатные платы, ни прошитые ПЗУ, добывая эти комплектующие самостоятельно. Позже компьютер предлагался и в полностью собранном виде. Цена набора для сборки в минимальной комплектации (только ПЗУ A, 4 КБ ОЗУ) в 1984 году составляла 45 500 динар (181 советский рубль).

gmjnujeb1ovofcorgtogfohfiba.jpeg
Страницы того самого журнала

Компоненты набора для сборки производились и поставлялись из различных источников: MIPRO и Elektronika, совместно с Институтом электроники и вакуумной технологии — поставляли печатные платы и клавиатуры; Mikrotehnika (Грац) — интегральные схемы. Войя Антонич лично прошивал все ПЗУ, сотрудники редакции журнала «Галаксия» готовили печатные материалы и организовывали рассылку заказчикам. Позже институт, ответственный за подготовку школьных учебников и пособий, совместно с Elektronika Inženjering начали массовое производство компьютеров «Galaksija» для поставки в школы.

Каким был компьютер


a1o9jtnlbbp9xelr1izcfw_rc2g.png

Технологические ограничения устройства помогли ему проявить его удивительные возможности. Микрокомпьютер Антонича содержал только 4 Кбайт памяти программ — сущая ерунда по сравнению с любым современным ноутбуком. Из-за этого ограничения система могла отображать только три сообщения об ошибке из одного слова: пользователи получали «WHAT?» если их основной код имел синтаксическую ошибку, «HOW?» — если их запрошенный ввод был не распознан, и «SORRY», если машина превысила свой объем памяти. 4K EPROM — стираемое программируемое ПЗУ — было упаковано настолько плотно, что некоторые байты данных использовались для разных целей. Благодаря этому решению прошивка Антонича служит доказательством того, что можно использовать более 100% памяти программ.

1whcnpmfbqljubmsp-ee1ndxgmw.png
Внутри Галаксии

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

Как и другие компьютеры того времени, кассетный порт Галактики был основной системой хранения. Хотя большинство других компьютеров автоматически запускали программу после загрузки ленты (это была примитивная защита от копирования), приверженность Антонича открытому ПО сыграла свою роль. После загрузки программы пользователи должны были ввести команду «RUN», чтобы заставить ее работать. Этот дополнительный шаг, пусть и простой, работал в качестве сдерживающего фактора для программистов, накладывающих какую-либо защиту от копирования на их работу. Ленту можно было легко вводить, редактировать или копировать в массовом порядке. Идея свободного аппаратного и программного обеспечения активно поощрялась: совместное использование, совместная работа и распространение ПО были интегрированы в сам смысл существования Галаксии.

Схема Галаксии
w_zaxnot-bu4g9yqep0uo6oo-dw.png

txte2i12qv2lz5v8kejy6qzyf9i.png

Галаксия не имела отдельного набора микросхем для формирования видеосигнала, вместо этого большую часть работы по формированию видеосигнала брал на себя центральный процессор, используя отдельный регистр сдвига. В начале 57-й строки полукадра срабатывало прерывание, в ходе обработки которого процессор формировал 208 строк изображения. 512 байт ОЗУ использовалась для хранения символов, составляющих текущий экран. Процессор брал из знакогенератора байт очередной 8-пиксельной строки символа, и передавал его регистру сдвига, который, в свою очередь, побитно отдавал этот байт на видеовыход.

Примерно две трети процессорного времени использовалось для формирования изображения, что, конечно, сказывалось на быстродействии машины. При записи и чтении данных с кассеты видеовыход отключался. В BASIC также была возможность отключать изображение для работы в «быстром» режиме.

Поскольку видеосигнал формировался программно, имелась возможность взять на себя формирование изображения, и некоторые программы пользовались этой возможностью, например, для вывода символов из собственного знакогенератора. Имея достаточно памяти даже без аппаратных переделок можно было выводить графику более высокого разрешения — до 256×208 пикселей — это требовало 6144 байт под видеопамять.

А вот такой была графика

Кассетный вход был довольно простым и использовал лишь несколько элементов для контроля уровня входного сигнала. Получаемый в результате 1-битный сигнал подавался на ту же микросхему, что отвечала за клавиатуру, поэтому на программном уровне магнитофонный вход выглядел как последовательность быстрых нажатий/отпусканий клавиши. Первоначально не предполагалось что компьютер будет выдавать звук, поэтому большинство программ не рассчитывали на это. Однако, выходной порт магнитофона можно было использовать в качестве 1-битного выхода на динамик.

Технические характеристики


  • Центральный процессор: Zilog Z80A на тактовой частоте 3,072 МГц
  • Память: из адресуемого пространства в 64 КБ, первые 8 КБ отдаются под ПЗУ, остальные под ОЗУ
  • Видеорежим: только текстовый, 32 × 16 символов, монохромный
  • Псевдографика: 2×3 точки на символ, 64×48 точек всего
  • Клавиатура: 54 клавиши
  • Звук: отсутствует в первоначальной спецификации, но может быть получен через магнитофонный выход
  • Устройство хранения данных: бытовой кассетный магнитофон, скорость записи 280 бит/с
  • Интерфейсы: cистемный порт, 44 вывода; Порт магнитофона — DIN-разъём; Видеовыход в формате PAL — DIN-разъём, чёрно-белый видеосигнал; Высокочастотный видеовыход — RCA-разъём

Чем ещё запомнилась Галаксия


n8wdrngt3elrlqux-e58xvig-sc.jpeg

Энтузиаст вычислительной техники Зоран Модли тоже узнал о новом компьютере из журнала. Зоран был ведущим и диджеем Ventilator 202 — известного радиошоу New Wave на сербском радио. Можно сказать, что Модли был чем-то вроде небольшой знаменитости у себя в стране.

В то время кассеты стали понемногу вытеснять виниловые пластинки. Портативные проигрыватели, такие как Sony Walkman, были на подъёме. Чувствуя потенциал этой ниши, осенью 1983 года Йова Регасек позвонил Модли с предложением радикально нового формата вещания. Идея заключалась в следующем: поскольку все компьютеры, включая Галаксию, запускали свои программы на кассете, то Модли может транслировать программы по радио в качестве звука во время своего шоу. Слушатели могли записывать программы со своих приёмников во время их трансляции, а затем загружать их в свои компьютеры.

Эта практика стала настоящей сенсацией, повысив популярность шоу Модли. В последующие месяцы Ventilator 202 транслировал сотни компьютерных программ. На протяжении часа до момента начала трансляции Модли предупреждал слушателей, что им пора взять оборудование и подготовиться к записи. Поклонники шоу тоже стали записывать свои программы и отправлять их в студию, чтобы другие могли использовать их наработки. Эти программы включали аудио- и видеозаписи, а также журналы, списки концертов, рекламные акции для вечеринок, учебные пособия, симуляторы полета и приключенческие игры.

В случае с играми пользователи могла загрузить программы с радио, изменить их, добавив новые уровни/задачи/персонажей, а затем отправить в шоу Модли для повторной передачи. По сути, это был свой способ передача файлов, используемый задолго до появления Всемирной паутины.

Чем всё закончилось


В середине 1980-х годов Югославия вступила в период глубокой политической и социальной неопределенности. Несколько кровавых войн и спад экономики положили конец культурному и компьютерному развитию. К тому времени ограничения на импорт и тарифы были смягчены, а компьютеры западного производства были приняты в стране как потребителями, корпорациями, так и государственными органами.

В течение короткого времени готовые Галаксии были массово отправлены в некоторые югославские средних школах и университетах. Дальнейшее развития линейки продолжилось с появлением 5 функциональных прототипов, однако в связи с их уже моральным и техническим устареванием работы над ними прекратились в 1995 году. Сам Антонич выбросил все пять своих личных прототипов Галаксии, о чём сильно жалел. Однако впоследствии в погребе дома Антонича был найден один уцелевший прототип, который был передан в музей науки и техники Белграда.

Хотя Galaksija по своим возможностям и не сравним с коммерческими компьютерами того же времени, но он оказал важное локальное влияние. Многие энтузиасты изучали работу компьютеров на этом примере — он оказался хорошим инструментом для изучения и экспериментирования.

Кроме того, важна была идея. Антонич показал, что вычислительная техника должна быть дешевой и доступной для всех. И что возможны альтернативные способы развития, пути, совершенно отличные от путей западных гигантов, таких как IBM, Microsoft, Hewlett-Packard или Apple. В этом смысле проект Антонича 1983 года был больше, чем просто микрокомпьютер.

Что ещё интересного есть в блоге Cloud4Y

→ Госдепартамент США создаст свой великий файерволл
→ Искусственный интеллект поёт о революции
→ Какова геометрия Вселенной?
→ Пасхалки на топографических картах Швейцарии
→ Firebase снова стала предметом исследований

Подписывайтесь на наш Telegram-канал, чтобы не пропустить очередную статью. Пишем не чаще двух раз в неделю и только по делу.

© Habrahabr.ru