MATRIX RAIN: 2025 REFACTOR

21 DECEMBER 2025

Fixed the Unicode issue finally. Can now mix ASCII + Katakana.

Moved Phosphor decay level into the 4th byte of the RGB union - should’ve done this in 2022 instead of separate array. What was I thinking.

Keeping the RGB/PD union as it is. I’m aware of the portability issues, but I’m on a little-endian machine, and I’m the only one reading this anyway. It’s cleaner.

New charset array works. UNICODE(min, max) macro packs the range into uint64. insert_code() unpacks block and picks random char.

Full-width Katakana breaks columns. Stick to half-width (U+FF61-U+FF9F) range . Compile with -DNOKANA to disable Katakana altogether.

blend() is still good, left it alone.

Tossed license and automake cruft. Just cc -O3 main.c -o matrix. Don’t need the ceremony.

Performance regressions: none. Runs like a charm on the T490. 2% CPU. No whirring fans.

Commit: 03f8d87