Make an emulator is one of my main goals, but I never tried even to start. It’s an amazing but complex and overwhelming world.
Now, I decided to start, and I’ve found the CHIP-8 platform as a good target to start with. CHIP-8 is an interpreted programming language, developed by Joseph Weisbecker. It was initially used on the COSMAC VIP and Telmac 1800 8-bit microcomputers in the mid-1970s. CHIP-8 programs are run on a CHIP-8 virtual machine.
As said here, writing a CHIP-8 emulator is probably the easiest emulation project you can undertake. Due to small number of opcodes (35 in total for CHIP-8) and the fact that a lot of instructions are used in more advanced CPUs.
So, the main goal is to create a CHIP-8 python emulator, allowing to run CHIP-8 program bytecodes on any python capable system.
To get a good base to work with, you can find a very good tutorial and C++ code here.
1.Run and fully understand the actual C++ code implementation of the emulator.
2.Migrate the C++&OPENGL/GLU implementation of the emulator to Python&Pygame.