diff options
Diffstat (limited to '_site/log/matrix-digital-rain')
| -rw-r--r-- | _site/log/matrix-digital-rain/index.html | 110 | ||||
| -rw-r--r-- | _site/log/matrix-digital-rain/matrix.mp4 | bin | 696574 -> 0 bytes | |||
| -rw-r--r-- | _site/log/matrix-digital-rain/poster.png | bin | 233077 -> 0 bytes | |||
| -rw-r--r-- | _site/log/matrix-digital-rain/thumb_sm.png | bin | 52762 -> 0 bytes |
4 files changed, 0 insertions, 110 deletions
diff --git a/_site/log/matrix-digital-rain/index.html b/_site/log/matrix-digital-rain/index.html deleted file mode 100644 index 1915d04..0000000 --- a/_site/log/matrix-digital-rain/index.html +++ /dev/null @@ -1,110 +0,0 @@ -<!DOCTYPE html> -<html> - <head> - <meta charset="utf-8"> - <meta name="viewport" content="width=device-width, initial-scale=1"> - <title>Matrix Rain: 2025 refactor</title> - <link rel="stylesheet" href="/assets/css/main.css"> - <link rel="stylesheet" href="/assets/css/skeleton.css"> -</head> - - - <body> - - <div id="nav-container" class="container"> - <ul id="navlist" class="left"> - - <li > - <a href="/" class="link-decor-none">hme</a> - </li> - <li > - <a href="/projects/" class="link-decor-none">poc</a> - </li> - <li > - <a href="/about/" class="link-decor-none">abt</a> - </li> - <li> - <a href="/cgi-bin/find.cgi" class="link-decor-none">lup</a> - </li> - <li> - <a href="/feed.xml" class="link-decor-none">rss</a> - </li> - </ul> -</div> - - - - <main> - <div class="container"> - <div class="container-2"> - <h2 class="center" id="title">MATRIX RAIN: 2025 REFACTOR</h2> - <h5 class="center">21 DECEMBER 2025</h5> - <br> - <div class="twocol justify"><p>The 2022 version worked but had some loose ends. Unicode support was -inflexible–couldn’t mix ASCII with Katakana; Phosphor decay was stored in a -separate array when it should’ve been packed with RGB; Code was harder to read -than it needed to be.</p> - -<video style="max-width:100%;" controls="" poster="poster.png"> - <source src="matrix.mp4" type="video/mp4" /> -</video> - -<p>Moved phosphor decay into the 4th byte of the RGB union–should’ve done this -in 2022; What was I thinking.</p> - -<p>Keeping the RGB union despite portability concerns. All my systems are -little-endian and the code is cleaner this way.</p> - -<p>Fixed Unicode by introducing a charset array. UNICODE(min, max) packs Unicode -ranges into uint64: low four bytes for start, high four bytes for end. -insert_code() unpacks a random block and picks a character from it:</p> - -<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>#define UNICODE(min, max) (((uint64_t)max << 32) | min) - -static uint64_t glyphs[] = { - UNICODE(0x0021, 0x007E), /* ASCII */ - UNICODE(0xFF65, 0xFF9F), /* Half-width Katakana */ -}; - -static inline void insert_code(matrix *mat, - size_t row, size_t col) -{ - uint64_t blk; - uint32_t min, max; - - blk = glyphs[(rand() % glyphlen)]; - min = (uint32_t)blk; - max = (uint32_t)(blk >> 32); - mat->code[index(mat, row, col)] = rand() % (max - min) + min; -} -</code></pre></div></div> - -<p>Full-width Katakana breaks column alignment. Stick to half-width -(U+FF61-U+FF9F) range. Compile with -DNOKANA to disable Katakana altogether.</p> - -<p>blend() is still good. Leaving it alone.</p> - -<p>Tossed license and automake cruft. Just <code class="language-plaintext highlighter-rouge">cc -O3 main.c -o matrix</code> now. Don’t -need the ceremony.</p> - -<p>Runs at 2-3% CPU on OpenBSD (T490). No regressions. Fans are quiet.</p> - -<p>Commit: <a href="https://git.asciimx.com/matrix-digital-rain/commit/?id=f71b0de15a94d21ea60d281d73fa41311d8e5197" class="external" target="_blank" rel="noopener noreferrer">f71b0de</a>.</p> - -</div> - <p class="post-author right">by W. D. Sadeep Madurange</p> - </div> - </div> - </main> - - <div class="footer"> - <div class="container"> - <div class="twelve columns right container-2"> - <p id="footer-text">© ASCIIMX - 2026</p> - </div> - </div> -</div> - - - </body> -</html> diff --git a/_site/log/matrix-digital-rain/matrix.mp4 b/_site/log/matrix-digital-rain/matrix.mp4 Binary files differdeleted file mode 100644 index 7edf5d6..0000000 --- a/_site/log/matrix-digital-rain/matrix.mp4 +++ /dev/null diff --git a/_site/log/matrix-digital-rain/poster.png b/_site/log/matrix-digital-rain/poster.png Binary files differdeleted file mode 100644 index 1f68ca4..0000000 --- a/_site/log/matrix-digital-rain/poster.png +++ /dev/null diff --git a/_site/log/matrix-digital-rain/thumb_sm.png b/_site/log/matrix-digital-rain/thumb_sm.png Binary files differdeleted file mode 100644 index 940965a..0000000 --- a/_site/log/matrix-digital-rain/thumb_sm.png +++ /dev/null |
