March 8, 2026
Mind blown in monospace
Z80 Sans – a disassembler in a font (2024)
A font that turns hex into retro code has geeks giddy and skeptics saying “actually…”
TLDR: Z80 Sans is a font that turns typed hex into retro Z80 code, built with advanced font features. Commenters split between calling it brilliant, saying simpler chips or even WebAssembly would be easier, and sharing wild “cursed fonts” like Tetris and an AI font—proof fonts are a hacker playground.
What if your typeface did the job of a code tool? That’s the chaos of Z80 Sans: a font that turns typed hex numbers into real Z80 (think retro chip) instructions using clever OpenType tricks. The crowd went wild. One fan called it “mad genius,” the perfect prank where typing numbers magically disassembles into readable code. Another joked they’re happy when a font even aligns numbers, never mind decoding an entire processor’s language.
Then came the plot twist. The “actually…” brigade argued it’s not that surprising — a font maps bytes to symbols, just like a chip maps bytes to instructions — and said versions for simpler old chips could be easier. A spicier take: someone suggested the creator could’ve just used WebAssembly (tiny web code) inside a font via Rust — yes, fonts can run mini-apps now — but added this low-level, pure-font approach is more impressive.
The thread spiraled into a “cursed fonts” highlight reel: Tetris in a font and even a font that’s also an AI. Meanwhile, setup drama had folks chuckling: wrangling old Ruby versions and tools felt like a boss fight. Verdict? Equal parts art project, hacker flex, and meme fuel — with Team Wizard vs. Team Actually squaring off in the comments.
Key Points
- •Z80 Sans maps lowercase hex byte sequences to Z80 disassembly using OpenType GSUB/GPOS.
- •The project includes a test TTF and build instructions tested on Debian GNU/Linux 12.
- •Due to Ruby 3 incompatibilities with fontcustom, RVM and specific OpenSSL versions are used to set up Ruby 2.x.
- •Design complexities (e.g., many operand combinations, endianness, signed offsets) led to a programmatic glyph and rule generation pipeline.
- •OpenType rules were edited in .ttx (fonttools) for Noto Sans Mono, with glyph shapes from Droid Sans Mono, and a recursive descent parser expanded all instruction encodings.