tm2027 · живой борд

Пиксельный ход

Восьмибитная моторика для всей деки и её органов. Каждая секция — один выбор; все демо ниже живут на том же ритме, на котором будет жить дека: 8 битов в секунду, кадрами, без плывущей альфы. Клик по карточке — выбор; строка выбора собирается внизу.

The Paid Motion Rule. Стоячее движение оплачивается breath-часами — 8 перерисовок в секунду, только когда окно спереди и MOTION: FULL. Ни один вариант ниже не просит vsync.
The Labelled State Rule. Слова состояний не меняются. Анимация — это одежда LIVE, WORKING, BELL и DONE, не их замена.
MOTION: REDUCED. Останавливает всё, включая этот борд — если у вашей системы включено «меньше движения», демо стоят, и это честно.
Конечное против стоячего. Конечный тик (DONE, приход BELL, attach) оплачивается один раз. Стоячий пульс (LIVE, WORKING) — только по биту часов.
1

Грамматика деки

Один язык движения для всего аппа. Выбранная грамматика решает, как любая анимация ниже произносится; остальные секции решают, что она говорит.

1A
Local LIVE
claude · fleet-watch ▶ run · 4m

Дыхание фосфора

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

1B
workspace · tm2027
workspace · herdr

Кадр с листа

Стоячие состояния неподвижны. Зато каждый переход — выбор, фолд, attach — конечный трёхкадровый флип, как страница спрайт-листа: старое, промежуток, новое. Движение живёт только в момент смены и оплачивается один раз.

1C
ssh · builderLIVE

Растровый интеррапт

Изменение объявляет себя одной пробегающей сканлинией цвета нового состояния — как растровая полоса C64, прошитая через строку. Пробежала — и всё снова стоит. Стоячих пульсов нет вовсе: дека неподвижна между событиями.

1D
wsl · Ubuntu LIVE

Тихий пиксель контроль

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

1E
ssh · builder LIVE STALE

Щелчок автомата смелее

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

1F
tab · build pane · logs

Фосфорный след смелее

Всё, что исчезает — закрытый чип, ушедшая строка, отстоявшая карточка, — оставляет однокадровый призрак: контур в четверть яркости, как след на медленном фосфоре. Появление мгновенно, исчезновение имеет вес. Дека помнит на один кадр дольше, чем видит.

2

LIVE-дот

Дыхание свежести сервера — самое частое стоячее движение деки. Слово LIVE стоит рядом и не участвует: дышит только знак.

2A
размер шагает 4 → 6 → 8 px

Ступени размера

Квадратный дот растёт и оседает четырьмя жёсткими ступенями. Читается через комнату, честно гаснет на REDUCED, и квадрат — родной для мира Hard pixel.

2B
дот стоит — мерцает решётка ореола

Дизер-ореол

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

2C
форма стоит — яркость идёт по лестнице

Лестница яркости

Дот держит форму и шагает по четырём ступеням зелёного из палитры активного мира. В C64-мире лестница собирается из цветов VIC-II, в ZX — из бумажных. Самый спокойный.

3

Флаг WORKING

Пан работает — флаг сидит на раме тайла. Слово WORKING остаётся; варианты — что движется рядом с ним, по биту часов.

3A
WORKING

Квадрантный спиннер

Четыре пикселя 2×2, горящий шагает по кругу — два оборота в секунду на битовых часах. Наследник курсора-пропеллера, но нарисованный квадами деки, не глифом шрифта.

3B
WORKING

Лента под словом

В подложке флага бегут наклонные штрихи в тоне amber — лента, которую пан «мотает». Слово стоит на месте; движется только фактура за ним, шагами по 2 px.

3C
WORKING

Три пикселя очереди

Справа от слова три пикселя загораются один за другим и гаснут разом — терминальное многоточие, произнесённое квадами. Самый словарный: так «работаю» говорили все 8-битные машины.

4

Приход BELL

Стоячий BELL по правилу неподвижен: колокол — состояние, не вспышка. Выбирается только момент прихода — один конечный тик, когда рама впервые берёт amber. Дальше — тишина до взгляда.

4A
BELL

Три кадра звона

В момент установки колокольчик у слова качается: влево, прямо, вправо — три кадра, и замер. Единственные 375 мс движения на всю жизнь состояния.

4B
BELL

Инверсия на кадр

Один кадр — флаг вспыхивает негативом (тёмное слово на amber), со следующего бита встаёт в постоянную форму. Резкий, честный «дзынь» без единого промежуточного значения.

4C
BELL

Без движения контроль

Как сегодня: рама и слово просто появляются. Состояние есть, движения нет — самая строгая верность правилу «колокол не мигает».

5

Тик DONE

Единственный конечный тик, который дека уже держит. Сейчас это появление чека; варианты — как чек рождается, за 3–4 кадра, один раз.

5A
штрих рисуется по пикселям

Росчерк

Чек прочерчивается пиксель за пикселем, как курсор, ставящий галочку от руки. Четыре кадра — полсекунды — и знак стоит.

5B
вспышка пикселей → чек

Вспышка

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

5C
чек проявляется дизером

Проявка

Чек материализуется упорядоченным дизером: четверть пикселей, половина, весь. Никакой хореографии — знак просто «доэкспонируется» за три кадра.

6

CHECKING · INSTALLING · STARTING

Пока сервер поднимается, его строка говорит одно слово в amber. Это стоячее ожидание — единственное место деки, где длинная фактура движения уместна.

6A
INSTALLING

Лента ZX

Под словом бежит узкая полоса жёлто-синих штрихов — бордюр загрузки с кассеты, самый узнаваемый «жди» восьмибитной эпохи. Шаги по 2 px, по биту.

6B
INSTALLING

Растровые полосы

Сквозь само слово переливаются горизонтальные полосы яркости — растровый интеррапт C64, прошитый через литеры. Слово читается всегда; переливается только его тело.

6C
INSTALLING

Многоточие

Три пикселя после слова, шагом раз в два бита. Та же очередь, что у WORKING 3C — если выбрать оба, «пан занят» и «сервер поднимается» заговорят одним словом.

7

Смена пана

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

7A

Проявка дизером

Новый кадр проявляется сквозь старый упорядоченным дизером за три бита. Смена читается как событие, но не длится: 375 мс, оплаченные один раз.

7B

Сканлайн-вайп

Новый кадр раскрывается сверху вниз шестью полосами, кромку ведёт светлая сканлиния — как луч, перерисовывающий экран. Самый «телевизионный» из трёх.

7C

Мгновенно контроль

Как сегодня: срез без перехода. Скорость и есть выразительное средство — дека, которая не тратит ни кадра на театр.

8

Кот в восьмибитных мирах

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

8A

Палитра мира

Кот перекрашивается в шестнадцать цветов активной машины: на C64 он голубой на синем, на ZX — чернильный на бумаге. Кот как спрайт этой машины, свой до последнего пикселя.

8B

Свой навсегда

Кот держит собственные цвета в любом мире — как метки агентов, чьи цвета принадлежат им, а не теме. Гость из деки, а не подданный машины.

8C

Под веилом

Цвета свои, но CRT-веил ложится и на кота: сканлайны гасят его так же, как гасят текст на стекле. Кот сидит по ту же сторону фосфора, что и всё остальное.

9

Приход corner-карты

Карточка новости стоит шесть секунд и уходит. Выбирается один конечный тик её появления над правым нижним углом стекла.

9A
codex · done
wsl · crawling

Три шага от края

Карта входит с правого края тремя шагами по 8 px — идёт, а не плывёт. Направление говорит «пришло снаружи», шаги говорят это по-восьмибитному.

9B
codex · done
wsl · crawling

Проявка на месте

Карта материализуется там, где будет стоять: решётка, полурешётка, целиком. Ничего не едет — новость просто «доэкспонируется» из воздуха за два бита.

9C
codex · done
wsl · crawling

Кадр рамки

Карта появляется мгновенно, но первый бит её рамка горит цветом состояния в полную силу и оседает до обычной. Один кадр акцента — и тишина.

Волна 2 · смелее

Семь новых органов и два дерзких варианта грамматики выше (1E, 1F). Всё по-прежнему на битовых часах; там, где вариант просит новое именованное исключение из правил деки, карточка говорит это прямо.

10

Запуск деки

Единственный момент, когда всё окно принадлежит одному конечному жесту. Секунда церемонии на процесс — самая дешёвая анимация из возможных.

10A

Самотест

Рейл собирается строка за строкой, как POST-экран: серверы отчитываются по одному, счётчик панов идёт вверх, и последняя строка — READY. Дека здоровается так же, как здоровались машины, которым этот борд обязан всем.

10B

Кинескоп

Окно включается как ЭЛТ: горизонтальная линия, полоса, полный кадр — три бита от чёрного до деки. Самая короткая церемония из трёх и самая телесная: экран не «загружается», а зажигается.

10C

Бордер-загрузка

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

10D

Без церемонии контроль

Как сегодня: окно открылось — дека стоит. Ноль кадров на театр.

11

Смерть пана

Пан ушёл из снапшота — его тайл покидает сетку. Сейчас он просто исчезает. Конечный жест на настоящую смерть — у кота на неё уже есть Arch.

11A

Кинескоп гаснет

Содержимое схлопывается в горизонтальную полосу, полоса — в линию, линия — в точку, точка гаснет. Четыре бита. Зеркало запуска 10B: дека, которая включается как ЭЛТ, имеет право так же выключать своих мёртвых.

11B

Осыпание

Пиксели вывода осыпаются вниз сквозь дизер за три бита — как подбитый инвейдер. Самый жалобный из трёх: у смерти есть направление, и оно вниз.

11C

Негатив-прощание

Один кадр инверсии всего тайла — фотовспышка на память — и пусто. Пара к грамматике 1E: если дека щёлкает кадрами, смерть — самый громкий её щелчок.

12

Рождение символа

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

12A

Штамп

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

12B

Сборка из решётки

Символ первый кадр стоит шахматным блоком и на следующем бите становится собой — знак «доезжает» из фосфора. Тише штампа, но у рождения есть фактура.

12C

Как есть контроль

Символ появляется готовым, как сегодня. Эхо остаётся невидимым механизмом, а не жестом.

13

Дот отбивает опрос

Смелая замена стоячему дыханию LIVE: движение не по декоративному циклу, а по настоящему событию — каждому пришедшему поллу. Кадр — это данные.

13A
кольцо на каждый успешный poll · раз в ~2 с

Радар

От дота расходится однокадровое квадратное кольцо в такт опросу. Между поллами — полная неподвижность: дот не изображает жизнь, он отчитывается о ней. Пропавшее кольцо заметно раньше, чем слово STALE.

13B
poll 9 mspoll 51 ms

Вспышка по RTT

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

13C
сегодняшнее дыхание

Дыхание как есть контроль

Стоячее дыхание остаётся: ровный пульс, никакой связи с поллами.

14

Переключение мира

PREV/NEXT в карусели тем перепроецирует всю деку. Сейчас — мгновенно. Конечный жест на самое крупное событие, какое умеет чинить внешность деки.

14A

Растровая заливка

Новый мир заливает деку сверху вниз шестью полосами со светлой кромкой — тот же луч, что в вайпе 7B, но на всю сцену. Смена мира становится физическим событием: видно, как новый свет доходит до каждой строки.

14B

Ступени палитры

Мир приходит в три ступени точности: сперва грубая четырёхцветная версия, потом восьмицветная, потом полная — как палитра, догружающаяся из CLUT. Самый восьмибитный жест на борде: цвет как ресурс, который подвозят.

14C

Мгновенно контроль

Как сегодня: перепроекция на месте, ноль кадров.

15

Жизнь бэкдропа

В машинных мирах рейл носит картину машины. Она статична. Редчайший идл-жест — один конечный тик раз в десятки секунд — оживил бы её, не превратив в шум.

15A
бурджи вздрагивает раз в ~30 с

Флаг вздрагивает

Ласточкин хвост бурджи C64 делает один двухкадровый взмах раз в полминуты — как от сквозняка. Достаточно редко, чтобы поймать его взглядом было маленьким событием.

15B
арки переливаются одним кадром

Радуга переливается

Арки над фудзи Atari на один кадр сдвигают свои цвета по кругу — короткий блик бокс-арта — и снова стоят. Та же редкость, что у флага: жест, а не цикл.

15C
картина стоит

Натюрморт контроль

Бэкдроп остаётся картиной, как сегодня. Это портрет машины, а не её симуляция.

16

Кот выходит из рамки

Сейчас кот отвечает только фактам флота. Смелая волна даёт ему отвечать событиям интерфейса — настоящими позами из его же репертуара.

16A
codex · done

Лапой по новости

Прилетела corner-карта — кот тянется к ней лапой (его настоящая поза PawGlass); карта уходит, кот садится обратно. Новость становится вещью в его мире, а не только в вашем.

16B
INSTALLING

Смотритель установки

Пока сервер ставится, кот стоит в стойке Alert у строки — уши вперёд, хвост напряжён — и садится, когда сервер отвечает LIVE. Установка обретает свидетеля.

16C

Репертуар как есть контроль

Кот отвечает флоту и только флоту, как сегодня. Спит, когда никому ничего не нужно, — и это тоже ответ.