Computer System Emulation
As someone who grew up in the 8-bit era, I’ve always enjoyed a return to the systems that I cut my teeth on. These include the Sinclairs (ZX-81, Spectrum), Commodores (C64, C128, Amiga), BBC Micro, and many others.
Most of the “mainstream” systems are already well-covered in terms of emulation. One system, however, was the first real system I began on in real life, and was a little less-known: the Sharp MZ-80B. At the time I began the project to emulate this system, there was no existing emulator for it: emulator authors instead favoured the more well-known MZ-700 and MZ-800 machines.
One thing that these machines have in common though is the simplicity of their processors. Whilst the C64 and BBC used the 6502 processor (or derivatives), my favourite (because it was the first I learnt to program in Assembly Language) is the Zilog Z80 processor.
Imagine my delight then, when I discovered that I could purchase a modern homebrew machine using a Z80 processor, but with the added benefit of Amiga-style graphics and sound and SD-Card storage amongst many other benefits. This machine is the V6Z80P developed by Phil Ruston. Kudos to him as it’s marvellous! I ordered one of these boards, and whilst waiting, impatience led me to begin writing an emulator of its architecure (known as OSCA – Old-School Computer Architecture)