Linus Åkesson’s “A Mind Is Born” Commodore 64 Demo in Just 256 Bytes

Modern software often arrives wearing a backpack full of frameworks, libraries, trackers, fonts, and mysterious files Is Born travels considerably lighter. The entire Commodore 64 demo occupies only 256 bytes, yet it produces an evolving electronic soundtrack, animated abstract graphics, rhythmic transitions, and a carefully staged ending.

That is not 256 kilobytes. It is not a compressed video. It is not a tiny loader that secretly downloads the impressive part from somewhere else. The executable itself is exactly one quarter of a kilobyte, including the bytes required to load and launch it. In that microscopic space, Åkessonknown in the demoscene as Lftturns the Commodore 64’s SID sound chip, VIC-II graphics hardware, timers, operating-system routines, and memory layout into one tightly integrated audiovisual instrument.

The result is part chiptune, part generative artwork, part assembly-language magic trick, and part reminder that limitations can be rocket fuel for creativity. It also has enough flickering imagery to deserve a practical warning: viewers sensitive to flashing or rapidly changing patterns should approach the video cautiously.

What Is “A Mind Is Born”?

A Mind Is Born is a 256-byte Commodore 64 intro created by Swedish programmer, musician, and hardware experimenter Linus Åkesson. It was released at Revision 2017, a major demoscene event held in Saarbrücken, Germany. Because the event did not have a dedicated 256-byte category, Åkesson submitted it to the Oldskool 4K Intro competition, where it took first place despite using only one-sixteenth of the permitted size.

A “demo” in this context is not a trial version of commercial software. Demoscene productions are real-time audiovisual works designed to showcase programming skill, artistic direction, music, and intimate knowledge of computer hardware. Size-limited intros add another rule: the executable must remain below a strict file-size ceiling. The smaller the limit, the more every instruction, constant, address, and accidental side effect matters.

Introduced in 1982, the Commodore 64 combines a 6510-family processor, 64 KB of RAM, VIC-II graphics, and the famously characterful SID synthesizer. Its direct, memory-mapped hardware makes it ideal for disciplined demoscene mischief.

Why 256 Bytes Is Such an Extreme Constraint

Two hundred fifty-six bytes equals 2,048 bits; a short plain-text paragraph can exceed that. A C64 bitmap needs thousands of bytes, and a conventional song sequence would rapidly consume the budget. The file must also include its load address and a tiny BASIC line that launches the machine code because competition rules required the normal BASIC loading location.

This leaves no room for conventional assets. There is no stored animation, no library of images, and no long table containing every musical note. Instead, A Mind Is Born relies on procedural generation: compact rules create a much larger experience while the program runs. The code is less like a suitcase packed with content and more like a seed that persuades the computer to grow content.

How the Soundtrack Fits Inside the Commodore 64

Three SID Voices, Three Musical Jobs

The Commodore 64’s SID chip provides three independent voices. Åkesson gives each one a clear role. Voice 1 supplies the kick drum and bass. Voice 2 carries the melody. Voice 3 produces a sustained drone whose volume ducks on the beats, imitating the pumping effect associated with side-chain compression in electronic dance music.

The piece runs for 64 bars in 4/4 time at 112.5 beats per minute. A 60 Hz timer interrupt advances the song, updates SID registers, changes visual state, and returns control to the graphics loop. Music is the demo’s central scheduler, not a decorative attachment.

An Algorithm Composes the Melody

The melody is generated with a linear-feedback shift register, or LFSR. An LFSR is a tiny deterministic system that shifts bits and feeds selected values back into itself. It can produce a long sequence that feels random even though the same starting seed always creates the same result.

Pure randomness would sound like a robot dropping cutlery down a staircase. Åkesson tuned the seed, feedback taps, and frequency table until the generated notes became musically convincing. The LFSR starts at zero, keeping the first eight bars melody-free; rhythmic reseeding then creates a stuttering entrance before the line begins evolving through waveform, filtering, bass, and timbral changes.

The Arrangement Is a Tiny Table of Transformations

Instead of storing a traditional song score, the demo contains a compact table of address-and-value pairs. Each pair changes something in zero-page memory and remains active for an eight-bar section. A write may seed the melody generator, alter a waveform, brighten the graphics, modify an instruction, or change the drone’s tone.

Each byte may carry several responsibilities. A waveform value can also become a screen color, while a global clock stored inside the SID shadow registers simultaneously changes pulse width, palette behavior, and filter cutoff. In ordinary programming, such overlap is a career-limiting bug. In sizecoding, it is clever storage.

How the Visuals Are Generated

Extended Character Mode Does the Heavy Lifting

The graphics use the VIC-II chip’s Extended Character Mode. In this mode, the upper bits of each character code select one of several background colors. That means a compact stream of character values can control both shape and color without requiring a full bitmap.

The VIC-II is pointed toward carefully chosen memory for the screen matrix and character definitions. The processor’s stack page becomes font data, so pushing changing values also draws patterns. Those font bits combine a CIA timer with SID Voice 3’s envelope, making brightness and density pulse with the soundtrack. Audio and video effectively share a nervous system.

Glitches Become Part of the Design

The screen matrix is filled with patterns that resemble a cellular automaton, but the process is intentionally rough around the edges. Only part of a pointer is updated in the main loop, while the interrupt routine changes another part. This creates a race condition. Depending on timing, the program may briefly write to an unexpected location, producing visual glitches.

Most software teams would open a bug ticket, assign three engineers, and schedule a meeting called “Pointer Alignment Sync.” Åkesson keeps the artifact. The errors match the work’s unstable, awakening aesthetic. In a demo titled A Mind Is Born, flickering structures that appear to discover themselves are more effective than sterile perfection.

Byte Reuse, Self-Modifying Code, and Zero-Page Wizardry

The executable copies itself into the Commodore 64’s zero page, enabling shorter addressing and placing its interrupt handler at a strategically useful address. Because the normal ROM handler occupies a related location, changing only one byte of the interrupt vector redirects execution to Åkesson’s code.

The code uses self-modification to change behavior as the song progresses. Bytes initially interpreted as data later become instruction opcodes or operands. Constants are selected not only for their direct meaning but also for how their binary patterns behave elsewhere. The BASIC line number, for example, is chosen because its encoded bytes double as a useful address constant after relocation.

Even the entry point contains a joke-sized optimization. The BASIC launcher jumps one byte before the initialization routine, landing on a value that functions as a harmless NOP instruction. The byte already had another purpose, so starting there costs nothing. That is the sizecoding equivalent of turning a coat pocket into a guest bedroom.

Extreme sizecoding asks a question ordinary optimization rarely dares to ask: can the routine, its data, its addresses, and even its mistakes become the same thing?

The Ending Explains the Title

At the end of the 64th bar, the program blanks the screen and jumps through the Commodore 64’s reset vector. The machine’s own startup process takes over. The SID falls silent, system structures are initialized, and after a brief pause the familiar C64 home screen returns.

This is more than a convenient exit. The reset sequence is incorporated into the artwork without being stored in the 256-byte file. The computer performs a ready-made finale from ROM, and the title clicks into place: after abstract pulses, primitive patterns, unstable colors, and emerging melody, the machine arrives at a coherent, waiting state. A mind is born.

Why “A Mind Is Born” Still Matters

Procedural Generation Meets Hardware-Specific Art

A tiny instruction set creates minutes of synchronized output because time, repetition, state, ROM routines, SID registers, VIC-II modes, and exact C64 timing all contribute. The machine is not a neutral canvas; it is a collaborator with a specific personality and several charmingly exploitable habits.

It Shows That Technical Achievement Can Also Be Art

Some sizecoded productions are best appreciated as puzzles: impressive once the trick is explained, but not especially compelling to watch. Åkesson’s demo survives both tests. The soundtrack has momentum, the visuals respond meaningfully to the music, and the progression creates anticipation, contrast, breakdown, return, and closure.

The work won its Revision competition because it was not merely tiny. It used tininess to create an identity. The restrictions shaped the rhythm, imagery, glitches, and ending. The engineering is visible, but it does not smother the performance under a warm blanket of cleverness.

Practical Experiences When Exploring the 256-Byte Demo

For many viewers, the first experience of A Mind Is Born begins with disbelief. The screen flashes with blocky, organic patterns while a surprisingly forceful electronic track develops underneath. The immediate reaction is often to search for the hidden catch. Perhaps the 256-byte file contains compressed media. Perhaps it calls a large music routine already stored elsewhere. Perhaps “256 bytes” means 256 bytes of original code plus a small warehouse of dependencies. None of those explanations fits. The C64’s built-in ROM and hardware are used aggressively, but the audiovisual sequence itself is generated in real time by the tiny executable.

A second viewing tends to feel different. Once the size claim is accepted, the arrangement becomes easier to notice. The opening is restrained. The melody stutters into existence, then begins moving freely. Timbres shift, colors broaden, the graphics brighten, the bass changes direction, and a break creates space before the final sections. What initially appears to be chaotic flickering reveals a deliberate timeline. The demo is teaching the audience how to read it.

Running the program in a C64 emulator adds another layer of appreciation. A good emulator makes it possible to inspect memory, pause execution, watch SID registers change, and single-step through 6510 instructions. The file’s small size makes it unusually approachable as a study object: in theory, every byte can be examined. In practice, each byte may have several jobs, so understanding the entire program can feel like untangling holiday lights designed by a mathematician.

Real hardware brings its own atmosphere. The SID chip is famous partly because physical revisions can sound subtly different, especially around filtering. The raster display, analog video output, and actual machine timing also give the visuals a texture that clean digital capture cannot fully reproduce. The experience is less like opening a media file and more like activating a small electronic performance.

Reading Åkesson’s technical breakdown is perhaps the most rewarding stage. The demo stops looking like supernatural compression and starts looking like a chain of disciplined decisions. A timer value becomes visual noise. A sound envelope becomes brightness control. A palette byte doubles as musical state. An opcode changes during playback. A ROM reset routine becomes the final scene. Every discovery replaces “impossible” with “possible, but extremely sneaky.”

The project also offers practical lessons for modern developers. First, constraints can improve design by forcing systems to share structure. Second, deep platform knowledge can outperform brute-force resources. Third, a controlled imperfection may strengthen an artistic idea. Finally, optimization is most powerful when it begins with the concept rather than arriving as cleanup. Åkesson did not create a conventional music visualizer and squeeze it down to 256 bytes afterward. The music, graphics, memory layout, and narrative were conceived as one object from the beginning.

That is why the demo remains memorable long after the numerical stunt has been explained. The number 256 gets attention, but the experience provides the staying power. It sounds energetic, looks strange, ends elegantly, and turns a 1982 home computer into a machine that seems to dream for a few minutes before waking up.

Conclusion

Linus Åkesson’s A Mind Is Born is a landmark example of Commodore 64 sizecoding because it compresses more than instructions. It compresses roles. Timing becomes composition, sound becomes graphics, memory becomes typography, glitches become texture, and the operating system’s reset becomes an ending.

The demo proves that minimal software does not have to produce minimal ideas. With 256 carefully negotiated bytes, the C64 delivers a complete audiovisual arc that is technically rigorous, musically catchy, visually unsettling, and surprisingly poetic. Modern applications may need hundreds of megabytes to ask whether notifications are allowed. A Mind Is Born needs one quarter of a kilobyte to create an electronic universe and reboot it.

Note: Technical and historical details in this article were verified against Åkesson’s original annotated explanation, Revision competition records, Commodore 64 scene archives, hardware histories, and established technology publications. ode>