Emulate real hardware including the CPU, the screen, RAM and input-output devices.
Instructions can be executed backward and forward. Assembly source code examples are included.
The emulator teaches the basics of assembly language programming, hardware architecture and reverse engineering.
It is even possible to create a miniature operating system.