Pouët Top List 2020

 

Опубликован список, пора вспомнить, как прощел славный год.


Идея родилась из TIC-80 - алгоритм достаточно простой : случайным образом выбираются координаты, считывается цвет и ставятся точки того же цвета сверху, снизу, слева и справа. Написал код на пейси, вышло 128байт. JinX сказал, что код можно сократить до 64байта и подсказал пару трюков оптимизации. Процесс оптимизации затянулся, какими-то усилиями я сократил код.

Идея эффекта появилась после выдирания порции крактро от версий TR-DOS.Такой вот простой алгоритм. 64 байта для ZX Spectrum

В удаленном блоге я уже упоминал, что идея картинки возникла после просмотра обложки на каком-то варезнике. разработка 128 байт затянулась на 6 часов, после прогона кода отладчиком меня осенила идея как лучше сделать. Надо было отправить на Outline, но на пати уже улетели 4 работы.

Уже писал здесь в блоге о компьютере Camputers Lynx. Просто решил попробовать свои силы в кодинге. Увы, в отладчике не удалось понять, почему код построения точки неверен - структура памяти компьютера просто убитая. Просидел почти весь день, так ничего не добился. На счастье мне попался комментированный дизассемблер ROM, откуда я извлек данные процедуры построения точки. Наработанный ранее эффект лег на интро 128 байт : для координат случайным образом выбирается направление 0-7 и цвет, точка двигается. Для интро лишние 5 байт, т.к. цвет в процедуре проверяется по битам. Жаль, что не удалось изучить нюансы до конца.

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

Еще одна работа для Outline - идея возникла сама по себе. Используется незатейливый вариант - режим Бейсика GR.0 в комбинации с GR.9, подробно я писал на Habr. Два человека сказали, что эффект понравился. Для Спектрума эффект не получился, мне не хотелось повторять одно и то же.

О создании писал в этом блоге, реализацию алгоритма я переписал на ассемблере. Serzhsoft меня переплюнул, сократив код до 70 байт. Хорошо бы довести дерево до конца - сделать качание и что-нибудь еще.

История создания длиннее, чем 128 байт. Нашел короткий набросок в архивах старого блога и взялся за модификацию. Основная идея в параметрах центра для построения точек - я подбирал центр вручную. На остаток добавил генерацию ч/б. Странно, что народу понравилось.

Еще одна работа для Outline. Это тот момент, когда я взялся за реализацию идеи "сделать нечто под HiRes".Алгоритм тоже описан на Habr, опишу кратко: рисуется линия, точки движутся по алгоритму pong'a.  Также рисуется линия черным цветом, но координаты запаздывают за первоначальной линией на 16 шагов. Код сократился за счет использования адресации нулевой страницы. Задумка выглядело неплохо, это меня окрылило - 256 байт прототипа сократились до 128 .

"Мопед не мой, я просто..." или дело было так: в канале сайзкодеров Discord JinX заикнулся об инвитро. Я решил попробовать простой вариант - колебание лого, алгоритм можно найти в интернетах в архивах BBS. Логотип (или изображение) рисуется со смещением по вертикали с использованием таблицы синуса. Когда картинка нарисована, добавляется смещение по горизонтали с тем де синусом. В TIC-80 использовалась функция SCN() - по линиям записывается в ячейку значение аппаратного смещения.

Сначала нужно подготовить данные. Я взял картинку с сайта и перевел в 4 цвета, помог FastStone Image Viewer - сохранить как GIF, в опциях указать 4 цвета. Готовую GIF я отдал mtPaint и сохранил как .XPM - этот красноглазый формат в текстовом виде хранит нужные данные.

Готовый вариант бросил на Discord, 10Кб вызвало одобрение, но история продолжалась - великие умы(HellMood+Gasman) взялись за короткий вариант, который подошел бы как инвитра в размере 512байт. Решение было просто гениальным: растр заменен на векторные элементы. Например, буква L рисуется  двумя прямоугольниками. Короче, через день код был готов, все счастье свалилось мне : готовый код из-за недоработки эмулятора рисовался не так, как на картинке, а серо-зеленым. Неимоверными усилиями я собрал версию online. 

интро готовилось на будущее для Forever 2020. Часть идей я позаимствовал у одной интро на Атари. Готовилась работа долго, после добавления кода интрошек всё ломалось. В итоге 1к заработала, но без звука. И надо же так случиться - Forever отменили. Да и откладывать на позднюю пати не было смысла(сроки тоже отменили) - поэтому я решил опубликовать работу.

 Список календаря исчерпан, на очереди остался Demosplash. Но на этот раз из-за прежних неудач мне не хотелось ничего делать. Однако, очередное безделье привело к реализации очередных идей, просто захотелось накодить что-то. Идея дема отсутствовала, музыки не было, после размышлений я остановился на простом варианте - привязать эффекты под музыку. Подробное making of напишу в Downgrade.

Мелкоинтры уже появлялись в разных версиях, а это мой вклад. Мне была интересна одна задача: написать минимальный код, который бы рисовал на экране без биперного пердежа и бордерного мерцания. Задача удалась, полноэкранное глюкало я сделал для lovebyte party.

Теперь список исчерпан, но осталось немного работ. Хотя и обошлось не без меня : я вступил в команду RMDA, собранную унбеливером. И он, похоже, нашел способ пиара работы. Дело кончилось печально, а я свалил в ужасе из команды.

Предыстория создания: меня конкретно задела победа на СС одной просоветской интро. Поэтому я решился на создание этой провокационной работы. Когда набросок был готов, я отдал снапшот ММА, тот ухватился за идею "русские идут!" и выдал за инвитро. Как по мне работа удалась, если судить по количеству отложенных кирпичиков - лайки за флаги лгбт идут, а флаг СССР не нравятся.


Красивый эффект. Оригинал найден в программе, которая публиковалась в "Спектрофоне". Надо сказать, что я долго искал описание алгоритма, и раскопал все же - Daemons from cyclic space.

Код был переведен под 6502 и я использовал эффект на Атари. Позже, для Forever я решил алаптировать эффект для Forever. Свел код под Apple II, и начались обломы - программа не работала. Пофиксил. Спрашиваю Mike/ZeroTeam - примет ли он работу под Apple II? Он отвечаеи - да, если предоставить видео записи на реале.

Хорошо, я общаюсь в паблике на FaceBook, задаю вопрос - и тут влезает один косноязычный гандон из Египта, который начинает качать права, какой плохой мой английский. Да, ему не понравился переводчик, который плохо перевел вопрос.

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


Никогда, вы слышите, никогда не пишите интро, если нет материала! Я слепил это 256б для Forever, потому что на демопати была задана тема - ROBOT. Дальше - понятно.

Список кончился, коньяк тоже. Новый год впереди, и новые открытия тоже впереди.


Комментарии