Writing game emulators is not a common enough task to warrant a book - there are none. If fact there are few books specific to writing emulators of any kind, nevermind game emulators.
It's a very niche topic, and about the only way you'll learn is by looking to the people who have written or maintained an emulator, and you already have those resources.
If you are set on using a book to help you learn this, though, I'd suggest you look at a more broad topic of designing computers from an architecture standpoint. By understanding how the processor works at a fundamental level you will be able to write code to simulate various aspects of it - it's essentially a large state machine, and it's not sufficient to understand the machine code - you really need to understand how instructions move through the processor and how the registers and memory are handled.
It gets much more complex when you add in data and instruction caching, context switching, parallel execution paths, etc, etc, etc. Gaming is even more difficult because the designers relied heavily on timing paths and processor quirks in order to get the most out of the resources available.
The seminal reference here is "Computer Organization and Design" by Patterson and Hennessy.
The reason why the game boy is often a good first target is because it's a very simple processor by today's standards, and yet complex enough and interesting enough that it should keep you busy for some time trying to get it past the first few games. It gets exponentially harder to emulate the later processors..