Inkbox Builds a Custom Computer with a Difference: It Lives Entirely Within Microsoft Excel Files

Running at an admittedly sedate 2-3Hz, this 16-bit CPU — with 128kB RAM and a 4k monitor — proves Excel's capabilities.

Gareth Halfacree
6 months agoHW101

Pseudonymous developer "Inkbox" has built a 16-bit processor, connected to 128kB of RAM and a 4k monitor, with a difference: the entire thing lives in a pair of Microsoft Excel spreadsheet files.

"I designed my own 16-Bit computer in Microsoft Excel without using Visual Basic scripts, plugins, or anything other than plain Excel," Inkbox explains of the unusual project. "This system on a spreadsheet is based off of a custom Instruction Set Architecture [ISA] that has a total of 23 instruction mnemonics and 26 opcodes."

If you've ever considered building your own custom CPU, why not follow Inkbox' example and do it in Microsoft Excel? (📹: Inkbox)

Excel, Inkbox points out, is technically speaking "a very competent computer" — if you use the definition of a computer being "something that computes." For this project, though, Inkbox has a more strict definition: a central processing unit (CPU) connected to memory and some form of display. "Is it even possible," the developer asks of the project's intention to create exactly that in Excel. "It's the best kind of possible: theoretically possible."

The resulting "computer" is held in a pair of Excel spreadsheets: one holds the CPU, built around a custom instruction set architecture, while the other holds the system's ROM. A Python-based compiler is also provided, to create programs compatible with the machine — using an assembly language Inkbox has dubbed "Excel-ASM16."

The machine as a whole includes the 16-bit CPU and 128kB of usable RAM, and uses Excel as its display — showing its output on, in Inkbox' case, a 4k monitor. It's not exactly a speed demon, though: "the CPU, working its hardest, isn't running any faster than two or three hertz," Inkbox admits. "The footage of all these programs [I've demonstrated] has been very much sped up. But still, I think this could be a useful tool to show the inner workings of a processor one clock cycle at a time — and maybe it'll run faster on your machine."

Excel is an unusual choice for building your own computer, but it's not the strangest: back in July last year engineering physics student Xander Naumenko showed off a 32-bit RISC-V CPU running in the sandbox game Terraria, while a year earlier Danny Spencer had turned Id Software's iconic first-person shooter Doom into a functional calculator.

Inkbox has released the source code for the CPU and is compiler, along with instructions on its use, on GitHub under the permissive Creative Commons Zero 1.0 Universal license.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire:
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles