For those of you who haven’t been following the ‘blog (because I’ve just made it… oops…) I have:
- Designed a simple CPU architecture (emphasis on simple!)
- Built it out of wires and logic parts from various shady websites (the microcode ROMs came from a washing machine)
- Written a compiler for a C-like language, compiling down to the machine’s single-instruction instruction set
- Written a functional OS in this language
- Written Windows development tools: IDE, emulator
Which I think is all pretty darn spiffy!
The development is more or less done and dusted (there are a couple of hardware things to tidy up, which I will post about on this blog), but that’s not what this post is about. Although the project was originally for fun, it became my A-level computing project, which implied copious, perhaps excessive amounts of documentation.
I was wary of posting the documentation before results day, because exam boards tend to have some pretty draconian plagiarism checks. It’s close enough now though that eh, who cares. I’ll post it.
Writeup (191 pages, but almost 100 of that is just code listings):
There’s also a programming manual / tutorial, which explains some of the basic concepts behind how the computer works, such as the Von Neumann machine, and then guides you through writing simple programs in my language. (30-odd pages)
The documentation is available in all of its (dubious) glory on my GitHub repo:
PDFs are here.
So, if homemade compilers and processors float your boat, take a look!