Learn how to write an emulator

Original article is at Learn how to write an emulator