Пётр Соболев: «Мы просто смотрели, как что-то там летает, и тащились от того, как это сделано»



    Демосцена — разновидность творчества на стыке компьютерной графики, музыки и, собственно, программирования, а также сложившаяся вокруг него субкультура. Первые демоэксперименты относятся к 1980-м — времени, когда в Европе и США появилось достаточное количество домашних компьютеров, обладатели которых стремились заставить машину выполнять несвойственные ей задачи. Обычно это были короткие интро к взломанным компьютерным играм, созданные на Commodore 64, Amiga, ZX Spectrum. Расцвет демосцены пришелся на 1990-е, тогда же она пришла и в Россию.

    Пётр Соболев, также известный как frog, — один из организаторов компьютерного фестиваля ENLiGHT — первой в России демопати. В первой части интервью музейному проекту DataArt он вспоминает компьютеры 1980-х и рассказывает, как в нашей стране появились первые интро и демо.

    Начало


    — Я родился в Ленинграде в 1973-м. Мать и отец были инженерами-конструкторами в оборонке. В детстве я увлекался всякими железками, что-то паял по мелочи — какие-то простые схемы. Семья никакого отношения к вычислительной технике не имела, но в середине 1980-х в СССР возникла идея, что надо форсировать все, что связано с ЭВМ, и внедрять на производстве. У отца на заводе тоже стали этим заниматься. Закупили ЭВМ «Искра 226» — аналог Wang 2200, что-то среднее между домашней и профессиональной машиной. Она на микропроцессорных секциях собрана, такая специфическая архитектура, не похожая ни на что, в качестве основного языка там был Бейсик. Отец стал в этом участвовать, потому что на заводе в вычислительной технике никто не разбирался и любой, кто проявлял инициативу, мог взяться за это дело.


    «Искра 226» — «машина вычислительная электронная клавишная программоуправляемая», разработанная на Ленинградском электромеханическом заводе. Из коллекции Музея вычислительной техники в Москве

    Он стал приносить домой какие-то книжки, пытался что-то изучать. Насколько я помню, разбирался он в основном с базами данных. По сути, «Искра 226» — офисный компьютер, на предприятии использовался преимущественно в отделе кадров и для других подобных целей.


    Справочное руководство для специалистов и «всех желающих использовать в своей деятельности возможности программно-управляемых ЭВМ», 1988 г.

    Помню, в середине 80-х отец принес домой здоровенную распечатку по R-Base. Тогда это была достаточно популярная СУБД. В какой-то момент он позвал меня на завод, посмотреть на компьютеры. Но я интереса не проявил.

    На тот момент я уже почитывал всякие книжки, в общих чертах представлял, что такое компьютер. Даже пытался что-то паять по публикациям во всяких журналах. Но для себя решил: стану разбираться с компьютерами, только когда они будут у меня в свободном доступе. Раз в полгода куда-то ехать и дразнить себя — не хотелось.

    Недокументированные возможности


    Следующим этапом моего знакомства с вычислительной техникой стали микрокалькуляторы. Шел где-то 1986-й год. Мне купили МК-54. Базовых программируемых калькуляторов в середине 80-х в СССР было два — Б3-21 и Б3-34. На тот момент ни тот, ни другой уже не продавался. МК-54, что мы купили, был совместим с Б3-34.


    Демонстрация работы программируемого микрокалькулятора Электроника МК-54

    Надо сказать, что у Б3-21 и Б3-34 — разные системы команд, разная архитектура, а все книжки, которые мне попадались, были, к сожалению, про Б3-21. Это стало большой проблемой, потому что программирование для калькуляторов было, по сути, в машинных кодах. Ты некие значки вводишь, получается программа длиной, допустим, 100 команд. Она какие-то расчеты производила, или можно было сделать простую игру типа «крестиков-ноликов», где тебе выдается номер поля, в которое ты мысленно или прямо на бумаге ставишь крестик, а в какое нолик. Всё очень примитивно. Индикатор цифровой, никаких букв. Ну и никакой интерактивности в процессе работы программы.

    В 1986-1987 гг. в журнале «Техника молодежи» начала публиковаться серия рассказов Михаила Пухова — смесь научной фантастики и программ для калькулятора, чтобы читатель мог сам что-то запустить и попробовать. К примеру, посадка на Луну: вводишь цифрами тягу, направление, нажимаешь пуск, калькулятор считает и показывает, сколько осталось до поверхности. Сейчас это звучит смешно, а тогда было очень необычно и интересно.


    Коллекционер и историк вычислительной техники Сергей Фролов рассказывает, как читатели с помощью микрокалькуляторов участвовали в «игре через журнал». Из интервью Музейному проекту DataArt

    Затем был куплен следующий калькулятор — МК-61. Тогда это было целой проблемой из-за дефицита. Даже если есть деньги, ты не мог пойти в магазин и приобрести, что хочешь. Надо было ждать, искать. В какой-то момент мне повезло: зашли в «Электронику» на Гагарина — единственный большой магазин такой тематики в Питере — и купили этот калькулятор. Он был немного получше старого, на нем шло больше программ.


    Магазин-салон «Электроника» на проспекте Гагарина в Ленинграде был еще и важным местом встречи радиолюбителей с перекупщиками деталей. Источник фото

    В упомянутом цикле статей, кроме простых историй типа посадки на Луну, начали публиковать еще всякие интересные вещи: как повесить этот калькулятор, как сделать, чтобы у него погас индикатор, чтобы он выводил не только цифры, но и какие-то отдельные буквы. Словом то, что сейчас называется «хак», хотя тогда таких слов не было. Говорили «недокументированные возможности». Это было очень интересно — добиться от машинки того, чего она, по идее, уметь не должна. Всем этим я интенсивно занимался.

    Параллельно появилась еще одна тема. В журналах «Радио», «Моделист-конструктор», «Юный техник» стали публиковать статьи по сборке самодельных компьютеров. Выбор был не очень большой. В «Юном технике», по-моему, о «Микро-80» рассказывали. Помню точно, что была серия статей про какой-то модульный компьютер, где ты сначала собираешь что-то без подключения к телевизору, с индикатором простым и несколькими кнопками. Затем — контроллер монитора, потом еще что-то. Там была нужна куча микросхем — собрать это было для меня совсем нереально. В журнале «Радио» публиковалось описание «Радио-86РК», со схемой попроще, но там было не достать микросхему контроллера дисплея 580ВГ75 — тоже дефицит. Все остальное — пожалуйста, а вот ее — нет.


    Тестовый образец персонального компьютера «Радио-86РК», предназначенного для сборки радиолюбителями, из коллекции DataArt

    Чуть позже, в журнале «Моделист-конструктор» стала публиковаться схема компьютера «Специалист». Еще выходил профессиональный журнал «Микропроцессорные средства и системы», уже не для радиолюбителей. Там печатали схему ещё одной ЭВМ — «Ириша» — более серьезной, чем вышеупомянутые. Как и предыдущие, она была основана на микропроцессоре 580ИК80, аналоге Intel 8080. Возможности впечатляли, но машина была очень сложная, с кучей микросхем, в том числе, редких.

    В условиях дефицита


    Еще один интересный момент. В то время каждое предприятие считало своим долгом изобрести собственный компьютер. Сейчас это кажется глупым, все думают о совместимости. Если соберешь свой компьютер, что будешь на нем запускать? Тогда этот вопрос не стоял, потому что программ не было никаких. Если соберешь и хорошо работает — ты молодец. Отец приносил схему «ЮКУ» (Juku — эстонский компьютер. — Прим. ред.). Я пытался искать, что это вообще такое — никаких следов. Тоже на 580ИК80, схема достаточно простая. Мне приносили платы, я пытался паять, но быстро забросил, потому что радиолюбитель из меня никакой. Что-то простое паял, но собрать компьютер, тем более редкий и непонятный — конечно, не мог.


    Juku E5101 — персональный компьютер, производившийся на заводе «Балтиец» в Нарве в 1988–1991 гг. Из коллекции эстонского Музея компьютерной техники

    Тогда было как? Допустим, увидел в журнале какую-то схему — неважно, компьютера или, например, усилителя. Хочешь ее собрать. Сейчас это достаточно просто. Ты можешь пойти в магазин и купить все необходимые элементы. Тогда это было невозможно. По списку этих элементов купишь треть, остальные надо искать, заказывать, долго ждать. Желание теряется. Кто-то этим занимался, конечно. Основной источник радиокомпонентов — люди, выносившие их с предприятий. Это было воровство по большому счету, но фактически им занимались все, поскольку всё было государственное — типа общее. Все считали, что это их. Практически узаконенная штука. Это касалось не только радиокомпонентов — всего. Все понимали, что, если этот процесс резко остановить, многие важные вещи просто станут недоступны. К тому же, люди на их сборке занимались самообразованием. Фактически, предприятия закрывали глаза на то, что на их ресурсах граждане что-то делают для себя. Ну а граждане получали навыки, которые потом могли использовать и на производстве.

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

    Потом, в какой-то момент, началась тема со «Спектрумами», и она, конечно, многих вдохновила. Идея была такая: в отличие от всех этих устройств — «Радио-86РК», «Специалиста» и прочего, здесь, собрав компьютер, ты сразу получал доступ к уже написанным за рубежом программам. Их было много, это очень большой плюс. Потому что для «Радио-86РК», самого популярного тогда компьютера, на начальном этапе был доступен может десяток или два программ — это ни о чем. А здесь — цветной компьютер, сразу игры — все, что хочешь. Поначалу, конечно, это все тоже было проблематично. Надо было искать компоненты, из которых самым дефицитным был Z80, поскольку импорт.


    Плата ZX Spectrum-совместимого компьютера — такую же спаял и использовал прямо без корпуса Пётр Соболев. Источник фото

    Информатика в спортивной школе


    Году в 87-м у нас в школе начались уроки информатики. Это последние два класса — 10 и 11. Компьютеров в школе не было никаких. Максимум — несколько калькуляторов. И на первом уроке нам просто рассказывали о Бейсике, а мы смотрели на доску и записывали в тетрадку операторы. Потом нас стали водить в соседнюю спортшколу на Брянцева, в которой стояли компьютеры Commodore 64. Достаточно необычная тема для СССР, потому что тогда в образовании использовались в основном отечественные «Корветы», «Агаты», либо закупались «Ямахи» — MSX-2 — по договорам с японцами.


    Компьютер Commodore 64 поступил в продажу в августе 1982 года. За 12 лет было продано более 15 млн компьютеров

    Мне повезло, эти Commodore 64 — хорошие машины. По тем временам для нас — просто верх. Отличные цветные мониторы, клавиатура, звук. Значительно лучше, чем в «Спектруме», и уж тем более в «Радио-86РК» и прочих. Соответственно и игры, в большинстве своём, были лучше.


    Скрин отладки ассемблерного кода

    Нас привели в класс, посадили по два человека за каждый компьютер, включили. Там сразу Бейсик и мигает курсор. Помню, на первом уроке мы просто гоняли курсор по экрану и радовались. Нам показали, как менять цвет курсора. Это нас, конечно, заворожило. Думаю, если бы компьютеры были чёрно-белые, скорее всего, мы бы так не заинтересовались. Но вот этот приятный синий экран с курсором любого из 16 цветов, нас, конечно, привлёк.

    Мы стали туда ходить, причем не только для официальных занятий информатикой, которые проводились раз в неделю. С приятелями заглядывали после уроков, а иногда даже прогуливали что-нибудь вроде физкультуры. Нас не были обязаны пускать но, по счастью, учителя в этой школе были понимающие. Марк Соломонович Сегаль, Елена Исааковна Лозинская и секретарь Елена Петровна всегда находили для нас места. Приходишь, открываешь дверь, видишь, что все занято и ждешь в коридоре, пока освободится комп.


    Справка о посещении факультатива по информатике. Из личного архива Петра Соболева

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


    Игра Ghost'n'Goblins, выпущенная в 1985 году для аркадных автоматов и позднее портированная на другие платформы, в том числе и Commodore 64

    Когда народ уходил, но оставался кто-то из учителей, мы, бывало, играли. В «Arkanoid», который очень качественно был сделан в плане звука и графики. Я его потом много на каких машинах видел, могу сравнивать. Была игра Ghost'n'Goblins, где чувак ходил по кладбищу с привидениями. В трехмерной игре Driller надо было разбираться, куда пойти, что сделать, куда выстрелить, чтобы что-то переключилось и открылось. Типа квеста. Помню, мы рисовали карты на листах А4. Поскольку эта игра к нам не в коробке попала, а просто в виде файла, мы вообще не понимали смысл того, что там происходит. Когда нарисовали, и увидели додекаэдр, поняли, что это вроде планета какая-то. Ещё хорошая игра была Cauldron II: прыгал там такой колобок по комнаткам, где обитали привидения, всякие скелеты, и надо было что-то собирать. Стандартная игра тех времен. Сидели, разбирались, тоже рисовали карты. Играм и чему-то серьезному мы, наверное, 50 на 50 уделяли внимание.


    «Инструкция, как пропатчить код игры DRILLER, оставленная одним из нас в школе на Брянцева ($EA — инструкция NOP процессора 6502)». Из личного архива Петра Соболева

    Лаборант


    С институтом в те годы тема была очень чёткая. Ты либо идёшь учиться в институт, либо в армию. Сейчас армия не имеет такого негативного контекста, а тогда была перестройка, заговорили о дедовщине, и идти туда очень не хотелось. Знакомый как раз вернулся с подорванным здоровьем после того, как отслужил где-то в Коми, охраняя заключённых. Короче говоря, я записался на подготовительные курсы в Политех. В нашем классе все пытались туда поступить — считалось, что из технических вузов он самый лучший.

    Подготовительные экзамены я провалил. По физике попался 19-й билет (как сейчас помню), на который я не ответил. Пошел сдавать обычные экзамены с потоком и провалил еще раз — мне попался тот же самый билет. Ну, естественно, я его не стал учить — кому попадается один и тот же билет дважды! Оказалось, мне. Я пролетел, но по возрасту до армии оставался год. Пошёл работать лаборантом в ЛИТМО. Тогда он не был так известен, как сейчас. Обычный технический вуз, как ЛЭТИ, ЛИАП и многие другие. Лаборантом я стал на кафедре вычислительной техники. В мои обязанности входило подпаивать на стендах провода, которые со всей дури выдергивали студенты, и раз в месяц выносить мусор из аудитории. Дальше я мог заниматься, чем хочу.

    В аудитории, в которой я работал, стояла «Искра-1030». Такая советская PC/XT с 512 килобайтами памяти и зелёным монитором ужасного качества, от которого очень уставали глаза. Я на ней пытался что-то делать. В соседней аудитории через коридор стояли «Искры 226», как у отца на работе. По сравнению с «Искрой 1030», они были еще хуже. На этой можно хоть какие-то вещи запускать, для PC предназначенные. А там вообще ничего — только Бейсик, по сути.


    Рабочая среда Turbo Pascal 4.0

    На «Искре 1030» я что-то писал на Turbo Pascal 4.0. Это первый Turbo Pascal, где появилась более-менее нормальная среда с менюшками. Про игры там говорить тяжело, потому что на такой машине нормальные игры не работали. Какие-нибудь «Xonix», «Тетрис», с трудом — «Prince».

    Потом в той же аудитории появился болгарский «Правец 16». Это тоже PC/XT, но повыше уровнем. Там уже шли многие вещи, но монитор тоже был черно-белым.


    Игра Commander Keen 4 на «Правец 16»

    Рядом с нашей аудиторией была аудитория заведующего лабораторией, основная на кафедре. Там стояла PC AT 386SX/16 — очень крутая машина по тем временам. На ней шли игры, была хорошая графика, правда памяти там было, вроде, всего 1 MB. Когда машина была свободна, без проблем можно было за ней сидеть. Преподаватели — сотрудники кафедры, видели, что я чем-то интересуюсь, а не просто пришел поиграть и не возражали.

    Домашние компьютеры


    Была при этом параллельная история, которая началась чуть раньше, до института. В годы перестройки мы начали мириться с США, пошли общие темы, и многие пытались делать какой-то свой бизнес, хотя никакого представления о бизнесе у советских людей не было. Почитали, посмотрели фильмы — и вперед. Друг нашей семьи открыл совместное предприятие с американцами. Контора называлась «Вабог», потому что его звали Валерий Боголюбов. Под это дело ему из Америки привезли компьютер PC/AT 286. 640 килобайт памяти, 20 МГц — тогда это было очень круто, тогда даже PC/XT 8 Мгц считалась серьезной машиной. Компьютер был с цветным монитором, правда, CGA. Приехало это всё в большом, окованном по краям железом, сундуке, который у меня до сих пор дома лежит и все, кто видят, спрашивают, что это такое. Поскольку наш друг понятия не имел, что с этим компьютером делать, а я тогда как раз всем этим увлекался, он нам его на время отдал.


    Тот самый сундук

    Компьютер стоял у меня дома. Там был DOS. Ты компьютер включаешь, с дискеты загружаешься. Мигает курсор, написано MS-DOS, версия 3.10 и всё. Текстовый режим, никакой графики. Сначала я пытался команды изучать, потом кто-то дал пару дисков с играми, тот же Turbo Pascal, что-то еще. Затем, когда этот компьютер унесли, к тому времени я уже окончил школу, домой купили Commodore 128. Это такая странная, даже по тем временам, машина — попытка фирмы Commodore усидеть на двух стульях. С одной стороны, они старались не потерять любителей Commodore 64, которые очень любили игры — их для 64 было много написано. С другой стороны, пытались влезть в бизнес, чтобы текстовые редакторы с 80 столбцами нормально работали. Электронные таблицы — вот это вот всё. Забегая вперед, это им не удалось. Не они одни были такие умные. То есть, фактически, они в один компьютер запихали целиком схему Commodore 64 и рядом присобачили Z80 и еще один видеоконтроллер, который на другой монитор выводил 80x25 текст. Ну или 640x200 монохромную графику. Фактически, это был двухпроцессорный компьютер, в котором работать параллельно процессоры, конечно, не могли. Ты должен был выбирать. И два видеовыхода на два монитора.


    Телевизионная реклама Commodore 128, 1985 г.

    Я довольно долго за этим компьютером сидел, что-то писал, разбирался, было довольно интересно. Два монитора по тем временам — тоже было круто.

    Впрочем, полезного я ничего сделал. Ни одной демки или интры — ничего. Всё, что я тогда писал — это какие-то полуфабрикаты. Допустим, я разобрался, как цветные полоски рисовать красивые и, удовлетворенный, делаю что-то другое. То есть, фактически, написание сводилось к тому, чтобы просто разобраться с какой-то темой. Спрайты там, например, или как шрифты перепрограммировать. Разобрался и всё. С Commodore 64 и 128 дело обстояло так. Более-менее что-то законченное я стал писать, уже на PC.

    После Commodore 128 следующей домашней машиной была «Нивка». Очень странная отечественная PC/XT для применения в промышленности. В тот момент уже всё загибалось — конец перестройки, поэтому такие вещи было сравнительно легко купить — они особо никому не были нужны.

    Это была PC/XT, мегабайт памяти, 4,77 МГц-тактовая, 8086-й процессор (не 8088!), с цветным CGA монитором. Фишка была в том, что эта машина была в форм-факторе Full Tower. Я долго развлекался с этим компьютером, разгонял его. То ли кварц поменял, то ли перемычки переставил, сделал 8 или 10 МГц. При этом контроллер дисковода стал смешно выскакивать из кроватки. Видимо, нагревался. Там кроватки советские были, из них выскакивало всё при любом удобном случае. Нитками примотал — заработало стабильно.

    Рейтрейсинг


    В институте кроме «Правеца» и 386SX появились и другие машинки. В мою учебную аудиторию поставили PC/AT 286 c EGA адаптером. Еще там был Amstrad PC1640 с монохромным EGA. Интересно, что эта PC/AT 286 с цветным EGA была югославской, причём в военном исполнении. Серьезная вещь. Металлический корпус очень грубый, с ребрами охлаждения, монитор соответствующий, обрезиненный со всех сторон. Если ударят, чтобы амортизировал. Неплохая была машинка. 16 МГц, по-моему.

    В комнате заведующего лабораторией поставили еще две штуки PS/2 модель 50. Это были PC/AT 286, по-моему, около 20 МГц с шиной Micro Channel (MCA). Графика у этих машин была MCGA (MultiColor Graphics Adapter). Это такое VGA, только без высокого разрешения. Можно было выводить 320x200, 256 цветов. Точнее, в нашем случае, 64 градации серого, т.к. мониторы были чёрно-белые. На PS/2 мы впервые пробовали развлекаться рейтрейсингом — обсчитывали всякие красивые стеклянные сферы, которые друг в друге отражаются и преломляются.

    Рейтрейсинг — это один из алгоритмов получения фотореалистичного изображения. Ты пишешь программу, задаешь в ней простые примитивы: сферу, куб, плоскость, источник света. И она тебе долго и нудно рисует по точкам все отражения и как что преломляется. Получается красиво.

    Тогда 3D пакеты типа, скажем, Maya, были только на дорогих и недоступных почти никому компьютерах типа Silicon Graphics. На PC же всё только начиналось. Обсчитать самому красивую картинку при помощи собственной программы — это было круто и вполне адекватно.

    Студент


    После года работы лаборантом и развлечениями с компьютерами я решил, что логично поступить в тот же ЛИТМО. У ребят из моего класса, которые год отучились в Политехе, разговоры были только об учебе, ни о чем другом они даже думать не могли, что настораживало. Здесь тоже была не совсем халява, но поспокойнее. Поэтому я стал поступать в ЛИТМО на кафедру вычислительной техники, однако по баллам не прошел. Помню, пошел к замдекана, отвечавшего за приём. Взял с собой человека с нашей кафедры — для авторитетности. Говорю: «Я хочу на ВТ». Он показывает список: «Это дочка одного, это сын другого. Извини, не могу!». В итоге я попал на только что созданную кафедру мехатроники, и процентов 60 людей на ней были вроде меня — те, кто не прошел на ВТ.

    Мехатроника — это, грубо говоря, приборостроение, смесь электротехники, электроники и механики. Естественно, вычислительной техники там особо никакой не было. Было всякое ТОЭ, сопромат, конструирование, материаловедение… По диплому я, в итоге, инженер-электромеханик. Что касается компьютеров, у нас были раз в несколько недель занятия по специальности «прикладная математика» на СМ-4. Стояла она в отдельной комнате за стеклом и мигала лампочками, как в фильмах. Очень модно. По другую сторону стекла стояли 6 терминалов с черно-зелёным текстом. Многопользовательская такая машина. Студенты пытались что-то вводить, но это была жесть. Чтобы написать программу, ты должен был запустить текстовый редактор. Он сколько-то запускается, у тебя появляется курсор. Вбиваешь эту программу, потом выходишь из редактора, запускаешь компилятор, линкер. При этом всё, как правило, периодически падает, ты начинаешь заново. Я там был один-два раза, потом понял, что больше не хочу. Романтики не ощутил совсем и стал думать, что делать.


    ЭВМ СМ-4 с 1979 года выпускалась в СССР, Болгарии и Венгрии

    Программы надо было писать на Фортране. Тогда это был достаточно популярный язык для вычислений. И я решил: пойду домой, сяду за нормальный PC («Нивку»), напишу на Паскале. Там достаточно простой алгоритм задания. Потом распечатал результаты на принтере, взял книжку по Фортрану, полистал, посмотрел, какие там операторы есть. Взял программу на Паскале и поменял оператор на Фортрановский. Причем, я не понимал многих вещей. Например, что строки надо отделять в Фортране табами и так далее. В общем, заменил, чтобы похоже было. Распечатал результаты, пошел сдавать преподавателю. При этом не скрывал, что делал на PC. Тот посмотрел. «Странно, — говорит. — Вроде на Фортране это не должно работать». Но результаты-то правильные! Прокатило. Такая была сдача зачета.


    Университет ИТМО, Санкт-Петербург, переулок Гривцова. 2008 г. Говорят, что на тот момент в этой аудитории с 1990-х мало что изменилось

    Государство в государстве


    ЛИТМО стал известен за счет парфёновской кафедры (В 1991 году по инициативе профессоров Парфёнова и Васильева в СПбГУ ИТМО начался проект по созданию системы для подготовки и трудоустройству одарённых школьников и студентов. — Прим. ред.). Когда я поступал, ректором был Новиков. В последние годы моего обучения его сменил Васильев. Компьютеров у нас было очень мало, в учебном процессе их не задействовали вообще, кроме СМ-4. Парфёновская кафедра располагалась в подвале. Там отдельная дверь, в ней глазок с камерой. По тем временам — прямо как банк иностранный. Однажды я туда пришел что-то забирать и был просто в шоке.


    Основатели кафедры «Компьютерные технологии»: Владимир Васильев, Владимир Парфенов и Алексей Сигалов, на банкете выпускников ЛИТМО в 1990 г. Источник фото

    ЛИТМО в те годы — это ободранные стены, развалившийся местами паркет, старые двери, перекошенные окна. А заходишь на эту кафедру — там ковровое покрытие, прозрачные перегородки, люди сидят за компьютерами PC с цветными мониторами. Такое вот эээ… цифровое неравенство. Кафедра — как государство в государстве. Но за счёт неё и других вещей Васильев вытянул ЛИТМО в известные вузы.

    Знакомство с демосценой


    В соседней школе, куда нас водили в детстве на Commodore 64, у учителей был некий набор программ. Среди них попадались такие, которые ни для чего не были предназначены — просто показывали под музыку красивые графические эффекты. Мы иногда ставили и смотрели, поскольку прикольно. Но мы, конечно, не знали, что такое демосцена и демки. Сейчас все ходят в интернет, читают иностранную прессу, книги, смотрят новости — а тогда этого не было. Об иностранной культуре мы практически не имели представления. Всё, что знали, — из фильмов, которые проходили цензуру, то есть достаточно нейтральных. Тоже самое касалось и музыки. Поэтому для нас многие вещи были в новинку.
    В последний год хождения в школе на Commodore 64 у нас стали заводиться знакомства с людьми, у которых этот компьютер стоял дома. В основном, это ребята, у кого родители ездили в загранку. Дальнобойщики, моряки — люди, которые оказывались за границей и могли там что-то покупать. Было 3-4 человека, у которых оказался Commodore 64. Мы ездили к ним домой, обменивались софтом. Сетей нет, модемов нет. Просто приходишь с пачкой дискет (по 300 кб) и говоришь: «У меня есть то-то и то-то. Давай посмотрим». Ставили в дисковод, смотрели: «О, это мне интересно. Копируем». Были программы-копировщики. Запускаешь, она пишет: «Вставьте диск исходный». Вставляешь: «Вставьте диск, куда копировать». Так несколько раз. На копирование одного диска уходило минут 10.

    Так постепенно у нас появлялось что-то новое. Тогда я познакомился с одним человеком — Кириллом Антоновым, никнейм GhostRider. Не знаю, куда он исчез, много лет назад растворился в воздухе. У него был Commodore 64, при этом он более-менее знал английский язык и переписывался с иностранцами. Он установил контакты с некоторыми группами, которые чисто для души занимались написанием программ: музыка, графические эффекты какие-то. Кирилл им писал, они ему присылали диски. Тогда мы начали проникаться понятием «демосцена».


    “Hello GhostRider!” Письмо Кириллу Антонову из-за границы, написанное на конверте с дискетой, содержащей программы

    Что нам попадало в руки? Во-первых, программы, где что-то красивое показывается на экране под музыку. Во-вторых, программы-журналы. Запускаешь diskmag (disk magazine — Прим. ред.) как исполняемый файл. Тебе выводится меню. Там статьи, интервью. Заходишь, читаешь. Были еще noters— тоже исполняемые файлы. Типа diskmag'ов, только из одной статьи. Как сейчас в архивах кладут README-файлы. Тогда их не было. На Commodore 64 текстовых файлов, как таковых, не было вообще. Потому что не было единого формата текста, который могли бы читать все программы. Включаешь компьютер — у тебя один Бейсик, можешь только загрузить и запустить что-то. Поэтому все эти readme были в виде исполняемых файлов — и это был большой плюс в плане возможностей самовыражения. Люди писали такой исполняемый readme, запускали. Текст мог появляться разными шрифтами, разными способами. Иногда он появлялся постепенно, как будто от пишущей машинки. Имитировалось стирание — будто человек прямо при тебе пишет. И под музыку. Были noter'ы специальные, когда ты мог не только прочесть текст, но и написать ответ. Нажимаешь кнопочку, у тебя появляется курсор, и ты это все можешь писать сам. Потом нажимаешь другую кнопочку, делается копия исполняемого файла, только с твоим текстом. Можешь добавить музыку свою, если хочешь.

    История интро и демо


    Посмотрев на всё это, мы начали проникаться культурой демосцены. Демо — это, говоря формально, объединенные сценарием графические эффекты с музыкой. Зарубежные авторы демо вдохновлялись фильмами, которых мы не знали. Например, «Назад в будущее» — мы его тогда не смотрели, а у них о том, что это такое, знали все. Смотришь демку, там постоянные отсылки какие-то. То к музыкальной группе, то к герою фильма. В бегущей строке передают приветы кому-то, что-то упоминают. Ты читаешь и пытаешься понять, что они имели в виду.


    Cracktro конца 1980-х (короткое интро, предваряющее взломанные игры) группы Xadez Society для Commodore 64

    Важный момент: демки начались не внезапно. Сначала было популярно ломать игрушки. Тогда игры распространялись на дисках, диски были с защитой от копирования, поскольку их надо было продавать. С этой целью на диск могли нанести какое-то физическое повреждение, чтобы игра при запуске проверяла, есть ли оно и таким образом знать, оригинальный это диск или нет. Были и другие хитрости — например, между дорожками писали. Пираты это дело ломали и рассказывали, кто это сделал. Сначала они просто писали в начале: «сломано таким-то». Постепенно надпись стали улучшать. Сначала переливающуюся сделали, потом, чтобы она ехала. Ещё они передавали приветы или факи своим конкурентам — другим пиратам, которые криво что-то сломали, или сделали это позже них. Постепенно это все вылилось в так называемое интро — от английского Introduction. Такая маленькая демка из одной части. То есть, у тебя уже не просто надпись была, она переливалось по-всякому, по синусоиде летала, сверху логотип какой-нибудь прыгал. Ещё музыка играла в процессе.

    Допустим, кто-то сломал игру, чтобы скопировать и нелегально распространить, потом кто-то следующий сделал в ней бесконечные жизни. Он тоже добавлял свое интро. Когда запускаешь такой диск, сначала одна интра показывается, потом другая, третья. До пяти бывало. В каждой команде были так называемые swapper'ы, которые занимались пересылкой дисков по почте. Таким вот образом это всё дошло до нас.


    Cracktro 1990 года (короткое интро, предваряющее взломанную игру 3D International Tennis) группы IKARI для Commodore 64

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

    Запаковывалась игра, к ней присобачивалась интра, тоже запакованная. Типа архивирования. При запуске интра распаковывала сначала себя, показывала. Потом ты нажимал пробел, она распаковывала игру или следующую интру. Использовалась вся доступная память, в том числе, экранная. Часто можно было видеть, как на экране что-то мельтешит, то есть, это код распаковывается прямо в экранную память. Это всё было очень необычно и интересно. Было видно, что каждый человек, который что-то делал, вложил часть своей души, потратил время, чтобы добиться цели — какого-то эффекта, чего-то необычного. Он по-новому использовал оборудование, которое есть.

    Со временем интро переродились в отдельные большие демки. Они состояли из нескольких частей. Запускаешь, тебе показывается какой-то эффект — плазма или скролл бегающий. Нажимаешь пробел — появляется следующая часть. Чтобы досмотреть одну часть до конца, надо несколько минут. Сейчас это вообще непонятно зачем. Динамики особой нет, с музыкой это тоже редко было связано — она просто шла фоном. Но тогда этого было достаточно. Мы просто подолгу смотрели, как что-то там летает, и тащились от того, как это сделано.


    Демо Red Storm группы Triad для Commodore 64

    Помню, меня впечатлила демка Legoland группы Fairlight. Там была такая часть — при помощи рейтрейсинга летали зеркальные шарики вокруг какого-то столба, с отражениями. Понятно, что на Commodore 64 этого сделать было нельзя, просто потому, что там процессор был 6502 1 МГц. Авторы же просто взяли более мощную машину Commodore Amiga, все это сделали покадрово, потом собрали такой мультик. Но тогда нам это было неочевидно, складывалось впечатление, что это реально происходит.


    Демо Legoland группы Fairlight для Commodore 64

    В некоторых работах скроллы текстовые были сделаны очень необычно. Тогда они были центром любой демки. Обычно внизу ползёт некий текст, а наверху что-то происходит. И ты как бы параллельно, чтобы не скучно было читать, еще смотришь на какого-нибудь бегающего вверху человечка. Эти скроллы были очень разнообразными. Переливались, буквы крутились по-всякому, волнисто искажались, были многоцветными, подпрыгивали. Это было настоящее искусство (в смысле, творчество).

    Продолжение следует.
    DataArt
    Технологический консалтинг и разработка ПО

    Комментарии 14

      +2
      Эх, молодость, молодость… Жду продолжения.
        +1
        О, Коди, живой. :) Сто лет не виделись. Все ж таки CodeRipper мне как-то роднее, нежели Frog. :)
          +2
          Спасибо DataArt. Вы как всегда на высоте. Одно плохо — после любой вашей статьи возникает острый приступ ностальгии. Правда похоже что уже дорос до того, что в остальное время ностальгия — уже хроническая болезнь ;-)
            0
            Большое спасибо! Мы и сами бываем подвержены этим приступам, как раз с помощью интервью стараемся с ними бороться. Получается, впрочем, не всегда…
            0

            «Надо сказать, что у Б3-21 и Б3-34 — разные системы команд, разная архитектура, а все книжки, которые мне попадались, были, к сожалению, про Б3-21. Это стало большой проблемой»


            А о каких книжках идёт речь? Если честно, с трудом представляю, какие книжки можно написать о ПМК. В комплекте с МК-52 шли два мануала форм-фактора «Шоколад "Алёнка"», по-советски исчерпывающе документировавшие систему команд, мне в 7-м классе хватило, чтобы навсегда перестать считать квадратные уравнения вручную.

              +1
              Книг про калькуляторы было очень много. Вот небольшой список
              pmk.arbinada.com/ru/node/1051
                0
                Чтобы просто написать программу вычисления чего-либо — действительно вполне достаточно руководства. Но мне гораздо интереснее были всякие странные недокументированные вещи, а эту информацию приходилось собирать по кусочкам из разных мест. Как средство решения математических задач меня калькуляторы никогда особо не интересовали.
                  0
                  Ясно. Я-то прикладник до мозга костей, меня заинтересовала только одна недокументированная особенность МК-52: ППЗУ держало код в неизменном виде не долее минут, иногда теряло его сразу при выключении (это моё везение, или у всех так было?). Приходилось запоминать опкоды, чтобы хранить листинги в голове и, придя в школу, быстренько набивать перед уроком. А какие недокументированные особенности у ПКМ находили тру-хакеры? ))
                    0
                    Главным образом всё крутилось вокруг того, чтобы вывести на экранчик что-нибудь что, по идее, туда вывести нельзя или заставить выполнять вычисления которые, по идее, калькулятор не умеет или не должен. В современной терминологии это, наверное, можно назвать «поиск уязвимостей». Всякие «Тьма», «ЗГГОГ» и прочее чему, в том числе, были посвящены статьи в Технике-Молодёжи (там под это ещё очень удачно была подведена история).
                      0
                      Что да. то да. Как сейчас принято говорить сеттинг или ЛОР был очень живой. Даже не имея ПМК читалось очень захватывающе.
                0
                Помню я даже 2 место на Millenium'1901 занял. Давно это было. И даже вот папочка с моим выигрышем: ftp.scene.org/pub/parties/2001/millenium01.ru/mmul Сейчас уже это звучит совсем не так, как тогда. Избалованы мы HiRes музыкой.
                  +1
                  Такая классная статья, очень понравилось, спасибо
                    +1
                    Спасибо за интересную статью. Ностальгия интересная штука. Недавно почитал статьи про ZX Spectrum. И начал изучать ассемблер для Z80. Знаю, что особо нигде не пригодится это, но интересно.
                      0
                      Главное, чтобы самому занятие нравилось и было интересно. Остальное второстепенно.

                    Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                    Самое читаемое