Home
Admin | Edit

Mmrnmhrm - Linux 256 bytes

link

First 100% x86 assembly tiny program. (with Zeta and Crimson)

Was quite a ride to fit this one in 256 bytes.

First version was in C but couldn't fit it in 256 bytes (was close though !) so i decided to go full assembly.

Since it is some kind of feedback effect i had to use another way to setup the framebuffer (and use pwrite64) so that reading the framebuffer content was fast.

It was fairly difficult to fit everything, biggest issue i had was to generate the initial buffer content (seed for the automaton) since it was some arcs made up by the minsky circle algorithm.

My article on tiny bit-field renderer (written after this) was some kind of research and was directly related to the issue of fitting plenty lines / chars in tiny space.

The end result is okay although abstract, it was more of a POC to try to fit my feedback + automata programs into tiny space, it is way nicer at 1024x768 because there is less repetition on the sides, 1024x768 was the intended target resolution but i liked the ability of such tiny program to produce such graphics at the default resolution (1920x1080) of my monitors so... decided to go for it.

There is subtle details in there that was chosen on purpose such as the little heart patterns around the square structures which relate to the release party. (Lovebyte 2022)

Note : The algorithm is very similar to the diffusion algorithm (solving Poisson equation) but with on purpose quirks (and usage of bitwise operators) which produce highly glitchy structures.

1024x768 version

back to topLicence Creative Commons