.
By James Stanley. See here
https://github.com/jes/scamp-cpu/#the-story-so-farand blog posts here
https://incoherency.co.uk/blog/tags/cpu.htmland web emulator here
https://incoherency.co.uk/scamp/and tackling the challenges from Advent of Code here
https://www.youtube.com/watch?v=UOizI9qi6FUQuote:
It is a 16-bit CPU. The bus is 16-bit, registers are 16-bit, addresses are 16-bit, and memory contents are 16-bit. The upper 8 bits of an instruction select the opcode, and the lower 8 bits are available for small immediate values. There is no support for: cache, interrupts, virtual memory, DMA, privilege rings, floating point, and ~anything else that is not strictly necessary.