It is highly recommended to read the report to get a light introduction to Game Boy emulation. But do be aware, that the Python implementation has changed a lot. The report is relevant, eventhough you want to contribute to another emulator, or create your own.
GitHub - Baekalfen/PyBoy: Game Boy emulator written in Python
Game Boy emulator written in Python. Contribute to Baekalfen/PyBoy development by creating an account on GitHub.
github.com