I thought some of you might appreciate hearing about the internals of my emulator. In this post I'm going to introduce the instruction set, and cover the emulated memory model and registers. This is just the first post in this series, and will cover miscellaneous instructions. I'm keeping each post small, for easy digestibility. Prerequisites There are a couple of prerequisites to fully understanding this post. It will assume you know what a stack is and that you have some knowledge of assembly language. But the content could still be interesting even without that knowledge. I'll leave it to you to decide. Registers/Memories Most instructions involve the 256-byte data stack. There's also a 256-byte return stack to allow for subroutine returns. These stacks each have a stack pointer register that is not user accessible. Addressable memory consists of 64KB of RAM, divided into the direct-page's 256 bytes at the beginning of memory, and then the remaining 64KB - 256 by...