Тридцать лет назад, в 1995 году, мы провели первую в России и бывшем СССР demo party (или, говоря более понятным языком, компьютерный фестиваль) - ENLiGHT. С тех пор мы делали это почти ежегодно, с 1999 года по нынешнее время - под именем "Chaos Constructions". В этой статье я хочу немного рассказать о Chaos Constructions'2025, прошедшем 23 и 24 августа этого года в Санкт-Петербурге.

Как уже стало традиционным, всё происходившее в эти два дня можно условно разделить на:

  • Ретро выставку с разнообразной работающей техникой

  • Семинары различной тематики

  • Конкурсную программу связанную с демосценой.

Важной особенностью, которая определяет атмосферу нашего фестиваля, является его неформальность - это не коммерческое и не корпоративное мероприятие, а настоящий underground. Обратной стороной чего являются, конечно, финансовые и организационные ограничения - Chaos Constructions проводится, по большей части, на деньги организаторов и добровольные взносы всех желающих помочь (спасибо им!).

Хотя, в силу занятости организацией, мимо меня вечно проходит много всего интересного, какие-то основные моменты всё же попробую описать.

Для начала, составить общее впечатление можно по этому видео, которое я записал просто пройдясь по всему partyplace (кроме зала для семинаров):

(youtube, vkvideo)

Ретро выставка

Часть ретровыставки на CC'2025
Часть ретровыставки на CC'2025

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

В этом году был, к примеру, развёрнут фидошный стенд со станцией и BBS. Слово Александру Калмыкову (3ym):

"На выставке Chaos Constructions 2025 был представлен стенд FidoNet/BBS. Подключенные к мини-АТС модемы USR Courier, мечта фидошников, обеспечили стабильный коннект 33600 всем желающим - по модемной связи можно было позвонить на BBS или получить и отправить почту. На поинтовой станции была развёрнута обширная база эхоконференций за 2000-е годы, посетители могли почитать через Golded текстовые баталии прошлых лет и, возможно, найти свои старые сообщения. К сожалению, удалось найти лишь небольшое количество архивов из 90-х годов, поэтому поиск продолжается - если у вас есть архивы фидошных конференций, BBS, левонеты - присылайте организаторам!"

уголок Fidonet на CC'2025
уголок Fidonet на CC'2025

Независимо друг от друга в этом году представили свои коллекции осциллографов Артём Денисович и Игорь Гришин с Никитой Осиным - а ведь в прошлом году осциллографов не было вообще. В результате, у нас появилась чуть ли не стена из этих тёплых и ламповых (в буквальном смысле) устройств. Некоторые выглядят особенно внушительно - к примеру, пятилучевой С1-33 весом 160 кг и потреблением более киловатта (стоящий на полу здоровенный блок с множеством лампочек - блок питания к этому осциллографу). Были также запоминающий С1-29, прецизионный С1-40, анализатор спектра С4-25, серия самых маленьких осциллографов американской фирмы Tektronix для сервисных служб и работы "в полях", советские компактные "сервисные" модели, начиная от военного С1-6 (ЭМО-2) и заканчивая различными модификациями С1-94, осциллографы, созданные специально для радиолюбителей, начиная от известного ЛО-70 и заканчивая серией радиолюбительских приборов Краснодарского завода ЗИП, в числе которых весьма редкий Н3025, самодельные приборы изготовленные радиолюбителями и многое другое.

Часть (примерно треть) экспозиции осциллографов на CC'2025
Часть (примерно треть) экспозиции осциллографов на CC'2025

Алексей Морозов (Vinxru) показывал собранную им по оригинальным технологиям рабочую Микро-80. Кажется, там только пара разъёмов неаутентичные, в остальном - как будто машинка была собрана в 1980-е.

Микро-80 на CC'2025
Микро-80 на CC'2025

(vkvideo, youtube)

Снова в нашем фестивале принял участие Ленинградский Компьютерный Клуб с большим количеством разнообразной восьми и шестнадцатибитной техники - Apple IIe, BBC Micro B+64, Amstrad CPC 464, Commodore Amiga, Commodore 64, Enterprise, Atari XE/XL и т.д.

Ленинградский компьютерный клуб на CC'2025
Ленинградский компьютерный клуб на CC'2025

Как обычно, было много различных спектрумосовместимых компьютеров. В частности, ZX Spectrum Next (представлял Ash), ZS Scorpion GMX (Михаил Каа), Пентагон 128 и АТМ Турбо 2+ (Михаил Шевченко), ZX Spectrum+ и другие. Команды NedoPC и Sprinter Team представили свои разработки - современные ZX Spectrum совместимые компьютеры на FPGA: ZX Evolution и Sprinter.

RomanRom2 и CHRV представлявшие Sprinter и ZX Evolution
RomanRom2 и CHRV представлявшие Sprinter и ZX Evolution

Владимир Васильев продемонстрировал троичный калькулятор "Калькулятор МК-СЕТУНЬ-01" и монитор + эмулятор троичной машины "СЕТУНЬ".

Михаил Судаков вновь организовал ретро-барахолку, где можно было приобрести фирменные игры на аудиокассетах для ZX Spectrum, Commodore 64, Amstrad CPC, старые журналы и книги про компьютеры и IT, фирменные ZX Spectrum, его советские клоны и прочую ретро-технику и разную сувенирную продукцию с символикой Chaos Constructions.

Тимофей Мокиенко с командой сделали ретротелеканал, вы могли видеть его трансляцию на телевизорах расставленных по залу и, иногда, на большом экране (легко опознавалась по "ретрокачеству" картинки). Предоставлю слово самому Тимофею:

Тимофей Мокиенко в ретрокачестве
Тимофей Мокиенко в ретрокачестве

"Свой первый мультик для телевидения я нарисовал во Флеше в далёком 2004м году. Тогда ещё юный вчерашний школьник, я не понимал, чем это обернётся для меня в будущем. Более 20 лет я делал компьютерную графику для ТВ. Но если в профессиональном плане я всегда двигался только вперёд, то в творческом решил «идти назад». Мне всегда интересовала история компьютерной графики и те методы, которые применялись до широкого распространения мощных графических компьютеров. Амига и древний Макинтош стали моими основными инструментами для ретро-графики.
В 2025-м году мы решили устроить для себя небольшое испытание и организовать на фестивале Chaos Constructions'2025 небольшой импровизированный телеканал.
Специально для «эфира» была придумана и снята передача «От бита к байту», своеобразная пародия – реконструкция региональной передачи про компьютеры из девяностых. Снимали её на древнюю камеру Sony BVP-3 с тремя плюмбиконами вместо матриц, монтаж производился на магнитофонах, спецэффекты и хромакей были выполнены на видео микшере Magic Dave 1998го года, а заставки рисовались на компьютере Amiga 1200 в программах SCALA и Deluxe Paint.
На самом фестивале Chaos Constructions был отснят отчётный фильм, который также стал частью эфира.
Трансляцию было решено устроить в формате кабельного телевидения. На территории фестиваля были расставлены телевизоры, на которые подавался смодулированный видео сигнал. Было приятно вновь увидеть ту давно забытую аналоговую картинку, напоминавшую то самое телевидение 90-х. Конечно, всё прошло немного сумбурно. Chaos Constructions для многих это прежде всего возможность вновь повидаться и вспомнить старые добрые времена, посмотреть демки да и просто хорошо провести время. Какая уж тут профессиональная работа телеканала. Но мне всё же кажется, что наш небольшой аналоговый эфир вполне себе удался...
...отчётное видео, VHS запись с эфира. Снимали на Sony DSR-400p и монтировали в ту же ночь на фестивале, чтобы показать в последний день в эфире на фестивале (вещали на три телевизора по кабелю через RF-модулятор). После этого видео никак не редактировалось. К сожалению, только на монтаже заметил, что у объектива на широком угле съехала юстировка и это ОЧЕНЬ заметно на общих планах. Но из песни слов не выкинешь, в конце концов хаос он всегда хаос. Особенно когда пытаешься успеть всё и сразу. Впредь будем внимательнее следить за техникой, а это видео останется для истории."

(youtube, vkvideo)

Digital Vintage и Vintage Server Room снова представили свою коллекцию - Macintosh IIfx, MicroVAX, SGI Octane, IBM AS/400 и другие. Среди всех их машин моё внимание привлекла AS/400. Как-то ни разу живьём она мне не попадалась, а вещь известная. В своё время искал информацию по её VM, но тогда была доступна лишь одна книжка - "Архитектура IBM AS/400".

Монитор IBM AS/400
Монитор IBM AS/400

Про то, что предшествовало появлению IBM AS/400 на Chaos Constructions, рассказывает Slex

(youtube, vkvideo)

Артём Костюченко представил впечатляющую инсталляцию из просмотровых ЭЛТ мониторов (вот куда уходят все ПВМки!)

Много ПВМок
Много ПВМок

Неожиданно популярен оказался стенд Василия Корягина с калькуляторами - казалось бы, столько мы показывали на Chaos Constructions калькуляторов, а интерес к ним не снижается.

Микрокалькуляторы
Микрокалькуляторы

Кстати, известный коллекционер калькуляторов Сергей Фролов подарил мне совершенно замечательное устройство (которое я втиснул на выставке между Gameboy'ами и АОНами) - аналоговый проверятель таблицы умножения с индикаторами тлеющего разряда. Особенно умиляет приблизительность его умножения.

Аналоговый проверятель таблицы умножения
Аналоговый проверятель таблицы умножения

Незадолго до начала фестиваля я узнал про такую самоделку как Scopetrex - увидел фото в telegram канале. Это оказалась современная реализация игровой приставки Vectrex с векторным дисплеем. Несмотря на современность, реализация честная - цифровая и аналоговые части лишь немного адаптированы, прежде всего для вывода сигнала на осциллограф. Приставка была не до конца налажена и на Chaos Constructions, как я понял, собравший её Александр заканчивал наладку вместе с пожелавшими помочь посетителями.

Scopetrex подключённый к осциллографу С1-114
Scopetrex подключённый к осциллографу С1-114

Павел Суходольский, один из разработчиков АОНов "Русь", демонстрировал своё детище - несмотря на, казалось бы, полную бесполезность сегодня данного устройства (даже по сравнению с любым ретрокомпьютером), интерес к Павлу и его разработкам был очень большой - всё же у огромного количества людей дома когда-то стояли его АОНы.

АОН "Русь"
АОН "Русь"

Nikhotmsk устроил хакатон, на котором участникам предстояло собрать упрощенный вариант автоматической телефонной станции на базе декадно-шагового искателя ДШИ-100.

Телефонные железки nikhotmsk
Телефонные железки nikhotmsk

Игорь Решетников демонстрировал свою разработку - современный 8-разрядный компьютер на базе AtMega - CRISS CP/M. Народ подходил посмотреть, играл в игры (например, написанные для Robotron 1715, где тоже была CP/M) и пробовал свои силы в написании программ на Turbo Pascal 3.0

Программирование на Turbo Pascal 3.0 под CP/M (компьютеры CRISS CP/M)
Программирование на Turbo Pascal 3.0 под CP/M (компьютеры CRISS CP/M)

Антон Павлов, автор gbdk-2020, gbstudio, crosszgb показывал различные Game Boy, GB Camera, девелоперский Analogue pocket, Game Boy Printer и его эмулятор для PC/смартфона. Как по мне, камера и принтер для GameBoy (замечу, вполне себе штатные - не новодел) - одни из самых странных устройств. При этом, говорят, довольно популярны. Некоторые посетители (включая меня) удостоились чести быть сфотографированными и распечатанными этими девайсами.

Антон Павлов и GameBoy-и
Антон Павлов и GameBoy-и
Фотография меня сделанная на GB Camera
Фотография меня сделанная на GB Camera

В фестивале Chaos Constructions'2025 приняли участие B4CKSPACE. У них можно было увидеть самые разнообразные вещи - табло из аэропорта, самодельные экраны, взломанный POS-терминал, телефоны на прошивке PostmarketOS, терминал vt220 (на котором периодически кто-то задумчиво копался в Линуксе).

Уголок B4CKSPACE на CC'2025
Уголок B4CKSPACE на CC'2025

Семинары

На каждый семинар, включая ответы на вопросы, отводилось около часа. Никаких требований к докладчикам не было - каждый рассказывал по заявленной теме то, что считал нужным.

Семинар Артёма Кашканова на CC'2025
Семинар Артёма Кашканова на CC'2025

"История разработки АОНов "Русь" и микроконтроллера R100-XP", Павел Суходольский

Павел является одним из авторов этих устройства, для которых был создан и серийно производился собственный микроконтроллер R100-XP с реализованным на том же кристалле знаменитом генераторе звука AY 8910. Были затронуты как особенности разработки на рубеже веков (1991-2008), так и вопросы реализации конкретно 8910.

(youtube, vkvideo)

"Game Boy - demo в кармане", Антон Павлов

На отечественной демосцене доминирует ZX Spectrum. Тому есть множество причин. Но в мире популярны и другие 8-ми битные платформы. Одной из них является Game Boy/Game Boy Color. В своём докладе Антон Павлов рассказал о причинах этого, а так же об архитектуре, средствах разработки, нюансах программирования с точки зрения демосценера.

(youtube, vkvideo)

"Robotron S6130 — Восставший из мертвых", Артём Кашканов

Широко известный в узких кругах автор релейного и лампового компьютеров Артём Кашканов поведал историю оживления пишущей машинки на базе процессора U880 (клон Z80), с функцией запоминания набранных текстов во встроенной оперативной памяти, с записью и воспроизведением на магнитофон, а также возможностью приема и передачи текстов с ЭВМ по последовательному порту.

(youtube, vkvideo)

"Современный графический конвейер", Иван Галактика

Мы играем в ААА-игры и воспринимаем фотореалистичность графики как должное. Однако современные движки трёхмерного рендеринга - это синтез многолетних научных исследований, высшей математики и программной инженерии. Как это всё устроено? Какие проблемы нужно решить разработчикам? Каковы подходы к их решению? Об этом рассказал Иван Галактика.

(youtube, vkvideo)

"Как же так, Yamaha?", Сергей Степняк

В начале 2025 года энтузиасты смогли взломать целую линейку синтезаторов Yamaha и получить доступ к инженерной консоли. Его синтезатор тоже взломан, доступ к консоли имеется, снят дамп, сделан частичный дизассемблинг прошивки. Сергей рассказал о взломе и продемонстрировал возможности синтезатора начального уровня с попурри из известных треков электронной музыки в реальном времени.

(youtube, vkvideo)

Кроме того, мы провели круглый стол "Самодельные компьютеры на базе FPGA и не только".

Участники круглого стола (слева направо): Алексей Морозов (vinxru), Павел Суходольский, Артём Кашканов, Михаил Каа, RomanRom2, Игорь Решетников, Роман Чунин (CHRV).
Участники круглого стола (слева направо): Алексей Морозов (vinxru), Павел Суходольский, Артём Кашканов, Михаил Каа, RomanRom2, Игорь Решетников, Роман Чунин (CHRV).

Традиция проводить на Chaos Constructions круглые столы уже давняя, хотя и не ежегодная. Идея - собраться нескольким компетентным в теме людям и поговорить вживую при стечении народа, под запись. Были уже столы по демосцене, истории Интернет в СССР/России, истории Fidonet и т.д. Причём, взависимости от участников какие-то проходили как беседа с участием зрителей, другие - как отдельные выступления.
В этом году, зная что у нас будут лично присутствовать разработчики различных компьютеров (ZX Evolution, Sprinter, релейный, ламповый, АОН "Русь", CRISS CP/M и т.д.), я предложил Роману Чунину (CHRV) провести и помодерировать такой круглый стол. Честно говоря я надеялся, что разговор не ограничится FPGA, но таковы современные реалии - большинству участников интересно было поговорить в первую очередь об этом. В любом случае, думаю, получилось неплохо.

Участники круглого стола: Алексей Морозов (vinxru), Павел Суходольский, Артём Кашканов, Михаил Каа, RomanRom2, Игорь Решетников, Роман Чунин (CHRV).

(youtube, vkvideo)

Слово Роману Чунину:

"Очень приятно было провести "круглый стол" на нашем любимом СС. Для меня это первый опыт работы одновременно с группой разработчиков и аудиторией.
Хотя я уже много брал различных интервью, но все равно было легкое волнение. Но как взял микрофон в свои руки, сразу волнение пропало и пошел разговор.
Разработчики, участвующие в разговоре, представляли свои проекты, начиная от профессиональных чипов до чисто любительских проектов на микроконтроллерах и FPGA (программируемой логики).

Постепенно разговор перешел в разряд обмена мнениями как лучше научиться и освоить современную разработку электроники. Разработчики делились историями с каких шагов они продвигались к своим проектам.

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

Ну и на концовку, почти каждый из разработчиков пожелал встретить кого-нибудь из зала на следующем круглом столе.

Спасибо организаторам СС, что пригласили на круглый стол таких интересных людей. Ребята, очень рад беседе с Вами, ну а с кем то рад познакомиться. Спасибо большое!"

Мастер-класс по разработке игры на FPGA

Мастер-класс по разработке игры на FPGA (Евгений Примаков в очках, в центре)
Мастер-класс по разработке игры на FPGA (Евгений Примаков в очках, в центре)

Отдельные личности периодически мне указывают, что на CC, мол, теперь одно ретро. На что я каждый раз говорю, что дело тут не в CC, просто людям интересно именно это, остального, по-видимому, им и на работе хватает. Тем не менее, мы стараемся чтобы современные технологии тоже были представлены на фестивале - помимо семинара Ивана, хороший пример - мастер-класс Евгения Примакова по разработке игры на FPGA. Интерес со стороны людей был большой. Вот, что сказал сам Евгений:

"Мастер-класс начался с рассказа о том, что из себя представляет микросхема fpga и как она работает, далее познакомились с языком Verilog и, изучая и модифицируя готовые примеры-проекты, постепенно прошли путь от вывода на монитор статичных залитых цветом фонов до полноценной реализации игры "pong" для двух игроков. Кто-то из посетителей мастер-класса работал с FPGA, кто-то внимательно слушал. Посетители остались впечатлены тем, как из, казалось бы, простых аппаратных элементов — регистров, счётчиков и компараторов можно составлять всё более сложную и сложную логику игры без использования центральных процессоров, по сути проходя по стопам инженеров, когда-то разработавших игровые консоли первого поколения.
Признаться честно, никто не ожидал такого живого интереса посетителей фестиваля к мастер-классу. Людей было так много, что мы решили провести его ещё раз в воскресенье. Помимо плотной работы над проектами возникла интереснейшая дискуссия, был поднят целый ряд интересных тем, связанных как с историей развития техники, так и с современными вычислительными устройствами и их перспективами. Спасибо всем участникам семинара! Надеюсь, мы все хорошо провели время и узнали что-то новое. Отдельное спасибо за помощь в проведении семинаров Кириллу и Максиму, моим коллегам и друзьям, которые тоже приехали на фестиваль."

Hidden party

Существенная часть каждого Chaos Constructions - hidden party во дворе с распитием различных напитков и живым (иногда, даже слишком) обменом впечатлениями. Удивительно, но есть отдельные люди, которые из года в год приходят на CC, но почти никогда не заходят в зал - им интересно только hidden party!

Hidden party во дворе ДК Кирова на CC'2025
Hidden party во дворе ДК Кирова на CC'2025

Турниры

Игры и компьютеры тесно связаны, поэтому игнорировать их сложно. В этом году у нас снова проходили небольшие турниры - по игре Worms на компьютерах Commodore Amiga, организованный ASh и по DOOM II, организованный LegacyZ.

Турнир по DOOM II на CC'2025
Турнир по DOOM II на CC'2025

Был также и отдельный конкурс Game compo, где были представлены игры для ZX Spectrum, Океан-240, Микро-80 и CRISS CP/M.

Демосцена

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

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

Работа Corvet by Stardust - первое место на Chaos Constructions'2025 в номинации oldskool demo. Платформа - ZX Spectrum.

Работа Corvet by Stardust (screenshot)
Работа Corvet by Stardust (screenshot)

(youtube, vkvideo)

Я не спектрумист (говорят, даже пытаюсь извести весь Спектрум, прямо начиная с 1990-х, для чего собственно и организовал ENLiGHT), поэтому не очень могу оценить техническую сложность, но впечатление эта работа производит сильное. Как я написал в комментарии на pouet - "It could easily compete even in highend". Думаю, любая платформа могла бы позавидовать, что для неё написали такую работу.

Вот что рассказал по моей просьбе один из авторов, Александр Колногоров (sq):

"Изначально мы не были до конца уверены, будет ли от нас дема на cc25. Точнее, мы знали, что что-то будет, но до понедельника, 18 августа, когда до пати оставалось 6 дней, было непонятно, что конкретно это будет за дема: про что, о чём, какие визуалы будут.

Времени, как всегда, было мало, хотелось сделать что-то необычное. И было решено начать с музыки. Я скинул nq референс, в духе которого я бы хотел трек в дему (если кому интересно: Yoshumidzu - Keido). На следующий день вступление было готово, а ещё через день - в среду - Олежа скинул уже готовый трек. К этому времени была готова интра, но я всё ещё до конца не представлял, что будет дальше. Уже был готов векторный движок, и было понятно, что вся дема будет на векторах - но всё ещё было неизвестно, какие это будут сцены.

"Движок" представлял собой простую рисовалку линий из потока координат на основе процедуры быстрой линии от X-Trade (из Spectrum Expert). Каждая сцена - это последовательно отрисовываемый список координат точек. Они совсем не пакуются, поэтому хранятся непакованными.

Переломный момент случился, когда получилось написать на питоне парсер из растровых картинок в поток координат. Когда парсер был готов и заработал, стало окончательно понятно, что дема будет. Оставалось только наделать сцен. Какие-то наделал G.D., какие-то получилось сгенерить с помощью ещё одного генератора сцен на питоне (который был написан с помощью нейросети), некоторые объекты были взяты из бесплатных стоков и анимированы.

А дальше уже оставалось дело техники: расставить сцены в нужном порядке и синхронизировать с музыкой. Для этого я, как и в случае с Unspoken и Esprit, выгрузил все сцены в видео и склеил их в видеоредакторе, смонтировав их под музыку. После чего, опираясь на этот видеофайл, перенёс все визуалы в нужном порядке на спектрум.

И в воскресенье утром дема была готова)
diver отполировал надписи: логи stardust, corver и кредитсы
kowalski написал загрузчик-мультилоадер (который мы использовали ещё в Elysium State)
psndcj написал psg-пакер (ещё давно), а так же давал ценные советы по оптимизации)"

Работа Arbo by Crolyx - первое место на Chaos Constructions'2025 в номинации highend demo. Платформа - PC/Windows.

Работа Arbo by Crolyx (screenshot)
Работа Arbo by Crolyx (screenshot)

(youtube, vkvideo)

Группа Crolyx была известна на ранних CC своими работами Underspace, Sleeping motion и My own bullet of autumn, однако с тех пор уже много лет релизов не было. И вот, не без некоторых грязных манипуляций над Xiod'ом, мы получили отличную новую работу, по атмосферности очень даже Crolyx'овскую.

Код и музыку писал Xiod (Дмитрий Грамотеев), а графику рисовала его крестница Arteuxx (15-ти лет отроду, между прочим).

Но, слово самому Xiod'у:

"Демосцена удивительное место – можно сделать набор крутых технических эффектов и решений, можно выдержать некий интересный визуальный стиль, а можно и сделать некий «рассказ» в демо эффектах – огромный диапазон на выбор.

Идей для демо всегда было (и есть) сильно больше, чем доступного времени, например «раскадровка» для Arbo была нарисована в последовательности набросков ещё десять лет назад для музыки написанной в старом добром Impulse Tracker ровно двадцать лет назад, но так как делалось всё в свободные минуты между поездками и «обязательными» проектами – поэтому Arbo получился просто последовательностью смысловых набросков, только в коде, а не презенташки в расшаренных документах.

Я знал, что у меня осталось буквально 10-15 вечеров на Arbo, поэтому мы сразу умерили пыл на «полное иммерсивное 3д» и «от этих эффектов должны выпасть зубы» - вопрос был вообще что-то закончить, т.к. весь код писался с нуля.

Так как времени вообще нет\не было\и не будет – весь код для упрощения инициализации всех этих окон\режимов я действительно захостил в Unity – но абсолютно пустой проект, C# код делает всё сам в рантайме, никаких плагинов или функциональности самой Юнити не было использовано, демка вообще не знает, в какой системе рендеринга она живёт – почти все усилия по коду ушли на морфинг сплайнов и генерацию мешей. Это был единственный способ уложиться по времени.

(Да-да мне не стыдно, я по работе и так 3D/AR/VR для промышленных применений пишу и для десктопов и мобил, включая софтварный рендеринг (он жив в 2025-м году!) – выдирать куски было лень, тем более не там были все минимальные усилия в демостроении).

Так вот, Arbo разыгрывает несколько визуально-смысловых линий – это корень слова «дерево» на латинском и в идеальных условиях разработки хотелось показать круговорот жизни в широком смысле слова. Многие сцены паразитируют на том факте, что просто хотелось попробовать что-то в коде – например сцена с ростком – это набор из сплайнов (я большой любитель Кат-Мулл-Рома), и простенького триангулятора полигонов (просто жадный алгоритм с откусыванием внешних «ушей») синхронизированных по времени.

Хотелось сконцентрироваться именно на простых вещах, чёрно-белая палитра без переходов с лёгким запахом цвета от CGA адаптеров. Сцена с деревом, растущим вверх и корнями «вбитыми» вниз – один код, такой код просто приятно писать для самого себя – когда некие древоподобные структуры из кода можно представить визуально, управляя их атрибутами по времени (так же приятно, как взять гитару и чуть-чуть поиграть на ней).

Удивлять крутыми визуальными эффектами в эпоху ИИ-генерируемого контента и живых свидетелей сайтов типа shadertoy мне кажется уже бесполезным, но мы же и не про это.
Поэтому, Arbo получился очень low-tech, прям показательно basic – этот же код можно было запустить и 20 лет назад с тем же успехом. Поэтому всё дальше это по сути «окунуться в мир детства» (одновременно в коде и мыслях) – простые визуальные эффекты, все картинки были нарисованы с первой попытки (привет, arteuxx!), все простенькие модельки слеплены в Blender, времени (свободного) было настолько мало, что по сути всё что добралось до экрана делалось в последние 5-7 вечеров, т.к. до этого писался код-песочница для всего этого (классы, сцены, очень странный парсер .obj загрузчика на коленке, сплайны экспортировались из вообще другого рабочего проекта, т.к. там был редактор этих сплайнов).

Поэтому всё с одной стороны корявенько, с другой стороны есть мнение, что первая попытка всегда самая искренняя. Для меня самый большой момент во всём этом был вернуться в мир демосцены, который на такое длительное время (буу!) был от меня настолько далёк, но оказал в своё время такое огромное влияние.

(Я не лентяй, сильно наоборот, желание осталось, исчезло время, появился непрерывный забег по этой жизни – дом, семья, работа, на днях только вернулся из Норвегии, пробовал там китятину и представлял наши очередные прорывные разработки по работе-работе (возможно в обратном порядке), о чём это я? Вот! Молодёжь – творите сейчас!)

Теперь же у меня есть свежесобранные конструкции в коде, есть темплейт класса «демосистема» - отмазок ничего не делать уже нет. Теперь уже даже хочется сделать ещё демо на ЦЦ, скорее всего софтварное, поднажать на пиксели."

ZX Fake! by aGGreSSor / Пластмассовый Мир - второе место на Chaos Constructions'2025 в номинации oldskool demo. Платформа - Вектор-06Ц.

ZX Fake! by aGGreSSor (screenshot)
ZX Fake! by aGGreSSor (screenshot)

(youtube, vkvideo, rutube)

Работа для советского компьютера Вектор-06Ц, причём написанная на Бейсике. Интересная идея, я бы даже сказал - концепция. Автор, Евгений Соболев (aGGreSSor) написал подробную статью, приведу здесь несколько цитат:

"Идея «ZX Fake!» появилась спонтанно. Меня всегда привлекали советские компьютеры; ещё в детстве с интересом изучал дампы в приложении к «Юному технику», посвящённые ЮТ-88. Но в реальности и ЮТ-88, и Радио-86РК, и БК-0010-01 (последний — главным образом из-за палитры) производили отталкивающее впечатление.
...
Но должно же было быть что-то чисто советское и не уступавшее распространившемуся в перестройку «Спектруму»?
К своему удивлению, я обнаружил экземпляр, на котором «сошлись все звёзды», — и это был «Вектор-06Ц».
...
Из этих размышлений следовало, что перед нами — идеальный компьютер для демосцены, и эта ниша абсолютно свободна. Сложности, конечно, есть, но где их нет? На БК-0010-01? Три раза «ха!». Вот отсюда и появилась бредовая (на первый взгляд) идея писать демо на Бейсике под неизвестный советский компьютер.
...
Мои современники в советский период отличались от сегодняшних коллег в основном тем, что среди них было много людей, которые были готовы на «любой кипиш, кроме голодовки». Время, прошедшее с тех пор, отучило от излишней суеты. Поэтому я не сомневаюсь: если бы мы продолжали жить в едином государстве, то такое явление, как демосцена, в него обязательно бы проникло, просто приобретя свойственные этому государству черты. Именно эти черты я и попытался показать в «ZX Fake!». Черты, безусловно, гротескные и гипертрофированные, но по-своему симпатичные и несущие отпечаток собственной массовой Культуры — которой сегодня, на мой взгляд, попросту нет."

Работа No Heart Beats Forever by UriS - первое место на Chaos Constructions'2025 в номинации 256 bytes oldskool intro. Платформа - ZX Spectrum.

Работа No Heart Beats Forever by UriS (screenshot)
Работа No Heart Beats Forever by UriS (screenshot)

(youtube, vkvideo)

Здесь я тоже хотел бы отослать интересующихся к подробной статье автора этой замечательной работы (не так часто 256 байт интро содержит музыку), а здесь оставлю немного цитат из неё:

После своих прошлогодних работ для Chaos Constructions "daybyday" и "Tooticki häst" (которые, кстати, были для меня дебютными), я решил, что на этом и всё. Идей больше нет и не будет, даже близко к этим работам я уже ничего не смогу и не напишу, да и вообще.
...
С другой стороны, мысль попробовать поиграться с музыкой в рамках 256 байт засела где-то на задворках сознания со времён написания арт-пака "SPECSCII Art by UriS", когда я впервые разобрался с AY на «низком» уровне и стал понимать что и как с ним можно делать.
...
И тут начался самый интересный и захватывающий этап написания таких интрух — колдунство (зачёркнуто) оптимизация. В неё играешь, как в головоломку. А в какой-то момент уже не ты пишешь код, а код пишет тебя. Ты становишься заложником ранее созданного и очень тесного окружения, в котором и пытаешься нащупать неожиданные стороны. Сам не знаешь, куда в итоге придёшь.
И эта вечная игра — освободил 2 байта — отлично, надо что-то ещё запихнуть. Запихнул. На 8 байт превышение лимита. Надо оптимизировать. Оптимизировал -10 байт — отлично, опять 2 байта свободно, надо что-то ещё впихнуть! И вот так, с поиском компромиссов и явных и неявных умолчаний получается шаткий и нежный карточный домик из папиросной бумаги, который, на удивление, работает.
...
Каждый раз, после очередного шага казалось, что всё, дальше уже некуда ужимать и вообще надо ставить точку. Но каждый раз через какое-то время (часы или дни) появлялась новая мысль, что и как можно попробовать изменить или добавить/убрать, ведь как завещал главный патриарх отечественного программирования М. Р. Шура-Бура: «Любую программу всегда можно сократить на одну команду» (Это вообще должно быть настольным правилом любого сайзкодера, я считаю! Главное не увлекаться его рекурсией и не свести длинну кода к 0 ;) ).
...

Работа o0O by Vittu Girls - второе место на Chaos Constructions'2025 в номинации HighEnd Demo. Платформа - PC.

Одна из немногих работ под современную платформу. Хотя она была показана в HighEnd demo (был объединён с intro из-за традиционной нехватки работ), тут важно обратить внимание, что работа занимает всего 4 килобайта.

Работа o0O by Vittu Girls (screenshot)
Работа o0O by Vittu Girls (screenshot)

(youtube, vkvideo)

Работа Disequilibrium by Frog - пятое место на Chaos Constructions'2025 в номинации 256 bytes oldskool intro. Платформа - Vectrex

Работа Disequilibrium by Frog (screenshot)
Работа Disequilibrium by Frog (screenshot)

(youtube, vkvideo)

Сам себя не похвалишь, никто не похвалит. Если серьёзно, работа очень простая (правда и занимает всего 255 байт), но тут важна платформа - игровая приставка с векторным дисплеем, из-за чего простые вещи делаются совсем неочевидными способами. Я написал по этому поводу небольшую заметку.

Помимо конкурсов, на которые работы готовились заранее - как вышеперечисленные, на Chaos Constructions проводились ещё и так называемые Realtime конкурсы (их ещё называют Fast compo). Выделю два, потому что оба проводились непосредственно на фестивале - участники состязались вживую:

Realtime Commodore Amiga Graphics compo, организованное Ash - участники должны были за ограниченное время нарисовать в программе Deluxe Paint 4.1 картинку по заданной теме. Тема была "Маскоты ретруют" (Mascots doing Retro).

Commodore Amiga 500 с картинкой занявшей первое место
Commodore Amiga 500 с картинкой занявшей первое место
Работы с Realtime Commodore Amiga Graphics (1,2,3,4 места соответственно)
Работы с Realtime Commodore Amiga Graphics (1,2,3,4 места соответственно)

Realtime CRISS CP/M coding compo, организованное Игорем Решетниковым - участники должны были на вышеупомянутом компьютере CRISS CP/M (было четыре рабочих места) написать на Turbo Pascal 3.0 наиболее впечатляющий, насколько это возможно в текстовом режиме, эффект. Первое место (Scapescope by Александр) особенно впечатляет:

ScapeScope by Александр (screenshot)
ScapeScope by Александр (screenshot)

(youtube, vkvideo)

Исходник ScapeScope (TP 3.0)

{$c-}
program scapescope;

var
   s:array[0..1919] of char absolute $F800;
   d:array[0..1919] of byte;
   g:array[0..15] of char;

   f,x,y,a,i: integer;
   dx,dy,dd:real;

begin
  clrscr;
  gotoxy(30,11); writeln('Get ready for');
  gotoxy(32,12);   writeln('PineTreeP');
  f:=0;
  g[0]:=' ';
  g[1]:='+';
  g[2]:='*';
  g[3]:=chr($FD);
  g[4]:=chr($B0);
  g[5]:=chr($B1);
  g[6]:=chr($B2);
  g[7]:=chr($1F);
  g[8 ]:=chr($F6);
  g[9 ]:=chr($FA);
  g[10]:=chr($DF);
  g[11]:=chr($FB);
  g[12]:=chr($F7);

  x:=0; y:=0;
  for i:=0 to 1919 do begin
    x:=i mod 80; y:=i div 80;
    dx:=x-40; dy:=(y-11)*2;
    dd:=sqrt(dx*dx+dy*dy);
    d[i]:=round(dd);
  end;

repeat
  x:=0; y:=0;
  for i:=0 to 1919 do begin
    a:=(d[i]+f) and 7;
    s[i]:=g[a];
  end;
  f:=f+1;

  s[918]:=g[8];
  s[919]:=g[9];
  s[920]:=g[10];
  s[921]:=g[11];
  s[922]:=g[12];
until keypressed;
end.

Как обычно, все работы показывались на большом экране и оценивались зрителями.

По результатам голосования мы объявили результаты и провели церемонию награждения

(youtube, vkvideo)

Кроме того, организаторами фестиваля были отдельно отмечены работа Corvet by Stardust и собранный Vinxru компьютер Микро-80.

Помимо нас, организаторов, Chaos Constructions'2025 не состоялся бы без бескорыстной помощи многих людей - кто-то помогал деньгами, кто-то таскал тяжести, кто-то настраивал технику и софт.

Общая фотография после завершения подготовки CC'2025
Общая фотография после завершения подготовки CC'2025

Как это происходит у нас ещё со времён ENLiGHT'95 (да и, полагаю, на всех demo party), граница между посетителями и участниками фестиваля весьма условна, как и между участниками и организаторами. В том числе поэтому на общих фотографиях сделанных перед и после CC'2025 можно видеть и тех и других.

Общая фотография после завершения CC'2025
Общая фотография после завершения CC'2025

Перечислю, кто занимался в этом году организацией фестиваля. Это Александр Калмыков (3ym), Евгений Барбашин (oldayn), Артём Васильев (wbcbz7), Андрей Маринов (nyuk), Тимофей (klalofudo), Евгений Рябцев (Cyciron), Никита Артёменко (nikhotmsk), Владимир Зарембо (m512), Дарья Солодова и другие.

Нельзя не отметить систему Андрея Маринова (nyuk) с помощью которой, уже не впервые, осуществлялся приём конкурсных работ, их показ и голосование. Вообще, Андрей и Артём по сути взяли на себя почти всё, что касается демосценерской части непосредственно на фестивале. Плюс Александр Колногоров помог нам с процедурой награждения.

Андрей Маринов (nyuk) работает со своей системой (на двух экранах слева) и смотрит на расписание на сайте фестиваля (справа), сгенерённое системой управления проектами Frog'a.
Андрей Маринов (nyuk) работает со своей системой (на двух экранах слева) и смотрит на расписание на сайте фестиваля (справа), сгенерённое системой управления проектами Frog'a.

Что касается меня, я воспользовался случаем и впервые опробовал свою систему управления проектами для упрощения организации, собственно, фестиваля:

Диаграмма Ганта в системе управления проектами Frog'a
Диаграмма Ганта в системе управления проектами Frog'a

В завершении статьи хочется ещё раз повторить банальное: организаторы могут организовать фестиваль, но не могут заменить участников конкурсов. Выставка и семинары - очень важное и неотъемлимое, но всё же дополнение этого. Без достаточного количества работ (будь то демки или участие в realtime'ах) вся наша деятельность по Chaos Constructions теряет смысл - буквально.

Пишите демки!
Пишите демки!

Дополнительные материалы

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


  1. trawen
    07.10.2025 10:50

    Corvet by Stardust - из рассказа может сложиться впечатление, что любой может сделать демо для ZX Spectrum за неделю! )