From c00ff9a3b56b6aa28367488f62afcc6f8185a91f Mon Sep 17 00:00:00 2001 From: Sadeep Madurange Date: Sat, 25 Oct 2025 16:23:39 +0800 Subject: Render rest of the project write ups. --- _projects/matrix-digital-rain.md | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 _projects/matrix-digital-rain.md (limited to '_projects/matrix-digital-rain.md') diff --git a/_projects/matrix-digital-rain.md b/_projects/matrix-digital-rain.md new file mode 100644 index 0000000..c385907 --- /dev/null +++ b/_projects/matrix-digital-rain.md @@ -0,0 +1,38 @@ +--- +title: The Matrix digital rain +date: 2024-01-12 +author: W. D. Sadeep Madurange +thumbnail: thumb.png +layout: post +--- + +The famous digital rain from the movie The Matrix implemented in C for +the Unix terminal without using any GUI/TUI kits: + + + +Domsson's {{< link src="https://github.com/domsson/fakesteak" class="external" +target="_blank" rel="noopener noreferrer" >}}Fakesteak{{< /link >}} inspired +this project. I added the following features while trying to keep the original +project's simplicity intact as much as possible: + +- Customize the rain color to match the theme of the setup. +- Support for UTF-32 characters. +- The ghosting effect of old monochrome displays. +- The rain more closely resembles the original from the first movie. + +To use them, you need a terminal emulator that supports 24-bit RGB colors and +Unicode characters. + +The background, head, and tail colors of the rain can be configured via +`COLOR_BG_*`, `COLOR_HD_*`, and `COLOR_TL_*` settings. The `UNICODE_MIN` and +`UNICODE_MAX` values control the character set used for the rain. For instance, +use `0x30A1` and `0x30F6` for Katakana: + + + +Happy ricing! + +Files: [source.tar.gz](source.tar.gz) -- cgit v1.2.3