ZXdesk Gives the 48K ZX Spectrum a Real Windowed Desktop

ZXdesk squeezes overlapping windows, menus, a file manager, notepad, calendar, clock and settings panel into a 48K ZX Spectrum, written in Z80 assembly.

The 48K ZX Spectrum was never accused of having too much memory, which makes ZXdesk feel slightly unreasonable in the best possible way. Developer mindbox77 has built a windowed graphical desktop for the original 48K machine in Z80 assembly, complete with overlapping windows, pull-down menus and enough applications to make a 1982 microcomputer briefly believe it owns a mouse and an office.

The project includes a heap, event queue and storage layer with swappable backends, plus dialogues, controls, a notepad, clock, calendar, two-pane file manager and a settings panel whose options actually change system behaviour. The developer says the whole environment fits inside 48K and can drag a window within a single 69,888 T-state frame.

That last detail is more than a party trick. ZXdesk's documentation digs into the performance measurements and compromises needed to keep a GUI responsive on a 3.5 MHz Z80 while the Spectrum's display hardware is also stealing cycles. The result is as much an engineering notebook as it is a piece of software.

It is not pretending to be a lost Sinclair operating system or a port of Atari ST GEM. Instead, ZXdesk asks a much more entertaining question: what happens if you take the desktop metaphor seriously on hardware that was never designed for it? Apparently, quite a lot.