: I'd like to make a NES emulator and I got some technical docs about its CPU.
: Could someone help me by saying how to make an emu cause I don't even know how to begin?
Basically, any emulator must act as if it's the target machine (the NES in this case)in every way. It must respond to calls by the software, and return the same results that the NES machine would.
For example. Let's say that the NES has a function to draw a circle on the screen. Then the emulator will have to have the same function, and also draw a circle on the screen. If the NES returns a status code that says "circle drawn OK", then the emulator will have to return the same code.
The point is that the software should not know that it's running on the emulator instead of on the NES.
You would have to find out all the function calls that the hardware is capable of, and emulate them. So, you'd make a list of all the sound calls, say, and make sure that you have a way to perform the same functions in your emulator.
You'd also need to study the CPUs machine language, and find a way to perform those same functions on the CPS that you will be using in the emulator.
In theory, building an emulator is not a terribly complicated thing to do, but it is very detailed. In practice, it's a big job, but certainly one that's been done before in similar situations.