Individuals have achieved some fairly wild issues with Microsoft Excel over time, from constructing full-length role-playing video games to creating complicated animations and puzzles. You didn’t suppose these worksheets have been only for crunching numbers and doing issues that typically make you hate your life, now did you? Utilizing Excel sheets is actually not probably the most environment friendly option to hack a brand new creation into being, however in order for you a problem, it may be a enjoyable studying expertise.
It might look like an odd platform to make use of at first, and properly, that’s as a result of it positively is. But when you concentrate on it, storing and retrieving values, and performing mathematical operations on these values, is about all it is advisable to construct a posh software in case you are artistic (and affected person). There are even options like conditional cell formatting to develop easy graphics with. The probabilities are nearly limitless for people who inexplicably need to construct software program right into a spreadsheet.
The system structure (đź“·: Inkbox)
YouTuber Inkbox took issues down the chain one other degree and as a substitute of constructing software program, constructed a digital processor on prime of which software program will be executed. In a earlier challenge, Inkbox created a 16-bit Excel processor that ran at about 1 to 2 Hz. Given the gradual clock pace, and the truth that it contained solely 100,000 cells for storage, this primary model was kind of on par with a machine from the Fifties.
Not a nasty begin, however Inkbox wished to see how rather more might be squeezed out of a spreadsheet processor. After tinkering extensively with the design, a brand new digital processor referred to as the Tremendous RISC CPU was developed. The aim was to make this new processor a lot quicker in order that it might deal with bigger workloads — actually nothing like what a contemporary processor can deal with, however possibly with efficiency akin to a machine of some many years previous.
Towards this aim, the instruction set structure was first sliced down from 26 directions to only 10, solely together with essential instructions like retailer, load, add, examine, and clear and set carry. The register rely was additionally decreased by one, giving the Tremendous RISC only a single 8-bit register. Subsequent, a stack was created, together with push and pop directions to work with it. Different directions, like add, assume that they function on a worth on the prime of the stack to save lots of time fetching values that will in any other case be laid out in parameters.
The assembler produces machine code for the processor (đź“·: Inkbox)
One other speedup concerned leaving IF statements out of the formulation used within the worksheets. As an alternative, binary logic operations have been created to carry out the identical capabilities, however fairly a bit quicker.
Dozens of different little optimizations have been sprinkled all through the design to make the CPU run as quick as doable — even when these optimizations do make programming for the digital processor one thing of a nightmare.
The CPU was constructed right into a Harvard structure system, with separate RAM and ROM storage places. A ten-bit program counter is used to trace the execution of code saved in these places, that are every one kilobyte in dimension. For visible output, Inkbox included a small, multicolor 16×16 pixel show (composed of coloured spreadsheet cells, after all).
I do know what you’re considering, however no Visible Primary was used within the growth of the Tremendous RISC CPU. It’s a pure, spreadsheet-based digital CPU. To program this processor, a customized assembler, referred to as Excel-ASM8 was created. When a program is assembled, this software program routinely copies the uncooked machine code it produces into the spreadsheet’s ROM cells.
So, how did it prove? Properly, it’s nonetheless a really underpowered processor, however that doesn’t actually matter since it isn’t like it is going to ever be used as something greater than a toy. However the dimension of the spreadsheet was decreased to only 4 % of what the earlier processor required. And that discount got here with a major efficiency improve — the CPU now runs at about 12-14 Hz.
Every part has been open-sourced and launched on GitHub, so go seize it in order for you a brand new option to be taught concerning the operation of CPUs.