Thanks for the kind words guys!
Can you please explain more about cycle level and the difference with other methods.
Well the basic difference is that cycle accuracy is about as accurate as you can possibly emulate a system. Now there is a bit of a misconception with the concept of cycle accuracy since some emulators claim to be cycle accurate when maybe only one part of the emulator is. The kind of cycle accuracy I am talking about is the total system.
In the Master System for example there is a clock which runs at ~50MHz. Thankfully I don't need to emulate all the 50MHz (which would be slower) because all the main components run on a lesser ratio which still enables accurate emulation. I emulate the Master System at close to 11MHz, which is the video processors real speed, and the audio/Z80 run at almost 4MHz on a divisor that is a third of the VDP. So in the exact way that the real clock is driving all these components, RetroCopy is driven in the same manner, cycle for cycle.
Other emulators usually are instruction accurate, that is they emulate one instruction of one of the CPUs, and then perform various tasks depending upon how much time that one instruction took. Since an instruction is usually always multiple cycles long (in the Z80 case, some are over 20 cycles long), the amount of accuracy you can get is based on the average instruction cycle length. Some emulators have "hacks" if I could use that term without offending, to increase the accuracy at not much cost to speed, like adding delays where appropriate in the IO, etc. RetroCopy's aim is to be accurate down to every cycle, whereas an instruction accurate emulator could possibly only claim accuracy down to about 45 (system) cycles.
To give an overall assessment of the types of accuracy, RetroCopy could be used to replace real hardware if there were ways to physically connect a PC to the real master system. I'm not aware of any other emulator that would be capable of that but it shows how close to hardware the emulation is. I'm not concerned with running RetroCopy on old PCs which has allowed me to really target accuracy over everything else.
Another thing I want to mention is I say RetroCopy is "cycle accurate" but that is a misleading term everyone throws about. I know RetroCopy isn't yet accurate down to every cycle, but it is my aim to be cycle accurate. RetroCopy *CAN* be cycle accurate, which is I guess the biggest difference between it and most others. Also just because RetroCopy is very accurate doesn't mean something which is 50 times less accurate won't be able to play 99% of the games on a system. Something like RetroCopy is for the emulation purist that wants something to be extremely accurate to real machine.