Цветные звёзды

Это мой самый первый эффект, созданный еще в начале 90-х на клоне микрокомпьютера ZX-Spectrum под названием “Ленинград-1”. Программа была написана на языке Бэйсик.

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

1 BORDER 0
2 PAPER 0
3 CLS
10 RANDOMIZE
20 INK 1+INT (RND*7)
30 PLOT INT (RND*256), INT (RND*176)
40 GOTO 20

Мне кажется, описывать алгоритм излишне, но всё же попробую.

Далее начинается бесконечный цикл:

Эффект — экран заполняется точками разных цветов в случайных местах, создавая “шумовую” визуализацию.

Пример работы программы на ZX-Spectrum

Однако со временем можно заметить, что точки выстраиваются в линии. Это связано с особенностями генератора случайных чисел ZX Spectrum, который использует линейный конгруэнтный алгоритм. Такой подход, хотя и эффективен для своего времени, порой создаёт видимые закономерности, особенно если числа проецируются на экран через простые операции, такие как взятие остатка. Ограниченный диапазон чисел и повторяемость последовательности при одинаковом начальном значении также усиливают этот эффект.